From ae8502bc80ed07149b869b0b493cd1e2dd26507b Mon Sep 17 00:00:00 2001
From: gossa <gossa@unistra.fr>
Date: Thu, 14 Mar 2019 14:39:25 +0100
Subject: [PATCH] =?UTF-8?q?etude=20pr=C3=A9alable?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 README.md         |  16 +++----
 perf.R            |  11 +++++
 perf.dat          |  41 +++++++++++++++++
 perf.sh           |  18 ++++++++
 prealable-mem.png | Bin 0 -> 19063 bytes
 prealable.png     | Bin 0 -> 28794 bytes
 recherche.c       | 109 ++++++++++++++++++++++++++++++++++++++++++++++
 7 files changed, 184 insertions(+), 11 deletions(-)
 create mode 100644 perf.R
 create mode 100644 perf.dat
 create mode 100755 perf.sh
 create mode 100644 prealable-mem.png
 create mode 100644 prealable.png
 create mode 100644 recherche.c

diff --git a/README.md b/README.md
index 8e0ac02..3080488 100644
--- a/README.md
+++ b/README.md
@@ -38,23 +38,17 @@ Suite des commandes, ou script, à exécuter pour produire les données.
 
 ### Temps d'exécution
 
-| Opération            | Tableau                   | Liste chaînée             |                           |
-|----------------------|---------------------------|---------------------------|---------------------------|
-| Insertion            | ![plot](path/to/plot.png) | ![plot](path/to/plot.png) | ![plot](path/to/plot.png) |
-| Accès                | ![plot](path/to/plot.png) | ![plot](path/to/plot.png) | ![plot](path/to/plot.png) |
-|                      | ![plot](path/to/plot.png) | ![plot](path/to/plot.png) | ![plot](path/to/plot.png) |
+![plot](prealable.png)
 
 ### Consommation mémoire
 
-| Opération            | Tableau                   | Liste chaînée             |                           |
-|----------------------|---------------------------|---------------------------|---------------------------|
-| Insertion            | ![plot](path/to/plot.png) | ![plot](path/to/plot.png) | ![plot](path/to/plot.png) |
-| Accès                | ![plot](path/to/plot.png) | ![plot](path/to/plot.png) | ![plot](path/to/plot.png) |
-|                      | ![plot](path/to/plot.png) | ![plot](path/to/plot.png) | ![plot](path/to/plot.png) |
+![plot](prealable-mem.png)
 
 ### Analyse des résultats préalables
 
-Explications précises et succinctes des résultats préalables.
+La mémoire se comporte exactement pareil sur les 4 versions.
+Les temps d'exécutions dépendent essentiellement de l'affichage des valeurs du tableau.
+La version 2 de recherche semble un peu plus rapide.
 
 ### Discussion des résultats préalables
 
