redhat 6.1 (fr?), install 766MB, df 900MB, 35min (asked for all groups except "everything") upgrade to redhat 6.2, sum 757MB, df 936MB, 20min mandrake 7.1, install 755MB, df 1091MB, 17min (asked install size 910MB), 515 packages upgrade to cooker, sum 1000MB, df 1404MB, 35min redhat 7.0b, install 815MB, df 960MB, 18min redhat 7.0, install 995MB, df MB, 26min 7.2b, 3.3GB 2h26 7.2b: (lang fr) compssLevel df rpm time fs df/time 100 64 59 0:59 ext2 500M 1.08 90 132 127 1:50 ext2 500M 1.20 80 226 218 3:26 ext2 500M 1.10 70 449 387 5:52 ext2 1G 1.28 60 614 541 8:36 ext2 1G 1.19 50 1113 943 17:40 ext2 2G 1.05 40 1193 1013 20:39 ext2 2G 0.96 30 1262 1072 22:28 ext2 2G 0.94 20 1445 1219 27:34 ext2 2G 0.87 10 1649 1394 36:58 ext2 2G 0.74 0 1943 1638 48:02 ext2 2G 0.67 -10 2957 2519 101:49 ext2 4G 0.48 7.2b: (lang all) compssLevel df rpm time fs df/time 100 70 59 1:04 ext2 500M 1.09 90 289 281 4:20 ext2 500M 1.11 80 373 361 5:41 ext2 500M 1.09 70 890 794 13:28 ext2 1G 1.10 mem used 7.2cooker gtk: runinstall2 13608(data 9572) + FBDev 2984(data 1544) newt: runinstall2 9516(data 7528) stdio: runinstall2 9160(data 7372) 8.0rc1: (lang fr) rpmsrate 4 () 175 139 3:25 reiserfs 2G 0.85 4 all 831 786 18:08 reiserfs 2G 0.76 8.1b 5 () 77 66 1:24 ext2 300M 8.1pre_rc1 rpm df time/rpm rpm/df 6 () 82 66 1:26 ext2 500M 1.05 1.24 5 () 89 71 1:38 ext2 500M 1.10 1.25 3 () 94 77 1:46 ext2 500M 1.13 1.22 5 X 145 127 2:09 ext2 500M 0.89 1.14 3 X 231 217 3:26 ext2 500M 0.89 1.06 4 kde 393 316 4:31 ext2 2G 0.69 1.24 4 kde 393 316 4:41 ext2 2G 0.72 1.24 4 kde 393 316 4:43 ext2 4G 0.72 1.24 5 all 367 337 5:02 ext2 500M 0.82 1.09 4 kde+gnome 454 370 5:50 ext2 4G 0.77 1.23 4 kde+gnome 454 370 6:10 ext2 4G 0.81 1.23 4 kde+gnome 454 370 6:24 ext2 4G 0.85 1.23 5 all 489 406 5:55 ext2 4G 0.73 1.20 5 all 490 406 5:18 ext2 1G 0.65 1.21 4 kd+gn+dsk 594 494 7:31 ext2 4G 0.76 1.20 4 prev+dev 827 696 10:27 ext2 4G 0.76 1.19 4 all 1100 988 19:34 ext2 1G 1.07 1.11 3 all 1640 1331 31:33 ext2 2G 1.15 1.23 3 all 1740 1434 39:38 ext2 4G 1.37 1.21 2 all 2252 1843 54:40 ext2 4G 1.46 1.22 -1 all 2490 2048 61:02 ext2 4G 1.47 1.22 # perl -alpe '$F[4] =~ /(.*):(.*)/; $r = ($1 * 60 + $2) / $F[2]; s|\S+(\s+\S+)\s*$|sprintf("%.2f", $r) . "$1"|e;' # perl -ape '$r = $F[2] / $F[3]; s|\S+\s*$|sprintf "%.2f\n", $r|e;' 9.0beta1 5 () 89 71 1:35 ext2 500M 3 X 240 231 3:41 ext2 500M 5 all 306 293 3:36 ext2 500M 4 all 808 731 6:48 ext2 1G 4 all 1433 1331 21:44 ext2 2G 4 X+kde 822 749 6:05 ext2 2G 4 X+gnome 369 319 5:58 ext2 2G rpm df time time/rpm rpm/df 2006beta celeron 360Mhz, 256MB, auto_install 6 - 106 225 1:46 ext3 788M 1.00 0.47 5 X 365 440 4:19 ext2 3.2G 0.71 0.83 5 X 385 417 5:15 ext2 3.2G 0.82 0.92 4 X 415 489 05:26 ext2 3.2G 0.79 0.85 4 X 436 511 06:05 ext2 788M 0.84 0.85 4 X+KDE 709 829 08:39 ext2 3.2G 0.73 0.86 4 X+KDE 709 829 09:01 ext2 3.2G 0.76 0.86 4 X+KDE 709 934 11:01 ext3 3.2G 0.93 0.76 4 X+KDE 709 934 10:37 ext3 3.2G 0.90 0.76 4 X+KDE+GNO 763 888 11:06 ext2 3.2G 0.87 0.86 4 def+GNO 1024 1126 12:41 ext2 3.2G 0.74 0.91 4 def+GNO 1227 1130 13:52 ext2 3.2G 0.68 1.09 4 default 1433 1536 18:26 ext2 3.2G 0.77 0.93 4 def+GNO 1442 1633 17:58 ext2 3.2G 0.75 0.88 2 all 2800 3200 47:56 ext2 4G 1.03 0.88 redhat 7.3: - do not halt the box when "halt" is used - no sysreq - kdm has gnome entry whereas gnome is not installed => choosing gnome gives a flashing black screen and kdm reruns - repartition of packages on various CDs is crap - bootloader: handling of multiple disks is more powerful in redhat, but more dangerous (proposed to everyone, but not proposed especially to people having a dangerous combinaison) - why still asking about lba32!! * anaconda 7.3 vs 7.3.92 - skipddc option (locks some machines) ?? maybe because it's done at the beginning of their install? - LVM - lvm_dialog_gui.py - Physical Extent 1MB 2MB 4MB ... 16GB (vgcreate -s ${PhysicalExtentSize}k) - see lvm_sanity_checks.txt, take them - lvm on / (mkinitrd) - handle upgrade when lvm on / - vgcreate -An (ie --autobackup no) ?? (also for lvcreate vgchange lvremove - see clampPVSize in lvm.py - RAID - Number of spares ?? - mkraid --dangerous-no-resync ?? - progress bar in ext2 formatting - ctrl-alt-suppr during install => reboots - user names: the regexp is [a-zA-Z][^\0-\x20:,\n]* or [A-Za-z][A-Za-z0-9]{0,7} (depending on wether you're in text mode or graphic mode :) - check the user name created is not a system one (see systemUsers) - SMB authentification - cloneDrive ? - edd dropped (was to detect lba32 capability, which was dumb) - reconfig type of installed removed (was something between install & upgrade) - ddcprobe code removed -> moved to kudzu changes: sigprocmask and movl added around lrmi_vm86 - $ENV{GDK_USE_XFT} = 0 * kudzu 0.99.52 vs 0.99.55 - blacklisting modules.pcimap e100 and bcm5700 * hwdata 0.14 vs 0.32 - dropped XFree86 3.3.6 support - upgradelist: list of (old_module => new_module) for upgrades (a simpler way would be to drop entries in modules.conf that concern obsolete (and not available anymore) modules, relying on auto-detection to add the new one) - CardMonitorCombos (for laptops) redhat 8.0: (legend: + pros - cons / notice) Install steps difference + firewall wizard + md5sum check when booting install - no upgrade packages installation during install - no services configuration (chkconfig) - no printer configuration - no autologin - no real small installation - no small packages (groff-for-man, perl-base...) / still propose non-MD5 or non-shadow passwords / post install tool (firstconfig) General install behaviour, eye-candiness + package selection a la Windows + in language selection languages displayed in native language + candy timezone selection + help uses bold/italic/big-font - no one CD install / not using fb at install / python + gtk2 vs perl + gtk / ask many things before doing anything (esp. delayed partitioning, swap not available when selecting packages!(?)) - more width-hard-coded dialog boxes (harder for translations) / use a loopback file from the CD then copied on system Partitioning - no diskdruid after install - no partitioning wizard - no devfs - no xfs (but now has reiserfs/jfs) - no loopback crypted fs - no file swap (?) - no supermount + LABELed entries in fstab + progress bar while formatting Bootloader + bootloader configuration less awkward - no automatic handling of bios ordering with many harddrives - propose to manually change bios ordering even with one harddrive - LBA32 checkbox / defaults to grub Network - awkward question apropos hostname when using DHCP - no default choice for netmask/gateway/DNS based on IP XFree - no wacom configuration - no graphic card multi-head configuration - no ATI tvout configuration - no prompt for logout after changing X config - VideoRam prompted for everybody / no XFree3 / no Utah GLX / load module "fbdevhw" "record", but not "v4l" / always load module "glx" and "dri" Keyboard - many non useful keyboard entries (eg: latin0) - no way to choose the toggle key to choose between latin/non-latin keyboard - no loadkeys done during install for console Mouse - no way to test mouse choice - mouse choices include many non-useful choices, badly sorted (Intellimouse must be sought in Microsoft whereas it's used by many others) Multimedia - no bttv configuration (including webcams) - missing audio modules (alsa, audigy...) * anaconda 8.0 (rel. 4) vs 8.0.92 - use vte instead of gnome.zvt - add alpha (axp) partitioning code - remove label "nofb" and options "devfs=nomount ramdisk_size=9216" from syslinux.cfg - edd (ddc probe) moved to kudzu - add "-Odir_index" option to ext3 tunefs - screenshoting in directory /root/anaconda-screenshots/ instead of using exported display - assembler code change in cpuid, smp.c - there is some code to read the "raid superblock" (see doGetRaidSuperblock in isys/isys.c) - new code for choosing to upgrade or not - hack to remove /var/lib/rpm/__db.00[123] (with comment "make sure that the rpmdb doesn't have stale locks :/") * anaconda 8.0.92 vs 8.0.93 (rel. 0.20030108205243) - drop xmode (bring up text mode in a remote xterm) - code available to check the ability to do a mkbootdisk (check size of vmlinuz + initrd, check size of floppy) - drop "-Odir_index" option to ext3 tunefs (with comment "add back -Odir_index when htree is safe") - waitForLink added to loader2/net.c using added ethtool thingy (get_ethtool_link_status, get_link_status) - OS390 fdasd & z/IPL changes - for kickstart, new option "--ignoremissing", (there were --ignoredeps and --resolvedeps) - /usr/kerberos/lib in LD_LIBRARY_PATH - these are symlinks so you cant make them mount points otherexcept = ['/var/mail', '/usr/bin/X11', '/usr/lib/X11', '/usr/tmp'] elif self.mountpoint in otherexcept: return _("The mount point %s cannot be used. It must " "be a symbolic link for proper system " "operation. Please select a different " "mount point.") % (self.mountpoint,) * hwdata 0.47 (redhat 8.0) vs 0.62 (redhat 8.1 beta1 phoebe) - pcitable & upgradelist - replace eepro100 with e100 - switch 0x1106 0x3059 "via82cxxx_audio" to "unknown" - Cards - remove most swcursor with comment: # mharris - Nov 23, 2002 - Commented out the swcursor option, if it is still # needed, then lets disable it right in the driver completely, or possibly # fix it. - using driver "nv" for GeForce4 and Quadro4 with comment: # mharris - Nov 23, 2002 - enabling "nv" driver for GeForce 4 and Quadro 4 as # CVS XFree86 support them now in 4.2.99.2 - special options "externDisp" and "internDisp" for NeoMagic cards together with CHIPSET * kudzu 0.99.69 (redhat 8.0) vs 0.99.83 (redhat 8.1 beta1 phoebe) - don't read eepro100 entries from the pcitable - handle compressed modules - many changes in PS/2 mouse detection, and handle "intellips/2" mouse - changes in PnP serial modem detection - use "udf,iso9660" option for cdrom entry in fstab (note that comma separated choice of filesystems *is* allowed, though not documented in fstab(5)) AP.QĵחB{,y zZ6(?Muy:̺9BBύv!/k\;(95Y\^߭Y@Sz`#oZH 7DCn[] u jdgwO|('o(`o>7)ǁR/Q;0ckX$!Uڨn˹!WNnM;&2ݘD2 JLبM0c^4h}mNf'<9EkZQ d=p.#oFfJmd2D-C?_mW>F$d"ܳǭ7Hbn돩=ݩ(P3&΁3A@r)RFZLDV^cx=6V%5ܪUKo7&̬H M1K!d؇ P:%4Q#&IO1/b&^K J?P*av!HsP>wN+c D8rI@DNۇu-j:~`sJ9[u Jm!F=,#2Qb,xLqTUyW#5ϑ5,PK ըY>!%}bi{h}7_keUlGטiIa3x82w6pef&c;ѿUCcO:$4j_hr1h{y{ltB(}&}+ և x7 }Er3=S4.d9K`9Dtn {"-!l-{T4Vo˥6;/AVG-wB՛4t۽t#w$@[45@};hmb-wi?/d2%1ְO}А,WC!Ff]ZenD4'J2ElQs [+O^@ 8s}Nחz/zȬ8ŏRB(ijB9d0WwR%( dnTTTw"[N81uCƼcm4HV &wfϲ@$L# )f5BCELw: {ÑoH_Y AA-9[!vWTf= dtF|gKdw~!= /bMxq Yys*KDZ`FHm+T}8ds66d1 T>rf9_NFC-?ta9(I?>i/7xo%60R&&5̕5S\\Н\t o%Eg_!?NBZ܆f&\Gll'%B5&#:́No_BjX H<: |g"u><6C &&ͭ?eaUVrƣ EH7$D{22MșÿZ/G{(=&+102[t˼ETY@w Mu遅7&B}ׁs4-c]oGؾsMbb!);/j$.|@»%b )~rzYjc^ւ cNql!8We#‹@X璡?N2Vfo` f;c4BUQ}+qqNf 3  ` +ZIJ_X`RykD㶧H!O7lm`@&;_69sU6kEYF?-^2(Mu~qdCptpJR)6Wu?cM`fˌY:kFzZ%UVQڮh=ؽ߄ƫ~{XDCAi@>Qg`}1bAB}vZq\& ()8*>I57 k\~aJu\ *\,dQUї }MzD]St(!ot[ﻌEG<_> qM+捳|-J7}c(üdQ^9 ͈(w@m@],}vtg/}w(5;W,Xo![Y$etKay^1m7%ɱѝGg"{nľE\N|q,˹'AOW. I?&n4YXaO]aUi8$rTbXge?3K).ޅ'vLfAv 1@1gQZtirm__2WlA,i'jJRއQ\p&:p>ͶӇb )J?9A3c-]YPHn|iI $ J33'ua/ 3TR#"m!t#S56#9١%E ?m= hjL %=ʱ>?K\CdfZV_?ùyK`X[+4J' Ϸ|˲l| #0&IO}$I+v(`5"#.u,Oz{N'~(*~2I*^NK<Hܜ޷;E^QG?!xj_\V/#\ QuSC\ɿe/՟K32btQ/c2nGC>SYmסfGRߴO5 ɮ0S"a>fc!G BaKyQP ͊Wg @'0 Dt'J dNu۷MO"EL(QBDS"(MNwTȕ*- RG0?*d=Z{ǹ|h.oac_M7VL;|^yd8B9h,N(˾ eeC {$~D 7tX)7Hn{fHko eW/^y\jXYL?3/x.-ُyp4"KҨfݱHץuBȓcݱݕa!pFw@ ppGw1s<ۯ3j;B3ica!liuu ͡کP|x*s=)V D0i ɽ<HLJl>_ =$nAnA'Fj,IQ6l4C%׍&=;{F"ljj3;]Es eyBfQ}ƛwBDRfU)Cj<ƘFK ef5&Czc#+K^3b/˅wtVŧyAٟA ~|[=֯/g5!rx ]V_M7ӧڻt{#]rzP6NbRN 5[%WVSq`8j刢> hT~6DωomqLY(ٜ8qEv)x=1NX2932uil*$YG~Pj|5_:vw(|: csTDsyu 4:nMP-F P4pdA"'TJJukgc U'`n'[) o)XфKЕRAUQXd@kThdJr)&ރ^ߖk _t?mj!19S|/tꍒ;1V , $&:[.AMum<Ow6)Q<]A$@6ˀixH!6A(EQjLss)^:Vݖ q3ؖX1M{ 8,F29Ud[!~lV;,Ʋ-2dNN);&'hF;uf 2h]=: o]Tp1}]5hɗiՅ0Fxpu 2]jƭrq~ iXLzE}{lO^C>YYal}3_ uDzL)97h+A1A 낳=`Ox2;DPa8#|ތ5hD6\n&6֠]0DBBmM1bMjZ&ҹHsRdž$z% NQaP/%(tt:Yb!"_gMnHW̴"'vmX^(nL v4 y"nh>[rugXKzEvRѶ'Q"b|9 \-/=F綡сĖ8d8ö6AM7$8X6 +±gD${Z3'pa^͍IWFZj~"ii5M')l}֬)u4BW,{?=v@[ICb8 % RI %:6-/#9|A> OmRt`q0Hڛ(HMeTE1TRgz|{}i{]&GT+[q*7&imĮIG7-rt/3T֩ʖqbrxC~o5 SlE(0e we8,W*=NPDGpU V]+j\5p5B:tSJ*EjrX)Wj=mudQ.iMoĨB'XS@q*fQ;82?[9<"[t?Ņa!@ ^yjz]KuyS O2%c,7z3!ʑp@%}YE03-M\%ZC ko-_u÷p`o g 9] 1v,Ѯ6،2u#ϲXOx"`I O wf:(-m*U=z@VxDd NG{/xfM8zHXaDytQ}iVLSkaVpt>| 8И B,yRzZ ϼj2XÖUW甘XHT&?JL` U=j{˶:bn zaح̘Y-֏8Mf-B<4XfO?9;mZc *KO::O/ĺG*QgJ!Aӎ=  bsoAO>Y(Qg(-\µw1cq2tݨimL5hiJ]MPlmyބsʗL*/x;{LZƔ73bKM9{?WH%Ez&Z[ԩTR {%CkkNi@UO` ikg.)baj ,壩~1Ra$(\-z gTi ׽ևe4xgeK;$v9uXπ¿Xp<+u}j ̢XkǓs̵n֠հh|T˱Ym5;4fs-68%7p]B^ g6m';m# AlG|F Hw_ yp"t5E)R3 ȼbfl,1DCFkf6zF)_m>բܦc[|De |G@Baɫ#Tˈ[3/,<QbS BHACѰAdK[@baJP SӃr-0ODʀ]eE?\.ߢ~Pi>>,NBH%uOz:3YH(=:8^F ,S;%'l2T@:ϺjCv5ES#FȮ2E3Rzx( $lLJ,=Hyhq#|> 龢_}?*-] ŰCvmi{ez-.˶i8v)hgq Fq˜nC Ҡp̲6bMst>n􉲼SɘygHʉw:y7l΢1c7Q74.A[_yqcl?w-["8l PvqnyPG7tr |7 v,GR_7+M0+\j8=0yiK1Z~ƟB aS(Ju9Ai0x 4 Bl/ @=sǙDJ( QNdL>FtuɬCBS0 ʱ5SCM OxR󤈟j S||FAr87WvwDt3*zt5&YWB>ǥ NaC8IEXPl({-MkY/;L+WcUmc?*7E,'ezC.%H@(S})ʜ4`V6Vc W%,rt-BAf&*4sn[%kk H,cBn)Q9+ ZZGwx==(Hh[QV7MH-?tWrSlEo5UMlmdCL aSط lW7`aM{ѻ ݵSg(ףFcJ$7P,OI7XPzWb}ޔ&df:$3+ 1hoLN r 2ߪd.@A յz yߐtvF)X}%^P5y8<ȍ|q't{w"8_FAK}u bLBrIPQ5GlH&zfx7"6=ݸZȋopS] Pj{4gcpfdSsq/?R's>chrEy5ܹQ/Dش{C QmZ³^_^|ʯp7-TTJIf;ӁCâ"kf6(iRdʂ}C;H)]L@чנɽ6$W5\J aȂDg8'd?obWVj6 FWG(љdsG-xtG{酽4 (#AYRGA*~%M|\ dH]` IF# y/s 8sݒ(9丩']Uv#{Enpm]JEԞ2Ml=@Bm?W[KLjB%H.Kݺ&мX((]{ | 叠=/Jr &7?'qBFuِ)Pg[LW dIAq#t+51 -tu1ԇ˫:GZ.2hmn_&(XrxL^r/)G^5 q5Ej~ Ѫb& (mf$wgbU>-T X=#PW ND5h=7A:d.H,vD:޳)ldebmcXDj{ KTL· r\y?G>)#BxWp{uYp|Qn$A0e9r!PDOy(+6X۬GxԹ3.`9%]U;)FVljͲ aū͔i(Cqt锼xQ Չf:>B;ڂ ư$HX+yq7ytՒNRo7Y^Z!$c:]dݩO^@) %2.YHNy$P y.{CBcbJWw_a8sq.hI[M"9N.O4Q1D?fG[|q` h lJ2L&VƯSmc^AVH3wDa3R `8I9% XȴN9mYmBbCiXdCHIe`?zP^ ٍ7 B&(j2skWlHgl':tsIe~EVDB=wꈦQ BL,5X%(~Ǵ^^Xk\еΟs2n? H-zzƩ_#84$N dGo[P d H綃FXl$Jq{Kvn `¡>Aq9O8 1~Rڦcm{rOD/6LbZ/B&ak‚@H'H6<^t1/NYq%q -yQik;6_.Z<|+|EpfHw>tl%7G$N?'$5vrׯo/-IevRc-!0]jVUc,9̠*~$TXY qS_- F1t?lxH=ڀ\iP2 þ0l0K^c`XG.ӗ-/V,5=M|8#W_-բLSbOxEYLOr6[U~gv]g(/ pNt2 R"1:D 6Gȃn0UV)46G#Db"s+- @S_D+6DBNQx^1g8Z͜3ThHy<+; :dN6{=ouuR8$p4= l[> p9> D/$g@w+1\o"NSAhtj c7gT»sBDyN? %0%@&+Wy"=|3(b9 "q47;pZUW!^ϐ V4S9熽z,|!fIt54"RPB~&zoR@R W[1JR'"yuE*P!B @Y}rp9A״~viCwiE,5 [ :`D(!%pz8F4[p .Ʋ@ p6㑀ҭIJdk¦""Y봕ҢSDͽ l] +1A&yuH,TPUў3ABm,HFt}۞&>>`||HJ$D;6d7jkzt]Z2^=+|ލx'-v-Xq=H[V,) L`} $_H^k]wXBXt;ip]uSx#!S+UtKg#eA3Ƣ^&*CIFXoȢmۿ:tX0StϗXn8t }eQ΋VF2P`k6rk[e!먲 Ye6$-;Q"Uhk bxCAf67ś[և (zQQsa.:#߰~2\c`[yCsO.2˝X/LN?29] {Q+ߡ|,ocE蕴ᇦ+d2CgD͘` C۽l|FQE5Dc|X^ar5p'`nBC5R!E7 ^Nx`@Àq mggwZCL 9( ?YGDSPR01!lB.rGvJM?-AmrB&DžCcBLgЇ P)w=a7Fm}%,<x5?"V2㢙XP`S&ӱF׸RORzgnnNW%bi-R5}rEoMp'8AxM+$x4h+}7q"~iUCpu\9L)NgosW s0C?U׬0|eo.QQf;KH6 rf{+Wサ|[u 8ia]r/4=nD8cIz㰒KpIi$Ip:YW{/ݰVOt@l*:tEPIӈ|=S:<)@~w @6n HwpDM۸c(Q) Y`r `'o][78'\ݔi"5?.6zY.C>/U'xgIK{H@vE<1Tr-Az*u!n<wkkn(Q|&`"J"K:m;L+GJc@JPřŚwkr.܏$bȣ4oPq8܎ssM 8^k{]u9쪚ҞKd*fπ*Z`Urem✛3,`t!@AՕmF^kL*j9HKP7;F~pT%!\~D;^]ZD ǵxŢr+C)` Ry&3t4*L1٦v qA@C+w)>&;C5L5EH#H"rDsJ-+O`P^?cmѿbw0-;s +;"4q|vd &,wo'=i+gɪ?iVY `&Lcv{3NsWZ0۠=z}™˞@&Ms웣Z%1M2qꗕT"hzqj69=#j$F\貪wCvn K0.T?+ZiIlBqBڤg8]B !Z(F )g\pM !sZCW1'm p\ޟbkq6!@籦RV0QR[)qK%ƽzWC5fhC5O3ϫl=Yá:>g83҂zݯD$BfE=]8 *WadHzf蓈.] )Ig*8|^lPAW! OW^"M|MI~kxLrjLq>~R(Є_͌vj2DQ1Ir⌽Se9,r`g o:h6<[{Є7yBίlk[TmN^-{ >@f- ]o Ktq@"S^ DQ#Nb]Ӗk9u~XK9MoG8=?}Pjm~ruNM NE^"igH I:F;~w@;~A'>ꮶ;Ossm'ٿx8KyмW\8WDb'eWk:IS' luj֜-[[xG`0ghrӆZdS)ècsP<I!{]4~4,BAl5Oy ؙ~0ۍ@Vwv J ԁu yt;e8MeDd#-JJ '%rKo6Df{wl}I:5Xh.w.J"HUe:鿤(kE N9{)SI9CXX1|8 !HTX#L$t35 }?34v=8+I>kxR^[EFI՗PMlƼQq= |+B&Iǀ]zdn`~|ZGAOn Uy=/ˌw Bu Ӂ3YJ.1L,7FN0;ȉyOYo Jb//ww|@EPx6g7~aF'dbvuU;xZdceţRb(i-7a)G4w 8 .gwQo"9kxwygQrx͘zFJ q ЗٴkB hHUN4XeȪ}"0/DVQtD:ȣtUrAe*լ%숰A; bӁ˰ /S?UsS@bZzr8XLC*C3ϐTzhw9݂357×++ߡnPM+M LUNmYw[e`]OWiʨgHsu ehfX0o?ĥHE3<1=ܕ~c-=|PYMe=PĖ~Pƺ.J[v2}֟a%Z!FDyʤ⬰ߪiCFԕ*r'Aqȟ=.eƶTIksVte>p̛" ^W\h𚢈3L;U9,yށGrTTf;ûl϶##^ BLH@=j.+XU, z7?Pl!@/KmALu7IR#3_ cEU5'6,ƑAyVwD% N A,wEuBRzG a12v8TκA,U8&R"b?9!Di7D(FoST+oV_59- S /U 6ҵPb6'qqDru޻Sv<5 i^QP&uEMe=5fyru6sᒫ>fO+"ؓ EEkVژKU;'hZԕT!Y)f: ^ghh3>dsIgmڝHzya/`c"Gaڇx$** p.S4 ^ґ8f-kΓ~J){$bv6qі "}8Y?%lp& -Pa͙hO]Kݘإ #U7$w Pr{].e}2;Djg#'Lt/ WQԮ|F{:atpB !/.FGӽe$1"?UVgւ55i@K^LV-62 <-/gǿ6~rz:&^MR}'Gm\FJz=:.\'̦$|~ 4>ڙ}c}`v _^n;, *Qʩz,!aG0d6sjQ9sbgjzd_l{exL*OE}h#^+XS[EVPD3iJ{Me܎(-qho~sC;x'F.~K8#g $IG^) ]6p1T|eeFA, 1vE*Cb۶<ΝA$["~_}`K&U8]$WO+y: FqQհp?Nr)^Wn77| G@י)K,ܸ[[!jk臌[,yחCoQj8Yʶ lm"ST00эowA/OMFMfl0<@cY VMl,,sVjm·V"/KU>0 eVDF_><`*ϵ<]z/;![VJKoj7|t=\e=<4m' 2g1StǒY7`aE^<MJt(9Q\ȄX`yR`Ot?|tB-i#,ʡlbHwH e}`\\7H{sIt؆`q덢1 {sMxcl7e\ZTh@]Go/Q=8?LS(\ <>L} B0CGZ~޼#Ssr*]=t5S4b6u@<޲(VM:#"ӹGr#h+z̈=m2hkEt\NRWR:*vY^G'`>m^֊F@}d>FKn׾?x|kris*`-Nz:K=zZwh>s;7֐'.L {8'%kREߨ] ) 9?~F8 d@k6~ o*FxVIm2 t]}0] ſB|'Ͻ)LF)D!Lpp+'em|HmEpH$R4MFahQ e E_7<+$X: CL~U0mdj`btPJqÊI(tNˬi.{]9gnX2i*jPNѡ+g@@/_ے2Si#Wʩ'VHif6fm@#C@i,#ծC؋ƹ z Pt2NZ$ho3MןwN [i J6Do} |@>ewDO݋(l̪.d+= ?Y/]zĦH<>8+N'EZV1ޱ^5rdy`ٷOp[o>xѩn'߱89DLa8.ُ yF# 2۷˹A@֒XÕyv=_અLmKN >xrMg0^S@ZUM}ݦesjPtŃV*dh*h%ۯ 9>d U5Qu?1Ȱ-+c : yyPJ?MΫQ1{!Wg$$X"7UЮleYJ"R89 oP݇E28f@Mʒd~УljoZ]0Tx:/Zݶ"g/:'rS0n^%^nI'7K =;yE(G[\ПmH7􌋒 WKZ1|ǺPLH"t-r+SCxfk,JC w{!մb&.a ՊmߨO%J=%Dܞcw TyG#Q<#~DoٵŪa$S ^:뭾~7;;2M*?B('b[>=3ujilL,XnuCp΀M9"( u4-2t{R-Y1\X X;DҎQ8sK rdi1dHaêݑ>cZdHcCdW1AĬ܊A; Fkq]|EkAjV]#/`ʊ*D$|ޏvXpM6} 4E!@e\Ci-8UoJ1WbR7c &;Cju~p:t(Nk"">(n]o4E#Yl [&תԁ _2vTsKf,E.}{o\:m1[uj 5 |7b].d|ޣShLßGZ<ԤQX=|)%LhB!D0%/)o0m7.Pv\4j|NMÄnݧts@^T=إ/Rbz/fPy0S$n pH`7D qOZ"i%-\vNN^d؈99k^]qt XY {Ƣ†nrz(Af ڜ~A%0#~I=ϯ>ғrC *51UxhWu+ZAh ~^+yi@kw&+~ׂ̈́7Z:yW?-,5 n"aV]AK[MHcUi?<sJviIԽڀXpwzŮ&ɳxÉ][kރ. 71}5F …?UT5EA`/+~-._]G&m̉_d_iL{u&a5dJ';17O;H9w {\0:`\y3Vt ;Xq'auD:{^1٥t ed\N8s%$I .ZLraIG*_' ȬRb o['ZYqgcNPFMװ>Fj  wV>( E [EΜ7ɏM_q,Ȼnc'LJ;1+S-E( @!ZQ | [Phi ƺyjZn{JDLWLTh.8+iI;| z}TT1uEEg׽,L; Xe8Z6<g~Qvt.GljQ07슭I7X,]:T%8 h|Ch"NOSZ|;Uyi)N:TN[C  JUI\q +eTH.cwn_ΐIsY l.څ ZmHtDN$D/pXV}m(YC%OF-PWV4㫙GO)n\yzsQy\_:e҆?UR$1'WD.12A%E=e;WZ8b =_טcLGvMaq7&O}C|WKZtl6dRĦvI@-Z֋|Cvt$̜sCs7u-ؔdR&tRO‚sTӭEg3847Ħ?/PzOZd̫/^|P\{Q^Ehh#gOS+ckp8 2J}w4]yL~¡Q8Q(Fw˲ ŢWNH(7"[(ljO0pwk%ޛ&Iվ7U7|TQ= g P1Z%ofl@6=m e+,ٕG3 P܋q\M^L&j X}ܞ_LzKA^dM(lFM+I_-82 9-ChdaaMXKX,J`_=>bAz){qPsK-[\CtpOx&Or%Euu%tR ]!JU55gP+\ciy |L3iD%L&P5z"lQ-dTB/ ɧ5o1$J*n{OȾbT藬r omw FܥL QuN^RW yDD!xS3"IqՇ&^PʛeNʥ>@&ys0K2QU6;5G ! #,9}nFPw*Ψg?E"S:jLB; Ne껣g6 3'2dY Z/qrպ z %E͐C[Kܰ)3k7vdLՙՠcdNCdj sq^)g|Y[~:o*7zWNG$KWmD*j[, v߱63X>v|Iٯ1Ы6ԀyqXR(SЀckgl-tx7󠁷t ^al8^^d/t)@Qzı}n0YEr8Ԡ̿ѡI/%imhz|%4Ʃ!`&r~ݎ;4`%ΥD5Yz&SF;t1ȒcW[jЊʎr)7nÂ^rWIеθKR? TZb?,ʚ~^Jn/)H'Ek[, Þ4 NSnTT-]XRj_`rsrp&>T{8Hp߂UQ]%` VYw=Z0)[oeu'Mp!gSYކ"ߢ ٣X9کFQ3ɫ:kQcNhedLF dJM+Zŀa).[(7oU'qk%g1;i$Wr1O'P5n_t"F'NBPu蟞&FO:2gpky (xtΒ-/"ebQ,E3Nܤ> ,(E2# EyKFpsG+ Хȣ@%b=(+9 hK)&Όީ!Y _X3ɱu!k^jNkYf^쏑Ns0ɮgP|/Y6}ݧxp-c 9A~u-.*=})c+Z{yY(dob)ro⇗.[}6&wAQ[?{?=BwRg38p/kI;MjFqYHG%mv–˜/ SK$܍ d7<*@|-Iq J={< fu@FQȖ{܂Gǹ>[e-}u햘ZY;%JE9t%< ):Rn-f@ ưݜ~V5I/ܠb~DhQk]CVĒ1Q: 1m%8`z2ylz펚 Ő{W ozM<Z.ʂQu[XfPMʷ>/j+Q Z˘|\y;fc%#A:qghMmM\G(.p&Ff*Р[Q\Αr| G|8Xx}: ngy nsrAv8''xfcГ~kU^[Uv#bޕx ޶-]ˬZ9Kl۰H:͹RtĔg1Y+c~rz`D.A+䈡4YLGMq,V=sΔS88_6AĀBYthIą}Ci"M$ؔ/a_M^sOJ/LQ8W0">c=4F&0%0Yu&$Ks.^hF馇Kn·_~`,7ItF,jO kV(jMnS Q*O[7&ܸEVm)n6ʊ>^Ҝ{9ݝoO%C=hUn *=b#ٛԜ2 &9!z: G7XL{TFX BIq3%#L_e˵Ή),)&;:2X'_yli2]u5hω%g+H7%鏙KeB:k$A7p+ 9aEqRWIܣ>uD b#VBblaǵx#Nx`i#f]llՑmX)2jW?$5m; .uF "38M!s!$Xg#[ }e88+m?]NF=3eT?U< 6=,Ce3[ dmwh&vFҭ%7w?[*d# ˔IԊXVI7K(SJ X=i~S*ŇE1dyVH"0ټ6S\-OsM&@udZQEX7b-\7_p~l<q*=iBUֶ 烏f8r=  :Q&#Fx>6qIf*Ys׾M,oBͺ.=Va[.qVH$o(wn?hOu= ђշk!BC`?"ktq*e@c'bFjr šwW&7,zfhq["@ļdhVIڀ)%Հ"f|T# hSSh}ݬ>W{Vs/8d'͝k*.{3 "ٔaAe$k{:&9x=8ֿWX S;~$\/v#d}0ӻƈE< <*}GI )"ϩhq~)`aNځ3??Nc}٬g!՜kڻ'[S6m1:T#L<nMچˎ{mD_xpEВytadU>>s-]-a 18\N[\@ w#i[倗Z\P(x3!j]6z G'B;A{>Jk=G{r"]MF.?> 2_)ԋ@Cyv Hоs ;9 6Rd޼!zm#e̽݊j-AY~wL$jM9Q"'3#Ӫ[;\GY5iu'"x nb0RN.H^<9Ԗ5f!܌=HP- /7LeI](KP2kjYRP`[b㖫p5>d^1IПWꀢ@\m=nav|C _9,>~.V]+M+sL+ -s(v?_5tv7'z#>̦h8lWNШ]' oKOh"eL#AS1WrxMldxDLs$L2 4u}LݛunxE 8VS$My-Wyg2ᛎޮiYF ٶ4DkyK!{?us?ӣ"YkW ߖmcΰbD8=;$>ZK"PE|V Uy+v.BoT EsueLLѢ~6P] Rމ!YDvʋFOjH>lU T e+i}2XpD{,.F).DsϠbTbJeVJ/YApIv73oYb>|>mPAq*-Wsҕ6&EG9 f Cp(t{7E}YɃnk'"ѓ%e?+(\|Fk'^7^r+Q4ɽ^$o,/aӯ DbTaNi|,lƤr 7_=Drpҹ+ T2 2PH.yPIT1|O逵{G4TQ&/k]A|=+n e"כvm h~bΚ%ѳwRMBC<ĐiL(v/` &d' D%{IO0氨A5(mMܼ:!`Kbc.ް'mcFTg~ߟF=ʼnGrY.E _)4Vxo0ck2޸ݩGK!fTO?\C,"xϩuuFt{ ز ?cvX"x7Dž[NpXVi,nڀ|]8J1 ൦oӞLr)/gUPEaArѸ@WX~ zٓ~L rj+Yy~U׸*{P*wmR?BsTi VVJX=O6X9{bӲUse0p[9#2kYaR/{u3K\V&B+MLK I;X`k*,=}7)sg۱\ig@mT-f##)dt2BmbS{B0ޥU4&7ءN쑜T_a8Rgd,}mQ#&oII+NWF­oUU? EN9ugH E٩q^$;[+/ȴS$ w^HqrO[s<3t֪lyEyPa@g֠O99n}Kb,d˩RsA;k0KJ*N0c'Q @4N >G3 Np6%2B t77付r#='$ͿR%DCsOҿ&5{@#_d/9QrU3#67GάjIO<5cn JIkdYt8`(z[rl߿TH<N^ZaWez/#q{_N*>h?6#HU%OͳEa<| QN +Wۣ0ON֜wjp'!xt/ v;s[ÀPq-̐L4#5g9>< I>Y@*0 p(`ݨa#v-Ų̈́ȓ*@Cݖ+@{ 3@C1Vqɥp O~{{/1'#9`d".$׎cX徶:HticKc]Ǝ&}:3MrMTL׏Q} ,J=UdrDaC9,9B}T]q3v]Sfk)U,gF{&yL:{Ǩ4E@1CN{yᯚNs'aĩRO?Vm맗eit)~\)-G nWLCr-m#&q!o_jޞTRq8#"~C!9 XGX '=Fybцdn ^1dc.!|812|j?C74πVGoĺ}ggI5,n=(|&S1):5,ƶ;"gwTY'@`1_MVGdG3\Hɱ5z#JsK)?VW:0U}C@f~x.rMC9y\MFk"̫[NxpFxd4gTy r9IķfYJڢۊQ҇t8.8:x?aW7|f9*E;yڼOJhoy/Q1Kk02EPŒ q"ӛxIG}PL^ƘUh{y+ij Q2W<+ykJX'6ce5FI&fwJ jtJr6*DmI $`97g;oLև)jƌ2pa=^ qq0oc.p(ʶ N}[ѦARҶ7 n ȥzC#  -ҿGd_$@ ­Z@"qsb8Z/׺sǸ{]T`<Y&lb`tp=_V&UZ{m_:՗N E:QsVVkx֫H?ht_s p,izF-;?(2, xb%] TrHrLK]͠eatS:DjX-~I N5pUhu{K@ cǗt '(R5kBmƤ6m*CdJx섃HQ1ŖgEDHBt*}-9Lt `F0m!|3kWUR zKvfUn nj\]*5, )[ ;_Tt=MG1‡v4Kzh[R5,T\tY7GLmw@ :RjmhZ6¦N>#> Jz%|IإW@Yw,,u[ dqzA\jC ԗN*rltz&r&ew|n~>T%C-EGH6Q?R~wTs[Fl2)o;(<'| OSͣ x693uw 5 :̅/(Ɯ01i!t\-){cAcLzW^n ie>,fȌ%ɨ#olit0>j^/_Z'6-ԫ;дb֫2"SAޞ#y~YoTM}ic4p"K6-hưRirSaMނNoA%~STYQ˾d+sQkѹag2O&VxN}GI#U;8&qg+#6Nrj:MGnTLX Sv#"6_;6KI+Bɉ'ѓCc#?>3G1R^ӑd-Tx8L}RϧIOg4p/@[辳A>?j ?ln]z=* A~CƋ"Ll''XUwV؃2ӷD*Z$neXGG6;|pbߌūLBfJaC&UMT#*uڳC%Oi{r>\<_J'; Wk{IÝ,j#.҃0$"~cܗş! Fŏ`\L]a^T(N 0RۜIɓ,槺;d_M\(u¿LD!IEsA;mt3ӗY4"}41fHIS> o<.m RRdžLmUbf( {i秜 N:72g2>ﯚoKrl$UWR|k)lQX\L&K?'1{?Qޔ*%2_8h^eEw@^1S#eOSh68YUUpiEH װ޺BbS>OxA.3AP"EE<4lCɈxAKfw=[W*Emuً6T >" @*!^8bA y~d4 Y,xE`lV(/4y՗ 7;d[C@.7B_uyo:0W p2oR {p2ʠZhNCjq#g~hC[jUOWK g 6Cnx3Ur &w~Nސ3=F7ȵ@m]Y@ CL5%k\[h 2R Rbר=F/xI ~h9և}NRQHV^'} fr6 >T)SY@enZ599kF9>#3J%AdҶ:ˑg-]lDc ?ߡoh:B-]lڋ4}S>9"v~(i EsD]c\"$[hF!r#q.q B j5gؽoe{ Dsid)|$7hko?)1іge_qRߏؤFThBʾ.?h+ѩM3\F^m%5ڬdv"n{k<':*Ϣ]Y<:#ޞx[9̫iRY, *1I'2y][~X9fXɨO1&V=έQ3Uz=Hh dnXB1VX-k뵩h\QwwruR;X$E(?6Cþ=3YcBZ0z:Air d[Ĥn ]I+{^JrdZ\-Vg=+[!fߗ&l%RtU ~ԩ"=٣k6 N9]e>`g>*D"_2]_2 -X(y캓(yJ=/J^M9*2ؔ(oToԆJ˻Vs+T!0e%y` ~e) X>qzd(IYkgx6[ ލZu8Q ^v$}o#ֻȑ-&1jVc7#i.9Yk0EU +#5G!|w% O^ sLF+1L65YP$At5 *妷KI^ҦC1%a`jp Ъ{RhJJ{Fb2oԐ3ՃZu㐝hK'm#x\ޜl 桻Rđ2"=}@syokYEoJzZT?b *o[,$l\ZK𔕘혷b +wwO"t uPz7kt2+P9>,^_#ve|da[֛a( wYzOrly,?RyUܘxs 4L!_[VN %/6ǹJKMkaCY~{ (ܧ$$xtI@AL =bd`<1t 5R]=[@! i ~p&#Ɉ^<+88 0PNRi#TOym;GYP8ƦSr6 3N&{v\po}U>$SwI0h;U.eU` HX6aŀcCJW,xUֻZdHNБ25=~ZVOj4׫+g3(gfz9v 'Bs ?hō}ڷ2դ @߅z,sN?Ӳisۛ7Fp>,C^ϳ^{5Ԝb(-P\h"c&we;T%wCkaɓdx]\Q<NL\3I7y|.ʯ˃*j)mL#EN/?['A3sSEniXHc iboN4 ś _۫1FH8֥ 5w7-SdҴ7zɣ{Z>rGE wM(Oʫ@vam` q:8ފ$zXۺHniyvlYȢuSYO\:(A>+{,(:8b+N<.r=]"WWVhNL[b 2t̓0OGW/Q-X9@>CF|Q;Y}T-gAQ;A:XM`[ ^ nu-͡׶}BBKpm&}#iplisԓ 7cnB so!0X!h7xddzM כAoɓuk6ƞRťz=+s5 | ύG\鿄eE1Eh0g.ﻦYDI c:#K q3e0 ȮaQ~z%N=d!;ցu.uo!L~VW%X2s |S_{ڰToq4@`D+bGoq)y"\?6r/B|]M}@IQODQL?,nhdWêBT H"i!aIΝLxځ~RpU:֓([4.M$~aXƄO;& m * ;ɜDxwl0ЍnH;!-1%VjcŲ'+ܻCDȭF0coHch@x\ J+׫'1+ uP(Xe9X"BfC:@}7:.m \AsoI'Z̎p\9C/lÃtEB6ͥ eM~y,Д?\(;yI6o<p!"xъ\:o[t/Ms ^P񫭵3%D溒 fYoAh]\"B҂\3eUl*Ǣ~lPw;F$]n`**ﭢ.,8>UF81<4v ԂZM02vy bPوyO+b- $5O.:  0"5IqNR4x!֙)[i: t+Nj"kICi8=xTS))qOKV.%VsDmkU aȦ2vjr &y(yB_k=W'"wd^i3Nc7rj ]<w0zT~8oJ۷:Zgھz9bl4;XRW%NB{Ccxpc_KBneRd%l47B8&B8&(4hF\S_q4.KaS,'B"f(sȒE *Zx=XC.fLگ0 f>#s 7-9//{D/̇ CIdDTf'p͑#{ژmQɇub']"ମ{?{ Q ?  {AS.}M'2(# `]k zZqbn߷>lyIYIJl8t;&,wL\"]3f+U5lM:l,b;Itw9TJRR{.g;|P_!ݔ8q^gGZOLl!؞| GCMzdBXXaU;hSLY{._XK"Iѣ`Ѡ+$QER!bY-r1 7f38=O9Ԑ`TCٸ1LwЍ˃D^5|xZ ifO3ǃ[t(/2=k3ǎCFjo']ZBqVN5KɢAVF4BHF њS:Q)Xz֍'VGqRR y <䎏Jy&eF!3yhUZ~o/fOZ,wu`Tei@ڀ0]4`SR葴?i"x[̛`[ӊ-YFNAVP>ZKz6t;k,CA`nQ+V5bOSGUkגl+֨%5{L:/iT$>}HZ2 _vk\| "n$]0-줎h){8æ#n q'AeuAii=Ugx,N ;(6hJA3=# N9Ԡ>B+ax -pILvd.tc (HSK{]-Wa}3 *riU_R֨4#3 :JG |Z9muLFrBno@EDUu&bHFr˃>mnV# ԋ[p$#Bi"$x%R* 7bS #CWzg,73"/ P~z}abOpFMIp6@gB[{ ,Qwޗ^n;_|y!Bz987/Д6Vcěɧ#Q47K锍kK`/|/9T ch| A {gBa2v,=fϚ-7fEvr9/xfbv&Ewp<,c"FAamS7=Te"O8Z&F}]}KS!C)6'QMXᎅ\C)􈏏Al" OpPF ,Cʏii05{]^oI aDrdte V?54J-\PW`迷pe_9 _*-KK7Iwkz1ɛ{:LRBmEx `5z0B^x&Ph|g(ե%x'`&UjCJj 7\֟KmG)lᴬXO^.?m m*+uI&ڧ@@S zק1 94FڲmW^vtxX(r>qWNhW9c!V%O5Y<%;q2Wʂ-c8y#ś=zojûbXa_8+x2>Xޑ ?we&|cL-\mcFj8Q]j[_鐒f΁钗,02p5}^ů2 28'ݻr>;OsKHHJ<0>z}Z_tY|.gk"*n!;@N&Ogͦ X{vjTDsKݵ<%<-bu3b%/p63J KD7cNx֦w0Ap#.p]pu1!( FLD/4.R%%h-NaPBRiⅢ{ j `}c\ah({q# g, ^'q>2PUK _D1Ģ7@qS:=Hp>=q*1Z>i^ 9LjABމ!ST #՗\e뢰},f++l}ec".1bpƙ"Y]u6c=ff&Uk9hZicعHAh5wۯI &[R@>J]$$x-N2U{|yNjR-;> .ȍ:w! w&axR rmGzUUW( ?CXĺ/.Vk;,Gx%Mg,[q4MQՄ-&IǍ欺Z1]s/L:/2f4t iƘwsܯCP|Ok~5h+8:V5[Cy_0E,T)lYouf;Y#IkUVzv=wfhtkG&D2Bγ$iwD]z:@˥CQx{NRW\2.th$4FӚyc\GˆǗ3 o<iXx&m %*w+hH:ߑ<Hs%q꠰@~?<ʏ\IvthM#6GV4[e WBOSZNiRrCYezn#n f4Coy51TW\m$r"PI0' AVu{JޑNQQlrJE@'jx%XX/3z{T[]Ǫ8dAD;] _IjpI 4>FȮI7^G:4A{-H;#iIl!iB(f8}sR_/bDo ZM[Ι{Sil')u\C8/7345DZNdzKS͊ꌒR;̕hrV)4^uS-X:5ނ9 -u@ֈc{uj`Ly