From b400e6736947b5d578aba7a1904f5c6c5cd9f10e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?dheeraj=20t=E2=86=97=EF=B8=8F?= Date: Fri, 23 May 2025 22:21:20 +0530 Subject: [PATCH] Fix: Correct binary search high index to len -1 --- .../c++/01_binary_search.cpp | 2 +- .../c++/01_binary_search.exe | Bin 0 -> 44852 bytes 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 01_introduction_to_algorithms/c++/01_binary_search.exe diff --git a/01_introduction_to_algorithms/c++/01_binary_search.cpp b/01_introduction_to_algorithms/c++/01_binary_search.cpp index a82958e9..27837a5b 100644 --- a/01_introduction_to_algorithms/c++/01_binary_search.cpp +++ b/01_introduction_to_algorithms/c++/01_binary_search.cpp @@ -4,7 +4,7 @@ using namespace std; void binarySearch(int data_array[], int element, int len) { int low = 0; - int high = len; + int high = len -1; while (low <= high) { int mid = (low + high)/2; diff --git a/01_introduction_to_algorithms/c++/01_binary_search.exe b/01_introduction_to_algorithms/c++/01_binary_search.exe new file mode 100644 index 0000000000000000000000000000000000000000..096135dea98c7d1e49a753235a4ce4b94614c857 GIT binary patch literal 44852 zcmeHw4SZD9nfIBGkb#6u0zt8&4mKz#gaiRWgU%$Gd`P~`Bz!1%$;X65CLbnu06&o6 zOf2`Ere(Xjb$9Jn#O<?gBpnp?UY9i8nPJL_5<4Rvj8?XsiZ>*(~iIa=Brg_RyhYkQ+Nd+O9F zSt{u&H)Ca{sVx6nIn8V{V~fm;onpzR6q9)t%LY;zPJ&ItH65oDC;g!`;3T&RCtdlG zjvO*M_n5d|j5!1@RiHXJ)QiY;GZsu1$v@|>^$Esij#F{#4gev_L`Syl-72GS?*jZG zfk@Yw5=i6Nz^XQ6H`d8@NY5gG6DM?Li*UvrPL|W3-6;^~Qe#%(BwCB(kdOqPbD;{$ zngYNEoT)gM;fy;7FT1|0i$EkJ>!3f0M>p|p5q!A~yMbfFS!l%N@)cCq5R}_$7ZRig zwQbzN@nj$8>mc|OI0>%;XWT(}3v-1cT=ab?Bs|hP?r<_^{=!AeIV4I3?8kW}&T5=- zhm)n}FI=3qDS0ha3N9uDE7x0 z;HYA9jzho<9F9g_F_xuJ&3{qLzJsz}`5LCmU#q<537pB?{YaIQtTYQskR7;P$i*NZ zWuwD^GpUqLce1dJ6gy)L=KyoJ&FN%{H7i^I$-)mpjNMrsoK$}3ijQ_U*`8EFfH6Y_ z>4et>IXH@dLG(l&qr?qHEjDz>kRSwo(FB ze+0pmf$%(_D6_J{&(T$DufUnS-omW;ysdyvO+pudNKKGQ-))7!fm0@=Q-L~{c!WQm z2i}MB26n-}QHP8kopB24g`YRtQ?)yX3hT5IiG^cuGoS0ScL{j zCtFv6{2^j|#!4>qeGpZ_&@Lnj_H+pGtU zqBU#(1}BTYzI!H>^vgE^;zFfxna1~r;L79~RHKrp!M<|^HRWK>F?lj7P~GS;ByuuQ z^9yj{Uhn9gcdZ|QnnOv%({{C!y~OZmWXH(Vn68w7zJW6{cXPq|IW;cO@NUuz0;Lec zH|BC9yfUET&mD4qL}G>9>4C6Gai0yjKf2j{*8bIR5U}>6ko&A@SUGs$gR4x#M@JR+ znUMQTZ)T6EVlxfHaopjMJAAV{)n7`Qd7&BPZ+-~!KZwRv4x$D)D@Vg$MHUS}SX)&6 z*8v3VvP)o&1L4gAVdOSJ@WC`x6;egKFa_oMA>&7p)oS0~5yvdUKv`aceAJB})^0Aa7m z-g5v~&{tj!_>W&rTypy%6M&4^`TvT-I0c5kB{IWeJky9B^nbkEeZ>CIOF$3R4)+|h z_xym8?l<>Pzzexg?V-3C@*e8-est$u5;`j%54$g}gUPt?+wH*vJaMOgt+1xU-t#@; z-ru`5`W(q2FY0~ZCX+I($20i)pcBfB`acf7;?L-O9&%`9Nd^98MUWS|7qk zu15`_ZMr>p7m7tw<)OCeXwxoDKG9fL+k=mx9yQi3s_#F3t@3KDl_J0X6GGwbra{xy zI_$@Q?Pd?b^z59q#ED4{cr4#`q|+aA4@2KJHC<|G7bvYysbM zFFWLCFCJIFEo5!k4sUYSs-R`O1!qgy+AKlQk2Ebe^@(C)TBxq>d6 z=aAIM<@Wa+yEkb+-LUa`PDoB7O-`aJcm5FrnR@I_cake$q`L|;tfpPjVGil7vWA>i zWd@bPDI$SGsec@x_Cjcz8MT3*^cI*xnLUKnbIgBsSm{BK7o-&lgGvF8) zHOtd*BOu=zIF!i=+<6!Hyp*}i$#(pX{sum?Jos+z$xwhY5XX#p>40_lTmIh~YJl)u z3KXOUjep2H6bSY`07mv0LFlgZzmL6Iz$$fIxP5O>Y04x;&~W9ssS-49yhB5hr{yqb>t%7o z(6eWScYq+^vjP{K^0xvPtnzNIiy%OKEGM4O&xrjQ__vS%`txZhsRFC)gH^))7!Y=E zK>JYqQRg4~=XzkuB!W`IEU+RQ7)^fg6ra^O0;4JRuY^$$T0$i~=j=USrQ8)Z%AK_L z?4aD#ROFsdC(tYQ;7b5KPuQUX8!a>R6o7JIAa%z@;$;sgRAqYTerxZ)G6t;wMStym z9$W91C>6MXiNK@430!d4gJ*ccW)J=V37EwSWoF*aTc1>8;Su-;=O)N^WrtQ;L(>BT zHp^cTwO$D5WY1Ye?ODBKSQ<11cIUCcAqQG)Aa=hh1fPzu{XK*iYW1bmi=Wi|(f;h$ ziC`1Pn@Kxf#a(A~-iM~6L{=%wn)RHSMA{3HA}OebZfNgYrd$XT@=t*qo%ac$n$B}% zGI;oYLVgPp34fgT2a7F6jie6WK?pAbfm$2dpQfh#m}d2KMCVjJBA+;RfUdk?%gDR~0IXSyFif*}G2W1Srgl^K8vT=;8yNjmz6m~35*Urj z3j(8`$xDCXus`dZ1qo8m@gX%`PO^WuCM%UM7Yz(0Wjb+7isR(FBX5Zu1dc{$oIyt& zIkKCIN4`(;l0_eaTIh2>J1~-z`%2)Crog+VnEmZ9rQ_XN?lEO}AotkFi-z$DYOjNAgBUYH&eYyDre5neP=irlWtZW4 zKq<2Aw*b=fihOm?N#&PAMbu2}!RaD?eqidstvP%Tw__iYd1w^U<1xlR13$!{A&O~v z_LpW-uZLqe0vFdSzp@AGsM}mzU=OZAA_VVJ4u3L?CYZ~k=RBH|&L5eo{O)==YZivX zX8TLOM9tnUn7MyJtBSQi>ZU=u2MSzVXb(~^570fwCn&M^U84L-`Q#IXNalpRKTzgp z?X1bl3crrPsth8;%p$!HBR6l*-iMN&bNIDB`@(vA z@D{M>zOdbY8g1P}^LTsTY7_8Ae#ZO5Y7@tz9uA2y%6C9FNADK%j<-pO<-fA`+EEE% zHA@LAuZ?7Y-`w83xjj*N-trM8Ec<%S^){RQVG?Zt2|5G}F6dPx=ul78{|4fwBLoV8 zcO3Sa<+YKkbbo^C^Lytn>-nv`VEIMm zPxjzSP=|rGMg6DIn&H$-pv=pffj*l71HIhyTmR3-8ps~ZLq&+0CXDn!IgFqrF?Ay>9dm zd$5Ik}-dA8k$;jLE=iS~- zrbsS0?_UpHBKtrm_hjTBaoK+>0lrD8J1O-jQoZXf;9?nhT!gvRtCT^6ddy5h`KgwC zYp=D(22?nN6?0DoUHEI$5u*C#YiQi|q$&lr-g`}^qoxbW{g~bF9J11lJ|&5DYe7h?^~7fL-w9k2>6P3FV!EIhS9ak6zES^m$UxYD2DYzm^!Ay6>W4Y zPg)%U8eP9U8CUmlWsues#FAI|F)SJ29s|ooJ-;=>UAGM@XO#=#w?T-8$2TyZ09(1x z{aQCjgvt*oXTyyozWYe1{0OF4J$_~Zw_yp&9?XFBB>GRMl4~eK_TYZl zB;+zA+R7&ie%peGJGT91=61Zr#KhkgS>&FuK>;WukDeI5yb=rGmcx-6> zej59~3(PspN!EQv85+q9+aOU-Kc?U-tq)#}X-t;#W9l+dNK5_F|5iASGvXNA-%^fZ z2KHtMmEF%^{z-Ss;g7jV?ZKJEruG@7!#3mu8{BKqAFO)VzjA{5Oo27>G1?d{jo3|( zVM5-$SVz+q%$jy7-hMJxE9mJ)y76N&w(=J5R6|$*qwus{o||{Sd~2{DYmL1Xrk%<5 z;0s`xcfURO46ZaND{m;TA%vZv^kDM#Alm0?utn&FDMwzWc%fjK?UPXL5x$&i?<+Qe z?lnNj+a^!Wo9}mGD(SyD5WyTOfSNnago4He)n6iM#!71M9p+&F&U}-9@nF7L(=3t( z{fIt9oDaT_x{urY)*la^?CmsxNbo!vElGolx>IDv96xf*`_2bD7 z1?7-`7-5IH#fO2{OyS>L!0OhhN%0ROvOuQpTj$$@^iTs4Y2;E2%{}zwh4UYbnIz=x zk7NJ`rjHa+^co%Mq2B*Kwf8pkY`wjU|A?SndmK^p0rZOVBbVy^7m`6f2@(DQdE_LorX}nK-WDkBFH%h&=C&CKCD+G%SLu%!4{kZi=3Dw#{?)~9Cpc2~lLa&4esh^U_(;#xF*h(R2 z8VCip9l;Wbvi^lgHPO(XcZSMs6rlS-JmlRM*@iMOw~7TfIaZ!wiG^6QH%vglhXi6Wy2M53O>z39Gyx zUDMuIn3{q>eGSHmtChnDDCoutdQ|zIovD)|P6!Ada8DMYsUspB$|Lgth9NNU+>B9) zkN!h$Qi?@(ky$Mww)D)ThIQ|cr1Pq$AZDb7lG_gTMA1KC`tTGIMGW}<7ebSuL-Y+Y zB260*2k)|Cu029&j1T2|B2U5YT9o-JT7^*mm5RrNn30`uCTdCyCy}SAv1*4gCwlx3 zv9Xn$k0yohhwY%Fd)qJ0@&TIy@T&;G@P3*D!TZU<5NF82#PsJ~3c4gef-W5Fa?-5U zM$=qS1=fAhN~HHXV&^^_c^3w=_sv9d=lVU7pCi}3?KraskHMsQ^OXcmP6Go4KqGI*?Z<1k~&mm4Xwh+izi~ev*;d@J$PBD z$QJm$DP*0gcA#cbA{zDo1_kI14nZMuJHYh(o3jvaB%nHcjcggVpcKtKAWxxQHUn}i z16UQYu7O20oL^(=8uHut+Oyl%y^Q(q0Se7$X*JS%hd`xlI0$HOhY2@q*4@4iGzy6B z1#Az`U_DZ+Kn1H&K+^|}&lbv~HNJ^!XbIJz0aH0kx2%fyO^qjFHEIw$-sjg+t%G>b zI!&Fkoc%2yMiCQ$$wO;i7ROu&%-mNL_Xz~`CMC7l{%o?c?R1mkerNMlO@UF&{bs=? zNMW5|8c%IE--HPxlJ;la?=(@Ld>d@hf_Pf{+Q^l9ylx6ySf?D8r`eyaGWV94u}&s0 z1#F@JefzT+%3+>N#U#!CY&xaokEnwDJHkt&I+!T)TK-p;`%l{+>IE0hl1ueA;;xYD z4WvT;)6daccgoo&B@HBVk2NXjnr*O{O6Ei{3y<>os|mqTZHwB|WcAB1>kZYO7A-PJ z6#%6O8XiK0$U#&MdEbnD0sUInuea#4g7qWGCI$khmQHQvFR()lK(3ff)D z!5IX$_t5&ZI=>DaK%t3@OsbDUb>;B9(ZFbu{VQ*gF6Ut**kU&Dh(eQc`)6`}Q()OT zTEtq-Ep!$L{$GdOCvwjJG*%XaWm**a*QWN<47%E+xsaD`?R5%4I4 zeCn)dj&(9`6noFTv2K~zRFQQk#t3L?N(;*IfZ1r8}FlOJoufU8N1&$ z5^7q$8Z~IlfHOp<5tCx80&_lFY$fmG&tF6C(_k9OhS}{s|3ZJCEq|veaDJgY1%F}9 zuWPX7C7`D8T$PoqWe?tu9JhJ!9;B4Bk-KrBbw}->b;liNYN$bKvgidV@`~^|NEkSS z)#|7+DBppX4OXT$DFu^q`$yo&1(PsnHm$Its~~w4&5rqYp*0UU9ITq*QHJR6jyKTn-4GmN6E{+p;{ z_-{$((P{Fr@KrI%;&fIk#@35gd3Kzc4{bxiEGI4$O9Hqen&SCC5(rfMtvKp56s>3& zc?t8AZon}Mmdiu7K)<#3ucDuQ_Sq*#XTQ4Roo*a* zOY7y`h%*J<2s5`lw+>cA#7jntj^xnz_wNw<4)9~des~?_E;cEd$@GN5+WQcf;n?iq zIb4Jf{+T53PdX4z4-8y)yyFXv(`Vp4ZTN z-IsxaAu=5Hpfiy_K1?q}%U%2FGW2jJ{?b7aiZm&*?l?roR6BCht^*&WQ}3ad9Qb@( z&C>*n=fn4dLGC%#e-4Iy$PV$Bh)4b{EU9JO>%N6~MDDrp<$#U+U2J}fr9N9|T~<2Q zZLh~;VX($x2z2^uNhX|lN~oK34jf7y2wxMUDTMkUW-tD{ z64RM1uH?C`m88#V2#!g_je+OMT2cSyBl9)-F#~=P^Fwf%E{qI+T|TIAk+#37K2zZD z4~72)5{fvXu4-wKPF$mN3Lg^Bhn(s)PrWWvuZz`dj(VN1UgxUUEcNP8ud~$aO!b*x-_|EziqtJl-&^-cA9LcI>F*B8|5e)al{dflg9pH{DX)$3F0^$GR* zxO#m|y*{E|cd6GetJj_CHK<;@)$0T5b*p+ktX>cCtM&#Q=9B9q&;C3%$dFIYy~N47 zS2!6Rl;?^6i+|wU4BaitoQypMzW* zBz1Z>wsgtfPN@ms@pz?{wx)JK8@=PfIf1(uFw%r%;_LgI2^TYo7&p9 zv^hGuy#B^^N2k}<-cTpEv;)%FF1I(d`y89Som~W&)0mBWx6iFp-y%D@TJG~|xY=x@ zue~1D%URG$V&AZcxYDf!V>u4SiVF&Ea?CBRsGa9nnteld4#6jeLG$9(+3lSh9l%+@ zD=f&3)ttEAf0X`T@W!?UwFey-OIhN)REv(oz`%!jiBaF~?SBUm@i2gbl20c4Gb`EFceGMK*+D_;k&@0n;657+ea3c;7^KY;Ttl#eGDl|PP?>Qg#Kf6eF1 zod;CH|1#=*(-K#&=u4J|t$`%V0uwjS5I0b9ishB~yenlQdt|9}k3SoYCX=tMPqPKg z=91K;)E-;`UEGrp2FmJKCY}HEqxt)#)0HwoG$=gge&P8FvAh=o|0yB zfuJje`^Fj+(WeO97D!LThsx=E6SxJql26ydrAtyafSdRXG7s0(=P;9}a`1cD>`F@w zSb*6$B`vjR0E`FItOY5}hMe%xt*EjAb;-1JOe6>O9g?FExEpXa@+nK3Rhs6gN}ENB z^1lUXsnC`)rY{;8>D!FD2vzZQ-D!?8NL8SsmZo&2%_@P0oQ4}E8WEU{`{xs=z7KT% zUZulrTLs&Kgtat92(nR#ph8!s+`;pV`q?R*=|7A{zfScbZ5?dsN@?K;>ygeU5`a%+ z2eJX3KG3+0Xc+9xSR+7rI3Gv(S+%@}+T%-TkMxJFuC&ZRQgPabHEA^kX&YLmq-8?G zbhJ;ZYY66gnSxbgS{2I7Mf_4Q4hoDxKK2yOtmmWAACv#yoo4$I@p;(dN=pw|3(|7T zr>B7O04NWF@=%)fHrQ|?y=H<0>2>;rXp~|ekDV@VoC)iY3{=PQVl?{KRHroNd*;$9 zYLmKBy3|w=IpxEcxKlgS;M|FN4OGt^s|SBDm*}l7;%_%ljsW-HP?zkTV9$cIDodLQ zhJq6qY*~74@ zqwA0+J=FGsUj(eAxD)LK4Px!(NCU^C{?*A|2;{#c7WAxE@oKLUHK@ z;5rT>HrNC%AM*;-*x6`_i=71={|xZEUyVlJRcUj4HP)Jo;?SX#6F9VJ?)-5yDyjHJ zA9PfXalw+5Ek>W5$RDW>k#7}(_D2+)c)Me~)@1qDDFX$AE)n)!DV8d;QMQTbI#s%7 zUW-QY##6lgO43f5tI|#&Sf4VRNa!syJ|dgtO+TaokD2M;~{{ zcWB|K8#wt$6CWNwSMiW{yN-$Z1&RxS`xI~~c8|futV$itydpvILk9kF;9pDla9t3j z;f}{D^4T!T?x8a9)yF8Bp~b>{aY}`rA=HW5k$i(r`Df86EsP19!9VysfB=6v{<~UW zYqzf1BM+k=?qKXt9PDYp4goeC2g~^q@_?1$)Q&>H${xbpBn~D6wg#~Aj;(<2!nqe` zAI^g~kK;Uz^Fy500Q?o_T%0%IT!pg@=Yu#O$N6oXFW{u(2(GWI>34Ab5T`lF*fg9D zoQrVg;Vi;gjq@&?O*lJoK7jLKoL|HFcQ~KI`CXiSIQwzFit}}xr*M9N^Bhjr!`Kv@ z^o8=3IIqJ=$1+@N)U*%RZk%7nxfkaloWnTNVNW{#r|bVyR_OJ4Wp6=ei`>#s=ks_Q zXg!9VVeU4pJdFjjOHJ;rEpk<7djr;W*nCqFR*wpN?Ok4$!_!4Aon3NKi_hyq_~MWX zY_K8#8%#x=UT;}TeP>o7uk&FgXso!|mNIYM<^(XywUo8jfh(5;lFC+(SFUYq z=3E-xTN}I`WCe%~8?Z;MHNGyeT~+7vd)bRtb>$0E$gmb;Khhw4EsVB5k-Fs0Mt=u3 zIH6Pv*0p@NTacuUUb(fdrLC@WV;9?kd~3bb;O~@L>$c(n1o9n{)9U2^-D2CO)K&)Vv3ZRo(a^@psTUV-pqD_GFF zpU=yFV(n_#*j9(h`7f<76t~mcl=69Dfj?R0c3=Azw172fGxTa{lbi5qQxZta?O;Ov zcMj|_{(>lOA5b>lQt2B>(j66^c3+pfs;Ju2?vdPxD=}CLyT?xD^0JopE~&n*%e$By ztRUCD8T`7&D=QRb52Z_Yc;v+m?S7dBMA{3tEp70~xw#F^b)AyjS=STFnuC&c1G>T?^XqBzCh`px>}a zWx?>6(&6$r7G*D5#!THc@KY;az_6OAq#!p}JWF*fXqEkK-W40YZC*@xk*(`&XkO8> zWZ6>3f{oh$%0-R^+S$aV!E@RLLK(+`rndG4U212N!%~kP`n}B9>a#u5E#||UZmgH-1+vwnbI9jTeryJY-^_cFO zO_OLE$Sm|}Ey&04tTa9MH!+9l*jp${k~-v0W;#x3WE#NG^m7u!n#3oh%=9`H*^;Ct zU)@G#dV|VRk;8o#z7eBbI;w#c5jFjS0GX)jZ^GkpX8I-NXC_H)tL2{?p0KuM)sUnD?R%ai=mA`S3;rGrvo3mQBIb z8Lta4^Mz5)1n$qX7h~Dhy1U^+=1+A%OB(_HM1T}Y+*_I5CSqo`CezCV{N`v%JMRDR z3WOz(%Y_{NGs_AsMi)(DLRR5f`m@tK~5n>tFWC{NN%p{YTjJulVp~39VwRF zEZ5ab1Z7DJ`#^G%^#%N$`Uw8~7-t&&0q`g;c7g1@hb1k28~I7r-{9|5QtcuV997^? ziBXk0+R^SXeA4s(2pm!1y+;SXbPQm#$rken?)B+(E8MoRy+f+=ZDdxG)OJM}!&ydK zJHJh)GUU*w={}R0GCI8-5^iUkTDD5L61`Ny%<-_r0%nPaEfX+nhOZrr)LKbA$0lX? z+d6S8?roH)lqF|u=0Qf}Y#De@1~=G{Z891ja@j0NjEy3J{BLoYWGzDbS?Jy06sXqW z#rry3r7kup-$aNic(V@w5{J_*txz2a+)i)2m!&2T+z0YWbnl;h=#MZ4OCsLMFOx~E zNp0;|(b(9=k_V|RY|L^auyr~>?P80Q`}Y$Kzj&=iBL8K{2Z;bn5}BdHRE^n)7bUsV zS(t_DO+%QaWt{d-sR1{kU06s@KJt%Pc}~K6J1qGpLMWfNjwQcFX)8K?OOq^ZMhHv( zDM4&11mh5TW%4k=Qj=Q!J{d17VaXu*=np|IT|n@<4om(Sp=2dBwrp;}vPSZ8DxaIw z+P=99W_X=c&7<6X$nmJ=O!A?7(YsGwu*C_gT}TLC33hC0XUV@HPzkS7??X%0LGqIX zE2HSG0^a;7*i>-_}2tkm(mVALS z$AN}*ndFOq5!Q6oI~{DNn0bYCb%@3n2gt zCS7u?tjb|BQOz@23E59AvG9_!S_wC#T4d!#A5BL`kEfNy!J`}u6RXUGzBXR=X{HK9 zF;y02lX)34WfF+@Pwp;i=@edS6{UVGYoY(fm#6S@n<$T$GL;vknljOk8YQ`IlebMW zw82!4kgg(NH}CO~>>LU2GFyIv&TS)WQSahC-pVZBMw$c3!8p*&EI-nKnW zAXZab;g&oFCGNsn%rfF&Rj%rqQdgN&?JkxI-Bs?2LU%>MT8sjEEstB80LyH|@>G>! zISrIN%%YcQb&JYe#hi_&##L6vtU5+{<*GF-DK76WudH4xm6v+TT{Q(IlBh6AM<}X= zOaeTLtg^V) zE!BFc7$$SGG`-keRhm$2*Ne$sWo{Shr0c+{T2F~o&TY*ybTH8`LzAPFP1C`Jm9_aA zc)AYOuq&%rrViDR0iB^kt6YVWr=+sFMk=bUD5xo|tYDWIORL>Awbd0KcBu|7s;sS+ zZmUIOmz9>6*07m+5t^%JwW}JkR=bPb@D#F4zPrL*R9XO^W|!%xWd&8L8+}0sqVWo0 z$->g2wd`^oOvWm$C@6Fnuvt13E$l9KS4)LOsNv=f;9*zj<&{-6lB>9uU8#dyt13$i z$?j57WwqogEUac%>7|~s%GFXS+8uw&Z&*Yv!5kA5FJrUy5$_fO8iW(2Q zUN2tdE~u%jF1^Do3D;xu^|E4k1iB>;Op=GRL1!sr3v>(u)>dd%DXWBApgBv+;X~OI zVR^t0{Z&Obb5M$^E6X|3;&G8+*j0E!f^O+yOLPno)eY{3P$rPk z2upQL@)Xe!Qar|u<6^`JEYpj5m#FfT)E4El(UPSTHFMtQAR1eGg#j~n(Xv>}-lCVN@o#l$O$qgTcB@|GDqHPZ z>ye5uXkmzR0Rc|UoH{~n1wwrpb;~k$1#{^Io|4j{np~EzL+)@>r(IKnQCkwcDhgSF zUXDIpUI}}sosfbJE7XgNT%H=$R?Mw~vrB$Ua2_9LjmsC{N zz`9kg(rOn53Ra?*XfptsV~DZ5G_FvU@pc{!*lmd=C8c6cu~IKm6(aMoG94^jwX9Md zAU&*HFC*t%Q&3Wz&nk>SXq3Y$br|U(JdPq4tI|t^i>cm-;em>8A6s1HDg!4>rFdY@ zFE3@)I*K}1fqxd3@&OP{Ly^p*qX;{2&tNq=SZm7LRb$lZMXtizYSECwZ`dlmpb~Sw z(jwkfF`#)W*lNA33~i5xfg@cymV`+gVnjE->dWx7h@_fE$wW~^QXbl?vVs~ zYm>LF0f@Qg`$1unwHkkC;DNT(KwtEzQ|p_P)?>H4jEYL(nk)m;5Yn)aF6N8^x>z#u z>0-_Bl+raRqmW-GWng##z=Qc}L0M&fz8l^k0Je&3NwT%Yxwxc zNl)V#JUKnXy$bxP2G3_^L=su40M6vW2r-*kcA$az zEm|j1Z_v(zJ<(pbM$f0d!N4r^BpHbSC;rHjWDHHxCH&7F&-#EM>C%GvxvW0S%x zuMjnIQjlxyqSe;T65ibDtb@0;*Vn@<8)IzH6F1tZ@(g_iiLaaTMZM%tZ1;QtE{Q-< zfcXR_h1@kt3kPV%F0Wik_a0^&dT3Zh9)sf0vD{-4pQ3GGrfhr;ZaP0)} zVyye=z=}$^p$iVLg9^A38bD%C)4Um~AcuIe?QZ6lIq0 zBb|ab%i25eo)QKgJSt$5M@)nQaD(qY0r>-mBscln8u-JgDc41TG0B>Q2Y{E_evfnp zQuJI#qWc}(5+i;~Y|6q(00USU56mIpOsbHQHaW>c`{~cThH`e~ouWMN8bS%hE2YO1%O({30n2^P9C0J~f zDV@Fyuc%M51E0{6FNwi1zL-p<(+PX>Y_OQJI97D)WqH^aIYk8|l};Cc)Y)LQ5ag!L zFkO3@sG63<+1sxHg>);Ip>(s2Y{{n&fA@u_N)dNIO zpC8X|K3^=9jzOgN4*va0K#G5>;qxotbxgUjr9Hcu?1Utq9EvpFv&92jk*24oB1KO` z5$=$|gI9W>w17Xis%w+G0K+3odXEAr#BWM100}BUR(s6=4^$c3Snpdv?)R($*Vi4^YPN^cg3A31%qAdR1GRCxD86_O@ zVvC7Btur3k{OuC)!=0Z+(G5(9HWVK4`jA|Yy(ZeS@h)@y-BgQeb2^+vi2tQ*35tE~j$yiBM*=FoJH$!r>b zfO!-3_TwZ97E>es5=H&ce)*LkPy{#)dSP7ZeWbTSQh}2ZS0a+xcQ@eMhj{yFmZu*u z5SFKMCBaI60F>n7lnI4R1&#w(y)CW)WCK*-HcX(v7^b)_c=etYql)Tdk|Z}YNjYH^ zLev?%0d+4JAdP^`og`{mnASRi7g>YeB%-$%^+RhNvZ!bsy-Z7Kt>XZIYhg+hTC;pi zchf?xdhD9bBQ|4?EFcL<9^#rvi(2Q)0E^c7Vyu3Af;@q?0wW3*6Zr&5rXQN_h1?oM zOZ+--){Py>n3e%C23gVp#SM_f9iVK0EKNsNK%BI!l%119a?^f9x}D2_K+qWF8+{49 zXpb-h<;A`PUc*r3-{V!2z^gfdS91cd<^*1cV!SkqB~oropxl^1nLN*+*V4T)$`e~` zU4j-H5_oM$;I$!v*O&hTyc!dDtxMpwE`is&1YX_$0bafYUTYF~tx4duCV`jlb9j-j z{{w1tb6yVI3=_n7Xl*KR;F%`c>jL|Ok2&_Dt^;otOcaqcIs%92(B2kMAnwqj#9Y82 zw%WVn5Y*(0sF{PCkBN8@+Awf7XgK(SNJPYaF^DFQphLVKM=dB2cW9A~W_2X#c+p0a zc|OWNPv&>YKB=nAoX0sp_QfEYJi}Z<;`J`D(ByH4#w!Of!HXm_9@+S1@T@h3^r8l@ zEo2@S$3?Y?!^AjcE~+^pj_m8oy5o*JXtbtr*D_vICmffH)0qf|cvxUy$JBWH%m!qi z0fG(QSyh^bqgkw<+mN_li*jSE*DU4)2VpS>Qi;cE)Xaf7xJSiCy|bJbQBHx+&o)%k zC~p9CqITCtw8wx00-*D4{52k$7Hk@ECp>MGaVGTlDoBa0s^cuKLKOpKX$^!Ckcnfa zErC~F0$SY<$O?V;7s5|94!G{j&c^1<@;V+HH#^XU12VDa= z#@UC4`DGOc&H$Wy@RzKqADW%hHQi0u>4j=a>+i&Y$XSdeIF{D#KIBBZb8y0+$5eUn zJ{9OV@K*&Or5*pIg5c!9S%$wx9BsyU3*-*X83_5wA~zjsrNtJ~NR@M58vPmK1GDFR~{d?*l}5qJJgM!>PtID0g!E zI6ilb6FAfsTI=fk5^b2MH(|d7UZ-Yjk%S;e02#hogJ|uwFV^S5lX(0d^6bOlEuttd z2YLrOnhwbTq~8GfA|UD4$K%kQZHEC;49F8PNKCJ5sTS$=HiX7%e%zr((IthD$rvH8 zi$yIB$C-dbJ2o3?Ey+v3$xOgmmVh%Q0cUXn4uugTubc#&bI{L-Gd}@`cCI$!%uT>K zm4K6#fb)6+jw1o*)dZYb2{`=;I5QJ)`Vw$56L7wpfRmnp^VC?JrGGaTvc#59>uU)( z)&!h~$Koud-xxC3d1>cZ$dXaGr4grTEY8xq#zK~yO{i6!fD=x@p>G@vyq3^Cx&g9u zQ3B4J2{_Xda84xPn8)HQ{SZCVz-tN3ybX}0?~KJ+JdB=dz)7sNb{5S9BP zvXg=PlClKvO}J}YRFzO`O+u|TV`W}kGZwO>W^An+3&-9?E|wE&$qBXOSS`}MA6jZr z0#8QN&2je6r&hx3olw{b;G8l*MgY+)CUB;}#@cu)AeRH;RDE7R7677+_yV#55IQI) zAZ38$7;4=K$P=pnKti#F4(m3^b2o7ItGWw10YE-AK)wb@zoFJY0P>gthki=$tO199 zh(sG11!bD|RUt{9ARx);YTBx-fLscQ7M}$qo4O+oT9Xlw6@X}CrGQielB2ecfHVQ3 zjbGF{V#A_+1_>45Y%o~tNkELP(+7w)A0s-_R-e?sBNo`H@(cin4q71>+)ok&cS}0t zBaY*UgQUR>Fi0HaIx-9nopN3Rq#^-w7a&?x*Cf1;--+sU+JJN1&|VJ#;xOp`H9$@n zaJ~fyDWqPI`8UEb*l-Y#Whf!_gzmov@*AX>B$I8OqijaCA(50FuV%>61IU9Z;wp}7tI ztK9#f;^@3C62#E%)8V#Sv=O`(01`Ivx*3oc;R>X&z$pXdu))rE0P=*PRwp3o1{>0E zhk<#V|NIRgg&-*`hIi2TmRC*#TfHcNxfgn4PKsgLZP7DWoV)=Y{9g7a# z8s~tcLnL+UuB`^{DH!@vV{{1nGC&*#$UH!r4Un4vnG0Oq6UqT$%o)dh9UxB_cr_7@ zp>-YrWYmB|zq{)&K>h|0ZB~i?rG7}d!GQBGz|rPo5ERF=fY8d4F5wYCjIredK&lLM zJ_h8?SSw3nPXit$bU#d{1uYz8T)}HPAXSDIyc&?j28-naf+a9sL)5wjkYNM&azILA zbnq=O-wZ7$h9jb19WhsZOh6jBEaduv@*SYFi__5{&44t==urJmKN~Wz+Wbf0{D5!_S{wjmnL)y1fDlQY&U=9D)qPCeCT~ql9^f+zgwfVX1g{K0 zv{{^hTo1^8;L;c-Ah!ZSIh|JxAahZu_kspMw#K*vncV|Ovq9$j0U=)%9!^^nHd1Us z&((dt2RM(%=-}IQzO7%$d~NoHr)b>H9We;;`X*}WGa`a~2M}#;EVOtL5IS@%&H|!6 zEfqMXsb~v>%$EVOcfQ7*>SqBWp2#~?`>Y3q)X*t!2E-V#cXAwO9L}SF(3qpw+5^Zk zgH^xJYsKT70z|Wxka+}<^jIxPY_`aD8Du^W99ngRVO5!@;K`CWpoNK6WU0(}Tm_ur zSX)rpVn7_YY7#JPEzDTA0cRB;Il$3-N*f@y1@Sfv0W#Ns^Y?&c#2|(VeR!-xssPc}SA|t2K(rnpAa?`un8B(tAlkiy zzzG4OJ>L^*j!!iQ`}S~7*o~H0WjA!dO0+dCAJCy=Lx*3| zKC$C$QH&4iB>Dj;?1a=vujd*;;{7key0=Zjs|CE46Q9@sB>V7%2i2jBw1vKa!h4Nd z7n=r?aDq44z?kDJ4YBgZmQKFkR1DDGff2ohD=#Qu4$^1<;1jSeuL05t ze`zx!$zGq&fYasmZc+h7)vj{4L|+F>BpSJ~ni;b}FW>ZyFCu2csd)DgukK|pU9#kc zB}_a~jG0pWkeIM22)DFi2W8rlTHl7+xr|B14V#_0OG$?6T6|sxp{hLY+CutzvJAUt zsGqT@l=Kah#~~`1#r8{vV_`v#dP1j6O2%z5nHDS3%pE8P%YWn2)M; zun%=?i)?2OlROh|T+R7%dMYEnKeh0A!DdYKK%d~hFxS=!#<8u8*iMd?RSa&dE@YyU`g4q(W}G&IZLw**wsk%Ap+pGA zHu5amcT9~W!UtlTo>QIpZSyGzsBV(jrhI2|$feRWdZM^T!i^B=XysIpPKb zY7v-O({$W0JkAs%_InSpP&;nq{M=xRrYECfHb35PesHVAeo2D+!=LAa+Ca-AZ2UMY zqLZwf1y*WB?8ryxfIaj9m)g6Gp*ArS#q*d@uG(B$_41gm6Q1 z)6J$j`>Gi;Gv>CLaH9M9@oB;-z}QhV;fGGN4iq>3O*~L)vm~^UZh5_h;_sySI=Xth fOC19H*-$J?990Z65?LFN#u|0PK*X)4KDqkeu+p>q literal 0 HcmV?d00001