From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id 8JNBK7GXbF+1RgAA0tVLHw (envelope-from ) for ; Thu, 24 Sep 2020 12:57:21 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id HOj/JrGXbF+fHgAAbx9fmQ (envelope-from ) for ; Thu, 24 Sep 2020 12:57:21 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 856F294066B for ; Thu, 24 Sep 2020 12:57:20 +0000 (UTC) Received: from localhost ([::1]:46378 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kLQoJ-0004mJ-4E for larch@yhetil.org; Thu, 24 Sep 2020 08:57:19 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:33528) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kLQo2-0004m8-Bv for guix-patches@gnu.org; Thu, 24 Sep 2020 08:57:04 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:55602) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kLQo2-00087R-2M for guix-patches@gnu.org; Thu, 24 Sep 2020 08:57:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kLQo2-0007g5-0q for guix-patches@gnu.org; Thu, 24 Sep 2020 08:57:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#42958] [PATCH core-updates 03/29] gnu: glib: Update package definition. Resent-From: Efraim Flashner Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Thu, 24 Sep 2020 12:57:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 42958 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Raghav Gururajan Cc: 42958@debbugs.gnu.org Received: via spool by 42958-submit@debbugs.gnu.org id=B42958.160095220629491 (code B ref 42958); Thu, 24 Sep 2020 12:57:01 +0000 Received: (at 42958) by debbugs.gnu.org; 24 Sep 2020 12:56:46 +0000 Received: from localhost ([127.0.0.1]:38915 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kLQne-0007fS-7P for submit@debbugs.gnu.org; Thu, 24 Sep 2020 08:56:46 -0400 Received: from flashner.co.il ([178.62.234.194]:54706) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kLQnY-0007fA-LP for 42958@debbugs.gnu.org; Thu, 24 Sep 2020 08:56:36 -0400 Received: from localhost (unknown [31.210.181.177]) by flashner.co.il (Postfix) with ESMTPSA id AB10940217; Thu, 24 Sep 2020 12:56:26 +0000 (UTC) Date: Thu, 24 Sep 2020 15:55:53 +0300 From: Efraim Flashner Message-ID: <20200924125553.GC1473@E5400> References: <20200820150914.9443-1-dannym@scratchpost.org> <5acf11ff-2410-d336-4037-8e7665c78083@disroot.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="da4uJneut+ArUgXk" Content-Disposition: inline In-Reply-To: <5acf11ff-2410-d336-4037-8e7665c78083@disroot.org> X-PGP-Key-ID: 0x41AAE7DCCA3D8351 X-PGP-Key: https://flashner.co.il/~efraim/efraim_flashner.asc X-PGP-Fingerprint: A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 X-Spam-Score: 3.6 (+++) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-Spam-Score: -1.0 (-) X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Spam-Score: 1.69 X-TUID: +UJjj68yNSpo --da4uJneut+ArUgXk Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, Sep 24, 2020 at 08:28:45AM -0400, Raghav Gururajan wrote: > From 67bad944e2b775ebe2bd0101220b78b2a07c8bdf Mon Sep 17 00:00:00 2001 > From: Raghav Gururajan > Date: Thu, 24 Sep 2020 04:44:59 -0400 > Subject: [PATCH 10/11] gnu: glib: Update to 2.64.3. >=20 > * gnu/packages/glib.scm (glib) [version]: Update to 2.64.3. > [source][sha256]: Modify base32. > [patches]: Add glib-disable-failing-tests.patch. > Remove glib-tests-timer.patch. > [arguments]<#:disallowed-references>: Remove argument. > <#:phases>['patch-python-references]: New phase. > ['pre-check]: New phase. > ['move-bin]: New phase. > ['patch-dbus-launch-path]: Remove phase. > ['patch-gio-launch-desktop]: Remove phase. > ['pre-build]: Remove phase. > ['disable-failing-tests]: Remove phase. > ['check]: Remove phase. > ['move-executables]: Remove phase. > [native-inputs]: Add intltool, python, libxml2 and libxslt. > Remove dbus. > [inputs]: Add dbus and libelf. > * gnu/packages/patches/glib-disable-failing-tests.patch: New file. > * gnu/packages/patches/glib-tests-timer.patch: Delete file. > * gnu/local.mk (dist_patch_DATA): Adjust. > --- > gnu/local.mk | 2 +- > gnu/packages/glib.scm | 179 +++++------------- > .../patches/glib-disable-failing-tests.patch | 84 ++++++++ > gnu/packages/patches/glib-tests-timer.patch | 15 -- > 4 files changed, 136 insertions(+), 144 deletions(-) > create mode 100644 gnu/packages/patches/glib-disable-failing-tests.patch > delete mode 100644 gnu/packages/patches/glib-tests-timer.patch >=20 > diff --git a/gnu/local.mk b/gnu/local.mk > index f3b5b17e84..2fc47ca2ec 100644 > --- a/gnu/local.mk > +++ b/gnu/local.mk > @@ -1034,7 +1034,7 @@ dist_patch_DATA =3D \ > %D%/packages/patches/ghostscript-no-header-id.patch \ > %D%/packages/patches/ghostscript-no-header-uuid.patch \ > %D%/packages/patches/ghostscript-no-header-creationdate.patch \ > - %D%/packages/patches/glib-tests-timer.patch \ > + %D%/packages/patches/glib-disable-failing-tests.patch \ > %D%/packages/patches/glibc-CVE-2018-11236.patch \ > %D%/packages/patches/glibc-CVE-2018-11237.patch \ > %D%/packages/patches/glibc-CVE-2019-7309.patch \ > diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm > index 21b39b94e8..be5d45596d 100644 > --- a/gnu/packages/glib.scm > +++ b/gnu/packages/glib.scm > @@ -178,7 +178,7 @@ shared NFS home directories.") > (package > (properties '((hidden? . #t))) > (name "glib") > - (version "2.62.6") > + (version "2.64.3") > (source > (origin > (method url-fetch) > @@ -187,8 +187,9 @@ shared NFS home directories.") > name "/" (string-take version 4) "/" > name "-" version ".tar.xz")) > (sha256 > - (base32 "174bsmbmcvaw69ff9g60q5sx0fn23rkhqcwqz17h5s7sprps4kqh")) > - (patches (search-patches "glib-tests-timer.patch")) > + (base32 "08pbgiv5m3rica4ydvwvpq5mrxbyswx7l1jzjc2ch52xjabvr77y")) > + (patches > + (search-patches "glib-disable-failing-tests.patch")) > (modules '((guix build utils))) > (snippet > '(begin > @@ -198,27 +199,23 @@ shared NFS home directories.") > (build-system meson-build-system) > (outputs '("out" "bin")) > (arguments > - `(#:disallowed-references (,tzdata-for-tests) > - #:phases > + `(#:phases > (modify-phases %standard-phases > - (add-after 'unpack 'patch-dbus-launch-path > + ;; Python references are not being patched in patch-phase of bu= ild, > + ;; despite using python-wrapper as input. So we patch them manu= ally. > + (add-after 'unpack 'patch-python-references > (lambda* (#:key inputs #:allow-other-keys) > - (let ((dbus (assoc-ref inputs "dbus"))) > - (substitute* "gio/gdbusaddress.c" > - (("command_line =3D g_strdup_printf \\(\"dbus-launch") > - (string-append "command_line =3D g_strdup_printf (\"" > - dbus "/bin/dbus-launch"))) > - #t))) > - (add-after 'unpack 'patch-gio-launch-desktop > - (lambda* (#:key outputs #:allow-other-keys) > - (let ((out (assoc-ref outputs "out"))) > - ;; See also > - ;; for another future fix. > - (substitute* "gio/gdesktopappinfo.c" > - (("gio-launch-desktop") > - (string-append out "/libexec/gio-launch-desktop"))) > - #t))) > - (add-before 'build 'pre-build > + (substitute* '("gio/gdbus-2.0/codegen/gdbus-codegen.in" > + "glib/gtester-report.in" > + "gobject/glib-genmarshal.in" > + "gobject/glib-mkenums.in") > + (("@PYTHON@") > + (string-append (assoc-ref inputs "python") > + "/bin/python" > + ,(version-major+minor > + (package-version python))))) If you substitute it with (which "python") then you don't need to work out the python version, and it looks like you don't need to add python as an input (and you can keep using just python-wrapper). > + #t)) > + (add-before 'check 'pre-check > (lambda* (#:key inputs outputs #:allow-other-keys) > ;; For tests/gdatetime.c. > (setenv "TZDIR" > @@ -228,133 +225,59 @@ shared NFS home directories.") > (setenv "HOME" (getcwd)) > (setenv "XDG_CACHE_HOME" (getcwd)) > #t)) > - (add-after 'unpack 'disable-failing-tests > - (lambda _ > - (let ((disable > - (lambda (test-file test-paths) > - (define pattern+procs > - (map (lambda (test-path) > - (cons > - ;; XXX: only works for single line state= ments. > - (format #f "g_test_add_func.*\"~a\".*" t= est-path) > - (const ""))) > - test-paths)) > - (substitute test-file pattern+procs))) > - (failing-tests > - '(("glib/tests/thread.c" > - ( ;; prlimit(2) returns ENOSYS on Linux 2.6.32-5-= xen-amd64 > - ;; as found on hydra.gnu.org, and strace(1) does= n't > - ;; recognize it. > - "/thread/thread4")) > - ;; This tries to find programs in FHS directories. > - ("glib/tests/utils.c" > - ("/utils/find-program")) > - ;; This fails because "glib/tests/echo-script" can= not be > - ;; found. > - ("glib/tests/spawn-singlethread.c" > - ("/gthread/spawn-script")) > - ("glib/tests/timer.c" > - ( ;; fails if compiler optimizations are enabled,= which they > - ;; are by default. > - "/timer/stop")) > - ("gio/tests/gapplication.c" > - ( ;; XXX: proven to be unreliable. See: > - ;; > - ;; > - "/gapplication/quit" > - ;; XXX: fails randomly for unknown reason. See: > - ;; > - "/gapplication/local-actions")) > - ("gio/tests/contenttype.c" > - ( ;; XXX: requires shared-mime-info. > - "/contenttype/guess" > - "/contenttype/guess_svg_from_data" > - "/contenttype/subtype" > - "/contenttype/list" > - "/contenttype/icon" > - "/contenttype/symbolic-icon" > - "/contenttype/tree")) > - ("gio/tests/appinfo.c" > - ( ;; XXX: requires update-desktop-database. > - "/appinfo/associations")) > - ("gio/tests/desktop-app-info.c" > - ( ;; XXX: requires update-desktop-database. > - "/desktop-app-info/delete" > - "/desktop-app-info/default" > - "/desktop-app-info/fallback" > - "/desktop-app-info/lastused" > - "/desktop-app-info/search")) > - ("gio/tests/gdbus-peer.c" > - ( ;; Requires /etc/machine-id. > - "/gdbus/codegen-peer-to-peer")) > - ("gio/tests/gdbus-address-get-session.c" > - ( ;; Requires /etc/machine-id. > - "/gdbus/x11-autolaunch")) > - ("gio/tests/gsocketclient-slow.c" > - ( ;; These tests tries to resolve "localhost", an= d fails. > - "/socket-client/happy-eyeballs/slow" > - "/socket-client/happy-eyeballs/cancellation/dela= yed")) > - ))) > - (for-each (lambda (x) (apply disable x)) failing-tests) > - #t))) > - (replace 'check > - (lambda _ > - (setenv "MESON_TESTTHREADS" > - (number->string (parallel-job-count))) > - ;; Do not run tests marked as "flaky". > - (invoke "meson" "test" "--no-suite" "flaky"))) > - ;; TODO: meson does not permit the bindir to be outside of pref= ix. > - ;; See https://github.com/mesonbuild/meson/issues/2561 > - ;; We can remove this once meson is patched. > - (add-after 'install 'move-executables > + ;; Meson does not permit the bindir to be outside of prefix. > + (add-after 'install 'move-bin > (lambda* (#:key outputs #:allow-other-keys) > - (let ((out (assoc-ref outputs "out")) > - (bin (assoc-ref outputs "bin"))) > + (let* ((out (assoc-ref outputs "out")) > + (bin (assoc-ref outputs "bin"))) > (mkdir-p bin) > - (rename-file (string-append out "/bin") > - (string-append bin "/bin")) > - ;; This one is an implementation detail of glib. > - ;; It is wrong that that's in "/bin" in the first place, > - ;; but that's what upstream is doing right now. > - ;; See . > - (mkdir (string-append out "/libexec")) > - (rename-file (string-append bin "/bin/gio-launch-desktop") > - (string-append out "/libexec/gio-launch-desk= top")) > + (rename-file > + (string-append out "/bin") > + (string-append bin "/bin")) > ;; Do not refer to "bindir", which points to "${prefix}/b= in". > ;; We don't patch "bindir" to point to "$bin/bin", becaus= e that > ;; would create a reference cycle between the "out" and "= bin" > ;; outputs. > - (substitute* (list (string-append out "/lib/pkgconfig/gio= -2.0.pc") > - (string-append out "/lib/pkgconfig/gli= b-2.0.pc")) > + (substitute* > + (list > + (string-append out "/lib/pkgconfig/gio-2.0.pc") > + (string-append out "/lib/pkgconfig/glib-2.0.pc")) > (("bindir=3D\\$\\{prefix\\}/bin") "") > (("=3D\\$\\{bindir\\}/") "=3D")) > #t)))))) > (native-inputs > `(("gettext" ,gettext-minimal) > + ("libintl" ,intltool) > ("m4" ,m4) > - ("dbus" ,dbus) > - ("pkg-config" ,pkg-config) > - ("python" ,python-wrapper) > ("perl" ,perl) > - ("tzdata" ,tzdata-for-tests))) > + ("pkg-config" ,pkg-config) > + ("python-wrapper" ,python-wrapper) > + ("python" ,python) ; For 'patch-python-references > + ("tzdata" ,tzdata-for-tests) > + ("xmllint" ,libxml2) > + ("xsltproc" ,libxslt))) > + (inputs > + `(("dbus" ,dbus) > + ("libelf" ,libelf))) > (propagated-inputs > - `(("pcre" ,pcre) > - ("libffi" ,libffi) > - ("util-linux" ,util-linux "lib") > + `(("libffi" ,libffi) > ("libselinux" ,libselinux) > + ("pcre" ,pcre) > + ("util-linux" ,util-linux "lib") > ("zlib" ,zlib))) > (native-search-paths > ;; This variable is not really "owned" by GLib, but several related > ;; packages refer to it: gobject-introspection's tools use it as a = search > ;; path for .gir files, and it's also a search path for schemas pro= duced > ;; by 'glib-compile-schemas'. > - (list (search-path-specification > - (variable "XDG_DATA_DIRS") > - (files '("share"))) > - ;; To load extra gio modules from glib-networking, etc. > - (search-path-specification > - (variable "GIO_EXTRA_MODULES") > - (files '("lib/gio/modules"))))) > + (list > + (search-path-specification > + (variable "XDG_DATA_DIRS") > + (files '("share"))) > + ;; To load extra gio modules from glib-networking, etc. > + (search-path-specification > + (variable "GIO_EXTRA_MODULES") > + (files '("lib/gio/modules"))))) > (search-paths native-search-paths) > (synopsis "Thread-safe general utility library; basis of GTK+ and GN= OME") > (description > diff --git a/gnu/packages/patches/glib-disable-failing-tests.patch b/gnu/= packages/patches/glib-disable-failing-tests.patch > new file mode 100644 > index 0000000000..3601c42030 > --- /dev/null > +++ b/gnu/packages/patches/glib-disable-failing-tests.patch > @@ -0,0 +1,84 @@ > +From a2e6783f2278ed32b1e552691ec5d67d6940757e Mon Sep 17 00:00:00 2001 > +From: Raghav Gururajan > +Date: Tue, 9 Jun 2020 05:17:53 -0400 > +Subject: [PATCH] PATCH: Disable failing tests. > + > +--- > + gio/tests/meson.build | 19 ------------------- > + glib/tests/meson.build | 2 -- > + 2 files changed, 21 deletions(-) > + > +diff --git a/gio/tests/meson.build b/gio/tests/meson.build > +index c7c3e3035..6e38eb39e 100644 > +--- a/gio/tests/meson.build > ++++ b/gio/tests/meson.build > +@@ -34,7 +34,6 @@ gio_tests =3D { > + 'buffered-output-stream' : {}, > + 'cancellable' : {}, > + 'contexts' : {}, > +- 'contenttype' : {}, > + 'converter-stream' : {}, > + 'credentials' : {}, > + 'data-input-stream' : {}, > +@@ -78,7 +77,6 @@ gio_tests =3D { > + 'tls-certificate' : {'extra_sources' : ['gtesttlsbackend.c']}, > + 'tls-interaction' : {'extra_sources' : ['gtesttlsbackend.c']}, > + 'tls-database' : {'extra_sources' : ['gtesttlsbackend.c']}, > +- 'gdbus-address-get-session' : {}, > + 'win32-appinfo' : {}, > + } > +=20 > +@@ -135,10 +133,6 @@ endif > + if host_machine.system() !=3D 'windows' > + gio_tests +=3D { > + 'file' : {}, > +- 'gdbus-peer' : { > +- 'dependencies' : [libgdbus_example_objectmanager_dep], > +- 'install_rpath' : installed_tests_execdir > +- }, > + 'gdbus-peer-object-manager' : {}, > + 'live-g-file' : {}, > + 'socket-address' : {}, > +@@ -173,19 +167,6 @@ if host_machine.system() !=3D 'windows' > + } > + endif > +=20 > +- # Uninstalled because of the check-for-executable logic in DesktopApp= Info > +- # unable to find the installed executable > +- if not glib_have_cocoa > +- gio_tests +=3D { > +- 'appinfo' : { > +- 'install' : false, > +- }, > +- 'desktop-app-info' : { > +- 'install' : false, > +- }, > +- } > +- endif > +- > + test_extra_programs +=3D { > + 'basic-application' : {}, > + 'dbus-launch' : {}, > +diff --git a/glib/tests/meson.build b/glib/tests/meson.build > +index 8da477d19..9fa24dd49 100644 > +--- a/glib/tests/meson.build > ++++ b/glib/tests/meson.build > +@@ -103,7 +103,6 @@ glib_tests =3D { > + 'utf8-pointer' : {}, > + 'utf8-validate' : {}, > + 'utf8-misc' : {}, > +- 'utils' : {}, > + 'unicode' : {}, > + 'uri' : {}, > + '1bit-mutex' : {}, > +@@ -151,7 +150,6 @@ if host_machine.system() =3D=3D 'windows' > + else > + glib_tests +=3D { > + 'include' : {}, > +- 'unix' : {}, > + } > + if have_rtld_next > + glib_tests +=3D { > +--=20 > +2.26.2 > + > diff --git a/gnu/packages/patches/glib-tests-timer.patch b/gnu/packages/p= atches/glib-tests-timer.patch > deleted file mode 100644 > index e37425c0c8..0000000000 > --- a/gnu/packages/patches/glib-tests-timer.patch > +++ /dev/null > @@ -1,15 +0,0 @@ > -* On i686 floating-point roundoff errors could sometimes cause this chec= k to > - fail depending on the elapsed microseconds. Improve rounding by addin= g a > - fractional bit. > - > ---- glib-2.40.0/glib/tests/timer.c 2014-03-05 08:05:42.000000000 -0600 > -+++ glib-2.40.0/glib/tests/timer.c 2014-07-10 16:33:12.746862822 -0500 > -@@ -35,7 +35,7 @@ > - elapsed =3D g_timer_elapsed (timer, µs); > -=20 > - g_assert_cmpfloat (elapsed, <, 1.0); > -- g_assert_cmpuint (micros, =3D=3D, ((guint64)(elapsed * 1e6)) % 100000= 0); > -+ g_assert_cmpuint (micros, =3D=3D, ((guint64)(elapsed * 1e6 + 0.5)) % = 1000000); > -=20 > - g_timer_destroy (timer); > - } > --=20 > 2.28.0 >=20 --=20 Efraim Flashner =D7=90=D7=A4=D7=A8=D7=99=D7=9D = =D7=A4=D7=9C=D7=A9=D7=A0=D7=A8 GPG key =3D A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 Confidentiality cannot be guaranteed on emails sent or received unencrypted --da4uJneut+ArUgXk Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEoov0DD5VE3JmLRT3Qarn3Mo9g1EFAl9sl1kACgkQQarn3Mo9 g1G3/Q//bH2XG3QfadStD+zyOCnrXWT06BfeJbyNDiwiKXgn+kaKiBxd6FtcJOKp Iw9HsF9BkB0ygfHmeSzXSVfMRMhqL2ERXbhDnEglmIA04kV4jmkG5BzuSyDc2o8I E3551cYvliqTdILAb4eF5asnlcpzWi2LWCJdSJitb44rjYaGFCGuiFchZh3fYowG xdU3u/6+Hl6PVpCKxK+0nOrGXZBKxkMPbi1C8m3m+/Q8ZaZd/kDWcDxiBEb6pH5n 9yX77gvsMD7qfcj8GDo9gnwTRdZMmU4QCkErf6swrBXgHJCJu5f5ivX36HIHfxuN ll98YKAj56fHJlwjFt3UYmdQwhauadmxVBpD5O5+rgGKMjfzHmalaOovPCzveO11 5DurZPtpxWEiOecTd6ZR1YgdkUjGCI4JT/D+FRr0DMVoLO9iSpOsXONU+IylTtMt DoNGu55k3+X4vK/8BipQeVlB7aC6DI65kEnXLZs862lKo947YoSA72iuJfARLxnz kMVPoRcs9tN5VhG9vLgu8vUooiHlGKLCWLeDN90KaMTByYnmZ8a7030IcWuKSHKB OtB1jRS3G/7TXpFJe72kRid9G+aDfcIEtvWMu/DoeYvfdmGKdEFhMxWPRS9+S4G9 jn52Re3KosVtGJOtgqVIaoeO7ZFWSdDTKf+5dSXQQOcBOWI6VbA= =VIjz -----END PGP SIGNATURE----- --da4uJneut+ArUgXk--