From 06f5f046c24db17ce3692ee2c969705c5b139bdc Mon Sep 17 00:00:00 2001 From: anperederi Date: Mon, 20 Mar 2023 12:56:22 +0100 Subject: [PATCH] ajout du test --- algo.c | 100 ++++++++++++++++++ algo.h | 1 + ...xploration-algorithmique-dun-probleme.docx | Bin 443013 -> 452615 bytes 3 files changed, 101 insertions(+) create mode 100644 algo.c create mode 100644 algo.h diff --git a/algo.c b/algo.c new file mode 100644 index 0000000..2963be0 --- /dev/null +++ b/algo.c @@ -0,0 +1,100 @@ +#include + +void algo1(int tab[], int nb); +void algo2(int tab[], int nb); +void algo3(int tab[], int n); + +void algo1(int tab[], int nb){ + int echange = 1; + int i; + int deb = 0, fin = nb-1; + + while(echange>0){ + echange=0; + for(i=deb; i < fin; i++){ + if(tab[i]> tab[i+1]){ + echanger(tab, i, i+1); + echange++; + } + } + fin--; + for(i=fin; i > deb;i--){ + if(tab[i]< tab[i-1]){ + echanger(tab, i, i-1); + echange++; + } + } + deb++; + } +} + +void echanger(int tab[], int i, int j){ + int tmp; +tmp = tab[j]; +tab[i] = tab[j]; +tab[j] = tmp; +} + +void algo2(int tab[], int nb){ + int *cpt; + int min = tab[0], max = tab[0]; + int i, j; + + for(i=1; i < nb; i++){ + if(min > tab[i]) min = tab[i]; + if(max < tab[i]) max = tab[i]; + } + + cpt = (int*)calloc((max-min+1), sizeof(int)); + if(cpt == NULL){ + printf(“pb aloc mémoire\n”); + exit(1); + } + for(i = 0; i < nb; i++){ + cpt[tab[i]-min]++; + } + + j=0; + for(i = 0; i < max-min+1; i++){ + while(cpt[i] != 0){ + tab[j] = i+min; + j++; + cpt[i]--; + } + } + free(cpt); +} + +void algo3(int tab[], int n){ + int i, pos, j, tmp; + for(i = 1; i < n; i++){ + pos = rechercherPos(tab, i, tab[i]); + if(pos != i){ + tmp = tab[i]; + for(j = i; j > pos; j--){ + tab[j] = tab[j-1]; + } + tab[pos] = tmp; + } + } +} + +int recherchePos(int tab[], int n, int val){ + int i ; + + for(i = 0 ; i < n ; i++){ + if(val < tab[i]){ + return i ; + } + } + return i ; +} + + +int main() { + + // algo1(); + // algo2(); + // algo3(); + return 1; +} \ No newline at end of file diff --git a/algo.h b/algo.h new file mode 100644 index 0000000..4287ca8 --- /dev/null +++ b/algo.h @@ -0,0 +1 @@ +# \ No newline at end of file diff --git a/sae2.02_Exploration-algorithmique-dun-probleme.docx b/sae2.02_Exploration-algorithmique-dun-probleme.docx index 3237bdb78962e40bb587cff155afe2dd1f3365fc..6ac428c6ffdef7a2bc40294f802de92492fabc76 100644 GIT binary patch delta 20194 zcmV({K+?a3g&T*^8?ZqMf3^dq_3=Rf0QYVJ01*HH0C#V4WG`fIV|8t1ZgehqZEWm) z>5k(_lIH&f_8o+5U@!w!Ch5Ex-I)WPy6;!<(yzy6ZnnSqgdmYJ^Y$9x+l;xQ%m+bEHbDRJLM>5)2lj}<%!EgwEy1d*pD@HSdvo))ds@I53PYKfye zu9NH_O`N$WqdETi8#scs9w>OE`PCFy%nMA*CCz&(!N+%Lf8^gC>%V`fk66Du)Ia{Z zuMyqS|3ek|XdH^3W0B=TSpEjZxYR!aKViRmjtDVeRjvS1ypmm&3=aW4CK4u2C7D8+18F#g% zA4Hn&LXP0{C_xP`6(fLtLPbHpic4!-l%ugOAsh4Ve-reK^uXMq-ywWP-Gy4D)u2)W z9>)Qx@b8LJxUM9q6lZXblQ}s zTNDwDB=Uub!fqj?aFFa=ICOWJ=6-zFh3zjREwnAT96E7g9hmb|@9?(cX72sF_`|cB zd0z%l8TL>C$?j0`I3Odx6n*|RwzRYaXG-E&e^DuobZBpH5IG5GTI3n#QYMTd6Rb=t zmohnY^C_8JJo!yzLcS~$G(Yd+P&43k3L`7FqRe{tX^=#zk)#n+PWXS|`=5WcN*6+c zKhC=>%Yf(bq8HDQge1^Z)|}`urNiiiK^nn`CNS1k1pSh*7%D$OgXEVI%e^1F4>yb! ze+6V!mU%Q4&PI!sd7kFT)Aaq;(RyOe;JCsOjCiFV?D2EiqC!i`({tvD77s7~Ui$H= zp2mp-O><$nZV^306F{UD?)wCB@#NbDao?S%S*1yylL>(I;oOWu8%J=0@bivYH?~qU zC>a5oy;jME3(T#P_tV4Lbh!?_Y%fZoe-(LFl4yQX`ux`tlyBlh$A!&;w`kHsM#8}H zlei?5tfVA9*cJF7*0KOrh@BUW%$Zn|Ph!c6lagi>{sHs`N+xW?NUQ?)Fs(3kiiZ4B zoH`le3vm*q)-5UwIG(~uTK)-CnB^3e6NoEAN3sBFFoWjcZ^`PL3L_PU4qj-be@O|t zq><&DMZKdsA~+9LLtdW&s{~GhG!%LwP=seX3ah5>L6d{DD7?Avae9~$!KF|0g}$3b zv+*r+0|z3I75d8c{6o$Sz{3TfV(_cELDLGLN$TgF8&cqfuC;ZN&%dIPGi=R(9+GLr zr@-R2v1DlmCwNx;L1X!ZmqbVce~hNdD=&#=IG~CwDm`oQt0Ie2@b$Yy7HCLd6HW{# zKe8ET198JRFcMA)#C7~hO9Bo6IJu^%qby5s;z@VUq;mPBkjk;>he?I_f>h+szrr}{ zXvv_#v|tQ;^d#d#UrlGRfbUqyq@F}p(lW~^B~buvW`ZJpE#1Co0O4ZCf5=Azc#{ny zMM)tG75b9ia~uuB>Zjy=`J|BdvFNFYS|t=tQql07M~@<46@kCh`)?iLgIo^s_k(T} z1dGGy9LtV?C%g>rG~ciTxVphHAEKcxuEd9{CPEk}52-Lf6uf0P5Gc+o{c9TGge)OIlRuKAMX7V`>@yBp*kxH7t0SQH?z z=Ez}TuO&)gfP&m{^uRKmLUt5Gkqie%tLV@JU!`r)%I;oa!@Dqu9i(y92X@sc@IJmX z0yp*iLv{F0XR(N_kB!&Nz#NZtRd~X#(9G`eZE@(AQNC?-rA@gfs+>NbyrY^*)Ep41-YcO)*H4z&n(h zfzgdh4wCM>lCOEt8>o5O(kj7QI4=!IW(2(srzkT57=-)CJwbYF{ZfJh;|5FXpZ>HJ z{#^W!Q57dFu&w3ie_x?X6d|ujOJRdhIMCfe7U0N{(atJJLXM$Euw|s2+Fc>DV@VS# zOMJhd@(ob_0YLWy$=3X(CBz{V)q@3px&7~L^^BCPC0Z$s9%HayCKWmb_5!KFtGn=l zEqL|a)cmaL7^u(a28!bMQG@%&5i4j|9&x6-PN+Jriv)_Ue@oGw<>|?UJQ|x;dS6B+CI3NM(zff&xNYWT-n&!%(b3g32 z?zWum-Qh=dJFSse!O;Ehf<^4m3B+rhL{?(h=yC!3*N3`!sPpik5XPzh=q@gnRqbxO zh&=QgvTR}Wo6)W&c=mJU<@=!=r%OJOhSMOgrvU6adxPa5OE?3y$~qG%iU#wzwB04@=QG&11VP2J*~ zkR13r_XJ$7OW>Au$?;)e9644R{ZcZt@UV>mr_SeJjY#v~yq3QoujP-S9pC57FmKMx z3(m|lX6DVA`6_4TX>Wi6G)oBTbrOLrQ@DsifB5h82A)De7?~Ai@@i|4f?f#^m@35sQsNM{ z`|2%{KxPC=zQT!ZS`fWMZi#1Wz*U1r_9Rv%Rrhps=$UODe0#jCQ4{}9c=X@R4O>nsUq-e;mJ;K73!0fp$sWf{Y8hcNSzkV@lqFjMoS< z1fFN12XnRHE4WNh_z!VvpsR>WIRD6TQ)op6KP0SS1eQ}2@hXjwB1DO1s2}1g!WCFn zXz5C-v zuL5F-SMnX@;S$0x5=N053>CM00QkR|NGs zSR{CsAXVbBj}pO%g&X^*MTMeR;UUYuXz}=R(co{N-12-B@l1~0=l@R9V=kliays96 zHVgW$;xX0hy3Px2y^vdTnU3^Af78!U{%6ZCEdt*tToyBh{*0$TAgB*pU+}?kw+ybB zPK=Tqkve#v{|49We>rT6!I26NNtJQQ&~D0CqeYq{Mf{fBLm)6pF|Qt}(&dvvm5%*> zYJzeyO#pDceDNHPaGr}6ukzKp(aUq_i6pki8ja)+mst3c>!7b-5r-T(e{|DN(Kn!w zr+DD|7~Mu{fCeDH(_+Jc4xWI%A8wUefghlnw&2HCrA6&{f3Nm{xi66rnTs;C*?3=O z`R_-A;}j{{KARv<%HR*d3q z2k-GGI2ZrzmL4g-`BU`gf8Sp+VhY7_>}g&3iFB}t6u+o?Fidydr*!XU>HH^Ozp0Op zwehFv;lKRn4XYU;F|r^PIP1A%gmaR}6kqN9LZ=CuqRs-EmzTJ|o3-Wp`8k2Yufm&W z+zD=CMZT6;QUU!WMWJK|j$xJh)+U8+PW#_Ie=C@oB+*wNe_k;WmzOzCA(78= z4l|RY1Y{r;UqE?9n3-W|2C#p5eViHKEC+~}2tNXw8IGfA>HrYkf-(af6rx8v8>ggQ z1U0t<-#Xl#<+wbgF+lb4(RbKVs1Ya&tON=$_9-kD`;EcaZ}_r4Vm!XfV`Tc^1?+<4 z7mTC3uL0;DiT`!x ze=mVUztJT+7U6&^KMdKo0+yZ@EeoA`O~~>Q(N_R1A53&%f2~z${dCP(BLj^#0zUmE zE0)4yZ9cPsjKr%FN53m(?o;!%6hPHN5C3C}!_R-j04Er9Qr8ZxsrM%4PSay(_7dyQ z`}fd1Tid$_ll|w+iI0a9-4&Ov^=B^*-Xrtzz94fKZ&EEfmLg%k53L9($sJyl*@Y;s z3XAG!5rLhtf8M*+BDv$k9Gi%@jTnefcaXs8N zn)Aw*9#-sZMR$k_KIl){!5(8dKjm{{yH;D3_LAA8y-kzp3n!|0OwSl6qO*i|Wl+yW zxt4cYfAvN+th!;u@QsC8UG265FLDNp*}gm)_>=C871Bk!rkM?drG*f;<%pCA^K)JSxNL(R{2m$hr5|5(z?UwJu2P>b#lp1diV~mQO*65ZkW>4 zZ8TSzG2wXfM0GIgY^J%tr{!qrSCjg1+lhM%f2C0yva%-+Mv}J8+5X1opbI^Zy?%?g zh_TnT#5R>~X4x>Au&c~jE%`RKJ5jC2Q_E;>@J)FlGad)WMaHnaB|IKQfx-q=44_f0 z_s}RdQTddtyLz>iHT}AKqN-Or>vc=rtb^D8HMa#F&YUq?#cqI#~u{?9U zf0j1EXFFmM5iP1Kw){vR=~$1aTx@~aEeCA+XS|MUMBGW3QGIEa=Z?HwESj9PR$X36vsMaR zko05{$Mmj8=J~9RZvnT|DOxal@KH#wf3R2;i6O4`*gozL+sc?+F#*4@diy8<&Y2EO z1VE`?xyNZhUxj6>OdOl(DIdFe@TMBg>`dWPhSs>&bFb50ap# zz)=WfG^5ZP^J;zHBt|~Ra zM0HXoh$=2`6{#gIDY>#wu&gIGd>BqNl6KIvy{hGrUYD~%=t$3#+Gx;@(&>I;;PXz+ zGtDraWGq=u)$mNS)UciVLpcaKBi89|)5X-=R{UI+%KN@43bVDon#oPpU5qy6jTQtJ zD>(Z^k^?+d^I52DSt(2%p)!jsfA5UfWC--(c*#_^f;3bId_~1}rln4IUXRhtfzq$- zo7%z}xvo4hvHfHNra`h+sA-(Y1W{X*SCW(x0iz7TnOy7jWffPkfURp{unX|@&WXlC z*woaZCQtX}Ak|2g%ty^ZuVbp+c09%UyL6FYi?lu$+DnRW^Acxow)Xf$e>Lv9O-!$B zz2-#U*J|6=$QOz7bVsL})*?M_v!_? zwX&aQ9IvDamP7UHVwjMNy+PhmR6(ems0soy7lJKxr_s8xTA&+w33XRMmPT9~ek+?- zcv6Sf!*r0|Zd*f6?I6364Z2&IuJqHUiU-?pc%ll(zBE*9qtld=e_U3Rtf9e$F<7(u z2HR3gc`D^t8T09ES|d|Hw{vHFQ>zpd=|$&4PcE=_r2Ya)TY><%&6>yLLCx7}P?a#3(_0gcSVcr-P+ zQ*V|ptqX;$ir7Mhk3VW6LxYOXCp10Jilxb@s7ke9Z5ezQQ(m z3%UtyBtK|dAz$(%eq|Q5c%aUt*aQffxALd8E1B56cBSSeMu(Y%a9RKKXdro3SMf`Jc z=nr60;o+kY;Nd_me7x7j$bX6v zE`9vwt+$_Me8Hb@>Edx@pWZs4Wt`#|1c-uPohuk_~d6uGH zbL)U0p^LO3f7mejOZDk-Oc5_Mb{>t)5zq{s1o~`4Q;7ppq zd=ZTYP#85rmS?85$S?wn3G+l%mAt4WIaOgAf6_~5nDGq1U^RV~_vTeo==5gwMlW@I z!iaO)ToXfHu&uB^u1M8wxNhzni$-5=(URu13HC&Fo^%L;m`fF>VcTJkD*H~^?Pd)< z-v?ORn~ADNP5pY7YV-({tzA1yO=iigDQ^YB9tmU^RLpy==~OEY0y|P2k99}n*Vv}H ze;?a|+n#zpF89M#d)#YB72U)(y2mg}XDoqu7;KtD%g1ml>_Sb;`<1<{s+}oix5ld8 zvQJc}ENl3*6HT;*+N?W!T-Fx{L2CKc=g?6K7PmMJew85aVe;;Z6 z^lUq(5rAQB5UkbZydmNh9qG$OEm-PmA7q<<#e}(~bexjO$YRBYyi%4X1Flp|M?ao}rty$=g%0xGk zLn6U2pX%26{baDh%ln#Pu4uz_YW;mVN`*?^C2eZc1XF5#qN?DNjH-Gj$7qt=vxza6 z8k)7yU3C;<+x95C7?sEHdlIy$bw(j;f2OYpBv&4T`o-tj)mjysLa&wxe^+b8iRx3U z#>GeCV7a(3ym4&oU`Nnz@Dx?Kd7}E16}+TMNe>z}tY`fSzj}_}3;RkNbT%dnwOu2A zyN@V$WBD1~g|Z%14lni2sEUHTM`hx2R6IL9`2%km98+@NAgEijR{;r#S3M+wkz`y# z2QOS^uM(o7FjVmeSY8u?e_{dmLrzIJNbsvbC;|qDG<`b=#WKWKB(LJnV^H^X|DiFc zN78@8px!X3-zj-j6>tThU8AQlDE#}9SCPej!=Qd542t~#=rH+(zsH~$`~&?^@CHG> zK~QfH)NcSm3FSu2Rlf~_YBcCUdy@vHnfIpRiK-ON7F2awSq-N8e~bd{HAb^rkI`#u zQIn?XmhD!!HrBD~e5Mn_WGg7aq_@MS8!&4~BAkMl#$#QUqRi15SkxHTC$ll+4;$_z z#kW|ODH95_UFJlG5oXJL(6h~PH>T(Io~;KS)30y?Cv7R+)u2}O#^uq9ojU?(>B-qF z*lY8I-1mmKE!5lEe^9{}*)TM>QK|e&|y@u9Bk^#_K9kF(R8u6Z|sLbI*%*Re^t?!bVll6Z;+#O)f`W| zYJU{bHAa}u&31E+clyCF1m${f2g=RS01xUZ5FL=~XL-g=n=^fh!Irj4G^9~9nB(oV z+FHv&xEN2??b-xu4EBu#nj3T0nlVW(>oisMF`=P$Rz}n6;+&;aM>~6UW(S09M%21Q zyVk-YgUdX(f68yE#(3~4S!=FGsZ+TsWiD%s_4)`) zYh^>;c&o5dbC}U6P+Qs{rdJ!j+DN-Kxsx_KUDugw0&b3R)f%*OEsL2mx%LU#WjR~i z@8^oAB}~sqa}+p865WT;0_AluyxBa)$f?CDm_)ptgQh z&kqn3{*Men{S3)*Mb_%8=70YER;-{9%r0G<{Xz4>f#8$1oV)EPXT;OkXBYK~l?9i#*C ze~fC%#obnmp<=6-t#r^Xr`$Xx2u5%QYcQq^YroI-`rhAJA+!|pM9{iKly;kabg)9l zW!d4(Twp#=@$p$6+kCIoL7uIu(>^EC)kW08x?`^mnXEtCV!Z+7^aFpv4p=J1l#Mu4 z_(p%UYMJ#dGa#mF9I;+9-emn|A}YPv)xiqeGkCgA*Ov<*VnMU61p#k`vnifr^@i4S zRe^EmAjL+Q7%Iy~L*3V0J8}GS7esX01ORr0SVBl%DSL9((Q# zmItm5&N9wgyuG0@WxrhYlFNe?e<~46E?jLEfVLp2)I^};jKGj_b&@_0ojTF>%(CV?mQfAsQGh8Frrd99Ns zg42n6;9KmW10eX?hoNW|e8tyvAO5)ds0fKR^2lsw{46#IcK(jjp7B}f+-FM4w4SvquDIEapURX>mRDcaEnBgfdQx4S z^xXUeMJ?tjzov|3y{Y1@3~a)Yw2XDp_VLVTY0Rp&&OoESe-UitR%kC(%BmS2OIpd4 z*tta9Qu<_1SbNf7tp^*vTJ3bEW^3J@)u-BQ)E8V%t2ek^mGBpGqvy>tD?J-6eV7b~ zEnA+ey&fJIi=l1qT+(gla~$*Pt);Uynyg1oRcphL?YYN;i8)OMhCXD-n$FlehKqwr zv+4G_C#nr6f7>q0`C{CrH+j(WqWzE&17cg*1eI~rP8XoN*T=p7#-0&%ZmNda5YxI- zKPLfIZ_aIJ<2Jc@rQsyr+1Edt085A5ejIh$jv8<0nn0(zhgsPa&upDG+GEoQ>pe{H z!+tvgc-!vHH*Tjo+`0Sah~dNfAeVMyLf7Oo32;eOe`FT5s8Xp^M^R${+MZzH3n%E> zW7nMZxQ)iu+Z`rvuhscxyO&szuS{2+CXfPy?Fe93mQ{QJ?U9oGfA+p>xp8Do^Hnr+ zaiV)z)l3Js9o-S|^xmJX3mSj~4M6WEHsZX-M(jq+<(${pev|Vg3s9;Oh@vFORRL70 zyQ3+Je}eMQ-{zOUxqoU~=M}K#)BJLmSfhP0QR$~@%SBG=^CVT=)*AYnh}osgb8=HQ zx3E=AwOVM2z0A6ApvSI!%E$9bmM5IDD#~&qEv*B66E7X-)qSZ{Pr9~W8BEM!30nHT z-ZntFs{1lf>j!m_k=lB7IM6d3r>iEL?#Y8ffAWY@x-K%T!3xGc3487y9V=stWRRGE zbzRZ04GoDE`$lQXt*TA+SoO(3bHWzM)q7K^CzPVHnU^Hi!={!H_4RL9eIQVp{d2|(KEgkl{QNV-2Xf<^8lo_{X ze^AH0BQrP_?PH;G*!R*+vTfL?xu2JsNX$%=H7wTnK~~{`mOa7=Ecz^=Ue=gN6Q!#Y znUN-4HJMYLVXm2!1g@S;B?`=Fb%mLd(((SOm#pCVQ(u-TDW-E|sN>TvkOwj)y}w9{ zbtx2e4n;8pyzNADtO|<8dLxX^peT-Ke*hqFoe%YXqh_9uL=hyg4F8OTCEYc6op;~MR_KhLQ%0BHRDI3c*+~b{1Q}-Mni<@5Ul{e*zf10Yc zH|Dl_m}T-@S(8Uq;UMKQ0zXQD#b$Y^EYPST!i__=+Oc61xrWfpjj^^hENpkF`={RK zL~RshyhsdrYYS(l*;o{|PG6O3<%FcRXF1Loa-~IWg4jj2KNOc_m==nu^g_|v6T|5g zV7b3nmn&cPQln97O@(IKG5b=ce_u(%`9_$qd~OTVLqH0rVKb?&*{zSKO0knXHoM-i z8K9DKf32Wqx&|wwQL9@YWV`JBQ`P!xX97Lx^u7+8$@+)Qr{K!Le7@OlPVS#NTtRc;2!(lL#%&stU8dU07=;wSe=Y5cfN7)} zxFshlN-fourinpj??88fjm3W3PGtJil#{Pkd*l8F)pseMZcXjBF044y$&5GIW}{Zk z&o{eVJ=2rd&S}_8*3L|BbE4R%yzQmt$q69A|YV74i&CZ6+=(odWjB;nu95J~@ zY0I^}oG6^m*j#EbEoAF(e|?)1)!|7`NFKiCM1?BZ)vYcexp2c~z$qun8#c2pfvT}j zqiI`cI`>a?%~`EI$yqx`-;2Bf_|770YLyJKTglXf?-M=8pnkH%!4`)q4r;e8VX(_J z7p_Kc*4-tx>vCY^4TlD6cuupkif8+Q;dY^Ap<+W?; zt1WvqXgHn5kr69+eH=6GS=rLZi`6i9sBDy0GJpTnm4)!iHbJ?+l3K?q!n|3L$5y^Q zSWbqBGtAzi%L{{EQBPIml%BLjp3AOyt}WWOkm^h8-Eopa&H--6K1;ah5A&pX=&4Mz z+a8uy6?>e8yxhe*e|?)xl4NBI6rVM@!eKMUbU;w{J%-J6Gt2QX2%4UKee7W~5iQ$2 zRp<_k-pwC3;M0w1+3pLw_u2dCQ}vu5XQanvu<@M0s3MRL4{kZzfXh|6K#)~UlDL0A ztICBkky(~_vmstwl}iVnQxuxzFzbEr?NDfz5wRq2LJ)<9e^4S&^$@hTM4=%9grN6; zp)ujn^U88r4hr0J%5t&5Jp+YiA4Z{X1@NN}JP&R^MWHDQ{c})g4vVta=KUcQntc@t zeKOe;g^mvjEs)=M4{}DQ6v#kAcC$_j>BII=tLPK6qj$R?Un}mCqd7U` zg>p8PcP-3jyQ>wgMyc&fvphECrQJ76av@hwY4c_xc^Hd$J3#GB3n!9Uu&*q;qMY5W ziaTaFf91??ICQAm+)SpSbE#9!qjIXz3|pJq9<3U>J*sEB_fOp~CS|RX&XvLHyV~5P zb=cWOZtm6Q_Q!?J4tTY>h2k!CXo~ex%P2IN#!4BnNidT357p)_)|*~^bgIoQ?lD~G z?HOsRL#eoECWx{_`U2(iLSmdwaL$lvX4<;Nf5_WRo~(PjKyB_}b*jx3w$^M_v)9sL zJuH&ip6}W%p*tvPxWp%i!_-k#&woDyPvn+08TLbGW2S5EhpD7ZP8zwJIRw4 zhs%q$GF3<8y(Ki@qQ&o*V42v08uW0|tETsEdVJC*dPM5Zy;!YHI z`Z>50mP8pc?1P24%C#^2A(PD)#H7?8f07KCY<&fzl8z5z`2g4AcsHsxmWNit%rtSX z(r||5f|{#T8QifAeIc~g9TE4$NpIci8@-CZCme=MB9-%%OP=FS)%U`kwvYCNn})-k za!h8pg-WvAY{H6^5URuNyk|5UV3f^D(_9ToUQf9FcRk_E*4DP?+Dcaot2Q3%e@i{% zEA8x-imk+~P|G)0c(!ZQ+ViY@tTzPSY|X53f!Su)#a&w5o8`i`IbZNW>M6T9|G$_ub^Y}UuweqJ7wd+mmh-OE*5n$J3kYB!C> zoVc%{`LNSW@x@ZHVrMfoY1U5_f0%^WsaNN|0W(w7-N8OL#=CJ9O8ahOyXBo-fy0BD zTo97m!+KTkqM>Z9a>}~ct|XGMPqKq#cMFO^x%Elb{lrt!MBUPDf#dxsh)X$SHI)}? ze14}EP$eNIo9Uib8DY*Ruai}Gu1fW)yem#cHeYKo`E+7`?9}GVgs~(0e_bk9-L_0z zawB#oyKCqBwc>>2xMsO6FU;=D0X>N~O4Hsj@6*`K1nNzYa7a2`8Ejgx(bbNGPlE9# zKPt2{TDI8fmOJaJ4OSg?-yMv{B{O~0FuzL8_qrQVh&FpH=86Y<=EHPLb;~ZIY^t#} z3D$GMpknohTTtGwnui{{f5P^GLqciN9WSl<)U{AEv(rmWgq|wSY@yVbN_#*`Ou4@- zrF|Y|R<%~cZR4=(82Jubm5+JeY#df)SmlQYkW2KSmI#YI-9OduoxlHj9`@vWsxlVd z3VZTBRh#tElY@1_o;)Pz71)#Ssi*Neqh7~J-sb9l8?STzl@y=Gf1Z3=Ai8AVVozy` zJzY)Zt-t{Cme>=~SeXH`mu2V2o)|{dkidvywaw4OAFa&ELAW^|=iMkO1k z>SL>+qp2Gp8+q|~#H&3wPMLUxO-s&{SEDJrX|SNKD&=Bfv}Y40?j??c-u+Ykb8;nb zPA*I&(F8qXPOg=@JSUf9oJ_ZEsroc$vBeTo-;m|@s1JEGe;BK?+Q?YV1g1BywmQii z+U)USyeV6YQe%4T)l0ZGnwDXIkkx!ew+(HUNugTODP@}Kp$&{~t5QH#9yUa{%FJPc zas3cm%+_K)gqiW8lOGSiYqvdpAtzd1L z-6EN6kJ>5OY1HaZl1>4-KXB^I(%+}efwgqinP|gK zRswB%yJ}a2@$6vNYJ$KGR|CbKvjZd;F5hPCew0ow%f(7|H`7gVA}#FV%+XT0q>&n% zKHVzMf2)&uN>@dTwA-3Fz)bT{FEV-iI5gU;byZF`WO*&_g<;Ef2Ab39SX|1QGMR+2 z9;-GxwN~5X!S3r@wtoNAPCwZ{I9ydaK+Y_*+DU1rXOWmpr1Xx!Eff8cX4TfoZPKxN zO~*>1Ud^0u^@CLD?5!=|>g$bkva4nHO~Oc`SXfJENBWxB>6QJ zi*$}CMekUSV}-XJ;Q(04wRfHv`q4WMsG=b7>KmhXJU|%2cR=qThAa}E2j9JK#UlSO ze}2bP{Ek*EQv5D5_#NVrAPc6TKf7f}WIQl~1AaF=(z#9c#@@Z^+LY8C?vm0Gk zTdhX2!OrCbyXE%9S-ClBTe(puTb`TMdP+2AJ9ceNR!JvY>Y=i+R9C5Te}wDPesxW% zIp3UCxIQfKTvO(|4$t*uCZ)EQ?OH<5w)pO5yHw`PiZMBqQW3MrR`@25nH)j&e_XDp z_mg98INz0~BeIZTivd3CGR`Q??EdIXoHDBAcWGzTU#6ADcDFXB<~}(#oZfZAcuQ13 z^>^u=hc=p{3$%A$+*p>vpl0eazA2(BJ^_0yjYO=x8XWe zSHM{F68!p~VQ9Q#<7JSYQIMoEe~MS`>Id0f%P44^@*0r+{NvXJvPW7jPB!g3iyZx> zhPSrYXj-F5(;qK2q7k*2v{mfc23+LGA>~igSw8zr5z-_@lVIyr-Y;U*T(+Qp42<6I=VtWzu?ywfe-G!|&EKZ$ z-@Uf@lzEY+CXomnYcB^W04b1HfcWp{2Ui)&tVZs`G#aEl5~M_o^^XN9bg8de>d8!) zzqsH0of^LgQ}e|GE^j?-gh7$dUF2XeE?oQ3Y!7WGbjc6ItnLqkp|<<)Hgn z$@;gP8hyId_$~Eir{hQhe~{m4q-Xo?FyiH_oL1C`dJ^Jz48e#RF|Is*y0P4U6Y$q_ zwD_`1VpIZL3WDblfMtc(PVRxaq`SZUpi7FF3`7(xrAz%OOO4UBP^CZv8YNKCqO_&m5OQzQ8g|5^XE_j3o8?a^M*j2$*U?d zlIj)s`sDRo0I9rEd41cZ#vEr0lXw#&RO)g@gZ0NLo58v{T^c<_Zp@CYUY5=4?)IWa z(dWF)(f7tH?7>?(O!gyy{>IA40piBKevBCOs%J4e9{QSzx^QhU5x41lK zL`@Jl=oR(&FV8WMH6Gs|eW+ofhJ`LQj!UJN=k)UY=MwYn^89nS%X6&BoQC*-OCneh zd4aiiHPj_hmqeF(l`bhBF6XK|PPof+hT#;2Xo2p#P!uqhe;ImO@NX(L%^!ZLo;roP zJQqcoBU0dohr9ctT1B-gGNOt_OaK%E*;74q= z8TZ(K-dgIS0eQGWH|_>xwf$UGug!q`#ImCA_Varm=Uc9~*vCr3qe6jivma0}RfG)B zd3BF|1p}(WeI2!n+fzu<4>MY#nP5*SP5tL18+wh2UCzZt*U1 zHSV`~7m0e`E?-fj*0R@BFXLuS-FWi)nfCWDpRSE>e;-5HEXuc7@@*V0rx|LJ!eVda z=2=d&z^alQBBwcKCzeCZ_!vD%Aq3 z5J53e@xiG?;01i%r{MM0@$RkDDsC5P*#q|jrnOwHb0;8=1Gi&UqhvR!T*tu}{c)6$KiPM4FyZ7xyfNL`H%8B~Fuwp#1Tx&J+klz=w%n(97a0m(e%l!r z5+679kqEExQ9Kq}@8ev0bHCUM4svtINYhRAE<>}zh@sME%xBH1I!OY+a+twf_97xE2mg;TY_m!2<_yPQVfZ ze-Kjh7!_tx^B6nxIJ4{!h;wAeWWDiGBAWC7_lz*>?(Z&%K)6dHnTSY2fwnL}VE_c8 zOigA~m`hD&>`bQh>1G@*Cqc{Q%p|yMN%do?&6;75UHgHBn z1gI=#&vT(3+lQ}j#`qdCM)ri7z8|Jm=Bv77MvWZr*m^(b`OB|&=h)ltLIr0W;A9zl z;E~T%hr!5CAoR zEwemUI1QYaqFyyq9}szw0LaUMgD3;AhzLSdOFqMUwrI(7Qblg2n7E-uUJe=ondVeIFbWhdaTaqi1;k;N`8nq=zQrq_$v!po}wo9LG-`=@qgyMYYU#cf6qQ0#nQQ5 z8P{fi{d4A6%h--FyGYdkwEy*w{~K<~Bqxa8Kj+~G!hi#iIS)S|hXg*@C;#E__KD!aUsUSw@v5qA`Iv0j!`9hCf{oQL7LgRr9zR=5`MvmN3d`_=&&R z4iO&nr>0|+snmYHvAHpwf8~1tTpqas2gOqzMwIv9rP(2IA@IRFJ@EVMI$%)lMwh#% zq`T|quKm)v5bY1anjRzj>zlr?@ciR6EPTVT zFh)zI8CcPx=kGKDJL1%Q`TP_)@j3*~Ec;6$3`uceP^b~l2xwSTe{f(%JXTbf9C)5g zP5o+IFf>NgWS6Ib40#L~335ITUOiJU?+%8dD9OQ6ZC2ATfgfpiVk7e7Kd#HufOEtA zxSP2w!z@B7R)j!&^YUET@s#gV(?@aUk&BP;$!M z=yLajlFz#KZM_I(e{}pA9TrtZ9FZ8p1i}b{cvXbL`RVU5vcJCR3nR`yPQ!>d3?pK& zR8R1BBWr5Bd?pBmS$_!3dS(21reTkHME>RG-=3m3PJpEwWrp%v98n|)#bApANst9e z^s)h|*P>qQ>K*L+PVtPKVGngR6RX>%s|qAu4{0I}5! zqRBMFAv(Mc)f++poQQD12s1=w8G$=*_;JYp4WbHcOD)= z7IRVmiGzABiTdS>yRBmlZo1Q zj^hK(%b+YVigFrFLiI9Iq2p!!45O4!gp*N|;@2Tzv9PM2ZsyMF)6Mw#J@DghacA>u z;_e$nq1kcxx(1tMUuLe4u#P%|9a%b<8^;X9U0QJ3=W)I3-W^_m(P%D11zx7(TC zly#A&eJI(P=d9^NR(8Gr3XuD%RjK& ziJA4fvMaC$(P(;#hE_sKA;fP{aTR0&CaG2_p2_FKW_$F0ZHE)w*KX17m3nO5LF$EsgHv zR>r9Xc~=V(Y95KAF}%zK$G1x?tMDvUA}W6$aH-xxRlrH7($pwB(O}7Ov^V?mdD9JU z+=I+Z+G55$0-|LgL0<$VnIobipZg-nebz+GVG`N!kg zWdbO!@nVDk#*3kfSt8z3ef7H&by0u2D)wtBVxTn)agmD1>pZF?KSD{U z;=V%uU0ioi)8DcWK|&FNBE2I75GhIr(MYe-1r-Q{1dtX4A|MdH^r9qmB1n*6SiWEZ!x%}?D`|g{!GoP7r&hG3#XFq3m=FEH?ZE-sj(`y~Ls`^hfLkDa| z4m6f`EI!lbu8Ry`5Hwn`LYKFMNk1$RU;bLzq&WSoL_q)Y7C8;P98?~UpldxzCb$@K zqUFS&e_Jl9sFhGCz^J)&DTFfyU94sTV#2WxLS(-;P3gaq2)qv z^%KKBUn9u<=)pc?n#~YPpMfm4a3?T3rP0c|0rcC2y6N2%GE8Fm^W$LAGJv!Jq_#@h zwy%hyoJ?w_J~WlQ{WOAsd*32W)aBDr!ZHOzajYN5al2<($%`Kgg)AKA=A=Uge!L<^ z{Do7?8uIy!JzZx#iCJ~6m&3BdpLL%$)=rAwHgG(lSQAF_sW~}V38};V{{0uG^Xj+`RM?LC2OGWyUN2J9<;thRp_gM_3DN8P^hAgSkO3Xp;neh=8WRww># zq29vg2mf{d+*|3E8Th-f0Axx(o8p%EXoRvE_;fuly)P@IVYA}LPe8in^L^Zj_vqca z+_~djt6u6c7LBEkJq&D~?-nfmQjMcPReny80_|6?S&hOLDu}yT6Z5oXb#gLE4pzg; zM$;|pwQMiS9F4+C&L2`6SD2w?T)*qQG+MV;PUxc+VR4Hvnp1#JL3@fbr=TM(!XOVH zG0sQ|H13}PfhviJe26&EoQZC~b1zqGYxu)O_c+zwa9okt2XU^-(A=Y(#WH9gh;M_4{sK(&bE8UH_!W7%8jlf!2f4m>voVUK3eB?gk;sm zf;tk}-g>Z2Bn{qix}!`OFrhRUC@3Ra43jzw9Nz^C~;xT*hO$6thySNhB zEPO6TdPmOL_ZC8e%xU;if5~3=@%c_^$rF=6sY8CogPcnD0?$<6zWHl&875hSLIE6K zB#X{L)88?e0>wpEfJnlRe8dvHjP0ZP+UNQj@-_s5Fa8k#<#NF^TMcGQg2-v!Dr|<& z<8|?urUWF)xFZHpZC}cx5lFEQrCoND=8xhU@n|JUfpcEcFWqF?;8P*?t9-|-RH>+t zTFTPCpl`bIh>8-qdp`1Zs)7fVX(!y7W+ zi1qH^d$j_2vR+?v)bBAi5cq4=Yb*)QGEv@|ZI&{YC4OarStP)@}89{@e(u z7tnkriA}|xGX!VEYND0!zq+jqW{}I@5B7NPHfgH=a$9YB;iMKXoqJz-=yhZ7q~OcD zj}T9*V^bb*LT#qhS!^Q+-hQ=TGtM+*TcL6DnE)5uMOv(F;Ee%Y5n?T zyT*fun=y+a^4s*6u(rKo9iB_i*M)C<5?k|KPWQ1s>{i)8ympYDSMz_8`VpZ{)&Y8K zY2Y+e{n!52My8(5J0H+~^;m!YQ6@Oc6U`NDCHibfesrh}@r^HwG7J_yo6a1|FoNW4 zj*IokH0p3kZxogNw7aKLsLbe` zA4O&VX|sVk2s8AQUk@6b>CKpwOXp4AP}T)=3AmaZPg9NAV+|Ku->CZ9 z{#9kT4&-R{^2NQtuGW^Bwip!xt)5022tr_8-9>S04=4 z8tLri@{eNALWTn-=gPT3%H?fn{O+0FMxnbd7htz+Dkr}cd@#ao^S-##uiV(~sQ(=q z9MM5lZPptc@G76ZtzBGdi9h2CIeEIT5G7X^*v71E?JnLgoj7X2ZLWzP==0zVLjWVA z;>hPLoIJ86&tE(+dl-b<-g)~qAln#;1^tZ4^OHY&7FFra?rv#L*lw;a2f4{|3_>td zQcHJm4z_MOTTFbf(J+NWNzME0!HL08-EV55RMS+YvYw{xltS3Kk}g;2axs5-(Wz0*}Psu4>K?<(N!-byb98b{(W#&Jnwur zSvk(-Sha{Y&PC?kaHKm8*0r&a3+9f+|GMY(AmZV;`1>$T7S^WgBwk;6Tqm35XBS4X zy&p88Osbc&L!2~%C%~JzR=OGYen}W2yB7Y)g4!)bJ&{{ zS)II{!;b#0Z4R2{o9LHtw|ON5ziUU`O{xybg^lGHb$Npess6j5ZunP?@TG3LEt=;tW!pvz{C z1_`9M$nsJxb<{9Ey1!c=Gdq@qV1AVvMcQTi7k;GL^<{e`XA`wB+wK~awnErhX>viK@MHFmP5 z{OeLwT{wZ~S^sY?(zfqD6w-g(cdB3thu!+%5ws;`*GxVcP-uvOIex*wTUO5BO_%v(^ zzl(ku4@&NBYSiCcr&n`}LXT0e4en$LvT~5Xxn{kTdq<}a$jJ#U$UJQY#&X7#JcS_b zR{V1v-I)0+%Yc8|7;7YTk zBmaK$A1*u| zVyVd{TQf&qD^TPKAGU*!xX*4tCTkt?vs+6G$S zn2jY*%c@3ruCAYYT;LIw4zvU2Sf=Jpc-Yn6_(WQ(Z%=<;s(1giYlp;G_|4l;E0 z2b66L^qXP)|nT&dD3!SaV7iY!m;UfJgbe(@LfYn zy^b3}85wN2rScE;NK7>lAGWjqNBoT#-3c)TTNx84J0Y52XUnwnGF(L2E{GJ^sF--K z>-4PgB{8=PBEkQ^BRCZFZ^gLN68ax|*+*RLf{60}{}%NhKM1t&hA7kx5##?i^Jze! zgVRR#kLuiit#O3t*nOJgpIZEU8nH+V0-gJ>`*h_tO3dqqXn@1s6BoK6*T9%hM4leV T4RF~K@oo=993rs{IgR=kx0P03 delta 10491 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