From 8d547fdab0c58dcb95eb8ffe4ad7f749b7e1f5cc Mon Sep 17 00:00:00 2001 From: DIALLO <mamadou.diallo4.etu@univ-lille.fr> Date: Thu, 27 Feb 2025 13:55:44 +0100 Subject: [PATCH] experiment_load_factor --- .idea/.gitignore | 3 ++ .../inspectionProfiles/profiles_settings.xml | 6 +++ .idea/misc.xml | 7 +++ .idea/modules.xml | 8 ++++ .idea/tp2-hachage.iml | 12 +++++ .idea/vcs.xml | 6 +++ __pycache__/tp_2_miso_mphf.cpython-313.pyc | Bin 0 -> 6241 bytes histogramme.png | Bin 0 -> 16997 bytes mphf.png | Bin 0 -> 30166 bytes tp_2_miso_dict.py | 41 +++++++++++++++++- 10 files changed, 82 insertions(+), 1 deletion(-) create mode 100644 .idea/.gitignore create mode 100644 .idea/inspectionProfiles/profiles_settings.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/tp2-hachage.iml create mode 100644 .idea/vcs.xml create mode 100644 __pycache__/tp_2_miso_mphf.cpython-313.pyc create mode 100644 histogramme.png create mode 100644 mphf.png diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml new file mode 100644 index 0000000..105ce2d --- /dev/null +++ b/.idea/inspectionProfiles/profiles_settings.xml @@ -0,0 +1,6 @@ +<component name="InspectionProjectProfileManager"> + <settings> + <option name="USE_PROJECT_PROFILE" value="false" /> + <version value="1.0" /> + </settings> +</component> \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..055f8e6 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="Black"> + <option name="sdkName" value="Python 3.13 (environnement)" /> + </component> + <component name="ProjectRootManager" version="2" project-jdk-name="Python 3.13 (environnement)" project-jdk-type="Python SDK" /> +</project> \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..28dfc9a --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="ProjectModuleManager"> + <modules> + <module fileurl="file://$PROJECT_DIR$/.idea/tp2-hachage.iml" filepath="$PROJECT_DIR$/.idea/tp2-hachage.iml" /> + </modules> + </component> +</project> \ No newline at end of file diff --git a/.idea/tp2-hachage.iml b/.idea/tp2-hachage.iml new file mode 100644 index 0000000..a780159 --- /dev/null +++ b/.idea/tp2-hachage.iml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<module type="PYTHON_MODULE" version="4"> + <component name="NewModuleRootManager"> + <content url="file://$MODULE_DIR$" /> + <orderEntry type="jdk" jdkName="Python 3.13 (environnement)" jdkType="Python SDK" /> + <orderEntry type="sourceFolder" forTests="false" /> + </component> + <component name="PyDocumentationSettings"> + <option name="format" value="PLAIN" /> + <option name="myDocStringFormat" value="Plain" /> + </component> +</module> \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="VcsDirectoryMappings"> + <mapping directory="" vcs="Git" /> + </component> +</project> \ No newline at end of file diff --git a/__pycache__/tp_2_miso_mphf.cpython-313.pyc b/__pycache__/tp_2_miso_mphf.cpython-313.pyc new file mode 100644 index 0000000000000000000000000000000000000000..28673da4928e5debf5d1e2ca9e52a701471e1cef GIT binary patch literal 6241 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 literal 0 HcmV?d00001 diff --git a/histogramme.png b/histogramme.png new file mode 100644 index 0000000000000000000000000000000000000000..2b6e07f92367b27c2fe77374b212c57977df2a1b GIT binary patch literal 16997 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 JF6*2UngCcB5a9p- literal 0 HcmV?d00001 diff --git a/mphf.png b/mphf.png new file mode 100644 index 0000000000000000000000000000000000000000..972f666ddf89536cd02c5df7f5fc95361430c896 GIT binary patch literal 30166 zcmeAS@N?(olHy`uVBq!ia0y~yU}|7sV0^&A#=yW}dhyN^1_lPJ64!{5;QX|b^2DN4 z2H(Vzf}H%4oXjMJvecsD%=|oKJwpRM1098ol9GaAD}DW3xC*`eqICT!MG-{|3=EtF z9+AZi4E%{8%(%jSc_srxsgtLRV@SoEw|ChqL_%+~Jusj9MSzKgWAAq@*ANi_mYj~d z2s>AYjR~wS8yjR@|B8fc`1_41$vwbf7VngM-3qD>P8pdK=KWm%Txau}JhPK+Q)b?* zefK(QQ|b-d;Ie0Ti_cZ}&0m%|OF&RiaN_w7=DQeNTwGj2wn{Jv2?`4SlwfNB@$K3e z6+jC56B#^QTwI<c4;$%Y&zTN<eSQ7(=JR&il9G~c;;kJW9VZ0rL>c5Pi(J<2`Q+8v z-#`7t36I6y&Mq!4DIE5`mrXtja*OFq*s{fB=fgJX9z8Bl&?MHZVk`LY;9#iKpPxT} zo}BD&7rF5L&xh^utG?geo<DzvtLyso#csV%u0`jIZjRVjvop&5&((!B8tJL;^W*Q_ z`(?N<?d+_e>3e@X>b|;mQ|OoH5BA>Lnyntnd;9CW>US$YombUby~=8S+?!8#k8Ks5 z-}`yO_Rqf<0`|`kDUaToHFd_t&*$y+@7I2xd-3Q8t~=90yKm1v@l9Fq`ivDTG)|s6 zrS<8T{r^A7`}y|%`E=T~uHe=71q&21FD>c3Q*>JQ)BFAZ#W+J`{;yYN@vr!MV`H-G zsVDEgeLim=exj=W-_PftZe_3UT>ta)dHbto{=UAVt2spEKYqFF@BR2#Z@10;HIc@K zuU)^~%3eQp_4<9cUjCe&zb|s#{(n`RoScSha>9b|Z2NM>RXlcy--Ck(4~oW_<%isR z>-$8PiJAH7mzS4~^6%OFJYWCs@t0fa^J~?vt_q#}=1tD_|KIohemD8^Icxt<pFXAB z-BtSOob~$?e|~;W{rv1~(DuB$#d^Z)WZ&=o9yjs1b=eyYQBj7xo10waDjqOyT-3%Z zz3Q_q)B8<q4gR)Yr*LgbPD(n$RinlrW0EnU<n=Y*HF^pP4tH0)`tkesYGG5sz{uvc z_x4tw7LTt9RAF#gV3Kk|;ODQ`>+k-%&#k{F;O~T{iOTL?-D0{S0Y5If%b#50Ir)_6 zlz-p%|F?bq|NYxPfBw`wt9k#`_rSaZ`fG07i1?~nJayi@b$o4{!fH3>dwY6Lytvri z`|Yi*SF?XSZP8E7yz^DMc+INo5C5$UUVf$e)z!~c@@pUcVmLR)GWgcE+|_;-KT0ji z-rP_My;!w>aqjJHCsn7%C?zH)2Ca{?ooSXk%l)>dy1Khu%?HPok(-yDTIA;T^<Xpm zUA^iT7ZfE;v!>i~(-1!O?ceYBr*~QuK5Du3@9pjF(>ppit}bb6sC#^@cj>?TleRtm z_xJbHce~$Do2DD>m65UH%8Eeeb-Ul~Qo4ODR^GvXYP$80SKqEJeD<Wz`dz^3g*+Kd z)|H=@xZln_HAQn(nf&cVb$@>u6+UwLx<@_W@}(`A!J)_A-Q9gUfB)Yw&H2nrYsHI; zi&H;6IeBSoc6euB-?R@O3PdGzqPML%Q7tMacIwN^%UA0TS8^Udn>s!A**1OESuYCp zF7%6Df3|<qo7KLv%{=GZ)m|y$<mAknv6kQN$APz%ua?iR3wnCI>cI>*hApM9uW?zb z8J=QplD=|i$E}^k%eBr+=kH0Z=X>scB`9%!qIH7(z8{aev#jU6E-QV0Ogca0_1g-& zxV=?dvzU%$&wF)y`}$wI%iqTto?1S?ZdIS_o9r0li&9f(%y?1K>!_>RC;#{N`**X- z^`2Y$ub=<)Z{B<DW&98NWUWI4`ima@f4uwSjpY8Dr$1b9=3n_cBlF7jyFRsFYj?2; z+}z(+tH@x@p>7uPl~2|xWZ%zc(v`p8Zl62rSHYqqj9tvK0j538HQ(ReU1e-q_U+Ej z;;RQc^?&^Ren0-*rn*lj)r)TDZePh<a%P6%D@&OzM-LuspB(r9-`}U}cE1Z!-yOL* zZRO-M^7VfnhD`0{*6@qF9#h<FHDmv;SK5_79=2aS$*X>4(gGg~#s^DE|NVS^`qEPG ztDJX4{f^jHf7?=Saa^2D-GSvS$BNUpOd9I+Z}9J6NUVPRcjNqmiw9Y^EO|Cz(l*s? z{Hxw>%rAU+Xu9Za-rwTyySs}jr<7a&`1S4Bt_7N`$G6w{JU+CD{mHurNxj@B-tYgv z&TfC{>uak{zPTD6KQ(rD+0<L+AOHV*|3BnH=iA=5ZMlu#4<F@gbaJijTYlg5jlIcr z#mcweZs&(Tp1!DunVoOS{{R1?tx8{|)Z4$wkJ<8}ek1><&!4Zd^8KA78*LwuHs`g# zgNIGl$;Wsk&2nbQSQI$S<v+b?{fEQMj5^=gvz7|nSh(lit`!e%NEjxyXjwDqviztx z&#kw^q4#`L(1Hgi4LjxSEB-v49>40qor`lUi$hLx{<D9ud85v${=at@I5KbD7ty|C ziOO=joOyZIA0_<1SNVKy*6hdbv*LbVUlpqT^3u}oimdbVY+tS4*IyDLem#5kzna3B z>Bmi(><zp=-6=kQQrO>SVP9xY`(pS0Q?J+WU$^T-!vBZ6yBavIN3j(A&|_fw)@5;i z>h$IJbIU&{v)jjPnERpj_{Ofkjmv6t#NQ;>ybrwG{k5;VJNQ5U^Q7R*d+xBy*EA&N z-MQ!F<n-pWZp@AVTl4&THp~CpSA0lV>p5BN+wt{#zs-tzciG>5tNrxZvsZt8b=AAO zqvOJ*%a`AtPu{5+yzGX2zl5Pv_KgjR6OEE2ug40?$*r5FpI7_s-QCr4%a<(4IC${j ztp-NsElo{Kzl-wsd~Az)_xJn#?e^D~`^$g5b6mbYr(RE8-MzcN|9Ts*bl9V^I~x+4 zf9)^7U%UPCXY+d%$rHcI*j8-`Tka?O_Qu9!zteH`f4@eRlx!*c_2s3IJ@@Ssg?Be^ z-aPjj?}mRj>izBiZV8+9Xxq}=MQdVqZaQHWwJm366<@vgt?8mWWos&{UmvfyzApA^ zxwm=lEt9W*zTdBZU*hw4+3zQl{Y~oY>)&p_UswEV&h~p%-hc1g|NF7{M$zNVSyxvr zEq!&xvsS<4{hrT#zxIoMwM_k~_w4y|>#3}M^K4dLT^AcIZJIUZ@6M&((^q}p{eIu? zu9~pK#D#zDrXBp5^!?r4Z_my0?yQ(s|M%<l(|gvx+xtE4?D_Nl(fjN6{@wZbcz^cB zjT`-*uk7jJ(N$A(+x_?3?YZ}iEiEHu7q2_N`_q>hHNW3(zxq7y-kzJ8H_dWyWz_!u zw$;Aw+067Sg}bt^>n(pOSNTLxS3$wSy5NDs%x$Z!fABppesC*${ncMzUoU@`Y`bCp z{Hj-)Tlp&fPmilwdEzJA^LLBg`?K2l<*z+EKYzVx))kN3*H>4E-@d+oNA~Q;yzd`I zsFk0#kh}fv&F$^}xznG|t3LO#GUxe$0}jidxARCo`eqe=?{iG#y7^Ck=DoMw99t-N zDYoRIYg9_gl5O?>|0VS^zHvUDe2=SU8Rw6)=J%%@?H0Gb8{qvYVsGCH+5IB2^$U}C zK0MrR-K*NsxJ0&n^1<~?U(TL5b7qRDc38;6sLns1PV29l$+17<Lbz}HEhdx63#{%5 z*7aI``|pseo|P@L`ShKGRm|5ePt1NRw9fFw<)Wja;VXXsSi185htu-=`7SQpsS_}J z!TM-N$3_|Zx|p@>s~(*G71tNg`~C(m!~5<ug+G&Y&;JfPQug4R*jMk{8^1|yy`Ays z^7dZq6}|4cGFjm=+gtC|JX`lNq+QLn<h?^~Z?ZN+*7w+K_fwxik-zAgmp*rv>_w3- zDUB;OmU+f9%qv=p*ZyR>ek*8;h{ZOIk{1^o=W5H?U%y=2y6kb>-YUzhE{oirE}NZK z^vh?C`$eaw&&wWvJM`=8i;Ih|ynXu8uydA#jB?-eLKT$-(=L3p>HFI*HTTuk)z(wl zZ?nDs|9buYX_dRDv22ZAvD44bFU&ONM|9L@{VeXl=9XK&S2|wCYR6>DezYyzyX|3H zi(~nPp0~T+Xs_QBloT0I-T9b*Ykl8s?(2u1ot<4>vS<2poA9{QpLx5TeAWBd-|$}% zng7}_!OiY6OOJ52=hd$knF}OYLO*AGI?Bn;ZtGXqr_N{M_^_dzXB&e!^WU$lmekAn zwe%HCNPfX^{nG-=<6jpX^%Mxbv$U4)+Rd$+x4ssCOg-2sSF2l4%pQMa(}mv;7R*=v zwf_Oj+TvV3O>UFt{&THDzlJ*nPk21z1;?CIi}&1ayd8bz`x!yKAEmFZXl{(>{S}&f zf8X94%cfu2wsZIStL+b0tT?avx?E7aHfF&^cFyO@b04o@%jk1j(C}cj$vSbvzs0h@ z!>e|!-*8rdVVc=4rfuRc7&mFNED$a9dE{QRzwU2{@dxAcHjC#u8+3fOZgM{UDZzUB zw*RL##d=FOi=BO|ak`CHI;2d0TcGE0qhEDO9<CF5z8*4Vd;O5>xHeOGc*d)8_V>^8 zeojiLekf7!H}A!%S%%TqKF3r}eY*Rt*Z;(nBRl3!J)6$t;J;u$_phl7(gd6%9;h_M z{}7!j7k_6x>+#8vsoHwYI~J+6T(k~YoW}gO_Kst(b7Z@y<9*>jOou&X)syF#e9*qQ z^>A6_o$B{{Uoo|RKj_M{pJiizfy|WWwc6R%Ay=PA6js0fVE4lL`~Lrb&%b@W^y}A^ zr_O(Tvb$qn;EJUOesat`lYMp7(tq+z#(VuEA}c@b6y3Z2%m3!Oh83noPxUrfUQZTE zb#ans(!JvI$fj>W!29V-r$4{stsm-X{Z8TWHl>A5jEovhl`JCjcnW$RuU^v_m3r{o zp?}A>UcCD;ILh8We`j5lG+P7Tg_)wJJU^zk^_^U?>iXsynd2OX^xbO|WwIGRzK*Hi zYw=_1+q?-L<y+h4h3USY-|qLRZ-2@Kou2qpqNPj+pC`;Myjb|BwC#N9lJug7-jRXx zd(VA*k<sV3r*DI<tpBT{nt9QWY6VR!&FT|;)^$mo*bGV_x5HjH6ur1`lu7nW;Oroo zD=G@cBI18GnVo-eU$tgkvae{?-4C%ve-tC;o!8{fF|JvEQR?9j%XPk!G|nGt<qj1t ztju10YSa1+XD0|eKlRmeZyP(~o1HStQ!Uj5brx^le~+i<+|PA~mo2cdnCGSK?V1;E z@>9uJ{yMMi$_rW>WIr%7Zaue@^?2$}yNarL+ONM}zWco5*WI$E@!=PzE>H=};rlkz zu3_E*apA{$iksQ@hg`gVY~xSyf{%{>d5_zvMeyAW_#xVIX49m7E*W-(IgbvqzP+8l zUw4zvrk6IHE(J`^#rj4+W$F(;cIiC7YDJEgt+wF&$0tgUl>f1E3AXxmZpZIK3r=oY z^I_gP(<v_wH!sul7ul|Rcd!1pWY<57bl#Ue__mGr=7SqgI(q_Zu6vydbC*}0^7(H0 zecew|vrI4cud;Zd)YR~6?e=>?_6tf*FqFp5|5W1_`C_YX-|e^S_y3zTRXf~Dw>_ER z^bTpJr!iUIZSRJ^NblOTV4H7y0%x<#ZoT%jxGPUA-v#^kU*04$`Ni^%^Ui1Qzqz^j z>d%X%0Yz`@r$`^1tNkWhCS7!Itl)t~--Mhm?pV!gYJ4RwNj|}P$2xPl#s144f4_fO z&t%@b=clUv>YOjXE&5Mht6gA^a`3&0kGCDDVoql=R1ArIy|tuog3!B&;<g5Ub*n#z z+(h@>+kSrIVcl7s7j-t5y^Wg6*B8HBB9E0_H!HcTIlfln8Kd*L1(#Rb@i5f|?ksCM z9^vir!9iH~*MbMr#jU(|TU&g5Ef(*?quIEn>`#?byyO?-l`9zSFHULVyHgQg!@2S9 zG@Zyt->(1X*59+higocG54X(A%X)WdB*<>`+Yv7|J-%+|tdp!~t$xJtY;WZD$*eW^ zx;?ETp5<4@JtxUR#{)%AUp@~Dyxn;Fc35|>lv&K0ugOxTpDm7cH}}2Y@nP|1^KG1L z4_z-by|<fpoOS<>eFt9fw-~+&sBVd3n!_Dn-LNd+da3^T=Tlg>NoM^oICr4matgb+ zVUGQk1WPt?4Pm_{E1n+M$zZB2v5sZ^)Y5<P{@+Ds1zhy$eHLOO{rd2M1@jgAtoMeo z9F#v-s-fIwcW|e`bG?{=i7VRPKDTg-uk81HV?F10!5IaKlDRV(&%U((^P#yae$MH_ zGfEl9e?O|}+gG_Fa?OdiU0iL)<?CbCa2yohC%xlZ!fk~G$F}kvS7tJZ5&yceXrpeR zqfy=+i&9>vqa2g2oT{FuefsNWoBO%t8~zu*JGimC^r$88ZN}s4{yk=Y&6{EB68Ujv zM82(oiR#(*_Qpcruh%Z`dVPKU`nc+EH`DL#dp=Rweal2;_pHLg!Yq&0Z*OmlSIQUo zCbzqGi)FsOwKe$v`qb0YvMeOaGv8R3y$M+PeBr`{uS{zrc&{fW$h6mHUR^a+OhjZ! zTgQ&q>vmr$5bT@q>fW~8+e%M$^!DBh4GWtl#kbI{S1PNbS$o|MCvP90lHK!exFsL& z3%xCrdT0Z?1RG=K_oapAIwya8e0()P{f6A$>hEFBK|A;ugXTQirn;?vpS)qq`2&s2 zS2wMjU%&3~0Z{+s)wgT?A4RppGLnz=TwE2te%-YFFPF`}BB0!NXDX+&-JTzhx?e>c zH&FcXUm}R@aNd%oOQ%Ntn`xY$)hlft_J4cy_Pkr`_y3D}IREj>a>3_|pU<z4vu!{B z;?B;^-yZkd@3Q@8kiyfp=s+dI^Xaopv$LAncrRUB7n>c=c3bp#r}p*Q2QT+A@h}!Y zY!zSiNmWH9BY3&r)wDA+7TR$i-eYm7oa24#!uVC8tCyMP-U`|M^;+~+)9h<gcI-V> z<&$Kg_xDG!%%;<VZOdkwWKO!aCenE8-VN)X&#&M2?bB&}YhL>&C(CqmC1yODV#0Ig z&d%b~f9hplUKhQdnBb)y?78pXuk5!?+<F1;8>P2#_AQ@lU4Co&$unm{4(~{~AzxFM zd41ZZInQnO)=hi9d++tL1_m2aPmATgxUev5Z^4^KpXXOR;#{6;uqR+|)z>QmfngFt z$N2wC$hHUxPW<jr#1`ch;C*tXcITPST87S!7jqV#U#$Fv-TAZOtTPgS1ZPe^|AkRS zX;D{uVv>QY%rEccE;E${iCoq^x1C&`9c7r%(Q!`F&CTHv%cgA;zcluJ;$WI+>FM(9 zs2y~85oBmbM-30NgOZYxlKf$ij*b(@4LFy`7%2UDc)0y)$BVEz>=QaVPKamDQj?UF z%-W`O=F+2X35IFRP5Xa+eJvf!qokx{#opQ3IcdTKg?$~236?KD|9ix6C}uin;I8iF z%a^N|-1qnWR$^;-`oQ9%CD^X)kDnjDi{5whgD+@Y^Dz3jW-Y^Ng{wC9_VHX?Ts?YR z6IobTJQ5NX_<yffR8nGVn5t!N9zJQ(q$giqUUn02J)x(g<MZmuO67wG4}wP$c@8mb z5MuAVx4V4(s=|W~lXu+Mbgi{#UGK5}NsHb4S0!(*{QS($nn6o&;`(HU2+x9rt^yr} zZ2^y+QrH$QTqq<WqVoIu`|#r#TeGhA=m`l5N;cU4*OttVIFVD~BP1xeo&`2I8#=?S zSL$T;`n_R~j9#$+yjy-hG;(G~N5={cwuUDnbEcM5e>$n&tG6gKw&vr}Ea|-;4spB2 zNgJhjOnkdszhC;-!>yT@-O|p@$*li-nBRWNj2ROBO&R6CUo~;-t@u!?qNMcxAj5<= z1}VLD&c1Tb%*$%>4z+N)iC?@j;Y0I*vlkaSx2K$(q?&a@G<^I0y4|<d-QJcv`Tw8i z_C{rIB7Q#V)<5@hv;B_;%*$)P9_F{7^SMeuaN_r5F@u{&j~~DN-re1O^(>XYJ8i4K zosccRqqsV3?WEx4ex9$dtxbJ(W#y&)_4UiYpEz-1f^^;vM^=Ru2dlnZbPr7ko^#}g zi==(s9-XKy9;)gw6%SjDYJZhno%4o|?TVanT8~cbu8>KSCogquW-I!BxBT?q@Auco z9seCu`E=?l)8kSmd-hd+PW$@*!T0<1(>*7vot$Nwt)i#r*TyHi>YBQZP0ZeTlP4=r zR`;KF-u{0~P*6}vLHkqpe!18;yJG5oKK=A`di*K*`ag=GV(EPCmy7O32?rP~3m!O3 zd^%BfU4Hx(zDJuk+}-f^6xZulJN}<gGOJPCbiB+*D9|t}Uh&d1uf^UEOC=b>K3e2N zR)*Rudt?MS>^!b;=FFKX2b<YX7oWFPS5#E|^zpd-Y0>Z)MeFi+A&xWNEu9`0<aj^W z-&U1dTrZ?Cyjx87$t7=n-B0r>D=Uo(9yq+bx_bJbZ@2Ta+Pc!`*M{lseq(fVOXlR; zja`OY{G6Pc&djwA&$_ZgvHsuB<y;(rhufmI)cyUnGU3JR_4~K6XLCqBKQnXjsdem| zfAG{?`~80Z`eR3TKc829h1WE*;I!`c6Q`zXrylE(ytFad-8Aps#^mE(cic4I`<mZf za?hEcAyC;O_m)Zjtn-F0+-+%!@)IX(e)=0B*t?lUaOw)TV77*-4U7q*P9LtPeLAG| z|4yzy|C9|6KE2Iiaoq88Uga~%pWklhhxUpxsmn6WcbBVlx$FL*{nm!?_}Z(v3>^!2 z81GiU-<!@KAZVl55WTNv=PJwMR>L;}F|VY|^VTq#UfH9_aOA-4>+$t_SNUFMb}%`( zY}v9?8xjv+Nxt$$F`)WEBm0$Po{k=e_5SnijIyukghsc2kKR+Uac|pZ&&g_Xxyu6= zyWPw-yuL10J2NwLRoaFn3<8W=v+4xDD9yO~@V}djOU0L+D@>2<dTsajOYqKLuU6as z+MhDv$=PiW^w+eVXnowP$2+l7bxwK-=N=(uhfh1$1RT%&`T03i-uO)ZoT*bomt+cW ztz6gNeVXUqj>5%n?(L0MQdXWj@BF!QVOvX%R(?Kf9(q>RPCC_LZRB#lxo_4h?|6N4 z^Ku!xnuxQ9KHW^8ztV+gucyTP?gZ}h*4NIx+Pr<iN{NFaOoui(P3UR(w0ix%NvWr& zojhxPe@&LzUB^r8P4QFY=YN0D%zrAj{BCN!?CsRMyGmXE$=|y#+LUwrSw(p*-^r9o zW;gz+m59F#tug0RT6F3F!-lTeNrBSoN1jg;7jg(t2Gu^^o72vQ6hGa1JuZ5knl}q* zgs+tANQr6owUXcUY3JvyJ@x67_WBhMgdBxt&HexDwf=9T=X1;FndIII(d};FGM(CY zQu0U4m-IcL(U(2;vo;G(nZ};QD7Zvv=i~SL|Lc`mvaIU2{Wjy)G>#iF>>0<BbF%#x z{GY%4^dwJ}+%13CR)0IrEf^S@$Pm$b;Y{ScWf6-PXnwyIogaEqs7hdK{{4MQrxiVq zd^Hquy8{}l%VJv>x_a6vi*H+GK=r5Bp9?!z>$()Q9uWG=D(JD0?ZU@m!8xMh23zy* z$6aMx7qM}X$E0rcygeV?M3*cw6F9tEguT;@=T^;)hsLH2rRU1lDk!bel3{DJX-Yeu zzwf7;S<a0GvjPO4D0mc!FHn4$czs>$DlwjuQdMp1b}R5o?g)=9o$AHp_*whczlCY< z9vo~wI*obeZV!Wl={6sa2yd$Tnzj9X@3UZ)x&_OGI<<GT%hyGy_Ahv^bnW^4`hOGO z@Be@A-gH696UuHq0j8A_`TqLizgVjlRegQ6YNkvrf9IW3wyH%r%iq??USkjnyqe75 zA@}qC|9{Jwq_6B#{4IWS_X^MAR>fF>1*PxqM5f++^gl7O+<@oQ`u+b_&5B*W^O;m= zaK{neFN`|t+ys2LN0j~e@bJ=NcYe#dKRbeR7x0;8-`!mvUi(*o$LiIEh0Uw(Ix}>( z@J<nR-nU@?0=|<995Ns8t&Q3ml>9C6hqV8~{R{1u@B|8;jCR@LG_m8BQsA5Qo-U#1 z{hi;JTd9MpT}l3%v(_<kH%VNPQS=rywiTGk+V3m;<F)L>`Eo*;b^%Y+&Sy>QT#>cz z{=O#D1{W8%REEv}<pm{M7!?F3268H#VNg?QHegUuTIE$4spMXM<DD^MO9#&(h6x=j zv}A8)&1O{Dv&`el%_GW6N~hTxW@s`c-?h9q!SUsdpEYl8Y|P>d_bF^$xwB8k^3fN$ z8Fv|zw<$V{JU(pu<$`n8HBNVlNz9TfByKU^oY&X<=am5qXWM57_41VNU3@2Adq#G2 zXx(}EHU0Phsl|PHN=lcnFl@`c9oE~p?0((<zvaKPXS~X~x2G~I$Aaf@<H}tIOWGgL zS;6toU^mOL%-=5-_lFd;D_WJDh&y65J*KEr>M-x;o%hOa=VrxN$g+vcndi;%nQ7$O z%i7LZX(;09<<)gORZ(fx9Towz|3VWRw{V%Ho)TG`e7r9&-rLvrYEx6wmYv1VZ_U5G zuhzP4!Nst3F)QWtBQ`jE{{H>?q{)-to<1|n)VsT@>rzos(Ur%Y!s=PMx3`s6y?=PP zJ)4=GZ;SoAdwX}AmA#4h{kW-#X>H!!UAL~R47SzlR=;%V(v|-Q<HI8(BX4cXy?rHK z$@t;M%ndX5n&x^<S(f|z;EPEDKi6y#T6cfnqC?pXhO3#_uH;@?(kay-?z?M4+1sd- zr%xBpisC+dSc0YE>8Yu&4F4rbt-G}~`}TClv$Drt-`rKYx>oY~%bgo~{>iPdJ(6yz z*Szw;hlu!NlQ->{JbCisQ;#Z?l|DtpZ98%C?Y7@*7*&**Lo*mU_LXI9`up?w{Hs1( z8S9Sva7#)`PMR}E=itGES#2!t9N#`jJy@UoVfp@b`@=37aU9#UY15M%8<SUQ-n?tn z_dYNx^3F`F(p6FxLHn<+kN+>TO-S(Pnkj3QT7N1n+^BSs(`|ZNM@>X4TSGG&@1)o3 zcKi8mZH?N=$}Q%Rm9^@4@rqe@mv~OTvf|+{T|>jb8p%mD2H|>wa}WQh_hC>}%9mwh zGtJSB+A`tp?sD&%nmt+bTpeC;%-mkV`{BB&aCm*pEu$HyR834m9zA-bqM&f#E!0Vl z*9`5Be|*-PxA$vUwODyTz=Tzjd%s-re){+O{pp7eIsGp3_~dxueP&z5a=)BUO7h29 z1e89tG8h;e2Y-8WQ@Qljm5J+OcdtrFIyp)8+x7BycUJ!5`1b0mx9zd}XJ?yRr@q#U z+Y`YWm3wQ;M*YV><bE0bs$P&OKL6<so+dGyYtuh2(b@NI(`mh6#(Vo}e?I}us6}4? ze!qS{s9EzZu~I-sSwl^UUp05j-=`u4E-72O&S-$zS=(xU7UjObxA&HO{hx(j-`|h# z?(V)E6clvjb@{!@<<}NCGUvX$wDi_2)9fvAd#hH?*0Z;d&%VBHu35qXhTOw#ytmHV z|6g-;O=R$FlgvrAGwc8V4d>?OzARVuLUHQO-_K^}XE8D|W<}n8b93|72@?d~9_F_X zx!DKm$R#Bu&DqrLt=+Ak&Ip>(*!^nN>Moo8DJO-t?t8!Q_qwW{-}mc&ul@V=$Pt&f zzh1Au4(j=R3%tHAc5CSBuuS=y4~<dRKDIqSArWS0rmL$TeR<xh#M2CR8?V2(B=B>K zNg88zqo|~hoJ~bQ-j0WCpmOlan#f?i9S@iyw`NV<#lL>vuT`f`99?kw#0ppYgENiO zZ~eEQl~@1gqx;U+>vo6u##B`7=#emVnpgKL^S4p2wE483pP#QT{Ikq|z8)th=cjws z?^k}m#4B$X(<f)U>KMOE5c@2-i8CI}kO+#3)M8Cqw&!xt)22gOOZEre-&cEeM%VqC z&%ILB7q@QP?myoyXnmY5XemL+TZLl@E^oEJ9iOHfeZ}s_)9LY7K6xxs{G_RQ+lA}1 z%c`RtM@&q1nYcW8tYyM5$F{nxbA56c-<b=I(S=fGIV&c)dlh{=Dt`Lc*L1hb`p0a) z-&vgZRMWfF`NQ`;jKTJ{RS_x{dz|iZ9e$c~Ys<<LpXb;A+sU;ne0`km#*G_aS)RGH z=x~m9V`HQ0w~Z>FvOrlt_+iX}5Vee-u0<W%XHH$(S)5+|!QDmg#{d3~JzLo(*kp9M z=FSnEAMLm;|NgpJ4`UUXXLooV;7L$25@c%#<upwfy&{s`0-Bf6$^Ejwq;;eGMe)x^ zI)(GH87I!|W!%+S6I8eE#Kg7fvl}`)c#f$h6mfSNdMvOkc`?E3S;fDf&!4VZy)NkR z0njQ2*J<vb_<wzmt^IoS({cIw6Z`-F(~htIyR|lJuUoIw%9)85LV9jSefZ~M_xJ_h z#HN^u6EY^ga?QTb*|AEB*`bJAa<{~O!A9w0EHT@1W}ca0=)CX$zv`)L->z%RzqrUX zXmyybq)o+!S(ksdipOox@6O5I!+%WJCG3ZId`;qkC_%})e{MH&D!8O@<uEN%GMI0i zw{#;f>x(%D|6UD`-x({$>?ZzQYNCHCgRtOChHQq;4lQY6hmI2|pe|?VvL>5}Pjt8a zF1419l~Ph_WmFIhOtsn-yhOoW#bOf3R4E>Y&W=?}er{jfVeh}wC56vMT2L@lO|3y- zBBvq4nv``jH@UbyHq5*tQozH|dBR45A#Bou1qxrkL%XJ(bw00-YlJRps+suY?6%)? zm}hkOv^-`A6XI!*5f)a~)YN=c7!fh!M<GLm(T->Q2j%-bWoEx)`?8FyEN8k$-87Ga z7LVREP<eTxk1;{@(3Ok@?2RsI4G;Y7%~o~^IXtp9U~K8|X=O}Mb?TL07JT?iMrCEC zn|Qm2>F-U?&Nuu67nze286sE<4nB3AexlvD;pYGT4xhGMAs3ga3pY5ZR8D?tXWY;U z4U)Fx{~b@}ig9v@cV_36WOj7S0k;6o{Hy=?*7eU#)|QSlkYMs>bazQH0tJs2^YR8| zCE;WS50{XOT--AmoLrV212qyB&Ap*KX||@2gqG0tLoY4~2#OvA32&NJ|M+$%OTms% zB_nyzN~fvQ7!Ey)S29uuaYTDT;a&tbSO^qVOyH<mGP&Bd=#ndwlS|e%P+oJ%GX%9v zJld~Yt2D4kf}(FbSfL6iZdk#N?y+nDIYtfQn2cLD8734n2v6(;>pa0S;f=|}hJ=Z; z*7oZ03I=Wj>;Ceie(UWn7B*0NSd;`-sFCweRjE4x<h#Hbj6N=6U{5R(a<E{P5sYME zc2HW>HDOo0igoA_dygey(u=*FT|$(=Ub*>yeOUIy0|H1wjc50}q$q-Y#{}}76Uf@B z;vi-cm>GV{apD?brGJe|TW?9lN+~T00=r_xvv{BXVj*Wi!8o-Glu#>g&aSs)<`9fz z204LiHdEi<{~af!z=oJJwn!duNihW3b4vN|h7&6nE7dV7eSF)a$16C|9i%4IgULgC z;(`E>+nxx5oqO?r|KtCH6I;Q7*TM6^3e*C84feSlsMz6NwT0nBt9YD%y}f<qgGTl@ z=Tp<uPv6*>ywt5%N=Q&p@o*dOWM%h0i@*Ds+4)XPP;^$&(ecT;x=NMb_REAP&!1cC zZm#)R1nMcYw6u6^PCNVLFu%Rdr=R)zel9b~y5g}abhVmo)t3qT|Np!Fvef^SlS{~= zFDetyC@a<dQ~LN86i*X3GCp{9b@kJ?+wV`~leMz2{SWG9?Wz2n^6t*gO-V<&ENgyj zh$%j6`t3S57gxxK>9c2RgF4+cUoN_9?U-#-xv6&M-s<nGQuTH|5xTh{v6;&tfA?Fn z$Q=a>YiC*(KRdCb@NvqiDVm$|?pnRPv2ihvj730DP>_utx8TI%fB!#<>SAdJr?&H% zqB_dT&e`|&?A%uIF=?&;e7jqqp^ka}NG-<cclXuqZc|zlvopvxZbL%jv-j`UtE#Kt zo<7qwdzzT2=+dW8o~$@7tnPQ^*0$W&UuGU|=fBRzCzDZsXK!_R?wcDMza3{~WsSPK zt90wi;N?{@V*X2(E?xP*dB4k(=4rlHw`c~=`u0^~vA2^;>V#vjw}(A6ZO907<&FLS z@9*4s@w>~`K6(1o()RwUQ0>eM3mU=BIClTr+uNWeQEyK#c&2A-8@ny<ZdUxUuX{Jb zTZoU}zh5u+`gBE*Sb0%VQAngrzRQ!tZ-NhO{4XyU>7C%Z@8+AEn?omS&uWNORaf^e zDA;i1$Po+M{sjK@FHc*r)&F|^D_d2!IYCET+Z(hLVAiC&x|@@a^Yx#8bneQ^;HN8> z&-;`SEijQkfr&#fGNkn?gPNM!slVUv>(8(KHq&d*2e-*;zLU0WG5O8=+Q-FC>v4yN z+oX;khKwy8HRcR1o3$qCOqeSzA+aLQW8DnH<hEV?w@gjWFI%?E>aTsuy<^9Zum1hx z^{md-_IkN9SFF(B<mH{ZV}}JN2S>r~p2yWw!o<oal=hr2+#@(~y?TR*IA^E9E)y4* zV=N7Se|?>NcDDKIGckX!t&KL{`EuFpH{Y9^nn0s$-~Mkde(q=b#(RC--Ydy}j#gWw zVQuhj&%VCS@3e@R*s9~dj4JkS*(4x1wF8vt6GgAF8yFb{-P&3_kHgl+CZ>1ua(nx# zFBzsb-Z?pIxL$!)K!_H6eRDH-uU*0c2GJLHYd)Vf%DrWBRsQ|Q<MQF1sw--nt>5nn zzE|;>ccw+*q8=$zuW5R*TJd#1m!6q#fB)akA3cJ~ZYvgSuKxZGw0Q93%HZWGPfkpH z_4UPz7eS|;TtbvUrDJPohLA^QT<zD;sS~>$r%w#*esdSpxQchb{I=izpGNuJ(&=2s z1RRtmRR4Op{OxIzygL!B)e^_^e|>og8s&Yz_xrpm{ktC?9)9}b;^M474lEPrT9r<k zU;po>rr{Ehk1MaRoRM-++N5CL!<t;8xQ1)y@fE%<P8`3Pg?>&5KJF5im9_i7$085Y zy8oSPROVjKKga6hQgZI>e$!coKa`cclR%|ynCI)<`kQ~eUBr$uOz3zK^ZP$21?Yea zzew3@!VXqau|i6VioqRH9l!Ykp4JJw&ofNufGUx(yZm2&Tc^j?3{V+Y;s+}Arm`OY zudJkh0A%2tWev%n^#vovLFMPB2O<S7PgucfR2fxD_rJBvX6QU|2qaLcRXO=>zK`?7 z3$H*m@rya268V$J?E20V-k`EltC)#{*+FTO8K@MUm&B_eSjh=yp70X2+<CohzG;I? zN+Gx`p2Q$@*Fi<+8n_te23c%m`oHLhxY8y&untg;s05eB^B%|?aCzbivVW?Yb?lQL zdADoR7=$N^gUaJ4nM@ubO&%3<E-qD6(lQ5WUHb4xy~~qSkow9y|NA8mxIB>sai+F` zm|*d#D(cQpZrE@8ox`N2qz|sfR8B^_xCnQy(H06k4RTW`2gocr)Bl_P%L`WWgE*>* zYzBgriV!9f2b6jABxo#TIwX|3!J(kZ=%Ovsxk6V+G9T1%&;m^>EPAxz=k$&}A|RhW z0yR}2%%J5Bpyt9oP*Y-}HFR{Ln8!is6Szgu<;$Qcz`0&iC=}FF5De7-S-w=Y;m1!< z(YuICbjGY%TA;26XvlR_{r@`4+Fx5hT?ec3cRHYDZJ*EE?@zLy*m1&(Q2|u7a{s)( zGT41y?YGF2r%p}sn``B{zwWP!qN3w8-Dow?>Ypu{m))M7nVDQ-+1at`TB0pu3#c;v z&9W|bcNlBsI|YqD?{>d`vh{l0<ReF1W*Q_qO%<QevEtOz)NYx(dArZ^Bq)7yYCOtX zFCZnQWqzlid6%qx-5xJ)H<y$d%F(V|pIr}Sb-1WYfSM_fCplzYSrPbgzMo5q8>m{1 z=U}k^^+I{3ef_?_Cp(4Jy?lInycislI0Pr=vo*Z=@9q*O!(jLS&*xP;#lzOcXo6}> zpV?-<j~+dGa*$o#WLJ-iOK5lS0l|sWxsTX;e8{-AW@Z(Wr#z@OHcUR|@&4Z4r;obz z&A{r^?cG&cITc)<Fq<|A3JQKx>38iGTlp}4LDbePE#Vm*C(@VX2y31ZUMZ$5bol@{ zNyPCgFzvgYx7(NZ-=6I2dZ6ZbRpIMvYcH(`Tzu+hijvZ1^Z!PSEggGyvI*4wtNQv% z)xBSC>iYfvZq57HZOCNE!Xr4*KaD|Hu(Fspp{i;ZsFDBY?_BrR%1<ZNL;pJ{Da}6! z>S{A;J<7hbW2209*_spG>V9(q)(Z;$Z21!tE${F^z`*6nTgC;;GV|ikoH-NHso>&b z$9Q?a=##FHZn2f;<oCNg*~@giS6aQUuFk0PQwk?H_vZZp0Ram2f4@#Id37XBK<U%Q zXYp75fr^kl5f6TSeI3gC;Mv*PsumVE{xQ8Pe{&;H&1XhJ24iQ(DjrahasQzoz0Jq1 zM?%s5@0ZCB_SHr2C|J1X@3-5R_EZ-4-_N<WCi2okXZFsnt|0RivB$NgH*ekq&AUuZ z?b*m~_~6S#W%oJv9v^6AHcB}m5GozHI!w3n#lm(Kd;9yDGoPNG?mb;ERz*d{g*V~v z!*+QwO>U#vhAq6aHdKFkp;-U_@Ak{D=S^wtsPVbvc02yte`Tfk7tB8nvdgb%$o>BA zuGWXk?Dcx<@)HV$goK{7ipK>UKE5V$v)iw4Z?!>#pi=$<25awNX%+dMJ;(8{sJQs) zdHeq%#Ujc(oIh{Ldw*|l)=Y1`oi1iMHx&47J~T)j7I=E?>`Y_#3tMbcPl-fs&zrmI zq>M$uf+b6q+?cMpR>$Q@GS?@UN!xF{yZ$x@oY|)@%e?jR@$s$uYJX?d)z!_~zkmO> z^z(8yYkOrZgQU&#=7h;zT^)Y?UiEuhT~pIgZZ57%&(6)wuFw7b?QMs_)~VXztB!Mv z=>*K5KW9!(eA=}&kx?NbQ>IOxyjaeEjzwVh?QLr>r}N0$#YkHeEcjda{oUQI8<UUU zk{1^d$tZn&?dmeWxvS)=gAfg*ltRzhCZIty+xZQX+b%9uT;w(7*z4`fvKRupK{MpD z;$?*$+xX@6?EnAyY{@!p#o5`m)!XJ+m3o=7E)Fx$*Z2SR{e6D?ve4CGmlilONA4_I zTGg{3w4570x~6$0TX18~<LVcuU%YR;<y<rEv5~}mf&Q<lHk#amKP8T{2uwE&?CjW6 zq>ypuf45qQ$wMor|NH;`{yzOB??j)b2L9SN7q-8<oxgvoS?;YB&!SYOf!a~J{R#S( zmXUXl#~**-Umsh)c1fy$%A%LQo}8Sl^`m6_nLb(TH{c<*lP6CGn#<Zv?%2cf`@i5s z{y_WUK=0=fpPyR@m<Z{fT9kTvn%0fO0!E<f+{@tRwzp>vtP(RXeHGH#*SGEdtLy9Y zOD1-#SY*IFqoYQbVb6y{+)p3(+i$b)EM(;7=1#q}B~$C>BAtNEZD;O)#=ROiIVCPH z_n-dbN5xf}*|TQ7+G1mr|556}`fRmz|8{Iiop3}*N=mD+uuw=q;6a(>@$VXIb>8{R zGV#20>Czi>zsc@TRJlIM3OPtH2u<u~Y2f&BukyL9q)EmEt{yeNIT~+oZJiun|2H(Q z=Ht<#S_URhli5lNF7}62y{FxXzrC|~`K$5{wd4cwCW_Y3hF5up+qLP1HT<=be{BUC z9&MJH?kEWz*=)WQP}?E>*UcsF!41EOe{?23;Fx%08L0AJk@br~>BjA?+0*xYJSHt9 zDY<f4!{G@U66)*y=32?^m&`gL;G#5BNm<$1?*E@+(=_>C;)_m}e0gy(t76)X8xf*5 zpt&%u2d{2!UjFMpGaFAp<Gr)y_t!K9eK}tJ=i~8E%P-4bfZAwNg&kk52wa@<^3qc9 zl;xkFpWi+`kiOvM&gkuVm-bedSH9hPJ;eC?iHXWrAvt}+|M(hqQ1dL`LF>c6zrVL0 zI^?uH^H9av;Kgpemp}tatnBRBrrFo7fYz_-Mr}FquPQ8TTG{uz<*OGa9y)Yr%R=Y& zEKg5QzxNyS@7v{GSl}3yk+DKdTzq-2ynWp1)2EB0(r#`_jau$E_sVmV%u6o6A2joK zO?mqDdi-@MlZ*w^4sI}59k#Zp>h9!CQ`$10xWpy>bKa(yP*-*2#Uz11QIE%8qdy<E ze_=d*%9JH(_X<k>{3!e?vngw(MhfF%Gr_-%H)VWM691b!sC?9)xbS^Pi414}Va24S zpMT}PX6}%*pYY=$m+!$DUcDVBvPH!@RPwjoO=sc|{Mq5~rP=wz_anmo7QC#@QT9Af zFRc{z?{Il?wC}I-r1B^gjhH2F#-K)Ah$_?d_3`Vo7$(+s^F+zMOXir)DXbRa>)FxK zBlBN>-`<Y;22hh|l~Cj9X}ZBTH%hENAAb8_=ZW^0!3Q?}oZeBhmS3UG^W^#S<<`O+ z%dM4_?$2QAV^k3Q8NpBiT8I4R=H~7_9Us4bkP@62uB9X5c`s%6dCP{*6W5s>RH}E( z{`B@yw|>}qLBYzUk9WHk8M`t$yFQ8n)$5B^@iG{O&fcx|V9y?#lc!Ft+I2}lP;x4R z&;m6#C8bYu83ZmbP1H*W&)@rX+AQ<w9Vb>p+Osu1zfS&sv-!N&|9^i|A0O+zv_9Vc z>!C@i-YH*SUEP#%QEBmM50{Xgk_SKyfqfCoH+Gljg9;-R6_pi7`YS&_^W2<vHs$g% z-=c@D;!?40N{dc;GJu+FKQ*eCi=X-N@#pjT($P{%i&hmqil2CgXX1e@CDUk7J4z{; z$-(FEx4Y%{PkwuQ`|9IuxwlVE4Uf}gWR#Jd-?7JnaY>mqC_SDJOy7HVclqfFiq20S z9BjU{Db@Syp(`tcmx8vT)c>o=ytQTJ#iuGttL89F0JWOJe>2=Gzh8T4iKnoqkI$6S z*Vk6wZe(U(Quz4TD^n$<^@lYdbey=J%@DpO0=($p#*K*I+@@JqCWyyXII4CC2v&;v z3VU8kX8>(`vx{Pu5E4?7l$3Oh15MIDc#xoc%GD*L((j$<Nl#%;4zZP2Z-JUAlEMse zbw8gPrJa#5eLH(u=BqZTgVyi&1gka)2v(+k&VRd2iO~^M0-Tt^P;jhAQtRU4@bz&) zYokm{oiFPjW13@ETXl7MSH}u3A%`1(yj|?>up6kUxq(L`dDrkWU*1)kEy^GySSbq% zlm23<KU|FR&2~zk{;>$uvI+1pI=k52VTqCY!h58m!Nq0TbhII%6psJ9-|vgA`}I=Y zvg*r<zbF6vsWIjMaAv0Q(?6fjPk(s0-8&^^iJ_{B(yA#e6U>wv6~T@bXsoQPEPC8) z?p0N_Yt}bj=R<SsYNPhv*jb#u^X<0Vpp9*zor*3l(?GKoN}M&{@0LG(yZwHcY2EMd z@29U>qtn^lJ=t%r)yn-YE^)1Y|95occq;t+_fPA=;ogoDtA!mvLt0NFg*XH!hI@F6 zoU~GWB(D*)dMzjy8G%~xpJc1v$}g+uPTHTQ^eGlJ$XUMOzr5f?P_L_o-MFE%ql>L! z23Ow0L#<lE5+)@x)RaE$VwrFb?D`)JAAWp%d})7uedfhQtvqrz5tAlOy3)Pay?@%r z$H%3koj_w}bskT?7z*xZn0O1+8os}b=>WTYO#o<@+JQ!9Au+MEdO_ocKYu=-cbnGV zu_EdB|EoEwLLyn9W=D@ad%?v;uB%>}D=Hp*dGy)Y*{csO?Cj71jbjN~UT2tRReEaW zGyn2OM>tJQWdtWa1vURpSRz$+FP}eGZ*6S_b+dOqndE&=&(|fzbq-@o$BGPL1E#%o ze}91&sF<6FgDR=$?RlZ54fTIMwtxPwptNaLPs+q#P0--f*4yA5ReXhETlRIovbVQX z#bXK@V@j`vuJZgbD|_9<udlCrUtZ?htEVg&c+}+ov8^JUdbjSjcAQYpW>B=Uiju2- zW0(vYIg|t?z9%XLmzVhl&Ek`_nzD;WaAGFd-JS`{{Z!`*OcV$T2ncv&<l?gIm}Ns} z#~hY-cXwa^DXFBCKdI0~g?Y2|&(0&;%|T-t%LHz0NOWF&+QB7+l~Y02#YqV~0I13G z@55pKrFtb#r-p}lCU$ga$p|}ibaZj-`Soh`Qk6H%9xl_4{i}Czab-z5#;>Hb{wPm^ zlG1l(M`6LrrDql^y=>3nR4BEWBPuxYvcm=Av@;VX-6_9ctGdt6CFRwv{ZeOLoRq+W zbvv03gvZxzJ!01YN;tR9?gtfOAu0?{A{tztOa&)BvEK|r6ZumZj2Tpvw1Sv9*!kr| zdN?Z{9AG?o_H1d?i~9e+=U+}%Qo3wi8l$3nv1~r4f{TkQ^8r=wX)6xSn{AS*WL@@V zLfP9}C->F<cDZZ<8eIfOPSF4TH`J7_E&@B`=d1>G-&rccYCaRr&NlbnnsxOFX!pR8 zBQ7s5FYk{jzgsG||0ZZ`YR~6$lTV!RSQ)x{TEc{vbFIs*bSKZ9tDAhhZ>p4OmWPW= z3y-v!4`@z%3s06}JC7u2ci^j9&}<s0R*6dc`RS>a1urM(#I&=sPJ&h#EU^J~*g(UZ zYlHjcY@dMET@*)loLFS>PhK$aB;$i`Z*M=H7M&O9&%(y$6&5y)s{=HjRr&F#_|ahP zur&dUS679uPWkxg=%ne>)tT9NCIm0{yE(n`!$J1cdwVL4%HPFo{qyi}`_oz3>o)H1 zi*y(GvrzKadHerU`t5#su$E6&_ur=9yhK!|_@wIe6K%ZGPa4_fCfv^3?JK4ilM$bG zZjL2r0qabo)UGwr+x@J{-e`cj&{L*}^q+Qe5j(~rptR^w=B#C)4L!HF<x0QHS{uFn z8mL?>tv}qx8&y%UqikJJP>@N@kuFi~E03>S3DMQi@R)5~zOHuW+uPe$rxH0|{%Z}P z`Eu_}(0uu)AKor%pR=lcXA3ROtez$vE2LyJ(<E-cY5kRRpwTnX0s&D0J~^9+WBu~_ z=WV~w0S%PxEn5fDd>^z+wEXR@t*gQ|)c^nYEj4OumMX85$pml@<j3uOwbd(QcW<ke zymDvh^5v(mt&M(r+G1b(J}iTyN}E<(R(A>dejB_lVnv4oOT&pzXV07o@wfSUCHR%y ztbp0(`E}<c56noG@ZAhrujZ*b0Wyg$BrN=Ri%yg6o@M%vCH}lz|9bt@Ej&#wCh_xa zDuYZ_cSo~%>dl*WG}O<pZ`aEYl`bid9>%XS7vfwCYEgBZnaSGoCO)>JV#l7Z*P@@+ zC4XVPvnjQEZ`ws^g_Ep|MuIcJ+1cw!|H^w>w`{-PQ3mbW(uv;YBP1mB=KS&F$5%hQ zdF4vT@~0CkyRUyqjWI6#dVHy_u&AgiX#JzOxH=;vW8U<_n*K|t9&z2glyU7^{)s7S zO2+&QXEh&mblmxve{oUktHt4$&IU`E3mm+^{eGRc_jJ9f$9ko$_uku@9nQ(c74(?z zm4OdWTP<j5TvgA0iN0fo(c+RvIo{pcl9?QT?4#|M)Gyy1F6-HyE|fI!e7tdAk9ulh zt73Wp-*IWdnF64i#Y?0^?d*#eU6LxIXZL}oMQi^5{hp=cuvcI9p1f)C4{Pw~DL0ch zOThPg)$6%-d`S`Jk#2T)|7>>tw9L!PR(`Me^YQrAYGnqLaZ|4l#|=M0>j*)O^3;Rr zpef{CrLWcQ?k=BxJ+9i9*WI}2iAVKJFKuqY$bhg_Cr%oFp1qlKM#qW0%I<w35nhH` zjCb$a{dmCq+X%F9<8Jx=wV~_dVnNgDpk<7zs;ZWI&+n`Ky~VMaEpy?*g;6mvbIj`g zROssKpU<3`dU{&sT&vPcP0h_))qH1J)V96D+5~UOeBz?kk{ECB=k)5gJ$jsiGee}- z-=8JV<Zx!2V`{rj!WET8_6oC`JAEGYODc8G7s#w_J@LUGRNl=Duv&kA+f0X!jy-JP zfP8xXmc7y^El>rkB?=nYtWH_pIp;?5?(<R(N|1@J_Y?Qr{ARA@sA6*t)Sj9t#_XW< zNe(pm^$9e(`3XD)1Z9HOi9ncqmXb=x%WuCc=1WjoBm^25)%Rk!=%Vzx%cY<~TWQfG z0|phP_XnQED=GDZWZxfP5r8o#Y`OStI;ctF1sdR8qyK%%iH)(4(Mc^)knMde0&4?Q zl;Tv3?tz^o2O4FyQ)>_qoXQDif(AykgxMNgQffhSRS;(G&gHIs?>5{`7dC**bxqtV zdo#(Kfpfj8P~>rtL6J-#)93xGud4$$Q-mZKgeGn^WS-Hn;tYfdY5;(lrB72km*i}} zo6f5sIPo}0vQ+k_+9J`8ma77ttI|P@5S?a51;NPhOTRXs-46=jPZA)v>8UjcRBnB< zhw0=gU4vZ`ahexiFbN3GH3kXy9&+;iCUbTQZ|BNQ9}`yP`1nkI>-qB2nX7M~w7ui) z(VKT2)bzbJWqz?4V@olEaHL;Q)U+HQpQ*f^nXleIbIzPJb8>vj&bcQg+oqhq4GPw5 zt4*Ox4B}O`?DF8rX74zoV{7eiChxQP>btosA6ieE7o4*5!UBfOc>O4=YsYontkjNp zIDHLpKK14;$V*>m*Uw~dN|Cbs$+}5d)0wrh>cIBrFIFm@X8rNov-{S>OPmMeoO-x^ z%(~t+;Q+%j^$=E2kiXS@FoVG<C1d~Iy~q7;W_`Udr`o`Go4nujJ57g_PG9Ti4Q-55 zzw+j4|HN&ji&b=HBz6Suc-nd5mL#Yv6OtNqY4hAkCLhd|cW3P1`zq1#n_3J@jjYh3 zrEV@Aim7Vf!47-!ylY9$=DX=^27yaYIPBl+>~Ud(YNo;sZ?DsOn_@f`{GVA@y=~TB zKTg9{+s^mL8vFEu;)1_ve^boFtcyxlr9sWI)2GkshuqvI9ddTw+ikxymSxQPT=cJQ z(XY2JYrjoc(|FwR&GvLlPy=Px-~Si>oQ`5!WOUKQ_nWMJZ5oGI^x1o1Uv8h)zm>l} z&gaEUyXtK&y=7k)soJzGY&L%or=s-wA;Se1IqO*ylk*R`9@zdeVb+q=r=pR1R#&d& zuMcioYq{Oospm>h%6{8?a58TXJ|HM+eed2h=gh1#wzh$f1G2&<K5b(D8!D!k_0`IJ zgKD<P8o^_A)pjk63W1q^f3!c{jhHz3caI+DOQT6S^^wdTb~<lM=H*z<Stev!;QV0w z{~s@vPAe|U4l_Qa>A5(yW(gP5$#O#m6)n$qniFsS7xlcERpNOfG)H*itKMEc*1)MA zwsWi1PIzy>`a#xfGP8OYTXog`y_+L<UVK%TvUP!$zVS?HW`{+O6#l;bU7d3<zCw56 z{~8^kBbuE)%IkJ^*k>D@_&vvF>g$lz?fcpN#d43a@@#Kn;6Ew(_SLO_$J*G#D`%dp zl3)-LO@At_6un>YBmWlGdfsZuSS6)TM#qhd=P=n``LOf#W_I4B!*34Gdz(MyNQ>c( z#l?piCY+dCAKsxeFK4%XfmXA<(y9qLF<)-pF8Yx3_Fkenv$peMsl;y%{M)ycE>^Yb zIlCjIP=Y~dr<bqD&#WaKVH%e{vQ2!qT{>1tY151;J#UO}?s)kvLErLj?S|_rdUxdB zY+Wm!%Kgnr@=f5=BnFQs8v5QT=jvVk<hS!0)%;v7lQE;it3<^%ns@i38&hUani!m7 zImb(;+4j%T03DwT3d#lyDn&lOX4u~|J5i9a=EMj8nO_`T{ERaei1GjZBGYVZ@^%;Z zw^`SE3SMo#zASHwOMw`#5vN?I%dV^MJ9B>c962BV<kolBBq@nlB_$&RP#P}tyx=i8 zdFD>nX-EI;IGg2aarMpCmBL3gFQ2$lQ6hA(F;vOkK56&;|DF?<O$X^(rPSIwOJ$yo z?rpy1^CcrJW4Fn9O@6$*i>;dRU)`lWVJ)wgU*8uuWs85uv}>h{RCH!c58fmux6$RL zr&9bqrJx!5m&#V0`1u_a6RT7#f3ki$Kha0@O|G}s^tJ7mQ>ug7Ql32#mwvO-=MGEs z*|^s~G&p(r43@lc5$$AD__^&*%*36_E=K(wSF)6go=W@tQuws!rm?`2l?m^C4s5qp z4gSQvRp~Sv`;XNxFJ36Q&37>Fu14tQaNUlBa+T_A4Nq=gcr*LQbPta$x-XSg4!sZ( zylDC5`e7f*=<_U<9N)I7i`p+J@`;$h_2tUib-6dDs+k^E)o3t2J>h)<gU7z?zsr@f z|MCB<QaXH3bmhe>FN6dGHH$uTKb=2?r@D9EKTtU$yv{CEipiFxvg$y%`mR|&HZGfA zBg5?Q$+!Jl=O2r6W&a;}D(SLG#VRQkO`JA$dDbU^Coi{F?+!LnS-&7dI4_`K{+1Q8 znf#wVY!98Q!MDOEgomx+Nwrab*O{G>OBCFfJWZI`EoZdL#pTg!-yJiA&WgQQdNcd$ zg*C7JLbe_-c8uF%d*iTy&cVi<L#m%dm>oXpvi{tbdG8W`*Od%4qc6IG^>HR0tGwbI z7kV8j$UWqmJKy?ilG9tqdH>88R%y&G=sdO3X?@N9f4^486dn}~+MXBt^(koHsq4=v z(87f)D}&vgoSm1}|Nr;ty#0R*-Qq__I6-sNDq31zNl8g5UtV0CG;`+5EoYYb&VF); zTYpN{)m5H<e|-fF<+`2%bre9`!=jee{{FTp;b4=|^wvEW^n+c#{Z$i^Q8fBvJTdE{ z+w_hT*{LbdPu{QgKha+QW@=}A?v&H<|9x-y#c4Dz`>*!+dES)&ziZd8`SX1T*FUDe zf0u;TEQz_ibe@gflC3p`)&4gvDjWWM^oXzgJ}vLlgQdDD3AZa&%1a-6(0?Mwv|+j5 z+(~`1)~8kkE`BmAd!6PdE2gcI#%U+q<!e<y>-W^>RXDNn$!Of(mK)qCrSQYs%WKln zZgKCpxOqJ?mO;mQB$Yw!z$#l?+gLUpi3LpCK*ti8<=<Ol$A3_1TC@HCKf$22grMc8 zpmmk6{>RmRy$V{)k$HXH+~cW=`kQ}hPn?>6<6XRM@RBg?#ojJYLW7rB@@;Rjt7i9` zQ?}b?ne*oBFXpbinjL5D<iuq8gex%g<K+)$*Y=oy`#c$R#tLg(L%-wM2R}YOPCeAZ z`D*8uEheBYL(Pwe?M0w5#BXnJFZG>m23l_Z^4i+jQO};wub&3mTyn6P{p$burrFbM zzTHTMEvKCc+Hi5z?A?ux&bD%PH9NT6K<gW;E33Y}(VS~l8sxZGJ@q3?)5RArGQQRa zCVQ$)+vECV??0uVkxJq=8MEIucbwxqx3Ib|?bNDz{}b`m{wL!9%S{(C|NPMD?u#rv z-yIiMabB1Iyj)OHW$yL&t6nqjD1RR(x@F-rzxLkyi{1G_V~Je5K8TxER()WPxOe}4 z{J&qX^(C!JRzy8p)UCIPy}n`AZqWHWe)DWJudWUcKiwl;u6FoxqU2uBThK+sd422x zkq2H1D;4K$Vy*Z6-Swpwl)WSKR&9yZl>9WE>qp<}wAkyGg@)N~n`a679h74W>f^Pq zUZ<uc&%+>Cz?gMY=HbSFQva^43O&8Ep|Md&TKe@Co>@7u_nqr`85RCb`)0Xx>QPw} zP5ZA`f>UFPjY1L|Pnd7-o^wZC=(0n~jsKlLHqY!_v85rux@cGMf$~pViYK{wEZAR? zC!lOAb$x=IZ_?7@zpv&f^`3B=!5YIhS<Sa-Riq2A!lZx`N2b~8Z~84h@jyWICHIIm z7gd#v=Kg7Nx|)C9@PT)^WQ3)OhQltiHF~yE$G!U1OqV48&G>dxdD8|hZidH?A78z% z?B2KHOth@r;{190e7wB6F8@D${(Sh%gTMYCkN+d@{_F9jX@xa=w`|%WEF`ojFGcWn zy~xkEski@Xr*~X=nNZT%;bSav`k8a)w}$+)`zBAC`B>&dD?7W#b~lc1Nuj#&zpF0F zr1zib4vA#wNQ-8P^PZ-&kv(#Sqx1cJyWj2dwtaVX_4FmnmYuq_HG66H^>wd6$8C5e zCN6w6f4P3Mia-hnJL^ri3io3Lr>E(LeqO(i$L@I}yWEC)yJ-hM&zsh&^X`S-#QgVL z?!GUa?$Q1qRLLBE@<jZ^vSyASeXE!BZvE|l>g64#<*7=mS-r~J8`kIE)!=+`XNODN zYA0rgp6lDIzvul<R*BBJvBB}{!|V$S8o5q@=Gimv?b%uTLNw*^tC@$^MsJ^XT5q>c z-u}O3Q`dGYyq{P7F3?jlf)BLw<0?P@V`jTQ9}aIyJuNoVu67q_4C>qYz5oCHUg|&J z4z#}ow3004+nbx4(#}d%KA&6uM)K6ssjWIX*0CwydX;ucD)Cl#^HdyrAtV^O^35Km z$a;m)tM3+0%fH(=dD7(g7h8CidA#m>cIVi}OPf7;r*3F;;Zyp=D{94a=F`*DPbYcn zX@2_CA*g)igVv7~n!(FfIPjR(f=2Jo%&`oP+LDnNFLrh>$FFB+XD{DW-_9$&?AYt> zj*bE;jw;Y5haEF^?6BDR{a$sb!3!&aFOU1}^?rYQ8|)}|?C;?MBP;(?K~l>m&JIXi zcw)MF_nRMqDx21wkkxiknj_rZvBx(ouaWChz~Sv#?>TQyn4z^(k1@XYLqhd|cDowg zZ1*A!u}_gN_tb^ovuN1Yz&?TV@2^QGE~UFNHMzR|Q<+py=Ao#RU#O)Xf9;KZX8xtS zB?h6NxaRmjHC1+gb1?4wv5i^lV$LmaOqqP{wfW|TlihzdN2I(g-uAmWKIwydoU*O8 z|Ft)V8&0c-@ZO*1oEa4GLgvHO&UI=0KR#?PjIm(0Q_>P+cKF1n{!jF0m5J1M*IhjV zFRNBxR8_J{U%9;aYJg7GwBEhPuYSqW`#A4PH)m+=_X%4rZZ70qDKCAhp})iC7{df` zr|!-Fu9W4SS6-*B{;Rxcg79*I53<|+*KSj`jE%8=Zn8!&ZS_NI;}1nnUkw&_dAr0l zFe*e!ubX6lM|;wyP?bH)PSo3paXyLYO?ek-_Rn_O%1tE`*KDl1&v~;{W%G$5->kOP z3G1KFOpJWAc(r6uoYE&h9)^>*!uDxydYUcx-(liwJE6{X=_Q>Vb7an+32dDASod)1 zG~SFr>qBw7+jH(lP2~B}vEq{fgUah$zgM4lbaLBo=6S-IS8l%$n%IB1;q;63%dfwC zSoYw^OQqAH+@HdYvrF;<Vt1KzO#Cc$)T@`{T8wbu)kFr5Yg5VsQr@jqifZ&|f2d^p z&S00zlVpP?u_kMlN{%1b)R&$5cKGF_=m$3c<V@B|>dk!>KK&eT(vsl65}A_nnvQc) zn>%=pFicpZt{)9)l!|xe>lgjZo^kK!i=c_qy-%N-+^gri)8k%&sI=UgCYw6~A4)ws z0ypOg2+rhWcGwhm>3GverS|LHEn(u4|7Lm^Y*t*E^i*8rRNoVx>bLjWj!fPJ>C&<P z@SeRZ@LR(A;=iwC`dT}58W|NLPtW@9daYjT(R2Nxx4)IHN=wBmePZ&=j7<OiR@P&x zZ+noc_4<t9yyhDQ)y8^x9RHk{n0Yjf1p_NV;pXut`pI(RV!Q9NbuMjLe^FJb+i&r< zp8>P>rtv%8pZH~t(rMQ)?vkuiZ)XS`cHvd}B*nvUQp#wO>$5vLK{M1ZJ=2<ak6$8I zY14@r)w}!CRz=yWWUjF<2r833sbRF*tzrNCEnWR396wfhPu@}R@q2o(o*<|>nNs(2 zr&4^Mz)2sml{dYftTLbZ#W7Fz?1kfZHeY>{>*X`KXU?MJcZv7zZ1&xG_38wjg$Hv^ zsVdz+$S~nd{=>yeovU4(7Ug)#D^7Hq-r=KQz20HlD#PzN2j%kE{nJDv^>i!_*gczf zZ%(vzSF?`r#QbCik7wH+7EiqT{?@zr&+9y5j2C;mu$?%iJK^ogms$^QS84eEJzBG~ zlJ#8f&J_}QaoUICHn%76_cL2QlM|dM%+`<+C-Exv-pqY<wQ_=)l`}7@F4CG%X63(4 zZX0XmkKIoTcKxX~+3d03wxgS)Oe$fgv(pxru*Wm1U0jwXGI%^Ic{M}#<zfZ*B}Y@0 zYR{$opA>#}$;3$$les_fExp}rSAKR!fU%Lwt!urL%1RgK*1vZ3b}H@L>F!dZC&4i3 zr^u7;8q**Z-9VLXD^Fb5?)v9uOZwNG7@yhCB35sITQE!Jw2sx}HoJRrO*XgBiha16 zwBJ@~5!Ydc31`wzPFAX}7v<y<-}%pY;suGt-Y%(gT$!EM=h#lsi#~VdRbpRE`OO^? zsY@f*a#T-f-!Bm}GkCe6V5lBjLyBJXKCz#lOK<;OeP0ALO(ztnIdjMD$>&tk=d8SY zSR`xbPuKK|9DHA<U;8-m(lNO=uAZxZXz=ZKa!FxeYe<oE-_})A-~YDm{cqP>e5Six zo+#*Q`)`}e`RPjn|L4bIJ5HYK;NhHdExpO+YWn)PDJE+r6&=qUQ&lozWot;`i&S?_ zyRR~-JZj0wqe`{v(y>bOr%jqyyKTRmkjbP=Dj!>ZKjBGvWM%en+iG#uudCY&#dwv# ztJsfe>xleJ>p5|9uhK<cmvw&~R2tgTLQ@|pZP=`u_QJIKWtJOn`GnHf5-%R+uRS4< z_DD!Dl4t#<ls!*_UH?U@2u1il`Q`6=D5+O(Vz^WA+j)y;ZhCsg;na`ax|*>@o9?Qo zo2-;nd@Hl5VB#D>VX+*Ko1GmiKugV&-_Fqg^xEY1U+rbxS6*h6bnZ#JF?H{8|C7&} zGdI0Vn3ZEUW!0>r&7Zisbfje-=<7aKKF_y1NIxpd*s{6f#A-tZmB%u_-Ji_1&iTIk zzT%~iRg1k-Zl>M&d))u@GUv=qKND7Q{RlWb{bkyXsUIFNgid~bBYk~ku3EZ);7=*G zhLoN;Jkgij^V&R`KfAKorI&Q-2){{O)^oP~+_g6gr|IAIHO||rP%rvm>w59E%RCOR zEsSYlF#y^8+>l|(s^ytV_wT9}<t+C|k)8P3PK5Kpf&K5A_Ac3yQ@x;l|BLPApGxN4 zHvD$$N@tLx9MisUoEI;xNo!%*l-A$TaVLSnBlP|E|D8GW)gQ^Le46j?qLeKit8|%X zZ<B(5{wY`8`MXzMYGV3xh2a#(C#yM}-=ePcr5Ni83Rd<oDuk}RyT3!H@>p5@2XCdX z=Y``-bd23uEBZX8+%I+W?QMD%#Zq3ipk2yNC8veO$g#Pj<D4wB!zwHFZ(TK}QoXa4 zV)F!Fng!JyJQ=)mTY~@B+nZA#%X#TqtuWg4%yhkICjXaPSG&W`?z-9}@kUTE@Msc) zN2v1mEhpy8cHI>0`l?h^^3SG<*Cm<Jf-hcft!@vxdu~Bv;pEvzTD{v_B&sK|Z7M$8 z^mD3;(xOwxSM!GYUOK+#w@Y7+80Y%T*Wbk@l)~B*!?w-g{PIO=-`?YXJ7c#6_8Mf) z7f8-ObyPrS;?)^HoLpRvB`|nQ&A+NM@ocf{AEq41{TII;$?|*t?DV$7FVla$zB#Mt zzipY<(QWHq9dGk$uQL3m!ppNpM)p)fe@DleW=4h3b$j=B>Qvn+lTZF@y31jW!Jku& z!pl?dHcsA@SHJ4lZe>en-=)u1<&|tTuKkwdyK_e<|MQYe7nhVg9)^`gDa$(E#3Y>l zah1#E)_?aU$LA)wMebw;4P4qjxILlb(%TQ(Ta}#8^=uYT_P?}3GV|}U93`bswmb|g zAI<r3-E8~&Z}P4}|2L)nc6$45TV>tEp9xL3Y*kWMB)mV9TOD-qmTk}0_DGXmCM)z} zrH-xGUz+U1t8FeQ80ebB;PISK_Q51j!|9^fm!&zSb$j#DCx%V$E|FFhl1cLr-29m< zWWR0nTREnEA*O8eSKkU$+y)wqXn)Xuc)ft&#O+B89;v|*3PlN1bzdCT{d(Z$^$AZd zuGsFeTH7UxSFF>|AZ1<*OZ9918?#C#?wI&~S=svDRd+XEeN&nl5&QM&XJbcRRYAeP z&;$mLrKeAe{Vd;kqOVfPx?ae#_RpK_#)V2}f8EUb6~!aM*}eACE!&hQx3a$FY^`=T z?z;AF;rzJp_GK|&?k2yL6BPVu#Mba6u58wcb*|f@?0oJ|n_c;BYnGvsE_>$|DWywW z;-{LtUsU$KAnM!Ag#7=WH>XX}t7JX5wYu@&io4xGjd9P7O=~!>I!EqycX4^rz^E{H z>ckxHM+b7>uUBfVOpotgmCpU6Ap1tNio%LZ+26OxxxKwN^UWP*^}FY$N{ct{t2SIE zDSl9{Es>Kq4dk3aPYH%!yB=4&Y&*Z1wU#}6{@FXNJH)mvyL)YV_m#InD<k)`2cJ)Q z_Rjuxx&HPA7cyruTzPl3vxw_Q1jqp)WjqYEhQ;QYhi^WN>dPyyll}Zf>BZr-Y299$ zPJVV--!I9|Dh^h)wB3E8$n;S2(&FY<mqJ;qC93t?wpP2ixQI3|F3{IFA#S<hlh3nv zH50cS*}VQI`>nL+0gm?tCa%~e`tRe(7rWEt+nz4Tv3#<xY<+0WlFK`)d6N!9tml+q zs9L>8XQJ)t97lPh^38s8YIQZ<_&j?js-(--(Gs?PL%*-}+~r2ahMSK)Yu;vAJaNxM zEi;>ltFIQe@gIyk{_CQU*qOr<J33Zqedv1ayUB0f$vbn^H&u6f+<Uosz2b>%%O5_^ z^5Q2h_;fyN;>^kV(R@p9GVOKVmXQCyu>HKv;rsqeLTje%P2=C*W(syuiU?an*z~#| zKF{9uEB&q$*F0nYJ1V3}_kpvJd-G>kCZ^Lfr_R=!&A)8bOjCgmZ!Kr7+$FNh>9X## zQ>Amv&23uRr33{hMt)e8<9hs`<?Nl+8NHvgO{3@Y{(4nnwfxN8JAa&R&YYt-n{Vl< zWiHVhw!ikc__K)7IAcrr!FjqD4jbqgCLVkmX|1HBv?_&%VJ*Yeoc8NCH<bx~k-h!$ zPnFYmW5@fVN~W`>y<Gd5n=AGE#WTi@^VZ(K_iag!lBbk_xL^+dmoK+$&unsZadEkJ zh~dH-u1_xC{uh=dJp1B&ZszV@eXH3!r6u2Aj208i`t*Kd@Fq#qYAr`)U*2tV=7yWx z=;q@s;`%aSiJ<(^pGBP=9eWs=9gKhdHJx}rUi74&?eCa?9Uh<mZ98-K+4QcKV^ge3 zqaJnYRIioWRAl&vOUOLNwS~oNcU53|_V-suJ^n`UZSZk%d9qf5VOF5S2HhXrs|(Z4 z-PLxP^+nUHSR6ETu<h!rn_1rtM7&>Rwy(T%ZiUzr{oL1X)>q$|c5;i?FL@;-C^*so z!%v0}phFg?$5nZPjw4Av-uLO(>-FB>-`(xi4f&nz`l>`=<^9XK&)#i3GiP(-yj6F- zgU|2e;`=cDTB%a5r__mKYvpy%X1RGJG}Mc(<q#AUoH@~-y`lKonTdsukDZLp->VAR zssx%Z1PxeOm%p15wKYpJd_zanw%aosr-quno0+hFN8?n($!^`ZCSF<?w}tDAz=y3J z{SziQ_|0{5adA2K$7GBAFAbL3=X1;FftDk_DojjVcx8QjJZLLO<&%l-UVs0;eECvH zR#rDNGgC-ZG&J#P)DF|gXSp_OW)<G$UDLC!(l^^}&dc@Ux^IP(mgL^mSSfY{RO+8t z@p}8zA33}Ud3o#B#O@AL^PQDafA0SM_+Q`O>uZOvGue`Jn{WB){@Ih>^h;mm2zCVd zzhm0AuZuz-u?Y$aUflWNrpBWi8<T?q0u;7pUoWeY>o0$E<KegePo6wkG5fK8$EgeJ zOLaN<zD)1qG|WnP`eMTZub(nXN=l!6?W7szb*~Iwek$1CHuUBEWa+-8PZHxgIyySe zO+CM?`Pk8;o(>KTGL}V0URK)l^_SakFq+kUG2UUns+w9@U}k4WM~7D5dA5dw2M>Zy zFpk`m()rg?rSU=G`nbJ!{>`5-LEviSm5-nROfj{)%hIEm09vJecUNg}^8ZAM8Nti_ zPM(;k+^Z)gC@2`X^y5p0f*&6q7JYdUIMb$blN86U;N^awKA*Q2_vBFoxmV53mM@{Q zPzJ<#?fLxc?egCY;8WPOK)ViHTu42Iy{1ZS!lz5eFC1%_1UdnU_htIJ+xu+9*_aO$ zoj7qKp#Jss_4y@%9UUDnWY#^tc=6(+ZVS;EOA#@#Qx6Zfs~Q;v{rU4p>(6ygrqf4` zxOn>qAO30}zOH>|f$f>r*AJ~<FU*|9_3zcSwc7vw?Yk-6XWH<zp;=8)abb`>GyC4D z`wv*b)F$f1@ZXQ<&yZjH^YYKM8{TLqEvbnL2`L3H^9ih9+w&Tvw)kPy4DRcPWA>!l zp6T*baB%^7-4uFK6eEFy=ohpqB+mA{{p`r!B)vQG&koln>D}98zbDnU=K#Y6rlO*v zEBF8W`NK88_=e7!U#fZ<8X89STdqb{%I+zwkEpf%@;N*&Z{5=Uulsh`_dM5qov6~s zoKY0LJ#Q*#K-f1*RzN_Z-|p9nFK=!JH#IjOJ>@sYLNPNl^Og7QC7!|?7rni`{q*bg z`}NxS<)>X+8-04~^*HU=-DRTMemmw(ow~Gd<*Tc!Z|fI?%~rS@{jJ^n?d06s+fIUx z^EuupJ6Xy!>%`phdz!VszlpAX_|HH*KaziO<m(q-4gdf7+&`!O-_M}UX}&M-?A+|) z=633+c)ZSe`~Q1Dhas=Yy1dNy)#)nG!kPv~<|ms@>utXC>&=ag&a97?`_G?t;DAHq z?y|LC-rbG1`}st8<D|2*%}+0IY`#)xR`9?9bYA$X%x$+?&qCZ3ySvPDecWCZH8r<e zTQV1)y1&1^zVh46^rufwPEHcNBmeA??(0OZ6^tsyRewGn-^$3$W?^fde2izUTd&lu z!~FJZRMpk9!zRy|vEu65=<w<%6WzBwJv}|U`1!f3yUO0KGR?T)@cZfX_$`0_)STsd zx9@k}+gGdCZ?m^6deU(#o{^F9)|r{cSBqO)TW5im?f9>b+`J65XyNVa_4}_a^PRoS zH2+>q_WgZ(zn!=LpAq(m_xIu3-%cj?+b)Z(db!l^{NB&!tY^)iKmXUi`BtS~#@6rn zKYyI|)qt6;L9K0apB%%pr%!LruYbLE`<4$M3UaTliF{S)=-8Mh>OEcWD#*XGb~QKt z$u#W)t(ho&bp>?FMrLQ}u4l8dw_IH8E?)WX=kxjD>WhAUem>jo#R1l}(cAN)qM~Mj z53tIxt@?5yYJ1+=CXEeF0q-DAn_GTwWo+fsso&mj{x|pEkH`I{_4W0o7tMa#J^W`N zpC8F@oWPKgba}b|btPrxt<LRyE00@RT7J7euj-Yiu9A|Ib-{y%G}ZXJpG(Drg%_u$ zr;A4}2OZipd6nqC9sYJdmxS%FtNp$2;^{fFXRr1Pi0EIkMCI(6dlip)b@lYl{fn@l zsATc}#>U0hc9-X$)!LI-Uvb+Gbk@+;4I2z{udj>!rr>#B|GdrT9xMJg_x45`8^b~@ zyEN&8;fotx`#|ffCO<yjznbsF&6_u0Z8c0jw&L80>}zWTwJ#L+UYM??q~vt0Uw*w@ z^4u>v>-z2gMWmL2ZW>4`d%+#DzpfTE3$kR%k`-@qO1SvBxPnfydlY#3`H307@77+o z!^z3X3A}ft|KfDE*8$7@WM^6yFO#t>a(Q-UrgB)q)4vbb{(kam_4=^C2J#gT7;o;c z-|v-ldGnS+zr&RY=jYibx!sX}_Eh(EA{!5b@0E>TAGXU+o2cv#I$%DOiKA(;X7I8V z!sk9bJRJHgXKU8gE1xVhTie@LbI+NnSj_kIdb7=x%11{!Ki$sXf6`lj?~-|ktCA#B zid9uqX1sIioqV!ef8Po#$=9B&9u@~qKKp*ZKAiFOLg)53a}Pyt&02cx^OcpsN!K2> zFw9-Ce)l`8$PEdNH6M?Pzp|{Ay|p!a`McR4U0&(_K0Nyy=ehWPn@=4*vesd7l}|-W z*R6`)zV4S`ci&IYazM~|7^*KA;+%tK*TordzvC}{%by>~f7xgk*CdnN*VooYfzH*w znL0i5a2s#%_ut>%uKs0mU{B@eE${B`&hC{qzb2*^v*Opqh0WD9HG8(z|F1i{1~eZv ztF-#to0VI0Z-=cte{!<=)+<*+-p;FjcX3zA%SE#`$u3m37m7K+<9jfI{Y}4J?XL__ z8$e7*XwkRJ%Y0{Fd41mQ_nNAIUE1p|fDS#fYFn&abhwSz_v(`!(DMVM{{Q>CwUL>9 z6^qP)kH#q{1h&?_-~WH#<^Kn(_Wk*Edf83!dt2=HWX^x^M^sdF>8ZATkvr-iwu)zg zE~}{ed)eRqs@|>_N^70l`Lr%_|E-a){StWf`E{Szh#mH4wt`CTGd+w84qjk?xBvg& z^<}@`ZofVMuxs{@4-a2CefxGhfA#Zixwn_yEjY}prM%X)TTE*~)b6siX<;ukV)s^+ z=DxYH@fPSfcF=B#Rr$wqx8Gg%D}9bdp%ZJB?<|u*^*f-o-qNO7Q(j%)QTw~>ERWxO zyR~{OCk$HGtkKyjKg%?G+1&bnKX0uHU47*<N6y3}O)1S~Z*Q$kNWQzPbXMeo^*ny_ zKu45-)?L26mAyVR^=Lmw%9*!!cZdHzU;l5hk#wO>-KUf4tM1GE>%VvY7|)*6`ijeT z2Y+%uJ@P%Oy>7-2KjpwjpsO~{|NVA5{}$*ZHKwvJ$8)Z(n!55E=lAxV-`cmYX}@X6 zV8Xa$%i|-De`pKsx60r9HSFriii1t8-%<r-9(EUec@cQ_%!kzy`_IYLe!H3eils|m z=Ni9y*q<WjWyV=HAGPxzAM2epGvRmg3-;qaIXU%zULDES)YSaecLKCA?bp?;ZL^j= zY7_42?Y*kzGh=~}>V=hm_kO<@ymix$hlM9qr>~GQ+5EBX@59{RERL3S4=mFTC)tBn z6@Qce?YKSpIG?G=l$+<`@5n#9C4X;=T-q^)3l0`53X>!)i<bO4+Ic2|rJ-t>WY)#1 zudkNYalSlr>C6L9h8rt`)peDX4`+Ia_xx^`n(aARP4uVz4Y9Pww>?s7JdBO;zpQMt zB^_Dy_&|Gy(w;tSnc&;L#>zb+|IV2svq2T8a80@)3;!&?*!{<MNGx8;bT{fu-|xdV zds1!JG%zk;j5*%p6fevZ(VZ9{GyPz;#BGkh!D~{^&9RKi$XK!0>R#av@t$}I8JU=r zxo1S~yh=T2k&qF0;dgRV-J|2hy;7z@%|~age6ucKa^R%`CyC%oXKFq7=7P#k$II5U zy#IgS|NmzE<@U;`jY+Mqt~KtPopw+Cj{LKSx~~&ic^FpTI5*ci^zDqt4ksF(3%uC- z``vE8^NZ)p|1w*^-z92MC;9O;Z}R4s%}Za!$2sUK`0Ywt#D2HWblUNL`Rng?zqh*@ z9{9d|(eG!o^F!*-Bp>g~OuNJXYoEjYo!$ETB1~t$NWI#uc4bbYd}8dGW3#`tZ+|0v zJxag!{sR8|fPe{7=I1Yh4(j>F*;KUo;XeaVS+e?}fk9}-_jh-*_zt(rReAVE^>?l* z1qH3tC)UTmZ9!*~)%~rS`pK^RUChbTr-Khi%n&^m>+S0s`u*$2>knq8&zs1`E44z= zicijFMcX>YGuOL9YHNc^jc;s9?VjatWN3KN?wa_KW5-t2HeEl~E4}=i^s%HP6O<&H z1(W?|X8Hy6h_8Il9-EP|!s^+FIiYRBpQinN==(e6^|iHG|K5pehuxTedAn)b`dKEK zlcZ+9-FRFs*tz(@pSFj=8~PFx6O+Us>1&hRw3HH-SK3C##-Y=+g{&{kX9>N1!tAp3 z+SmK5?0&saHr?aBx9V$%oA9%<rp4RzHyK=<({0z&cUkr2zkk2;zn+$oJa8i8-=l8* zD;s2HoR_GTIm@th^@@o{><-$@f8q1ymN>`En-WPZXZs_>HZv$F-}aGA_o#3PXG)3N zz1sD#j?RnVtZxrnAX(Yb*ZcG|-K*uY&(%`mcOClRXHoxfcb}B8PX4yf;;{T1YRIrg zDI>|@fqC_}oN9T?a>oUAj4tx+^Xq<jT338nkQR3G<jJfbyeS`&b}f0mZuhxdfeyuZ zPzcW2^zo^y)c#1lD;ZS>IOWb>^`52^IP<iG*^$@_3)2(--~a!2{;mGBtZDA|ReMA` zRXD%&Ufld#M!z8Aozpd?O&iWy&6%+M4S)VE^%ph$dRiy;9jWO4v9bOA?%my{59YKM zUq5gEKj(ga+JV1`>;8fgZYmGM>K$Si1ofggm<-P}%-h$;J!fWJ<}{Z0W77G10;Bg< zZS^|oE|ym4xZoe_F^3B~W^#UGW-9tCuE{1{%42ostE;i_6mI7?3AY#L_snZ}T+vv} zJ13wx``W{n3)|11`h8gX`^iT~yF;1!<Wv-yFW)_S%k<z`pAGf`DFyX2jxTcU-m-q* zuT!61Cx-Gc@IJ7pG@a%0b(X`N9J!hgj#K~jC0u-S(|5(rm~A;T{~Ed_U2k>>xh-Cv zWNMsKY~uUc)W3>XCu><icIQU!vmDCz|9?2l|LwTNx)}We4zDv+O0Gd7M!!maZOlLV zcVT|=p9z~k*&W<g>T{>4<^7hp<j=p~@4r3YIiX3a-uNItJ4-RglQnzny^@yxZOo0i zV|vi*^+R3>2B{;3d+e_`C|>3~ySTBj@z$@euT3{=y?e4^J$KM|*=(l3v-ZW$e7<_0 z*Aa+WzI?g(%9SN+0uSY=R$ch`e*gbfcFq}AM!|1Yjgkrzozr&i{@e2S)JLZF=LXG< zcDb`66;?RU4>0*{#rN)2#hS>(dWL<wXPBMYy6t|}Z<d1=*O+4iFVwm||FKx)e(v9- zUiqf-JB979wy#P5JDag>meYR2KO4$ym#x`iFK}ehHKDC_ea-&Sx%CV9pMf?9vRyo; zBhPWDv??H@_3H;Q9tK|{9>!l66$^}RcOIXtm=p8z>_LeGQq3{SJC3s6(NS06`EhG! zar)JX5}!SrcHauSVx!o|YPv;&orhC5ZI?r`tifh3s{s4YXN+I5yxJjG@#e;r)`!6# zm=EW~@)S&R-}ymy$J1%ibAClz#%(ye$DTnvEhoEHFZ;TDRoG2+j#(ET%8AF77q8m2 zj=%0r;`{~ivb&mRWY#ALq^p!DbUO1ZtobH;(3H`>=0o%HvbVRg=DmJ&Zh6{0`4{WE zUpl(?%dOq}>6CWXGJciH#JGy<3K!12e&{Q~AjKnY@yF_DW8SvR3o?qYg&bv1bw=8F zy%ukNRjt$gKY1G86^?%ams{TU{&Vo~aV&_6>D6Xy-uv&@>#J4|{?BUNC-=g->o>=# zjcf15t|_cp=r0?0{ABsrS*EjYE>IJ`%%J2gb2(=r^FBL|9myLKul;5G@lHv@HJs1A zkC`hvasGm5LiQ76(nAimO5YbezQE(YeuTJBa^|+$MeL73J;&N-94Wol|6Xi6^v^*) zBIS6}6P7p9KHOai*ETM@!}Xgvmh;12w}!RO=6ruTj+Py_`M&P#hqM^}{KE_v5-ctl z?q4!<c5S!xp=CQ11jKE9uD4G7diK*(*9nc>vmbME1T0=+{@)@_qClwX@7L>BCkUpU zj9|+tHfg<A|Nrl|=K=3Ps~>)UK5u`u@QDP+qaTO#^WJcqh|lId)xK}ZiES>y25h&F z+N=g0;(N;A`toY0-Ui9<?REhMdZ$)gym0+xBfDIH?~06FRbQ`$hYF;&);4i}WfhNE zu+8vPXX&AT4v~f)M(0BN?oa%Fzdn90{}~YzMTz4d960`cDO%(y_<CXS-*vM~>mRra zo(t@IDr-}*p-Rqqal#BK*>BS&zqhZ8-(PoYvcKI+lMkPdbP8WBm$Cm7SM^f$tIV~p z&HQ!-Z>uUMJ1jn~_@$JQk<lpYipFwB&$DdJMP+Yqg=Sq@v5?KPx4V1t>-GEN_L>zw za`}4W;;~-or`zw>O;+`u<}uqW_Xv-{3^TUX`@Y@EzM9OV)AKd!&W?>zUqofTGsb1# z*sw6?{=V2*=J|SQjYe^0H&efTZ2+C2E2bBt0V<s*TmfxN1TCxpEy~b|+Y>QOKVA>C z-Qe2V=<b^d*4NiW2A{KjZ)5u7^M!@ZR}bt~cI%liXO7Iyzu#_OEoy9R%nB&n{FYyq zt>XBCtM}{w?*;9ecvbQG%F4+mSywzj=Y(I&{q*Eymh725{vTv-?krwz)n{N}wCDT1 z>Y^VX5<}x;!Y^LD`0B^ueXnn9Tr4$5{B@?7MP5N%73g%7`^7cxRbO5xZcaNJ)cnr6 z?z*^cRLZTtjb5`rXCSrlN-rsXehz$9k-z<4m7P0xPMS7N4YW58w5AGl6k(~Z;p2Y? ztWr`_R~o&)x!E0b0h7Y*c0Sojmc`Fja0+aAYq;Zc3#agveJ?L8Y<_v|u(qUZ<D{?c z8!j&QJEWhv_uI)H$>`l>Z?%jzS{$3>ygbF-L%`7Z_@|eVPhK2viSjGC<?h@5&s#d# zbWz)>Hy6J1pN(m_C1G+DboTUB8|B@1-dxZZd)<(B+*^O|l}szE5_5<7Rwnmn*3Mt> zjrHuC7t>3BKApbW@Vbn!;J@GZ|F61LyE^q-a!Awa_4}f}dY8$xGF~vhu;w>2r~eAh z;|b4KXdW*AyZimV;HU08FD`17ax&%%eY`GOV41ZmH`}?LFN_*p1orwHXC=sHpIZ58 zBijU<MgFeg0Rao@0vD?Z?0=KD=cC)#Zr<Rpd;WYny{Y_t+|NIs&-<F5o$a^Y(rImj z-CE&mjKMcwg7*7oEdVvwLSLu2&2T%v@fm0Eg3_0lTy6KgSk%2FY;Dvl%N4P^x6P2; zX5Tk|U+wQz$<N>IejjGan0<X+=vKKEtz3M3VOukQU5QBxS?(uW`sT{&aDU(6_FF}@ zcR$Ep%(i6Xl}dS4+w`eV-abxm-;X5IROMxNFRQAktk|?ZZg138vq;u!oLi@v->=!c zYUh#i-R1A^eY^g#)=+y(K+Uh0%d=+Z-`?iC_H<}?Y^r|w-Cd<uMY3ivU3|0QZ1~!! zrCCP``{tVE&ib{FIqP>p&BJP!(BpH$EsS*M{3uLx7HCaNm@}au33N0>$k%`O>;JEP zcGbj~Wy7zdk@Y+oi=2Z6pCy`Qe|XMy_R0>%Z=ACt3k)5EyF_37W)QbJ^ShJb@p1Y3 zkp9BMuQRS06@OTM_~?&`?s6Nai>4kgY|~@Qc;+TNPZV??pQ-V;mzUk|RX&#m-Aec> zj3MJz-o-_&S;vfT-`TNr=bulfpMtJJIeXy8!IW>Gr}+KXTc9at|K@}2@qQ(Xq9+|$ zYDf8twH?Cy`|bbj@R+V%B6+C%{+ZZ?dnU@SV(ispiR`bt@qqjG`gr@$=;k_;x3{;8 zYhU=yX8ZHW<VjPeEXiWOxc}vO`~O?6FN+jxx&hj-R`>I%c<{HW+I&pi{&qiISmin5 zWSL7=JHNdz9$&NY*T0tscZvS_^?H5LVP5kUvm|TQ3syX6zX#e>_x9FSVeP7it>PiR zy1y)s9Y5YZbphK4(B|6Xa@9UlW&e5!E=abIe7fg#*5_wuSDn|%vfL>5W21ZMajB~^ zDONiy9*3*XdNEBmdKr_0_S}{)QTA7o_WXXgTS!!Nsa{SP@4si~=B}RA1Uhz^iC3Go z{#TuYds*%N3g-{)wT<uDzVQkzS|jr3<z3DTIlbM+v)&c>M4JA%Tpw_!@VM-!tKspU zWo6qUc!gf=`}-|=szmF1&Rx<Etn-(CUYEV;+`GHGLwPN;7}j3OdgvR$?D3q3@j<(M z-3p_Yi|(hpE-V3^81OawmX74<=Si=xt<`!hXgVwHbjp{|*=D(u+~sRSQZrxqt_W+D zD!#y6vii_dzFO(8c4xy{8aPd#y>J&77FG^xQxLezxn__3njS`lsomx#SLa%lp3?Sn z*r5@zHh$Xn;y3GET~gFQrxbN`)bwn9{TVb658e+WC`js+q(7$pXTKQpX-3T9r5X$j O3=E#GelF{r5}E+3F}r~P literal 0 HcmV?d00001 diff --git a/tp_2_miso_dict.py b/tp_2_miso_dict.py index cf5948d..35c7449 100644 --- a/tp_2_miso_dict.py +++ b/tp_2_miso_dict.py @@ -11,7 +11,46 @@ def experiment_load_factor(load_factors): """ Étude du facteur de charge """ - return [],[],[] + insertion_times = [] + search_times = [] + deletion_times = [] + + for load_factor in load_factors: + d = {} + size = int(10000 * load_factor) # Taille de la structure en fonction du facteur charge + + # Mesure du temps d'insertion + start_time = time.time() + for i in range(size): + key = str(i) + value = i + d[key] = value + + insertion_time = time.time() - start_time + insertion_times.append(insertion_time) + + # Mesure du temps de recherche + start_time = time.time() + for i in range(size): + key = str(i) + _ = d.get(key) # Recherche de la clé + + search_time = time.time() - start_time + search_times.append(search_time) + + # Réiitialisation du dictionnaire pour la suppression + d = {str(i): i for i in range(size)} + + # Mesure du temps de suppression + start_time = time.time() + for i in range(size): + key = str(i) + del d[key] + deletion_time = time.time() - start_time + deletion_times.append(deletion_time) + + return insertion_times, search_times, deletion_times + def experiment_longest(): """ -- GitLab