[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#740843: marked as done (apt: fails to upgrade the fglrx family of packages with multiarch)



Your message dated Fri, 14 Mar 2014 09:50:02 +0000
with message-id <E1WOOkc-0003tW-Ah@franck.debian.org>
and subject line Bug#740843: fixed in apt 0.9.16
has caused the Debian Bug report #740843,
regarding apt: fails to upgrade the fglrx family of packages with multiarch
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
740843: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=740843
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: apt
Version: 0.9.7.9+deb7u1
Severity: normal

unattended-upgrades was unable to upgrade the fglrx family of packages
from one version to the next on SteamOS, and I've been able to reproduce
a simpler form of the same situation with both apt-get and
unattended-upgrades, in a Debian stable or testing chroot.

== preconditions ==

The test set of packages are created by the attached files (put them all
in the same directory and run make), and are a simplified version of the
original situation involving fglrx:

    foo-driver amd64 installed
        Depends: libfoo (= VERSION)
        Recommends: libgl1-foo-glx (= VERSION)
        Breaks: libgl1-foo-glx (<< VERSION)
        Breaks: libgl1-foo-glx (>> VERSION)

    libgl1-foo-glx both amd64 and i386 installed
        Depends: libfoo (= VERSION)

    libfoo both amd64 and i386 installed

The only configured apt repository at the time of the upgrade contains
packages of the same names, with the same relationships, but a higher
version. The Makefile rules for "test_apt_in_chroot" and
"test_uu_in_chroot" indicate the specifics of how I tested this, in a
small chroot environment (build-essential + aptitude + sudo + vim).

== expected result ==

I would expect the problem resolution to involve temporarily
deconfiguring foo-driver and libgl1-foo-glx, upgrading both flavours of
libfoo, configuring libgl1-foo-glx, and finally configuring foo-driver.

== actual result ==

However, what actually happens is that apt gets part-way through the
upgrade, but does not deconfigure foo-driver in favour of the new
libgl1-foo-glx:

> The following packages will be upgraded:
>   foo-driver libfoo libfoo:i386 libgl1-foo-glx libgl1-foo-glx:i386
> 5 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
> Need to get 0 B/3538 B of archives.
> After this operation, 0 B of additional disk space will be used.
> Do you want to continue? [Y/n]
[...]
> (Reading database ... 16779 files and directories currently
> installed.)
> Preparing to unpack .../foo/libgl1-foo-glx_2_amd64.deb ...
> De-configuring libgl1-foo-glx:i386 (1) ...
> Unpacking libgl1-foo-glx:amd64 (2) over (1) ...
> Preparing to unpack .../foo/libgl1-foo-glx_2_i386.deb ...
> Unpacking libgl1-foo-glx:i386 (2) over (1) ...
> Preparing to unpack .../main/f/foo/libfoo_2_i386.deb ...
> De-configuring libfoo:amd64 (1) ...
> Unpacking libfoo:i386 (2) over (1) ...
> Preparing to unpack .../main/f/foo/libfoo_2_amd64.deb ...
> Unpacking libfoo:amd64 (2) over (1) ...
> Setting up libfoo:amd64 (2) ...
> Setting up libfoo:i386 (2) ...
> dpkg: dependency problems prevent configuration of
> libgl1-foo-glx:amd64:
>  foo-driver (1) breaks libgl1-foo-glx (>> 1) and is installed.
>   Version of libgl1-foo-glx:amd64 to be configured is 2.
>
> dpkg: error processing package libgl1-foo-glx:amd64 (--configure):
>  dependency problems - leaving unconfigured
> dpkg: dependency problems prevent configuration of
> libgl1-foo-glx:i386:
>  foo-driver (1) breaks libgl1-foo-glx (>> 1) and is installed.
>   Version of libgl1-foo-glx:i386 to be configured is 2.
>
> dpkg: error processing package libgl1-foo-glx:i386 (--configure):
>  dependency problems - leaving unconfigured
> Errors were encountered while processing:
>  libgl1-foo-glx:amd64
>  libgl1-foo-glx:i386

This seems to be multiarch-related: not installing the i386 packages
leads to the upgrade working fine.

== applicability to "real life" ==

In the real situation on SteamOS, "foo" is replaced with "fglrx"
throughout, the packages contain files, and there are additional
dependencies on packages that are not involved in the problematic
transaction. The failure mode appears to be the same.

Package versions etc. below are from a wheezy/amd64 chroot that can
reproduce the bug.

    S

-- Package-specific info:

-- apt-config dump --

APT "";
APT::Architecture "amd64";
APT::Build-Essential "";
APT::Build-Essential:: "build-essential";
APT::Install-Recommends "1";
APT::Install-Suggests "0";
APT::NeverAutoRemove "";
APT::NeverAutoRemove:: "^firmware-linux.*";
APT::NeverAutoRemove:: "^linux-firmware$";
APT::NeverAutoRemove:: "^linux-image.*";
APT::NeverAutoRemove:: "^kfreebsd-image.*";
APT::NeverAutoRemove:: "^linux-restricted-modules.*";
APT::NeverAutoRemove:: "^linux-ubuntu-modules-.*";
APT::NeverAutoRemove:: "^gnumach$";
APT::NeverAutoRemove:: "^gnumach-image.*";
APT::Never-MarkAuto-Sections "";
APT::Never-MarkAuto-Sections:: "metapackages";
APT::Never-MarkAuto-Sections:: "restricted/metapackages";
APT::Never-MarkAuto-Sections:: "universe/metapackages";
APT::Never-MarkAuto-Sections:: "multiverse/metapackages";
APT::Never-MarkAuto-Sections:: "oldlibs";
APT::Never-MarkAuto-Sections:: "restricted/oldlibs";
APT::Never-MarkAuto-Sections:: "universe/oldlibs";
APT::Never-MarkAuto-Sections:: "multiverse/oldlibs";
APT::Architectures "";
APT::Architectures:: "amd64";
APT::Architectures:: "i386";
APT::Compressor "";
APT::Compressor::. "";
APT::Compressor::.::Name ".";
APT::Compressor::.::Extension "";
APT::Compressor::.::Binary "";
APT::Compressor::.::Cost "1";
APT::Compressor::gzip "";
APT::Compressor::gzip::Name "gzip";
APT::Compressor::gzip::Extension ".gz";
APT::Compressor::gzip::Binary "gzip";
APT::Compressor::gzip::Cost "2";
APT::Compressor::gzip::CompressArg "";
APT::Compressor::gzip::CompressArg:: "-9n";
APT::Compressor::gzip::UncompressArg "";
APT::Compressor::gzip::UncompressArg:: "-d";
APT::Compressor::bzip2 "";
APT::Compressor::bzip2::Name "bzip2";
APT::Compressor::bzip2::Extension ".bz2";
APT::Compressor::bzip2::Binary "bzip2";
APT::Compressor::bzip2::Cost "3";
APT::Compressor::bzip2::CompressArg "";
APT::Compressor::bzip2::CompressArg:: "-9";
APT::Compressor::bzip2::UncompressArg "";
APT::Compressor::bzip2::UncompressArg:: "-d";
APT::Compressor::xz "";
APT::Compressor::xz::Name "xz";
APT::Compressor::xz::Extension ".xz";
APT::Compressor::xz::Binary "xz";
APT::Compressor::xz::Cost "4";
APT::Compressor::xz::CompressArg "";
APT::Compressor::xz::CompressArg:: "-6";
APT::Compressor::xz::UncompressArg "";
APT::Compressor::xz::UncompressArg:: "-d";
APT::Compressor::lzma "";
APT::Compressor::lzma::Name "lzma";
APT::Compressor::lzma::Extension ".lzma";
APT::Compressor::lzma::Binary "xz";
APT::Compressor::lzma::Cost "5";
APT::Compressor::lzma::CompressArg "";
APT::Compressor::lzma::CompressArg:: "--format=lzma";
APT::Compressor::lzma::CompressArg:: "-9";
APT::Compressor::lzma::UncompressArg "";
APT::Compressor::lzma::UncompressArg:: "--format=lzma";
APT::Compressor::lzma::UncompressArg:: "-d";
APT::Compressor::::Name "";
APT::Compressor::::Extension ".";
APT::Compressor::::Binary "";
APT::Compressor::::Cost "100";
APT::Compressor::::CompressArg "";
APT::Compressor::::CompressArg:: "-9";
APT::Compressor::::UncompressArg "";
APT::Compressor::::UncompressArg:: "-d";
Dir "/";
Dir::State "var/lib/apt/";
Dir::State::lists "lists/";
Dir::State::cdroms "cdroms.list";
Dir::State::mirrors "mirrors/";
Dir::State::extended_states "extended_states";
Dir::State::status "/var/lib/dpkg/status";
Dir::Cache "var/cache/apt/";
Dir::Cache::archives "archives/";
Dir::Cache::srcpkgcache "srcpkgcache.bin";
Dir::Cache::pkgcache "pkgcache.bin";
Dir::Etc "etc/apt/";
Dir::Etc::sourcelist "sources.list";
Dir::Etc::sourceparts "sources.list.d";
Dir::Etc::vendorlist "vendors.list";
Dir::Etc::vendorparts "vendors.list.d";
Dir::Etc::main "apt.conf";
Dir::Etc::netrc "auth.conf";
Dir::Etc::parts "apt.conf.d";
Dir::Etc::preferences "preferences";
Dir::Etc::preferencesparts "preferences.d";
Dir::Etc::trusted "trusted.gpg";
Dir::Etc::trustedparts "trusted.gpg.d";
Dir::Bin "";
Dir::Bin::methods "/usr/lib/apt/methods";
Dir::Bin::solvers "";
Dir::Bin::solvers:: "/usr/lib/apt/solvers";
Dir::Bin::dpkg "/usr/bin/dpkg";
Dir::Bin::bzip2 "/bin/bzip2";
Dir::Bin::xz "/usr/bin/xz";
Dir::Media "";
Dir::Media::MountPath "/media/apt";
Dir::Log "var/log/apt";
Dir::Log::Terminal "term.log";
Dir::Log::History "history.log";
Dir::Ignore-Files-Silently "";
Dir::Ignore-Files-Silently:: "~$";
Dir::Ignore-Files-Silently:: "\.disabled$";
Dir::Ignore-Files-Silently:: "\.bak$";
Dir::Ignore-Files-Silently:: "\.dpkg-[a-z]+$";
Dir::Ignore-Files-Silently:: "\.save$";
Dir::Ignore-Files-Silently:: "\.orig$";
Acquire "";
Acquire::cdrom "";
Acquire::cdrom::mount "/media/cdrom/";
Acquire::http "";
Acquire::http::Proxy "http://localhost:3142";;
Acquire::Pdiffs "false";
Acquire::Languages "";
Acquire::Languages:: "en";
Acquire::Languages:: "none";
Unattended-Upgrade "";
Unattended-Upgrade::Origins-Pattern "";
Unattended-Upgrade::Origins-Pattern::
"origin=Debian,archive=stable,label=Debian-Security";
DPkg "";
DPkg::Pre-Install-Pkgs "";
DPkg::Pre-Install-Pkgs:: "/usr/sbin/dpkg-preconfigure --apt || true";
CommandLine "";
CommandLine::AsString "apt-config dump";

-- (no /etc/apt/preferences present) --


-- /etc/apt/sources.list --

deb [trusted=yes] file:///home/smcv/tmp/out/2.apt foo main

-- System Information:
Debian Release: 7.4
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.13-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/dash

Versions of packages apt depends on:
ii  debian-archive-keyring  2012.4
ii  gnupg                   1.4.12-7+deb7u3
ii  libapt-pkg4.12          0.9.7.9+deb7u1
ii  libc6                   2.13-38+deb7u1
ii  libgcc1                 1:4.7.2-5
ii  libstdc++6              4.7.2-5

apt recommends no packages.

Versions of packages apt suggests:
pn  apt-doc     <none>
ii  aptitude    0.6.8.2-1
ii  dpkg-dev    1.16.12
ii  python-apt  0.8.8.2
ii  xz-utils    5.1.1alpha+20120614-2

-- no debconf information
Origin: my archive
Label: my label
Suite: inadvisable
Codename: foo
Version: 1.0
Architectures: amd64 i386
Components: main
Source: foo
Section: misc
Priority: optional
Maintainer: me <me@example.com>
Package: foo-driver
Architecture: @ARCH@
Version: @VERSION@
Depends: libfoo (= @VERSION@)
Recommends: libgl1-foo-glx (= @VERSION@)
Breaks: libgl1-foo-glx (<< @VERSION@),
        libgl1-foo-glx (>> @VERSION@)
Description: dummy package analogous to fglrx-driver
Source: foo
Section: misc
Priority: optional
Maintainer: me <me@example.com>
Package: libfoo
Multi-Arch: same
Architecture: @ARCH@
Version: @VERSION@
Description: dummy package analogous to libfglrx
Source: foo
Section: misc
Priority: optional
Maintainer: me <me@example.com>
Package: libgl1-foo-glx
Multi-Arch: same
Architecture: @ARCH@
Version: @VERSION@
Depends: libfoo (= @VERSION@)
Description: dummy package analogous to libgl1-fglrx-glx
all:

test_apt_in_chroot:
	test -e /etc/debian_chroot
	sudo eatmydata apt-get update
	sudo eatmydata apt-get dist-upgrade
	sudo eatmydata apt-get install unattended-upgrades
	sudo dpkg --add-architecture i386
	sudo eatmydata dpkg -i \
		out/1.apt/pool/main/f/foo/foo-driver_1_amd64.deb \
		out/1.apt/pool/main/f/foo/lib*_1_*.deb
	echo "deb [trusted=yes] file://$(CURDIR)/out/2.apt foo main" | \
		sudo tee /etc/apt/sources.list
	sudo eatmydata apt-get update
	sudo eatmydata apt-get upgrade

test_uu_in_chroot:
	test -e /etc/debian_chroot
	sudo eatmydata apt-get update
	sudo eatmydata apt-get dist-upgrade
	sudo eatmydata apt-get install unattended-upgrades
	sudo dpkg --add-architecture i386
	sudo eatmydata dpkg -i \
		out/1.apt/pool/main/f/foo/foo-driver_1_amd64.deb \
		out/1.apt/pool/main/f/foo/lib*_1_*.deb
	echo "deb [trusted=yes] file://$(CURDIR)/out/2.apt foo main" | \
		sudo tee /etc/apt/sources.list
	printf 'Unattended-Upgrade::Origins-Pattern {\n"a=inadvisable";\n};\n' | \
		sudo tee /etc/apt/apt.conf.d/50unattended-upgrades
	sudo eatmydata apt-get update
	sudo unattended-upgrade --debug --minimal_upgrade_steps
	set -e && for x in /var/log/unattended-upgrades/*; do echo "=== $$x ==="; cat "$$x"; done

control_in := $(wildcard *.control.in)
control := \
	$(patsubst %.control.in,tmp/%_1_amd64/DEBIAN/control,$(control_in)) \
	$(patsubst %.control.in,tmp/%_2_amd64/DEBIAN/control,$(control_in)) \
	$(patsubst %.control.in,tmp/%_1_i386/DEBIAN/control,$(control_in)) \
	$(patsubst %.control.in,tmp/%_2_i386/DEBIAN/control,$(control_in)) \
	$(NULL)
debs := $(patsubst %/DEBIAN/control,%.deb,$(control))

all: out/1.apt out/2.apt

out/%.apt: $(debs) distributions
	install -d $@/conf
	install -m644 distributions $@/conf/distributions
	reprepro -b $@ includedeb foo tmp/*_$(*)_amd64.deb tmp/*_$(*)_i386.deb

clean:
	rm -fr out tmp

$(debs): tmp/%.deb: tmp/%/DEBIAN/control
	dpkg-deb -b tmp/$*

tmp/%_1_amd64/DEBIAN/control: %.control.in
	install -d $(dir $@)
	sed -e 's/@VERSION@/1/' -e 's/@ARCH@/amd64/' < $< > $@

tmp/%_1_i386/DEBIAN/control: %.control.in
	install -d $(dir $@)
	sed -e 's/@VERSION@/1/' -e 's/@ARCH@/i386/' < $< > $@

tmp/%_2_amd64/DEBIAN/control: %.control.in
	install -d $(dir $@)
	sed -e 's/@VERSION@/2/' -e 's/@ARCH@/amd64/' < $< > $@

tmp/%_2_i386/DEBIAN/control: %.control.in
	install -d $(dir $@)
	sed -e 's/@VERSION@/2/' -e 's/@ARCH@/i386/' < $< > $@

--- End Message ---
--- Begin Message ---
Source: apt
Source-Version: 0.9.16

We believe that the bug you reported is fixed in the latest version of
apt, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 740843@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Michael Vogt <mvo@debian.org> (supplier of updated apt package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.8
Date: Fri, 14 Mar 2014 09:45:05 +0100
Source: apt
Binary: apt libapt-pkg4.12 libapt-inst1.5 apt-doc libapt-pkg-dev libapt-pkg-doc apt-utils apt-transport-https
Architecture: source all amd64
Version: 0.9.16
Distribution: unstable
Urgency: medium
Maintainer: APT Development Team <deity@lists.debian.org>
Changed-By: Michael Vogt <mvo@debian.org>
Description: 
 apt        - commandline package manager
 apt-doc    - documentation for APT
 apt-transport-https - https download transport for APT
 apt-utils  - package management related utility programs
 libapt-inst1.5 - deb package format runtime library
 libapt-pkg-dev - development files for APT's libapt-pkg and libapt-inst
 libapt-pkg-doc - documentation for APT development
 libapt-pkg4.12 - package management runtime library
Closes: 661537 740673 740843 741056
Changes: 
 apt (0.9.16) unstable; urgency=medium
 .
   [ Michael Vogt ]
   * add hashsum support in apt-helper download-file and
     add more tests
 .
   [ Trần Ngọc Quân ]
   * l10n: vi.po (624t): Update Vietnamese translation
 .
   [ David Kalnischkies ]
   * propagate a negative score point along breaks/conflicts
   * check version before adding scores in resolver
   * autogenerate makefile for vendor system
   * add default and override handling for Cnf::FindVector
   * support DEB_BUILD_PROFILES and -P for build profiles
   * do not configure already unpacked packages needlessly (Closes: 740843)
   * if mountpoint has a ".disk" directory it is mounted
   * no error for non-existing mountpoints in MountCdrom
   * apt-cdrom ident shouldn't be interactive (Closes: 740673)
   * support very long mtab entries in mountpoint discovery
   * msgstr with elipses need three dots
   * cmdline parsing: apt-config is not apt-cdrom
   * use a configurable list of versioned kernel packages
   * support kfreebsd and hurd in the kernel hook
   * add ".*-{kernel,modules}-$KERVER" matcher for hook
   * ensure that a dot is a dot in the hook
   * use liblzma-dev to provide xz/lzma support
   * use the pretty fullname of a pkg as download desciption
 .
   [ Johannes Schauer ]
   * implement BuildProfileSpec support as dpkg has in 1.17.2 (Closes: 661537)
 .
   [ Wojciech Górski ]
   * fix polish --install-suggests text in apt-get manpage (Closes: 741056)
Checksums-Sha1: 
 131078a4e5bff780a8d5bfd5aac196a8a8177025 1638 apt_0.9.16.dsc
 88f89e8cec134b951371013ceb706ce1373771bd 1734784 apt_0.9.16.tar.xz
 c4e4720044a0434ccf803d7cb0cd9c261a0906bc 270724 apt-doc_0.9.16_all.deb
 d78931fa7027bc61c6fa96f1fc1693bcb117323e 766790 libapt-pkg-doc_0.9.16_all.deb
 d494798e128855de9735b5c5a1e415b616ffa880 743384 libapt-pkg4.12_0.9.16_amd64.deb
 dc1504c2f88e6d66439189d669603e2017fb96db 162490 libapt-inst1.5_0.9.16_amd64.deb
 81eedba06f88dcd121ab65354c7f552f266ace98 1062452 apt_0.9.16_amd64.deb
 64e38f60c3d90a35e53c67047f05c87de6190b33 186468 libapt-pkg-dev_0.9.16_amd64.deb
 2dfedef00f9920e14c78cbdd327841ee24c50069 349466 apt-utils_0.9.16_amd64.deb
 97530050b15f2d8f9b0f0cec4264d81f0b51ffc5 129148 apt-transport-https_0.9.16_amd64.deb
Checksums-Sha256: 
 c5f080a8f80ed969a5527a326b638f96ba4b26e4792710359a25d2e4d34916ac 1638 apt_0.9.16.dsc
 d6578c1510dcad6d63630e385e998384512da3c64fb09f8a381364e11f01c513 1734784 apt_0.9.16.tar.xz
 b4a348de3caa1a95ad11a8ce8496d0a4b0e496c020de764a627820708d7100e3 270724 apt-doc_0.9.16_all.deb
 02bbc61e603e3d299d9f42790c095fe58d586775a821273e0f5487b390e441df 766790 libapt-pkg-doc_0.9.16_all.deb
 184a24d86a7b2378ec3b16fb35a6b1ff8787697ced13214c28347ce42c94be5e 743384 libapt-pkg4.12_0.9.16_amd64.deb
 33ec9ac43621d9b3beba31f377641e60175f0b4e07f6c6928730201e63141140 162490 libapt-inst1.5_0.9.16_amd64.deb
 4751b238e7b06605fa159862b1595df856944f99ab6ce1a70f9642675e354d37 1062452 apt_0.9.16_amd64.deb
 a7ca0ea54f6e8a1f8edc13766bc038dc1f8be9707c41e826456f82443f77a048 186468 libapt-pkg-dev_0.9.16_amd64.deb
 c60caeb5519111acc151adb4c27d9ee281a279186f583ddfd25835b04d380ecb 349466 apt-utils_0.9.16_amd64.deb
 5c98075ba411007c11b6824ed0e5e903e89fa9a18bf2447a1ab0e14257d4c313 129148 apt-transport-https_0.9.16_amd64.deb
Files: 
 9d0f3f359fd7cbe973526c88e39ced44 1638 admin important apt_0.9.16.dsc
 9ebe9a76dac4fb453c030ee584756f6d 1734784 admin important apt_0.9.16.tar.xz
 bba391e04ef93fe3d7298981a0d9eb3d 270724 doc optional apt-doc_0.9.16_all.deb
 082f4caf75dc54e691a64ba5df570bce 766790 doc optional libapt-pkg-doc_0.9.16_all.deb
 3c413ad5c5fdabe0fb76035d76afac5f 743384 libs important libapt-pkg4.12_0.9.16_amd64.deb
 0aadeff033c0f147671938cf10ee6d0b 162490 libs important libapt-inst1.5_0.9.16_amd64.deb
 9bb168f072739ba11938c5e499d3f956 1062452 admin important apt_0.9.16_amd64.deb
 fde072f19e881b614ece35b4d1791cf5 186468 libdevel optional libapt-pkg-dev_0.9.16_amd64.deb
 098f3d2a85e9ec23f71670b45a69e8f8 349466 admin important apt-utils_0.9.16_amd64.deb
 ab1fcac9195fa6b2a6c0a491b52b9b84 129148 admin optional apt-transport-https_0.9.16_amd64.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iEYEARECAAYFAlMixlcACgkQliSD4VZixzR8vQCfYggVmYiKG6ARbCwY8mChZTQU
S6UAn2gzGj23sBbN2MeKTtSREilvYZAx
=aFHK
-----END PGP SIGNATURE-----

--- End Message ---

Reply to: