• i686 require SSE4.1-capable processor?

    From Andreas Ronnquist@21:1/5 to All on Mon Jul 15 14:10:01 2024
    Hi

    I'm maintaining a package (filezilla) which just got a bug report that
    it simply crashes on program start - It gets a SIGILL - "Illegal
    instruction". (#1076312 report [1]).

    After the reporter debugged it, it seems like it crashes on the
    assembler instruction "pinsrd", which looks like it was added in
    SSE4.1, while the reporter runs this on a

    Intel(R) Celeron(R) M CPU 420 @ 1.60GHz

    which only supports SSE2. (Full cpuinfo available in the report) - So, my question is - is this a cpu that is too old for Debian to support, or
    should we support it, and Debian gcc generates invalid code requiring SSE4.1 while it still should support SSE2? (Or is the problem something else completely?)

    -- Andreas Rönnquist
    mailinglists@gusnan.se
    gusnan@debian.org

    [Please don't CC me, if I mail to a mailinglist, I am subscribed to it.]

    1: https://bugs.debian.org/1076312

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Andrey Rakhmatullin@21:1/5 to Andreas Ronnquist on Mon Jul 15 14:40:01 2024
    On Mon, Jul 15, 2024 at 01:42:50PM +0200, Andreas Ronnquist wrote:
    I'm maintaining a package (filezilla) which just got a bug report that
    it simply crashes on program start - It gets a SIGILL - "Illegal instruction". (#1076312 report [1]).

    After the reporter debugged it, it seems like it crashes on the
    assembler instruction "pinsrd", which looks like it was added in
    SSE4.1, while the reporter runs this on a

    Intel(R) Celeron(R) M CPU 420 @ 1.60GHz

    which only supports SSE2. (Full cpuinfo available in the report) - So, my question is - is this a cpu that is too old for Debian to support, or
    should we support it, and Debian gcc generates invalid code requiring SSE4.1 while it still should support SSE2? (Or is the problem something else completely?)

    Neither.
    Packages built for the i386 arch need to conform to the i386 baseline,
    which is currently i686. If a package contains a newer instruction it's a
    bug in that package and gcc is not the cause of it, the package is. https://buildd.debian.org/status/fetch.php?pkg=filezilla&arch=i386&ver=3.63.0-1%2Bdeb12u3&stamp=1704758683&raw=0
    indeed contains at least one compile command with -msse4.1.

    (there is also a "workaround", adding a dep on some isa-support
    subpackage, but it's unlikely to be the correct course of action here and
    I still don't know why is it even allowed in general)

    --
    WBR, wRAR

    -----BEGIN PGP SIGNATURE-----

    iQJhBAABCgBLFiEEolIP6gqGcKZh3YxVM2L3AxpJkuEFAmaVFp4tFIAAAAAAFQAP cGthLWFkZHJlc3NAZ251cGcub3Jnd3JhckBkZWJpYW4ub3JnAAoJEDNi9wMaSZLh EPoQAIgwLxkpcTzYbPLgfCahIVz2N6XRj8x9NAyIxVfpuiTnn0jY7j8yRqywe6l2 0Nh/GkvBAmAWCzz8yaiyj8ulie5yS41BHGK0WZY4zokl1g6uBROy13SWGNMn+oQw BfrCTsFYWdCEHVgzpTCi09mf/TwvEr9oC4KBJkLw1YyXoSp7MnLh4SssWLBm0jC/ hqermWURIUaX9cWfqUuX2DPeImOKPV22pyVeQkyCyvwfQZ6ZMVpqsyyAEbQAvpHY C3Ygo+U6IXYMPAEBfnLoH4dAGY+N/LQStVzVgWWFVQDZnqYjQH8ewQriu9bxpELH 4xGitbGVxRoxigITBhjZdvqlbbuPEBCxnSV7SDljl1WbqJeqorpNR8HOjPuRDT1F sCjD4u/0QMzLj1rJ86OlOqODNNIZzkYPAKKY++X+IQQeCFjZFXOssDz5SPIwu/xw jh9jpM8VZPyvI0z0xctRRDJq9upKf2zEXyuC/s3oUD0aGTn9ztsCoI1DRL8YJ8yy c3PO05wWv1xhZUSVpflbuSHW4ZEHVe1Z1QXMNx6QsksNxbPRT6PCdg0l3wG8dO4A 4guo1YhGA7+usfw5iXWeLX/MuGvnJkxXODQ8lUQvsN9Hf7Jl7TvJJCxVgUULX7Tb PJ1Toa79rW2hz+mM5GRxsnL9eBETRqq7EPglyxEW8k9oKv64
    =Szg5
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Mathieu Malaterre@21:1/5 to mailinglists@gusnan.se on Mon Jul 15 14:50:01 2024
    On Mon, Jul 15, 2024 at 2:04 PM Andreas Ronnquist
    <mailinglists@gusnan.se> wrote:

    Hi

    I'm maintaining a package (filezilla) which just got a bug report that
    it simply crashes on program start - It gets a SIGILL - "Illegal instruction". (#1076312 report [1]).

    After the reporter debugged it, it seems like it crashes on the
    assembler instruction "pinsrd", which looks like it was added in
    SSE4.1, while the reporter runs this on a

    Intel(R) Celeron(R) M CPU 420 @ 1.60GHz

    which only supports SSE2. (Full cpuinfo available in the report) - So, my question is - is this a cpu that is too old for Debian to support, or
    should we support it, and Debian gcc generates invalid code requiring SSE4.1 while it still should support SSE2? (Or is the problem something else completely?)

    You are building on i386 with an advanced gcc flag: `-msse4.1`. This
    is different from Debian i386 baseline.

    * https://buildd.debian.org/status/fetch.php?pkg=filezilla&arch=i386&ver=3.67.1-1&stamp=1720717439&raw=0

    (not tested) simply removing this flag should fix the issue.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Andreas Ronnquist@21:1/5 to Andrey Rakhmatullin on Mon Jul 15 15:00:02 2024
    On Mon, 15 Jul 2024 17:31:30 +0500,
    Andrey Rakhmatullin<wrar@debian.org> wrote:

    On Mon, Jul 15, 2024 at 01:42:50PM +0200, Andreas Ronnquist wrote:
    I'm maintaining a package (filezilla) which just got a bug report that
    it simply crashes on program start - It gets a SIGILL - "Illegal
    instruction". (#1076312 report [1]).

    After the reporter debugged it, it seems like it crashes on the
    assembler instruction "pinsrd", which looks like it was added in
    SSE4.1, while the reporter runs this on a

    Intel(R) Celeron(R) M CPU 420 @ 1.60GHz

    which only supports SSE2. (Full cpuinfo available in the report) - So, my
    question is - is this a cpu that is too old for Debian to support, or
    should we support it, and Debian gcc generates invalid code requiring SSE4.1 >> while it still should support SSE2? (Or is the problem something else
    completely?)

    Neither.
    Packages built for the i386 arch need to conform to the i386 baseline,
    which is currently i686. If a package contains a newer instruction it's a
    bug in that package and gcc is not the cause of it, the package is. >https://buildd.debian.org/status/fetch.php?pkg=filezilla&arch=i386&ver=3.63.0-1%2Bdeb12u3&stamp=1704758683&raw=0
    indeed contains at least one compile command with -msse4.1.

    (there is also a "workaround", adding a dep on some isa-support
    subpackage, but it's unlikely to be the correct course of action here and
    I still don't know why is it even allowed in general)


    Yeah, I have discovered that it is indeed a cause of the d/rules in the filezilla package. I blame having taken over it recently, and still
    haven't learned the ins and outs of it.

    I'll take care of it.

    Thanks wRAR!

    -- Andreas Rönnquist
    mailinglists@gusnan.se
    gusnan@debian.org

    -----BEGIN PGP SIGNATURE-----

    iQIzBAEBCAAdFiEETq74h7WfgJdjc9ALCHsqoZ75O8IFAmaVG5UACgkQCHsqoZ75 O8JQgA/+MsRGSYV7NW4fxvzWOVluLqq4seD7b2KnEca+tY2rCyBzNcs0kowOpwl1 BXDlFrsAPW0H2vGOyjTV6THcD/Jio7xDv7wy//SYGBVJfjAPMTLFY1qAnrwo4/Uo IRAvRKFsBpIa/vWRi3UbC/90vznXE9je2z2fFRkcYhZBB80ERobjvb+bmirHAQTL rIXMPT8JE/9xSjet+GWiik1a4LUXYVFWOv3y2PHBmDwkUtvjmTxnRS5BTsn2tIbo QIquy3FMEzxNM8Uu967twdd4uqmWZimCyOJ67vqnZgOY8qHbGd5SWJaBpMiSYV3C H+DlO+78kjyNKDCevRb3b8dJyT8P+awj+VByWC4x7KKzJWvMMo2MyfEHQWDK+lMU xqu8FLNxCuVb7kXhupMqdfa5kOgDVQ8+GunPjmjLdZhfQ469gu9L4glRHxLUgs8y Evu+RIdGwU2tXpcthVwUDI68GlzFb5z3vaUdhrhctOlHx8y/tf5svNBJXYYYJa2V h76oIjWVKv1Di+bzWWELpATA9X9Mwokfc7EOxqNWnXikcF7Om6E6BqeY0W9T1M6N XT4yCrkZwuE/69p5pIt2aPMP+lCbvUK8XunVd8XHuYuCwczzN0DQiALI+R3bIrtC pdAXcC09x9aIF2D3lDfDbToTDt8JXoAG/Dr0JHQmqO8A20Nk000=
    =yS0/
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Philipp Kern@21:1/5 to Andreas Ronnquist on Mon Jul 15 17:30:01 2024
    [Also adding Phil]

    On 15.07.24 14:52, Andreas Ronnquist wrote:
    Packages built for the i386 arch need to conform to the i386 baseline,
    which is currently i686. If a package contains a newer instruction it's a
    bug in that package and gcc is not the cause of it, the package is.
    https://buildd.debian.org/status/fetch.php?pkg=filezilla&arch=i386&ver=3.63.0-1%2Bdeb12u3&stamp=1704758683&raw=0
    indeed contains at least one compile command with -msse4.1.
    [...]
    Yeah, I have discovered that it is indeed a cause of the d/rules in the filezilla package. I blame having taken over it recently, and still
    haven't learned the ins and outs of it.

    It'd also be good to document reasons for such workarounds next time.
    Both the changelog and the surrounding comments don't really tell you
    what to watch out for in a new gcc version. There's no bug reference
    (GCC or Debian bug) or example error message or a pointer to possible miscompilation.

    Kind regards
    Philipp Kern

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Phil Wyett@21:1/5 to Philipp Kern on Tue Jul 16 13:50:01 2024
    On Mon, 2024-07-15 at 17:20 +0200, Philipp Kern wrote:
    [Also adding Phil]

    On 15.07.24 14:52, Andreas Ronnquist wrote:
    Packages built for the i386 arch need to conform to the i386 baseline, which is currently i686. If a package contains a newer instruction it's a bug in that package and gcc is not the cause of it, the package is. https://buildd.debian.org/status/fetch.php?pkg=filezilla&arch=i386&ver=3.63.0-1%2Bdeb12u3&stamp=1704758683&raw=0
    indeed contains at least one compile command with -msse4.1.
    [...]
    Yeah, I have discovered that it is indeed a cause of the d/rules in the filezilla package. I blame having taken over it recently, and still
    haven't learned the ins and outs of it.

    It'd also be good to document reasons for such workarounds next time.
    Both the changelog and the surrounding comments don't really tell you
    what to watch out for in a new gcc version. There's no bug reference
    (GCC or Debian bug) or example error message or a pointer to possible miscompilation.

    Kind regards
    Philipp Kern


    Hi all,

    The addition to 'debian/rules' was in response to the below.

    https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1053804

    Debian may have moved on to where this temporary workaround is no longer needed.

    You may wish to contact the original reporter at some point.

    Regards

    Phil

    --

    "I play the game for the game’s own sake"

    Arthur Conan Doyle - The Adventure of the Bruce-Partington Plans

    --

    Internet Relay Chat (IRC): kathenas

    Website: https://kathenas.org

    Instagram: https://instagram.com/kathenasorg/

    Buy Me A Coffee: https://buymeacoffee.com/kathenasorg

    --


    -----BEGIN PGP SIGNATURE-----

    iQJOBAABCgA4FiEEcKCsRax3nv6E9jrtckqptS8CTIsFAmaWXW8aHHBoaWxpcC53 eWV0dEBrYXRoZW5hcy5vcmcACgkQckqptS8CTIupdQ/+OyOGwyyA2fIMhN0HtdLK +04D5DPl9PdHrh9uiNhRw3tG0DQzuNuyscMncefnRIFUdpOAiO9tCAXl01JZ9/mI I4i5fqKuWT+kmmuQKI4gZgtUGAVaSvTWeP8+vPbGJKkNFo7f4q4QwjVNiA343fnW IsvCcNy9y00BUaEoa8l5RRZTZZIWwd2IBn5PKMw970YqMZdnFxUkYUPwfr6xVTuN tBa5liY9ri6YttoeNj5T9xYkZ0LzK+wm+ZE8ycoFwWmOTeW7Rd04qiAHlac7sYzb WfDzXJf9AyEnDhGAY+PGK8LisOM12b/pIcICbZf30pHHZPmDKpNFldJxEwlvdPN1 Ah26aO6Tr4gwrXmSolIzQyGgIC2X6fUDqSVplOiyKIwFCFEgtVO3J9dWdkXs4AQa j8mdV64Z2LeuuRRqk1EGRuELTQT6GtJoPlwE4xoZyF/wY4TQ/xglllKsNIkQaGQf qGnGnVRJnKbdJRo9HZe2kt1eVgvlk1NHIEURuX8LkziEnhcWxp92N9Ogq7MDvDwr +90ZUvHdG5TcgLSbp
  • From Philipp Kern@21:1/5 to Andrey Rakhmatullin on Tue Jul 16 14:40:01 2024
    Hi,

    On 2024-07-16 14:14, Andrey Rakhmatullin wrote:
    On Tue, Jul 16, 2024 at 12:46:01PM +0100, Phil Wyett wrote:
    Packages built for the i386 arch need to conform to the i386 baseline, >> > > > which is currently i686. If a package contains a newer instruction it's a
    bug in that package and gcc is not the cause of it, the package is.
    https://buildd.debian.org/status/fetch.php?pkg=filezilla&arch=i386&ver=3.63.0-1%2Bdeb12u3&stamp=1704758683&raw=0
    indeed contains at least one compile command with -msse4.1.
    [...]
    Yeah, I have discovered that it is indeed a cause of the d/rules in the >> > > filezilla package. I blame having taken over it recently, and still
    haven't learned the ins and outs of it.
    It'd also be good to document reasons for such workarounds next time.
    Both the changelog and the surrounding comments don't really tell you
    what to watch out for in a new gcc version. There's no bug reference
    (GCC or Debian bug) or example error message or a pointer to possible
    miscompilation.
    The addition to 'debian/rules' was in response to the below.

    https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1053804
    That bug report looks like the outcome of the "addition", not the
    reason
    for it. Did you mean https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1034195 ?

    Yeah it'd have been good if there had been a link to that. E.g. in the changelog or as a comment in debian/rules.

    The interactions in both bugs look very weird to me, especially when
    the
    same person proposes compiling software with SSE4.1 and then complains
    that it fails on older hardware, and the reason for closing the newer
    bug
    also looks weird to me. I think it should be reopened and bumped to RC.

    I'm a bit confused as to why Filezilla bundles an ancient version of
    Putty. The official Putty code does compile *that specific unit*[1] with -msse4.1 but there is also a gate in the code to only use the
    accelerated path if cpuid signals support for the new instructions. As
    far as I can see you added the flag to all source files in the putty/
    subtree, thus more compilation units will use the new instructions that
    are not necessarily ready for it (i.e. have extensive checking logic
    upfront). It's not entirely surprising that the compiler then finds more efficient ways to do operations using the new instructions, which will
    then fail execution with invalid opcode.

    I'm with Andrey that the bug should be reopened and RC'ed because this
    is effectively producing a miscompilation on i386.

    Kind regards
    Philipp Kern

    [1] https://sources.debian.org/src/putty/0.81-2/crypto/CMakeLists.txt/?hl=88#L130 (it checks for the capability and then adds a specific library just for
    that source file if successful)

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Phil Wyett@21:1/5 to Philipp Kern on Tue Jul 16 15:00:01 2024
    On Tue, 2024-07-16 at 14:36 +0200, Philipp Kern wrote:
    Hi,

    On 2024-07-16 14:14, Andrey Rakhmatullin wrote:
    On Tue, Jul 16, 2024 at 12:46:01PM +0100, Phil Wyett wrote:
    Packages built for the i386 arch need to conform to the i386 baseline,
    which is currently i686. If a package contains a newer instruction it's a
    bug in that package and gcc is not the cause of it, the package is. https://buildd.debian.org/status/fetch.php?pkg=filezilla&arch=i386&ver=3.63.0-1%2Bdeb12u3&stamp=1704758683&raw=0
    indeed contains at least one compile command with -msse4.1.
    [...]
    Yeah, I have discovered that it is indeed a cause of the d/rules in the
    filezilla package. I blame having taken over it recently, and still haven't learned the ins and outs of it.
    It'd also be good to document reasons for such workarounds next time. Both the changelog and the surrounding comments don't really tell you what to watch out for in a new gcc version. There's no bug reference (GCC or Debian bug) or example error message or a pointer to possible miscompilation.
    The addition to 'debian/rules' was in response to the below.

    https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1053804
    That bug report looks like the outcome of the "addition", not the
    reason
    for it. Did you mean https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1034195 ?

    Yeah it'd have been good if there had been a link to that. E.g. in the changelog or as a comment in debian/rules.

    The interactions in both bugs look very weird to me, especially when
    the
    same person proposes compiling software with SSE4.1 and then complains
    that it fails on older hardware, and the reason for closing the newer
    bug
    also looks weird to me. I think it should be reopened and bumped to RC.

    I'm a bit confused as to why Filezilla bundles an ancient version of
    Putty. The official Putty code does compile *that specific unit*[1] with -msse4.1 but there is also a gate in the code to only use the
    accelerated path if cpuid signals support for the new instructions. As
    far as I can see you added the flag to all source files in the putty/ subtree, thus more compilation units will use the new instructions that
    are not necessarily ready for it (i.e. have extensive checking logic upfront). It's not entirely surprising that the compiler then finds more efficient ways to do operations using the new instructions, which will
    then fail execution with invalid opcode.

    I'm with Andrey that the bug should be reopened and RC'ed because this
    is effectively producing a miscompilation on i386.

    Kind regards
    Philipp Kern

    [1] https://sources.debian.org/src/putty/0.81-2/crypto/CMakeLists.txt/?hl=88#L130
    (it checks for the capability and then adds a specific library just for
    that source file if successful)

    Hi,

    Reopening it and looking at it again is the way forward. I hope in
    conjunction with upstream where necessary this can resolved.

    Regards

    Phil

    --

    "I play the game for the game’s own sake"

    Arthur Conan Doyle - The Adventure of the Bruce-Partington Plans

    --

    Internet Relay Chat (IRC): kathenas

    Website: https://kathenas.org

    Instagram: https://instagram.com/kathenasorg/

    Buy Me A Coffee: https://buymeacoffee.com/kathenasorg

    --


    -----BEGIN PGP SIGNATURE-----

    iQJOBAABCgA4FiEEcKCsRax3nv6E9jrtckqptS8CTIsFAmaWbfgaHHBoaWxpcC53 eWV0dEBrYXRoZW5hcy5vcmcACgkQckqptS8CTItkRA//fvQ1o7UT/3J4rYl7UdXb huC2PFyE2jAj1hgIvkOfVF3cmpdSTG/uo7Xt0TyLCk1v4VarWKBRZguILoqbHjL9 cjdectgpibpro0N2BU8Qe7fbx4XZLlSpO14bGKqmRVZl9ri6EU8St6noiQxkXugp x40l0dVuOTTIR5Jny2RsHSU6J+HQZ0laYdixT/RnjTZ02MQqreNiou2EXvq5TCpB NCJ7utXcjiWkqVfZWyYdsKLCnIBi02xa9wxN/YdulkDuVnI/9uB7QvUGw7bwdHdR QttyvMfQB4oMVM9Lmo1Q+yraGq8gBjg/1HxWQWz4CiJVYzZZq1bdzUEx6MjftZjd U+s1LCm0PNGo9md02ip7BlS73qKuNTAs5FvHVx4dsAOFyhYErQcJrPVQn54xYSoq hnhK9DdonlsK3yFwVQd3irHrDVHf2LhDRqyFXSuvN2R9unDNHxgO1C7Aaea40k96 CUXwyc7JAkzA5427X6XNfBZk5iuROU6SWDbbentc1sibTcG9tn4VNazImZsoH/dK FugfVLf3/ibi62BSa
  • From Andrey Rakhmatullin@21:1/5 to Phil Wyett on Tue Jul 16 14:20:01 2024
    On Tue, Jul 16, 2024 at 12:46:01PM +0100, Phil Wyett wrote:
    Packages built for the i386 arch need to conform to the i386 baseline, which is currently i686. If a package contains a newer instruction it's a
    bug in that package and gcc is not the cause of it, the package is. https://buildd.debian.org/status/fetch.php?pkg=filezilla&arch=i386&ver=3.63.0-1%2Bdeb12u3&stamp=1704758683&raw=0
    indeed contains at least one compile command with -msse4.1.
    [...]
    Yeah, I have discovered that it is indeed a cause of the d/rules in the filezilla package. I blame having taken over it recently, and still haven't learned the ins and outs of it.

    It'd also be good to document reasons for such workarounds next time.
    Both the changelog and the surrounding comments don't really tell you
    what to watch out for in a new gcc version. There's no bug reference
    (GCC or Debian bug) or example error message or a pointer to possible miscompilation.

    Kind regards
    Philipp Kern


    Hi all,

    The addition to 'debian/rules' was in response to the below.

    https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1053804

    That bug report looks like the outcome of the "addition", not the reason
    for it. Did you mean
    https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1034195 ?

    The interactions in both bugs look very weird to me, especially when the
    same person proposes compiling software with SSE4.1 and then complains
    that it fails on older hardware, and the reason for closing the newer bug
    also looks weird to me. I think it should be reopened and bumped to RC.



    --
    WBR, wRAR

    -----BEGIN PGP SIGNATURE-----

    iQJhBAABCgBLFiEEolIP6gqGcKZh3YxVM2L3AxpJkuEFAmaWZBItFIAAAAAAFQAP cGthLWFkZHJlc3NAZ251cGcub3Jnd3JhckBkZWJpYW4ub3JnAAoJEDNi9wMaSZLh qo4P/R/UD8rx/4UMu/AB9y+mbTC7SRSwucSBGNvYReui+PYwa09Q/H68ZYIxsr+7 Wc0tmjJU5nZaYvsGx4OgYAbbR8mlhjJOf/cB9tZX2BRJQ2LZvniPhPz13NNZh5sy uap118+84NQIEIomqihUXhrzWyI/YuozhV+CihD4ouGZ+fOomzbociAMaNoez6Aq yjz84ZwZlkY77M6pRUJVeWMYmn9SjqAEQqN3sDv/qL0NCTvJVoqt/2lPCMJ42J5s vAEfatLAGOZzs9KHhlUNc22YBXTb6OYPrlK/33VIiwbSszvNiLJP9gX6WdydhYJg 9Rt3ngTqZO5wQC400N590mywDNRseV9v4Hr2TOPLsQ3/PO6jgDz/lRErY3lIzVEC 2Ws0JyNcPUkuWn0SCB3+bKhahlLSJPOijOuAjGXInuanlF4S0h4w1isNbksuq9Ui NvFSnzOpZbraj3Ci8+O+om0wZZm1YMjOp1IxP6W3W9VEwhHc9RoxCBrDCsVXuhWK jRxfqbi4QsxYWUt/IlcCYzKpI4zcid/Fqb4Flz8u8H+bGU3TwTbwxV9P1RgyS3vw vchap9KJQ6sfqJhMH1zioj5C6j+ICIlF/zEGllpi5sNg7jDvvAaEckVCIHhpujon QanycpC4+UfcDqLKOn/YHtQjY0Itl0TSAZEZ7nW09XCh5Bnj
    =jjkd
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)