From owner-freebsd-x11@freebsd.org Thu Nov 15 01:45:37 2018 Return-Path: Delivered-To: freebsd-x11@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CBAB9110966C; Thu, 15 Nov 2018 01:45:36 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 27D0579B42; Thu, 15 Nov 2018 01:45:36 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (unknown [127.0.1.132]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by freefall.freebsd.org (Postfix) with ESMTPS id 850391CAB4; Thu, 15 Nov 2018 01:45:35 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id 4D24C731C; Thu, 15 Nov 2018 01:45:34 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id pTmmbsN7DeuG; Thu, 15 Nov 2018 01:45:28 +0000 (UTC) Subject: Re: ports head -r487783: on armv7 x11/pixman fails to build: /usr/bin/ld: error: can't create dynamic relocation R_ARM_V4BX against local symbol in readonly segment; recompile object files with -fPIC DKIM-Filter: OpenDKIM Filter v2.10.3 mail.xzibition.com 0B73A7310 To: Mark Millard Cc: ports-list freebsd , freebsd-x11@freebsd.org, Jan Beich , Warner Losh , "Simon J. Gerraty" References: <56BE95DD-61E5-43CB-923D-10E968003FE3@yahoo.com> <5FF705ED-B019-4CB1-B516-796C2E7A6FF9@yahoo.com> <51a82f62-13df-a485-4d5a-7dbfa3d1107f@FreeBSD.org> <12EFB5C5-4BC6-4083-B51D-26D1D3150C35@yahoo.com> From: Bryan Drewery Openpgp: preference=signencrypt Autocrypt: addr=bdrewery@FreeBSD.org; prefer-encrypt=mutual; keydata= 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 Xi+R Organization: FreeBSD Message-ID: <9cf37f5d-3aea-390c-e553-42ab3efe1c98@FreeBSD.org> Date: Wed, 14 Nov 2018 17:45:25 -0800 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:60.0) Gecko/20100101 Thunderbird/60.3.0 MIME-Version: 1.0 In-Reply-To: <12EFB5C5-4BC6-4083-B51D-26D1D3150C35@yahoo.com> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="90N5gpFGcAQVWn7rKvCV2DGjO56FU3eI3" X-Rspamd-Queue-Id: 27D0579B42 X-Spamd-Result: default: False [-108.95 / 200.00]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; ALLOW_DOMAIN_WHITELIST(-100.00)[FreeBSD.org]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; FREEMAIL_ENVRCPT(0.00)[yahoo.com]; HAS_ATTACHMENT(0.00)[]; MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain]; DMARC_NA(0.00)[FreeBSD.org]; R_SPF_SOFTFAIL(0.00)[~all]; RCPT_COUNT_FIVE(0.00)[6]; HAS_ORG_HEADER(0.00)[]; RCVD_COUNT_THREE(0.00)[4]; IP_SCORE(-3.74)[ip: (-9.76), ipnet: 2610:1c1:1::/48(-4.93), asn: 11403(-3.91), country: US(-0.10)]; MX_GOOD(-0.01)[cached: mx1.FreeBSD.org]; NEURAL_HAM_SHORT(-1.00)[-0.999,0]; SIGNED_PGP(-2.00)[]; FREEMAIL_TO(0.00)[yahoo.com]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; RCVD_TLS_LAST(0.00)[]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; MID_RHS_MATCH_FROM(0.00)[] X-Rspamd-Server: mx1.freebsd.org X-BeenThere: freebsd-x11@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: X11 on FreeBSD -- maintaining and support List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 15 Nov 2018 01:45:37 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --90N5gpFGcAQVWn7rKvCV2DGjO56FU3eI3 Content-Type: multipart/mixed; boundary="RO7XczIVUU0ljauLlSiDkh0CQDB4YP7w2"; protected-headers="v1" From: Bryan Drewery To: Mark Millard Cc: ports-list freebsd , freebsd-x11@freebsd.org, Jan Beich , Warner Losh , "Simon J. Gerraty" Message-ID: <9cf37f5d-3aea-390c-e553-42ab3efe1c98@FreeBSD.org> Subject: Re: ports head -r487783: on armv7 x11/pixman fails to build: /usr/bin/ld: error: can't create dynamic relocation R_ARM_V4BX against local symbol in readonly segment; recompile object files with -fPIC References: <56BE95DD-61E5-43CB-923D-10E968003FE3@yahoo.com> <5FF705ED-B019-4CB1-B516-796C2E7A6FF9@yahoo.com> <51a82f62-13df-a485-4d5a-7dbfa3d1107f@FreeBSD.org> <12EFB5C5-4BC6-4083-B51D-26D1D3150C35@yahoo.com> In-Reply-To: <12EFB5C5-4BC6-4083-B51D-26D1D3150C35@yahoo.com> --RO7XczIVUU0ljauLlSiDkh0CQDB4YP7w2 Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: quoted-printable On 11/14/18 5:24 PM, Mark Millard wrote: > [Looks like there are 2 stages involved in that > 2mmjnk.txt file that I generated. Before > MACHINE_ARCH is explicitly assigned and after.] >=20 > On 2018-Nov-14, at 15:40, Mark Millard wrote: >=20 >> [Evidence from inside poudriere bulk -j... -i ports-mgmt/pkg . >> Use of native /nxb-bin/. . . leads to MACHINE_ARCH being amd64 >> instead of armv7 or the like. See later supporting material.] >> >> On 2018-Nov-14, at 14:38, Bryan Drewery wrote: >> >>> On 11/14/18 2:35 PM, Mark Millard wrote: >>>> [Looking at package fallout logs: the official armv6 and armv7 >>>> builds are using -O2 because of MACHINE_ARCH being defined >>>> because of qemu-user-static use. (mips too?) The logic in >>>> share/mk/sys.mk is not causing -O . An implication >>>> is that -O2 for armv6 and armv7 is probably far more tested >>>> than people generally expect. The share/mk/sys.mk change >>>> goes back to -r319861 2017-Jun-12 . Previously the logic >>>> would have caused -O use for armv6 or armv7 in MACHINE_ARCH .] >>> >>> r319861 doesn't look related here. >> >> # more /etc/make.conf=20 >> .sinclude "/etc/make.nxb.conf" >> USE_PACKAGE_DEPENDS=3Dyes >> BATCH=3Dyes >> WRKDIRPREFIX=3D/wrkdirs >> PORTSDIR=3D/usr/ports >> PACKAGES=3D/packages >> DISTDIR=3D/distfiles >> FORCE_PACKAGE=3Dyes >> PACKAGE_BUILDING=3Dyes >> PACKAGE_BUILDING_FLAVORS=3Dyes >> MACHINE=3Darm >> MACHINE_ARCH=3Darmv7 >> ARCH=3D${MACHINE_ARCH} >> #### /usr/local/etc/poudriere.d/make.conf #### >> #### /usr/ports/Mk/Scripts/ports_env.sh #### >> _CCVERSION_9d218390=3DFreeBSD clang version 6.0.1 (tags/RELEASE_601/fi= nal 335540) (based on LLVM 6.0.1) Target: armv7-unknown-freebsd13.0-gnuea= bihf Thread model: posix InstalledDir: /nxb-bin/usr/bin >> _ALTCCVERSION_9d218390=3Dnone >> _CXXINTERNAL_9c45a5b1=3DFreeBSD clang version 6.0.1 (tags/RELEASE_601/= final 335540) (based on LLVM 6.0.1) Target: armv7-unknown-freebsd13.0-gnu= eabihf Thread model: posix InstalledDir: /nxb-bin/usr/bin "/nxb-bin/usr/b= in/ld" "--eh-frame-hdr" "-dynamic-linker" "/libexec/ld-elf.so.1" "--hash-= style=3Dboth" "--enable-new-dtags" "-o" "a.out" "/usr/lib/crt1.o" "/usr/l= ib/crti.o" "/usr/lib/crtbegin.o" "-L/usr/lib" "/dev/null" "-lc++" "-lm" "= -lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" "-lc" "-lgcc" "--as-neede= d" "-lgcc_s" "--no-as-needed" "/usr/lib/crtend.o" "/usr/lib/crtn.o" >> CC_OUTPUT_9d218390_58173849=3Dyes >> CC_OUTPUT_9d218390_9bdba57c=3Dyes >> CC_OUTPUT_9d218390_6a4fe7f5=3Dyes >> CC_OUTPUT_9d218390_6bcac02b=3Dyes >> CC_OUTPUT_9d218390_67d20829=3Dyes >> CC_OUTPUT_9d218390_bfa62e83=3Dyes >> CC_OUTPUT_9d218390_f0b4d593=3Dyes >> CC_OUTPUT_9d218390_308abb44=3Dyes >> CC_OUTPUT_9d218390_f00456e5=3Dyes >> CC_OUTPUT_9d218390_65ad290d=3Dyes >> CC_OUTPUT_9d218390_f2776b26=3Dyes >> CC_OUTPUT_9d218390_b2657cc3=3Dyes >> CC_OUTPUT_9d218390_380987f7=3Dyes >> CC_OUTPUT_9d218390_160933ec=3Dyes >> CC_OUTPUT_9d218390_fb62803b=3Dyes >> _OBJC_CCVERSION_9d218390=3DFreeBSD clang version 6.0.1 (tags/RELEASE_6= 01/final 335540) (based on LLVM 6.0.1) Target: armv7-unknown-freebsd13.0-= gnueabihf Thread model: posix InstalledDir: /nxb-bin/usr/bin >> _OBJC_ALTCCVERSION_9d218390=3Dnone >> ARCH=3Darmv7 >> OPSYS=3DFreeBSD >> _OSRELEASE=3D13.0-CURRENT >> OSREL=3D13.0 >> OSVERSION=3D1300003 >> PYTHONBASE=3D/usr/local >> _SMP_CPUS=3D32 >> CONFIGURE_MAX_CMD_LEN=3D262144 >> HAVE_PORTS_ENV=3D1 >> #### Misc Poudriere #### >> GID=3D0 >> UID=3D0 >> PACKAGES=3D/packages >> >> # more /etc/src.conf >> /etc/src.conf: No such file or directory >> >> # more Makefile >> all: >> echo ${MACHINE_ARCH} >> echo ${MACHINE_CPUARCH} >> echo ${CFLAGS} >> >> # make >> echo armv7 >> armv7 >> echo arm >> arm >> echo -O2 -pipe >> -O2 -pipe >> >> # grep -r "\-O2" /usr/src/share/mk/ >> /usr/src/share/mk/sys.mk:CFLAGS ?=3D -O2 -pipe >> >> # grep -r "\-pipe" /usr/src/share/mk/ >> /usr/src/share/mk/sys.mk:CFLAGS ?=3D -O -pipe >> /usr/src/share/mk/sys.mk:CFLAGS ?=3D -O2 -pipe >> >> Those lines come from: >> >> .if ${MACHINE_CPUARCH} =3D=3D "arm" || ${MACHINE_CPUARCH} =3D=3D "mips= " >> CFLAGS ?=3D -O -pipe >> .else >> CFLAGS ?=3D -O2 -pipe >> .endif >> >> So I used: >> >> # make -dA 2>2mmjnk.txt 1>1mmjnk.txt >> >> and looked for the first -pipe in 2mmjnk.txt. (It is also >> the first -O , in this case -O2 .) >> >> . . . >> Got 'C/mips(n32|64)?(el)?(hf)?/mips/:C/arm(v[67])?(eb)?/arm/:C/powerpc= (64|spe)/powerpc/:C/riscv64(sf)?/riscv/' from '${__TO_CPUARCH}'} >> Applying[MACHINE_ARCH] :C to "amd64" >> Modifier pattern: "mips(n32|64)?(el)?(hf)?" >> Modifier pattern: "mips" >> Result[MACHINE_ARCH] of :C is "amd64" >> Applying[MACHINE_ARCH] :C to "amd64" >> Modifier pattern: "arm(v[67])?(eb)?" >> Modifier pattern: "arm" >> Result[MACHINE_ARCH] of :C is "amd64" >> Applying[MACHINE_ARCH] :C to "amd64" >> Modifier pattern: "powerpc(64|spe)" >> Modifier pattern: "powerpc" >> Result[MACHINE_ARCH] of :C is "amd64" >> Applying[MACHINE_ARCH] :C to "amd64" >> Modifier pattern: "riscv64(sf)?" >> Modifier pattern: "riscv" >> Result[MACHINE_ARCH] of :C is "amd64" >> lhs =3D "amd64", rhs =3D "arm", op =3D =3D=3D >> Got 'C/mips(n32|64)?(el)?(hf)?/mips/:C/arm(v[67])?(eb)?/arm/:C/powerpc= (64|spe)/powerpc/:C/riscv64(sf)?/riscv/' from '${__TO_CPUARCH}'} >> Applying[MACHINE_ARCH] :C to "amd64" >> Modifier pattern: "mips(n32|64)?(el)?(hf)?" >> Modifier pattern: "mips" >> Result[MACHINE_ARCH] of :C is "amd64" >> Applying[MACHINE_ARCH] :C to "amd64" >> Modifier pattern: "arm(v[67])?(eb)?" >> Modifier pattern: "arm" >> Result[MACHINE_ARCH] of :C is "amd64" >> Applying[MACHINE_ARCH] :C to "amd64" >> Modifier pattern: "powerpc(64|spe)" >> Modifier pattern: "powerpc" >> Result[MACHINE_ARCH] of :C is "amd64" >> Applying[MACHINE_ARCH] :C to "amd64" >> Modifier pattern: "riscv64(sf)?" >> Modifier pattern: "riscv" >> Result[MACHINE_ARCH] of :C is "amd64" >> lhs =3D "amd64", rhs =3D "mips", op =3D =3D=3D >> ParseReadLine (172): 'CFLAGS ?=3D -O2 -pipe' >> Global:CFLAGS =3D -O2 -pipe >> >> It looks like the poudriere builds based on /nxb-bin/. . . >> See the amd64 MACHINE_ARCH in the context that shows: >> >> # uname -apKU >> FreeBSD FBSDamd64TR 13.0-CURRENT FreeBSD 13.0-CURRENT arm armv7 130000= 3 1300003 >=20 >=20 > # grep "MACHINE_.*ARCH" 2mmjnk.txt > ParseReadLine (17): 'MACHINE_CPUARCH=3D${MACHINE_ARCH:${__TO_CPUARCH}}'= > Global:MACHINE_CPUARCH =3D ${MACHINE_ARCH:${__TO_CPUARCH}} > Applying[MACHINE_ARCH] :C to "amd64" > Result[MACHINE_ARCH] of :C is "amd64" > Applying[MACHINE_ARCH] :C to "amd64" > Result[MACHINE_ARCH] of :C is "amd64" > Applying[MACHINE_ARCH] :C to "amd64" > Result[MACHINE_ARCH] of :C is "amd64" > Applying[MACHINE_ARCH] :C to "amd64" > Result[MACHINE_ARCH] of :C is "amd64" > Applying[MACHINE_ARCH] :C to "amd64" > Result[MACHINE_ARCH] of :C is "amd64" > Applying[MACHINE_ARCH] :C to "amd64" > Result[MACHINE_ARCH] of :C is "amd64" > Applying[MACHINE_ARCH] :C to "amd64" > Result[MACHINE_ARCH] of :C is "amd64" > Applying[MACHINE_ARCH] :C to "amd64" > Result[MACHINE_ARCH] of :C is "amd64" > ParseReadLine (12): 'MACHINE_ARCH=3Darmv7' > Global:MACHINE_ARCH =3D armv7 > ParseReadLine (13): 'ARCH=3D${MACHINE_ARCH}' > Global:ARCH =3D ${MACHINE_ARCH} > ParseReadLine (2): ' echo ${MACHINE_ARCH}' > ParseReadLine (3): ' echo ${MACHINE_CPUARCH}' > MACHINE_CPUARCH =3D ${MACHINE_ARCH:${__TO_CPUARCH}} > MACHINE_ARCH =3D armv7 > Applying[MACHINE_ARCH] :C to "armv7" > Result[MACHINE_ARCH] of :C is "armv7" > Applying[MACHINE_ARCH] :C to "armv7" > Result[MACHINE_ARCH] of :C is "arm" > Applying[MACHINE_ARCH] :C to "arm" > Result[MACHINE_ARCH] of :C is "arm" > Applying[MACHINE_ARCH] :C to "arm" > Result[MACHINE_ARCH] of :C is "arm" > MACHINE_CPUARCH =3D ${MACHINE_ARCH:${__TO_CPUARCH}} > MACHINE_ARCH =3D armv7 >=20 > Part of the issue is the ?=3D use from before the > explicit MACHINE_ARCH assignment blocks any later > ?=3D attempt form changing the result. >=20 > I'll note that any of the following executing before the > explicitly MACHINE_ARCH assignment would apparently get > the amd64 value from the /nxb-bin/. . . context, just like > the .if conditional in under investigation: >=20 > # grep -r "^\..*MACHINE_ARCH" /usr/src/Makefile* /usr/src/share/mk/ /us= r/ports/Mk/ | more > /usr/src/Makefile.inc1:.if ${MACHINE_ARCH} !=3D ${BUILD_ARCH} > /usr/src/Makefile.inc1:.warning "To cross-build, set TARGET_ARCH ${MACH= INE_ARCH} !=3D ${BUILD_ARCH} ." > /usr/src/Makefile.inc1:.if ${TARGET_ARCH} !=3D ${MACHINE_ARCH} || ${TAR= GET} !=3D ${MACHINE} || \ > /usr/src/Makefile.inc1:.if ${TARGET_ARCH} !=3D ${MACHINE_ARCH} || ${BUI= LD_WITH_STRICT_TMPPATH} !=3D 0 > /usr/src/Makefile.inc1:.elif ${TARGET_ARCH} !=3D ${MACHINE_ARCH} && ${M= K_ELFTOOLCHAIN_BOOTSTRAP} !=3D "no" > /usr/src/Makefile.inc1:.if ${TARGET} =3D=3D ${MACHINE} && ${TARGET_ARCH= } =3D=3D ${MACHINE_ARCH} > /usr/src/share/mk/bsd.arch.inc.mk:.elif exists(${.CURDIR}/Makefile.${MA= CHINE_ARCH}) > /usr/src/share/mk/bsd.arch.inc.mk:.include "Makefile.${MACHINE_ARCH}" > /usr/src/share/mk/local.meta.sys.mk:.if empty(MACHINE_ARCH) > /usr/src/share/mk/bsd.cpu.mk:. elif ${MACHINE_ARCH} =3D=3D "sparc64" > /usr/src/share/mk/bsd.cpu.mk:. elif ${MACHINE_ARCH} =3D=3D "powerpc" > /usr/src/share/mk/bsd.cpu.mk:. elif ${MACHINE_ARCH} =3D=3D "powerpcspe"= > /usr/src/share/mk/bsd.cpu.mk:. elif ${MACHINE_ARCH} =3D=3D "powerpc64" > /usr/src/share/mk/bsd.cpu.mk:. elif ${MACHINE_ARCH} =3D=3D "sparc64" > /usr/src/share/mk/bsd.cpu.mk:. elif ${MACHINE_ARCH} =3D=3D "powerpc" > /usr/src/share/mk/bsd.cpu.mk:. elif ${MACHINE_ARCH} =3D=3D "sparc64" > /usr/src/share/mk/bsd.cpu.mk:. if ${MACHINE_ARCH:Mmips*el*} !=3D "" > /usr/src/share/mk/bsd.cpu.mk:. if ${MACHINE_ARCH:Mmips64*} !=3D "" > /usr/src/share/mk/bsd.cpu.mk:. elif ${MACHINE_ARCH:Mmipsn32*} !=3D "" > /usr/src/share/mk/bsd.cpu.mk:. if ${MACHINE_ARCH:Mmips*hf} > /usr/src/share/mk/bsd.cpu.mk:. if ${MACHINE_ARCH:Marmv6*} !=3D "" > /usr/src/share/mk/bsd.cpu.mk:. if ${MACHINE_ARCH:Marmv7*} !=3D "" > /usr/src/share/mk/bsd.cpu.mk:. if ${MACHINE_ARCH:Marmv[67]*} =3D=3D "" > /usr/src/share/mk/bsd.cpu.mk:.if ${MACHINE_ARCH:Marmv[67]*} && defined(= CPUTYPE) && ${CPUTYPE:M*soft*} !=3D "" > /usr/src/share/mk/bsd.cpu.mk:.if ${MACHINE_ARCH} =3D=3D "powerpcspe" > /usr/src/share/mk/bsd.cpu.mk:.if ${MACHINE_ARCH:Mriscv*sf} > /usr/src/share/mk/bsd.endian.mk:.if ${MACHINE_ARCH} =3D=3D "aarch64" ||= \ > /usr/src/share/mk/bsd.endian.mk:.elif ${MACHINE_ARCH} =3D=3D "powerpc" = || \ > /usr/ports/Mk/Uses/gnustep.mk:.if ${MACHINE_ARCH} =3D=3D "i386" >=20 > (I have not tried to figure out which have a chance of > executing before the MACHINE_ARCH explicit assignment.) >=20 > =3D=3D=3D > Mark Millard > marklmi at yahoo.com > ( dsl-only.net went > away in early 2018-Mar) >=20 I think the real problem here is that Poudriere is setting MACHINE_ARCH in make.conf and sys.mk loads make.conf *after* checking MACHINE_CPUARCH (derived from MACHINE_ARCH) to determine CFLAGS; The .if is expanding MACHINE_CPUARCH before make.conf is included. We probably need a make-env.conf thing like src-env.conf to allow modifying sys.mk earlier. --=20 Regards, Bryan Drewery --RO7XczIVUU0ljauLlSiDkh0CQDB4YP7w2-- --90N5gpFGcAQVWn7rKvCV2DGjO56FU3eI3 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEE+Rc8ssOq6npcih8JNddxu25Gl88FAlvsz7UACgkQNddxu25G l88dyAf/RaFdpIr0d3M2HvikIjCHWM+Ye+H2ZLgtExLDtuObD2C6TH9UFQ48R+i6 s9H+JY6KnXvcwGJMchgqWQobIPbI+TZ/ulmE+oOFceLzhl0y2OJru6CLHh95+CKV dJVkNLeGvl0Y8IL1MGk5iQBBfiI+gDxCUppD+z5R1S4rXWwXGlynKQsrErCHqJkY chYS5zaIYUF4RMToURFdutqCRUYvHQ+Cizm0E8KcqF64hfMra63Q1knewYzeVB9r eoulh7pqYTfunZpXs+yJfWpicrC3SQTw+vY7qm5opT0Y80bR97+BjTNwZZqwQ9MB zVpjY54hBsh/4tjE2zyeCShBAYkRBQ== =mEKi -----END PGP SIGNATURE----- --90N5gpFGcAQVWn7rKvCV2DGjO56FU3eI3--