aaa_base-11.4-54.66.1<>,,MiF?d   0 CCiEi FVi G(i Hi T5i TiViXiZZi\|]$^t$`t$(`)`*ay+a,a-a8a9c:l=>@BDFGiHdiIiXtYZ[\i]i^[bqcd_edfilkz{Caaa_base11.454.66.1SUSE Linux Base PackageThis package installs several important configuration files. Central scripts like SuSEconfig are also in this package.MZbuild32openSUSE 11.4openSUSEGPLv2+http://bugs.opensuse.orgSystem/Fhslinuxi586#!/bin/bash # # Run this script in C-Locale, or some tools will fail. export LC_ALL=C # /boot should be the first directory. This increases the probability, that # lilo stuff lies before 1024 cyl. mkdir -p boot # # make sure, tmp directories do exist # for i in /tmp /var/tmp ; do test -d $i || { if test -L $i ; then echo "Error! $i is a dangling symlink." echo ls -l $i echo echo "To avoid big problems this link has to be deleted and a directory" echo "will be created. Remember to fix it after installation." echo rm -f $i elif test -f $i ; then echo "$i is a file. This makes no sense. Moving it to $i.save." mv -v $i $i.save fi mkdir -p $i } done # # now create a var/adm/fillup-templates/passwd.aaa_base. # If etc/passwd does not exist, copy # var/adm/fillup-templates/passwd.aaa_base to etc/passwd. # deleted db2 groups and users were uids 46,47,48 and gids 46,47,48 # mkdir -p /etc mkdir -p /var/adm/fillup-templates echo "root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/bin/bash daemon:x:2:2:Daemon:/sbin:/bin/bash lp:x:4:7:Printing daemon:/var/spool/lpd:/bin/bash mail:x:8:12:Mailer daemon:/var/spool/clientmqueue:/bin/false news:x:9:13:News system:/etc/news:/bin/bash uucp:x:10:14:Unix-to-Unix CoPy system:/etc/uucp:/bin/bash games:x:12:100:Games account:/var/games:/bin/bash man:x:13:62:Manual pages viewer:/var/cache/man:/bin/bash wwwrun:x:30:8:WWW daemon apache:/var/lib/wwwrun:/bin/false ftp:x:40:49:FTP account:/srv/ftp:/bin/bash nobody:x:65534:65533:nobody:/var/lib/nobody:/bin/bash" \ > /var/adm/fillup-templates/passwd.aaa_base echo "root:x:0: bin:x:1:daemon daemon:x:2: sys:x:3: tty:x:5: disk:x:6: lp:x:7: www:x:8: kmem:x:9: wheel:x:10: mail:x:12: news:x:13: uucp:x:14: shadow:x:15: dialout:x:16: audio:x:17: floppy:x:19: cdrom:x:20: console:x:21: utmp:x:22: public:x:32: video:x:33: games:x:40: xok:x:41: trusted:x:42: modem:x:43: ftp:x:49: lock:x:54: man:x:62: users:x:100: nobody:x:65533: nogroup:x:65534:nobody" > /var/adm/fillup-templates/group.aaa_base rm -f /var/adm/fillup-templates/shadow.aaa_base while read LINE ; do case $LINE in root*) echo "root::$(($(date '+%s')/86400))::::::" \ >> /var/adm/fillup-templates/shadow.aaa_base ;; *) echo "${LINE%%:*}:*:$(($(date '+%s')/86400))::::::" \ >> /var/adm/fillup-templates/shadow.aaa_base ;; esac done < /var/adm/fillup-templates/passwd.aaa_base for file in passwd group ; do if test -f /etc/$file ; then # like fillup, but : is the only separator rm -f /etc/$file.add sort -k 1,1 -t: -u /etc/$file /var/adm/fillup-templates/$file.aaa_base \ | sort -k 1,1 -t: /etc/$file - | uniq -u > /etc/$file.add cat /etc/$file.add >> /etc/$file rm -f /etc/$file.add # fix permissions if this script is called with strange umask chmod 644 /etc/$file else cat /var/adm/fillup-templates/$file.aaa_base > /etc/$file fi done # # we have several local files, that changed over the time. Check the # existing one, if they contain real data. If not, delete them. # for LOCALFILE in /root/bin/cron.daily.local \ /etc/init.d/boot.local \ /etc/init.d/after.local \ /etc/init.d/before.local \ /etc/init.d/halt.local \ /usr/sbin/usradd.local \ /usr/sbin/usrdel.local \ /usr/sbin/userdel.local ; do test -f $LOCALFILE || continue LOCALFILE_CONTAINS_DATA=false while read LINE ; do case "$LINE" in "#"*) ;; "echo "*">"*) LOCALFILE_CONTAINS_DATA=true ;; "echo "*) ;; ". /etc/rc.config") ;; "exit "*) ;; "") ;; *) LOCALFILE_CONTAINS_DATA=true ;; esac done < $LOCALFILE test "$LOCALFILE_CONTAINS_DATA" = false && rm -f $LOCALFILE done mkdir -p /etc/init.d echo "#! /bin/sh # # Copyright (c) 2002 SuSE Linux AG Nuernberg, Germany. All rights reserved. # # Author: Werner Fink, 1996 # Burchard Steinbild, 1996 # # /etc/init.d/boot.local # # script with local commands to be executed from init on system startup # # Here you should add things, that should happen directly after booting # before we're going to the first run level. # " > /etc/init.d/boot.local.new test -e /etc/init.d/boot.local || mv /etc/init.d/boot.local.new /etc/init.d/boot.local rm -f /etc/init.d/boot.local.new chmod 744 /etc/init.d/boot.local echo "#! /bin/sh # # Copyright (c) 2002 SuSE Linux AG Nuernberg, Germany. All rights reserved. # # Author: Werner Fink, 1998 # Burchard Steinbild, 1998 # # /etc/init.d/halt.local # # script with local commands to be executed from init on system shutdown # # Here you should add things, that should happen directly before shuting # down. # " > /etc/init.d/halt.local.new test -e /etc/init.d/halt.local || mv /etc/init.d/halt.local.new /etc/init.d/halt.local rm -f /etc/init.d/halt.local.new chmod 744 /etc/init.d/halt.local echo "#! /bin/sh # # Copyright (c) 2010 SuSE LINUX Products GmbH, Germany. All rights reserved. # # Author: Werner Fink, 2010 # # /etc/init.d/before.local # # script with local commands to be executed from init before executing # any script of a runlevel. # # Here you should add things, that should happen directly before entering # a runlevel. Common environment variables for this are: # RUNLEVEL -- The current system runlevel. # PREVLEVEL -- The previous runlevel (useful after a runlevel switch). # " > /etc/init.d/before.local.new test -e /etc/init.d/before.local || mv /etc/init.d/before.local.new /etc/init.d/before.local rm -f /etc/init.d/before.local.new chmod 744 /etc/init.d/before.local echo "#! /bin/sh # # Copyright (c) 2010 SuSE LINUX Products GmbH, Germany. All rights reserved. # # Author: Werner Fink, 2010 # # /etc/init.d/after.local # # script with local commands to be executed from init after all scripts # of a runlevel have been executed. # # Here you should add things, that should happen directly after # runlevel has been reached. Common environment # variables for this are: # RUNLEVEL -- The current system runlevel. # PREVLEVEL -- The previous runlevel (useful after a runlevel switch). # " > /etc/init.d/after.local.new test -e /etc/init.d/after.local || mv /etc/init.d/after.local.new /etc/init.d/after.local rm -f /etc/init.d/after.local.new chmod 744 /etc/init.d/after.local mkdir -p /etc for LINK in /usr/X11R6/lib/X11 /var/X11R6/lib/fonts /usr/lib/mgetty+sendfax \ /usr/man/cat? /usr/X11R6/man/cat? /usr/openwin/man/cat? /usr/lib/news ; do if test -L $LINK ; then echo "Found forbidden/oldish Link: $LINK ...deleting" rm -f $LINK fi done if test -f /root/.gnupg/secring.gpg ; then cp -a /root/.gnupg/secring.gpg /root/.gnupg/secring.gpg.aaa_save fi #!/bin/bash # # # post.sh - to be done after extraction # # Copyright (c) 2010 SuSE Linux AG Nuernberg, Germany. # Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany. # # # Run this script in C-Locale, or some tools will fail. export LC_ALL=C # # to make sure, /var/lib/YaST/bin/bootsetup runs fine, delete # /usr/lib/YaST/.configured2 test -e /usr/lib/YaST/.configured2 && rm -f /usr/lib/YaST/.configured2 # # there are some installation with an etc/psdevtab, which is only readable # for root - this slows ps for any other user. starting ps as root, creates # it, when it doesn't exist (readable). So simply delete it. # test -e /etc/psdevtab && rm -f /etc/psdevtab # # if the old nsswitch.conf contains dns6, replace it with dns # test -f /etc/nsswitch.conf.rpmnew && grep dns6 /etc/nsswitch.conf >/dev/null 2>&1 && { sed -i -e "s|dns6|dns|g" /etc/nsswitch.conf } # GMT might already be in sysconfig/clock FILE=/etc/sysconfig/clock if [ -f $FILE ] ; then sed -i -e "s/^GMT=/HWCLOCK=/" $FILE fi # # Initialize runlevel links # test -n "$FIRST_ARG" || FIRST_ARG=$1 FORCE_YES=0 set -- boot.proc boot.localfs boot.swap boot.clock boot.ldconfig boot.ipconfig boot.klog boot.localnet halt random reboot single PNAME=aaa_base INSSRV_ARRAY="" while [ ${#*} -gt 0 ] ; do SCRIPTNAME=$1 shift SV_B='^### BEGIN INIT INFO' SV_E='^### END INIT INFO' SV_KW=Default-Enabled SV_VALUE=`sed -n -e "/$SV_B/,/$SV_E/{/^# [^[:space:]]*$SV_KW:[[:space:]]*\([^[:space:]]*\).*/s//\1/p;}" < /etc/init.d/$SCRIPTNAME` test "$FORCE_YES" = "1" && SV_VALUE="yes" test -n "$SV_VALUE" || SV_VALUE="yes" INSSRV_ARRAY="$INSSRV_ARRAY $SCRIPTNAME $SV_VALUE" done TEMPLATE_DIR=/var/adm/fillup-templates SYSC_TEMPLATE=$TEMPLATE_DIR/sysconfig.$PNAME SD_NAME="" if [ -x /bin/fillup ] ; then if [ -f $SYSC_TEMPLATE ] ; then echo "Updating /etc/sysconfig/$SD_NAME$PNAME..." mkdir -p /etc/sysconfig/$SD_NAME touch /etc/sysconfig/$SD_NAME$PNAME /bin/fillup -q /etc/sysconfig/$SD_NAME$PNAME $SYSC_TEMPLATE fi else echo "ERROR: fillup not found. This should not happen. Please compare" echo "/etc/sysconfig/$PNAME and $TEMPLATE_DIR/sysconfig.$PNAME and" echo "update by hand." fi set -- $INSSRV_ARRAY while [ ${#*} -gt 0 ] ; do SCRIPTNAME=$1 SV_VALUE=$2 shift 2 test -n "$SCRIPTNAME" -a -n "$SV_VALUE" || { echo "SCRIPTNAME or SV_VALUE unknown"; exit 1;} if test "$FIRST_ARG" = "1" -a "$SV_VALUE" = "no" ; then /sbin/insserv ${YAST_IS_RUNNING:+-f} -r /etc/init.d/$SCRIPTNAME elif test "$FIRST_ARG" = "1" -o "$FORCE_YES" = "1" ; then /sbin/insserv ${YAST_IS_RUNNING:+-f} /etc/init.d/$SCRIPTNAME fi done /sbin/insserv ${YAST_IS_RUNNING:+-f} /etc/init.d/boot.loadmodules /etc/init.d/boot.cleanup /etc/init.d/boot.rootfsck ## powerfail probably needs empty header ... # add Kill-links in boot.d if needed: for i in proc localfs swap clock ldconfig ipconfig klog localnet loadmodules ; do if [ -f /etc/init.d/boot.d/S??boot.$i -a ! -f /etc/init.d/boot.d/K??boot.$i ] ; then /sbin/insserv ${YAST_IS_RUNNING:+-f} boot.$i fi done PNAME=security DEF_VAL="no" DEL_TEMPL=/var/adm/fillup-templates/$PNAME.del rm -f $DEL_TEMPL for var in CONSOLE_SHUTDOWN ; do echo -e "#\n$var=$DEF_VAL\n" >> $DEL_TEMPL done if [ -f /etc/sysconfig/$PNAME ] ; then /bin/fillup -q -t -r -i -d "=" /etc/sysconfig/$PNAME $DEL_TEMPL /etc/sysconfig/$PNAME.deleted.$$ test -f /etc/sysconfig/$PNAME.new && mv /etc/sysconfig/$PNAME.new /etc/sysconfig/$PNAME fi for i in $DEL_TEMPL /etc/sysconfig/$PNAME.deleted.$$ ; do if [ -f $i ] ; then . $i rm -f $i fi done PNAME=suseconfig DEF_VAL="no" DEL_TEMPL=/var/adm/fillup-templates/$PNAME.del rm -f $DEL_TEMPL for var in CHECK_INITTAB ; do echo -e "#\n$var=$DEF_VAL\n" >> $DEL_TEMPL done if [ -f /etc/sysconfig/$PNAME ] ; then /bin/fillup -q -t -r -i -d "=" /etc/sysconfig/$PNAME $DEL_TEMPL /etc/sysconfig/$PNAME.deleted.$$ test -f /etc/sysconfig/$PNAME.new && mv /etc/sysconfig/$PNAME.new /etc/sysconfig/$PNAME fi for i in $DEL_TEMPL /etc/sysconfig/$PNAME.deleted.$$ ; do if [ -f $i ] ; then . $i rm -f $i fi done PNAME=suseconfig DEF_VAL="no" DEL_TEMPL=/var/adm/fillup-templates/$PNAME.del rm -f $DEL_TEMPL for var in HALT_SOUND ; do echo -e "#\n$var=$DEF_VAL\n" >> $DEL_TEMPL done if [ -f /etc/sysconfig/$PNAME ] ; then /bin/fillup -q -t -r -i -d "=" /etc/sysconfig/$PNAME $DEL_TEMPL /etc/sysconfig/$PNAME.deleted.$$ test -f /etc/sysconfig/$PNAME.new && mv /etc/sysconfig/$PNAME.new /etc/sysconfig/$PNAME fi for i in $DEL_TEMPL /etc/sysconfig/$PNAME.deleted.$$ ; do if [ -f $i ] ; then . $i rm -f $i fi done if ! [ -d /etc/sysconfig ] ; then mkdir -p /etc/sysconfig fi for i in language backup boot kernel \ suseconfig clock proxy windowmanager sysctl \ cron news shutdown ; do PNAME=$i SUBPNAME= TEMPLATE_DIR=/var/adm/fillup-templates SYSC_TEMPLATE=$TEMPLATE_DIR/sysconfig.$PNAME$SUBPNAME SD_NAME="" if [ -x /bin/fillup ] ; then if [ -f $SYSC_TEMPLATE ] ; then echo "Updating /etc/sysconfig/$SD_NAME$PNAME..." mkdir -p /etc/sysconfig/$SD_NAME touch /etc/sysconfig/$SD_NAME$PNAME /bin/fillup -q /etc/sysconfig/$SD_NAME$PNAME $SYSC_TEMPLATE fi else echo "ERROR: fillup not found. This should not happen. Please compare" echo "/etc/sysconfig/$PNAME and $TEMPLATE_DIR/sysconfig.$PNAME and" echo "update by hand." fi done # migrate HALT_SOUND value if set before if [ -n "$HALT_SOUND" -a "$HALT_SOUND" != "no" ] ; then sed -i -e "s|^HALT_SOUND=.*|HALT_SOUND=\"$HALT_SOUND\"|" /etc/sysconfig/shutdown fi # fix sysconfig backup dir if grep -q RCCONFIG_BACKUP_DIR../var/adm/backup/rpmdb /etc/sysconfig/backup; then sed -i -e "s|^RCCONFIG_BACKUP_DIR=.*|RCCONFIG_BACKUP_DIR=\"/var/adm/backup/sysconfig\"|" \ /etc/sysconfig/backup mkdir -p /var/adm/backup/sysconfig mv /var/adm/backup/rpmdb/sysconfig[-_]* /var/adm/backup/sysconfig 2>/dev/null fi if grep -q "SEND_OUTPUT_ON_NO_ERROR=\"yes\"" /etc/sysconfig/cron ; then if test ! -f /var/adm/bnc_622203_fixed ; then sed -i -e "s|^SEND_OUTPUT_ON_NO_ERROR=\"yes\"|SEND_OUTPUT_ON_NO_ERROR=\"no\"|" \ /etc/sysconfig/cron touch /var/adm/bnc_622203_fixed fi fi # clear old install settings of MODULES_LOADED_ON_BOOT eval `grep "^MODULES_LOADED_ON_BOOT" /etc/sysconfig/kernel` MLOB_NEW="" for i in $MODULES_LOADED_ON_BOOT ; do case $i in capability|raw1394|video1394) continue ;; esac MLOB_NEW="$MLOB_NEW${MLOB_NEW:+ }$i" done if test "$MODULES_LOADED_ON_BOOT" != "$MLOB_NEW" ; then sed -i -e "s|^MODULES_LOADED_ON_BOOT=.*|MODULES_LOADED_ON_BOOT=\"$MLOB_NEW\"|" \ /etc/sysconfig/kernel fi # # Backup gshadow file and remove it (merge passwords into # /etc/group before). # if [ -f /etc/gshadow -a -x /usr/sbin/grpunconv ]; then cp -p /etc/gshadow /etc/gshadow-`date "+%Y%m%d"` chmod 600 /etc/gshadow-`date "+%Y%m%d"` /usr/sbin/grpunconv fi # # handle password files # for i in passwd group shadow ; do test -e /var/adm/fillup-templates/$i.aaa_base || continue echo -n "Updating etc/$i..." if test -f /etc/$i ; then cp /etc/$i /etc/$i.tmp rm -f /etc/$i.add sort -k 1,1 -t: -u /etc/$i /var/adm/fillup-templates/$i.aaa_base \ | sort -k 1,1 -t: /etc/$i - | uniq -u > /etc/$i.add cat /etc/$i.add >> /etc/$i rm -f /etc/$i.add if cmp -s /etc/$i /etc/$i.tmp ; then echo "unchanged" else echo "modified" fi rm -f /etc/$i.tmp # If we have a NIS system, we have to make sure, that "^+" is at the end grep -v "^+" /etc/$i > /etc/$i.tmp || : grep "^+" /etc/$i >> /etc/$i.tmp || : test -s /etc/$i.tmp && cat /etc/$i.tmp > /etc/$i rm -f /etc/$i.tmp else cat /var/adm/fillup-templates/$i.aaa_base > /etc/$i echo "new" fi done # check/fix owner and permission of shadow files for i in /etc/shadow ; do chmod 640 $i chgrp shadow $i done # # Change primary group of nobody to nobody # if [ -x /usr/sbin/usermod ]; then /usr/sbin/usermod -g nobody nobody 2> /dev/null ||: fi # # create mtab if it does not exist # if test ! -e /etc/mtab; then ln -sf /proc/self/mounts /etc/mtab fi # # make sure that several log files exist # if test ! -d /var/log ; then mkdir -p /var/log fi while read file owner mode; do test -e "$file" || touch "$file" chmod "$mode" "$file" chown "$owner" "$file" done < /usr/sbin/userdel.local #!/bin/bash # # Here you can add your own stuff, that should be done for every user who # will be deleted. # # When you delete a user with YaST, this script will be called # with the login name as parameter. The rest of data can be taken # from /etc/passwd. # EOT chmod 744 /usr/sbin/userdel.local fi # change all /media mounts (subfs) to noauto if test -f /etc/fstab ; then sed -i -e '/^[[:space:]]*#/{p;d}' -e '/[[:space:]]subfs.*noauto/{p;d}' -e '/\/media.*fs=\(cdfss\|floppyfss\)/s/\([[:space:]]subfs[[:space:]][[:space:]]*\)/\1noauto,/' /etc/fstab fi # IA64 Altix update hook if test -d /proc/sgi_sn ; then if grep -q "console=ttyS0" /etc/elilo.conf ; then echo "replacing ttyS0 by ttySG0 in elilo.conf, inittab and securetty files" # sed -i -e "s/console=ttyS0/console=ttySG0/g" /etc/elilo.conf # sed -i -e "s/getty\(.*\)ttyS0/getty\1ttySG0/g" /etc/inittab # sed -i -e "s/ttyS0/ttySG0/g" /etc/securetty # if grep -q /boot/efi /proc/mounts ; then echo "calling elilo to update" /sbin/elilo || true fi fi fi exit 0 /sbin/insserv /etc/init.dqd U Wv(9I 1c V) 9u2$Q>Q xdo ) NB%M 4DP<   is D ` 큤큤AAaaaaaaaa큤LjKM΢LkM,x-/AM bM- LM]M6KKKMKDM-KM]Lv?Jc?S)NHM bMRMHIeVIw@M>@M6@M5M4/@M1@M-M,F@M# MM @ML!L!L@LLLr@Lr@LLډ@Lډ@Lډ@Lډ@L7L7L7LҠ@LNLNL|L@LLL@LzL@LwLvW@LuLc@LQm@LN@L@IL=L1@L@LL0LGK@KK@K@K@K@K@K#@KKKKKKŮ@K@K@KK@K@K8@KKKKKKKf@KK@K~}@K}+K}+KzKy7@Ky7@Ky7@Kl@KO@KMKMK(K?KKKVK @K KKJ@J@JTĴJ1@J1@JH@JJ$J@JJ@Jx"Jq@JhPJf@Jf@Jf@J`gJ`gJ]J\s@J\s@J3J0J/@J,@J dJJ@III@IcIcIo@II@Iд@I@IIm@ro@suse.dewerner@suse.dewerner@suse.dewerner@suse.dewerner@suse.dewerner@suse.dewerner@suse.delnussel@suse.dewerner@suse.dewerner@suse.dewerner@suse.degber@opensuse.orgwerner@suse.dewerner@suse.degber@opensuse.orgro@suse.delnussel@suse.delnussel@suse.delnussel@suse.debwiedemann@novell.comaj@suse.delnussel@suse.delnussel@suse.dewerner@suse.deadrian@suse.dewerner@suse.dewerner@suse.dero@suse.dewerner@suse.depuzel@novell.comlnussel@suse.dero@suse.dero@suse.deaj@suse.deaj@suse.dewerner@suse.dero@suse.dero@suse.dewerner@suse.dero@suse.delnussel@suse.delnussel@suse.delnussel@suse.delnussel@suse.decristian.rodriguez@opensuse.orgwerner@suse.dero@suse.dewerner@suse.dewerner@suse.dewerner@suse.dero@suse.detrenn@novell.comro@suse.dero@suse.dewerner@suse.dedmueller@suse.dero@suse.decristian.rodriguez@opensuse.orgwerner@suse.demseben@novell.comwerner@suse.decoolo@novell.comro@suse.dewerner@suse.dewerner@suse.dewerner@suse.dero@suse.dewerner@suse.dero@suse.dero@suse.dero@suse.delars@linux-schulserver.dero@suse.deaj@suse.dewerner@suse.dero@suse.dero@suse.dero@suse.dewerner@suse.dero@suse.dero@suse.desndirsch@suse.dewerner@suse.dero@suse.delnussel@suse.dero@suse.dero@suse.dero@suse.dero@suse.dewerner@suse.dero@suse.dero@suse.depbaudis@suse.czro@suse.demeissner@suse.dero@suse.dero@suse.dero@suse.dewerner@suse.dero@suse.dero@suse.dero@suse.dero@suse.dero@suse.dero@suse.dewerner@suse.demvyskocil@suse.czro@suse.dero@suse.dero@suse.dero@suse.depuzel@novell.commseben@novell.comro@suse.demmarek@suse.czmeissner@suse.dewerner@suse.dewerner@suse.dewerner@suse.dewerner@suse.dewerner@suse.dewerner@suse.dero@suse.decoolo@novell.comro@suse.dero@suse.dero@suse.dero@suse.dewerner@suse.dero@suse.dero@suse.dewerner@suse.derguenther@suse.dero@suse.dero@suse.dewerner@suse.dero@suse.decoolo@suse.decoolo@novell.comro@suse.decoolo@suse.dewerner@suse.dewerner@suse.dewerner@suse.dewerner@suse.dewerner@suse.dewerner@suse.decoolo@suse.dewerner@suse.dewerner@suse.dewerner@suse.dero@suse.dewerner@suse.dero@suse.dero@suse.demeissner@suse.de- rc.status: in rc_wait test for existance of binary first (bnc#671292) - incorrect tab completion for variables (bash) (bnc#681687) - bash completion for 'cd ~/DIR' fails to provide trailing '/' (bnc#691883)- Start blogd only once at boot (related to bnc#642289)- Avoid waiting on bind mounts in boot.localfs - Be aware in refresh_initrd that modules used in initrd may use options in the /etc/modprobe.d/ files- Avoid to trap into execute escapes (bnc#678827)- Work around colon as breaking character in tab completion - Allow arguments of command done by sudo to complete (bnc#673663)- Fix minimal support for the old fashion rc service links- Tag interactive boot scripts as interactive as systemd uses it- don't time out waiting for tmpfs (bnc#671468) - make malloc checking configurable- Add minimal support for the old fashion way to handle services even with systemd- Use new rvmtab in boot.localfs if available- Redo fix for $HOME/.kshrc readed twice (bnc#560152)- changed LXDE to lxde in sysconfig.windowmanager- For plain bourne shells use `command -v' instead of `type -p' - Avoid world writable temporary reverse mtab (bnc#665479, CVE-2011-0461)- Also do the job for tcsh users - Be backward compatible to support existing sysconfig files - Fix for bnc#668180: redirect stderr of pidofproc to /dev/null- changed /etc/profile.d/profile.sh so it treats DEFAULT_WM as the basename of the session file and parses the value of Exec into WINDOWMANAGER (bnc#667408) - adopted the possible values of DEFAULT_WM to use the basename of the session file (bnc#667408)- fix typo in SuSEconfig manpage (bnc#662695)- package /lib/udev/devices/loop* to allow on demand loading of the loop module (bnc#661715)- at boot make sure /etc/mtab is a symlink (bnc#665494) so util-linux doesn't need to do it in %post - don't wait for loop images to appear as block devices (bnc#666150)- net.ipv6.conf.all.use_tempaddr has no effect, need to use net.ipv6.conf.default.use_tempaddr (bnc#494958#c2) - set default values in /etc/sysconfig/sysctl to empty and mark deprecated. No default behavior change as kernel defaults actually match.- fix loop module not loaded with /etc/mtab symlink (bnc#665092)- Fix kernel value of IPv6 privacy in boot.ipconfig (bnc#664550).- fix mounting /dev/pts (bnc#664692)- rc.status: initialize terminal settings only once - boot.cgroup: add init script to mount cgroups - boot.localnet: remove useless use of cat and avoid ifup - boot.localfs: don't update mtab if mtab is a link anyways - boot.localfs: don't consider nofail mounts as missing - boot: reorder and simplify mounting of file systems- Do not call `hostname -d' to avoid DNS lookup- avoid trailing dot in HOSTNAME when no NIS domain is set- Test only for bit 64 (clock unsynchronized), if zero the kernel is within eleven minutes mode (Thanks goes to Rastislav David)- Touch /etc/init.d/after.local and /etc/init.d/before.local (bnc#659206)- boot.localfs: do not abort wait for udev just because /dev/.udev/queue does not exist (bnc#656028)- Work around broken network setups for login shells to get variable HOST set to nodename - Do not use NIS/YP domainname but DNS domainman for HOSTNAME- export GPG_TTY="`tty`" in /etc/bash.bashrc (bnc#619295)- own /var/log/wtmp, /var/run/utmp, /var/log/faillog and /var/log/btmp- fix typo (merge conflict overlooked)- fix postinstall to test for existence of /var/run/utmp before trying to chgrp- Remove get_kernel_version_fix_plus_in_kernel_string.patch after applying it to file directly.- Use group utmp for /var/run/utmp, btmp and lastlog (bnc#652877).- Do not set ENV in /etc/profile as well in /etc/csh.login (bnc#611966)- allow chkconfig to use different root filesystems (bnc#507382)- added service.8 man page from fedora (bnc#621286)- Make /usr/sbin/Check a bash script (bnc#626629)- keep /etc/mtab unchanged if it is a symlink (bnc#651555)- remove weird filelist generation code- remove /usr/sbin/Check- move chkstat calls to brp-permissions in brp-checks-suse- export ONLY_MODULE so modules can act differently when they are called specifically- enable malloc debugging checks.- Do not remove /etc/adjtime but simply correct the third line for applications depending on CMOS time (bnc#650719)- abort if kernel has no devtmpfs, can not help here (bnc#648408)- Use refresh_initrd if TIMEZONE has changed (bnc#638185)- Add sudo completion bnc#639744- Fix for bnc#567951 - cshrc now allows xterm titles - Fix for bnc#631454 - bash completion for regexpressions - Fix for bnc#639392 - make pushd completion behaves like cd completion- add leading / to pre/post scripts (bnc#625763)- Recognize "+" at the end of the kernel version correctly. From mmarek: Starting with 2.6.35, the kernel build by default appends a plus sign to the kernel version string when building in a git tree that is not in a clean tagged state.- switch SEND_OUTPUT_ON_NO_ERROR from yes to no in postinstall and only do that exactly once to switch the default (bnc#622203)- let boot.swap disable most swap partitions on shutdown so LVM and others can be shut down cleanly (bnc#631916)- Add a sysconfig option for enforcing blogd even with "fastboot" and/or "quiet" found on the kernel command line.- add a split provides for smooth upgrade- split off aaa_base extras subpackage with: - ls settings and aliases - bash completion - other generic shell aliases - quick_halt/poweroff/reboot script - some default cronjobs - modified bash.bashrc and csh.cshrc to split out ls settings - drop alias for dir: that one has its own binary for a while - recommend aaa_base-extras from main package- get_kernel_version : use O_CLOEXEC everywhere- Newer killproc sends only SIGTERM as required by LSB if -TERM is specified on the command line. Use the default which is SIGTERM followed by SIGKILL if the timeout of 5 seconds is reached.- change default value of cron sysconfig option SEND_OUTPUT_ON_NO_ERROR to "no" bnc#622203- Use alias shell builtin for ash and dash (bnc#619756)- remove malloc-debug.* for final release- also skip /cgroup during unmount in boot.localfs (requested by kay)- Reflect name space change of former rush shell which know becomes pcksh, cpcksh, and rpcksh- Add support for the rush bourne shell (bnc#608727)- Implemenation of a workaround of missing console messages in blogd (bnc#593957) ... depends on package sysvinit-tools- drop chmod for /dev/shm from /etc/init.d/boot (workaround which is no longer needed and gives trouble now)- Avoid error on not set $TERM variable in csh login (bnc#560917)- set INPUTRC in csh similar to /etc/profile (bnc#560917)- add usbfs to tmpfs list in boot.localfs (bnc#569569) if "noauto" is changed to "defaults" in fstab for /proc/bus/usb then the fs is mounted at boot time (for some legacy software)- skip remount-rw for / if "readonlyroot" is specified on the boot commandline (bnc#445189)- added smart_agetty manpage to fix bnc #342580 - fix self Provides/Obsoletes for aaa_skel- added /etc/tmpdirs.d for snippets to be called by boot.cleanup (shell scripts to recreate things in /tmp, /var/tmp, /var/run) - move code from boot.cleanup to /etc/tmpdirs.d/01_aaa_base (all related to fate#303793)- Set version number to 11.3- Add screen control sequences to inputrc (bnc#598903)- boot.rootfsck: do not use /dev/shm/root as fallback but /dev/root- boot.localfs: update Should-Stop dependencies- removed /etc/rc.d.README as well- Use feature of pidof(1) of new sysvinit 2.88dsf- drop /sbin/init.d.README and /etc/init.d/README the manpage is "man 7 init.d"- boot.cleanup: do cleanup as well in shutdown case, faster than leaving it to the next boot and can speed up boot sequence- add NO_KMS_IN_INITRD to sysconfig/kernel.- Add Forms Data Format (.fdf) for acroread and co (bnc#573202)- fix typo in boot.localfs (bnc#584090)- add "lock" group (bnc#552095, FATE#308360)- drop boot.sched- implemented more primitive status calls for boot.* scripts- implemented primitive status call for boot.rootfsck and boot.localfs- do not put ldconfig into background in recovery case (bnc#582597)- Add changes for dash and ksh from Guido Berhoerster- move remounting of /dev and /dev/shm to boot.localfs (bnc#583247)- add chmod for /dev/shm to be safe from udev- Fix $TIMEZONE description in /etc/sysconfig/clock (bnc#582292)- No longer call zic (the timezone compiler) from boot.clock for creating /etc/localtime: this file is created by YaST during installation; there is no need to recreate it at boot time. (This code was only executed on s390 and in xen guests, too.)- enabled MALLOC_CHECK_ and MALLOC_PERTURB_ during testing- make sure options for /dev/pts are honored (bnc#580924)- Fix issue with chvt hanging, preventing restart (bnc#540482) (add --userwait to chvt call)- remove bogus splash check from boot.proc- Rename meta-mode to enable-meta-key in /etc/inputrc as bash 4.1 / readline library 6.1 use this key word- fix typo in comment in /etc/skel/.emacs (bnc#558055)- change test for tty1 in boot.localfs and boot.rootfsck (bnc#564325)- /etc/init.d/boot: use devtmpfs for /dev if available (bnc#561990)- do not rewrite /etc/adjtime needlessly (bnc#570245)- set NO_PROXY together with no_proxy (bnc#569310)- clean-tmp: use ctime instead of mtime and add -xdev to avoid crossing filesystem boundaries (bnc#568990)- Avoid to source/parse $HOME/.kshrc twice (bnc#560152)- fixed JRE_HOME typo in alljava.sh (bnc#549395)- fix example in sysconfig.language (bnc#557283)- fix some issues with boot.clock and xen (bnc#550697)- mount /dev correctly also if devtmpfs- same for csh.login- add '-R' to LESS variable in /etc/profile (bnc#554513)- added SEND_OUTPUT_ON_NO_ERROR option to /etc/sysconfig/cron (fate#305279)- remove bash1 from /etc/shells (bnc#554131)- wait for raid arrays to become clean before shutdown or reboot (fate#306823).- disable malloc debugging again for the release. (rm /etc/profile.d/malloc-debug.*)- Use /bin/hostname for HOSTNAME instead of NIS domainname found in /proc/sys/kernel/domainname (bnc#540981)- Remove SuSEconfig.clock and simplify refresh_initrd (bnc#538357)- Refresh initrd if CMOS clock is set to local time (bnc#538357)- Use option -c on grotty command to diaable escape sequences in /etc/init.d/README (bnc#543957)- Use configurable meta-mode in /etc/inputrc (bnc#541379)- The halt script should not shutdown network for iSCSI (bnc#513928)- add bash completion for evince (bnc#540013)- DO_FASTBOOT is now yes/no, no longer empty (bnc#538362)- fix CLEAR_TMP_DIRS_AT_BOOTUP (bnc#531514)- boot.clock: check if system timezone already set by initrd (bnc#534816)- etc/profile,etc/csh.login: remove output of /etc/motd and faillog, already printed by login (bnc#528003)- drop hacks for sles8 from pre/post scripts - make use of sed -i instead of manual handling in pre/post - aaa_base.specialfilelist: drop the ones that are not in aaa_base- Remove INFOPATH and INFODIR as info knowns about (bnc#524541)- fix typo in boot.cleanup- import some speedups from moblin boot.cleanup: use xargs and use -m option from mkdir boot.localnet: depend on boot.rootfsck instead of boot.cleanup - adapt boot.clock to changed hwclock/util-linux: - drop --hctosys for utc case - replace by --systz for non-utc case- Fix expansion bug in bash completion without loosing expansion of the tilde for the users home directory (bnc#524224)- Move udev and net-tools back from PreReq to Recommends- update alljava.csh (expand PATH like alljava.sh bnc#480480)- update mailcap for text/html: change w3m call (bnc#479432)- Bash completion: make file type detection independent from file name for b(un)zip2, g(un)zip, and unzip (bnc#512386, bnc#512386)- added recommends for netcfg (bnc#519337)- now that fixed glibc is in, we can enable malloc_check again- /.buildenv is almost never a directory...- change condition for MALLOC_CHECK to test for /.buildenv- do not set MALLOC_CHECK for now in build environemtns to continue building even if we have a problem there atm (bnc#509398)- Make some expansions work for bash completion (bnc#493303, bnc#487252)- Add missing line in boot.clock- At shutdown boot.clock should be executed *before* boot.apparmor otherwise it may happen that /etc/localtime is not readable and localtime(3) may fall back to UTC time as system default (bnc#492921).- First try to support root fs with type aufs (bnc#491890) - Use usleep to wait on udev- Disable blogd on fastboot or quiet boot - Move mkinitrd scripts to mkinitrd- Avoid possible race between rtc_cmos and running date- boot.ldconfig: remove most of the checks / run ldconfig way less - boot.localfs: STOP preload during fsck calls- boot.clock: make status argument work and add argument timezone - boot.clock: for s390 make date command accurate as possible - Rename mkinitrd script setup-rtc.sh to setup-clock.sh and add boot-clock.sh, also check for including boot-rtc.sh the existence of the rtc_cmos module to avoid fatal errors- boot.clock: write system time only back to HW clock if kernel time status shows that clocks are unsynchronized - Add two helper scripts for mkinitrd to add and load rtc_cmos module and add /etc/localtime to initrd (bnc#492921)- Make boot.clock more tough due udev timings (bnc#492921) - Remove /etc/adjtime in boot.clock if left over (bnc#495417)- updated alljava.{sh,csh} (bnc#492820)- bash.bashrc: append history to avoid override the history with two parallel bash sessions.- fix typo in comment in bash.bashrc (bnc#487742)- touch and chmod some files only if they do not exist before leave them alone otherwise- MALLOC_CHECK_=3 (bnc#481582)/bin/sh/bin/sh/bin/shaaa_skel/bin/shbuild32 1305041650ŶžŸŻŴGHO    Y-$&"'#DFCE789:;<=>?@AB1032511.4-54.66.111.4-54.66.111.4-54.66.111.4 bash.bashrcsuse.de-clean-tmpcsh.cshrccsh.loginhushloginsbootboot.cgroupboot.cleanupboot.clockboot.ipconfigboot.klogboot.ldconfigboot.loadmodulesboot.localfsboot.localnetboot.procboot.rootfsckboot.swaphaltpowerfailrandomrcrebootsingleinittabinputrcmailcapmime.typesprofilealljava.cshalljava.shcsh.sshcsh.utf8lang.cshlang.shprofile.cshprofile.shsh.sshsh.utf8xdg-environment.cshxdg-environment.shrc.splashrc.statusshells01_aaa_basettytypeSuSEconfig.functionsudevdevicesloop0loop1loop2loop3loop4loop5loop6loop7SuSEconfigchkconfigget_kernel_versionrefresh_initrdservicesmart_agettyChangeSymlinksfilesizemkinfodiroldrpmlocatesafe-rmsafe-rmdirsetJavahostnameCheckrcpowerfailrcrandomrcsinglesysconf_addwordsmart_agetty.1.gzdefaultdomain.5.gzSuSEconfig.8.gzchkconfig.8.gzsafe-rm.8.gzsafe-rmdir.8.gzservice.8.gzgroup.aaa_basegshadow.aaa_basepasswd.aaa_baseshadow.aaa_basesysconfig.backupsysconfig.bootsysconfig.clocksysconfig.cronsysconfig.kernelsysconfig.languagesysconfig.newssysconfig.proxysysconfig.shutdownsysconfig.suseconfigsysconfig.sysctlsysconfig.windowmanagerbtmpfailloglastlogwtmputmp/etc//etc/cron.daily//etc/init.d//etc/profile.d//etc/tmpdirs.d//lib/YaST//lib//lib/udev//lib/udev/devices//sbin//usr/bin//usr/lib/restricted/bin//usr/sbin//usr/share/man/man1//usr/share/man/man5//usr/share/man/man8//var/adm/fillup-templates//var/log//var/run/-fomit-frame-pointer -fmessage-length=0 -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -gobs://build.opensuse.org/openSUSE:11.4:Update:Test/standard/af74f8c20712ff90a0a41d43d62d0e86-aaa_basecpiolzma5i586-suse-linuxs]4-}'' $9cronlogrotatenetcfgudevnet-toolsaaa_base-extras?] "k%a{vtMPmV*hNx` K25Cn>[x'ZN4q> as21sP[b8Mհ iǮ/(3zf $T{Y=z6i"ָKz]30yn;%'LGJ=ݏ^24wnPMV6^vK~@+փE=]Z&jeΨsZmd4(hpW]TX CV+[I٧VcY))1l,.( 6$`qRxND ˎ8QĴi>'U2zȾ4Gazw뿯xX1fwPXb};HGv?>^L_l=ZOmAy+s9h`(d៘T9nԞ 0b|1DӓYD5|H26UaDJtp+4;j#:k?bM8u̜YvC]&\,Xe\,wBU\(yƇ=i  Z8/MVi/ZALY-S9Yc/팟*'8/9I&,T g 9 wBePE-cעZq_"Jg*=|oimG~?D"һf[mbّΜ{^r4+v1`ui7oĹNm $9&~"נQh^:S><ʝ0!9ttɍ]k6]+h+T` LTY D2Zjɖq1++GҗSjd<,k3 :XؤmyB_gи׵cN.-~-L<0k!,ѓx U^d\˙ia[TiߠXph}v'NGKYmmAgBVS1v8w CxWM.72[ e@ɃlܐpٮeزCw˴sQF'&W:;_G7m&gκd7cTVb5qR,̖٨bq6 XJM_ a?5F 7^GAX8,9z+clZOHaZ7<2DUp1Np td.22ȜaeDc(2f+z5Dj.uWQ׭aC9R:m4R/ F3'_fSpHx:fg2LDY@vN{%ApS}]i4BM*&odN44g~#-u@fҜ ;,^!tQg`]}x3j"c4)ֱĤ_0ztie4sRtwƖ H^J9?# }O#1,`)QaRk= xV{ꉃY?~,_vH ܇1g:7J@z#L:WC\J7 zmkG0ɷ{W:xˆ7kanPolOTذ3gܲL_)ܬwWa[-|}V$' Jd98;|"CheEmd|jv.7,ft-`XQڹnr"Dڴ092thۻ]\_neԫcrARa3 2g|eD(WQ})L!фd~8(N>{a5 --e$2^tA;v~S@|JPG56{cQK?н(V򄦃&ND>rbLtx8HD.`.85y䲿P+R`Gh2q,52k*E&Eg"՞kR?>S!vz;XR3x 6B@bt7E3]2sGҌZ|L3 'b̜p SL@Y 4yV.RTW@H&H_g c$jV;9~#Un( oM=:b [E̵j<n/F dn >Ҧ5+5h!}GȐ*- 6]~_g->su# p1Ⱦn;e. Bi/fSʪ*U܋tn Fh[#b=<`=?>'ߣb՟+eE$7ĄސGVj tC/~=L׆D)DMAhA2^0t2Ff5z-Q"sm9hJ^‡A uoFbqi2*;]Î# n(#( E]{#/v0΂SHbva;Z}6>8t/ĆӓLET EH ا5Vas5= i/hV;tlS'xbf L蠄GYȍZ>Ih4) @5\s ٖ@D'[a,'X;b% KgsWއ҉w 3U{Q"xxH8E2CmzB)f[sb{o}mj?Pu$fFJBc;C'y]2>/g^Ns,ꐊ `c^jq]1ݰD Ff@bAۣiՀߖXj*#8$ZpŽВQvąD~0- Yv^my0Q]&jxML1y]\98%VEUYzcqGR,jb j.WH, v}k_|EG~ rr 21&1ّ!qx#h$'Dq )Ȟhܡo+8p"?g.HaTmYo>E!ZnfRNξ5By0_Cު~{Z9BB?..U他; qEY LH=YK[4}T^Rɭ1,~)j9ƽw7C<|f)٦P> @Gir`̔}/?0 js0+GEUza݃[Es+ī{etj>TZ3N9:ࣴPL\xqcH.ljVTn) bhڹQف2,_G i2vRDbRCt'|>%s+uۀbNmt#>f~j`>Z[xTȤA-!֜?7aFd0Og=5[r^u=W'lPj4psno4 [ 6}%hk Q9LRc=OT.h5Uџ٨ԉy`N+mNN#`-LĶ?Vv<|7Gn.b u>wlhfxו@jR|,%KϹPfnFүm=Aa岧ro[ 0d{ ٸ2eݪoE’Chy,ΎXԊ;+$T#vgXCԬ-$㝎{*zn*R~{4KhOeED&Q5lDv40M%_Bΐ>w"83ZӍJ5D}Xk| I RD$PWs W(cȁn< S/ 7VfS@^V0&O]& W03r,:dr8ckaRK ]Sc']3Fgi"e(}*3f+ Z14^TNӁTg7h~dzRT>eJ@g N:&r ??_ij'[Y*{UdyHQ8c~0 1E7Wwퟌ +qoL6iLkQK_̬5sr(/}-p;ԁukȪ:RtN_olZJ$g KG7X5M8X]"僀ZM^)9{ֳ!V,Zb1ype)ܭQT:9/oί/`i>sy3t!-U %=L#WD)[R4?.9m?~^3$ i!ş7t@Qdz'ʻλ*I6/y M ٺm6 j; >yC%t%QtxJN%m2AYR D2擸2`Zm܉,6%2ubFN,Otkp%Tifq JGRڳKa25@tf(bi"ruȰgr''8l88Z! ~lu?|m<8C_ń"ӡ% ?j>U(?v33t^ .tnleFel\GSp˜#0+?uJ_45@nF 1෦tf/4)zRt'68Fw0r\VSYm]s!YWmFȟj7'2QFgO4#zG%A ]H$ڽ|I(_X55 (tKi٧$S7l`;9p4V5Lq=.?!W:!E9 $S&F0ޟj(%̦Efv'w8Ni-MBɟz_F?1nIyc yS H/+}15LΔWrB2QvIPL362'$f_Ly^Oy%Yjl lD//cJH#*"gl ߼֕6٣=1KvXa=[Åkvt&A~Jty =~&r䌮dخ\hi)a%lCY_}V9}?jFC#Vp C H!^^ƞrk+[j"ݾrVVLTs:j0TAK;O1=ޫ:VN%58vzeNČIs+`:]j]0Nپm)Z]|Vz{>7 =8n}6:r&t0Y^xfr{ӵe~$mǐȳrVRԳgفWYKNғ[㽓bk*:$Fd('YI/aCwH^%~-T#l X1DUA,$&Pd B扎#6>5Ӄ;΀; FIij<+Gޅ:t85 z/c_o` 4%l*KAGzd֝Zkf 3X2t̫l y9I2e23c1H$#'r-W:Pm=e|R9*OxYuBp+d+5ix11p A>#ŖWƉmye.p,x?5cHfzUtv*< V4H'btPcƋNԵ~t.*\65 IJR`oI^Bew7I8)?8^@6pZ2 +Adhfc)Ѫ+(3{pgA s  ~镼ju": NC"J 5qܮ'33^3ztVnIhF |HEE4*DPepae³ ҠƬa]f =;l"WYyZdO*SQ W z{'SFF7J$4q}OSQgxZNWdȡFԉ܏aR@᫨57zܾMRn}H( D' eF-DIv >iL3qk=qoAa΋|1답y\|G#>kZFb>/c+B,0 [ч_BM*ƜŊ"Qx[|tݎ`vfr#HGsٿV텗Y9,9n YY5z2)TQ<.t^ь1u_:_`+^klUMHX]ޭڅw3i\.hAiqʚyZFu(=,%%T`X^SK Jl##w@0dݡr&M$ń2&]pH3 ׿IeZ]sRvCd,&T}W<qMem.Fg0޹-VbmUIψ{]gMZ_n_RhMFĐ30[9oNb7;4IȪ{dm@-)Ǯ*Ս-sf=s ?kkXɴE&8gHUxKP>/2,_Ě`+'î^΋ϙ2+/k8,X@⪐A`ӊ|>ٍ9^j,-Q\um!ahkq9"p媕92ץXh|W!Hr@,?@U:` ѤBB)>`pP0z2C=WR76 Ghq̪+DoR]Iʼnet 8DSyk^|U@vTkBp>_EaИ:"T7_7ߪv@#J쬞r6h^a3DOf8^ |=P(eҀŐ1TXg˿챭$ Dɹ(>4071-# "WY >-L@}*YؙzrPJV :,CarΒy}Bc1<8Q/ki"8ۻkJ\(zy;VmR뾫3iN\WS.)!/}& ^AYDDIϲ4AZ(9GXߟqQ9)үD W+r`Q2ݒA6-pdz8B T *1t$dt'.Us~8h(YЛʁA.O(S:ٶ1 Dω (IkC.6՗Wk>cRH9{N }PՈx% &{:^pҎpǺ gR"lNS/#B1;ͅӒ B"q-̊gcN]= 9gTy}1ޏ Jr_ VK1.P"(`6{QK˒tKϝLq- _)hD/y&(Rൃ)]x롃ghJ`?;mGXjoF|;I%CXZS(Wx++e0f  T0@_Up(u!kb >yQ!~ <@Cm*-^ px#Yz z:"BA¼HLWڞx$&G$1=U{ <yB+#W"+iNs+]Zy{6ʗf4xC;MmUEE{J!/>Tkn3Cs|F}%;3 f\+x76]L^miE}=fwJI}D/mTQ;`xl9*s0[Rlq7ȪYX"E<>yBD:׽=|=i pX3 Q:7 vq70+(xH;u3/8Fo# :Xsf`)|Cb|EY(&ޕ/AB~g5›АBV+#=cX=żgH< aO:%1Z;U,C2{iveUzҳ򓞰Ry3K߆ `ev sqe=)wX6&eB#pi9=o]gFb5.shvKE;-ip 7njA,n:p&=^ #zrxҥq寊IHgqb˰cP~]br@/80JyxtcLԡF2:6@'=v+88w<𔆆_6JM)w&k^;2%& K=T_ U1]e:VebWgȂ0iCeYc0s79u M+;n+l o]bNipLB|C†:|Ρѥu vCjj/̫DQ>tדDRW;>,\zbF^uUԓy88Q:msY.l؋ߚV\w+oI.5u#+> Ҹ#:JtaRrA.0?zE_o0Am=̈,ao/5mZ\ 6زՑ vajQɳ"Ayx2g D #pa門gH[t S|(9!YQ0)*_ iAɬ-N3Zwv#r`ɈskQ!-\(>sͬCTƳ09\2r7"i_D#86Kw+v[ N:-\&qNK!̷J*[T<ג. wH?"37xbFb\-":z>H2ajʦM1Cr"ߐA錻/,^r~^sxz*|Hu5#Z %-?(]0u ԫZ6хbx,c7[M5^D:;' ox|lN|+A ׬a$[R"BnZGb֜ysy7柉"b6UO󫻮'g, =>%~c#KNuO?("X,GsqڃDd5Ö_p-@KACjϮ\Y2-BHz!z܋{]/Lo7#Ks֗KifTl`!paI&a!2 R.X\icubaOt^ ›^@6oYnIzW}: [.-B\nb:vPpմF3 bᑃ)sNSc>o{CErl7h2ݒ|+&ƨ^p`|zL7!=A1,[{J@<zuéT9aWrl+fjw!I ٟո +]*1rDY36*2?ܥMܟf:SJFXpɆd55b8C7bqGArgYJhRQ| n)@$h:65pP lcF=O)Hڂ7?렞V5~7)+So7~s;-r>vq?wcmquKp"9,w3}ɓ"؉'xFQ`2t$\[$'BBjX?n쀩,d\z#_`Xz?SCzixZDdD;?h5CGbcw,; 8 !P+m`Gsψbm~yFKvE`"^|>>t0C\^qmV)f>XEG?6"A,1qMSCzIÓUjICډfi9α(M X%7q wuk7c{ 4Z@tfWPGtbG;: 4< غۉ!k-{X0 xr/}ZgR;E%b7$\7:KqDPpVðsDaqW}~b'IVwO&/G[5M9fƇ˘_o0xʝvLs+¤Q&"ڌc1q=Cf7?>jR?Q$kԓᇺokO_XuKGL]QK>PmgTT2XCH]BB (,az"O]b\)$W 3ZLRQez lTC+I=FpeuVG9V+og*o[ #S{`\ ID*Mx;di.Z AρzI%됙epYB礯V]0&ԑ[{A3 ?(*a&=s`*-7&oL/lA\|mOxa@/F.aP@0{W *q w$! ¦gJҚ_Nr5e:?\4;SfKꋈk V}bY]jKHOr!F L ;{%Cq.d5ߜ%Yk֛rKihG@E1S#А"6u 7&m%R(k/w^f#XBR+Q m\\07_1J9eB iOy,C<juIyTת5MT[ DV~#3͜Ec0=nxilKZGeTwk0FA"¹61#(_|'a=w\2ʍߜspJFvv?WBÎΖH±֊ÈZs3PT @m,u ˰}K[[H:{JeϠgZ4 3+|1E2߲4dwx5Ej%fcO) ΥR 6[[vHwb Mo)EsIGM> BO &Y^43c0[ˠ , @:3P0\0ȱ-{ùBRS͔,,UkZGǙ0X~ ޗ8`(g,bl)zLeLBgP`y GI4 8b*k{^{ʤִpG[,mVлA#-A^4'D"p-{ɒs׉%]k% cC/Z X_[#ؕl9;9B4~;sMzȡ]MO.FwYx P!eA| 9/MslF _[:@h >T msR] z@yYĩQ7SyUd#l r!fJI8V4, W6o Z:ط[n w$y _?oUhCчʶ47݋PSo|[/m1TObsgٌ;<" ( VJ?|RbѠ5v9J+ęt$iS!A V$JR.ؙ!j#fpF%hie]!{>`uZvU()eIqJx }WñBr4-^;/XKÈz_%6#6"!ln1@6w)l` VW}HݼяWNkuuFL|F]=Qk[KHDRFevTF mFw!]ۏ!vh۠]Lnko|yr(1^"XJfдp1JJکl욭RU"bФ#cWN$R`(Nz7K#cU{Y_5=]F%Hfjk ӀX kMLD Gк %$ia=]"xÊ<:s1}Jt2hNt`5(N3y@lVfNvG)+t) |8ƒH0w\lK3ӣ1,Ox DeOӷ'X-ZC>P^C ïUZɓvs!\W鮋EGX`}7sP;hajV7]@8+iy,BaX9Vʟ rܶ=aGU#Ja51#SB^7 V-I()3nX(ch rɤyu!0$ZFf fe?h7W(^FQn%p.%`E;+BĒ55l?)C v%,!DS3bqe1umxPQ 8RQ| egˈ0mƖ0, IG<6^iD50 jVDlJC1jܽZt{ ~,*Qf~¥t'hy,ZSn`4/"G;*sR }{Ap[?H\2ZaLl](0k΂hDidqpQN=zk0:fgZvEfbO7t|#4K7b֌m#oVNjp8X4{3 ) ct!)tI.է.Q0N$5Ίkc k[^[wYDn$W]Cu#' Җ63:I*jQ-H4e5Iw@雟##)Uj| } =Ս❚hc1{Ɨqu+n84~gR݂} P3bXߡ ܆'e^gY(ԳÙcPƊf͜ W9kI},TEuܼ~?E6 chSmŰS Wm0 xS}xTb#Yh._m/(9,پ0<8%z_!!ClƏ+.g;҄\4 f,_ZAP\:3&4,i۬"Bo 梴PTay2%@Ea-_+Z@ސrJƗd2Qp1IݰjC+ð`&n #=.)IJ%a(a{Ur3NmhV`oFͱ|tsykCD'2s`G9TsRyt8h|T` X-+CSdvmN~A6vHɥ}3 ,:bz%‰vkxXjƧ$izƄ3MY7u|gVYΝ|zF\GQޠT5E}^C˒^ #VL QyHŷN|%)9R@?I\MN,$3f0F` :=@S 72,'SV7FmR VڦL>g1:/bk ^ϼMk4@#wxa?kKܪxOy5Gٳc;c.ibX0kkbd77)R:{:,E[n=it1?Y2HryQC5Kzؙ'79'Q!vJ\kڕIW:Gx@u95Ynմ ʿvnaP'ӣWP5ޡ ctźC\a$ܰ.VP/ئ& \:&hSe]|"@ϡʯdoqt$0˧ GT!_@ 'Lb"$kbAꃔ)?kd@H٭ژc쉸A&.M@WϒK,ij~ALd+ZhK!A.S㞊8DnxYnҞkJU[DQ 1-)j۝@ ZdOBzԾx* h[S,d'~o!yߑʶ uVwIt%]QV|]a0шOʝqZLB pJct&F[k3%:,^ǚ)Wa߫rU+Хa)M! #D!>N*ʽugB`1jjr I"Kg, Ά*]KP@pLA"{GRsS]I5jcY7.Ŗ=FB48? KZ{꿛`:~Tf&R$6Mbم*?A3(3Ȕ$'&k+9J ,:unꕄry)M wb-T _A K^eciGRXM3ivSu2 ypS\{/3|E1"2QANKL^ƹCٗLdPU7pQ2tAEպaRx|'I_!+4.ĥj#š"e!6 ]q1vR/;CJ-t%/s% Zmp\UoG?rlegZ_ш"i{e^NzrҜX/輴E;2ixhvob9U|j\b2 3!0< q 5/#>C:Ki5RRѧSp1-6!IVz *3rNS b9:g/XNmEU;^0K9 Zi 2Q*U'_xK/_`nۨB2]J ۃ&G~9a+f ӀO$[?'۾=AnZTzgϻ>x 9?LAPc?\[(zhAĪ<(kQ: q"K{R3 b+L6lI$-,"(?̛" mcGoJ% h1z:Tr_-ԬwFG>_l f}8dj QrAyhf:MQsPynvhs@'ޕHb@Ƣ[ qbERs솁q;>'wB֠#F)Xk_yIJC~9-9FޛyWS z_`;HOWsE4k%mu}D]FRo~GsV;{.,5K;`g.;/5S$IRej=;rG'.[Xʜu %/Fj%}CٮrUZ7YN`F+e+!IO|hP Y5;-Yp#6m51zFbJӊLaw~Bv4 okY`UZM<ƫmktF0$[֔sgeH5$;z5Hn#>u=u~ݘM$>0 *{H+aD\/灒j,?SgG',^a(ٱ墎SZr .b9)3χѿc̈́/G,$Ê`eO\M޷VͻֳK /K0AH.f`f1K )e5܂&'u_H:8Lͨ"azmRΨt>=.[t'#Le;p uyJ,U}~ 7$G'ќ#/_Sb3J>bF{: 9%{^EU+$f/qt{#qL椤T79R=8ŵ8M8Of6&3><Ղ^mqwqֺlds)pU*0rz^3iS{=;NY܄ݐMY͸Wk]ߐge<'Bڵr ȿMX!k`㼀Tzq|GXOӇFH'1?T~`$?RG[oSOQ# eP6,ϲZd= dM9eBbצWr: F$iE&1>OêƩB<_LF[Nq^ {eE.Lg+xc%Μ<`Dlʘ.R#p8¯]ӝ,)tʜT&rЛ"?C<v+@2ZةR;1&ߝKݙɜ'}-2jR8s N*ٷ‰>@>)ˮ"~ ?1=Lq唱 &ѡ=)Ͷ3FaOuhG3ÈS@*ڃDp =b05j;r§ꀚVv]֪>jm;b{;VpYks=ekΨUJowVZ*azw F}SV@bwtM/@*#fqnj': y8.GVҫp7}Nx?X"F:-$xHoI`b+!Ӷbbʊ(2DG(eOκLVS> c{CB>[xvڨ'ń3ĺ?d[jdb<֕VM5&C{)i\WO:^#ClA uSX }*@)5Ɓ{aǭ9kP%#/ Z˛7("}85'Ҫ>ᤆ05#KT=L5I0YM iokѠW\1B\WfZ8EsjD] 8I&& ysDGp :lS(iMu/"9/yMF~(bU} 1K@86VZPmH_( jZY:%Erv&CAP]}uԜ*@}MSF^Abɰz׿&؞>T}x#-*'(cW*~ %DBuI>:e9$-!5ش%jv?9oe&IJUЁn6ise@ qn&mu!iLbb`mVͭ:VbX{q~7o::}Fw?nK8To`?/_x͜'f<ջ=@+IcQ9o|8 d]sqm+kQ7@^\|kHˡ}X98Z;9V y y?"m`kKkKGT Xa;1Lj1I¨:L&--Bl%sڠ8T?F("pÛ8j_6a>?[nս('}4̹F>׽Dk|T;{r 8*}l1A@!ӵW{["$@ f 7meD֯x'.3WHh/ΙE?;ΡQ/UROR*d/gd3JUnLK۷"eNL ʖpK+OSVA&ji1YSEnjys-;(fG9*P BA7W]-fŞ:.,j ~'9` M6l'Bd nKp(Uﲁhd{ K.Lp"h=eݯyHL:077&zgЀ\ kj,I.C_^Z6>D8 g{˲O\e2s=*>(Ϩ:B ܾ2 =P{gLv},x~58$Jn?6~1]tLuR܀O HU~3~ry RM,!Sa NLhzOi2A r9h= O=@u|r[fr(FY%ӦQMDBFf h_ 0MU_Q0DZM]rݯ_R毛ib긲..r;*@gt{,HV}9cbdaX-LIb{h3QЩqhR<8X8"8lp#ݠ~^eTijr?Uy '*oIhqwMm :8,0G$M|] 1jU@Ͻ03#h{Dm!u3 T*gԖiW`?EkY f3plE46ŞuW+ 2Cf˫:hٯ5dձaM&O gN#?/e[/sڈgC3L_>gD93DA )YҹK_vOcEd{  }\pգ;h=Qh`G~RaƆA /류 ^%Q[̪_@fQ#te>A0>tl~Uc%F?zDI"MjƚOv(t>2c>c %3eaQNڨk s[ @0dw%Sux9Ǩ%_6(S)fߡwVglpu޻6uwNخVDm(B}OGJ/c k<ņ"}(d>bxoVQ?wY" 8 :bbiܻerJf{U߲Y_`7]Ӎkc,t"]Cmi0NI.zD _XVW=nԂհh p#0 "DR#YZ>WoH |gsQ) C-qf,NV'Otx33iQ ?UelXHx ChV%(ޚ^F( f$zl'(M DZ .xQ%,p, #"3KS}潻ˆQ0PpS1{[>@`.\HZᒠlO/,|#;N{ڲ'q֜~V9ҲD@__vq}x oҿm^ϖQv,TEqXhDzJ# gev4TJ!v7$awiN&U@|1GCܘa4f0DI+ 0)/Mjkhu\(dZt)LL$xIfjN:,2J)!mb˄ l!o,(KTzqQ cX>tSk x=Cvi=f9FdmAbX&KL^ M8"݀&Y-h?6 W`t ;"#CNPu?Գ͞~ 32q\Nʤ;~#ld1X)Vȗנ.*x4*aQݔ1;X}&;8()I@蕺A^X%Ax Ҟ-7Iƶb}HyʯI/^P!~Lkn٘? W꙳`w <^O^Vc4HBfeS4|axl"oMGvP+1QũK-9]xu kȻ%rHuLz\kyP)a gnx aBk 3,ݬ<p1hXG\R;hJw$ϭaބts[LcUFVz:p^9k_ƵP"~iz oܺf[} ~oCo7lSA@n‚hoFJ38: Du()z_1Oؚ:lfIҼ>Hc9\LkZa5C𫁹)7G囀3(HX:RC( c_4p2kL #Q/AV6~T=Swfҧ6Ibc8ީ/V9!siCI<=KN-f~*9-ϗ"pbmC6% mr?g5iHt|lxh?Ãg*MNxK8U4x* HL/Ş2f 79|Лg7?Sƙ݇w*3iuT OePVKdz[Z&ݶWUHp/b[|Ppz\Qخ3}޸DNU7lcq⍯d'jtTqUUɝҸ҉gpZjΦC\Ekz leҡOu[Ɔ޸3YC!|**"R1MnL f'+[\3٥Ux%Wܫ6U^\K="'}k>*PQ^V|e+?>̖fRexqjkGہ.3M3m)#ۂHdZY/et}>ݶP ]4H1a<^V8`(Td;xcQ[ƃ w*1/ĘkU fzdO{``R;~Ԁz4W¯j}T5bEU#N'0ٸNQSÙ&m)v  ~\G(M9=W/љwݯV?&=hcpوo].-PV,VPiQ"aHz:?5KЩT\ pJzn/>6xc#^ʞPwW Bidn[uDzyfOESŵ<*u0 @B61h e=D jLJvu6}.CVȊ%BnZ8h1d ~w-1K$bo֤^e0 /3=s>ܐ3a=kn4&Wgt Ae]^q 6,ty -Y(`OzE}+/iQGAQfϽ>͓rXګnwH25*đI6qhF-BbnAE[qI_CBj'7G*k|I $" YX<m{{= #F"l4 >%rڂ̎gTl#й/Plޫ{G8⎌OGdHLOR!=9goۀ؎U?SŘ&KvXZ ʎO#Ě"',JfJ}P?K}@9"\ׯJG&c]nb pTb\ >A3‰yƻ i7}VXBB2 93S I^Rg,cC2SBPak$ 65$Md?3ݬUݎoϕOՕH;17!AVb( [ dQrO0:?(0.r/*/+572 :ޏ qH3a`i[Y9l}SPI;I %= X vV]&zy􀢊f0U௦/MBdR'JhYߌ+)jing#?O6!Q8L ygs&{Ipdgsd+Y<:! np:r}Z%V({r83 [6t ׷\>e"REϧl8=Q֨]+8Zku!\VV[\˝ O]̯*gPgIMZc|Y!Zp|XSt7!e"̺Eٸa>6nz%zяV 5XlVǖ8&iE㌙qXqID7%ӵ2,uݫXEޝ-JwDGBF >ɶ}ďwII:B{ \괤Bk46kWîSz+&Xb)~}%8i98\a~9·XO)=|m[/p3-moEk3Vq#> 9_4沅d}S/&TX.D#PC[TYJ,L r4rH ),.;D10P{ٯ!ˊc_1Q $⶟* S {S/}'HPl,ӲPK?W3^nݴƐlPB:)6DX`ku_]i։9 B)Pī!X[IUn-9f^J|v=O'y