From cfa047515817354357214ebea62d8485e109c9ff Mon Sep 17 00:00:00 2001 From: Dima Date: Sat, 16 May 2026 21:06:11 +0300 Subject: [PATCH] =?UTF-8?q?=D0=B4=D0=BE=D0=BF.=D1=82=D0=B5=D1=81=D1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- nikolaevda/docs/data/experiment_results.csv | 19 ++ nikolaevda/docs/data/graphs.png | Bin 0 -> 73962 bytes nikolaevda/docs/report_laba1.ipynb | 245 ++++++++++++++++++++ nikolaevda/experiment_results.csv | 19 -- nikolaevda/graphs.png | Bin 75589 -> 0 bytes 5 files changed, 264 insertions(+), 19 deletions(-) create mode 100644 nikolaevda/docs/data/experiment_results.csv create mode 100644 nikolaevda/docs/data/graphs.png create mode 100644 nikolaevda/docs/report_laba1.ipynb delete mode 100644 nikolaevda/experiment_results.csv delete mode 100644 nikolaevda/graphs.png diff --git a/nikolaevda/docs/data/experiment_results.csv b/nikolaevda/docs/data/experiment_results.csv new file mode 100644 index 0000000..70872e1 --- /dev/null +++ b/nikolaevda/docs/data/experiment_results.csv @@ -0,0 +1,19 @@ +Структура;Режим;Операция;Замер1(с);Замер2(с);Замер3(с);Замер4(с);Замер5(с);Среднее(с) +linked_list;случайный;вставка;4.743085900001461;4.702243700005056;4.426778699998977;4.3052682999987155;4.301903599996876;4.495856040000217 +linked_list;случайный;поиск;0.040070499999274034;0.03833870000380557;0.038309099996695295;0.038068900001235306;0.037999300002411474;0.03855730000068434 +linked_list;случайный;удаление;0.03337140000076033;0.03520829999615671;0.03318629999557743;0.03670069999498082;0.03511889999936102;0.03471711999736726 +hash_table;случайный;вставка;0.054787300003226846;0.038778399997681845;0.038185400000656955;0.03906660000211559;0.040834699997503776;0.042330480000237 +hash_table;случайный;поиск;0.00048270000115735456;0.0003393000006326474;0.00034130000130971894;0.0003389000048628077;0.0003389000048628077;0.00036822000256506724 +hash_table;случайный;удаление;0.00018000000272877514;0.0001720000000204891;0.0001720000000204891;0.0001764999979059212;0.0001747999995131977;0.00017506000003777444 +bst;случайный;вставка;0.04329969999525929;0.04011429999809479;0.0377946999942651;0.03973660000337986;0.03843010000127833;0.03987507999845548 +bst;случайный;поиск;0.0005353999949875288;0.0004243000003043562;0.00040499999886378646;0.00041709999641170725;0.00041870000131893903;0.00044009999837726357 +bst;случайный;удаление;0.08770270000240998;0.08755029999883845;0.09487290000106441;0.08564219999971101;0.08784590000141179;0.08872280000068714 +linked_list;отсортированный;вставка;5.82706280000275;5.942067100004351;6.058909300001687;5.410613899999589;5.423316100001102;5.732393840001896 +linked_list;отсортированный;поиск;0.05126659999950789;0.04912999999942258;0.04894649999914691;0.048823999997694045;0.0484264999977313;0.04931871999870054 +linked_list;отсортированный;удаление;0.03424879999511177;0.03367250000155764;0.03369569999631494;0.03390580000268528;0.034035600001516286;0.033911679999437186 +hash_table;отсортированный;вставка;0.03484389999357518;0.03386820000014268;0.033041399998182897;0.03465739999955986;0.035284899997350294;0.03433915999776218 +hash_table;отсортированный;поиск;0.0005273999995552003;0.00044519999937620014;0.00037960000190651044;0.000374099996406585;0.0003724999987753108;0.00041975999920396134 +hash_table;отсортированный;удаление;0.00017210000078193843;0.00017210000078193843;0.00017300000035902485;0.00017389999993611127;0.0001722999950288795;0.00017267999937757849 +bst;отсортированный;вставка;17.43330440000136;17.245424400003685;17.230704699999478;17.4216249999954;17.25258659999963;17.31672901999991 +bst;отсортированный;поиск;0.15691709999373415;0.15601930000411812;0.15765989999636076;0.15630209999653744;0.1590829000051599;0.15719625999918208 +bst;отсортированный;удаление;0.08944690000498667;0.086433999997098;0.08745249999628868;0.08608390000154031;0.09040470000036294;0.08796440000005532 diff --git a/nikolaevda/docs/data/graphs.png b/nikolaevda/docs/data/graphs.png new file mode 100644 index 0000000000000000000000000000000000000000..34a065f62ecf240bcf67289b9ecbdc6d040226e4 GIT binary patch literal 73962 zcmeFZhgVZw*Y=BDQA9yR>7s~qK`GLe-fIXga0?@~zy@`#$IU3(gp4jI+mJkV2B3wbz>Sn%Dd-!u564=xAAJX=rHZG}M(1 zX=u(rq@g*vdj2eU#Nu^tJNPB-tzznJ z2#ekqek91{;O+gwOIk$4^}l~1?CxnVa#yv-47|&Q7wTqSG&IZ%)SnafDcy!NCunFi zlph=WCN7Vi`^-2)K3>=QB+Pyyh8v=9-}=8Fpb5U63Qp#~M+O@M%YX0C&?q+F`v2_Hd{&*T;H$iv9xioF zs9vvU-C1wo9D!OR?40{^3+PxS23NCNC2tYPwRh2 z;S5%t>&p3STdLpzuJxCzqmJZJuV}fgPNh<}vC1!Td={m-Q8ypdx66=Z$H683_fUMD z_T&^8zO(z=1J-%&M7)I0>S%e~NF^L|xK=~2F(Ujwe@J7a^6wvp?j4eeD_?9;1rUtM zp8R-*2BXaG-?w8g7!xF13$2lRb+a8Qq|opG`!X)bhfZ+&!{eRhAzQhCoh_Z`Qj_m) zFL$YNmegF95gf4%IzB9u1E(tC)SDeR45s&gjx>R9HB;cG`fbL$+CSY1hY}-)4IBZv zh^;O)eA6Yv977&fv1jjuEXzCFrKa8sMhjV#wnkjz`{?=+R`qhoHd^la%1Bw6Qybsb~~I9$Q89+GlBh6?^&X#JNH70ZZGUqdj}=kt*b&f56|@=W+wc zt0q~x>;h11BITer*Q{r_#MyqpI;i>(e6qoSDDq(Ui&e`?8IhxBeGNQ5^hMNmdAX>g zRO#}gTGx2_$hruoqC&ftVI*Z`u0NUlItE-X)DfoS`Ck<>Z4YsKk1d)ry%-Y zE)T{`9T|S?Z;ZJ;=21k#Qz{YIj*=t!)$*z3ehc@KSOKVcVRZajhpKMAOd#hHE}Q%) zP~KIqxZ{~sw0&3U`x~Nv5S$JK$KwS=pS_XNwd&o;$kkD{i-Zm}L8JMl_d8b8-fn#F zHp#hWMav(xgguy0-tt@R#3&YVPhvuc!f~K>L!nxY%!1c=s#4fr(LAyeF+`0MQ4AK7 zV2jTaD^&Oz0&RQez#~cT$pQsN)G6SwUZ*{Ma%Vh%RN*_(sYDMahVLUgA3DqpTF z;%{GzpPu;=xy5pu{nRj)*~<5~w9l%GxKrU;BOTw%ZgKf=P30Fk?@B;?+a#mF%x4=(SL~@Y1ti zY;A^1+mmF@9qljWmybu{T&%|`;YDqdAi4=|T6#9|;Fo%k(bEMD92Y-}Sj#sISfoA) z`2`jPXCvn7ZPi-%rC?olY465T`IWb8d&T*)?MbZJMp?SO0}s4rTi=aT*morV0t=S) z9<0(EH3G>{k5N26Iy?o2djmF5?lI*VC?vhZEeG9QUjxCfcKfFPLS}qmnZWoV5$Cu0 z>zlZ9;6RDjT>Gy+s5SdNE1WNCsY_NV>@wZ*V8QJVxl=p`MKL`~mx&GFyf>5dMi^Hf ze2t&lBL*GQU1E87Pe0eRfGys&H{0Ovh&!Rp<9H7tZ}atuwS6&}d$@w<}F_?|RQm^77CFy#~vSfq8OyI|)gtPuRLyIhPzzSe@LXryw_i>i}WQvS2vzk=LYj z920M`%aGWJEP}EFpKBYfRYmq-VO1wfoCn%>#xgoWI9;K;dzFTnny+0)N@sS*wvQ;J zb7O4GhOk9 zo2D($qB(;OL?@?4%G`aR5AlaPBYsHXJm>k&)SX@jBVllXeb4y<6Z|~asq7{zHSH`Pl z8uq|-UPhJaDI7kuE*0rpkb%TT&9;7J>^ZE?YbpxW(@I-YSkNXbe;4nwNJ1ykG?_#a_X zySvdMf*_H4bBqjMu7jWeYjVxAw%dTn%LKCaDh3?w%~gpl@t3e-9lFx`aeiL$FH$G& z8atV@$2b)qO-72mp^Hssb;osyzsCsr=o;JfFLCMf9Xj^>u;V+2ZQs$8->Zcq??xu; zC0R_+Z7p(1fuLb|)7f>T_3MKoZ)s;D|5dyC_cu*Cdt<8W~fD~e0@_cXX*jeYw#&jA*WCo_!@6HE4_iEug1Uj|B) z(F(7k(fkQB;|OU>kjh~f+!3k|1;e2>W9i!hSD&z}taq-bx7Ya2m*jW}d6!>^)g8FP zI9%GP%gpm2+ej=9CB>7M?Ol%IS&3h}Y(uE!jU5F#hFmn3pDMDoXTaykLmR^TW&W^w zB9t}lZqqKDBZO0gFtmYWc+-s*NCJDxw?QO9iUVvX1a z;kj2M-z&deMw%XdN@i;p(twq|0oUDO9Cy6qAG9qWhNqus@RaVtFLb4cxr@bwh8Xbe zi97d~cYNJ3o5yz{q1*`{nPvI?uungGx05NO3!~7gm#*=_X{g1u%?M&Z9%?MdC`%Q= zDa-PW%LFJ*xFN%lx9ogX8%d^))lID-5fzkl`*Zd}*H1PiMX`Yl6hYEdh4oglN;=7^ zj%V@VfKQwabCT_!XtF>)uA7~eMPB1`u%oD%5qYjG8p}F;Pc-!+Xvp+G<5bEq^(4&l*wO- z^F?0i}SzXW%jetV>PrVHeW@6o}Y*(_qCi5D@4*k8yhYAy5Ioc*Fzu>z?%)gF{RG?&^HI*5lmfIy5e7TmLK}>uF8sYa)^& z)Dnm>$)jBcT61WYP9!UVXcr=WO}W^xX~J%z%$>NZi4E)UX<+v`{gO1EWH%TBWQEK~ zpc*^en5)c2$bwVLZ^~h&ZD}B%6smmzAtX8On@+-|l2V#op%@dP5!sdDl8aO^`FpQ8 z<)O(iiJUO_ZeT@WVw4Gg8)NtWw+*J=y^ufW^DAvvhM?>ULxzuH#);=VroTpEgQQ|*1uG7xEwIs zmJpwJP#VhRPpT#t(rI{r;j*_N|9o1*jkTyj?;<27~AT zMdq_;XnwM*6`jD<#ndp44TKeY4_HP%rLG5ib17r`x4LT0KguVIt%F42(Q7L%qNKaE z*w^BdvPe->Vh!&0n*>Yz{3y_*1_NJ5rW!~kRQ@Y4~^!n#7p49vQSXbiUyOqZuD+ zgY~%zacqL@s4j~rqvk%Z`_rdEL=8Qk|NQTIm9)rJV;eK5XP7lzra)FrNc=#*#DbF| zEIbE8XYDt`R0VR+G7w8;Eh2Q=nd3 z?CJg^L%SQ%NBxM2nbwlrP~UgT(3Y^4oICz*Le}`vB;v+MhQ_Btn3=po=XV!Kfbq@g z)hZHd>0nASBMj~Li~%Oft_z)6(wxxO`S#F*>G44*J#97ZIEkXj#P(466}mduDE4(H zCT8=ke9A=4#XAxFmAiB$sdGK#*VupPGrchUJlTd?$OR%HsPx7Ut$1NPlgJ9Uq`WYQ_b(4i*FJo>ab3xQ?E@YF_e(qFV_xjL;Cad@@3?kMkh3Z%t;d)(A2A z`W#2&hFPa*YJ?v8`Zdjtn0FJcAJ^r+Z(`anpr5DGD$&breW2r%ABD`X;QFm{`Q2sj&M)Wur2S7S2v z6$;`|;TkZ;01@d~MTdJ(4qJ6|cbL(J z8f9mth^{N`5Z@?VUj_p3t$-`ZM_b_O zJ=|>q*MgTq(9uCgt_AT7lD%;~QSGCUxh12#<%iIreNf21A*C?*_nNVPJD;t)a)I&g z>9FR;l^2(i6^;)cv>darJgt3qHI5Tx)M-?w@=1g>#>=W^V7FR6$w<6bUGQ`7gyi&R zd5Wf(-&B;O=X-&v*!QFph-3cW8tf$GTobOoRP%$DcPsM><&osW>A1Tjuhigcbu#X=<9s~~lSR5?hggX6S)t}Ioy^d6 z-%mHEf%q@Mb;r(7wIk1`dcPga{j1TwjI<0hK!6p7aU!K!5Wr!Hsw(11vhor%Hn?M0 z_bCw-KtM3&RXzr#1VSLHc5)Gu-~O@jT1x;keKl5@jhGg3rP31ywF%SQIoeo~jqtwQ zc9F--;nI$NI8uRjax)t>e1JZifhmA2{GCe)Dg{5|ppadbPM%s2d=Jf-lIa%B&WP@8 zzBSSCPsa94rmaXZ7rQ%ixC@{6*n%u93bepx~aZ zN%cdfCg$>{P%^>;BN+aNDS;c|Gx2K~NuB(3T5*C+ai@E$eB3emsZX?*P%n|uJlNJK zh|4uz9wGtLf}== zbTeO|qpq7YodgLy88hw5Z&33?lQ}G&2L*A9znFR17|!i7TnuW_tI*DnICQ(-VsCeB zRx&WI6n+$TEgXEi_@r21*ejrf0!IJK3cnfM(-`%|X%m$*FrJiwj&!UIv_V-Aa*CmX zV2t2OwB~t(>wY1S3aaRP(6-wOcQ!X~jK>HR#I@<2<_Vw9q}6a!k!~-}KV)F(ZUSCR z{7eKKf{5@LO#P!v(N4;nh-G`2_%XEFyud~!uEBWWuD8?=--Q74zQ-E^SJ!r@qJ5bB zpX8hjk)ApXH4e|(SAML%MSc~kOLf{d%OPKNE?nNXx|E-Njh?4m1>Lz0oH`0pftpqh zGj&~+z)(zwH+yh;cRt3h%YLq(GilIElUeG$&pG~c1(teUc#FTohlr3I>8s|~z_=RE z1cP%N(2NsYScMK*5emj^Q@f`t4RwuIVKaE82B9NxMk{Cxw$MJ=?`{L!ZzfGiMWBfU zUtNHQSjWoz^XpZxbyH%(O5_|`1qNZ(@|#=i!`N5p*#*_)<2x1*S`f{8gPBtVvPjm{ zI0>y6i$c|sLS-Vd&_2ji(t6@BusR7K0Vr{ z`7@u}QKG}8ePBCO5eBfZrO?E6hKQ}329WUnJd3KQJRhqGy&8lU6MtODz(irvvOFcf_F=`x+Ia~+0{96ge{PG3|@;xkXo+yoG zXvUsp9}qGxez$Od?eLmujs==OxD7ayf?9>~=o`UM{?3hwCi(*7;)U_*fH<^>=5u|+ z8nB?hh}6Vix+!)?EA37DlxEsRy$t8x>=@D&hM3(XBb!5H8(p=+;(=~2`IY?0M2$^j zIB&9pBr&kaBH!ndpn37V*;^fd76OckSrhCBXxbQyRAL85p59U$T~bx`Ko)#{(6Yn{ z66g0YqyGYL;s?yO^F2Pu>GkwEgOIZXGVpn57NUZIqyFlW=S(d0xj+e8VD8~;dA(fw z0{`c$^d}^4gYq7~&_ubgmnEF@I5O6J4fN*Fs$DnC4Xo~AU;1;}_e2N>VirmyGy5c_9_M!@89{EPA|@;>%2Qzt zA3Og-d6d~FL6+3lhNgz1)RNKOqhUUG=Lc!op`)a7@`xmVYQCyplo0z79;i^cS$@Ho z>~v^@suh;TPi0b9h7Ryn9T23SUVb!vrA5U55a^zElm0PM;MI;f z12P4EoyW7)lifLWB&S^sQg;4OxAV$b%{z@bV#;pq(VFsWGC`PHf_07;;V`vB7fAV0 z;{K&Y@df@veU^Q7;*dYyIBi;;=gs^gMY#*#Ij600DRtvP6K~vRRXe<(R(x0unL-br z#?WfbivgpoJ??x~`=~>Wpz^SMo&~Wfb!p%yBl_|ct;__Rp={1GBc30A*PKIqOfmb) zvY+2)c?J411T*|o(_uS7%&$mYv_sZxOz*Je1#=Oe-rl-NtA{_YKwqn*@o-|U*sdjR zhA;Kj0maNaa7H3EHR$-r>?7QGPo>F2Q}}XJkf)MTe+X|!FtEwKMaqDSwqYp;WC@KS zqmnN8_3R3~cwc-2U6gOzfLi5WQimo-bI1+DDiVy8Qq?vwI7D`VZNu<6&cF|@*DnV#Pad*G|b&Y?D*DF;P!m;I@NTC@qA0MwWV|g zFzKlogAOCe-B3-$cdcg&z?AZr z`w^O}>jEL{T9bSsq3g!H_8h6-04z7j;9c~Y;4(y43RXUs91M54z@yWV@0!%~8bDq9W z!qnIUH3hp~a3iM@mj(xJ%t+f)R%)Jg&HWMiEpS!oN?p;hRp5G^OVh>uWqMYLR!IYq zVnzxOUX2pb40XMGb3RDRO79#B{@(e;`#RnqRe&%?D14IU*iM@B(MC^^lLJ-@4$|&4 ztdZ;?pStY16RjuT+5-VJ)c$FL>AvR!wztVf;ZD-b1HjU0u}xQv@?`S*s1sfwO&>;k ztZSU6hU?>1j`e>MCf6nEF=Q8SM+tP`oVJ_i;OP$~oOK*6_b5djnyTy{>BGOSbp$?T zZB`-K?p8=k&bjeC3FYOR$EDpcEK4npt|7~Ti{5SFWPJoGl~?8S{QB_H>|nU>sUmEK z$(~>AYdO&7fh|~wGhl2rlL8A&PMz0z)5#Q{B;!-cBJNZ^eU=bGTUluV-BMvSRAhhR zq~70o+G)DC6n$G(#JdhR@cOUhbnpPp3RFzmptlQ+srBBroJaO7^-{hI{DIFTV;6hM zTZZKc0%tEqgid$%{aE+*c9{RLhB^s9TfNaNu(}vP$CuWAdF32?faYKQtm1)%l*Qhr zY=N#mvz+yA!v3N_f+i~z%I?C?bq8{BXKRyUe(C0Ose{o^|05fIGjzntQkmfi?&yhGIPw*&@{hN-- zi~asxInLCv9Q7>O`QToKPR(vG$~Auzvx8x%f9U-t^n||sCv0iIM;3W-$-z)1L4V(J zY0;E`vWFL!0tff$2$tLups(&qobse-mXpaRx6+z(>7Duqxa=Iogwy#=$L7r?UOuKwGWIHWk2_( zx2y3m`g`MGUTxxT4!2jJNzm;fqmw@vsx}^U=@3<<-7z0OGMqJjtTwYzBV*n2na?)f z(o>^$dtSy$BOFPjGt4s=k1vk3h~kRVtW@Qi(jF_eQg+{l!{~)xy%;0_S@-obU@`~gg{}g^FntfezOFOa08r4 z$o%1b#Qv7x(nyiL-go#?|07}0CTvp7(oHHHQviC$B_B$jnJq~MMXqSIi2`!daqoq~ z(XQ=xV4znFeH5#$ztH$Y|E>A* z=rG?h4DxXQbz6d@{RnmxNB%Yr=Az)zP=%NM-(W`FcL8#sK1;Na=tsmRXrv^VTKj;^ zbh65ag!0FCue0jNrX1=YA8bYk9F5}Y*Ic{jYTfbD@WsOI@KuMq2vS%B>!U}M<)YhoJg|mUVEv@>Zi%`LGYlB!INOID$dq`TZYoE> za>184;C!lSliYJtNCy#gho~6!xsQoI%EtW#uwL)2Er&o?MR0T8@~V6XP$4r_oM0M! zK;G~K(}C;M0<9#h3%#*BVM|s`$9#Dx?43JBPk~sh%{RNjzUB*T|Is=Ff(gbTAKUX1 zx7DqM?N%TN58WSS-LapLfUaJ+Ey(!xA?Gnv3wh8=h$$5$J?$?$`aS0*KHWfyZ~gVdeW{ z7sAUo4D!8p*Ctlcqxw9WpI<<|FqbNbrrQ$_qcy8B(vfjGXZ&6F1?QWIZ@zcLVm(bt zUi*e#$p+nSZ6;=KyIl0=J4J?XI3dCBvYx0~p}b(?97~--Xu&kw9bnsSA}r@FL#!IL zDh{4?&)pv)%2fMr7lKwrFQi;uJVNG=ZJho-+Y)UMVS@HglHcstq0pNf%F^kXU&o z^x(CQNBV@D$^MHug5-sw%!tRS#!vYVcE3_Ph%czfiMqn2N1&4VkosBwyQ)&uZOqeq zy*Zg;MC?JtbCYg)tk=zjft zRo~dZkfuPMgzT-K^%4D)?+7cn5@F(bPE?g$nqC7vG0U0B0wPP&WfPkFs{Z%Dc&%0xRloOYKw zzaoNgGsapkbx}TOZryYMp7d+Cw+x@af)T9(Z3xQ-)VOVw3Ko$q_E%H0OB7>k!A{o1 zcS|gp(jDt|Ju=_q-^&J)TSG^B(?Mp7<@2-DJJNLFotaw9Eh5r-3yFChX!*_kKnHc+ zSi=EwL@0gd3*F(nu~Gxb2-T!QP5(}E0$xVE^?j&mH@Oi1X=@BUfSzFf^C|G728qD% zX5%eNr0$aRoOY6QU)|kQiZMk|^c9}j8{Z`2??!hl>ezk92j4}GYkxh=;TkEuF8*0d z(3>sWOGb8GHNP4J*$X4Hpoib;3Xxd>5HzH7i6#=s#9pbyV*nf1;Ct2y?DlOM+aFuugK z8}YdDL@-=5w&TU!mM~yqq5a1HSoUzM$86Q;qjko!e)Tz91J7W*&*o+TOhZ7E?S0rR zbX%0Z;662mDf}D5z%3f}51<6ASQJY&hH>ThMH_~oBkn!D{TW>~{kfI;JWa*#f89lJ zOOeAN`!wWUXXj1yY+7o-lN@h+sILZ;<HTgRL zG5h!MTLVV)xv467Wz3a(zhSzq{9Iu3UuJ`EK_?^FY?PSy96x>E=SkdyKO-k@I9Q8z$i( zd<;DeV~_hQMD=<;F#h*lK~8XMjx^GJ#Pf9I6ju?Gh}G!Mn2$BI;%_Lc+t0IfET(t) zAn4BlI@GuZ4E_4%coFv;T~b(RTVo_JrP_6gn*aale~04#jbZt42WYDTz=RA^%@KeRm2#^@4DPN^ z6}4qiZtL(SzIcM_c;G#+F9WEzF)z@(sJ|@rm!@ha&SG?P?s))1!M}5WdcM<;b=iE7 zd1&xJ1lgC3y-euKF={X`b#bJ2LXzD71Ya0hrOYO{yMUHRKj@aSkyk+%)RoGVQK?N*90W1%SgS z?E{3MV;3^tkYe8zD!;~-G6xudwwKm#&(bXeTembHzu!Du?8rEHjmdXZ~F;eA9r2D*%{;1@MjXZ0aIJ zMFw)s9wdm`h5~}4PyYD8E8&sX57(i>OvSPb|MPjTa9sbwA|Zfft1ERUa*#VO1OBdz zJ?LP4m6R+OFsvm~J?%!ItjaipTKcsMwS)5S;b-trPYWz#uGELcN+GmNROHRiTrc0M zdUT~WoYCm{e+Tj1IdFa-(n9Gu-GI6+0F92U?~-TKzX3R+b*??>=H}%*tLk9@@z`Z0`=bL8e!v8|3<`&6*WqG5yV46ZABJ!w zk}$0D+SU)63+dDP>;v{m@aq9gG&I+~934`szC7#B(7;`MC+(7p`b4!@TMmIa?m-5n zX9B*(ad4PQEM{uPx*YCrFF&PXuCFe6vS^AqC0FslaLbPU=zzqNal`driYVJppXEWap zXq46$1y}^;1eIRQGtM!jGN)DZX_3od^0#>mDRTV-P_tZW z(a8_Rx`3j(6qG6>u}~|=e~H76=r>ux!PPs%E!fIM{sc+)WY&JgGQd*7$x9vz@WtK& z>f$*w1^A6@JHxjXAFpuJt^9Nz5Vk0Pk*X!O<}zB|HOARaneZHZ8pZ=ppy3*`opI;^ zOZ=jLPfsXbU<)A(WWIB014vrd0dq+{%R3|PK9FEgezA^r_y>8Wk*Yvbyv7ZvZm6jG zy1m;tZ{6hxNhTluBV$~iuW^mQ3FQ9HiZfV}UQ8I9!=zI*ih_5wzg&55KMoqn*_%he zUl)Gag+scAG`bK2H=|h1w|?`*SGt^rfH0C87 z9tn{S^S7N2W0r@Ccwe+XnmauwVqWa<4`{z%KC%V@;n&te&uw7>z`qp1q%D%QuJD|B za|{K{>>7YGYKuAb*Qj%ZXzK?k27`DDe4yWV<#2}A&9MUKK=Xy9i1r6T>eOvD)FnW; zHCAJR%UW?P?mAj7+Jeh7FQM&4Lj-;Xkll!IAy{Q^p6#z!Cw^0`fS2|Qj3M(4X>W(W zRG#lWhn)0_#hk3ljv0{CuMZa3s$t7`<6KX^@yW(*~UVjm8AW`CHBk7%T4xUcdnU zkWtddT_U?)%ZMi=>~AkI!z)0ET}7;Ma)*Jw9o|*s%0=q(bIG6s8J1rkW|>k+rAHXi!gPn~OkWH`qN)0N+w z{so42><}oeihm(J&aHSh4Ad(%4^`_y<8b)(tg?P zewl`bVdh7I8|__w-*pYCk^nysBi(TNMp^5?b(NoaMk@zh3@n}jw`{FOoMQZ~{AOZ* z0jiHQd=ZR7<1d)c7}FrIKu|4IK*;g}7V38U}uu;!}fdjKQB!SyIl zW1zWm^#Wbf48&R=E(Jf>Uw01NwrMtHu{w;4=1qO89KB8$lyyRuKKdH!A9v= zR17FgQb0IT{{qaV8raWt(wEuOyo6|h0xAI*} z8U;1S`vUTuS^>`|G~agOO+>wz;F(vg-#rQe&N+EBUTCLPy9YJ^IDzvjyv#0b3R1?H z)Q-8yvBKJ~Q#+smTuDXI*~wD1U;(vkSc1<^XMI2(w2dyIYHDDVjY;W+v3b6uQVl>W zF?-0AVAr;ph0J^TO>!MT6;c8Sr$LZ1iiFBsh6?{4?2nMvfxA@RPz7I#b7cp}MG45U z4Z5=H%Fd(Z1+hXF{ZXQs>sg_fZrV`O>!@KBAkF2Mj^u&Qbh{l2a9T@+27s482UtlC zg+f(B3_P0866S!=Kff9YydTTaAQ3?N8kTLM$PaSqjKb6rQY+n`n%0W{KWVQUcT zssJ@UMr3I*ZLrOz65D{NTG`pNi-*OzQd_G;Di`+GGsy%YqxN$%BKwEfd+*AqRFv9fB3V%zh18f=#(K%u$BupEe-|fd-90culAO* z=s6*?!i+uu@}odNkQ{gPJ&5hu9QW?gS@o!!d|=;R>?;R~%GFX((3{|V*Ml4K{a{w2 zs7cM6fd7c>`s3%Z000SFfKf*|ANr?UBj0=8O*+4#R`+Hfk&ck}S+yk2P}}g#6lb>S zx0j_G>k`d%3o?)w@8RDodsxegKJ!hywr|nS8eaiQyH%-fiH9zOoz!q38S3_sYTs<~ zUG6QwXareSL`- zsv=XC0r`w#897CBg&sj(lraT;l1I#u!2zHrIqC|gaxR!v9wo7%ddL+4pl=H3<#&Gx z6AnBFP?@D%b!AS>MuD5PjCzAW@BsSTieg;MXE+k8ogzP`E4OVt0{Y>wK#atn^l15E z4#1WXCB{4F-j|NAl{bj|*l>1dEP2`wGMtSzQzbq19G8H&UL!vSDLWU8nDEP8Yhkwo zZ&_eu3Op)hno|Ms$=2)`c#U=dAT9>|@Ty&{m1E%cl#hXYSnAkwmpH>P=6=OFNagX7 z+h#7Ts=r#bx*u4q<-3-y<3PqF3z`1pTAh+DW*5)um;}jkwq4xcno1FRz!dQm!suC= zugJcyp<-*ZHy=EIPm%>NVIFHUmp4u@O3xbD)qfFS48A8oYfN^d8fK!DFqnitoISp) zF`6kD?aE{=o_-t!)XT(oQ-AzgLgk~I2SelZ6m|w}i=rqT=51U!TqW8xd%Bv#=+P)x z)GDpMeHl-0fgtkHZW(4Lf&@(8>(MU?LC6M({<}VC1vG6OGIL-ensNSpKXDti z{>VDcaRfgj%hKk!M+5usatTT30bjqqY%bj4M!0XSQR;8KTqc%ldj6Y8;B8!;lllAV z)TnF(bZQ;!H+Uw)QLIo+iC`At_#)+D(>rCz)L3lkV3|pl=q5?Ho58wn@*#V#El9qB zLX>&{WBqmnLo`VRou5XM)aRihd;9QMrhI=<4D*QUJ}d)M{U_R|E^1$B=8yAqAyp))}|WNGgUSO%13L?s8Iw0mvG zoKViU6=3)YTCBu-WIWpb_g2u)(!L5bBCy)7tQeQtJLmPti%uT$-19ojI4P`$U2FBjZ6*$^v^B0Dl$QP(V zNll)ofSlmfDo=+<2D^mHm$hL+!koz6)M`+diLUU%+Pr|?sc2P)*(m^!HvaI2E;LF3 z7-2i0EmH2ci?j?@;PDQP5reUy0pvLi;Ni0m=PG0ie z1$pod^j4^SIlnU;SB&82M-uxSpKnX^4Fk=)GVZw2Gy?Y2Ll{@UJ5ab(za0hqxiI0x0kRU_>*l1rUYr6G{^$({uf$<{;ywTOkp zdY1$Uas;kDW|eUH5}@l^guNFTZ^O27%HSY50=N61|AyH3u7O9vq!jFHCWd(%n0~MM zA5c~N4iMNwe}BJ)wO-SNQlh{PFo>G|X!guCt(>%P{PK;U!n|4VN2!?jZ2Vf}iBo6G zx96*S-EXpMN!P>QFZg`pR}Xftnymk%CqD#vp>Ov9^4#bkSA*bq?RaqzR7qJB9p=?U zuXc}yD)hUY=CA!(Qx;1-OpcX*44_z^jYo3(I*Tiub?69-Z5e&APYv~VolO_Y$l*Vq zy6QfuOQXo0!~X_r5)XWjJ1u<&PULH_uN(_b>o1V5g;oK1oON$N0pR7Dy3f%|PRF~$ zWdLZ*Tm&RIudv(u`VqI1ry&Xin<#Z*+}e`_S---nlQ7X&lUH>jqQ`xw=zIwLP%3a4 zm(sg~LEIFQhraK{Kt-4%v)fEpIwLZRkFTX?!*o|NhRY)SJV#7&Z`_HCup16SOMTa* zL2LfNtZd^Cfik`t-{frJs@o1Wz>zJ~JiZMdR!j86TlqKDCG69Ak;i=OErh!c&rW}Uwn60WF)AoMfO9)`Y)ja%Q>nsjug%OAaT zEjv&zmFB~>R46(4Ig1mU1#D%??#>P{lYRo>mp#?INQ+?-Fq!tZz+GxItuKsvzB$|W z8xwJWEo@rw1CYQp2LYhXp1GYrfyPn zg5cvJ#H<$*N-aM3sP$U*W)c`uH#}%J+EpA=cj=K+fRAAiuRz^`8VDR2r#MQi4u%4V z5*E0h2;(;3*l5SI$UKJi{@GEil4s`vsC8|48v2U)-1o(%sxOi zjx20m@0%gG3@q$33QFk>DXDhAiJ&I}Rn5_dn?gz-l zZ8m|he0IO!)Phv-A zc7V;JZ=n*Plj|c&KoaH<%LNUih)Q!(X1o>cbU#qUthh>ft362S?*Kh-72}62@q>}! z3@S{wa4YYP^8`KuC#+W}OCV#i`rG|1sRvuMSYX9atUPisH8?*|EHM#%btt|0g^Bz` zKWOy=JowuqujenSr7zpY#?QSs$<#vv59RMvrKUs{SsD8DB+UnPC$%knBu-N?wIIu; zHW9e@HEl9rYiMxk0APa$e)FF|_PNwx(Br_=5G{it4%Qo1kAT`ybNSTmgYya52it0F z&E2{AA9^oz^H>COa2UyfzVqr4C{QbR)D@_1iZf$x?Dl&7TlD+XZF=BZEe57Cg>1{* z!O_04$r!K-X!9Au75B~d@x)tB_U9myQV!2P`cIaCB%pRIjBs-+ASbpq>;WyqzD&P{ z%5g}!NqUg45qtNQv0}(su2VVPuOt^1ualfu?Bw~Y`rIuINc?OSK%JyNUzv>uUS);0 zc2}R|dS|(vRY-6mKl{BYgQ>3|PfQtB14G9IAGl}fS|nx%$-E^wA_(k)-PpD8>8NlM zV60?s`b7t9X8qYn4N|j^-zr#}>!4%TYCfMV?i@$4p4zWhvORW8lq%r^ZrEI$wOjSJ z3E2;nR8w!6%o(PoekN;d-!dziotOgdNYMbhM1$LP2 z#X&>UlqPDsjYvo9?2m7y7wB%w{SerOXPOC88+tz5DC`yiYystNmwdTw>VpB>a`GxN z%V)c_MBtFS4}UBHQ4_NS_glx15s48SEQHxO>;ah{J};?(6GfJ}jd>ncadQk~N7zL4sOECgS^vEu~TY~Zn;Fg)NnjI4Xe#BaQolm*yL>P|ABSlmGA zm-*63YAe=>1#SLa^C|lD_XwIwJyH_?+3d8R{IHBCxw*C~eUi9c;qlUb+!pJ!3W#kv z!wF~|%$q00n$=bo7=B1F)F9IP5><|`l7KKDgs8V@%)84>T4h8eI!Dr|%cR;h;r=m+ za^yGr!KGz4+4n2mGl?Vi-o_i<*!B)R_v-C9oiF!)#~vBaVHiaI027S=2b}M|@uQzq zt4ApPm5`wtmiZO6!uc(RWzkfeDfdhha~_VTJ-IDQJMUH1mWpd11P)L`wIG8QPdZcJ zqE{*>&G?+A9l^N2MI>A`ML=gCfI!`pTVDsJxFxr~LO-CnOnG|2%oQQ-c~XXs!SIdd zeatZSzdvkmXnbAh`o8FQgkK*7TJiBs!TCd+13}>RX_{Bh)|&m%cYZb>?Hgzqi0>~} ziN%S1XF*SbZpOSsP zv9dqoa;ypXDx%g}-#Rk}CvRV@e73q2Y{RZRj-AJfwLPj!y3=)%hT-3>@sYxnjqqel z53n2wKFopY@xriNV7VB?Ll6G)%+K_SvgaJCuKdHIs>NQqFT6eMZ4;%1L#_HUu;6xh zN{XD$zfr$tQP+e2%&d8S&E^!H8dFZ5X;PEbn^&Pu)qqa8jqQoFog6zdwRM#XlHxIS z_`*P!mrLZW%+^z?zutTQBo)7x!Iuzw`xoK$&R+`DnrpFYXHl5cm#! zDLRK&_Y+lF42RRnmUCz6Iy`y})Mn6mOzLMqe<$Qsp{ICgJQi=bwgvo$s((~%hXd#e zQl~KW(z9+>3oR9Zyu=#xr7J2%{i2;zVm*1ta8}kSc-#41Uu7)f2A_<{=db&~`?249 z1AUopZJVw(m6Q`BSj?|9FCn1VxuZHVtBzCc@I86#>(|G7aPpV__|!xnKSKdd(!?Cs z5_ZJyy4Ts@Y2m8$wI#JrdrKbk2{GLm<90B*HfQwK#UZW)b?!{iIL^OKldZAMBZd{E zwTb}wLmHziYyc1~OF@X-AMo0RATG>7w8K>uEMp;gtpVF0NYi&sC9ugZKJtY3t#8u$Gr(SH^f0UA zLeFxon}l@x{9rg61hV{JM1-1mZ0T?fPFJT+x@(dlzehg#VhMHP)HpV4Wccc`&vfzg z)lPvuJukw4pmYEF7=V8+ustbN=Tgwf$DyN|JNEtYDQJ>T(@iHIBVJ#CxiNH`u+p>3 zOcWFjZ>dFdBng?x8XTSt|GZ3e9k>5Yl2p0#sM>y>x(9y_;N*sz=Y~c;|?Qi;mq3gET`u} zeZ;FZKd4N}aUi!5NWuJnv`^UVZqRFiej_&mf)N zU+y^Qqd&>>;ND=*{R_>teI8ky=f^#|KuuuD$-HhjRgQw#&7*FJaxdbjTmFWA`NRBm z3becC8^RbOlqnTJ0E)UtlHZy=3Hoq?=EEY`&TYZWi23acM1;Ydjxz2DSk{%HZjc8? zW|jyAfv!h!^;2)&TW>Z;o-2v!`Y3q2F2BGqov@R`a*OF$2QVVB-hHw96Quk}<&}WL zIDMwmha4B!x%FG9R(@PK?PQt#E@k=PX)?1S4e$N@c<(G{&qe}%Zx zOm$+PliCKJSi=i{)1c{!L>GVG<;vPPNS!$nmsJrQAwe~6DcHC|9$#^Ni#Fv!=Sgs| zs6Ot$*BxQ6vW{Qnyj4$ZPIoS5$4w_seuF3_2r% z!_XK_RlZl*w_5*>l+633=up4LZG5e`Pg=q1@ptgW{@1$mn3J3$ZEdwu0e* z{u46fFQ!I^2!BeD63g$nsmT*r{eQT7^JpyBzi(KB2BoB#gi1wHi4-MKQA)}@m(24# zPYr|;DOBdUjG1Rjgj6K+m^m{kL&*C%uJ-=@_I=;av+ni0>t5@9*W-_^-L_rVb)Lt0 z9N+I}`gV9<%`UG z%d|&XFOGiMJlRNQyn*Y#%;YhXb$#E&oyB^APp>T*03*|MK!R_U-!Ot;O4I{-isL7cHeZ>lG&%I zBRdU@jWK11AKz&3yGK8jRK4xHJKWZ&7)SN`(S_f*5^*s3d>b0DS*}G8muETSdk-cr z4*}FDA5pe-9h2fN|8C)1IZlneD`n`erux2{dZ>A6xYcQ@;7G%dZdU(^H<6zUuUe(~ z-id$)xkUU^&1R}c?|7F}v26HJ!2WA=^4$b&?16y%G5E_xBT}vx&2+5^ShZdEL!;#L zsskCJEj9~4X4k$e|8;O2PUXC@4%6;;O^^|M-&Dl$td243MBV<7AHLMPN{jRiez--f z@m8A@_MmMR)uUQ~KPa`-+f!z@mwDozk$JkEEx%6nG0nC6(5k|6Z*aEDu!vz!Iz-_C7lfs}%)&}P9?Nn`U zR-M6-K;=9x9lDSAGDi<5}V^<>|GFa^9HRHG;WE#Y9oVSR%^oXj137SvQ z;p%n$UY&Cvj#g#I8+L8pIX4)0R7JCgZMx5*H<;N{;=nPfdycA)cRW5f5jCy);&z}K zx97AIheX}eI*$k%DstsBx7FNd{`pjG@9=dQPtlxd$(PCW@i~PK1{|$Iluo3ns7g+m9o`(kZ%Ket}v^EehmSDAo*fg zPxw8387^u*$@C)JpguJWD}`RB%_J(O8C`we%hX4t(pv%cj0ff30o<5l~nkI)@mlhfbEObGVsO)=oZdaq?W{7gG!HJ5#hVHPzQ z_pZ@J)cDJgTqYVOpQ8T8aI`vHghdr^*lbRulH@gP=>MXxjF<|OUoe2*ZsCPkgwxxw zqwrMAcZ3=}Ymxoffe-o`nt|2@0KDr-^iDPx(=sQEB0lfF2D6BtI*z$&L%R%W5C6e++bH57aeZ9RVl@sbMXKQCL!^?=|eYiQJvMqV! zboYa!twRZ*Oaeti>rC1UgWx=S7;0M7eR0}$PB{zlVIPip*E0?5c+^r=D5%{&(VT0k zKfMU<^p5u-h15O747zfi!0@Zrh|WsmjIT2Mc5KMJn@MycVs+f1i|3+hR3&dJZ*(Rlv zKWn8Fx`GMmUn&dODRgY|S81(hB%~vqJ5S?3F3T}3*&v$Ti`sSc#U!FMSjB_lvPCM1 zLquV8z1Le|*H4iZEmzi`o;UHI1Bme4P@z=Q^AN8y?BL7rG~UlsGkr1jto_QVnB%;v zxVnjR!C~_9rnv?!nFkL;A|-^ppgX4e-{xLY6f2oF%47G`Q-Ft1JIl>5WqnqEE8q2@ zy73j#?rtH%?bs`mPT}dN>P=X%ypjlKo1OuK!SKLXq`M5UYPn^EXmwJvfimL@lFxR0 z-T8$-zhMi7b@J9{R)!$O$Z==EJtCy}+G<{PxzYUmoHF}po%V&I#UC>ibHJgW0(DAd z_=!!HMTBoG6@(ljPk+rxg4#?(G|NCz6uaB|BzNNqhTp+V;&Yx2Te5J4RtN%gynZrr zDr}>~aaKuCaMyQiF3j&607-theHL)6V`ztd-go`20{ubewDjd%@mC}4b@dI^_KPnocvUi=_hsRCsCSo94&Cla2_c5vA=#E80|9nZanVibVWaX zYY+Oge&&-oD8m(qqZocoI*NJ2UB80I@%eI&T}w_>IwHm0thf7fp`<|cl+w4%f$Tct zdysd4jz3=M?X;{Y^TNkKj-r+ywvccIDJ4Nzn-r{8bl{|?X`NtvBT0nwwh7YDvpi{6 zWZSjy!D6(v>0@Na386S>^U7bJZ$^8vuQKX-h5e;3XI3&jVS7arz0QF;Ib6+&W*w1` z@3x_KSM%Tn3< zq?#o**h=wLI42LQ(2_(3p#lhA^pcNUTav%kq<3%l8M~?B0skT>kavID_=~~p`L2TX zdV7BGNAkLk&IR3mK7Lc8($?#~>Z_MOMI$84#>zacgIssUYQBH68no}JuJ3kN@?XDS zQ|@=^>q7EP*^1Q@G_>g3!>DM%s)L!feG~h3*4Rl8Cwbe`42wVj+~?L) zNoKQghoAA%g#zm%{ad$pcb-3~{?rC_!`ncZ0pO`QvcGuV6_17vDE0#-3Gl({8csbKN2`&3=!M{kRg`q%K? z-z#d4bYWO6ob>klhuNAJC9_>j7OE8 zW#h4V?7MXStbU%9sO9u%TUse^r(t4qKu#xHd7M=1l^OkN``B&!EIQboYR<`5=*4?w z&?=QF=$uS?iI~SGr|CU$9W2SKX=fMmEDysTo zxbQ`Zfdt#z?_Ky+*1eHGob;3rG3`TAm^GUfFW1PytX6tU+fzxiJb!CAO`Fnxi%Flq z6#WfpV8icp<8dAxFptM`<&@aY=U3txrBUH)#Ce3NilJUOI+>@|^`g1%%(4Pw4v)>r z5YOcKYC;d3k2BoKDA;cOkKFWA&01d1`n)=ZK3ff$N1Lg)Ym2kF%G3-Yb1#k2DErO# zN*ta+i9r^e04W>h7D=aHbysjD%<<;Y-+t`Woms`SG8uZqS3w!fAN&2j-EV*+cN?d7 ztRXcOOVcKO2?*gzkD!o9;gE^T9=p^wxJa0QQd7^3kyjJ!5MbG-H*?tUpiF+;m`>?c zR9*E9!on#Jy25RUj)a1;XI&gg0w$Z(%bS^|&RjaxZWI4fY@&63c2Xt(We2n8>5Roq z-h&I$30o_DR5~~H?_XCt_wswT-D&AUg(IJ^d`Bu6LEPJ7OE+rbUWYTAtJ^LcuMy+EK#WO?JZRw4RP|X#vB-tD#E@ zR2SB{Z?U#3YJlWA3bMIeni)+D!j%VQ`FBsI{L>}Xz z)veAlR^!`otFLZ4^0(XrI$bfjQm_WHElJH?JeLfNy7ej?ay70Bgmlf?u#eiK25R%!$gnFO+k??6{^Z1Th+T|yy1~o!>gDA(zP*30 z_~*cvG7zQdo-IELzd6bV#an$L`1dL6WYq%SdRaz~cG9s|0XOQ)ylfh%u9~4j3an#V zAGS>wavZyIzUa)Zp6Rj7$cOyzX~kn%xp;cq`{b13r*5gY6M6K_8$Z5%-VmxJ5~I`T z(JJ{MXRFc&eDUZ~X0r}*t`y#*p z##f+h<`-Uc2A7Ln9$cObnRH&=T+E(jEDBF_BFsHMZG_O^m;eL&9U4f-Z*OmUU;QJg zdFj_N(9)(AYvYQAyWj|-7Qe7IuKEXwaYYSaE8ue#;N8xEneg}edyc|8G#}O2jq|}e z#a*4AMM3(b0{&0+pcc;qLa9F0l2p?E%Fixyu)Vw{2tnZ?_m5OQ#S*An-#y@;W_wXSCeK}@dS@< z7~e{vr5mbtwW&D%th1UZ-KvBw;HIh;EEGw*44|I!%{3I`EM*~27!(3fKXc_Q5sQLm zN*;~CFkpdn2)0tqADMYB-^Q6Dl*CcDIl5hjb75{e3w6$^MLyt4ROM{yid151dTZrY z7F2UC4|}yMgc{GwdTE{gRI1#>$>WpcuDgWA(Go$lXID_U?wsI6*=!f4ed+@?wV{h# zMCqv4kTmkXQ2%`ePS;^DBSgoZ_x&{9WGcG92EvVM6jsj7nF+1=0!D~ z7SQ#ncZ|mJC*e>qqJ$Eof00eox=gkRl0%H&rA-*4Jb2Hiz4e3fKMEP)mcgD7yrBx; zUW>T89fp`7stuAoh@p6t3hXlcI2CHl%#ccw7e#%L*limTjb-pD=)@HC=Z$E%RH8{F zHcJui!@qx%)E>H3%Wp5TGSV``i}29>rZ|AWFEHvF;hLtRQ2j)xb53uFGi#8|Y)nX4 zd`ga%@3;(U?jD>RNK;*QIphO>>%eF3xk5Z3yUmm-|-Sp<5+k5LS?|A z_3c?!BZ_l?fm%Bjf6pb8^k;I)wfDer(W7h6!{g@mrV%Y_NIhO4T@X>(ec8WgHWD+;|?Zv=f@=(l&p1hNexaU#F6$&yfUy z3OfE;z8DJZEf6AVee^H)2W&GQ>d57uv)ci6RonBOBTZgMUQG1un@tVfr83}M`%u?| zT*Ke@Y>tiTL}G20w?6g1>$bES^7nvfygpUbfq$$immiYpVSFrY(4KP1`+umy-qB`= z)^gG^4?pT6|Ic-!!G-&BHJIPBbp(yD1M~E#+(4T~Q?_YjpayI(o!W~3jr+=( zvOiZ;tlvhKa%+9DdD+%N5NtgM?tE5ow5=oJ+!}FzSgDnuUTI6WnNU}P-J>Riyv1j+ zVK)^iOFqi{<4>Ba`2mcY-#vo*vK;~#9x*sdyO*Gk7&T0tc&BQ_Xl_XrG!iS>- z0Y?Jh3x7`NNzx(h&v^-Zf^7PJ;{#NCilOI86nnI*@C%5n?Uo9`k9Qx8?>SmU9%NXO z(};MRw@|0`ii!d^jvc-Sk}rrn^wX(nWs3e7cNl6TX8|Au#FUlaNmcV--(TtD^!9XK z$6pqVC(Ph*(P`$ zCTC?Ja36q*I16FpCo3HxEc=jB+v9&wDYZ3rY=xt?#b7PFxbWNC)N2xu`pmUj_=4^) z!R`DOFXndIBBS{Bq$-H6%o}f441J09o-3S1Q8tWVq7+zQDphV>!_~T5poL%`vXH3; z9@vm?JLwsUiNMs7#dS@=mC3uf4^LorsT|E6;%b=Su^g0+SI$YL-Eq8{O|&*irNvhl z;oU~`Dj$`wc(NNdtXkf>JZj^Zo;6F;lNa?cd}aHefbb=)&6?~?EeIl@9{VzV&L-m? zinvA@eaY0@NqZ*fH~+8(zLF~4bpn2hHkrN88WN8 zh`yuDl1nwqC^%6$rv`Q!%RKCIiHPq%vCc63#z7t#ByNmS+%woLN%u`CTtq8DmAm61hpyPZcva!VJ4eR{whEmto)z3}6)I8Qa*Cg`+sn9Ryqk0cKv zsrJLM*0V22l}_A?Ul;E&Sv~b)5;#`oNf#;VZS|&7NF){GP22) z@yJ0cm#15vU9So`g(qHi4)BzUTI$0gsED?HJNBqrQtah2`6uu%G~cp_=6?9Rb|Ai{ z7N;oRYFe?Uc*1il%pq7)7;7&`L|JO}mX@!PupQ=9hfTZA22hy-1)BL3`F{OTtq&$1 zCzu_^Z#m)!=F)NR>-Iiv#nud69~NHk>!5m*#}CvJh;7 zgX2Z*HO_8PGN8an{s|Nh=YvF7Ydt@EVIy*eZn}Nw;dPx-Woj77!@$dv-TFQHf3e{fO=*k0@&lwM#L!lxHyjP1(PUofj5avF$(Y?3;e< zT_SWI8$t)*&TFtI5Q-H@e1fGSX zTaytpwT4t>R5eUk5mZ8Eo37N@J@SU5hasBMvW#IQRHvm1Cq&M=Gk$IjzhrU?AnYm}YJPR&&H{k#q}^AerD|{Fp!~_@zC}e7 ziuiIxQropoL+0B;OsjAZyjfd{N2HN-{Sf?p%v^`5CQTLC;bsL%?56TAMVp+x#@jr| zpbDE%4q=Ot=DOfR+8>|y`ZiLrY}61Y#RTPAp?*3crXzGqs>zCtr$=k%K7MD5pT>0L z@)cf3lA~65i6_4^WkYs{p5OV^$r=C$owM<KCW%9E3S%>7{Z(pAHnNHPr%PQqRX2S?)uxl$zRP3ZFqywVd@Tq} zALclOn)@x%V{VYeZlcO|&H>7FEA%7HIIf2GddHp9VZ!DA^Y!dD>psb^JX;)KscqZj zjWHeBnlh%WHGXv*743*QmeV{F{D{P_Rz=3qDz-;PtztX6!)d0|$Vuf<;w%hpjHau+ zC%Vh>4#XMf^lqsTLFSv@#3DN#1th*#Cfm_dQom z4}Bnyt}m&^VGUy>s(CYI)w-K8S3Yu2P&g#{K+Tc7C*DV6&s8qlFCEqqJ`t;xY1p9%vnCX8Xcg+6IFsBZ2B)#clR+-+~2r~!vu}6riQD~qe4lg1{MFCHN^E;{^6o!#WT=|-Pf1pq*~)Nrz`E!L zXZ{?|mV$ulu%4BE`qLkR1sd3nlaU=VdgJEr*<(qo)H=TDx-*tu?R|0%uq`&TfA1T* z&#mr>U_I}UQQq*1J2ft=rkr5QUwtBYMeE}cI>^?RLm;7$)6LZU` z?>{AfW)0DFKHKH2D^TP4?y}rVy1&alY!1=OWh5lIi?JQ``EDj%5-yyTh;lg`+^MY` zFW*Q3%g;LGw<%n+YkQy>u{k;Ug)NfgNn$)B$&Y$;WC;*mdtXBs$3{Enj6!hM)XBVrY;<+Im`f~W)Uxpkp)}_txGq{Wk-3Rbx%J{rr{98 zjR}i(w2@OP=D`8|FK812kDIE$dQj*u)5HkXnv;ogw0s#23e|x>A2u?0SLVVQ0cu~; zDUi?WW#~N2d3V7`TIa9BRp;sQd2hkjzg*(p7Z)EXAwOk ziPJQY*{ME(9-CM`3~Z@C-JH5g?nE9((PW7)FV2cM5b{Gp?yFMLx|cfwjB1Oe46h!380L;Gjx0;{Y$Ik`=DH84)5ZM9|263 zTmZ|i6?oa~l4XYmgcM{hN>ne}&Ev|g=Zf9<<-)$;o}G)ZWfRSy*)*uI3bvy#%9Lr| zWS0^r@<@!R=pF__kf9-2M;9!O9cd_Jcek37P$nR+n*mZ9Bg0DCb!>I_$>iQ@OI`!1*k_h;ZNv6>S+v% z7*Va+t7YGbc3PtV|(zU_Aa&-Z|8 zB*)d6)g8oZm*kRXr@|>T<2i;hghB2j zD_{C2o0o&dSc-tUMiVIU z(4V7iEei{X8B@T+n5G#9k7!A-PjOk$?d%?lLKwJ0+z~YJpWsz}9#!xVX~4OL@GWS=IU;mK`_qo;X&fzE^VQzoDhC4ZOL9$E ze$tV5)l7L;Cw7x}Wx1h>E7jti&qfz-zyfDm54BgXuBeA;#~w9GoBVMSiwUDHHa+GXn2}ph* z5goZVPW-SVIdSUFoQTXfyoq#^*31T&GracAppqnx=R~Mct*}#QRrr#@7K;y!JxXV%99t3}+ayk2cWbFId$iH^P zR+f;tynOYyx9^ZmnRyc1XY zI!~cNy7zR8>%vo`kdkAHcJq`A{O2G4WfEaf7j?ms@;ngyxff8uXyVzsnMLqhL$at4 za6-ZN_N?5@!2SB$=g35~A4ZD#HYtga(TDMoU>x`D|Djd#!IMC|^Jri!rHB_AoI7;^ zxyeEwDB!Kn=wEmr>ppHFyjrc;OA^Hb~lP2jt|N3ITM-rm{_2pwm z3IF-mzyFW_=W;3xA0k1;Il2HZGr>pSZjVZ@%eT|zJ2&~OWVKNUor+ z$VUN_uR?srC%*szyxG3RcwvGw(l+CPKPt9W=g^C}oF3z|=jkr?HiwHsxFSk>2vX73w6EM`OP#x%FhNCB7q!0>=M(`xs zcw-sJ@Yc4^hk#}_-4YjKb|dZ?w|H*4ltYJ}^ciE}_o$6rm!OAb*;0}|;9-+_oorON zJ@g-nF)-;d`pX2|Me1Qf-%8oIE@$JBPE@Q@ArqE-ILPfPHvr6Zn1yUA<|wZ?=^6gJ zn|AJTx@uVUtoE1l_7l&_hHn?18lDkhY=xnhWTf1CAka$La!`?y@gTWjtBS=V#@IuAq*^B#KR+SDodQmpC9yyy zfcn4?)9OxeEu!Ykz9!H-g+-@;O2MGB*wxgy3>%p~>UDFr82CU3GJDDShBB&u(2`QP zNIrcT{1sannFFVUpKCK70W3*Uyu<{~t<{OemEA92lJ+Cd7AuavXU@1NRlqp^z5iln z;~<}oL7DZb3VhcHtqK`nSpV)JQ=sN=f)8TzGbR&oi1)D`;Ce%N@^V)c5iKMgrlUV+ zs#$*ohNujX42rOpaMG=6M9-|bFWAC&PCyk`1#C9yJkgwlh#MToJ~IN=CH?59<8O^} zdi~ui36X0Qh>@7O1m6aL&;)MV2qJ(Kh%^NI46|{(wdp@Yj1{kLO-X@2%v~*rchJF} zo=N6Uj5c6t;<>yL)A5tIE*5|Vk7i9_$YYlgU_r-bb~7OX0*t@e9TMH~@vYBBq1*dC zI-|3+l`7vVYUeEWGxs&k##*HSO;UslT7_-dEUIEda6)9nWL}Xtz2seHIe-J44sFOECsWOHSGJ z+@-o*T^cGV(d_>lT2k-h*D$;w~_&a6g zhY2tH8riSAuzNIMvv@#bYjWYZV!Du{-$*`tODE40zkB2gtgJ~d3jk#-@hlYvMG^VZ3n zUL}VpDeEELOC>ka3UNK_LPPaHH%|oRUcf!%}Vhm zYaKGaA_e;bs$YSd9BMDf%kyEO|K}UrUDg@?&3aN)c$p6i-}-_QwxdDS3mO8}<9@P5 zH*OwKO3IHf9v>L0YB{%6r6+FZ-Q2;r_yjW17K}$ALg(Uj#*yomJGdgZfMh_Q@~#gM z!{!()u0;mU5cYxVWdzbEz@Z%>k(eqncgII0HqmOcqBAc~`6V3n_&8;ql#i0Vykaf- zc)U{?%4oW0)|QpVH7FjgZjN`8>;b$BEA?Wuuz~r(S1PkhI z=ZvyHf@@4B@C6=@+ToLw_eGaSO35|*2qpqtjsEZcc5_!#g8$ad7G68sT*#0DSoQet{%YOC@Zv0xZ?29fYJ2atDm_%X*b@|5^8 zSd^aMPiq@)_@EE)MFyB|tsG+%^O+E&5qJ>vn_yXg5y-h#LCMu0Q21%uJAlUPxE;IZtOKs?7zcfU=wd53QwezFQu-N(e-Y*CNdrIoD7|j38Pj6_`Ud z>wYs1rpK%JT21c6)0kp}T%Mscy=$f+&P}7aCyjI!u%WkZJC6xEQM@|UuL(m>r0I1# z)emZ#qod5#9L=AU$YLhoPgWB0_ejvf5GNEEDkg8JS3A^EKAMJ=fU8^T4x}zvBIE4g zsVR9v@_l@Ew2UOYHnT^do%+*V)r@WNgx+m=j!AijRsY*6`EIS1O|8jAuMP=@XkLEK zq;aTV;Sm!io;CG>WXYqj~U$4@+*eFSYzF9{p(oZdk*XL@=5v8~M&{3~nBxf`cr z0{5kOW!e-sxI1K-cAw{~0F>8S_Z@FpD3^u8ap#i$kV`M0n0>T zf4hATev(CtB6Se6{uitMzvNf&lSfDkj^F&(uly&c7Xh&ie!~4f(kQ^W@t1#p{eL|q z-G%OBe88t;83{7&{5z#Pl8*OV1kTlM-7wwoASjFW7qX%k@}F`-$H2qG&T*P;E4s= zxvwL-R?|0cCeFQ#)qb`Z!@9La|In%a--4)3Mqcf1QDC8a#dhB*lW$+qa160yK;%G9 zWinlzv$6^`M&aUbds1J6YvSrmCU=L*<&tr%*k<1L`8}OOI}TqL8XqGGgU6P$agyPc zQ}A*%;sZa^{0*~m6$)E~prPnUKwxH4usRx7Bd5!hhP|h#nBfb3)h-gp>d-nn{zc(; z2SP`^3cI!Jr#e>-C*6=!>VGU@DaU8yxBbZnNvAQIsTuL)7FN+6&orAlfU?jTKWsx!ci?UMcuIVRlAeQjMVrM zHlFhB{VG9F5ltmZHJpFALlc8NbgkA*Wc|0b46bloRb$j#y9xIOKZweR*H**eyrr? z6|<<&^<(AptP=A;M>32N<=C|?6P)UpV^0?;QyGvmxVBXM$t(V!jLXN8Q;ZF*1xEY= z42Jv<4qqW}i^|7>G}v|9d1@)e?ldvdj81`D%sTkzL!X1vO%?|56Oz8gS!zyNa;nu; z3(mh@uQ3>-*?h-4)a+eT63?eAll{#eqC9CWNja@-eDk^AwAUKeX90u`4{>o|O96L$$mNn#t~kuck4@|G4CYLS@`yt8*~w%A@hc}0A; z+>e{zF|*h$mWK|X_^-U)8aO2z4R?d%Kn3qNBE1Sf0*mQSFy z1U~w97*l4GA>m?aqkxV@@4T5qM+yN`Dnb;c+*M4tB9a{X-3DweKq4n2dbXnv&|a{e zfslbn1ARi>wI6L=d*Uh;px{%;u8SAf8b=~**_K191}Hq0&KS_Eo4h`=QmG@YDh&#g zs=W`LIm%|^Wjo5avga8X`5mI>oWV{EYvVE4KtPK9HY5U41+k?`!CmOKt4x0rlR62J zl?y)uanB9PWqE_AG(k*f)g*|mTxKhh#Ex2MWtm0AKV_CmV7@8aIM#VH9@7xRb~UHj zQt%4Tdj-dwy`0@^GmL}nMy*PX#nn|~Eb|_YS^+e;(87hgxt?HQuA)S+mdNGnQHPk> zAtT%u4su3@nXrVM;{-lPYhttd3Jab4^B<||1B<@QBs$NbQ5ZvI8VN!zX=CFjSm}3Q zt2yefK)PmjpZ5fF+rPtId&3$8 zL41?)Y^TlFB}&+&;%i-gOi!+#9Ijh^v#n#qTi}Sz;zyB{O&cReGmGly9~nN2F8ZxL z?UmiW0OVuLp%t1`NqNd!IZh~I%-C=iQP_|3B*L2MhS+``b~iYXu_O@p7&8iB`WWA1C5+QeHy$8 zUvKWW;ZwCbGd_kEw3+#UT;n`|8eqZlWuMxHqYAZGFn46%C@7e!F`xQYusiX_V=dXN zGa^91o-U;5xh@=^R?7N7W+0$JxoNk|c@ZiGM<|*zXp%YChboEHunjh=tiVhyK$5sMF}K=NKUMj${>Y``^V*$Q29? zZP0A8$*QNoGOCnl`W27`oijX7n9AADjB)Svna{VmZ4R_j;MlKgPoJ5j)?nmi`f1Vr z6Mu%DVo}_B)*}NQ8T5bxk3@jdFY|a@t9Xh)?1rWBK-U$s=9wmvZh2Hkl@d=^*m=8lx}TBSMem z!qPzzPX7g$Q*^M8E>2y5Dc*q@a6&>}8_u2aLL$9Gh3$_F4|d@WcR2C!Kxyc76P z0k$bZbpVo^I`>MBXTsg=p6}Q6Ot1aH`@oiRn`<>K zbr0@#CLtojLJ;OeRlf0$m{x!&e_d)t-`nqm;P+D-iM}cHHg5Y>l+uESAhaQtR5A28 z!lXawfPw4Fkk+A47Zud!URvpc)49fCz_3X8G?T^L`2I7D&&&I`Xwy zJO&SYaApyCYld(xlM*hEW;J97S$`D*pmg<)Aw^4^jsM%Go}rAFZxlE0b+MQRJ(}Hu z@c%6{V4PfTOK-yk7SaOX|IFRWGoO%?QH<(}8qX6K7bEulWZ!B*;GP@xm{`hS^wzaK z)>asm(R(s0fW*}lAfB3FQGcs%dG~_z_)C53i)U2C*K=oIaUFtTkC420L* z#cZlNCiU}d4|-NDUz$nA4dmOVkvaEm2y~C$bBYn`B>WXcX6fs0MH3eGS>n-gw3aRw zXCY}E_|i%)eb%#wL$_u3go!cgk{O;UO2!4eGet=ebErDZIPJ3lqqGz{+9!otw>Ynr z+YnzVli=*`=%lXBuT6yZrSnuQK+|$ zFiAfbT^W|-R9!cs%HCzeIcG1Il$mvyKTNR#MBIbun+kHH`$aBEoe3bk$zLSQu4Z;5 zzCkK^4iyeZlL2UFjL9bWAD{7_>*XG6B{5Z)?*bZQ z8as3RgiH26A4I|`;xGUH`Y+rhrc3<&-|$`NJ-cc(qf36vKkNiYtPbG6)U5aq45VZ@ z>oP*5{rxeBPp=_Nzbi6Rbns!JN&)fHYQ@3i821CW%fsM6Aw};kTgsX)*SkFnHRZpA(8?Hy$K9Y zBE)Tkjl?&VlHNi@A&^LSAi!EyQ0_NE6B!{`1)j=4PQ_BjpAck0y^BZ$Y{H=(+FM8n zj*@$jfAC2ZF@E8qNJ2D$B!uK^1j^GIEK0BD#$-TKmz= zsMvJ6zM123D1nZppW|?Xat?P_DvCL)inS9MND&*KP3KKgci;OT)JJ#pK%atWzx=nj z;>a@r>mglGFv1ak&$^^E}b`WHL3}Y0F{0k;EN{6Ma`78Fs$O(&39{wdQ#;Y zfy`WfKzBsm5Wdt??SAT^wbja;E0`l%)4RhJgwux(Edgp5Qc5tMcFL!PWGitIRIW#M zD@=vMV4H4clS7O}gvd#Frou=e8E{~Z99vOq$gx#J^!o|uTQMH_)yDR250c-(xfqH8 zKK0O>G4kp?Q2})&i&t`gds#YO_M^n{&bxOFR?<<-Z7!74iHO(!ev*b$>;HAw3H{oy zlADgq?AgS!qrc{N^nWRk5&A{M z0ESRvO`!;E1dPIz?+nuYP1)mfo41`6xp?-Xjt)V3k?gPALUr~pQ`^7PG<1)l8)-oY zH3AgD5NWXD~Z}G64z0BrqKX!x@O%NoFStFRdWcA@lnTC=U44hM_ z|5^YIR|t^1q(MiS--SO>xqJ9-LFagr5K8EU)#{coV+~Qfcd1&t2|@)p{$7bs>g$H6w6o2s1Z5Y2oxUaq_}TM zLc;OqHttq(T>B{eYcr-x1N7c*lsmAO$dnh*r4hxJJ%+{)qxXH78`M{47EW*tYc!;7 z*M;9ABt!!av@|k=gH*?H+&cU36TKjt)Lk+<>vGWX&+9M|UcV-4^%x;Ye9rvi#Zde- zAtIzdMhtUGf=3GRU}(Nq6yvsaq<+l8^2>wBB@unq=m}y^C6go) z8 ziV z0P6TVm<@c65)k% zAh_4BO^f92$AKg%53Evq3Ksd&VSR`ObMZZEngx54%y^JIx5##!(pk+Dn zWsP$5;^9Bpl{)xC33@!GG6||ESn>nOXGh64Or_)eS4Zal-|GbyX{=?3=C%5_{Q+b&02eSHq|~n^gankg^(SE znf!AZ#Wfos=No?aWPNnXSIzc(+rrA1JacIGN1$1*oO=yTg4;- z^i90Ci0w2{j}=yuhMJ9~BsC#PJ_Oh-&bkVf4T(<7mMh}ciw3*p#wlP=?D=(@C;ie3 zI1ihEYpXC<18EC(k)vg4i>k@F_@tcVaO7c$w&uj+;Yl*K$7!DA%&4`PmBsypTOL{e zUfKRlg^qbl$iy&m*vRC9`hW-^;o$BbhCjz_8hH5c3oTmYCT}9l36ZFCN*>>TfhAod zS9GhFowul>gt|&5Fbk`4)_aYZnUF|iu6lzIh%{gp+zxvRXB2C(2%h6Rkg&3;NZnxuDMlaDT*n^~$YU`)gi+I!@FHlb3oPWHdeJXT=UJIjFb*DffD8QOyND8v)m+HhYm3EK_ z)U*foD}!2egm{Dy&R-oFv{i%eVov-;|6VXdn$|F^kNhGP58o{%HL$qHHP=9sSd})Rs(jiQ zMmuq6tor>)04agPsP3#o&s1U4)grv9C5)xS4oO(^IW-XxoqSv4rk$tk8gbm~6Jf5> zJ^ne1C4;0j`E3Mr+@u{xZgy1$mvr4PjIA`3yR6g_YuIhQPx5$lbB-RY4n+7%1}SSH zg3MB8J0if&DP`#SokEYGYo2sbi-c=z)65qm0J`s z)~_YorqaKk07RpG799biY$eC0Z!-pLGv{Fr_S^F+umGD8lW`+~S%F$5iHyC7e3<%Z zx2Ph@kF*CjPNV3U-hu6{@D$VqvKY`N08<3E-5Uz;o}GsGQtXHu=0D*dhqP3n72I=-5- zpS=F-txHs`5an`x$R2kzO8ZhE4TVJ9JYg{WefM70kb}pcRi9rI6#>0$$>m25C>9E* zhmIb_8L*=vdA4@q=|;;PdP`lT1?4r~Zvh2rapo_0<0lW3Z!&=8vNqAl-+nqD-1Z z?}n94dh20O5}&@$fXHq$M0_cy3~}-x7V6vY(b|_ADNrFzj>Y{y@g+W=CK5>GLBhai z_z+kPYoU$0-M&0bvfDw%=97%H&Z;zsZ^+D^whnZ=FEP}Yccu}i0TCeAhl{KvTWYlD ze?<77WWl=;c3AwszFiFmS2w81T9ABsXK@S(Hf>~VnoY-LzBUc89czA{c9=0C1A`q= z!;m4k`Y<$N0AMTG|K-aY26S>f<&WX zZo>RXO;8iQBy1c>h{JA{l4fVIKOFR<7{OAZ;-R$u<%gf`g!Trfm`3I$@4xR4#bn}J z@8y7*pIME6thF+GAnHkuIz85T<@fU+{pFj~)M{Ua@h#b(eq65fp}EZPw$Ota@3i&* z0hn{|17J=fj4mhQ4jwy7uJ}09)$DiCD{Hp*#}|J&uf)@-f3}eEZv#HVu1J*h`S^hU z8M%5iAtJG91%OUU=EMJ)K8(8-P|h%!b%?q`fkbJ5GXd)G;Hf`p@F)V6xNf4xCT1U^ zA*j`aq*@9ZP4__Tm;oab5U(~P`A3gjUc$l=a72I^ZwhnK!gJ948!Q(3 z{ufL%{LTvV;vac2pKd3DF8H)l(HfsqCanbNiyJ}b3}b__5K$({n`DK7n+icTEn5q$ z*uyE6TzMY|Rz@yp^#m%rn2y=iin*Rm_ z_SvE4_|q@m-GpqZXhpS&_L&@3vLIZ^(H+S(hejsnm>bDu`6z$^R->S&(%bfA6V zTreUSqDtH?>lOB4&WZ=Ec97}$Y^Y+3fh84V_GP_RGGiDey2+I_JbY{EtbDFJGbHhE!s&FLe*MKQD?@%L!psg(o-fMhhC@)z(iA|PD@>bV4 z9nRfFi%IiIVh7lpb-!+l`cmP-mUlg5=GC4D7;hkRSLb5F{_O{jp2Xoq+gAi#UMDoG zt1t~*WCjnn(ku-?tQQva3}GKi?~6ewVIhD07Ilrvf%qg0s4?bY#^Buxjj#|(x!L6J z*2d$$?!`LGaU7uBb$K=#=zMi$~|StcFBjJzm1*c$fR`YfX}PtMA1x z(LXiJY>EkFz8746(AX$%e~00EqG?*17B&1Z7F(fjSy^W>w{0yi`{k5dU-AAEyfH+hJUuIRZ z?W!tz_Qu59!PeIH&SAB4S~yIO@#IJa6mWmE%mP6^|F-*ZCqTM)DOE=MrE^eA9p|n> zZxC)Og*4zdhIK6}MM;au<)48FQTODJJ= z%u*3Zq4_Gsa{Uj?=Ge#5<&_T=LT3|Yz}-FD4?DGO2stwBRt#JMgdnhi3q z*c<^lXl6de$Sod9d{c0ud18&YXSYhGngfloU48&A0@HH3GK}xRK&jlBi75$IR>EiG zl-4FTR99}{+^T7KpcEVAa{S6SRr{@og}1^cv(Y&kSV$9+@r}I>vO5YtUW89{oN*?^ z9!>C(X2E1ZGowt<{;Z5F&PtcxJ!80I#)1UOvpmfn`m)UU*f1ZK+~LjhhO`=wY?djS zc*@Xzk-_>~rmtX5_jMZnG0B#zEYFZUFL3e642jgjS!So%WTs+II$p525e2WACd3@u zzJ)q1yS*$Ek}}i-;YVj6eAj^|%3|+VW~Q$5F0-#LM<+O|8%sb8wr;Xm?cMpTPLCtX zag?TDwv<=i=3f za!Ei)ITx$DXP!&xt~TWrm^#5cP|(a)~Or-70%r5H$+^I5|OgpUd%t z#5DDzXVf-G39`?VgjHZlxw@EErnuc8P*+bFNM!su1a6_^(5H)e(*W%sNT}-vlwW<; z+laluk+$r6_@=avH`1K!%l+KEd5wlcfg{cIwsHwD>{#VOZ zmF?Uk9VKyS#UAm;{2bdYJd<3uIf@spcIp0$v#l`tEsuXmfLf5#$5*SKNLQPf!M;2x z$C$_RO7oGwP%mk}?C-de1K2C%*>+Zm^ey4sVnVsYef1T#gAkfYZ?ty7cF6~*6)L*o z4ffBx3N6@qs~I^zm9D-KJ>A#=L*Bf|)PfHTd)vP3aq0pINY_-dR=$}SoN8FQGIXk~ zxa>zr9BdtO3~dE=-Uxq@LBZjhypVEXswSZW!4u1PKx=WX6WaM+G{%7!FSL)DX}5-E z>>2&k=0=xPojMqUhXjexgqm5b;TJSqBjIzQ?s|qh*TUOW)AbB=5&lbVBP zxQkoX^~|X#)XsD9K9svip$!jSYtzggyLaTN(s*{BMQ}|(n4XoPg5?$Sa#hXMKAR?t z4m@|yH}{vAjYdmH@cTp9B$Y|rd5T55--Ge?@+o<_&~Y={i+x`B1B)U@ea!_|P=Ds5 z*|9bA)d9EOi1vU8jR%3RPj)QHE9tGk_CH_u5-i7qcz|Bs{6~c&o$IXF;#mni2=JIJ zY|*pOnJ+UvRqp*-yCaVE>jvzO0sgqbs>N%YzBQqad)c)T|6P)13w9PRt8S7v->^n= z^~1*Fm32+>JWJ+R&W~EOlhelk_;{vToin>j<-CTm%U|!R$E#bWzn}DOIwj_bDO^SB zGgBuHA+%m7P7Rd7370+5`=065<9_m?kZcts;)s7-lvZbqGTLiTPiVfM|bZ-O*p3t6uY`?bY}xpIjy6@NS} zc}dhQFkzX{(#qS<&Q+kuK8Ta)hTn=F#V0sDF2pN6c?eZvP+zr+WxipTfI*nA{%(Z# z;AadUtPW*K`rIV%fUQ}mxG;h@>iXTmiA-rX!yW~be?Hateovb( zKXo5!nXiWOwo`%2aZ{p}U=C(>uPT}cedB<5E_hR-`ey_!?%sAuT3&p?-ta0gQ@Pu= z%4m$G;6-|)=W_F&9Q(;W0OqoWOALI^Zp!OXFi(^MVvY=i*Ly=kQj%?o9bY~XkhHYX z<+99METwm%W+1ZDCt%I4+>Ppc459qY&l~x2`_NbQ<2?bP4WD8QdqONko{t4Xhr(1> zOU`9yN}?BG9=xe+(K61h;#>JjY?7Dl-2Hm@1+DyLZaw}q-{R&nf!3>$UTv0LtD|*- zE7qMW?!(?XG;a5ur!o;S)l)gw&u*zT7t~#keCC+w#|H?%-l!xL8YSm_40t zWnd+{?AF&{fa|n+H5>tBGXIgeCT|y3R(tW~%g%Ko$MXVYy9+x{f@*fizaFX3VKb0h zSph4o<@w-*@>-<*Fen%z>`9|LMi@JuQX5?dyP>7?y`}0P;0$j#%=cEBJw(sluV-nQ zTh@oEUB>MP6846k<&$4A>5TkJ#ZbZ4eTalwYesNV8p+By4wbC3uDn&b^o`9)$?O4h)A5k;VFLsAm7}u}%;w^A^BiS=WfTwDVrCy0?^j@`nJoK-(daoovI!9^|^a~=hMX-Sl84KipsB3Znnr{R*~$D*8? z<`hmi7;4LPCf@0I_1LiX?K1ZPjat2z zAV6gcvay&p_kf&Fb&i9qp7dSYA@(bS{PT+Cqx$&81KPP;1rFOL^&B1$ zW-plSz4>we;8f1g&VUmFOGH(~Gr1=GAy=f`>Eb;*WRbxpA5$N5tGhKK+!|Fhd(iB% zQiQ<6gt#-}cN(df%G!L zZl~rwN_Q#_a)G6~JN^lmm~~NyY|ro+UySMC)ShioC%3i`Sx!Y+;FqMdQc*U$qt@c= zHz~;xN)RrzZ8>*WQXu+)%c3osf1ItJVqR2Z7(%i+t>U;;)$KOAnwB*^Ii5?Bze5ni7w1?7Oy3_$S?3jgd zYC}~YI7HXU@0{pcKM%Hs?a4v0ANrVtzwR!5`^GEKM{=h{YEVJl{@a(IJ(861lQcTx zNgeR3sV?^=g*s$HBe*Z@i69rDm`=N-+CKCRHp_08$nDNIL$6r7TB7A{>9fnD+tw-w zEiV-1Mp13{?ZJGp)y3BS`x8^w`^%~`g*x46#U7mye1QC zkzI90mF)Hbil6r9x^pH2Uko#b(Q1nD+%~x^JuG()N4)upJ$AP)zYP*W+BB$lBz7dD zgwIh^-TI;6q1IXR9S8l)KN;xj>x1Z`cG{vueOgwpsfPJr^8m7&kvpb~n3%MLN{c(p zv>JDX7{3Z`7^<@2O<1agR%Kkaxu%X!$gU+?;g!2CqYbrM>&xw;BHkSHNp*%tB-vvo zrzljpznKY(3!|mYeFxAdRKU=hTl&~`+Rx>bHso5kqQubR;@<1*5}^8?qjY=L zj)}g9wMqocXs-%=Wjp7&yOhqN_G`Ae=Xk|r3rknpW8yq}1M>9(RHLtVHNt&eqG(kr zPXP*#Ag``kcLl9_5KD3h5hk~NT2D^r|pUn`HEf*&-`RudONj%e!8AMV? zWDlkPF`iW_tC1=!JN}1B)#0{|&0hzoGtuBwy@SX*w)TyN!{P=~6Y7>!&pUZ-u~eb| zu^zh^7j7N9_usx97H)l`9tUtei0C%jhgTvKH*wS0{pzoa)0a7MtZ4eewIMj0S!I&R zL|?)B`RMyfNv(T-=-B}J*g8v0Be?@oRW&}bKA;}V7+Yi~I%(dWTg^Mx!;P6wO{V(NjMJfWw&X#t(gf0# z=E*I&#_a%HHVPUBDt&rb1{b@$q`lZb_I}p;_p9C1zMQ*_DZSo*fqm{bOYE~KyT-6X zFY??+4{;xIa&k)8xv1-6SVlK--aHpYNd$-&r}s=gsf@C{2^EZ1b(13(=LXa_UPpXF zW;(pS)AD+2Zmg+$J^FJ($FBtX-rJgZZN`BW54*&^p&_k?-P8E=j68I?M~*(RDA51;x+S`(r@C1GzVadWRWdXoYsk^hSp0y^I4PLXlNR{ zAdx$f5AT!>2)X^okE2>=CELsFfII}y81=`gX-!<)Otxn3OuWIDaPsBtY*&!YZumW+ zEbw(>&Y|`oul4?FYxx<+Xwm*5d*SpN*%_m=fzi~HX@D0cnl?ZV+ZA24`4k*r@wEB% z$75eQxG-ird_DJS754~11#)=anEjl!D+ZX-G@s(THl88yqL zXgO&vKi>CoJ+EzWn!Ckae^ujwpu@u~pQQH0_~&jr;?f;_F?aKkZ>_5~AG!VMjY&w} z#l9Ujp(Du|uiXYek17~!FGYk1xyX-boZa)LWlqmo9NYeLB@KK6zbrd71bndxUD1S` zshrE$?;e`@2Avwa)Z^$tu|5{RqsjBy&EWWhfx0`nfqhpE+v1VTDXhY6MNF#A3(Ih5 z*?vNN#`D?BqHH%8-f88k@Y^S*W?)eVy@@wf;DY>xqNV7&s#mwPX!*%&9lsd38kpN5 zw!Z-TvVg{|)mh}{(-W?uoqI&Uz&=2K4&VcKZ}FJfRQPt4QlWXzHCn}Jn zS8x_xkYozZ$2PvO^ppvxeNIRhXIvT7c@ZghV=bS>YBvFSoc%l|6XV=BXz*opAONv} zE~R$be?gDN#@wmnJr~9%HMkfoF&jBFYrKlH?>_%U3DuUEk2D+Lk@Af=`5wh%x*%C` zkPFQ0uk#ZmDBvEsE4Y)xheO38Sy6S+pbS>vloD8wo;QrCDeDH*yGZRxyBtryNfjjml|{k z;jf~~QW~A>V^VL^0zQbuJx21tweaxpgLnbnApEa>$}4HURt^#)|5_;~%deC3TwQY9 zr+@l#^>F+S4pI>A!ItvV`lLUy*mR9A2M=x8T5#n-fOej=B!&iGkFui{ zGVX7gKRSm7pQXcu_E)GpN18pm|v648CWUrcb$H3LgIuncZS$fDQZjbqgN zZk3VPdtjqZYTAV*SnH`_Pah}Zfk~~qd-rZMmUfKYEGCtrSrr+p@Qze^eD<-DKl7Gx z%xqZ#LTF6LG*Zs5geiQ9AF@2WhEO@B{dr6lE@sa@ePm%e5$kJJAB6_pRai`T68Z4f z2@fx@wzzr^cCANPuECC|cn&DzJO+#~OJqiY9w>Mn=Zc z=qAieVMPvkoYKyGpvF7iza7W)$F$$p@>Ze%qL#S~p4F#c zZx+i;ObWULg+wIVPlZ;#5eKl-1T0O$2$K{Rn3D1;O%oh$l~7LU=;+v3A@TGw)s-d( z%5Q9bXci|HZ5D_5L+!_En=)3PMbdR4j$!oUvVjd)|>Nnj_3L&M-*ExldqWPa1tqz&x{aePKncD4fa&`Y%@OrACs`N@B@ zch$6MAR-PHgQ@899Jte2xX1qTk|>vJVOo#V2}=^`fC48jVgl2a7lrAzq;%Y()LffS z3q()F(~B%yiaMsrBNt(#eYCX>#KNTCo(4s|y%DwIB@T616EaSAbQ<;PN~oeVw2q7M`*&-I(QKhsO$NezH|T4!+dtTV5;`4x zoZ~ehmHg{>UG_hc0#1<_Eu1EN$8?aZrbXDKZ88Miup$k?av5PUpg6is-JhJbmz?DP z^;58Z-@z-hzy9^eY|8Bp0>}3T%yZ|@Pax%cjt=IHvZBCrGXe{ul%`Ug__^?(^Sr|& zy@ztS00a@;7%xz;grAyPMtkO?>�QX69seXhbd99}mVaC}fR~FDoT|aqO6{bVqaS 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 literal 0 HcmV?d00001 diff --git a/nikolaevda/docs/report_laba1.ipynb b/nikolaevda/docs/report_laba1.ipynb new file mode 100644 index 0000000..17be36c --- /dev/null +++ b/nikolaevda/docs/report_laba1.ipynb @@ -0,0 +1,245 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "id": "7cbca316", + "metadata": {}, + "outputs": [], + "source": [ + "{\n", + " \"cells\": [\n", + " {\n", + " \"cell_type\": \"markdown\",\n", + " \"id\": \"start\",\n", + " \"metadata\": {},\n", + " \"source\": [\n", + " \"# Отчёт по лабораторной работе\\n\",\n", + " \"## Тема: Сравнение производительности структур данных для телефонного справочника\\n\",\n", + " \"\\n\",\n", + " \"---\"\n", + " ]\n", + " },\n", + " {\n", + " \"cell_type\": \"markdown\",\n", + " \"id\": \"goal\",\n", + " \"metadata\": {},\n", + " \"source\": [\n", + " \"## 1. Цель работы\\n\",\n", + " \"\\n\",\n", + " \"Реализовать три различные структуры данных «с нуля», применить их для хранения записей телефонного справочника и экспериментально сравнить производительность основных операций (вставка, поиск, удаление).\\n\",\n", + " \"\\n\",\n", + " \"---\"\n", + " ]\n", + " },\n", + " {\n", + " \"cell_type\": \"markdown\",\n", + " \"id\": \"conditions\",\n", + " \"metadata\": {},\n", + " \"source\": [\n", + " \"## 2. Условия эксперимента\\n\",\n", + " \"\\n\",\n", + " \"| Параметр | Значение |\\n\",\n", + " \"|----------|----------|\\n\",\n", + " \"| Общее число записей | 10 000 |\\n\",\n", + " \"| Каждый замер повторялся | 5 раз |\\n\",\n", + " \"| Количество существующих записей для поиска | 100 |\\n\",\n", + " \"| Количество несуществующих записей для поиска | 10 |\\n\",\n", + " \"| Количество элементов для удаления | 50 |\\n\",\n", + " \"| Размер хеш-таблицы | 2003 (простое число) |\\n\",\n", + " \"| Режимы тестирования | Случайный / Отсортированный |\\n\",\n", + " \"\\n\",\n", + " \"---\"\n", + " ]\n", + " },\n", + " {\n", + " \"cell_type\": \"markdown\",\n", + " \"id\": \"graphs\",\n", + " \"metadata\": {},\n", + " \"source\": [\n", + " \"## 3. Практические графики\\n\",\n", + " \"\\n\",\n", + " \"### Информация о тестировании\\n\",\n", + " \"- Общее число записей: 10 000\\n\",\n", + " \"- Каждый замер повторялся: 5 раз\\n\",\n", + " \"- Количество существующих записей для случайного поиска: 100\\n\",\n", + " \"- Количество несуществующих записей для поиска: 10\\n\",\n", + " \"- Количество элементов для удаления: 50\\n\",\n", + " \"\\n\",\n", + " \"![График вставки](graphs.png)\\n\",\n", + " \"\\n\",\n", + " \"**Рис. 1 – Тестирование вставки (логарифмическая шкала)**\\n\",\n", + " \"\\n\",\n", + " \"---\"\n", + " ]\n", + " },\n", + " {\n", + " \"cell_type\": \"markdown\",\n", + " \"id\": \"analysis_bst\",\n", + " \"metadata\": {},\n", + " \"source\": [\n", + " \"## 4. Анализ результатов\\n\",\n", + " \"\\n\",\n", + " \"### Как порядок входных данных влияет на скорость вставки в BST (деградация до O(n) на отсортированных данных)?\\n\",\n", + " \"\\n\",\n", + " \"По определению, при вставке отсортированных данных, структура бинарного дерева поиска вырождается в связный список.\\n\",\n", + " \"\\n\",\n", + " \"**Результаты тестирования:**\\n\",\n", + " \"- На случайных данных: время вставки ~0.037 секунд\\n\",\n", + " \"- На отсортированных данных: время вставки ~18.34 секунд (деградация в ~470 раз!)\\n\",\n", + " \"\\n\",\n", + " \"Заметим, что при случайных данных скорость вставки в бинарное дерево почти лишь немного уступает по скорости хеш-таблице. При отсортированных данных дерево фактически превращается в связный список, и из-за рекурсивной реализации вставки бинарное дерево становится даже медленнее связного списка.\\n\",\n", + " \"\\n\",\n", + " \"---\"\n", + " ]\n", + " },\n", + " {\n", + " \"cell_type\": \"markdown\",\n", + " \"id\": \"analysis_hash\",\n", + " \"metadata\": {},\n", + " \"source\": [\n", + " \"### Почему хеш-таблица почти не чувствительна к порядку?\\n\",\n", + " \"\\n\",\n", + " \"Хеш-таблица не чувствительна к порядку данных, так как:\\n\",\n", + " \"1. Использует для распределения элементов хеш-значения данных (сложность операции одинакова для любых однотипных данных)\\n\",\n", + " \"2. Хеш-функция равномерно распределяет ключи по корзинам независимо от их порядка\\n\",\n", + " \"3. Вставка в конкретную корзину не зависит от соседних элементов\\n\",\n", + " \"\\n\",\n", + " \"**Экспериментальное подтверждение:**\\n\",\n", + " \"- Случайный порядок: вставка = 0.0369 сек, поиск = 0.000355 сек\\n\",\n", + " \"- Отсортированный порядок: вставка = 0.0356 сек, поиск = 0.000380 сек\\n\",\n", + " \"\\n\",\n", + " \"Разница незначительна и находится в пределах погрешности измерений.\\n\",\n", + " \"\\n\",\n", + " \"---\"\n", + " ]\n", + " },\n", + " {\n", + " \"cell_type\": \"markdown\",\n", + " \"id\": \"analysis_list\",\n", + " \"metadata\": {},\n", + " \"source\": [\n", + " \"### Почему связный список всегда медленен при поиске?\\n\",\n", + " \"\\n\",\n", + " \"Операция поиска в связном списке имеет линейную сложность **O(n)** независимо от порядка данных, так как:\\n\",\n", + " \"- Нет индексов для прямого доступа\\n\",\n", + " \"- Нет сортировки, позволяющей применять бинарный поиск\\n\",\n", + " \"- Приходится последовательно перебирать все элементы до найденного\\n\",\n", + " \"\\n\",\n", + " \"| Структура | Сложность поиска | Время поиска (случайный) |\\n\",\n", + " \"|-----------|-----------------|--------------------------|\\n\",\n", + " \"| Связный список | O(n) | 0.0427 сек |\\n\",\n", + " \"| Хеш-таблица | O(1) средняя | 0.000355 сек |\\n\",\n", + " \"| BST (случайный) | O(log n) | 0.000527 сек |\\n\",\n", + " \"\\n\",\n", + " \"---\"\n", + " ]\n", + " },\n", + " {\n", + " \"cell_type\": \"markdown\",\n", + " \"id\": \"analysis_delete\",\n", + " \"metadata\": {},\n", + " \"source\": [\n", + " \"### Как удаление работает в каждой структуре?\\n\",\n", + " \"\\n\",\n", + " \"#### Связный список\\n\",\n", + " \"Находим элемент перед удаляемым элементом и заменяем его поле `next` на `next.next`:\\n\",\n", + " \"```python\\n\",\n", + " \"current = head\\n\",\n", + " \"while current['next'] is not None:\\n\",\n", + " \" if current['next']['name'] == name:\\n\",\n", + " \" current['next'] = current['next']['next']\\n\",\n", + " \" return head\\n\",\n", + " \" current = current['next']\\n\",\n", + " \"```\\n\",\n", + " \"\\n\",\n", + " \"#### Двоичное дерево поиска\\n\",\n", + " \"После того, как мы нашли узел, который необходимо удалить, возможны три случая:\\n\",\n", + " \"\\n\",\n", + " \"**Случай 1:** У удаляемого узла нет детей → просто удаляем узел.\\n\",\n", + " \"\\n\",\n", + " \"**Случай 2:** У удаляемого узла есть только один ребёнок → ребёнок занимает место удалённого узла.\\n\",\n", + " \"\\n\",\n", + " \"**Случай 3:** У удаляемого узла есть оба ребёнка → находим минимальный элемент в правом поддереве (самый левый узел) и заменяем им удаляемый узел.\\n\",\n", + " \"\\n\",\n", + " \"#### Хеш-таблица\\n\",\n", + " \"1. Вычисляем хеш-индекс: `index = hash_func(name, len(buckets))`\\n\",\n", + " \"2. Находим нужную корзину: `buckets[index]`\\n\",\n", + " \"3. Удаляем элемент из связного списка в этой корзине\\n\",\n", + " \"\\n\",\n", + " \"**Сравнение времени удаления:**\\n\",\n", + " \"\\n\",\n", + " \"| Структура | Время удаления (случайный) | Сложность |\\n\",\n", + " \"|-----------|---------------------------|-----------|\\n\",\n", + " \"| Связный список | 0.0341 сек | O(n) |\\n\",\n", + " \"| Хеш-таблица | 0.00018 сек | O(1) средняя |\\n\",\n", + " \"| BST | 0.0793 сек | O(log n) средняя |\\n\",\n", + " \"\\n\",\n", + " \"---\"\n", + " ]\n", + " },\n", + " {\n", + " \"cell_type\": \"markdown\",\n", + " \"id\": \"conclusion\",\n", + " \"metadata\": {},\n", + " \"source\": [\n", + " \"## 5. Вывод\\n\",\n", + " \"\\n\",\n", + " \"Мы реализовали и протестировали три различные структуры хранения данных: связный список, хеш-таблицу и двоичное дерево поиска. Сравнили скорость операций вставки, удаления и поиска для каждой структуры.\\n\",\n", + " \"\\n\",\n", + " \"### Итоговая таблица производительности (случайный порядок):\\n\",\n", + " \"\\n\",\n", + " \"| Структура | Вставка (сек) | Поиск (сек) | Удаление (сек) |\\n\",\n", + " \"|-----------|---------------|-------------|----------------|\\n\",\n", + " \"| Связный список | 4.6031 | 0.0427 | 0.0341 |\\n\",\n", + " \"| Хеш-таблица | **0.0369** | **0.00036** | **0.00018** |\\n\",\n", + " \"| BST | 0.0369 | 0.00053 | 0.0793 |\\n\",\n", + " \"\\n\",\n", + " \"### Рекомендации по выбору структуры данных:\\n\",\n", + " \"\\n\",\n", + " \"1. **Хеш-таблица** – лучший выбор для телефонного справочника:\\n\",\n", + " \" - Не важен порядок хранения и извлечения данных\\n\",\n", + " \" - Требуется максимальная скорость поиска и вставки\\n\",\n", + " \" - Результат: **победитель по всем параметрам**\\n\",\n", + " \"\\n\",\n", + " \"2. **Двоичное дерево поиска** – выбираем, если:\\n\",\n", + " \" - Нужно хранить данные с возможностью быстрого отсортированного обхода\\n\",\n", + " \" - Данные поступают в случайном порядке (иначе будет деградация)\\n\",\n", + " \" - Можно использовать сбалансированную версию (AVL, красно-чёрное)\\n\",\n", + " \"\\n\",\n", + " \"3. **Связный список** – выбираем, если:\\n\",\n", + " \" - Нужно хранить данные в порядке поступления (очередь, стек)\\n\",\n", + " \" - Объём данных очень маленький (< 100 записей)\\n\",\n", + " \" - Простота реализации важнее производительности\\n\",\n", + " \"\\n\",\n", + " \"---\\n\",\n", + " \"\\n\",\n", + " \"**Заключение:** Для реализации телефонного справочника оптимальнее всего использовать **хеш-таблицу**, так как она обеспечивает наилучшую производительность для всех операций и не чувствительна к порядку входных данных.\"\n", + " ]\n", + " }\n", + " ],\n", + " \"metadata\": {\n", + " \"kernelspec\": {\n", + " \"display_name\": \"Python 3\",\n", + " \"language\": \"python\",\n", + " \"name\": \"python3\"\n", + " },\n", + " \"language_info\": {\n", + " \"name\": \"python\",\n", + " \"version\": \"3.14.0\"\n", + " }\n", + " },\n", + " \"nbformat\": 4,\n", + " \"nbformat_minor\": 5\n", + "}" + ] + } + ], + "metadata": { + "language_info": { + "name": "python" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/nikolaevda/experiment_results.csv b/nikolaevda/experiment_results.csv deleted file mode 100644 index ccc6616..0000000 --- a/nikolaevda/experiment_results.csv +++ /dev/null @@ -1,19 +0,0 @@ -Структура;Режим;Операция;Замер1(с);Замер2(с);Замер3(с);Замер4(с);Замер5(с);Среднее(с) -linked_list;случайный;вставка;5.503300700000182;5.004083100000571;4.882084700000632;4.881827499999417;4.890130499999941;5.032285300000149 -linked_list;случайный;поиск;0.05034929999965243;0.04795749999993859;0.046004300000277;0.04418989999976475;0.04287860000022192;0.04627591999997094 -linked_list;случайный;удаление;0.03702340000018012;0.03709479999997711;0.03829469999982393;0.03841730000021926;0.03741160000026866;0.03764836000009382 -hash_table;случайный;вставка;0.03724729999976262;0.036700800000289746;0.03645409999990079;0.036475899999459216;0.035486800000398944;0.03647297999996226 -hash_table;случайный;поиск;0.00042500000017753337;0.00033910000001924345;0.00033829999938461697;0.0003378999999767984;0.00033820000044215703;0.00035570000000006985 -hash_table;случайный;удаление;0.00018709999949351186;0.00017469999966124306;0.0001795999996829778;0.00018339999951422215;0.00017609999940759735;0.00018017999955191044 -bst;случайный;вставка;0.04527770000004239;0.042043200000080105;0.04279800000040268;0.038970799999333394;0.03744349999942642;0.041306639999856995 -bst;случайный;поиск;0.0005276000001686043;0.0004296000006434042;0.00043430000005173497;0.00041569999939383706;0.0004365999993751757;0.00044875999992655125 -bst;случайный;удаление;0.09453469999971276;0.09244760000001406;0.10106580000046961;0.09086349999961385;0.09310050000021874;0.0944024200000058 -linked_list;отсортированный;вставка;6.237431600000491;6.1635778999998365;6.183921300000293;6.150560400000359;6.1811854999996285;6.183335340000122 -linked_list;отсортированный;поиск;0.05593550000048708;0.053237000000081025;0.05208490000040911;0.05022400000052585;0.049882199999956356;0.052272720000291886 -linked_list;отсортированный;удаление;0.04117889999997715;0.037663099999917904;0.03757399999994959;0.04252919999998994;0.03767599999991944;0.03932423999995081 -hash_table;отсортированный;вставка;0.04085130000021309;0.03589560000000347;0.03588300000046729;0.035286500000438537;0.03309669999998732;0.03620262000022194 -hash_table;отсортированный;поиск;0.00044720000005327165;0.00040470000021741726;0.0003451000002314686;0.00034250000044266926;0.0003420000002734014;0.00037630000024364564 -hash_table;отсортированный;удаление;0.0001863999996203347;0.00017409999964002054;0.00017500000012660166;0.00017459999980928842;0.00017379999917466193;0.00017677999967418144 -bst;отсортированный;вставка;18.630878699999812;18.350701800000024;18.322985300001164;18.381200199999512;18.44051959999888;18.425257119999877 -bst;отсортированный;поиск;0.16251639999973122;0.15183020000040415;0.1572033000011288;0.16128759999992326;0.16190610000012384;0.15894872000026225 -bst;отсортированный;удаление;0.09546029999910388;0.09252720000040426;0.09302340000067488;0.09245310000005702;0.09305589999894437;0.09330397999983689 diff --git a/nikolaevda/graphs.png b/nikolaevda/graphs.png deleted file mode 100644 index f889c5a30fd72560d5f88f76449c45a7328f61ed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 75589 zcmeFZhc_E;8$Pa6wY0TM?N%vD)vDbZrKlZyv{dcAL+BDk?Nxi#ijvw}TC?`1R#H@h zAk+wA{GNQ?_w%0bfABlsbG|vJ4YHr-e(w9auj{%Krmd+$b(#4x85tSXQ&lBhGO|me zWMpSIE?oqFF?};O0IsCGl#RUfTwi(lzVNUid-lT1&B@iv$=-^?$Hv3c-ql4!Q24%} zqyUGVmzSHTl#r0~|L!5^>R~H%=gFuscoqsbRbx*wGDaHGzcaR3Bf4Z~$jF{5J=XV2 zUz;OOpj{%IZmHu(B2?+m(B~tv-)0wGddqv(;Cdr3-v=sX>aUFLXytanOK**Iw3WVJ zw90=EM^e?eQwTL-Sk4gEg*_k(Zl^^fTMAx4G?<&M#FJCzO=8=Uf z=?^rnlV#>U7#LwHFIvvw^k`d4qc`EMUMHLXZ|cVVg$RH3f7i}G{4(jq?d`S}Iwl%@ zUDKp}UCer&XKMO`4p$04J2U=!$8xS55DFaqUrefdqU2BfOzS=J@r#i+C2Ickr!~&s z5qF+`d4*B1>R=n&$jSTfqg3f{gHR>=91A1v851_EKA8tkc*!hV% zJ#n<|imKMhd$Kf=boRdwyly@(z(x)hMec#i>_g%S5ic?q+)Bao6Pp#hk=DmS&u>um z<{bGn9(C%1P50DhGWCX>%`TA-Qjx11F&#u)x7}SGuhi3$9p6Bm z1`%;cRBp>g(DC7cOP&O{SC7NQmz5gN<)NGnv4gNZleU9?M*HSWWXoYsS@WKW^xq%1 zN=>RA44VAhOSE&|vO<@0d=8e98wtFrFP*aXJof`dUiJM**vutJ1j?-w?8IHsPSNrw zbs6rROa`bR7{6gzdLpk*YcnHHhF4s`DTMnr^+w%dR8iNXs$#{^t0@zOu^SZ!rb|j_6?QdCYle1RBxQ8bxawXT zoXQhJKJ7Xk47J>y8oRCxRuv&F(bbCIrtYOXl*(&nG|n*nyKp26JM?P&+rw`jax3Fn z^R_Q|;2hykuMmo5w0v!NQ}Zyr))gb?r-3^j@|}0@VzsSBLmlDx_vtLO^F;kF)%``O ztoI{?#+EcI*_H+ROXt_XVe!~f=uNse=bPKY?xhLgE*3OzsKa0C;Fgs9!`0lW+V#2y zmuP5F4p!4Rl38q4e8tS~`vu0I*W{0W1-S4Td@+LWF4ygYu;gm-fd#*pC)gyLGZ4zZ z;Qx>gNGiT+RMWG|%Aj0FVDzSIQ|yXdMrfYoQi9%td)w2F$c~-4YL_`F#zN9Dhn+4H z6|(B7Z#}8|#1(r~a|^x5JNx#+6{o&W!alp>hK++YR_E{!MZyQ@BZ!d-P;w*9H} z-o)Gv&f@DgJE4NzPg(NtpRJ>1#Ybh%U8LMJ$Nc*KPNcuY$QeY0uq!P%Y`XfS6K9`i zKU#1m#4ks0WhDPxi6L@ePbyi^Jk>rUHA%>l?cv(jwm|k#{fd{}-|E~K11G^A20t+q z9BE(++MoY0Lt29N>J}Pqwey|P?Cjf)yNeQ8NrXI@_t92YSCw;yl=tPMV*KcWL;75|ltrujP2=W`O<3S+apB=W;dF51T@DXk6Pmko-%QbS4BGUoX>$5aZD+Vy&6kVd7Vi=X+0bLXH6M)&q*22b8$}`4KFJ37`~v4U(!R0L7oVADEjZ%1 z6JUn*MZp%I9a7HuVqhs2gHyIy8TM$fA#!C#&I9R^?ySAxw5ei_N%ooO=77fSS3Xv^ zQ1&4Az5yA@=FnvX+ZtWNe-vn5Zq@N^Z+)inXyb5yG5TC0zhP9}Jy3EekHD{Ql(uG~ z{G#*RSfzbFI+}xWLvaL_wFMVW7y4Pv=?1R;cB;|BC!5}+3w-)TF)KHYe#dJ)SQnaO zm%@Pb$!JvZ@@d};sNk>1ltTbcc`ce_@pc*OK7?@^`X`yGsyP7-LpJWyq2 zd$HTl%O$>6KK#bZp0vH5Hdv9*Y#pYxF8x~#K?h5WjVlFd59W|;3)9I`;#S2h+5RBV zUrbh-_7BowU3+zOy`h%OU?Z4DMBS z`BYOsq{K~2{0BuID5vFITc6M3*VZld2yb6mLS zVbEe{S6yDDn0Ua8x+HOgak+kKTgB{?2_Omhw!Vx%=Lg%P*Bqo%$vMcbPYXB zafT^@iGx=$7sZAwJi58d`Wn>M;rwQGU&ZW4+PTf_>L?OZCqh)kOu&hn{0>(eyjMHB zz}yK*lIG_V#+h?y-#zY*=dtA_FN;_gu^sSYl#f>)EQ~Onr`lXyI2N|X|`JDDu`QQSwTm}>u7o5h0M;hm-{_0@NqOJuhUM~3`Gd4y&6*PHWF;VYpH zD`wfhwzCDFhq9p> zzLs41D8)mhK-t}f2Jgy+wp^R<@(9X>jh329U|w=jUCGn^>p1bnJxgT0atM}pT&5(> zE##;F*Q||qB^^(wAFW3Mh$Bd$%!p_kMTgEL?ny zaSp=VMY~B${qZ`&vE(Q{i-s?4&X7yBpa9eq7(C7;2r$D4e1gNuo-o_HKEslCj{Hy? z4Y=9zocVaAryo?d1ilr2u_F1CszOu-h|QeTm%{a`j$WB6$aTy_}v{Z(vLGV zkZh_tkR{B<+hsG&1`sy-@2|B2c$a41LaO00=H*GH(fLj8Re%5N z;wF6+3*NURnYz?>_@ajhT1z!02BoR?nKjNc7Xh4PN!KDiZM(ByiU$}k@}Rot_x^Ws zc9z}aEAnjME(`*Y4QxT0OHb8RDtl_d66}cF6^uAl1hqwyWt+)+WT7F_f(f25gyAb^ zlgmmPm*T2F_>(4b&vUDT(YEBbj{q{D{R6f8wT_s%!4_L|lYdH&tK+5IXt_h)(HOeI ztRQHCHwKC;rJgK(0XdSpxs{o$=l>&&oIUXVsLXU0?H!FD_c0*nvlW5BEbtfmqErNe zXN=(Qt#Jy9c}mSzEhflQF+_>h@#&#oPkS(UU7hIhbV|wLJe6x07y^He%K5q)HVh<5 zQ8#Rc?-O%dpJ;Z}BtT&0-)ysBNiSLmm|%==UDD=Y=t9`0zhM3EIE}%XBAq*(VVv(z4qMd2g%6Zj z7g%XQ7qct-s!GUX6~NtrDiBPG;1;N>-#BrDSaE0x#-?!Ok3OP!_y> z)b}Qcsu6NUO>p%&Y}4T)8w%|omQB;U+Rci-sU}<47Lq(UAzmzz4Yfkl&YQY6+Yn|w zqvry*`+fSwChOP?5uLv#BlMct7W3K4SIybVKweDJaBbRpQb5$Fv6PipEH?ZM=e&fS z92KrDVt#`WSI$ExpJaQuBP5UL+=I_twh4aAK`SZG+v{TB*-Gm_Aq<+^|_fCr}&`6k_%4k@9E zp+#2Tgu7U*33I-d@Pk1)qLX1aC)=S0PJ|^WUDR#--zW;AWhtG+4IOo7}i<>Jk9j5RqL0JO&k9fRIH{dVu=a>3ym zp^bNG5+6-m$TNB`vCsv5@dG*5DEOg+Z^C`8vJz%ItW1ME@AXBY*EwM4q_YwR?FVgf zR6ZYS(cPV`uy! zTi*P&Ow_U9{k_%kUf-ZZv1{zQN>ACP$g5m2=)@X=bV1^Mx*$$@p%qX0;FF`zUraF< zf*4~KC8KYfR@L1JtmB}nthOD@{6#E$&u0GR>a+7>%IofnofkrTer&i=W>z~+zS_4` zyhV9aywBsE;0S;HEz#IVn8}8R$a%*ji>!fSW~kB*?@FR~-6#s*Eb(*2x7$W06lY|6p#F&Wb;*9OMb_rVF;YPGX%3}~-^1XL=1%g3K zA&??EP-z(w=GUI49m9({IV_Rg`)SRz0f33xETie)QOBqdzHlXkU);DmzScDtB2i>o zTjrV{YeZ^Tm}pY0{P7DplZhV|P4%f2WGBaIrS&Ta$(W8jRqRl@c3ep3^J|IAgj+&j zW3k5$@g@msb8YT%-Lf}#Oxj8Y1|R@6GCqr$p0ptqHo zMMFJPz?DHbIVM>8Iu$9TAcU8ytaMO8$6R-k?{@Q;RFDY4zd|(3;A%uEP24#UZ`eJf zp9_DMD0o#!ouy<=kWr0M+nf5uXu-22fw1Mrj3x*viIvBBhEExF&OkGS#YM9JRwvbB{iDvr}S}a;a=(XmPBsR-#pi3HXp&+aEL=X{8z;b8G9*$ zHE=_ZAvZPVJ%^5PdL}l#{IsF@PYd~YdkA@VsnR!EEtz4+GDZGnx`rEgiO*^><2-*A za#7@>UOfm%iANn|rT6EqKK!PZz&pQTIAwt< zpR>*x`Mr9VhmTO^fyr59AQf71zs=_XAY)dVB^wG#=~u-ap*v)o%Qh|Q8O_`tw+1}0 zwIwdBR2NxzmnZm^kqS6be@~)`05iawB6J@_@v-kW2OF~zf|}(ZQc^UiuA@EIhr8#m zdAC!m)V)mT6>RLY%D1St$bCz5)k~%*HJs*_La6XQ=r5gH-&44pe6gcE^jPYtM@^QR zV&UmqG~qi;I*_o5Qq#s4+;Pn)uhTw~coWAAUvxg(r5P-|Ol~JrS^7eGlAk#bRAqZP5fZ zUh_xWH__eF7jKmUph!Zp`ENJ3Ti{N*#rsNIL=DGFm#N(2`5??*W)jZRq6OQHa)Tr$ z&^1|0K$OIw{vps~o|H9iG-%`-jC*QYM>)k2(M_$%<6^lVop;vAH%e zwpVGIr)L4uq5zJTgB`Z-Fk9VQ$;w!dNQ7S;-k&eOExHe(7{0It7FV>uq9|uEwvdmN zFwaQqTPuN=d!Cz?<)+}YH)953o;*pSWJ zXJDCDPwj>}h5_?+;dC-&Z_|Sa5)aiK(dFuvoe^~=Hba`YIO(tlBZlzj zsa|9&z5T+c_!4_m^!prYyH@Rpm?%Yz(c zt<;RCRR-Lh2)FS2p8nfeMgw@M$qt%HJN5&ZoEN7h#7H5TNj@mBK=N{f6$l9r0@75UW&`a)bQ~j*zSmp>bPYQP;HIYM*u5_ZK(<0i)mC z=W3L>mYJ7${kMeEdpX7VZpL}+8$aH#J4fj?PE!>u+@kM;gmg`(m_2+!dAG#USj2x(;fpHwGVK)93X(*6gkQk&cDI{qH-Xt~NNRcA2~ z3(bsXlbzn3?MLJc?gKHal3OQ2=cbarPE2B zG|Hjo8Chh57&XQM*iJ*mvmh~09|eolDf6ts z$Z0UZ1dnK%XoSz}$Pn@4hL-&aP1%DdrM2kQv?4|*H8I_Dpj$MWro(G%5Pwt$C=&uK zmeK3G=Om*?=DjHcx6%| zU&m(5-`Gi4(;uy`1KI-<+f6ZtgpyD3PHG>={U7S@`{vTfE|kh~BF1Q?*21E~N{}s5 zqgX{E2ah6ww_N;4Of~OG}(k9J3uccveZJ=Y|2-OTW0c1N`Bf z-Z#~V4+Alvx^e`ouWx99DEJToeY0v6p=J~+aleG8x@WM2(rNoozxj%(7!9s9LGW*f z2^EJZg@UZ0wD;;uF^4g?ZmJ-9`msh+*~46_yV+M198@QU&O7`bt65d>(=6(0@;&q2 z^#=v=%rx?)SMIVx2{f#jV744IiW?(lv(2y87h1rWeT`?Zlh*fSDt92>X&7Zv>gUXChd$kD-=u*hS`-M8{Py|0~xSx&HUAn}5 zu?V{c7*(uAz{3o6tDMP=#HtCbE+a)-$khnYz|1cIh3LoqXqqxnw&SfXcJ|reptfhr zTt>@o6o*H+)?&f^1MU~gek}K&KY|mFI_C}EMng^cA3qKgC?9cS?UtF`*YQY$Z&9$$ zSYQp;4Y@zsFQ2D6mmTqJ)wy(06JPF|^OW9MVa2l)T^_`k>77$;T=|M(#;4g5P0S&v zC(^VIVxZS55Cbuz+qG!?5JEw%T@p}SrGUHMkjdVzj#}EZR>MBbxT0wPlM%-Lo=1M= zSVx&5`9o`jY&aFKj9lk>+7{V&gFSoa*i`nncgPhqLRL72`Fys}HH}Wm|J) z{%p@1%xq!wzG`U0j=CXr6!1;RSSL*AP?HX6@)k`CvxU1NX@n9u3XXHS^g~*Oa)dJ8 zZ?GQ^?30M*j9c{EU5f5U#TT&`fdf=K>*#;PjcWwJhLZ!q=Tqr=nj8!|Qj2t%YiQY?KtTAv z0)q8dAW6JfX^sJCN5B+W3z&m9YvJC+&W}vAquUOc(7{4NIZ2^xiHhS^zxZb$1J{@V z^ty-u6pPQ#7jJ;D+PP!WWDjUzclK*rE{5Q?bEY*;-BspO{&+Fi{(LCYL?yr&-=6Yh z&=H_O6JAb=^tQCI9l_q2n4AOX@f)E3^D>cMM^9)6ZRN)R3qH4Pixq>r#>?>pZI2i0 z@oWMH{v~w7$g&V)E0MHvh(iwU$%QX%bAZ%noegvtcW1*Kg^;u0ZcX@YL9@F1+CbL) zG?|Z$>cq<|`8vTPb}RrvFa8z4wYtINtxte3$X1Qz62`v+Dy)jRr3~g-PQ}ehJ1A&$ zD$Gtn$++Qu0N5?T)rxYqUa5grto_L6r*OQBd=Q2>zxBib?7_{g-DjCHlB*R#U5Pb! zlLk$edJ;ug^0qdKO~1V^?}F{`tkS4;nX`fhTOS8v4V;#JKPpKjzZ3&hS%7Dk)0F;r}uw@Xn4e|dre~34&r~bSssw5BXlS73M+2EEohuUW_7AG z^I)}@(SmOufb6L0M$MTmpvl#%(RSyuEwA27b3(Lc)3mLYGhN#aG<2P7%BA@=&mCyJ z3)sOri-=Wo7XDqdmI3mY(l9PX+}UKz+Axv2KqG~w+~W=0rXDCi=3?+K%aysScMz)C zyPaxT^P6hd!wS${t0|cuGNYjxK-u+f_D}@kcHizF111kt`D&XzTO!oZo8eyC<(=sr zW9>l{dWQB0Yzy(vn6cjcZ0E-OF!Sp8B_vG~UkdUiZ6e!*(J+*~Y7jS8ya>-3`bx(blRYap`#tCgwG>r~5Y#P+ zHD4-%OdH{|1S?kSqJ17e>B{XX!Eud&KKXY~%IVIimWvU2;$K3K0q)_@jo(xC%Y}mw z0SdDDgzWpCe>4d7Cm^esPx-Ru0a;y#wd?T63urawAAf8pLtSCa4vO5PkUQpGZ`c9l z|ANO$^M=T)kJ8chcIRCmURoD|x#*W!;)aPaYCBAJpasr!c}EkU8Tj|<%?B?(G=9w^ z7+J?UvLh(#;&i?GR)0=}1aMp0r+I&Y2Ny20l=>$IjsfNO^PLR;Dpn|!T7@=E23%=* zw!U(SA*0Z1V8RxXP2m-Sl_PD^+wPoln1?B%?=zC6f=K-@YCvCcqcmfI2}#b_dK>~tA^^-1JnXowj$5@k&kp@UbGQ39Hsyr%9 zU9i5L%9vJ)(zs!?JR2X-94b|KcP~uL-9(gfBtO|AbtQ;f=sgdmy*z)}Nc}^vPd7U9 z4riBa%z#nmbvpm&2UHYB*FgM^Brsbf?p%+$PqX3#()z|(gCZbpGZbB+UQuF{OxXOD zA_r?wpA8HBLl8u}3y>X{`n5*+Zs~`ahUK=Og-lVPuBR1Urt*K5$dMVaQBO&@+byK~ z!142TIj^Jwrm_B@x$HAN_tj3t?UKV!p++}IM~0PB64W))<@OIyt<1esv=M?aqpK># z3J~RluheSe<`rtMNVmUUd;Wuh^aD6ysEKv>&A@|xA>&0G@9`pKb=zEg*2QD1scQn&)uq53vt9BS)19C(6B#{utllfu) zC-~nEfRFz1b<$hXcKfdbOV!bNx~ja3EkIyD7}UT;i>~TP3rE?2J<6mg^4CU1d~HCH za0acjS}*HFkVVup=urPOXX*XP?A^17Z2ig3#Ei&V@;Qg@9jJ_kILh3vC zM_3fAbOY&=J=)--8zS=qKmG4=_p_UY>;HZOKRkN)-`D)lA0PE_lAKTfyL@K(e>a20 z`2S;B;$Gq=N&)kDUm7@Oz5ssIph%lDU?o2}5DUYV)_!@GCT@_UaG}JkzM>ki$RwWy z!BfzLMrHtv;{(KtX%K5> z3yQ#DLt?Wg@>HTfWqA%|KQ^ec)0wIFv@PgzX;`^4^Yz6$U@_}u7I(4>KH3VEJ=tH} zLkHlen*6uF06!JeA0(tCY0h&{7BIn}6X=`y-y72W=b**h209t4Bq&?y3`G4QFr3{2 z%2m5e&f@kul2uy#&wDr!<$gRPIUnZyu^B0B?4XIPcAlBI%y@$0GDp;9 zJ6uLNmc((@RIg*`>AA-== z7_1H;xRAt>xiR3g!}tT1sE)Fm5)EU%x(M#KZ4N91vM$S%{~jTaoBwz>{l5Ubvo{~g z-k?SWMAb@QsF^EkSmm3kvX58S{?M^JoVO1CR-L05+POQcW-z3mua>A0eb20Js3+mB zH9&=)VNA7iK56PCA?2S7hs1wC9$Uc9u*y2%cgr2i>N}t1o__~)!m%j1!)1YF%gR@g zkt~uUY`_d;IK|1P_WozJV=_r3X4)`J3|)+tM_-jca+|4fPK#uhM^in`xgAPUa|aAB z{r6QK9jV%ZAAeZqt0&iVM&2|9Yw`s^@fw?6h5!J}O98kN2jyIPIs09%VDRWOiGSRM z$z~o;%?63Uhw^iCzOB?3kM;qM#+QC;A&eG3HiNU|U~3hQhE;r;tB9vC`#PXTIJvxs8*Fg znjX3;xBu(cG1&P^VEg+CS|}&bK1_g5fN`E~@~uf@?VE+T_kNr20Z9-eDbT-;fzF)?10QeWfF$2Y z`1d5;a|G$Efk*_K_SJJhvg?^z-H?w)`om$WVD~ATWMl9e@inM_-{U6T)sqWks&`3! zhHNz+b$v8XV3)t zwHU(z`O`qg_@Y*x>tTqp)rUG=#oCB{1aW-0XAmd?=7lBTG&IaRywO)wI2UsVxMZ&q zLVimm0=3%whF&xpxJUVr67<5__;p}0uII4&_WDc;8z~8Z<6`=c2^MtFFG0v&ZNY$p z^ueFKgt6xBJTS}EN3`+12<~LEt@GF|*Y1Y)BbTb0Ch~Ueo6Cnn%oEFisU|g1z<6YJ z5{Xya5VB}`*lPnhIRPiqjnSNRctF0YAbDefd}<5wL*&XqEFmFA8@Pgfhs_vgyob$d z0oUh2z`4tNua1>p5o#K`u&5=o^*+A>80+d6$6XPI$jr1t0ChGh<$O2H3^N|b%Y}kd z8VL8c54wki*naqIi3)OQ8Cs<@c8*}%Ual;puNx%WjX$QE!2+T5TyM>fK35G8Ko z-O_P71)P*bxnv+G+fIuyv#o$G&aI8Hm^n5M+jRVez{8J_+u3NuH{5OnEp)@ah%`Rl ziX4`;(x|yrxZvE82aFrP*54xmvoJ#vU%=uz^r67Sz=sat3w^uQ2hJ3`HyVV-Oow3V zB(n7S$}{H&$mYFNQUVebrh|r-hC~Xy0%D2-?#s0i zbs_I){<7V?p3+0vLX7#XCm(+-m0q;EP8P!eNIixj6%##BIp664Q`&y=RE}aAR@bH6&6mu8v6)rWOR$G+H z#{pXAf?(5T>#rjc3q-1F-%r((1zA5yc{{W(0lkQN8F>BRSbjjgY@Px{N!|i<;!k_$ z{-XOOFlzwD@6s7`x#|=DR_WON20Vglccsq1@dT{q&W4h5LH$MFiA>UPtkxI$)ogW4#5o zTSl6kEatwn?*^rQi9tWCt0;p%73?AT%&(x+V_$U0*+0M>?ukDI$aM?d0d8HI-aA{K4UP_cEC7?1(A?;W z)g*%SSxRz`xZ7ZLiaEVOee2mh(ZPE~dg4`#tAVs$1L&Q`kKLeF36^2^0dce*&R_Nw zfc&2%A2`q&3VU13YF#pV8+M~;cZc@!h|QV4sg}L={-r9oQD}9LY;+a?Uf)39w0OcM z?(_*%yY6QoZW>uV`-IELvnnFTrDvm|_+U`Tfu~0}0Js9p@$S2JryyQW(>_z+nMLQm(ec#$+ zA|d)=bWgI++RtH^y7`L%z^7OWPO7_X=$}b924EB~!O1dQ>qrb2qPJxWSSzmq8r*YA z1marmzP>x(^)g^QFvwSS109+9L31C9ETG_a7YgMN^rr7N~b ztqnjnTTmx!fb9tjc1k$x?)sTWEvw!P-2mM%rDH)=?i*iMJi;%5g=cdIh+yyKelT!x zyF={kW@<{)2%Bx!uB}a1^N%iC?7jmS*9IzhY+37KPT0R&n7)u^9`y4?XnohN%sg1D z>%fAY9&iM#?x~Ag}!B;uQvgO9rgqGzC16Z2|KXk4S9#A}AyM9+n)zdaoML zIB+ya@@U9n@{Fd0%5oJHotjp!AgM`OI-M_~^Nc>!)h2kc}I_qNV;*lI->S12Ax5=4uD)qP%hcn{Ot`*0IP2?Pin#0`!{z zJo#0Y8}4jK1w|h|5o}c{!^#o}d@2J^bd9sAh3nPpN+B1s$%Y>qgQV^g>^j#Vwh*|w zF6S`D>xgM-#)afMy|`C$3Md6m(?*}tG*=LW?$L^Ck&O5QP@m^M)$^pgy%n*#zx5DsF*aj0&12(m(Y7kfkKWx+A)xAA4 z2$Y53x^PyDi82Jsd%)YMx>@p`dpHJcTQ0rHLWB1$d0B-_kjwt9BECGD>C1?_N+uSv z1pT?kqDkdZUE0W|zv1h1jg#x!|A;|Un<{PQ+MJ3?)2)#9gks^iG`qbngDC% zt6@J|t~xa$G3ONz4)s7JMXCEAF9G1Z?PL`imh;>Sgp1y>`0W0dD^k8Rv*6Il5BFom zRz5w7mX!#+^X_IkcwTNoStob;^vy8`$@sI%GvD8;y`$>BvabeA-$b4Mnqf8}quJDnkv{x)4+$o7IRWIt8Z zUe^pa2?9+;I6g?lPM(ip41aTdyWSIfC`bSRwc)2_^Bf7}GkQ8mcElat%ie!L(*fIR zkC}JZU3Qh!89xKz9CH8c{16~`Gj1x#i-;%9$D&yak60U1cL4C4#E#16=HeQb=mWYsjJ`YBBS0xb#2)6ec%aZ5-zwr7mBDW zQOiZ+-vLP55Y8OVdXgM*Q=avj#f3RL=MKr((VA(a2~43DJ9t0}$ou^rmJX-#pr>31 zCJC=Zj-%U$4UfM}^8fwoo2D`zv&+0|0)i30;92c&3E1U5FmuxmOAoEdd$nsUv+&{8 zZ2c2_FBo8BayNfeMnuhCBwIn_oIu0&-JdjphVgF!WcZ`?>1vUW$@yC=>IuBmO?c1< z`fLvXMaEY~(3Qnx*X43BX+&&uJu$x+q@0a+WU`U8jb?j6}H=+&xG0 z;rx4&)NyOCVH7hD5g?&4Hr&s0>*ruKsYNWr=z-f)yWV4o(i+bf;QpsC<;~hB`QRWo zS-^Hi`PcjLiN24@sRmli2iadueY4VHbL9-PM)t9<6=4bmW^tf3KsC_>fZJO$AH6&z?#$S;wSftOobrsWs$m zlhy=XYu<;&=Qz(bEQxsYcXEOm6w90=`%!wC3h@N=t+qD%17p5^b~1hglGuHN?|-3& zD-&8si{=M`ry*U4zaXWYFL`0FyY>ZZcr-ufyIwundDP@P=WTeutY0%)zJobDv^t99 z)h@GHEFSvBGjW+JoTu3z1uVZGwpl%XaJsN{lx*z-2JQjtwdpK04B!ST5=hsHR)=tm zdgQn#qGwc5Gfg(*c_O+;MR!MB&m$4=f~WC!F4P*LN)>9&@v#_pUeeIpb$)(}T`L2j zn#i3-)#m2bXy1;=!+T4|7%+(QUewBrmW0LLeDg zI}TKat3iw*!GvHi0`GI>NdC+~Q`>`k2w6oRGiPC%L%4$pCk#tuDz?~*=h5<+ik=^HJOZKRwm5B{wi^gwW|gGppE@UX8zDp}iY+49km@n< zK3X`$I)BXo|8R(|m^>Z&Q{8W(u=a>El!d0eFnt2Y$`hL;59Y+UT&$O^=X(QAZG8{E z%zE_R+t|*vFl1)el*J}cl@iRl+5nkCyB2aIa~|V$m!iRx^)8oiO*k zic;Es!i*g#fl>?E5O6;~j+s7?&Vmhs^;{U>mg*`}NtcsOwM1H4uN5a3Oyte@@g*<& zkL&5@I@cBg>Gk_6C!ojEtS-Q?C590#$ere;j%=vL*p*(QU_>HxtO?kvbWlXP_+@F+ ztpunVY1~NAV0arx^zDx0E~Yz`8e`d>h5Q>T#7A_fLN1|`k7DqT z5<&WAUmj}8R*nVe;6sDhiypLr!tENcw^n}U+{L<2cN3sQ`;S%-746xgB|7!u+*Cff zAD|0lEN@k;!n{P&MUa~OQWboDQ17zQh;W&;25MCQF<0OWy+kG$ye)hCjxVkFLE3`t zv%_b3`-WYw!2H&nYl9o3g~g{29z}F9S_#!AuQV5WDssW*MMeM;AS;!xAB-ZNJ}J1G{+M<=>s!X^X5*?O~2TawK+u;ZWy9`nb<0uJH z(YaXhz&%;WGIM3i2;FGMv>03Q6&MuhjwsDN`^Bg$y(+h-43}u}BBWtCrF1Q(t<7>O}p`rfUO@Nqb z*-G6jwzQFiv}{A0SG?b+0zuuaS?a2FVm$VvLB1B?q3Hw7nqO8zwZ^W{lD$^amChxY z|Aw5s94SkG>s3BzUR==07SOvn>(yW&(fO;|YfG`2O#}ka2_Nd$SAi43jbK<}aL+0& zp=Gg|Z58-JBkh~RiiU;&Ow`!&_tV$~Z4jvWa{JFG*;cTCEc0}JyK2ntDpS;R!{qe! znRB@Vj3zopD8<$i4&EnF5JiE>{ZCDuHO>8(5?wN;C+q#^I7(`|n-1p+97czO9K#7s zbB(^y2M4s+gCZr|rH;TMBw%9qcw6;g43xlHzGpO(4k8gITOnNeR?4V2ql8>fDVC?K~NM z=jsQH3Vad|zyA z;z}m%1gfZV(a}=aGh{IW%pwLD3B>eg{4;rGoIb{SwHTTCs@xBB#O8R`-5u27YRRnu z0{EVT22(Il=F%_NA!caqomlc9N7#H&5}WRX?2WK&#xLq8jP8pyj%{N~#&R&Xw>tO1 zxTQl)uwnZmsMT)PG@*KwE4u~y7lfj%Ok4$QAspMp=KS*7=GB)uy>Pa!)s;z9@ad-- z;ljZbu$0?M#N%aF>@ZaFELjXI;=^wkIcZ|!`wgA)LaQ1(;arvG$qwX#lV(ve3PD*! z^>kf4miL6dqqQ6gMp0)=`IM9#;zxX&5EdPyEeU#vDllxwUbp{j-O<lcE|pMA zL~W@U&m@%x7szS)>(9muAdfjs@-2|1kVL-Lk|Jd(_(s#VCV>FNraye2ZMb)8S>1(n zl_#o|$$m@c*mO5NH;A<7GcMpzw^geWdb+RK;p?*hatDc zd+@~#HX1nH=S3dR!C7$Y<$WIE#W{K9+W`1Vgy&3#RNUDfX2v=xV(aP`-ay$d>`cx5 z(MEUt1if%avjB}ccOHG_8ShPh*lx5y}z(bA6OEgi0R7Be6h&z`Dz8K(UCvY;7f zcZMvC^sNq!fFqgf@HDSF1$Ey%^x6urNw9hiJ=RG!Jo?4GY~%exN|zWp{ay59lHkwP z#xcjyFfqX`L9ed(pq@yl`7-zN)3p^|Gv2g&h){LzX!x|oeaWt90^}O$ z1*ztTchKw6ViObFp?Ysa;CF|IdJbW^nlR=E;z&5PABl_KDm^Z!F~D0j!I>fw1Tuf% zE=ne@VVu#nkF#v>5+Uras1@jYxx!d@!rrp%Wc}kdPZmICO*uGT&^<#z_2^9Y7qiIu ze6-=^OrY{Fzh#QF$BVVYqmazFPmPlKLRi55V8jqmx=TgWMvnvS6tgW`U#moZ4WcSH zsjawn%cd**fnG2maVae~dt7!Lop$V+M8x7k3~VmVy}EE|8f`bj5;nQar1gtk2zmJ4 zlI%uLfJ~E#GFK9zQ!T>xUG3~g)vl3mi{^G$h)qk}Pyo2fRX zi;ur&NgypMX~-))&0cniO`0ucYRP}2JFlW<_hZ8rbER*WB?w~K>QAqiJABR12ExCM zzWGjuAxHM|ahxicucE^fMN585!jeM<*dtrE$Lfl1o0)%v46?|FeV80qEpYd4zVZi1 zIo{Ua5GsZ~OHYnc^&}%Lt@DqW*%*rnNqkmz=@_>|^MchI4x)r*LP`*7h44X;tEgOJ zYRkH6aVkJy$LQ*@^mGLp`^~gdU2rpM$uDX#UCx#lMf93i85f09GSTSGKJB9*Q@sdb zZU7{j8D(~qUBhcW@I?g9Nxgg*b;QWSYWWgcL=x}s12yCVUQZ_1V%p)_wx9#wL>NP| zALIJsO3@Ms99B&|1FjCw25q*|I0YFtKw%}@A$l$cWuz)tA{o2xzKT#b*s^YB&0qw>#!M8vJljL-+-Wn>WW#cb-77R>hu$}%V9Kvc4K&9KeL!hsK57Nu8bWwSP-%RfCD79Z(a!y5G!@BbiBD`FVMG-G z+VRjJ<5K?XLO?LO=ziO{FwJM|4d#HAot<ru@S`D#&P9iv~0R^xe0syXEy{y*;CJRHlm?HkpgS%Xrc zq(OyH5(ybA4J2dc5}88gDMOObKr%HTC1fT;<`kJKBJ(_xnR1zZzeD%)-1qaYcYW`+ zw(VQ%kL8~pH_zp|&ht2rW8Z(%J}%1`k<%jo<|?QU&g-(YcWUCg3eG&Px6YclL=s&( zj5TG4=PuX#?{QFy-dQ~3xFN)1lc1u(xZE4+f|bgCJsUVE@olVHb&k2`)}(JTj9%lS z$0%RGc8M&D!)xpuce0<`e#stoDgD6aa_wgl8hk|;(b0FDExZw96#M;T|Fl#)&3#kI zEI$9v`CjcQFCn%}=7Z~XYPS_!p&hQ>r~Bf{O{I?c`*Q0koZt|YT=!M)fdor%mdI)P zf)Xu7KWg9EtQmW3sbk}{pca%F) z{EnMMCGY(Sg)pB>YhLnb-`0D;m)qsHj#mFgT)E{L6^*X`J*yoK-Lf5C7~tH+MIALg z8hL+U`gVkm6UjOe;@om&!;a(SKYzS^!fNxi*mTnd7THK2*Mrf*DtCQe+?vSlqP5JC zIYu{k^8`r4#>0n4SIuSRH>_Pk}&+X%dAj;kOXdr7=t&{#j{r{ zT(l_Q^~_D-EZ};(Be&ako6~0o@opYR`5lpNMT8e=Vfc9}oH7YccGb7non|aPk+;>a z@$^$9^)5y>KG=2b?3VRH{;0wxlvg<%vUoa>|Crz5n+%)sz?`GJmItk&LWQc|gl{ra z{pQ0jtY2(4UrObpYup{n%eg%+*cEBQ=Y`66}0`=IocJNB8;nTfghI9L!WM7X8i^CehBK`*x*Bm?;gRZyZcK zb7rzkZ+&{(<3nkR9PW_h**X9~Y>;;M-iP#z=f-W{OuS=^4>2oY&D*Y=OReEJr9+t$ zxc+53>@#MM+Lc(|*>&(nFcdt|ND>K~RC@TZS;nGm)KL0hqUeky%}a1Kw&9bP5)Hyk zz7cOaP`v;qqW`#$#Qs5 za@T?w|rW>utI7d%T1fx5mB;}EcU(IM`)LRbXxV65~$So={c8gb&o=3`M4|J zK7$uW<_^n@-D?@kSoL!5AVBcz;h`%5QVZ6M#9b4A+TmEdOk=Bwjg^VCt?)Pbl-ohNQt#SDF%ESL`oJOe1Jeoago$mIoIcE>b z838J)QP~@>PVYR{d)lB={-bmI@nbg)9EClvWlgrC=6_%#D)55OZ5S(m*sdX;U2sAn z{^)P+F(3PPKW%%?Y>S|K-sj>V{ba|JQ=?%NjYya0n%tfgM>grIz$%YdYp4*E_GOE> z-RNtk@l27!X#dycHu;<_eA&Vazo5rAGhn*Z!%7eO<`ziu#Kfb@?H}we0NmZt(lLpE z8Pnl2hs>s5jJoq)PuynxlW!9hRq;zJ4!@d!`U3Kc`)J z!lJizzFL=4cB#Xm!Y7Ze&aDSKbl-BYzN)>eAPXGwx!xI?PDv^emF*yW_iW>vQie&o zwOZAL<{O}s=O17MxuQQ}Hii1J=1IhTZRQ*{U z+h2VIBD~0PLeG6wO4j@S0R-^oTBz)9s)8i!Wg=3*%v$8z}`BG`Z$+H7>@AiI+sCf_fN9(Uo8-$mqq5C^a&(wgtv+ynia&@IDj8hQq z1CPWx>xJpx{mTH|Y=}Ew=)9|G`0MMbloxtJDj`EP(`bs>Te_giImvgCxGp~3+puA% z5D68_>#^rCA%E>cD?(;Q)SDYVw-?-B31xS2YvMRW9@OiFe#uZSlR&ch2lxDU!Gd%J zNl>=|F)bgiF*Sn%jha$Nq|H~;NlD+N8K;*1!FBcKrJ$CrD26j=xpz=buq(#&c7NAB z_9Bf7he2?cZsYL#3Ww&CHAe7YBbCPT%!xDFly~uEPpz|3jhpJ{av^GI?SQ*`wIC!7 zxA#6ezUQ!6XVJRSpXQ7iU#A;w3NK~#Jb@Z5)7Ih;v^+tV`Q`OudMR^9ZAMzJ>@Y{? zka=9jqQ4;R*%kp;xeJWbbJln^&p6DFT(*SR@HSz`3b&{V0->dE4=T97EwlC~Y*-@> z8o7Zgrt$=E>mZu|vjD-o(`MlSVYJMlVdT|zm!q@RONR`2_oul~)60?Nwmh~oeSptO zZ!RGJgqtJ!{e{st-6SXR3c_NB91BA0b?tb%;WNY}cW4G` zg_UdyQJqXC02mMF&^+A5E+5&-WCDa>#-VKryUsEa+Gl^Ee?&ty@?F`<2BA2Io6vY= z{DzBU7kCMOyI~(R@B?u;Bz+-=!?)d{=$G)K+R3 zjIhIF+lObd^mEFFQ`DzY?yDn!D{oT8=woQS>fkd}+$s0B(J|iryiPfm&!6`QSNK@_ zIB+%{y@nFD@OrrWM}#W-m1Y8(&wFWog)#Wh%`QKsj6ik`PyVbP4JfXL1!1tWereK@ zbDI!4lMNET1g;L$CdNJdVc4(u#rHvKy<{@i59zmaTQiJK82@evm47RX+_Z0I9T~SZ z8^XG!{925r1^s}7aafa}Co9LfxRHaO6=q_zD8P*OwVTEbR*&}1b$d{bR>I)K=jGT# z_14981v3q!KIp#StFj55Lg9VTM3im3e7A!77Il26rsJCR5D3#RQjpS;Vs~7&I~=j^ zSGeZS5SjHkADfM!K}R%25UW*lBqge?Y%LFuex@)S_v=b^{K}bigDe#jLJ#rm7FiO@ zAd=mcy|zl@TG&z>uGSK1u{##S%}pFmr5tGzFAn@VrhV*`-L4;!z3LCDw`2^zTVwFi zi=U(C7^hucc=aw1P9J+=#jK7)zm9VtaP108*G&O6_U+V)8X|GpONX6yzB?!FuB6u* zakl@5S8Dl;h3U!Jk2BDUHI8nZo)*{ia=a|DcI)1`gPwe$c{75Ob00h=Iyer5%ptGn zdM(9{D_L#QF?0NzfP)i{ja-yq&#a?TQM{aAdYe_Lk@SK=+OpIc%$zCo!JY~5=Y4nM83jp8#nJmX6DI}0>C{up? z0V5yhMy`TYDig4Ydz=WNWCvGm(HFS(&}nZ$q9>O)m#h_hr@a*ku0%m5+)hl&kU2)q_>G@ul@M!m$gl10-tSSRLvuXX@>~jb2)#y71loc_+;y5zw%b8b8AL6#|}zw zivs=lj5ThxiD6aFm-SqtirWh2Tys}sTYH*{QG(hJSbjXGsA?2rRD0r^Scj<;4FgZn zugn9N00BNL_io5-kT`olgVvKWYhXw-7h~w@U%rupes^@)gGajYLN@pan<%@y8{nUk z6lZ%(e*%g#C&kyNX<%Y{0x^ks+?E^Iup9y))P2Lqb-wEj;i*fc-X{Be7M3gC`_SBJ zD7|ODw!pFK?2>bD8?!zS$-Y(b8>t%4LKaw_tfDex=;k9S2911v5huX=#yTy`#~t$1 zu+AcOqBJl06~~feo}F81cp(ER2FhqT8W%kEk7+zBd8I#aHT%&EnL39{9(6J2+`95v z0@T_|&h*Xwc&~9n8Ulpwa{~ry^^l0~{W)f*HVzqML{|z^?8S~G{kg}H4+779C$j5@ zm5Pa4rqPLen7ijR^&{8%bytk6v}=*4W!E5T6qZtH z!BL55sE$=5nwMpB8hNEEUkkVGpx7lhO{=|q5lE?%J$u#f7ZG0EfZ!Hp7UY^;=nA{` z7$H{83*>kyb3M5doR8(3-d{}mldE>F+Pe z!-ITJw+*|7<`v&IL8bILCF`@5;=t?LW=4}^bgaS8g`INl^ZlL?AB~s@X}^>m;`v*P zK8gKB`;LO!cESowO2hX`_}D+gv~Q@kTF39f`iS@aaPwIm@%_A4ap3LlY~%EWlc{TPj$n}Ak&|1W+a29<)DxyaDfbQFW*ryW-OvimK- ztkT#wrvdon@tSR%1MTS~tAlsDlyY5$Wi$y~oXnkHZ?bJ-KU}@3uMOO(z3R((!bFj4 z+;nsKGbKExnn%RKcB|9z_1UW$Wg6VCJe*kfFuv+@L=WT~Aw-L16rvGQzk_Z(D*L?Y zi~3%lQ-e01Jsoe}o4^ZTT(p|zu|kCOPQK+qHHvm%88Sm3ZaZ|@J9cnPYXjHT)iu#d zTxm{QD%p%HXI@d1P2=jN&OF%O7Muxc4)Vx{62mRaHV9q;xe(RBTVUjATV-WS(uVhX z3AQ&Y6?7NBH}+nYK9@OId(F%8Q-!|!S{nXWQ&rVb4le^KI5DjYKfq57y4`+WnRY%XTUD98y#6YsXehHOnrPm6U^M~L@If+2#*30@-+_I})@7sEkorg zhj(dLe15dE-$&*X*Pgw{`u5nM#%_#l=3}9!Dt;xgIY`bTxVIsVOMrp(4s2#3**2DY zWXjg+BT_aN$H*~;;&md^%)!*&yADpghd@OA(5t}Zl3Nwb6}j(3ZP!g}U*mmfA5Z6P zmJpVh*R?IE1z% z1t+Hp;J;daNk-_Ito`VDB+ftrFm7i~wQu9-p|MPeO`1t8V>IfJFQtM|M8)m70p0PF z3?s=y1fdbUpeVS7zh%~ADc<)6)pQIwT4O=$4>fl zD(&#ZW!W)Tsci2AZWVdIhK{WkopkLHN%p9?x2r{_cL$$xjF6C(8kH%~i#pwNapwt( zo14AYod_6FUH|q0d;eAFrtAYkYY~BGohXqVc1%YH8Ykl~<*35aZ=@siwf@vLb!`Lz zo~yPeVIGrv!l|hwUVpy%@KelcD%nk=sKTiP<@Ht_HS3hLhi0FH37LZlo28HE!J}h@ zDj?Sq^$N+-Mg~SAy7{sur`FpmKc|rRI_6AweRzYsLpBjV)CcjqZih)uPLoxG5wGo- zwraLr3b9BenSlz;2&3l6yxAs3;@wCpEy7M(C76Zx22;Zh5+UO} z?Q%(f(j9y0=|i918`f}=FhimVM!xV$Lj-`h6+S;^cpU+I7KA55=H{i)-S?0HgjG!Qfm(tW-WOfm`v< z6g{~nBGY^D>yERdXRM)(KHpN9J)`i3*q|g&0EJ zj+Z@!OEX8%rUjpD0ISy8X#pqk1g>KP(pY0JJmszin;aON1|?Juh3j$xk(BB{>+dm> zf|u>AvAJOS1GjC=PHrqV%U$1t{FQmGt$TyN($|A)qN?BvXTdu|xAoH)y7a-B_sz%A zNSq(Z(R7?Dzy+Y2bt0KbQHTUXw|D4F!{$}XZ=k73g|}u$EY^TTs`a3O)x~w5@-4zj z6Hl~ughh;aTp+dI4}xcIZ1Dz{44KU?dLM`}gsz;qqlQ<)s# z9pa2hg8W8yE&LW$r*8f`{L^>e)on)6Dp6u0E+(Abr`4|`5(%O!W`XX&YcWs2aHk-&B1 zIpTq1x2JEmpCW93!=+3sqqJ`f#|&yAeAaq*{p-2jerlPKPRl=^#(8!}*_tERV@1pk zcS@{>!S9ewVyTz46S_RE&io?W!_fFVEif`X{ucMy;@pb0m?jYMwANI~p_?watPvJevz%Sxmt`gOU_I-%D{-E+#b7UB6l~ z17o6_1_)82VCOC&&a@N3D?>9qz(l@uv!BYUwlFM|zAyTa^{Bb!t<;gI{YAn@ILO0y zu*h9^+)0p~JZUeP4Sn)?Roq?_g#zMefXJe;g$M(13UN#Za*DCa7$fhyVyVts#Oh~? zgrD73)}G$Fg35gW+y6V%F7@ixO zenjOeBw-eX7{)lUPvRSdw870=iK~M7fzt0gsvQ#|DmLj_KkxqRwHtW42Nj4b%Y`w8H8Tx<3l(BgFAX; zbb?lI-d_s?fFZF4jyV2ixb*6UosDaMQ)U_zm}l}d4g!})!BFj`9bo6;am` zCu?)3S`s$83Cq7WI*%jw)*54av+&*R^Lx;OLx6z zk~8)B_wgmpE?aO2SF9b}BDpPDZi^auc(hc)?&Ac_Ff78Vl=4`!fH2w>@{bzX&&E}B zCDy|9lj*)6)rw3Q3gAHlcJ>4kmlo6!0mot9%f#d-oZiW!1_DrsnxzesoC1MvEw6xFJ z%G2c`&J~dh_bn2vhc#+$U#^ln7N&?=t1-nhOF~S1N!M@fn&W1+-a=R-#U^zC`c_4m1Oiu_~)Xj!B zrq8Rq-I|FEIz>k*_J82ob4`R16quc0vs1hc%);Z`512U`9 z_eJ=AX{BBrYVobY;b+qmIu>p{$DmKg=W*(K@9MG?p!QysEQd-WVN>NEb**~R;u&sk zPN~e2*1J;VvGgYjQ1i45y^w$(rRgM{E4(~xxiIp=v{yMePqa8W3A8#dYwZ8-5V~#N zxBTV(TMR9y#*x=j3eP!cB_2W1gX-&Qrg@ki(C)Q}-q44QxSMu|cRh;2&gP@vXIAYy zN7|!7)V$tp^H{FU5AW9_lZ2A%69Ll~<%ZB1(smD$DH3h-I9f7YW1ulyK0MBNQG?zm zYV4(XfD&|0C|*ot-vlj{Twc$Ly*AKY|FLw*+(OIs4C%);k>%biERLLi(%WvYD1OE! z+mR)@^R~9!u-)$*_d?V(jkO#Eo$PxtRk*zd=yYl6SBmnWSsUQXQhWM>?ztvI|9;7tM{!l8<2 zk9seO-Fy(+T-jlN->AES*mQ52Vx`HFZHa}ebe3>aPd`#OEIcu z*(5$!I;#ptmFdkOEP1P*_oU9>RHz? z;R!xii%Vd9ZWfndI@Z6Yrb$vyav5Cusl-sXP!_e^u9rGZ{(W!s2A7h6{0t6;cN!k+ zG`R0X=4bdY{0a;x-{`^T>dGl?x0=RLNW>zlDAwIs~%^aOx%+#h)ga;w4wpW z51Y12M58VfLfe7e;X`C;-z|#l7Ck?OVPkCZPYntkT zNHh%+paz;J9hc1Rvhnv$Rmr?6*>}#_2Fm>yup(z|=cv3radt9ihpGHos9OZF11zr9 zrY&oxjL7F&LoFtJwTM!e3*mH9|M&1v+CAT8)0$3m~5P;vhCahQM0ua0Lnyh12fMDk8w zxbNb4f$yvqBL^Krg|kwQT9)UsDV;;2H2tj#qL<;uV!WgANx~QAU2A@m<4baD`kJw=0k@%?<+S259>o*aa=Eg3w!oirm5Vvz4bdA$GKEfzgRov?|D2!@=Z_^Hw~MSCzHy1 zRsK6Q>+{Rmc*5!?Z?t{l=*)jyb|^LLQu9D2%O$4xD-&~0*C*iboEW>)7#r}?Tj8me zg8F52LJhho_7ZKxvj6V37c+=ga@rMud}`1 z4l?GV&5`D8n|^IVC~?*NwEK3vW1V4T_(KI;iZcyCoVAGBLYs&`Q^fBW@J`q}jogky8$oBHD_)upE?bn zuiDd%QVhnSH``o(r$QxIy_Hj~SHqszhAAes33+732N__6j{RG8jB-c!3|h9Pv!=iU z*M5tZWse$ZRmK>mo6}ew9SqN9i&-+9NKHht8&)59afM`0lvzW8S5F)Z~n5C4i7xDt>M+C|1h1+4N}^?0HX?{9$2 zs{+_m!KM^9Kzr6A25zLPW}6NgzA}RDC$ZV@MdJU4N6}mQFNfj^FR=BJ%GpCi;M9#7 z+{k@vN#nvVF38w0U#mbBp9xdRR5QRva2D@??5o_%1G+Nxo_7av#yX$KC&T$ob@z>qoI5+ExNKAf0j{(DaZ7W3|#8HLr{00Rs*1vKS2WPWOO)bwFugP2jXCIjx4(K~fb*)!{Gi++ zi$HJm{u#Nzj@r4u5^`KRCTd@s(O&ZY@p#m;>P3+M0cauigNF5Me|GPE=Ojja=)(}8 zN5uD(G`Cmo+UP#3!DI!*5HhVEuFhwnE-uow3``v`2^V{RVUBoV=J|WLrA5JznAS%e zS!CQxDqMpT@Ml4lCTM?`*;RoGf87CvODPX9;p&8b8O`EbnBOqCg;Y3;ZMou=_)G)@ z@AGi8TvdZ-(K-{^9xXcZM?~vnk)M$a-+n#dxySm4p5t(?ZJOx){>geL8`oag-X3OF z-DG^HTV~}HEhcfCMO0f?^5Nwjw?^{fWZit&eUFc#%w_4aUHqdW7Rhqu(xk=$illNo zd+4;7I797w)7Ok{B2PFqhJjbc^R2$F2>j>5jA%z)5r!~1P`)Ev)c_5uxx&`dk9PD4 zcs1+tqr6f}5}!n785dx%%;H%BYW;Ixu%60)|p!43r$XXRX#_A;-ff8!WlSkT?jqn5VV8YTN)or zsJE$Yv{c7_lPb@;BrNm@ne(Tl-j32I4FvXQDX0sA;4T!m&Gx|a?M3$sg^P2e%=??O zbI-6&w9Z^u3t(bX+1AE>2=kcfIiw5@cfUuLcoIp#YfECSs!Sb;&rv z-fxzjoILKxa}iR;ruQdMu&2QStn*A4b@f??GK)*?KIb`2<(N0#j6eTL^8s3TV&)-2 z2H6no=wZC%3dwFB+#)hS_H#+0{C9n~cOR$_!B!gs#p2@Rvs7+h?-SAjgFN;S2{tBd zAq(?su#mu~4l=|pGw8Uf7G_-?X;UyPxBJ9uZwNn)zbelmH;tON5y3y_7eHXRc(IO( zAq?h;AsHPt#zZ!`xA)17*~mx`B-zcQFKZn_hg8^5hEG^7*Z3N5idSe9Hl~|5@eaWs z|7q^r%Rp>$Ggw0Pc{8xW_8AinA=!x37Z3!6{=MT^-R{yw65HhQh;h?Rl+vd?>Uu(D zxrh5^q&nntfHxZ-dI1Ap9nLtdGdoOOi86d>9$k6OH^K1>lm(dPw2;q`h-14BljE)c zVmB{d&Jg@DJJ|f2Dc#Oy7*+(Z7-HcRCb3aCLCOX`EZdMwK%J=No6dQiX{TXn(?vOK zOpxp0)NE8ZsiqyL$>>NDEQ4y8k3dUDwTqDgRh`XC6Y{F76JTjsUNFf-MbdBS(D0bV ztG_6~}$-srVv`v)r4ILN1r8tlUg%zVYB5@QOsv#&vf)OJ$#)L=> zJ=QVES3A_Gjm3iqK}oAAUE=Q4efX7A`+l; z{)J4{-KR%&Rj>wQVe7VnOsxU$FyyME5e1;p4cOveNIm5)Pg~vuOPPYkB-m6o zQ+>SW)R^59{Kz?Q5i)1a-Alk5$@Qr5ZX?k_l^717TH2$EVnf3O4hX7^N6Di`)oHzm zI~R*$cievb=1Y`vKct{*Nk$urw@d!ykwxrW#F6X_RNgyCua8M=t@~LKmw^xj@><*e z^R>uiihqB3gPZvGH~1f{|Bn1y{ICDVf9%GSfb|JC;?w6=!_7wEElT^PO46Rmvv-B- z?aw*#?W=idRe*{yNxY$BlRp@4JM+80r~9Gqvm@6|e`#os6%N+niTD4Wgtr$;3e1t7 zx$9otz*9?}v^3xxqhG88=|^wect5mN{re%NGbjHpW(n`yH^Dr-xF0*<*-j*>Xe34q zff-+Z*#NaP)9=Sia}(%_Is3cxZ5L-0$Iib_2|iCF9pbW;>(^axL%>n7A`WQRn6x@d zjk4p2T~Ow@-DcTugyjw&S+n|_UL-71{n_M%8(QqpIs>dccd0%s>6en^2b9E2@Vk7M zKwhUk!CzI$R*sJU{aF-W{x#1@OOSsTTR(`2oqw?CEz%Wsx0mXUhd-S7IexMJO?GCT z2M43_xJuVx;OCXKI=VsE@uob6xiP&i1u>F^pcAfRwoV!$w~#IrgGo+t&&2kT3|}%; zlC&pop6`i&<+wu~=CZ7}hqoyP)26II^ki86TvOC*C=z1@4s1q?ad!3+aGoVgdB)kkCH8 z2=^s}TktEk_ig<9jhSc}oR?3H&X^1gsjg@k6W*#kx8mVIK4%2}r5TK-uT<;E19l&H zbsplqdRUb80E6B~m#kS0D8yP+bM+b^hdJ5Ua&yYeJ09}YD=4Y!EYes*jde?JI}>lO zRlR;hdTvJw0pQq(kMAA8t@M01Ama^C?+pTtOC)lH_9S31sSVvIL6xDAi~$hFix!@= zH*@GdkC=QSkv|%x$WDtvBFRt+l7)VdxqyaE87T-m;~lEO!wvpGG`!_ENdzQWFmu%> zJ02Wu9E1n|g21V*e@Z@k(&>#Os?MAFoR-bt9DVhGdo}&g!eE50Rq@jxBcuhAS-eWc zB2c%iC6)J1+s?;B!z3v>0Md+i94g606kAecfDyBPxN!`3w-$yxBT}ki;6VeLl#Ml3 z(R*CjBrT9}gC({li=@IBt0Nu9;+hJ3-R?#tw)Oe2a$@!?C6|^Bc#Iad=@8ZHLyhUm zCv$!F@GM{wP`A%+GP~lX9iagRan2p#&fwAI|pKum)W$gYj34It=nH9>5dT2#&;PK5VWkOz1 zp7x6GCz2gNZX|(iA-%)XuJIQ5t%nrpShKWOn5duAlSy$O?I_I5|5N*}*)ws+^COCisL`~j}; zhAb1^hKv+LP;Eg&^OjEYZN}o!oV{WWfC30?YtaTkj@eson6doeM$0)ytsI!{N zw_y9XpktWLY4sfm?R3YwZ}!VyJj-9cOozgC&&gDqQ7y2fiuqQaBt#?!dQu9b6KElN z$DT^*$D0-(ykb$oQp>a#%%Mw0OexpOPBn6EZrR@RygZ>h-p{JbR=3_ov-^yi6>122 zpN(YrF`vXI%&_f_I@J3r$IY?)CJp$I-|F|GcDa%%#hJeu_O~ZO3mb4@6afPT$xWd| zmusKPCs=^BLH9d7fJ1fb4UyIH8#g^#95sz}*`L_8J*NXT#XjLUiv?I6w^wvuvYfVr z0AX;=HkO@!^hw;b>FX|d)La@*_MQv)a#OaZa`4rX8s)h=49ZWFy42|0xDMppAf!XI z-A03v*1W~()#yPTApeMam4^yqAd0aU>lF@iK^4tCO%|0>oKHg`=;XaMc{4!%5(0eK zWy9Qwj6RM{Y|`q0r`tPk(1Y5_4!bMPk{Ml8RN7X>ECKJe-5@KjG{%<5ck9gwiAeP} zeAG98l}^5=1sQW4^z8tjtYBU;-;nw>XMR>LS}i3*=vN~*p|ZZrD4^gvA#%}hl_t&ZIw z2AQT4Xt5fQEyA5Fr`LP7o^{XbAk_2B!<)+HL$0b>Un^S8yh&cU4NI$Tul0s^ju9a@ zVjHXy#^~7VXLseK{O+GmjgHGGAp>RCmFn#%1#!1HRUEauA`Ug2x{B-qp_gqCqnUrTN-lZ-MFatpQb zazG3|U!NW=M40n=fm44q^+IG1yQ_uIC(6l)@YlK8@#^04Pewy&nhiCY7t%i8V=|7< zUP#|*n!o93_i%kmG*QtjNXjhDBQbKE1BQVsXzE4~aMf92Z;shObx6XC#q~$JC6KIE zT2?YcorEvE;%p$3<1t8vU2_WQfrKlG#r>YZl2L^(NUPZmDFUS|X2>%`b#eo3W!wo@ zyGIB0#mfGiBwE%G$ku|7Q>Q+qpfBTBgtNB}XS069%f-9ZwW-Xk>8sqqm&WCijEfb1 z#$hIpk{P0?m}~m0!nftfjca)PHTICr`dAh2c<@y$Ki{98<{x`nV4J;q>T_DaF5jBx z-X<}9{=dCX9F9JsbG;;AxJcMWc*)DwHp-4Q)233hPaJJ7;@jQfr$mLrpYKb2n5y@& z#$7E9wJRT)EU#`ta17>LD4?)a{j2!4xGKF!Awb=qsSmXZDTcC|_mSVc{)ez1{ue$C zh!sqsD&|i-C)vLc|9$J1A|0mIqHx7|_7TcXDrWxeW_xJlBW3cWWMeKTW;K)Th?(<0 zU+d3yiXV_K=B~f;xBq-gCA)qxWcRP{{=fgR2&hIN49}_#>F!(~Z&IUSlZpeh-+iY4 z31xpBUC#^S!S%5n{`?cIDpo3){#N6D+v@PB5&*|+9I-HEq-LpEJm09+Fy->PpafM0 zW-|y7FqwpUwkMGwQcHyVk>cJTiFBT1{4laN#K~qzWkx-Eh&EJDtlA|x89iO3mr~M? zgtmfP~g*S8co*6W?Q3}nHld- z&l@(KNlQWK>-nv-*X2Iv4uu1+RYAWHgD9a1)Lq(_9ihjaKyL72xs4rjwUf}|We>9# zI29F%W%jYg78BB!FEoRKH58Zm_z{C^7quOL1o%G9g2qZ*P z?6HDSqz*>wYv5Yeq{q9~4_@QTCik5dj!g#AGIYMUA7AAAg?Z(Vw}z-clhN!X#VDGOX3LvY&8ancg=NPh z;@KaL_s^zVm0Y@4@6H%!T1<0)+wAq*BF=MY;wxwg-eoI(b`Ad48-hyDVJfOqv`pJV zJu3m^YNSU|*3<&l?Pc19*!(#tcG3A>UF29C^53~DeSaSy^62fa77}TDW~Zeu8HqBq zvirmBW$I5qAX-1+o}9=NgE!nwO5r#7GrNK>Sq+_1(te+-(|>KC`G96}rV0HG#(8C3 zlSdBUq-4_#ECt|XpJ;Ut&ExjQC7#+z-eGz)qRpNTk@Am>sP4~$)MOLlhj<-lZR%NNS{Jbfd$RC})|Frh z85Vu*KJFVwuCc$JWCcifr__mE! zKowLI-1GkI{FHsH)U6JkfaQrO;xiF|Gnn4P9S`jsbM7M7Wu1+&c29?%3s}dIQ=f&C z7p(lB&KFnxh7MFxn{<|WNkNhepXckTFa@mkO16k)#I-3{2 z?%aFmIT}D!8Dld`LTjml-L)z3F0NS#&+x~)Ye~xLx0@l91sCeIw37zjlJ|BrH`-CM zYXQ(+Gs*gO!+%`qtzr{rcJ~TK9*eLUCvYNJyYY_u2t0FeJJH3F`rI%==D^b!427pT z7HY)>eaPDfi^$3u!TXn?(tP0NVDrCIqIM@Ww}70n2EKk5M!Xt;T;5lABBg2FNw*)C zB0+XTRt3AxYiWdAHmo0-0PlIW-U@q*&ElIlPSOC4F@|-^IJdzkS^)edvgGUO4>&1f!g*X{X6@;CKfQ&YXX!W?|+ zP-OYWZp__IvOy$kDU;KzDTP94m9~|gBqSPmZwii-M!&P@gcTAPKEbcZ9it12b6%nM zGshYI;B29xQxxmWM-j`1a~))yl#peT?hvc;@EN_oa)wQ)(BXmW6l;jN%x&*40TLkr z1(QhLVMIsUPt+~Yc+}xhYn?+9y+?mv_S)E zSPrEu2Y8^pfB2hLT6jIt5P}_Cy`P5%y)4n7tQ)so;4^MK9`W3D`TMS)=kGW{vQj!f zZGQLb!aO4|;}FYUi>RRLna0)*M!uLdYYj%ji;cn+>kV#2RvF#&M&xP!yh{2<$KaW4 z)$YjGkIejpaS>%{7IA-+^p5l=YDgx$!divr;sleq7;-YNknlWQIg_tQPk^k?_WIBt z(xEyza}%n#*8b%FN*ZD1ucl=%>&1?2kp{u#FNelV&9gMYBv&tL{a*w~`pjpqUC^8G zCPV#yIJ~E7gRC&zjEQKgPVHQIN!W@qP}kx3We5rNYqouB+3V$dFqx~Z{}$z|l8ck! z!hlka%T8MhRe|i9I;(DehXJR|0jDy7_W66U9mPRL-M{oxZQ6!;b-UNim^3Ih#EVfI zR!$u6zooJvGj5@Pq#CE?&J8qW@=Z2NJX`r)zvXRA_{5t>3$u=Ddrg0CZTUR(VAHkU z&&K2PDg1F-GCb!5eI!p%*yBX={_yxs^{hUlnHqE=LiNIcOcT%-)sehl6bF{0-ZiNN z{_F=UL^@p3Wz|7vYJi5tQbAO}qW21k5H*wu587i{&+4vgPU=qY8h8EIdxNDG`ir6f2Gj+OzX5gLu~ZPDjjrJX zuY#6N(E#>j&ON9{DjwR~5DLq>WfDCIWfT(1_YI4d)@YTKDAMNhUim;p!n9*?!*~sT zM6T;v@(#MWT#3Oxq%-?P(jQ|J?p4RE-?Do_w-HS=qs=mqV7u<|3PEZtnT5sBUTSM{vUv-Q%Vg3rwX$~$K*iddRr zC284veagMhpjlh24K##E)#ttUpEbJdF4kdwd2sL6GiU;*PUaXjEVvy;$g-Mr2&rr& zkN*>)@4LT-hF>1qA?r-2*N6xm$~?p3q<{4uta9l7{|l9%DX&))if$>r0oe(8xJUEY zGE|Zt06rpHUpSIFsSAThS(7A2RNw#VFB~41dy8X8PmCW#6_|^l1$MRc*Cg1oCL=s( zhm=>W-=PP^xuqOvx>&^cp0y{~ZrFcN3X4K+HjS+JG>B=Qb3h#c-FJhF7tsI{eh3Fl z8cty4B+|%WckKx$MSR=GtXRC1`{GkhH6}nd9p_&PJn?+YRhYw91%{V?)(JYmq0~j` zEtxz(?(&_54QNpD@vdt+{Pv6XE{{_eK=67x>3reDH6UBU8y`%4pk8QBGugFzqvTpN zp}&PbW53s1Lq0vxax(AyF8%l@xskJOfm{2oLx9F=PNXk~ak0&5(%Qs^D+NQLVbez< zMj8RsHS7nEJqNG^0HzoXUJt_)Y|c8x$^W`7vEb`3_0)()#ONF|j(+9p_JwLJ6S9fS z2Fy+AobsT2Brug6Ls8`SOz``5NXIB9~``zgX03Exj!gY`nybjM+_C zRHG?zWdNHI_{nW|3sg~D;(IJ~MU0et&wgw+)%Z+mTKY@=us>{8SY-{UawFh&sYv{^ z)+8MYuC{HqzU1yRC*K`MKio12>Cl+n=COyzn(DhidaXSc{^g4w8Nug~IS2aHtZT}f zVUe`hhexp}esBxnd9g1LA?MpK2>_i)Vs`Wif_#wL%DX5kojzO!Uqi-8CCh2O6Qw)Qn;zBb}O9k{JlSnV`u5l zbUDaw`MNCY81WDa{QE;lQvXvO3r%^Zq4Bxvl6N1S*~hcx$_XlkJrYmOwPT=rQNhuG zeMSuxUjvL7$!oH(aCv{gGKF1XcLa!UjYZrD>fc;;UzeI@LJ1Ma!jpmKYys7$+;#lN ztyjwSUy;^%Fau42ccaas@Gx-`4b`i^)X&tkuW!0k-x1`&wj8aQoAVsqUT4Ws()&-L zSH(YnJqw-8p}T3;A-jgCnZt<(e)Ix<>OAX$7yX+Vf=ht`wg;EzVF*ID&F06CMAS&t zL*?B<>QkzHD*<5t{q;XiY+`*@!|42?0b-2j+Q=IP&$Y>l9smC^nt$$6#iDor$i)8j z8MKj>TlU{#7=Q6*$tXH9-ohw~Wz+TF!yNS6LV1JVbYHYY{ogJ|GLCcnzh$-EUPvxO9dh%@7Iwu$@q7fT zc3=A+3mbDL{&5#2`O%R7{pIY72`+zsOZ9*F$8tDeU}pN~u05cLKiA3l&lB4RR!RLU z2uM=|CC^8AHUJYLHP6Wjn*ZQGo2BK-3opZx!= z5pyD6tkC(AwEwCY|4W4;W!+M{eXT%&~9Dmr#v$hkd4Y4^8wG`2xuibxK5OSO> zGN`~k0JxjtuO7%M+OJ>zYx8B6)F%~0xXPLi6JLQwN|5-i%=f@x|10tX-#06ZR9o3Z{ z8P%QweB5Y+p8u$jB0`Y>I0i*m5bKOmK`4Msc|DOhQbj;IM9c6Ws=L6_lVqPATT71U zF)su$X1LzQTH(cdd`ZT`o@X9G)-0O1Kcxg`6@7~H3+_3q1+i&hS#&8IFxD;M?L6i6bO+6f|>sBHTVt)Qyu9L@I1em107kN ztS^VpMp2U$<$0!5dKX*Fy+$KE#CKNHz`O9C>^YpuSMeX>*zUL`$-Hv$VHMMNU(F); z07C&&O#p{6@};6vt|v+7&6mjEqxm8yB=s0H|K3Um2F_#2TH^bN#Yllc z%M{}t($6i9yQ`3ELk;qeFXx;8!*NICrhol@XD~|i#LR2**Geu-(BVIN-}`@70R3<3 zBj+6$Lm5HnaK(4mr7)+=Hw9r%5Ggzf^apF|M}TL5Y*&zX6GD`J#CmaI90HeWOv(~N z+5gP`5gg+6=;wpFrZ1l8+lNRaZ?u5Ss_`^b-hBVQIoQ`8;V~;C89}gw2b0a46qQ6) z?l9FAfI(D{r0+x=+XQrf4IF8WTCmur0f|)s31WnfCvS?^r1=K6&lIvK(4iQEihfBr zGZrzjdN$Q80Qs!N-uG2t9dnmYJYsD1f=*bPHORh_SRIX^uipc8m5%dMy3Mf*@sX52 z>^Zr{-aCnKIU8rf1a|vcG%CYG{S9gHWKNkC5fUkBI?$OC1!n~*)2mH8AD_vXf!ck* z-vKLX05qo+MF<8&BD$CX*gfdFS^6f02(gj1at)7?)wU(~w{ZnuZGyx8rdMBk7ogT} z&)0rn(IojMq;Md>6C%osSu{zY1B;Z7-z}0V7H|t^>k%?YQhlt7j043nMeh^u`{O30 zm4ta3084M?u@NL#R1g}}Jj;3feG-?#r-?&{B)?2R23n87BVDwKI1?0GTaK{(U1>3& zu`rdPqsQ`2YIPvXnQWQrzB6FoUUNoEtl)Yoib051`fC$kXRhjf%5NU7fO(67Uzjl> z&1&0f%S|$LOdp#7#o}Sfx#9yky0VrTzL=a^DjEYuEa{Xp{E&*xzN;frFRP^nAE#8cG;UoT}{Xmq0 z7a=s0rJQnv6q1Rs%WBu#$)Ly2HyBP>=xG=c7{!}oapNUY`rG*x8#mz^nX%N0zYR!? zq$KTPVf+#z+(ITOUhvYd!w0U#>UGg+SI7`jgZ`jt5X4qU+dL5ETHsZj_VpyySr`;w2EqqKsZd>+QWUcmYEC z9EWp=$J;s`clo`<-OK()-1juJBgv0nlW@oPow&K7jC zUmE*JWKkQp5R{fNRm_7Hf458xhT~M^De&z-kIL*gQDAuw{~e-0YltUC@s)(f1xj?! zJBm$M*FJw8%f}amqN_@kS?Vm8T+->lyr{rFe)(nx1P1Wh{pxkiI*Hzv?n!(YA@#Y% z;WSWBS*bu#s#=9ZQdeG))V#Q+=*$0PK6t!oF3PCgW(?P8Ug2Jj1Br*C*E*2le&@B1 zg9mC#Xhu<|cUV6Z!&`=|a4K7UJyt_p&)mLlE1l)f=Zq0^-pSb!aeIJwgP3(`Iu7_V zfG>s_Ay3-(KA#~oBZx7Dm>|PrdYRKPszbea(@s~o@sp8*R>XIWXjmop|9!#pUNV*Z zoZ9g%^J0zitUMqZb>;__b>tk>C?}6NK55_b48ymw?*TU`24(OC3&?;uXB zhlcb!Er{bC8utc=C4fVl9MV~jc4G~hQ|vVXaZrgQE%xDyF&Ary-Z1kj6VH%+Z|yJh z?k}rPGQCwPfgju$e5-nRVRB4dp)UrfewqWzStet975m80ME>TB7HJ6POMsp@bFD|4 z@4(BmLT@1N`gJ2$gKFwY+}yO~m5Zmxsz^;MJU{t5I=LMA5YHi+b?c0lBrfGR1roPE zfiqr3G+<&iP0963TOZ`q@(_}p&wT$6mFAcFE8;q$rTak4L+o4++sFY`UDhc9edyFO|BCx#sWG-u}$a^23Kf6C)*_g3ZzzSueq@`XXFTZ34>h)FMYM^6gE}oq~%|*>OVVZ=!_^=`bb@ zg6tAfy;6-q9nQQ^A+w%{pNRbmi3XZVqN?JyyD+WjQh;3ib;~t7k#`dPD%+&xWIw_@ zi2GC#TBvp7AVj~Y+o%D+gIliv-FreptN8*7y)Usc1|4%mm>0NXBST!-V`mB_PSa6KcOE}_L4Cp zR};k=UT@j#+S0>f{I*`~{m2w%KOSl6p$Rd;)L3Iroo0FeFMk_qkDO zZFFJUJnVj>jWE?@hZ>#0H-*H8cheV7nz8;b>fSt_>%4s%{?1G@6QM;YqMEX0DJ4r0 zlU7^yrNp3x?4-0Gm^Sqwt zzWZlhSC{zueBSSKInLua&i(4z7Z-b$WF!z~rKL5yvP4qWVoqB_-dPSi$o&}!i_S|) zzyN|~jp9Z~E%1 zW+hmBf{V`9u>+d@^ZBjtun$;={3R}mwaz>&Mn4L_OLR1KP)@YQmblv!h+Ib(zU^~p z%t(k0_;)eGpq5AA2Tz+*Q6Eeom<>z;Eg>+#%G4bkd?_;`(}{p1mzU z9}TUWkemGByA8@4+t+I=|0uhx&p)Q^Pesqi+IRQ0Y;S%XB-a#>;acneI5FGl^_|RR z)!Xf6e|Ip+N=tj`zRBw@WBJx|&ba-Mlk+y`P`=sq7p^W*uG{RLx2-#Lsq$UqB}Em) zmzru6uT^O=3&j}9N5V404QTut*50rMuS09z#r5aGJ|8bY0_H(*MuBASqx zsHb0`0@Wy=CumNFRIwR1`{@D05N4f+Obm!jPiIl-|Se|}seYuADHiw*ttHFtre zE$?3_O^J^7q`JRb`=e)&^FaAu_qlGfRM~eW4aQ$De*)xd z@ue`!OV=}ky7Glyb?J3Wa^$>$k=E5i ztw3@nNpb2+exq3v5MNfkbVm1H-}D-@mFXy&_Zsavzk59B<;Ak&y2zcgdidT3*z#q$J=QOJbhBJIw@V?S3agPa-**BOC zY-f#aR>K~1P|#Z8ucKMd2hz@!74W)U;qiX7;U`_&oabTYAonKSvJYDQ_}bg|q}TT6 z0`YsB(c!Mx!e^5sw;UmZI!?4&>Tg6_zh9I@$;xLj6Ck|Ib_Xa5S*EsPbZjRF(cdm--#~57+cu zEtPZKVACWxJvb;#KrTyqYWR5&Q#mm)}uOLZklr3Dn$8Jh8v7jo^%?{^s+Si(C; zM>sl~t?0C&lYd*W7J7>_;w9Y~R^a|nc z!lvG0myXW3XL};-s?+dh&E;V9wRdeN_D*kcX;}!bsn)moQxmpLw2?IA!K{-?p!Vz- zKJw#DF`+p{sx#Ota2yXD(JkHR;%r+BB-OEK_GWLGUoOo`SZ$HfWh|IYBMQ7N((<}FVN)a{hs6YayTS~tJ5<4I&}*!IM%nKmy` zuufn5>V}GHM}WIUykys^v7-QIh9BpHahBP{R|AdM4J23J{K?_#>2`solIagtCPZ03L@tXE zu#D0(eDxv=DBX>hR|0)0aN&-{6h9-|w_X%HE4B3XxiGRm6DGIKK5q+aueSK{!_d{o zonD{zzU#|X3vyAT?RM6+mU&X-dG^@U%clGv*X(JQ=j5BHgyuIt@!6i*WK-haws$T= zCO8mQ|~cz{!}F<@icf)S~Atyj-# zvLYS1BC!jXQn(C;$ zS9$>#s+suRkM!oE4cnhpALMVG=KKJgoEJPcaj9q=h8%C}1;ceh>NGP*7hKEOWz0>d zUtFu^I$KfTG-ejD=}|d>m~G2&dA@v@bA} zW!f7k7Kd6ohzPCh{CH=<4Apx=7m5APxQ@7U;Sgic6?_6ZvW>&0lG%^ZhaE_-=yeR{FT_Afz8(H zmB0osaPS;&l8$m+AYThRy8UU%@_^T@!y!D+#*3`En|8AR{Mks!A`*TD32<(fE6zy+ zHt^@BTcz)Qv)nUD3HS!S^j7)X>5S*g0tal9f8yFKFDs3Hy|Gt=pXa%YZSu{2ic0fO zN-ONmYnXR-o^#vum*LG|RxiBD7pOcwgyKkkI9)1dkb2E;NEdF3I$tE=D(|O zD7ZV`x5ELO@myGkI2aj0;w2djW9^sS51fAci*_O#81D|f@#pt5u3A5`cr`x$Y-(L` zC3|sw@E;<#U3<8>O&tFk%Fkx4(2`pw9rF7VmQulkvpE}MjLt6(GY|G>bKNXovS_Kn zPQS9BbDR@{`1xK$2CF?}6-%C#^~5635#kJQoQ;E7I*+JAmBUK$YLWO7@rp}-e^+>d7?Zve|_?Yw){dM9Qjt?C%D>3f3ww=O6-I3~h{XOl(2uDO;Gn5@OR zx64~Lb3QBdt@t(?sNy|ER7)RUx zINi(nY;idEA~DvT7v+Vd^WZ+)6^YS<#t+ll7=Or(4p5m)(%-q2Zq}eMx@H3Qvs2QC@wpMbuQeS6bYCy$CX#B zf7*5z3S;$}TykLY@T$_x-00dVr}Z}+XVgQB+G=g!!?h)GKeyN^0`6Op#}is)N6rs; zzJ<+%q`q?C9}6vAZ@N7U|C^Dqj)h&TO|>^FKxESCDVWzalLN=bansJL{=%cn#@)81 z%-6Zcndc2(Kpl765iAu&OhgsD&81Xk!FMdZ7bjV*wpqxRxoNM~RMEe+aKWlQ>H+o6 zq0w!6GZ9NhY)kK=q8~oPJNd5CGj7Jpv|m&nq7s*HniGG@ugxb^E^(=F>dD?5ROa0p z=1w@@-k}ED6UqXxrX<6`sn#X$Ay+(0K>ZKx!>QqTV(C>WtVxfNMAUxUZuUF#I2^^Fn>&6 z4o;w~BLa+ul!xyTi?9C0sNiohaqWznleD@vC2Zbn;rHzer>0~4ldR}TghkC+{PsS*w z<_(rppXZ1=GFDE)bb~1><^m+W9k-v6Z$?v3XQF1Y+b-y_Q+JY7qyC}ULb1(7U4pdr zWCh?iM^syL`!AyE>%oKZdok}^XIs5ozi9BT;QHyF`)XYjHur5ZKcU^8CN+Dptd9+z z>Q1K)mjxoO=qlpnr~Pw21<>`gpS?k;_By5UfXL5dVwV*I z^yjqc=}9^LjY-6o=Z=>1?|%%L#b@Nq+|?J6io0fG7`hc{!KjB_wX>v5{ka4zPPhSI z_J&#ZRcjHH<#%t?8SJQNJvcq&Smtui_$M0oP8f1bzV_L}==7*{S+I!f=M}3DoLv#6 zU72HZ^4*EU4|g6pAv?Rhr*vOBd(yR%@AQ?&^$<`g{PvEKAe=l!Gb`Km>IOVtX zvUWAc20wSbNc$_PM(2eL?CmZfJSrTRiuNQ}dokhwP}=JO4bqYBmC-%PSNUQJXAEbaZkmP5LJMl>+0w z7q*%?WT<@P#9m7iZq99%4`y*LwsbZu?D#!AyUHl97IY>@D4^r^ZFkzRCHcxJzJW)P zD9Tq|yl(I68wvks=^&Fp9vzD#7S)NneqwlKoh}ZS!7m+D7IZjRc8oWmRP%zgXmPe{ zv34bfHO9HV-0?a#a^3O)TklHYmG5@Lch|{Gb5mUT^tThCkGw__QW95fPV07!99%n@ zFYvQRNkD+ppURraj{M`-&~J+mt2t>|M@kB7PVkTCbTi=C*2TRo^5yrkbjIV` zAW_%YIveN9Gk5yJ%{(OuVr}<|ET+zKZ(dX~SUwPSDYq?Seok+Y|9AJWAb7h2M^A2P z$)Pc4!T7c#obi9(bAQ@)CP`1qs_L?|-Om|@V`9JA6Vv8iF4Ccoz_5v-x~gB@y|!8_ z%(m2Wv*w*W>=JV+#%yx%T&v%b;4Qj2DH+wO)_>|Boum@@eYau$g`U?u_u{gyJ&fcO zTk-zYUZoib$2+JWD}b%_xwvP+HCsB0zKe3I>T>XS6S03v=;?8PcViQt;g^prQ}3Gn zc3=)~`JdF4LAYB}o$ood|Bv&7TKlH-iabl&G$y9T^QY9_Xco_IaN-R#TJ{d!;4C-@ zCyW%^(79aO$@Aa%HF*=Mt!UBDRR^p%Ye%9*Lb)Ri@eySy5 zX?ojH#hgRM7K^sL6Dd*RN>eZuKR1L$Ne@Q0ZG2zIFD4ZUleSj$nd&_Uupll(dA1l= zQO>Y)9b4me_3fx6(jL@M!9G{I$n&Vh`Fv1sat|OJHZ7-RLBpy_3o&YKEf>4aM!Td- z`45_mEx_Pz*=|efQZmQUw`iu{u}@Xqr2gvKjxqV4mU|+C*VN~{%aBAuZmhIbEb+Rm|Q!V;8$8S?YK#s%0qM<+mCSOhg%H$Q*mryzos-N~&q6@#@>RKZTscA$)%> z|GnV*u5F&G`WGx0jsPNvwO(qW-y=7yp`Mj^`!)4iKk1ZAO9oUTO=84WOy||PQhr~# z#mbLg{S~ZoN6>Xihu%6Fo82bza^51$s^nUxPg8vz6+k$apmfpFK)2vXIYT|^_&PSP zS2bpjp3=PH-pT>-Sh?;)0P?#!TjAkREv2pQ=qJnCp7{X&29IZQG$yP!-22ojCa3`D z>q7h7uDB2ruJ~KV(0}O;7M|WLVEj5V?Rr3s)5?du ztQEbnrtEK)S+#^z9E+wheLooRr!;&%e8TMZVDmtUtmzs2OZh1ncIhIf@s}dVzM0`$m~EvV-!nf|87?$+^CCpX~XJE4aL@L+s;I6OTKcYph<6& zYFAW%QSoA-6-B#Z;Jhbqa-=uY`q`*)(3InYlxQS zHYD1K3DZ6?)%W-OWj!r^*&3blPmKFKX7QeLcnRi?y1UGCEUCIX$-wl`^Py4LFmQLg zw`eTjtPES{x#Y52QTn?Y!{^%+c5IhQam!MeD;DSTxYJ?7q)CiVTeVqclugEuDOFXx zTc?9{dFDYsC)U9Tfa@K0S77C?EqiWy0(w&Z>UV)IM!9BbSLe1fk{M3xf3S;z{Mg!` z2q|_yGZyI*hjrJ*aBjxsi?{-Zt{;So(LxsEy3TO?rI$E;s+db}_SUXq?9z=8l3qZ7 z83kYLn6Pq=qNue1MgUA`88j)Y`<=i3l|0fd^|VDnp=0N$rJUBR>_aC{Z(5THNVJl`Y_bZySHz^WA+j8b#bP`sNEma%EDg9I@@O zBFi3J*;YdS`0O&Y<*;+f2EXV@a$DaavphX9F|m4%zMasI-vLRKvg_f* zL@|SZz?LZ;E?*RF4gksSopW!=*Z49_L>ZU8iZW8RVT@IEpeWskIEW&Dc>9`RTtHvG z2_%o2&qERs8;i!r!Z1d#THDr8K;)FUn@YdGNJt?4S;WW1>x>O1anf_;=im-5UKcq;T1)|{ijD7v6qeZ0Ggv_Wr6vP$F+n6798H`b#--_ zEbKIp0P9e(0K_3)6hh~+>;)K%_e*JPZY)HeUSf^=%l)Z@Fh_mMLA*pc@X-pvIy-ZQ zx4RKRn-qox$UslSH1NZ*j^jhtptByw#Y?iJJr5)2gIqdE?cb)iAP=b##^8p$-*nR& zlX0FeKTfSNV|^i{owMWjLb*JLM9+?RYCeFdt{!NDBf;!cY?pHU^ShtD!Nffd zR(RaM+(k}a10!=EN9>pM!2^|IMi8KU6jY|e(Q>B|u1n!^9RGe?ZXeplI0UiCzkZ`D zMi*OOdrlppm!jKG%v-%o^YgpISl~6{NYFOcY4JDaV%~X5_RCWiTf^19aeSzY6O`Va zC(fbWF`zU0>C9-);kDX{M{DhmNXlAyMJuq4=D)sq5zWF+Lr#w4bqm@x zWT=yyayYgGZwH@f;W9C?K+IabZVJZPxl@|TT5?H(jiAl>>hc2^u6Tnh=d+R9_-dJZ zTUK@@@lC=s?q`6{6ekFWPnR@!#A!YL&pXM=PP>!S>*hOS`p8L34gU22t*BIZ$6(G09XB|x=(Jf_)R)i}y?ChRS!Q2R! zwC%t~lMePIcG^EbO`46n{_{w3xCE5(t! z%;8LHPB*T}HeG{>bs`2bUjdEsGR%%1#gMiTuD`q}dh!S$@c|j;IKD_mJgsO>mjc)x zY+uC$*JT}LvJJb=_5%+*j(@RAgKq#0({XwiK(3<8ERkTUN1`TP?G-)ZcAWo!$SzJK z3FEK61s7_)y{H;B?}v!$7643Ih_rfsg?WLubV|`sS54vfGsI6VlTXfS+-DA=t!C(g zF)%f_zYV#yLM-g^Qd?VZ6mqD6Yqsn3=ZAetkUy}+Yor^KW)^B4FRgcb%=$S_*f64$SKuv%w>0CJ2hfH;TD;cmpktG19<4;r?7>cvaWO>1y^X zVZ6BQT5@u-`(%35gm`jpccSQDt?1eN4ZdS&4Sp_ZE)ON(C%B%SUp?~*24ysf$8>@x z2|A#vUp_w;t+DcT(XD8A*hysa1P#Y}B4MBqsUFmYa=pnB7mPXAgS(8cV3^S_uaIV1 zaX`ektn~zGsvotQH^O-8q8BLlZh!vqUh?`Qx|*P_uWSbQO=8U+ETW)Gl15Z#V%3;{IBxT|1eR{+I)s6MV!Mu533K6CsmsU z$Zk1|2Ia7Fwg3$Wufa~&I{C46Q09I~gdct=QfAu5abm~ltNBUhbew72<@*wwL|N!= zyTNi@=X?e=dMOJrv691tEkg12-+%qlBlv4aQTfcY?~4GSEQBrn3GPe?Z%0VW@ZtW3 z>+-)Cy|;3>*`<;>3dcK;Nlq)_O}BeycdMnk9eXo%Z})+e$^yzug=CQ6s-kiZyde$! zB^FmU;7zfdzAa*pY-oU%>hKI?mGc5nL2 zEXG8y(&REgQ19hOB=lbi?b;MCGkW6O40rv>A^mqXW}yaV!#G~vC@8DIhfLwD3D}z+ zD>0eR;1#}9LCsBDLv?_4aeBH-kc{V~W=G{S|M#POrP>!xNMqK%Cn^PRm{GOUxm-?rJa%g;lqrxCqMu!!uD^ad8obt3wVx4vtd+HfG&cEpot;Ob!2CP zIHpTW7;DzSfz?nX4Dnq;@h*r%LH3m?3*{Vt6XBxR2PK8teRxh40`?%P*T0n?OQp%N zJ>l@5aM7C&Sf3lUc~li<|BfgPV?~80LHarlyJla&jDoL#wnxvCX?856nWHylYnW?R zW+@6;Zoov?U4#qN(ruy3+XxWVGB!3QqD_dzzx;NKg+z&qVx8-YjfvhwY@jhXb|A^w zon+yFnr{y_Ic*_UkBU^$0rINr>Y=oWekJBW(>3iFkl8tPj=*lULTef65s^$H!k~nY zUy5-PtBQKl7+o#9%?dl_A-s7Nyqw$k=*;{x}9Zs6k_2Z_=b<7H7IQnaEEwhqnuj&Vxk za|~5B$T+lK$PjwL=K#Vmvc=gxKRwP3nnoYQAmZ<=4XV3d(S!-b^#4RA)1WP zFdbRY`d0u-X?&3u0QUa#m}blE5a22w5_{_=GY7FI9xEHgHeZQ;7S zk%h;g>>`1Ymh!hP9Q_Lz)Z&;z<13q$`OheLn0ORDQ+wSfy;tS(CMneohk% z>fx%uxO^fm(l3+;?_$S)7Ud|~P}@khBAIZY996$C^@^e{otwZ!8IWeBKBw=GC<6?7 zW&m6=MO0r!v0y$C%BnEpr)~577@^$Sty`{&IzN2nZq@B5^$W41!05j|bK5}?DgABFjW-IF z%;m5jyL`dKTA2)1M=M^= z4652+qEy@=114an-&e&KwV^=qd^q^mcw??cX1-K04aJ!uH9Hpx{fQGpYM);C1w_Mcb4J$j7KL`O`A+dm{ zCBE@!6Q2)YcAu_=zspkyhf(DO_tXxqjv0v?c&G>6MDcP*+M0ukB3!#|^Q$bd+&bIdOdR=5SeP-GRk%*4Bvf zU;l3)rx4gvpw3o&KYZPjoqDSDGBzTV8X*t=3rHg!-HMUKZUWT{00eWv(=@#y%McF> z=TQlX`8YxR|AJTmo%3g-9)XxsL?$jETH0f38<@Bz$<{{EMHK>A;z0nron`yYyFUZ$ zZ&r(AA$u!E1JmI;&W>S^<91nq4IyZ?RE|47lz%}$W`-*=*w-MYL58)DuZWPu0@RbO zR2yR?wVh($C}N=s8jC`>9`gg&seb&=-iC4WN(CpcGZ^1G->aB}ul)p#)Eq&T+zLqX zxEq4E93mTS70}wl!jAnstn~OsQMpyWp~i$l1RRPr2wf94bMA6L+*VJQn^4 zJrX)hL;&^h6^j+kFqT*k$fc%UH(ryS_7HiF7A`EnFhk%H_HI&flCk^E%A`+Nxyh?e zAOWktjS#FcmR2fhD+{qpZ#Kx%>HT1mDiZ&?6@=6+_wk{5iAQq-l~%l+lNo}{>MsF+ z5amLkh63E+7&;OH4rYl{RHGKvMiv(nZt&-vytA!!<8h@K}RtZLbev^B(C zD5Scdtm+9k>aWkATulf~X6bv>{WDRM9~gZTH6@OTfY+5T(vzFXmeJ{+mV&-yWGlF8 zL)sjbNc%QI7Qr&Gzq8BN3Oa}BK&nj%!Cn0AFemvk3x((|Tb3DM&0T}JALzUF2)`cvt+-s`9bLHE ze}B~jij6Ya;>@2bA^6$U#mY=qvr6WxAr7kpTqn+dU~tes_laJwGJl@p;r%aRZnzyP z_IdC*`yfwv`en4YVkyX*L>DIhYpmzgWc1COH!1%D@gjtB4YPy{cfP_l^r~T%gf^`I z16$x6ZN*&t&OGiSY@a=$yv|^0+Q%m(B0mS&iTUS$-@gv%0QGnV_?ZST8`AeubxPA0 zx@u_`FzJ-|G6#vhuA9bJW$KQAX^s&ZDg~oMMyh@n1Ej~1ltFd~_o? za$5C5FW#WbFkC#ez8VSx!en6=zT{>RI1&Z70&>x*sfYS~tKCYK{STx{y%9_#i8Pd; z-bggo$0zyM%23-;ap@p5EW>9OU4gBq50pV-?srJ(0<=Wo{aAfI*m>~N!Pxm`D=*%( zOJe(ig~oBTCSZm8*w76^*jGO`0&$)=Ux)KBM&4J?k5$oVy5bsQ%~z^eG9?jcRI>&T zPJ^WHOCHOJU}cvW1|8~ZDJC|na}{rS0EtMMY$T-S!ki@wKfrRr8W%zy(qfGN1}rCY zC?)ycddTD|!m>uEzPE~Wlkpr&eDA+kO)QS9a?h$uK}8u2ZLc?YybrnuHo-g28UnbK zCiKU1Hi<kaBvj2xEo3j(qBLEi=z)(DWFG}J{NYG|NsSphk^Gl`zV?eY`}qDu4eQV-vZ!>k zo`XB=3f3oF`>2gfQRinUuRZszkaL-|^h$^ALnyLWkNG}-JQEmsh>mpzT(4qxw-x!5 za-S(@+ZgigznsI%`ves~%|K>hsqtL+&nh+XfoXUvwv=QMAp!pu-Y@&zs5Y$LY@WNs!UaOM`v;?O#zCg*ZdXjQ>Z*Gm|T8V$+U!;AA5BM3CvJV$XhE`TH|A7=RGW_u4y^=pvm7n)6D3@tN&_*Ec*FXnT#mG>8{NY9U zpacafSB0WILp@TCJdKzw^FLBH=^@b+&xAperrOlxgbGp&p-qfK%$vxZRTr#yzF|Hk zzU@~4Z}QxhrvVc{AjVBi>ec3bad;8j%=FQldk+?Dg$Pj#sEMWzK-$t5uFW(J!foZt zJ@{GxhN4_FE$K(k^tkB-Mmp00RUU2>cnf`_6<%?-?Tf>Z?-amji&o1g}{}W6A^#6xF*&QD>d6f6In4qv{l8 zR)&Zdk@;GxAc=feh@l4`bIOrVi$k8haw1fP&|extGdnD57ac(`^My@&{8JAnW*$Nr zTVORwCnYKZ=f^v0fHh)qbr&WGuv@O;c0rr>)uOh0?~wMdBPqEe&TC6KvFXx$_VFtChJ6vjtYwp_D1H%y(Wnx4DdL|;#D?x#-TdG|KYG2KK9 zqGkJH;1$a^ju**+!7|%;-))DprNykQX&=ZSGBs>t-Do_5gRbUPy!~xgwes|Jnm=5q4R|R7tA_&r@)7yi-s5)S5}D`J^0j z$goROEh1<;WP=k-^=g|&P+=S=B9zk9yGnBasG2>GQ92NC>IjA3aVUn(C7)?CM0TRI z^(xT9S%z=$no!B0uZIPUdl7D7&ckrIh_zl~u~OwBBE_Xi2ioZvp=kdHyUaC>J@@$E z0(0@fY;&EWCjcm&;Xkt13HL2Lc?7Ay=b{Z}cN%4Eu9d^6MB-Fuxn3kr>THYHP=kFp z?WD}j0k{*kN6bil9$p)j2u2u`d zzXe%cZr`AwmJ?93p<~kUzA?58*xbtO$QDVx&(E`v$LP1;8%F$JRQ8^YxX>Tph_2#n z+-ata9rRjWwAh}~jj3|_o079`fSM_rtEg!=n_Ooy^?6a`onIzPf=msMe1;YWvsw5c z25(FwW@#%fF0(s7I}RXwZ7YgF4${<~9cPYiVKC68K$3h=b^zPN!qz6?dd~LOyB>N; z^XI?^b-0i#DAd_ui6w64NPq0q(&gVLZ$tvIdV1f`aFRAQ+npRogpr0bv}=|N?VB*i zdOYh3;iTUo7U6JK>4s>S%P0tbSL|+)d6tCBaA`_95Ji(DwC&N4p5w_R9lSe*R+bdL zTV4b{dkg9ZFXcS$yDoSPv473_@H9vp&o}1!{1Tqwpu`%Rk zk2?G?s!90iZ#%*7;j>eTOm!rd5>C`~V&KTVx=~oIW0?2dZB&!K7@zslnIsH%ODIqG z8bAUC5b<%6+gjs+Vo@QBjmJfvh7(=C5W%hH*g=l%r8FywQ}WOELZDid6x_na0av^?f?_DMV=bZiXAf>u+W;e>x zOx$2|v{E}xd_hdk>qq&{_0X%{HV@}*H3P6?ZIY5`Gqo1e*0tSC=q@X4-akW!Tj_| zMjz-atW;LZy}bNK_r)H<Z z?GuyjV8UCVGpmL2@do&_J-WK}YypThb7=4*f0W1kAx15ps`+nmRcu~jaV|6N6C#3E zD?-D{k87^Q9PRhEMOQDs{72yC@)^y6b~4RbrEe9F*y5qyCfPerLEm|k(RVO^eCL<~ zW|FJPRHw^@latNj7cI%?#X>ua1cg1;wfF3Vvkz#CWa_cKJAh?Qno^m&X3UckqpiOf z`1tjnXnV^(_Yzu{%PZ97wSQ_;x|L>YVe&05(4Z%|yE&#rHG3vJDzoY-Bo|V2j@#!~ zHjOYFCa3Ma=}h^KQ$u$sIVYqHlyrjPX6oR5aPDUJ(gV+nCfYR~(M&g}Gq`M;Q^!Gd zfqN~NPrM$NDqX;db;S=d6#H(WwD%#tM5dIm0B4d|(KLU888w#A-s~FXTrQeQ=U=LLX}Nq=;V0ugyq&@qtlYYh9&N3mb-qMz<~@e&sIW%nmOK4o^1w+M%Pd6(Z>aNX`F-TmP*;NWHt(`p#v%BW}NSGJBemO}O6d@nc5s7LWXzmTx7;uD+8} zW#cXT^(yM~0w-J|b(VNMy$ud2;ol*nwJV(1tcXeE#VlC;cv9Nt)ZKAJi)Os&QpF|b zW$l+ZaLy9q35ACXBPv2$!|Dwr#lx9TlYtBDvVm)mM3(r&6o8pKIqKDN7i zW{<&MKWF`U78V=Sn*((Fil)VY>>(%kJ5aV=r^Tf3y}U%F(x&1pI9gAKxl=NCVdDca!8 zF5A3fforWcsDq;_s3m}Mf~c|ckDNT{!eIjM{wXcY+qIlb4mS`(1$}r-URyL zI7d$9RdRJ2E;V&UOA|+P0gPR;%k>9c#V+f$Ie5qHXlAXQ%ja?J0b(PrL%5{Zft@Ap zpm~@RmoO%LoBZ>T46{g!HWd1axOymsx0Z3Foj4-?Y~B8sTDzO0y)g_j5Pf&ezBm-| zN&hnZEbo!d3*r2m9Q zvSv+4v$O(xQeBaE3O$dkZZ>TNvsY2H1oChX_)7zN?7~^JoXLhp&Wy{i?q|QSS2i#( z@I{iAC3~y%pu-RSxp+Ll{EtfzGJuiWp8MIQ(|*1zU7WbgsoNKcZHa~;r&0|~>&e!s zyO$^av^>^k)yyfL*bJ^Yk=Px{i3Rnq(usLezeFOESgS@_fnK0drtNejd0Bd`j#{j{ zMW{FUMt4SM@=#_m=A9TgtrO$$8I|4v(V&XdIky$E zyPJCgUIYOz3>uo}pqvT}&3c3Df`N;iQ3L>8f6FEk99}dxKGIs#vP^ZrWucg;w6LkC zf9Qg?>PV|gmMPi_=>1rY$ z%^#^ZJtEQKXaeu9>Y&OQlG%&y7^qv^lZOL?&btwCC8d~}RcetA-=TFbf4`PxXpMdB z5@5D7!;e@+W;5rn+(7H!S7M#H;&Z(c#Z=nltULcL0epgMio62=^`w|aSR7Mn_CN#Y z3$slT{)4F1eNkHH=|9`SSQPR3yMCB1w9J6|;M9+84Yte9t?V0E;8a#RHSugJ_D2zo zq&tVz(;`mIS5kEPu}X)T3|<;t2E6#;&jYD1d zc*6c$-`C8Or?B`Z>#+X~@EH2twVc0rK!1d30EVPuV7rcK_J+I74z}J5(i51LY5>e9 zN0?|}uhGO-JF)8FbeMcv-f{N;CzvMc@x4y@FyeClc%aW z@9tiP2uM!!`H?|pbN-lxzKcer$1!A(T>u#`(a>8_)HsY}!{APmZT`xoM`5?tO7uy% zYZzpc`55{hU5ET^519KC!N)p3dkRnuKj>OEZw~=FA;C2de39n~pv_>qx52$kjBx+V z@uT>4Tk+NG!0lP6x{R?4D4R=^F=9ID>TFUEAZYCH9Z(VL`rabm$G<79_rFeh!`Kah z)PuPUXnyZwAX#QeE-b{ah`EnC(&V-o1|57Y&~tTK|8;v)PM6**LZyuU`+?H<2zMX`cB*^)WM|IA{`8DW z^qUv#tBdOcL+4&01j-y3+6>SZHC|%v?GxMd3MP@!xd>e5nsrhQx= z&c-!PSYy4~-9{7&y5HBU%v20H6GN6hjdz!wJDQ17`8c##cOS_V?>bIB;?vwG2gzZ* zYqbltSGAM5%y9!e+bUXbZ;}7xqn^Px;A^rVX8~kUv~85BmcXn@RvgrH4S`z_@YM>f z>Ihy-PJblEWsbRsxJ}_IrP6=Av|RubvPN%Tw^UM*Fx!9y2@4!Liyz%{y|r5K;F}c& z5%>K4xdukTO&B@~R(vbQZya!O+TFWupm{*36@2(Xk7r(4`kG~iX(zX%Ani^GEaS$& zz)Ur(+}JW`b$9O@V1d5m*dnM`p=txFdrN2?3=me6Ea4cKU{`xIw-H!VnL#t`6e519Zp+DXVu2K1n< zDmCJ`8%J=y-)I){Z_H#mAk$CWKoayp8u?H+=E%2@xs3GCl%;<_| zHSp8U$fUbzGBiw~vwFyLxzo@fE}~w6_OhqAog7l$_Izg- zk6*j{Fi6#fC_9JFhVr1$LU_D>a{Z@|;bDvVwH1~3ObQ*nxnCEtIQxn`ByK%iS^?>+ zIbhcaRBmeR#ozoZk%;?R@)qhHJTW$jJ(4=IGa_f^GZ!TZ39tqtHC|Fx2{c_Fm=|_gMK&)#*TU=n#PEO{-g8V@bAx?e9l!ECho{BUe9(D` zS4;>vWbuQTnJ&0E68x90Z0P(}6Uf_D@{BN&P0}xz=^M-+4VE9tmXmlPjZ_j3Kh&3H zxzhKBC?FjHPkh5eoZzO%l#&HyLx~<*qfv!Pc+yC=+?+8Cf7l389doa^$9E(#g&Q7HQj12`!kBTA^l)W{QaRm#PPV&bi z7g0igs9inn`DQA}FM{az!Nii~BR%-b)GU4PaGl|{H`%iBeSRI0;cl}WI#&yu#+;Pp zYzI+z*DMFEEJUjmR4A>fxBJG*CNMh5W;AFaj=PF2FM1u*I^as{w5@shYcyzz{gDmR zqKU+QQ~6UZDB|s`dN;tr$3I(oFKUR&@uL|tAuRil`_X>-GFvKdfOTNESJS+5Zz# zoO6GfB31*Tod(Xo0+R|ipTStM`3t{DdaIQPwoR7!P%b6`TCqLWD`bRY_NgioW5-|! z#ctj3tKNq>Xow^W`$lP-$H`=8MOJI@{kpK9)vq0Q^gJ6N3=G{?7?*Dpd38(3J8}m zd;#*-7vdD?A($yY#)M;qspQH(gX70-K z2dD?VzWje$=w@?v5&5wmr`eCF^)Esy9f|9SO!z|TT{Il%B_>TFs#E$r7ydJ{Tds6- zSOTUIlIl_G6qykfq`Yvuafo%p1YUzJ-sno(^<-KW2|_FZ=o1E8kA2s?u@D8`yOCMA=V4WhqghA1uf(*~DiDIwYYbsVL%^ zf`5p6SL0Rx7F@~BP#$MW@_VSG#Er4~`?KIJJK^aVDQo02(J~Ox7yiUXe-YpKyq&u) zS#4~p-v<9GLfgqcAi8R7|9Nd9nbfV~5dpcR^}eYZ%&5;lN?`wnWkSQ!=qp#QXqbx4 zfH}t-*Oyf@F}CDTJYYBDinY+2oW)j!;_^4>vpN1r0D z0%oT~0qROpO}Y*bZ4N2BLvNT0wvKHI5lT{aAEbTcEdq)P9n+yvlthwR{BmeD|KH@hT>l(DNsG%QwEjQlyD*p4GjGR( z1jJ9jt<#;X6Nn@p37;QpQCGZKj!$On02Ktj`UrJS!6&coq6q)RK)sxd3mAi6?wpVI z2p4bTAOCO_U`TxVsi3105<`FffmoEn>hAKl(zHbmpPwwTP(pqOCF}TqaG}WB`!fhb zWY>Rt*`OMHI%jizMTN_i{~`8Zny`O#ZU9>W=pOUWKe(%w<^JS2%w&(R`FaNVk?u|W zS0>n|@~yGMKc3HGR1Ke>;a8HaFI5UiScUX7{vj<;4*Z;?l+C{^>f`5T z{Nt|)cUbZEE9w)g19q?eA4U=WKNElZ=8%72Pti;I$Jzh-uh($h{_epYysV53u%AIv zDQIG4DDU~l%h#ecgZv=op9_N*zb}?9a(yBUeLjoilSmE@Se$6x^(@~LUAH*J&3{~} zf90Bdxl07=GXMPlUweM}B>R^g_#ynrCwURmc?D|xubfvtvyJ{EXZ+)L|JGdbla`q1 zJ{V414F5DC|DU7l{TFxdf2Y6JS_;VD4)|oD?R~Vm#>upzAn>z#NV%&Afg|3r(u-Tb7J6W-T448}M)(se|@~v?lw8U}x;umpw|0fs=*;#&fR8>EeZ@yH$ zlO{JBTdaU4b6CFQ z6Tkg;*y>E5qXrjZHWOhzvyy<~j1F5=BTRx4%H>q*-sl$!VXwFPjuEblhvkS?JIiVc z4%R+opW*Hf>lGlC8^}M1L?s32<3r1@rl1J1o&c^}2ogZ!t3yA}6fjxNazzRfGtv0S z>MJ8y=QH`$v!a|Wu1lK~!q>SUCI_5CUYlg8rV+wG6rTe7$?V|(hXcg1npcCmWnfTN zZU6G`kzLraDTc4h3Ct*V*}5G{pa5500KkM=zQJk^X767aNmbd$MOr0%A&2+o3}Y&A zF{$1^RDisysQY2sHG#&t3^e{3B-DP`GYU3;&ZA+_xemadOBWhfuJzIGL;9|;ny}sf zF7b)PJ@25TyJE!ezVe~;uKRv0F|X@7YSjzyKO%$oh&%&>U5kmmej#lD-tdC(*N&4w<8O!$`s%ENT?d>u z4MatQJYW5m`Z8%d_~^0|`dj_ewn=VUGESC#dZCY>`E5~GJF@ta9gDj@B97ojg&n4} z8b?AucKG0W1+^o;#C`a`GJ1vLLg530b7Q}~vlexBLt<~Vd)e-jF|40=)5iKpuifE1II4Y`WvgT zVDFD~^>DFOkG1THtj^oQ!C(}Bk-ktn^&5ahwUZqJ9xh(s*-i?rUsoz3y7gla-ef+fD-@)7_B z6WkdyBr>$-$=DjH1`}B^B7>j7_~o+-;5W@s_s>~$(UGsMoY=S0e4qK}e*ouPzC@;N z%i9_{w_14#eP2RW zhd>y`#i13Y4&MB)A9>hdpW?xczL>BXX1(4)IzM#ke1xPmx`I=t(LzogX8EUNq!HE+RkkAXnk>g989A6ijQR=bX% zMU&io=>4ZTp&KCAJGW1nw;2zJ*9ykPHv3ygEBIR%XPjDc3IAhnM18c-!C~Glmq6RT z0dbBmtq>>iPxAj&+`0clowt9yeN@}&R(3=iE$uo)qNc_vp-r(dC=_(CX2{XxQ9XCa`8gv?iakw*~CWoBTl+zeyzSlLo-~0X#zTaQ`&<}a|eBPh; z`+Z&4>-Bs=w_UG59)JYf#eS1W=;dZ%2j(&oqka~bEY!tWD>0o6yZPzdP3R*Jfpux9w56I*} zFsR^M{}Dys5D%0`Lsx75k~@rV29{rSfbHNo23qfXZW3ffc95jzkJn{NjSS9_LDgz;b@JRPMkstq%?|GT_Of1BxT}I7aLG3)mDYo{XQz|s7 z1^6PBq<LG6+$G5t%9Z5;6c}_qfd{c3@q;KG!@)pa!46eE3<*L?F5`e3ITQK*LD~1Q ziBxIXJLylR2q5{9A30$kta|!z@WeClnlhiuOu7tx9hv1?I{Mf|#PF?vv-NISGI&Q$ zk3yMY-<>Ma@V!UsTr&>JCu+t`(<-jBy@4`{FwTICiB}!SJoYmzQ%q{I%bu7u>qFTx z%I0597fT}OH0!9uQX;GxR%{~vYtn~o9>MB`II08;q}}gldfKYF2vW0oY6Hjsa=<@=ci`&fqUPHBAeEza}`wN;us}s;VoqtRaeqT0i5duG+s!1$PS1GsodzBV}e}@YP{j_5;%SGTOlWppZwLb~SZ)}t_K}PN9C<-IGfH6m=forUaMf^|>6RM1cFrzL z#Au)!37!5eAW-Y3!4z|LvLb=@9tPfDq1zHk!65BlmuEQ%zpH5GSZV?uJ%DgFYY6yq z+cHjtgA%Vz9d}B=)jd@u`tv!JmC!APJ42Q>_2kZ#zK8MD4PRC}h!W7;cQarO42gOY z(F9jSW~Wouu9~nOP%<$)kHYR$kvRmPDOs@EVzQ+>6m3)PGx7k8g`3^RaK+2O@4I3g z)7v|N^^kuO6l29=RL}d5f{TCW;iK@g^a%V>sY-opbB2sE>n;s!sNBH2po!30ld$nfdUvv zc~V?lj094Q;p&co;bBtr)}*Npu75J`-Q2x8qJw{6ky8M9K7vDg$J>d*l`YG{?mY;pad|0ld~^8rR8Bq;Y=Q_B5J@j`BaAI-LjR0pms6zHQUyzS!pxc z<{#oj55cMEUAI{-@ZRZEWEg~|-p(*^{^vc^apWtq zN2zx9-Nq&p-&+TrN(L(6pJ9=i_fcy7s(ZtX1`Jl_YMSg!2Xv%G!af!r%mtg5{$?P2 z)kycDmI4aSmJCiz_ov20|97x_Z2`WanZ;ERjg4uMcI)?&c|BuudZ@#}135!xk!H>l z14Kv#CLZ~Jz*QrkFk)6lrUj^f2A;{b3FC&ganWS~6h2q4>I!#_1<^~D8uWBCb^w&& zP&_R&v~&N@Q}#z|*YARfIl`-2U>Sg=<`aQ^4WlU9CdS~FB1(}onLWA9vP?nPXx+j{ z{4+w3YQ|+4)0FBY-%x{5*h=)LD)RS8 zbXW$KM1vz*Sqoc5epE$Xa|uOr^w!b4K#9yWk8n2BLe0IpJaQVEx_<~LUpws zo+cy@gl^}dH~S;J(hkN4e>&{HrWTDi_ly4x%CIMJU|+LiH*H=XR2f*CqY@|_veD|2 zA4O0uCPp&dEf|xGXa5qhTs?%`w(t+(!J}{&a5Rz0%$J^f2N~6`&VbkG65K(h zo|{Ld6tCO+o;ZtJ;VVt)?P85V$E1qBO4K+67vaobCt(tr-`WA14@*ajsdo9qN9{Kl zS4Vuan7d%v)F(i3gw-nz&L=1I%u45^c?JZd2?>0u_8 z`jD~W$FiL^^JWupn!SbbesSi>e$04s(H8QIrdx@>`@uZ0wD@rahhX16E#cPLJmD0= z^1Sn`x=Pcum8kp0$3y=oGgliz*Z-*K+tFs3NE>*#Yq>zky=T8~DFTsgWChM4Hm#4|~7Da)g z(k9h-z6a@Ai(=ugq^RQb7DYBMZiTkkwV7T&A)2s>+NuJlcrD`#yT1XS0DDvLawi(J zOmiw_nymb~;G}<^|LuWaj@=^r14K;@UPfu={R+*XDdF|5X}HoJJJz%TlqSPA zpTOGX_NKG-7^goS(^?&loB@fZNlhPKXwezW){1>y>uR7J*jx(I(Ht1_XdhZg#X8)g z7bwk10m&{NBOki9iG9H1ULohNM!wv1L06+}=WgnCwXX>^B<|B{u~yCg8XR^&GW zD>4YG&IJNrnhd2`vr%^q?8k;8Ka41m)rVVe?_HAMvcfC>f~Rb*>!-%V^;5ms;fqIM znK@otgF2W>Lq=QD&-Zh&9NRbHQ~S0Oq&Kk;HE6LAv>woyZXiq@obxG%`)Iz}JnS{$ zb!xGYMnL8}p>~z4uEEZW^H0dVBu`lUQ2%mqWt!x&SYf=s7dS0qU&D!80hSS`D9LS^=wV?&Dgc<6gu6itp5$j zGYAPAK=sj<>z34or1h{)XZ8+ z9DhyVt6Wc4>E22lm&H-36CSyM6nrHl0AY{fxcj16H-h6rl(sOQH*;m`flLPw5A?lz+Ra~sFlBg9jCTo^V_bcTsA8@C=X%)qsP*AW58oczW>5uv>wM_|UXjoW zG4hL-hLY8)va{c#;?27q?)4-GF6izwRs*Lz#M-JiDjAf-2SveZ`s+B+cXQADKwE%P^>u&hI)6Ra!%ww29O(iIto#`(zQZ_9 zyXVh_hLrn0M=9+--=>2Xj4kum)5DtSQ~_Ame19NI>g)HFw6^uqeTJCf)tLI=v}Z9% zF)*(l^ubj1sc?!eBaM-Hu=abEz*7xNVohE4Zn2hP5M<8@0k8r23eU_8%=xfclBV|B z>+d2BLHT2^{rTN{Au9H?70^gv&!Y~sX*zcXfpS)sdC zp)rc1#tyZ0wLVSHzTq~YrDM_{-RQbl4BwvfRX$XpH}8H~8FKdqi_;ZX`U~7nSu3}R zE=Q0Z<0%FlOI8V*A;y)gc<^Ax*uo#?;aJ|(GoMUz@dg?LWofG0Pj6t^+wq5rAgyb7 z$Mpx#`c#D^RpQ%1ZTIeKGuj$xdZni6PS=$ci)^BcDk*Ko%Bo zTyIP#(bwf~eCR|ZZi%OzoX@1o-Z#{{Amgkz*VF6q>I0UX3gMAE_GEJ(PNhEp?@0fY z)niP^j)8EDx1o3R2KL{|`6ezm&O7u<`tBBwjwR>Kl$D4GiMu-HV^`z9sNZ(is>+#r zWvPNMcSl2a?;K;jeT~23fXV!N-8eTp3zPC`=t9gGE?)GT-hbxg`CJGcTv8SyhRKHW zev~Zk;5Mn-$1a9c$o~uxPh4E7a9{~`aleMDO%C7-!I?-^Hq7S#I~e{=;TvGGpNj8U z{!gRw{Qdt`u0ad;|3!oL-#Os_xf*U`YKCmh-i_x+W;WacP~W0O`}aBSE!lJY*Z%>O CY~a=a