diff --git a/perf.R b/perf.R
new file mode 100644
index 0000000..714eae6
--- /dev/null
+++ b/perf.R
@@ -0,0 +1,11 @@
+#!/bin/R
+
+library(ggplot2)
+
+df <- read.table("perf.dat", header=TRUE)
+
+png("prealable.png")
+ggplot(df,aes(x=taille,y=exectime,colour=version)) +
+  geom_point() + geom_smooth() +
+  ggtitle("Mesures préalables des 4 versions")
+dev.off()
diff --git a/perf.dat b/perf.dat
new file mode 100644
index 0000000..c465956
--- /dev/null
+++ b/perf.dat
@@ -0,0 +1,41 @@
+test	taille	version	exectime	mem
+1	21800000	v4	0.45	86668
+1	21800000	v2	0.56	86676
+1	21800000	v1	2.30	86768
+1	21800000	v3	2.14	86768
+2	14057000	v4	0.31	56508
+2	14057000	v2	0.36	56432
+2	14057000	v3	1.45	56452
+2	14057000	v1	1.54	56420
+3	5089000	v4	0.10	21484
+3	5089000	v2	0.13	21476
+3	5089000	v3	0.52	21388
+3	5089000	v1	0.53	21460
+4	9411000	v4	0.20	38300
+4	9411000	v2	0.22	38304
+4	9411000	v3	0.94	38372
+4	9411000	v1	0.98	38272
+5	32386000	v4	0.71	128116
+5	32386000	v2	0.80	128116
+5	32386000	v3	3.28	128040
+5	32386000	v1	3.46	128088
+6	15352000	v4	0.34	61484
+6	15352000	v2	0.39	61516
+6	15352000	v3	1.62	61480
+6	15352000	v1	1.64	61504
+7	17015000	v4	0.37	68004
+7	17015000	v2	0.42	68008
+7	17015000	v3	1.72	67988
+7	17015000	v1	1.79	68012
+8	14627000	v4	0.31	58720
+8	14627000	v2	0.37	58804
+8	14627000	v3	1.57	58748
+8	14627000	v1	1.62	58660
+9	23156000	v4	0.49	91976
+9	23156000	v2	0.59	92036
+9	23156000	v3	2.44	92064
+9	23156000	v1	2.45	92064
+10	31361000	v2	0.77	124112
+10	31361000	v4	0.68	124112
+10	31361000	v3	3.19	124052
+10	31361000	v1	3.32	124036
diff --git a/perf.sh b/perf.sh
new file mode 100755
index 0000000..6c44231
--- /dev/null
+++ b/perf.sh
@@ -0,0 +1,18 @@
+#!/bin/bash
+
+echo -e "test\ttaille\tversion\texectime\tmem"
+
+for test in `seq 1 10`
+do
+  taille=${RANDOM}000
+
+  for version in 1 2 3 4
+  do
+    (
+    res=`(/usr/bin/time -f "%U\t%M" ./recherche $taille $version > /dev/null) 2>&1`
+
+    echo -e "$test\t$taille\tv$version\t$res"
+    ) &
+  done
+  wait 
+done
diff --git a/prealable-mem.png b/prealable-mem.png
new file mode 100644
index 0000000000000000000000000000000000000000..ed615c1d8727cf95a1f3f5fc51cd5d480aad59d1
GIT binary patch
literal 19063
zcmbrm1yogS+b+5g=@bx<6hykak?s%#lrHJ+21#it=`N8LkdhXVjzxEOcL?lfz2E=s
z{r&&h<BT)LnPa@jyC&<IPuzW7_Y6}}lEy$KLWMve7_u@Fst^d=GVDL(C*YIQpL87%
z$V-T<gy=i>^!){o_wTmaxsSI7x>?cs{W~d<qy3SQa|4$9azEGGRejJ>Oyk@+{dp19
zYj!7<b}1K6nEI0l>MX03rWhp^b=Q)^m>b~Vm;1x6gO{;$pJVIJSk(w!6w#E|Eac8@
zqpvGvV?Zc0Wv(;DEK_`xQxO93_u*AQ0{^t+WWzz;qat8H+Ei)HA&{?*0Rh};gLslr
z<RTBT{dswLbm3!r7m@iyB&mg411V>x{VaY{7(~RxH{K6!x?bylVuOO7rX3oUT<lFf
z-cGgtoSKCg(57c+mwhiO>F?|FBw(PY|Ni|u;Q$A(fa|`Dg2KSikSYIX;}48q$H&K+
zw14s*QlO%u(uRNk_RW4?9Kt$efyyr=bRWUevaLH`XQ%J!+2})_TUMr6GBN9x5mS0O
zW0vJ|<4PU$>*029YdEW}|9i_`61(kuJ*j}})2C0TH{L>~do55sC%&tDT^%0423hJ$
zWbh&=`Tm`qon25+use$QsvU{^J&X5VSzSP2V3(1DmX?-_3l~LxZmt-8;^m^%;xCUZ
z-`ir<ViGRP@yRl6_$N=w^;?D8)P?qchvBBAq}csB>0a-R@9gZXvz`%yp1;xXx;|b>
zPA1GzA;iNwpVYP!`Y|h9QDAZF)_SLFV6dFbW~}FRz!lMTdaR51EED^O-{S-Lb33~u
zE~`mr7Z;3=>Oo)9)6<8A?--ew4(2qOv}(2|H1%sAN=MCq8=WLFXx@64O8;D}BTvfx
z=CU^#)@39n<Lmoyz5^{#wE!EtmE~vK+*DV0wF52EEZ2DfrZK=VOc>P-w~1u%EcHTx
z8W*;}j^W{oU%%1|cV=g`QWQ*ue&;}UocVQSWd7_`wE8|i+~d+HxqEq$3wvMh&s5`t
zt)Fi6*Vfj4`0znl<epOzy0Ni=6PE8b=(II-zaFnVJ2&ScxOmla)f^HM@~L9iuqTF`
z05urw527NJiHRvTHdesx(0kwV!n653<6@(WmArg^>?`Sd9b0vEb#Za{n4Ua~#$hWg
za^Zm$d*6q%th$<-bRn<F;o&1YzdP+CT||PG{CtU**xu)((q(03N6lAcl5dH5Y)R(7
zo2S~^*=f?^1qTQBe`WFl$4S<38LuoH_W5(=!!N6;@^9b19fjW?Pwt&L%+1ZAP*BGg
zmz51dp-y{~WmiW_BKFJv?-`jH8LjQ?w$5(SxNUMR8jFg0hKKF04j15ivD)aB)JEJ6
z=RH<}2_B9^MMgO9lUo0NTxfLR;^LYNSZww4)6vm6I^eNe{Ck%5`1g3FQ?>XU2nKb$
zY{itDn;UdVcO>Y`?yhBOAyUitP*M@!c_1_9oLU5r4_B?jSt5^BB@=rWU0q$1^0o_&
zuVZCS&(6r1x9#+SJQ-qPVPz<pHUCxiyM?CnIe8wj*B?I~J>IuYlxSWt52bLJt#wBQ
zYCl(mMi8+0Ze_Tcryf>kH#IdaEG)>&%a`%|85(*hpT@Fl7ACK&%NDs_4$RNbUu<eU
z?m%n(yTMX6#m&k2o<*n1sO$1z4k?b@Up;*j8;QaMD9>c)NDRqRz1xwVhlfX--~Af-
z<M#IUpT53Z@LRpZniLS-TB|7y4GmwfU@UTSLLtv{6^-ZE*llYkr6Nd3NK;c&BCfSh
zK4oWTzZ4SkIbH7s`@3r2a?*5NZWS09xG+CoDk3c<#m&Wq;UK`t#U&{ran7tI-H&do
z?svbZU#oSX?0bsatY^oa7A2L}Zs2~6h!bWqnkxy@>-~K}m)&uWVZk%qm<w>gj}F8{
zL>(O+o&=p89lN``r6PAXHy`{eZJR&+C4+k(+~W)(25TRmoZQ^nTB>(21}YB3bFv?(
z_UhW&+39I%gpG|2ende_i!c}0MUTjX1CZ3Fqn5PH%<^~iC={mEDTNl{xyTei8=4vF
zT0+5rO5fI0RlO~Oq6CYH{W+McyT89DZ<+-f^mpm;e(C0H3z$$8ie|T}+j6VDy*;1<
zwRv_+Eu=(5vtCK<!C07>zV3np3r%hx*=LqD5|fhLZqF@ZWlVGhowrB)fHFuU&I#VE
z$EWewkqNk3YiXrk$X?vM2M2m|tF9GACUgtTQF8<kRy0)99}m{|OjksIj-G*I+?nWI
zJNe42dpqwm%=Er8+l?g-J1!-~V{0g*_5Q#vBO~MH=BBEuihxB=&~^X4s_Ix2G0(Mk
ziv;DfFbNV&Y3g{3+SwT4+dl@ZzwQp3qN1W=1b??_Ui=}Qu)L6GX&zr(%#4peyPUJD
z&~3V`Drxq6Y>}ag>)!xs<##s7qphu-mX_vqbgDabd4B%)=<&f$TYIi6f?&z_?tuJ$
zTUs3baa>K==Vl`*%jYshuHg2n^)Vwpo?~0x=kG~RvtQ~5EC+8d+VubgG;o}Yo_l3x
zSw26rrm>a^9(#0unDh>&@xWY;tFto+5WTe+5#QULqSlL9kH4Of>CX*$4Db_P=&6M}
zdD1aBVwd|f;!x)!HuKcN3cY52r%i>b_h8-AHgi8mIm@Q@{Lb^pZ?3ODOXLC}nV;9$
zoBdH;?c?Jk9YY305%!#i3t+W8V@$Q|SdY~&_<jGn1Dgw6$^GBIz=u2n<M5vGYfrgG
z5wz?>wG@3~G%!)XDEa+eBY#Cn34EZZ$jRMhEsaw8br*|om0>4hgAN%Hk)_b=oEN&M
z{fb5E!)gQzwL<dp%8H?oMiVgcq7~mYvwE`2Cd+jNEXQdB+ef^5>&W+3%BHr~guMg%
zlUS6~xD^@kr6nZ~W^4Citt?XYYAq*#D%<p7wISj~?MQ{f{1uo9BR#zlKl1sY0c)~C
z;i54MWT+!0S`;2V`prvh<fjTnkjfX)?QoDvJWK}&_<8w1;sP;Ic<?DI5yZbB-GHP<
zu7Evl5dK%yd&a|^9S3u=rg*sm>iFJgTd4N5X7l6hDW%obPRlGb++b`@MeVI>SA0P-
zW%|VL@8}ByvBf@DRIoswA!2!rKp>340f-O-Iy_DYME-w9BmePKmH+R5nr_hH3xRwT
zSKrtOOqgLL7I|$X#}9P~K>^dB9<pYy&EQQaAG5be<<w)o_!1hTY{EZo-$sE6F=$Gi
zMQ!=ut#mp^6iY*~uB46v4g1&EqJJJYMiG0T|8OE(q6xD1mg2}TPtMMU^Pd<eB`w>^
zqoS^}bQqRc7*g)0+oT#Y<R52kXETQwuvCwJY04@Yaj$E7F)phq)ZJQ{AQGU323Fpt
z%Bh$&3(egoD%sMaH)dvx3Bx3mJx~BEZPTK`nn$-vv!+=0{vAv{5NXDb2@m^RieOk@
zeY^-;EIN|uZ||>XY~K#&V4w3BNEYPDanPpf9Jii9gN=Fdpq~iY$Km-aS|4shFo=W1
za-{M+fL1C}$G>Ov-AL4IY;4r?+<D!gqlEmS)wfxPdFiK3npPPZhv`70%bo(Ynn;AJ
zyB1`*X7^BC`_%N9DShw9WC2>etqwCZjF976$h=nT9z=us4US!n?uYXYvhmc-H=Aj|
zA2qq37y<1Ej=}Yx%fP_E*Vh+>K%0ZWBBTK`eXCysRfC6YK_`k!1xP8lQ7wP(%374Q
zkf|2pvRND>FvZIJw4T8sCbrT=$HG#Um95en+B$<-l+@Ipc1ykwe?7!x)YTKka$W|}
z;)Mg<dLRhBO^3Acy+ChdxTAW|8g}IgH1~A)z5ND^Xe|@U%S(bO>EmKgOGz1kt@{3b
za#~uG1+?(Tj~~g&$=BD{W!iOpChSpCYkPb0$R{T!Z%ZcbS+q3kjeDXw%!aVV7TwpP
z{QdnuNw1#Wh<m7Z#`JHT-gxuy@Dv74cfa7_3hg{OKF+pC-FeAf+0vEH%mF?)J^itx
z$EoOd>#Js>SsHEpR*A{o)AMvBo)A4Gry@x7lH^^z*>ENZn>6)()TwY@Q&VfPD9Fo~
zl$PR!Nyrtb=BUsn$~EXLKIUFT%gV}%ii!qd=cs&}utZ939~@Myn3_A0#emOIF|T@`
zewer(nWjY<yY0*$(beIMO?>Pwm|8e!$^jL%ZrgCQ@tm{tY?QZEAJ-gvYh!^gR<6YR
z*by1@X{njqwE6=T4u+4ALY21Y*2YHh#4ZTtwFyAf^WypQ=L7_rnwkXo_?t&Z`f6(N
zU%selYV!EpItynl4d=RGfbb4nLD-3MT*s8lC+<p9L{C1onXvQeS_4C1R5fkD%Bwj8
zk`8FisJRLMXAF12#kR-$mZe!$w`*%2eWC)-uh@>B)(^^C-TVvk{i6Ha1Bbw>f`ABE
zt$E<5m6V3&8=TyLfwO>8C(0#)7&#$fe0n-LBZDcaAH)%N`ZbzV5QA3YhG3FtifkuR
ziuHiUL2_ooPG?H|oM}I6`2tl8?<8qP{HybGUe1^W*#g!0UXvt|?T~m5Tgw!M$(flQ
z9j_5E?-y6u1**kz1w?<MVh(47ZXaU0s2^NDtbM-}N%6bH(SKQKOt`nDt%R!o4i3^y
zo5)0l)xyGkawNyE*0{t#^xS+2Nc=0S&1Vn;tY#&zd-<#?eyoBwb|keGy=Io)V+w`h
zRcOEr5x&u8ly2QlohB{YNS!NMXO`0$aHiz$fEl5-hx<g_xjZI3ACBFQj^EGt3C4_p
zVKk^G<@e?KX-G}6zB>KusGy6TG_)D$K5MBXYI%sdDYls7lYZZN*7P0T(vSc|{}rc_
z)xw?$XW>D*uUusx7}p}F!z7RpL8{le?&}2&L{s}s{h({nGZ4H$Ng*{Zgb1b;A|6v%
za-H4Us^O^r4Na+ekLApeKNk0mD7=5?2gXgcyU1|ch7hw!8a$~e3~<NkpF0N&nxuIo
zb~)PuxXk%VnQhJ_MW298@0oQgwRbeep~!#Z;DLZRG4ljG8`F9BG;#a8f|!i$a?}w^
zxCwuByeJqxZ@&HmJxgX!K{4@<5Sp*IY@|Imz`V9m?52MAVphaWyLNm1y`~E>2g30<
zjSdF7oEk0u<s$g59JjV<r+cvM?DEurKUNKR4F8N2g%B3uL)1O8f|Zn=^%6shycDJN
zQm|JBW&&4}-9JN9c%9YuyViNVS$W+-+FMzqD_u^*NsTQg*S%pf)FGHF9sm~5#OKW>
z@^C09_9rnrm*z)qa`f6cY!LFB*P4NH91Wc6>)Q9Ljpl`G^-qBNnr_c%6mUKy2@7-6
z{H{|IFudUa9*YV)qIU<RS4SDqgavMP&n<H~v<p;$W6^mE+i?lA5j|c;Rp<V3!FUr>
zS(WVc9f@*yu)siRT+iVo8;3p>+)xdrzOV>PWByoquvcx%_gm&~9ib*-GF|oQ=PwA~
znVEq_5a#=ARZuOZNF&psHa6k~?vg-Yqd4SzWBp|<oK$Fgy{KDDVkYB&44dozX0x^}
zLh+&LA*sb&$8#}Mnk`p!*p0#)QF&;?d;R80^=aI!0=&j1wv0a?f&8^0YGrJWz1?|V
zn-pSon&~t*yp#l{3Oft<k2y?UnBP|uDX1|QGQN;Mf6?bmNe~Kz@YAfr_T>2{Zz^Tt
z8p~jEh=&9zChQBRHz~hTCg_5`#AP$cvs1H@nn?grYFo=-WK6dgh!FpynDsre|G7fX
z3p%iW$AnWyiwS!2E<8?0?lmUmIJl9;#LQsL+seAyK6f{=dFLJYIi9;lwP`AC&biN?
zf=4VBYtOk{Bxi{o%yjWYDzyT`-sPMdivVu<aHI|1VeT5Kf0BysigS0devb_elOh4D
zKR@W~OytnYH4h(GtmkyGd<u1tq9lXDktx&SVgBv*7S?CP7hsNj1#By3Xy*#=jL6ra
z`eM3pM>n^ke{BD<V*{rm+S5*-^{b=Mp~7*~XJWRYc!CX_?S*$*`oq@l9)wX+g|E=V
zaPexCioiVnGlp8T=LK0~$pky;Z*DLwNRMi?4%+mUtU-iko=Ucv%lBRd+l?V!T<v+w
zbNR24)fWVVYbWl4nb2mz_kVgXXCZB)j&{#)^s}~XHy1C=Q(I?=19u67z&TW?bIn87
zse91_Oy5qOCn9D-p0`t3`#`Scq?M(6XV`Lt#+X|usG2o)KgBz7z|J%XJD2ChB^lfA
z;=fS|!8`}Egpv?w7)+#su*F<SzAITo=hBT4#S;j;1{UWHGLU6t3O|vz$yz*t*s9Ot
zlH#~CcX*GV<8ijhT-|K+bChg4As2s1`pDGP!Vv*fTdF3at~~fFqdkYycOfGD(o180
zOmBEpB7=2$yLziXY0MnRsgk4|8c-6lZoz6`G!23pmqvZh_NP^9Ya%MJ`mOO~=TnrP
z#sHO%l+X&i?2mt!E@!*^K8Qp9Nq~cWU=)y?SD1=_T4OkixMPaw#-61SKNtAABQe4Q
zCiS`c{`Z8(MHtA<tCEU_+j|>k&=4?Ke|X2mXX&Mgj;=@lqB3R+5v(QxPkzd$r-S{0
zU*BM5{-QMHQQ{@kVVMm!yyV*prn-)IEU#K+&tHCgp0&zOicE$C#-ZeNshQM`M4kN1
z|8(}7q>U{OPa$sm8qg!1EU5}UhXJ9+PR(I1uc4L=;$`5c2(j@v{UfU1Z~Kwjq`BxD
zQq)ijiwN=u?MSey06{0XIt*LAxllu<h%&rE;b67yOaWV{GlR6{#BrFf#@Vo^pWcYg
zF~Ro&4Aam5K0##X@<~gu+JSmT760cQUIPyBxmBa%RpGg1YSO1AMo(6++Akem3n(i|
zh|2-Hv&6eBl1Nq(^q;srKZK@z9tJZ4=D@#XXRKH`>ok1tn9F`pxcK>xw`2-50is~b
z>+#~d{*Jz#*uTrc7uzesqo;J(o(Y4kudk`6pM7r)g+g)7X)V4pIT{{jP3=kjgp#s6
zcoMNy*Ywll!YGE7un;hoDKGKxsg{P;wRySp+{W0x4ZVh~tGz4S=rNbGIChG*MP$nh
z2mQMf#x>Uy-sZl-)S+L+a9USL0h!kumMz3FI}!%uV1u?UvzyjV5n53)^t3YBUan<^
zVj)g6V1gy!awJD)WsD6ql3VAP^H=e@>i{`!%LJ!46i&U)LPO87M}s3aOTFGhy}UkO
z4jkli>7tNs<@uqtn2gQw#EUalwG1?{V%`GfGv;Bs;q|e1QKghV9<)%0HVW7<Tl;0J
zU*c|zIO;^l;u^ctR1}b&^Z;|loARS@H#6X=Uxv!YB!^4zCx*7B>5nU#Xv+#(O|#)c
zF_|M9#TzdI3C3lANh;7hL4rL5BV+XVhK|31X+&Z4*G|_1MP9Pf(`c@7JCbHl?<D57
z#zqYWsrlSb8_QbHfn+vN$0F{_70M*=FR6OJZA0^2lXKu@kn`_#<%ph2j47V~9;hd0
zWswsS)_a_7f(rzmIgGPA#c=frB3TWM=Znr_G6%^F(6N!BR~^e&*{^YWzcOia+bvq_
zmVW;p9vw~nU%_^2YN{v;A_BrQF@Ao2Pft%|3bC9o{TrC9&n4f&x3bBr;B~For?YXh
zW5HvFibKz%=lgdOBkDQT_p~#s*wZ&Ux$AY9<+-^Op$gK3aTKJh%l5o@7ZVJUd8602
zw>V<n-rnPu7b^H=4D(gSJ?()=C={>+Tue+1F|%)Q(1upo^7<{FB(z3_7DSYT=?-cj
z!YfppwpKp8`5dPZ7B=_NM(4(;UJZRNo3^jNKVk<@q6o@HYACbMy_YCMrAnWO8Z1`)
zu5aTshfz!Ox<vneSF`o@IfX=lDqUh9TsL+^*W|q|4P~Mn$d@!qKJtII0T1an`7t!4
zR6R2QqU!|Cc{ZI)eyO8L=Ka*4;m*z_$x7$$|CQsGe%?Ji9C8k7ubva>T3J~ErNW>u
zAmOU4tOOg*fa70n^=^TsiIuxld$yB<7N5Jpi+3iAkyXN#VH;E*y1Tpg_pL#3fP_Ra
zLDEa|iM^#(^Fu$!{BKtg+@4k8vk<{Q!1c1u(_WHGXcoVNe@q*H@p#xx5pB385z5Pm
ze;X5eRQ^qgGRRq>k=-RaU`K-6V1fb@7P$7I2-`piKP~e4_<R`T6qCuzW%XcIdgK=a
zn)`l>oUb7z(TR^!{Z%WU9m1@~I*`c9{`OpkDjtr7!Fj}(#+nJouUH<4p|Bf&CcHKR
z_Nsj@0$dHv#w?jbLp{kxfkIfnt*|a0z`#<I9~bnwj>FG+8n`RP58Nw*vxO&SmaFo+
z+Z0~>nDIGbIAI|6o8ZyOW}InDA`9FVA4wFS*?51Vr2o7l(S`~Xd-MKgJZfV?4VaVg
zzt<_r#h5L?nix!b5uD=B%Wh$-itKKt2Pf}BT0qciFh(F5j8eDRl-7VjR_io*ZKy&j
z2)tQavV3Ae=9FnadI0wo5=RToGOLImdnIrx{x96L_R`Lb#l3zncpn6PB=vR^hKBjO
zfMuX>k9<?sJ^rkDL&#@(RO86ffCTQqyh`VwIs5%yzNOw72y7a!8FFHijR<bR^9eOL
zDQ1f7n9Cz*f@(sxj8sU^K`6%x?1^?|DScwDY?<H50Kzkc9ykqgP<zP|3PynTb3DaY
zYMxrCQNM0{DF~u)gJhj=^()%xyC2u<!e`A&pQ#bPLy8Fmqhq>h5zn5|AXrIccq<N^
z+J5@d<4kG)1ng3%)zPk?n-X_%XHOef|CWZwtsHQTLvX;Dz2}cV5i#Q|E;D8f;-<kz
zl#Vpzf5waPHv?gr_Tp;qFhRE$Dp6Xl{3@s>x>b;YEpA6;S)mdMV;OtH%}(OpOxhu7
z>vR_{oEihJtD1du$bfhsm?;V4(Zt*@#|ecK-e^U7j#ig_AkqGG)=tLhFFuYc@#*_k
zfs|gvH;+%d`Z}14Rt6lu%pv;~HHXnhfi8J29hjdy8$IV9PK;ScInbYglGF4DucY1E
zg6tO=nf&FlCA_-if143-SsmdK!3G*A^XIKV)k1=8R`A2AWi`zdGkU?ojd*{<8Sro_
zK5ndM1Y?W_eL))aU{iAl5GBL`c7NgTjl#+guWDq9i}qmI9UwR%0Ov9we{4uk(qPLn
z%dzz7Q%j2Z$d3t&-u+3_8JLJPxs{Dpx#iMSGmpEIF)GnOoS>38xv<mnb-M!h`}}x(
z(oVw@1uE1_klzr-eT}|cm8W={kqJBwZ?y(}r-F+C53RX>J9PKLOF4f1Cj_^rBTIdq
zd>3|1bl{HYk7TB!%+h}ANGh0#mh7en#vSHzSY@=837E=&%8m!E(-cI5dQbgJ@N@%j
zZ$6fbAsuE#^}EINCOmx^xKQ9(ruR)`t8y8|!DMAq$1;z*via>{0fbH8q57C+(ap~M
zY*0qLCUJu|`geF~hk)L=AhDG;yMe8<E~Bco4&Em*Js{X5F-v2a2DJ;xw}*#^oQhb7
zhXnNfcHEPw^zpcj1w!7PL5T;xaF|&kS^XPhoJ`orB=>JzO?-r^S2heeiBh6jsgzVk
z_%nvAxv`GBjjHMaZj$4%AKkf<tUz6+(eI2s$GcYO>f{8qtcCaE6WSl_-+G`UtIaX(
zKrhG&GhP{DJUu1lLDvQq$Pvy19m&rB9?T~Hn0U1uOmr2wdBQ2l9JNS*D-gXSv3v^@
z5dIWOG;!J}A@*mc4bANr87nE0)KjosYd+2tc9Mf)n2OKu@X0T%yvMN2{DW8g0}$OK
z<EJX3TDkPiSH?ZZ!=<zC_mW5Ix2X!n;k*tOn*}H++L=on1F%rw2%W1N<M0%(*pO%E
z1#mUr=Vyu-@IR{zp0PgM-%sc@iP6bSOiWBL$@1%{Lc%!Cm`$*$bLzmewBXSfaeW&&
zj>|F8&;kno<b005Z=KxT-90?`DAqIF7T?n1fl5h5^Cb}l3{tb2EDei@xC1c5=)^>=
z`^oC^^78TVakbenj+mUB9JlrK8)T1z+9?2ObaZz5J>D&8A6)=E@7HM`1A|8C`)bp{
zH&P7-SVY-&T4kn>7J8|2w)u><)fIP0AsiXVA)UC&f)2}VpMuc{@Si{LHTm)9&mS=O
zA*d7YPLy~H`wgaY0f^JW+<ZF>mj-~F<tns`evdu?)w#XBg%&B33%av1F%33mg8F$T
zuLG!y2Vuvhrt;g&a)wF#03b$pHw*$QkWb1K_VL^qE4U8@>i>qEk@`#|rmnCy2#U9p
zoQnHA(3OntD~rDG{xll^KX10O0A2t}KA?t|C|7GbnEISS10cb8`1m+th00lA7NsKV
z>+9CDHL{ek0HX5S(H#ccIaRL9fD<M`ISLRTr+?~yj*dU->Ubz5a#XgR8+$_jdG>?n
z4-?UQK{1)Z`g9LyUP?54Cjc@O(|J$8j_dp0Y=GG!Q-CU2FoB*sKpy@D>g)sr1S}rO
zc6W7wdKavaUOT0S8zymgc~GsV1m%?U;gUy_d^=eo?Q`ev@(66>@i*n+t-^W5B6HOp
zO-{R&r-f^6_Fk)DG~8fw3_G4$Wfc|``2nOFz;IG|Y_DFe^|Q2kUw5}Y-XA^w-4bcN
zUX6gkf65vB69T~_;(!0m1&D0}D4+1nI&Owi(S)T40Dck@5=5y$*6-cfTQWsy%T$T^
zy<aEzWa!oCkB|M1PEKV#JjfI%C@28yRFsiHMng*z^f(1@H+jnmz*FwmdSXIDLWVMh
z?iSpZ4i>ERYRumP=>nJ~xJ*q=H8dtWuU74O1sB(_3{(O$c}=Iky`!JXj1Z?!G-8fk
zp@{G07ZAAf;7eRAGv_1c(O|N`7fQZ;7t=KD!@G9TE4#J&MXrE8F?{D`5ccZcUO$L>
zI>|WOG__{64t0n`G?;eq%zIcY4aEgIkwHZO{FP12=CsAhZ%lpoDMqCx3al?cT0vg<
z=5v?H!&TVjhpV13yq(WYBz$B=l}|K)wfoYV$(S<5nu6`fv%h-&;Vp2V*QlsOQjNny
z>xE0OLwK%|o)YYeh%YMI`PubH<;z@0xTTJUJr}zNIbZ-?+j&q7*Xc{@>1dTM*pG=N
zu{KNb?dzxY;Z!v=OxaTqeZ4S4afyldvRP@(33F1l(@M^$l}0|ldvb97dQdEu9Ju}G
z=BYn-<|r`l=}}x?7*LHBPZSNwQ9JjYlT`E84lH3Epj!t8gggu7PI+|tWqf;Ig&%&X
z^d~Buq~Dnm#<DOB%GqfpZ%SF@4Z~LD5T>C+aiW0p0-u}QtV`I+DbiD{Pi~jIIAi;U
zi5O0F9Qnpa3m{xCH_O{YgIEK+9d7r7`V=yQzsD`;)_9|X%!5zGl%wdHeqvSunT=*J
z|KrcWmVDJ>P|pVNG1AEhSO{HTUw^%3k-Wk$epzi)#EEt{CrvtOeg3&7nUu(UH}3Z8
z9t)nj#S(t;9=f$cUoVW};$nU8lVAmEz}vVz?!;ozZA^%bW&2D8278vOwYz(|N?DWZ
zT9;YBk#Q)-Qiux|k)jYl=CY*uf${hG#dw8abIY(cpmgj{R~e%bFjEBqItI2FZ+iPa
zc6N6Ag+*f%bNY$m_UWX(V#`^Hw}~i-{xmq;J*Nr>j&$?K7t*y~Pi9%PzLEbk)#<D7
zD0DLM3K+T*fHFWin>{afbATcQMpP#cWM!xn)%0l5&T{VEURNG}%6f#8qON{3vi2Bt
zbg$;<x9f|>6gToIkG#PlOQ5^Gy<M*0wCxi-x$pIgO58FlNj+!k!(CMxT~rlF|51`Q
z3ojk&v6rjNv6SVfukGrbL`sn|goK1bPwS@x5j8Jo!hY54b_IP&GcIS$2&EWi^)5Ao
zI|Ar)v1sX2uaV^+(Oa9+3xlg;<2Fm-ultW(MD2xrjzsq^ZUJ_1o_QAAvj!kRQ$jU3
zboG-1oS3l&9NY@2*{@YvvtH#NAv9xdqAdC?I#f6aNJ!cQd?c8tMCmd<;urVxbf_7}
zEh<759!Y5iGCgo`$>2}Xo(42~U12)mL7KLA4*P_TL?jQ2S5l=0OU^I4c@WzXDJUou
zq_4G>5J<_$fYq%!KX+zMvTDx1LV|EtCr38LSeh~zE0Aaj<h|5j%LFdfWOr}RhUl~G
z+i`#ulHzR&NIR6iuj-h(+N($hAie-Cod3eed1z>fs<tT<uQ;ZGlZC94yUi3oqN^}~
zY+myz(zm04q5gg~`b5guKMq*v25yghDFQ{dC=}}&G7n?#YB+eCTbe{DDWCLkwl$D6
zB?vTFJ_{|hjiJ|Xq>9|(g}9Dfk(~!3VF5!N7a#9s<q2pgoyn+e+*9%uH(yN~(;D0a
zQ`t4WK;aKQX~a#m_3vqaj5o$+)#c%Wwu;IdWPsO%g@wUL5IY4)>yCUBCik}&jt$=b
znJ06kDBLq*-pIE9QPtMG$bQK;{?gp#NJ-0f{R{y};<c8h<`l4;7>I#IMO%jpFb)Nh
z?@|kv14y&;3JXn#GligqidHr@8EnSg#+o&j6W{m$xd4QOfQDaFTl?|j#}6zh=;#B(
z!&vC(^S?Ztz$Gp&{ulwTj5V?_s^@HLZ5|^{qc7rVn31HpR2>0_E;$%jJ+=GjTJ2G^
zIBv1$Bl2*)*5I_IS8s0!7!!axQ?t_ogz53Ju9b<Av9!22hjzF5YLS7Kb{cqqHyQw)
z*#hw!Kxg#y7RSeHeC{s6e1O{ksMz+lx!7m1oNwUQ;^G}MHd@-x*l}4|`fuNgBKHmq
zB*;*~`v?nWDn7ocf=lXm={{<xGE_@DZ-noWbqsC&WV}-FRS`L2|M3z}5+ztHqKjSd
zWIv#1ZIp9xjSpG_1T{35wp*Vp=u7*c&Nnu$rM*RH)3-^Ux?(#VvCo+`sY8EWS2b()
z&Ql}Gj<q(2gwpIkp2Ya2fBEtTIkwkCEN7&U%I9$sKszqL>u&TXIW^3~99C#3R%JGz
zG~E3?8^#rrpnR*Kpy2KO7tpXivZqMpRbkGa{cnVBVsvzLdRhh<K+*7zzvFUgi|*Xx
zb7?U{*CMN43@Jd54w$kQ_yY@N<h>u_f_mW_;%fy+NC%^7!yU`p)?0~FFj#il?~O~j
zYBgLBue&85ZTc{s#HF_`79)D(G%r4kU@1?xTF<bH{aNV@1#^P2a?;|?bw>~b+pm|@
zeu3Bn?m>PU3eB6a1l0oyDmJ!JPeVW_`}ncozf~F@2+G_B{<)}vzP<atIO)p>7zm#^
zIN0Us6I1^kF|)Q5iwL9&lo+B=<SWFsdYk@!qeu1R)0@0e-YIW@Q27_`EMDcQ0iaE_
z*m>DbJM;&4oMMpRl1gv*qGVLg!KcE$+iIERSGYd+2Q=h$vOeW2u_$*-0KGgtJp~Hp
z>Fz$Akbe~LFf;7?H8wT}xQyy*k^6IK*57p+_zzQn&|_rWI(xI!;AHmh-8&E@=<4bM
zxU{v^Pf<}3RA6*<7Xabx#@kmUf?EiVFa<MfIK|nGPBLEg@yA94>o?4O*#WfF{kz@H
zq;WyslKo=5Q^8ItCg(Mw78CN!O24HRANs`Iycl63iMSRKs`*O8PEcgZ^xUPZp7{$%
zd4E?4S_%I&qN1VEDBkWa#RF9UA*&ToJo-d>K0ZD=y5g!THUR-`<|IHdx@zV9Tm<(@
z?%{&rQyo4EV>)WZZ5P8jh!Ca-=;hOJ{u(*A#lu^el`Nv%4TI1Mm~3E(LF5a<C0%YI
zW=ZII9m~fF=REpE%VocK_6N7Cm&@3piie8~cDzCsH5y|t50g)uZHs@0DCe56e=swn
z!F1qFy}*{X`^37pLdSrZTT?S`!jAFxk_3~6nR%#N1wMF3sy)Tox#p`Ldd#TYyC)0v
z!Az=QHb+8`tpIS#g3u*3Pue3a!`HJsSfGiK_hrJ41SERmip_k_IS)wHU;R!JwB@&)
z_d6?vzki<Khufy4^YHN}?7V?shJpe3yq&Li2f7h}KUzWPFEajWW{*csPM#*EEa05L
zUr3BVW4~>!WHiVwCL?Rm8;$^~2bkkPOSVSBd?U$(W<?Eenave=Q1=~*j~$N>x&+Z&
z<TdK7KZ2rmTUW}UskXEOFEctAN28?CE8fW`^Y`zPSX!ut6X}f}#DKI(kq6bl?Z76=
zjpa8ePutk0etV5YC1wZ00rZj<G|!i35l?s%^yYjX>bLT3$uXv=6f2NPf-90cJ_oiE
zeu^@m{joI?D2pXFh*ze-_!&i7Ah6of!XgE*Ai)6vri;~HPYkWOK^|#n`D-p^ilBEA
zn+4RMl)_rtZXh@_<I^l{rQM1nhI|7;6u;|Ea$qS%^G5NWKc8{dH%mnzk^0P{q@Vh>
zIssdibMtmL5*Y;NpP`D-x&eKxU|Y7-%VPdg5oJyyQz7REY!OW9(J8&dPTb4KrN?`H
zYiny@uD!gPva+%iWmQJnn72+@BokORN8a^*YbyB~Wyp^iDd9HwHS2u4)gkt}M7BU4
z<z_#pL<7aW;`Ej<_V01fJ)lsGm~$!%o&>#ld3=6eLx%zi91#f%%s9_k?0K9@1P{&1
z;&|u6B-$kF-;SFPO+EI~Qr5gLeUwGHKUUXUIw8^pe7qd-P)u^+U!E715nYrxVIb58
z#7et85@`^U{H$M6or_Du{_bY=>{3Cu5FgcA;OeP=v%<0?rfh3ww}vv5yiSC6Vi%d>
z@zoUuZljPZ2C!p~z@Ca+%{%q>_C7p3{PcyxM!+b|hPrNL97kw)xtvA*@Nkpz5ZG<1
zhWvEQ`?e)@LujsL(7)vT;>8OD1cc1YOi+JzKWx~d!U+R3Q#;=?;xsZM1dM^a!9pQ@
z*Vk^pU(m@9*I1pP4*Y~GHC7YA74vM}<1y?A0!$^WL(#V*ZB*5wOB$LUKY|qO6btAa
z-HaA<i-CY1KlheFjx26*>$lqbnqG3zi%}f(Wp$)Ove?|rzrqlUh!C3K_On}rv+&?W
zIQ5jbUHJ!gfaE~-K`pS`+5Y-LS7b|@H<3*7S;#QT4LOiSY{1P(>(=6RZhT9!3Nam@
zSc-Lh9D~06M&MT9(yT4g7Ye=}gl)9<;=!8#KD-QMb?Do>maQJ1*7X{>&d}QHgO+s>
z7ugOHP$B?~rCt-GyP$hWv@z$lGRbPU+l@to>CiwNjqz8IzW5i|e})g4+d|q~o9kr4
z(<S%fqmXKMCV^aviFQ`by5t*Z!EkV1Mjk6yJg5WYJq7|s=hmNw`Rk?+L0>vXyOd1~
z|8TS!XJ;EGuj{wscr!%Et4X$SDKqx;HngXV;2Z6)zDEzt(mxqU;SjlQ$FgoF5T*)R
zQE{nDZ;Yd6Klv^=%aP>JptJwNAIiG-Z4ym?&|r(y${DNDhJ=hFzoZ0~(xPEt)Lul>
zn%mdAs#_g2Y^yX^N`4FbV6RUPTSK-8e!;Z+3USftjc0-{nTI>I-{G`tdqTHe#mWlD
zckk<!P+0m3<78M(F>A*gNF$Q;XG1s1;zBOn-A*D`6Vlor%+2h5CON)4J3C{GmFqTf
z1A-k0Mnp@IK$QH3(`Lr+4VUC|tM&K%IHzOX#?y$raM5*>OlKNLxw7I3nh29w1*p}u
z+d1MSzgn=|Kn%LNk)&T}0Yd+YqhDvy5|n&Sn*)HV^KdilCk&(+UKyM}(yYs}hL{zq
zV(eTjfhHBEDb^EzI1;pHK0Z`|G?aN`=!nll8GalWED2Y*k@rxL3Fq}y4-3m910t}`
z#e}Af<yMO(h5^ByvVMwImKbsaPF$-I+3bsSLg_bX_X9q)XKsCe{=5vD_WU|64azMf
ztE-6}f96u~6jAT{vb5NvLHOEPb`?pl0pf0QzrR&w44@P-t#2{GbW-cw66`cr{jtjt
z3)O535fH;Ur$30xi*GgbW+IA4<-hW9s7p)p2a-4hYLl1whdcBF_{$ZEHBCEWs-O(x
z4$h@5Y=w|>I%>v9__BbaMLuUERWZzCB|Hp7td%d4`fDx1%|glAodN>z0o6_jgewg?
zpoZcMIC<5X`aLg<MdCbqis}k~zSg2`<lpSTh2o~5PGW`U&d<-2c%q^=fub9y;+!)M
zb+-dANqFw`aoo>~bK0OU-)QlpCfz_gK#BsqpEQ7(^G3Hv1YK#cks0wLpk2NuYDavI
zA1yn*#r|+f4sq<9l=|=kU<%t#%XE~}2FfQ)*t2$mOkwSgf$qH&odH?`nDG1CmfmtI
z3arfy7jFH*nN%!0v}NHtx4@+_U%e;C6+3+r(b7sAUOU{Cno@gm`+LJN<4|4kZ36V8
zDGd#93DtYju3p<gYh1$)7Q3m#%|}dUX8h0m_u6PN32|m6tT6TfNFgwWl(VUP?G4KK
z5FI2`BE*WklFt0QF52dAlHXGD@8pXFLImNbaWNg*UcNvNaYAaq^)j){ES5hV-m@j+
zz%MoB$MXj~i%x@)pojDL)ZRYcSCUIv?%Y<FP_XCrqM+&=ShclW*30C;DJj=EWIB*J
z091Vn;OuFn%_^M5o|qI=e$MT<9~?j&V*i2GymD|OZj9}<1&LVs-J*x5EI<w+IxnI{
zJN-w34o7*WxLr_LhOxEk>x8s3-N)kXSz~DZ;d8QAPR>mSvxa<#a`B=MZ%54ov-QS>
zUgs$?V(jhg81fVOGjvj5y8mKv#A?+VTP^s&p|zHSLnt-K2r>`@u!ucz(ayCf%bmYE
z4|$)<-v~{Oy?XGPo>l?YF%p^9-2E3fyO7cgdA0mLudCHb`kav{Ac(J?pc0X-we92v
zZSn<uVaQWbo?NiddUyr<65jO}>|3Yu<L+zi9X!SI>qMao3C6CJ-=M_t4CKMb8MgDq
zr_AYtMSLF@F&L8E-~LQTLWYE3+VO2`$NwnU+m{H7)u%a3PZ`~yHhMUhguKE4r;w+l
zHvr{IKy?;Dg~}z^-ukC}Y<XBq!9-xi0fxV2rF(F$A5}SRproVmzDB3oVXO-!*4zwY
znw`ButYsPTNLopMDH;@<OZ-dt^rDO8FC-Ei9#0LCcwx;TWspu1xkqk;xwQ&1kOwJd
zJWlU}cfP$fvml)pyqVbAQ_jqKu}7W2N{VW*-VqvfoM@H!{M4!%kbCG$?iSfwZLbE^
zlB1upc7VAcQ{*=mjM{VSS+6c6(nAT%uMZD_NI>v7vBz?DzVmW>Cg_dRk1NPDtgV1b
z7$xK-V4_IH-|P$1m-g3%S~;f02}rSlA~po@BF<&%uHML(I+lis^GIc+^FLR!fm9-+
zdP>YWt(%G&lThSSt?OuLQ36?6CRQ1FHI*aJvwAo{5rh{x<Y#muQMd+a%LAW}Z~V|U
zj!@+d(zz=0c9ccVvA@-XOp1!eNT?5D{E`n7L#yjJ^PLn6f3*xNwB7m#kU1pm9yaFX
z2zwevRMH67>aA`Jg2`?Zqk5W*zKBd}#SZ$`+;}ZD{5zlxTcH-NO^<dv_T%FN(p%Cz
z3=(<Gf#R@}Dj?ea582t$UzD-bU)M;0vVaPSa!Qn_3&c7!fQ$}PhgPvZNddWmpWn<w
z;|XjLCt$K2DRF6rudDfjbckKfiVF;Z>tDuG87Z%*DID5!{4vted@xgQUG-%X0C)a?
zUDi||5{-nV6zoOx^kQ`=-=oY{RT)TP+nX7ij)%+3%OpKdS>_~MvB?U3mZbhVo4G=b
zlAg#H)wT=#@x7eKFz_^LRK>fEL-mz9%6VRVMGR5YkrO;GZqtEi-9P#IM>E)kgop^b
z0>Dq(#a|8J%E@Uj1YagvVdV7LjyU|IBqB7Go950>Npyg|Y_hL00{T!uJ~UTnC*t=Y
zNRj{jyIhV6wiq6&Bw(c~MqGw-cKEnfy2|ajqfty4N}CR*cLNhqnX-WC02t=LC0_qu
zDW}{_|4+&(TsJ_+y<6gakh?b=Z@gOogO+saW|#%7aAN3XP(mc%-F&KoH2R!<x8mT6
zJ?L&SPX+x|7_{M(LA<)AAP?Ty=yJw3VkJxlfDHhcfB&v%x&HF?tHy^9bU0xNas^^J
zD)fnt4fBPPd!DMQs=2wK!vPc&K>Z6ok^&Fag+HS?bNtxe&8_Y|qi6G?9)qB&3XzjB
zqGY_4ujFuP`gq>xwACP%Q@7&5%1X|tIU_zAjB~nmW|0bfhXN9;wD3Gk0^V<qKf22Z
zG#4lo5ehavKOf2v$ji-LU0nt2et>cOy}!4zw8X)|0sjkd0KoS}YBAR}G>2WZFl7D(
zXk_XJd~z7W06AE!dd9k9I@s+nsxPa%s5nipmI2>`m<fM1S=g~#(Z+`VUpT!Aj3(e@
z1G;ZAm^lPy4hYZx-?^kVS~Z&a&%SBQl=Bh4<~rSzBz4*pUY4f<YVO~j_n%zS>J==8
zG#MC^G=IV}v_2EF`SMih>LjBD>nVThc)*uG=1srvm;sOLBP?w!aykHoyC+3+#2c{G
z{at}78z~@Cd1u@(UR>vfN3f<2(zLQh9i2}&4*rrgBV8DRu%fGsFt1j#q*2#J)v7pK
zUB~wJ0u;0Dd3LsLyL3^%*?14Gm@Q&fx_}>Gw?o>5RYsJK`a9-O>Hrrs{4eTP7GRly
z&=KR+IQ5q_5;(q2QC8#mIKhB_hszB30}vQkNux13Ysn|@)@W5-er|K{XeGQ0X3@OF
zL<LG*%NlQGva^Po2NgLSObcWV0V@bn$$?j+#-2R5b@|qCVNokn7SC@{#7Gbr*R}_h
zk)cp(lc^+|lLHFVa9`F3nR!l7f45hpHQzd`P*aEQ86#6{7)KAL2n2$tX_*#0|LkUC
zuG*Fc@Z_HAXf>M9!&dSM475IQ;DsAr=w$wVpvZe;Or@i}0;?@?h4he9PFri9<u@n^
za>d=Hq~NbooA5t_@ZzJ+^3^z(Xh%Qoz39-$;b*?c9MK#C69&|h8r*HR6vvkJD0Q!k
z<4ECnmT1)=Hed@w;89Z#7&&K}T3_kCFv(|3{ni<a0!$LCYIgR_;gWQT8K>kJUIT$A
zFP{rOn3%zJcJ_yZ>iN?TZbbm3yB}uKNq}uJp$4t_CBKFS--#zXsA~50X)qGU0897^
zWATj9rM7B@$LxDkidRn_n^o8s&};!@X(c4UG%s~%XvjEc5mB_-YpbRq%3B#$Q-=Ve
ze<`$>2ao(q(7B8N!tJOm!eTor><)*@$i7kG4m?tmG5=q55;Rg5iDv>S;3V4!@i?3Q
zZrR^Q7M^fQ67`U!^P6#l3H!^^n&ZznlpASWn27x;Yr{RmHzIrMAB%}Fh_A0#k*x7m
zVKjgIYWBxQJhCKgM+m{Rf+G^I0#0#n@Rfqi26GG8iD<SEfr}$fSZZBz(pj-s=LvsT
z&7R;L2CG}ZI2s`?+Ze%FO$Zjh=|9=-NA8h*qJYWJ&o`nRy#`ez3wED(zF0Mw*44)w
z=dJ?48^Rb6U^>==l!mJ<&V*MM&Wk7D1CwBXU6ql@8HYwkB^%)V1h0SpEjR=0F-U1(
zfNA$b$p+N+HLh5ncZJ|RXUmr-5Far9viC&u2!pJ5D*aVsok>c%feI<)905USzVE2+
zbVw<I$fGvyXF@4i^!pAV3I=q5%PIAxRj+AZLzDEI7IC?gof}kQ@Ym}X&j+1pLAS=f
zC|3Mhfu^s^!!POK(_>pZrs4Hxe#{1fvo9dGfdOR9Zg#$`w@4>_*l3b&G7pC$!U3Qx
z)8<OMZK$f)rEC{P6EuG^li||ZG1nOn+a7RdrE<&B!_$VJ0_^mBYT^8tg&JKt96p3B
zG#7A2(PMG|pWoM5ILnTch?Kw-JDOnWlK&ZCaDMHz6}j-ym!tAEp?~}7jX~9W(7>sN
zf)pB@c3TA+I`k^c9<3e>b(oV1E&fIM2ax`!H`&mgWK6M0sl3ooBq$x?Fp87|=n1Hv
z5o{xl=vvLpBn#cFlKmi$cBPQel%oBrK|~~C5<A?SGiE;IALKsmfz$~8r_Jss`+p<%
zRiECx%(j?qcwkxwX#m;qjvg6fkVp;bH}wUmH`V)cf}f}p4#ijVKI^b!Hwy@G#VhOe
zK7qKE&Q_<H9V`9fm3!6=(?oV!^U!RRnI`?`73l1$_%;Kv->xNqVEdnmiVFPp!(5WL
z4bP`jE#u|%8Da$SjX$7s&n;!9hwr%IqEPTW8T!cdn{gPzDnn}y3V>RCIlN)wGAYA@
z>iw@A9Bm<loOm@tiQ`<dEQ-&y>eb1jK15sx^?(ck!pnwNvoJ2Qt&&N&XM@cd&X3EX
z^;C}?_Gl+@(K+du(f8gmM5VE=#}^<*xQ*=YZGbcQrZVFC2D&~%uz(BGwg|)3(MrPf
zbYjRp1i=Q0oV+w;mPk}B-*Y~8ryA5fA^Y$MLhrJ&nlp3+0LhWW+0#&i9cIm3va>_i
z$7{cbedM4^#p|u8(BqGVSwB^kkwCY5r82wrcfyJbm)~`Nz7L6ag7^2y$wn$(`K0Q@
zt!lYG6(L}1^6eVupXZ_@2oYLlwCu}&$kr%zh9V5p#v(k0sjUt+>a3|LnvY2<cd1oE
zwDIQe42(4FF4&#}+naVEJi@!-n+!taZgP2<Zo%AtOz+&junR+#FAl}J)Su#kNGjNd
zGl1P#mUuXjtuuQjR{j*PR8KGrHrG{^5qOuf+`c0%_M}3&k6a}LNZ6R%q`>TInZB{q
z(u&-omR0!G6nA;fNV=p85(0?55AAl(-u_O56V-_3(IPA=E;~Iw`3Oz}Bp=&7tSO9U
zm)c?zKgh~uSue&2C3%4hG01--D$-4Wlxmb{tVq&Gcl*90p%)fu0!sHn*1dFJ5htL?
z%p(gmzkJRy0oPV3ChAwTMj)SiG(Z)!j<8YjAqbdV)_Ii?9|p!U<VLno@jtb16O~yo
z0lyc{;5sM!P6aw5!3>j+jm#?olV{Nom~}(U&L*FjS#UXWudHh?n`x%uF6)Me-3ZCf
zZf!Sb)t#jwgsv@g@iZ#-lX8H{4kd)JL1kpg-oS6~I{GDi&ltWNKN~Y3JVRJ>bFy21
zKK6%Se+A^Q0>h%MVHpE{Oh}|N?RG^vuiL9aS44_+)#D8=wBukrhyfXDDy&q}%2mh+
z_+eKU)+-PQDmCoA0GYp5@8rALNRc4^fZIc{ZtKEDm)u=vZ|hOZtWUq}-~rP%kYSX0
z9%pa7%P(p#(-<S=X_cgmV+SI!%<!r)8^cq4B}rAJ?A=b`Rq6-4RgqL+lOX!U4G4<R
z^HG*};pGqz*G9JTeiT$1!hr0vJEGklw|r0jX^uwG6<btY2&z($%IF1QY^XV>UCT{j
zuL({>SH-VWIRKS`9#E>JeiVwmsfwij4FI&Ml}s3SM}DZY&FD4RH5=87y>&QsKM4wH
z2>OB+p1uX6!$B%z7cR4hGX!`n#`1ZVyq!RU4`@KOwz2}4b02VrLqnMVH~8!_{9O0+
z%r59%A+8wn)35jDhWUBqpjXCz|0fbaIS<#?#F1lVsJw++L2qtxu?3)Ru(7ex(b0hx
zb5QyY!VVUD3w~8ogAN<1s9;m%7l4L2)n{T-QAAy97@RbrojZ@+8+Eo3<wKie<LX%<
zW?%16-?OTbO1_PW8WbB!PRXTZPLk)FSg-oW-li6&U>d>iNtt%`cN$f(!kDE$5kQwG
zG6m>F2l)eNbf#xuhyajeOw3ZFONjzC*ua*SmLP0Usjt;qc+7PPM#3cFb=@bVFacXP
z*+=&IL3_>DsrqzZf}EpOZkErF>x7)k(p-5~xHJXf2^<Ki*YXjV@FP-`42kzdXol2B
zCVeoA6K+IHJexCjkj0ILd8RXkyoiX1^n5PVV`UPOlg*m}fv4=p4^=80x<t8Pv7C4G
z8;%~25t9NffPli%a!m<~t3S9EAc_6c8+GoHC|c4x(~C7KuN9>Am@v0!YY4AjCjL*q
z6o_)cn$vu_xvT)0sJxu{Uja7q(<iBgQBtp9A^+M*zABykqCREp=N;rgvpVAu&^Zoh
z$^eR;6iUbta9gZ*0L=lQoeUcrn~Y3PP0d&r9Sv>I56B9cDO<|${%Ei>(l-xk7bD+a
z9TYK7AO_M2%@5AEb4w4dcb7JxonGuuM=;u}SFaw=i$s7kA}7z%2Z#}V#7A)AQh9Hg
zlK{DB(uDn@`ub0*I{ieOn@5XP-Qn?JQ!Eoyf#g<hK81Y1bP5Hr3Q5TNUwF=CHYtb;
zM<zRql=^HD4tT{`w&O!1p1W<~h$%_v+|E3i#F%>{ibaffe*8vsE@IE`ZNc(b?TFV-
z&==hH*DR(mt{$ZAO@q6rW@2J^1eA|6k>|VZ0i}MqT2#do|7SyqXt%!NKAK8#BLfU)
z?+O{&<<f0Ph#`^o%-SQ3htc82#)24!7nFm^4HxZXnJ}fUjIzS7=`|R*2|yjWc0P@|
zUEhmG`YS{Lfn3`EunQ3SDmAg_ej)bZ;@Tkt1u=R<%6kaQ*a%ciAgqMUwMYvpzT!W)
zntsS}mJ59<{1bNKA)+890PkPzSR7E^<XaU#%t5^MObiq8`Gb+(Q($%>h{FY_vodFb
zQPeNY_A<XPoa}OdFc_jVSb(ZU9{&b8CGXdx)CA3yv<C+;M+P!FyW$;@^~Is^PYxFu
z6R(lVBh&wYIM|=Up*Vm#$RsLiJ9ce-9<q$8vx^PP7X#og{kwY@u=oCdwfy!?pw7ZH
zuH6)iOi-m{LZPTKg~N6iaM9v>e><bjjet%=PAHwVF)JYeVUv|sPyr&m(3Cl)=fy-x
zxmsM5X~h3|546)SB9VJz<KTc+Ndh-OqF?&E$pbXffd4bpsa6QQ3MFa9vgntilv<&}
z$=R7Pf7j<q`xO{x+!=KWG)X4L#<n}7YWj<lz?SpxpPefgQ~FDlhJh-y`;VsogQh>%
z<Yp%-3P&MPra?nZEqu3M-H9{#!Gbdt*g>cXdsx@1rk;o7OYCzeW9!`<mEw2WKdp0U
z`@m~3z#AuCOTN9ICrtB{F}KeL$vFlwH>2LK_azg;m)!sq1uTJli`yuk#cvfAN6p?q
z7X}9hF%@=jU<eX;fkSGc2zZ=Yk<x`9Z0zY~uR0gB){9AP(BlaV-}JcnCn58mI2kJN
z$eCXr)h<<l0Ws|NP(5mXesXdHs_jE7-fP%uz=S$GbHXTh@6^=+BJ@lQB<u4F3*fB>
zp(4MWP_VGBPEII-WT<e2vtkqvcmdxK^!|f)Ya9Xc(CKMMp(_bVperwCDD;kJ8FbTc
zf;Y-EE!{J-va-_9^mwk^9ktrs12FI3T>ze~jX&Iu7QxFdu)Hj{aGyO}SzA;4r+GK+
z%NKv}003i=U~V1MEfrd5G2#Qn3G*^LRNcwx3@~H>P$7zpf`QQtx*fo42Y`bC^v3(^
zYxh{0{CD)vQG->B6Z$uTzJQRpOd}%J5WeO=n{f@nSc*_vTU)!<`%AB*X1ANukJgqw
zqM}$OZEbH@SSrA%8=ISm|6Eei(yfmVcOo~v%E+)+j1(49Q&8lTm)qW+12X}z=C1B;
z_KaD+_5agdTUAWD1t@ugfBt-qj6A=*+_dMN9*+(bC+P%^gMo+V3P{rbn!c_sFAq=6
zlUt~p0(>|$f!pLvGKGXa=bi^1+R)YA4c;mH_}H8|GC(&*?yLC;Jgs2;{eR!K1CMP0
zu0c8i4EUNrR^aA+;4~NPs2|`Ge)LSa4Y-0wSk33f=T*QHDb!U|fD^LMPO8t}@~?iz
zW=0F(_WwB%zy*W%_EyjIV+8fy6L!!4_hor$X{r71o98oT{hR;)=lqL{-GSgga6<*~
zD3v8kQVzHA_TTvjTL1dzf7!c$)I<%Q$3IRk+iKb@!K0QMt`Ko-lH&!1QwI`)-`s1t
zcVI?@u9$1?p_v<|D&`zjy1^rs$aSAJL+1Cn2mep|S6n)r*t|Uic#6R0n{VuYF|ABo
zuyEJWq(B|9=btMj+6raj*I!rQFq`cw;(Gt#-@5%#YtKF3{Jb*A>w4*CeV!$)(K07`
zv$npnI9IlNYS6v+-><*^I@eOJA9w=I-8^o^yzR4}SKiGt|Gdn>N+RRQv6m&Aa;t&k
zX3HuqWa`qmS`QUi%<)_9)N%g#VO8cQQu8e)Fu(sE&9U+JTb<Lu1suE9#p_L1@!U7L
z*DZNxjNSb6DxR~>KC9Y$Zja6cDK@E9mqB}=>-OJ&SyFR<{q@(Nc^9d_f7ml5+}2+=
z=2;x0cRg!s*y^d3@d~Cfo0%D0KLWR)x*A?!SfIfs#UOIjfw^IkL<U2E2s1B3SJDDT
chroIp>!;;`^1t<g2TCz`y85}Sb4q9e0D$J{1^@s6

literal 0
HcmV?d00001

diff --git a/prealable.png b/prealable.png
new file mode 100644
index 0000000000000000000000000000000000000000..3ec4b707d4adc9f817728d0c0b3578b72cac4009
GIT binary patch
literal 28794
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

literal 0
HcmV?d00001

diff --git a/recherche.c b/recherche.c
new file mode 100644
index 0000000..9e22c1e
--- /dev/null
+++ b/recherche.c
@@ -0,0 +1,109 @@
+/**
+ Recherche d'un entier alétoire dans un tableau de valeurs aléatoires
+ */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <time.h>
+
+#define MAX_VALEUR 150000
+
+int *generer_tableau(long long unsigned int n)
+{
+	int *tableau = malloc(n*sizeof(int));
+	long long unsigned int i;
+
+	for (i=0; i<n; i++) {
+		tableau[i] = rand()%MAX_VALEUR;
+	}
+
+	return tableau;
+}
+
+void afficher_tableau(int *tableau, long long unsigned int n)
+{
+	long long unsigned int i;
+	for (i=0; i<n; i++) {
+		printf("%d ",tableau[i]);
+	}
+	printf("\n");
+
+}
+
+char rechercherV1(int *tableau, long long unsigned int n, int valeur)
+{
+	long long unsigned int i;
+	char trouve = 0;
+
+	for (i=0; i<n; i++) {
+		if (tableau[i] == valeur) {
+			trouve=1;
+		}
+	}
+
+	return trouve;
+}
+
+char rechercherV2(int *tableau, long long unsigned int n, int valeur)
+{
+	long long unsigned int i;
+	char trouve = 0;
+
+	for (i=0; i<n; i++) {
+		if (tableau[i] == valeur) {
+			return 1;
+		}
+	}
+
+	return 0;
+}
+
+
+int main(int argc, char *argv[])
+{
+	int *tableau;
+	int taille, valeur;
+	char trouve;
+	int version;
+
+	if (argc<2) {
+		printf("%s: opérande manquant\n",argv[0]);
+		printf("Recherche une valeur aléatoire dans un tableau d'entier aléatoire de taille n\n");
+		printf("Affiche le tableau et renvoie 1 si la valeur est trouvée, 0 sinon\n");
+		exit(1);
+		printf("Usage: %s taille version [graine]\n",argv[0]);
+	}
+
+	unsigned int graine;
+	if (argc>3) {
+		graine = atoi(argv[3]);
+	} else {
+		graine = time(NULL);
+	}
+
+	srand(graine);
+
+	taille = strtoull(argv[1], (char **) NULL, 10);
+	version = strtoull(argv[2], (char **) NULL, 10);
+	valeur = rand()%MAX_VALEUR;
+	tableau = generer_tableau(taille);
+
+	switch(version) {
+	case 1:
+		afficher_tableau(tableau,taille);
+		trouve = rechercherV1(tableau, taille, valeur);
+		break;
+	case 2:
+		trouve = rechercherV1(tableau, taille, valeur);
+		break;
+	case 3:
+		afficher_tableau(tableau,taille);
+		trouve = rechercherV2(tableau, taille, valeur);
+		break;
+	case 4:
+		trouve = rechercherV2(tableau, taille, valeur);
+		break;
+	}
+
+  printf("Valeur %d trouve: %d\n",valeur, trouve);
+}
-- 
GitLab