Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:127732 X-Original-To: internals@lists.php.net Delivered-To: internals@lists.php.net Received: from php-smtp4.php.net (php-smtp4.php.net [45.112.84.5]) by lists.php.net (Postfix) with ESMTPS id 998531A00BC for ; Fri, 20 Jun 2025 11:17:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1750418104; bh=Rv4cQlOy5aVNTUIjZatxv3h3KKO6CSfgjh/9/ygndxc=; h=Date:Subject:To:References:From:In-Reply-To:From; b=HeMvWlB8CLnd8M+Ihmlrisnq98f1EQGfp/1jGFN54mwEteN3BRQK0m512ANpceKFs SlV7rJmnlIJGE6nVQtbB8xjHcj8BtKSmcySb8zwqIw2p7evcqaPob0xpKF+tH8vbQO 1pNMrRrzzoMLcjEqPhDi6T0uGPuH4uaKIou1nxIGap0PS23xxjeNQaOZw2A15+2G/Q bNU01IP/xfzL1K9fgmOiQ6/QKasOECKz2weHowbQfrx98XvFSYuYiqRXdfS/DK/kgH PTuUNRcS5W1CDeSYSmt5jSosVeXQyIWjaSaZDz4RjJmDqcEa7STGDtmDf5nEmV01ec v6VV8q1b85vpQ== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id A07B5180056 for ; Fri, 20 Jun 2025 11:15:03 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-0.5 required=5.0 tests=BAYES_40,DKIM_INVALID, DKIM_SIGNED,DMARC_MISSING,HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_HELO_NONE, SPF_PASS autolearn=no autolearn_force=no version=4.0.1 X-Spam-Virus: Error (Cannot connect to unix socket '/var/run/clamav/clamd.ctl': connect: Connection refused) X-Envelope-From: Received: from wp160.webpack.hosteurope.de (wp160.webpack.hosteurope.de [80.237.132.167]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (prime256v1) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Fri, 20 Jun 2025 11:14:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mabe.berlin ; s=he194859; h=Content-Type:In-Reply-To:From:References:To:Subject: MIME-Version:Date:Message-ID:From:Sender:Reply-To:Subject:Date:Message-ID:To: Cc:MIME-Version:Content-Type:Content-Transfer-Encoding:Content-ID: Content-Description:In-Reply-To:References; bh=ORfeYdLNdHzFqkkL5RF17wc58DxlnIF3zLn4Pu3xuXw=; t=1750418220; x=1750850220; b=m+nGyXdMrInj9XzgKV2k73+zQAMVyYRhsQXR5kX4hiKODLPk9DsOY2EgWMcH1IaBdGkLfKc2b+Q c9ttkAmf6FjEXWNUSu15sxfbdQVpeymmEm71r3Cchb/j3PwMIpvc0QafKYfh466uzCQ+2WcNmVdIY 59AgieohJgRPgyTAiiejfCkY8CpngOV9NpMnow8/maXDUjobHQ/vqbS6ATAsobfGe4qRbWlxS2lxk c5JdF2Xc8gm2009/JmfQxewS0q0tmPPdHDyKT1b1fCTOH2BGCxq0Ep7wJ3sE4CR/kgcMu3fYjsgn4 u4VaSDinRkPQ2/54T8QxTMMjjuePCH3OtrwA==; Received: from [2a02:8109:b300:8f00:af78:9fdc:fa7b:87cf]; authenticated by wp160.webpack.hosteurope.de running ExIM with esmtpsa (TLS1.3:ECDHE_X25519__RSA_PSS_RSAE_SHA256__AES_128_GCM:128) id 1uSZjl-006BkM-0h; Fri, 20 Jun 2025 13:16:49 +0200 Message-ID: <5747e268-1176-4b87-ba58-2a767d45006b@mabe.berlin> Date: Fri, 20 Jun 2025 13:16:48 +0200 Precedence: bulk list-help: list-post: List-Id: internals.lists.php.net x-ms-reactions: disallow MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PHP-DEV] [RFC] Drop support for 32bit builds To: internals@lists.php.net References: <73D7B135-ABF8-4EFC-BF16-EA26A5BD1B7A@cmpct.info> Content-Language: en-US Autocrypt: addr=marc@mabe.berlin; keydata= xsBNBFby8roBCAD4qHjbk9+V3SmB5DfpkTtX58jYJ9VXVfF54MDoI0fQiYvKyrrghfO78alH c12RsEZxLH2F5kEfu8WO4wA4apg2gBnRRxqPj7krsct1ySOAdMrRVp8Wtaeaznpdcn2gJZyA MSI6LTzebT25N77ksvSrUi1BuCKyOa7SmYff3xGgOwYsHQlT5opMNGPCVegiPmO/K37anwts gj6L7RVtjXtp2Z3wAs6r3EmO318PL48xDLUgYMvEFAPJglth5FGH2En6n6HFIhxh43LqXQiN eHVjLjS2y8huNBswwc9ZVxk3ip5z/GCmpWnNkgGBOSJ7loJRsq2tOaU6yU8KWb5rhOoFABEB AAHNIU1hcmMgQmVubmV3aXR6IDxtYXJjQG1hYmUuYmVybGluPsLAeAQTAQIAIgUCVvLyugIb AwYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AACgkQOTar91O8iM6jzggAwvV6MqU/hcAI6ldp xVjucGz2J9cAWtva8GL+rm9zvEs7EENtamehJiZob/CTw50WiI/zsJzPblktpT0D2AFBEp9k P5/8CmCpZzxYPsxnLtsFM52fOBpO+aP0PSStBpJjndjBH7HPqKcTCXM3ZM+SL6lyRweAJR7G +JXIZbuUrbjB2lbGx3itNZ6TeXqqnE6KTXNKLEbNHfVdzE4sPDkmuZRo/M2h+gmeS1iQb29W BmhvL6czugCQI9rYl7C4Nci9wPii1lTYyfCWQfQKID4/F2HiOv+N/vDMCK1xV8TUeCy8w4X+ nYj+wDog046ki9lUM60oPij6WoSJLqfsXr1kNc7ATQRW8vK6AQgAq7QYLB1Dz+8RSi5AGJP1 tOFQXtcxyOhNVQZsI1mCQiHay4wteQ+5m4EOUuR+FrFIlnbSrPdTkKD2wvQDHVqpZivThBpJ vara/ick0wi2R3dasu1sPMu1P6h1EwUsydhviNJB07aLfPAWD6eoqmGTd8236znIIq7mbnNp OnxIQxviTyELUekrNw38uQtVzR6XZv9PAThA2o1J1JZID7QUpKcNyo9ebYlwxyS+xzhA4DLD qfD6O5sKoKvxEf2fIZeP0ETPpHNYk0WiWnmNoPy8eEY07LriYALVidBwPBcxus0wGoKf8Nun y2aE13SHmj0ioBI1bXMGJx3hEbvzXK6WrwARAQABwsBfBBgBAgAJBQJW8vK6AhsMAAoJEDk2 q/dTvIjOkowIAI70P8U4j3eqyK/7x1bnCZZRcpwZ1aH+LR1yMKTINo9NDqlOBWQTLT69YMfV 4UN+nTSiD/uLw1fSeLSzBwpoalCMLPVOX/d3Mq5JtL5cKtWUTIVf3Vb7VbN4Rvb8HgWjeSnM 1PiG9yQBmLKI68sG/gdgvA/xANdUatkDgG0yj8PCdt+Vy4EblXbIAXZXJ6eRugSKowTjst7i HXKOJxivomHFcmqmkiqjwGTGx/jrhbDtEpPDRk+U9W45D4CbUcyPR6lMSrje5JPGQDv/45M5 wPe286YelBjnb0cWRJpA7GZCWDKZOsQ2H6cCRBi8i4m+vfRk7GLA536XnmvWxKFVP9U= In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------JCYeLVLQd0M50UWVRyU39eQE" X-bounce-key: webpack.hosteurope.de;marc@mabe.berlin;1750418220;84a4c44f; X-HE-SMSGID: 1uSZjl-006BkM-0h From: marc@mabe.berlin (Marc Bennewitz) This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------JCYeLVLQd0M50UWVRyU39eQE Content-Type: multipart/mixed; boundary="------------bsr3KxAD7YnDTzlgjF8wc6nA"; protected-headers="v1" From: Marc Bennewitz To: internals@lists.php.net Message-ID: <5747e268-1176-4b87-ba58-2a767d45006b@mabe.berlin> Subject: Re: [PHP-DEV] [RFC] Drop support for 32bit builds References: <73D7B135-ABF8-4EFC-BF16-EA26A5BD1B7A@cmpct.info> In-Reply-To: --------------bsr3KxAD7YnDTzlgjF8wc6nA Content-Type: multipart/mixed; boundary="------------HJqWwMgW61cneDeTeXMtAUFe" --------------HJqWwMgW61cneDeTeXMtAUFe Content-Type: multipart/alternative; boundary="------------qUDWmzydI3i9qSv2ftYnlgz7" --------------qUDWmzydI3i9qSv2ftYnlgz7 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 DQpPbiAxOS4wNi4yNSAxODo1NSwgSGFucyBIZW5yaWsgQmVyZ2FuIHdyb3RlOg0KPg0KPiBP biBUaHUsIEp1biAxOSwgMjAyNSwgMTg6MjQgQmVuIFJhbXNleSA8cmFtc2V5QHBocC5uZXQ+ IHdyb3RlOg0KPg0KPiAgICAgPiBPbiBKdW4gMTksIDIwMjUsIGF0IDExOjA4LCBDYWx2aW4g QnVja2xleSA8Y2FsdmluQGNtcGN0LmluZm8+IHdyb3RlOg0KPiAgICAgPg0KPiAgICAgPiBP biBKdW4gMTksIDIwMjUsIGF0IDExOjA44oCvQU0sIE1hcmMgQmVubmV3aXR6IDxtYXJjQG1h YmUuYmVybGluPg0KPiAgICAgd3JvdGU6DQo+ICAgICA+Pg0KPiAgICAgPj4gSGksDQo+ICAg ICA+Pg0KPiAgICAgPj4gRHVyaW5nIHRoZSBkaXNjdXNzaW9uIGFib3V0IHRoZSB5ZWFyIDIw MzggaXNzdWUgaXQgdHVybmVkIG91dA0KPiAgICAgdGhhdCBtYXliZSBpdCdzIHRpbWUgdG8g ZHJvcCBzdXBwb3J0IGZvciAzMi1iaXQgb2YgUEhQIGNvbXBsZXRlbHkuDQo+ICAgICA+Pg0K PiAgICAgPj4gQmFzZWQgb24gdGhhdCBJIGhhdmUgY3JlYXRlZCBhbiBSRkMgdG8gZGVwcmVj YXRlIDMyLWJpdCBidWlsZA0KPiAgICAgaW4gOC5uZXh0IGFuZCBkcm9wIHN1cHBvcnQgZm9y IGl0IGluIDkuDQo+ICAgICA+Pg0KPiAgICAgPj4gUkZDOiBodHRwczovL3dpa2kucGhwLm5l dC9yZmMvZHJvcF8zMmJpdF9zdXBwb3J0DQo+ICAgICA+DQo+ICAgICA+IEkgdGhpbmsgdGhl IGJpZ2dlc3QgYXJndW1lbnRzIGFnYWluc3QgdGhpcyB3b3VsZCBiZToNCj4gICAgID4NCj4g ICAgID4gLSBlbWJlZGRlZCBzeXN0ZW1zOyB0aGluayBvZiBQSFAgaW4gdXNlIGZvciBpLmUu IHJvdXRlciB3ZWIgVUlzLg0KPiAgICAgV2hpbGUgSQ0KPiAgICAgPiBzdXNwZWN0IGEgbG90 IG9mIHRoZXNlIGFyZSBnb2luZyB0byBiZSBpLmUuIEFBcmNoNjQvUlY2NCBpbiB0aGUNCj4g ICAgIGZ1dHVyZSwNCj4gICAgID4gdGhlcmUgbWlnaHQgYmUgYSBsb25nIHRhaWwgb2YgZXhp c3Rpbmcgc3lzdGVtcy4gT2YgY291cnNlLCBob3cgbWFueQ0KPiAgICAgPiB3b3VsZCB1cGdy YWRlIHRvIFBIUCA5Pw0KPiAgICAgPg0KPiAgICAgPiAtIFdlYkFzc2VtYmx5OyBJIGRvbid0 IGtub3cgaG93IHdpZGVzcHJlYWQgdGhlIE1lbW9yeTY0IHByb3Bvc2FsDQo+ICAgICBpcyB5 ZXQuDQo+ICAgICA+IFdlJ3JlIHVzaW5nIFdlYkFzc2VtYmx5IGluIHRoZSBkb2NzIHBhZ2Vz IGZvciBydW5uYWJsZSBleGFtcGxlcy4NCj4gICAgID4NCj4gICAgID4gQW5kIHNvbWUgbmlj aGUgY2FzZXMgbGlrZSBpLmUuIGlTSCAod2hpY2ggZW11bGF0ZXMgeDg2LTMyIG9uIGlPUyku DQo+ICAgICA+DQo+ICAgICA+IFRoZSBvdGhlciBvcHRpb25zIGluY2x1ZGUgbWFraW5nIHpl bmRfbG9uZyBhbHdheXMgNjQtYml0IGFuZA0KPiAgICAgYWNjZXB0IHRoZQ0KPiAgICAgPiBw ZXJmb3JtYW5jZSBwZW5hbHR5IGZvciAzMi1iaXQsIG9yIG1ha2luZyAzMi1iaXQgYmVzdC1l ZmZvcnQNCj4gICAgIHJhdGhlciB0aGFuDQo+ICAgICA+IHByb3ZpZGluZyBhbnkgZ3VhcmFu dGVlcy4NCj4NCj4NCj4gICAgIExhc3QgbmlnaHQsIEkgd2FzIGdpdmluZyBzb21lIHRob3Vn aHQgdG8gcmV2aXZpbmcgQW5kcmVh4oCZcyBCaWcNCj4gICAgIEludGVnZXIgUkZDW14xXS4g VGhpcyBpcyBzb21ldGhpbmcgSeKAmXZlIHdhbnRlZCBmb3IgYSBsb25nIHRpbWUNCj4gICAg IChlc3BlY2lhbGx5IGZvciBteSByYW1zZXkvdXVpZCBsaWJyYXJ5LCBhbW9uZyBvdGhlciB0 aGluZ3MpLg0KPg0KPiAgICAgQW5kcmVhIGhhZCBhIHdvcmstaW4tcHJvZ3Jlc3MgUFJbXjJd LiBJ4oCZbSBub3Qgc3VyZSB0aGUgY3VycmVudA0KPiAgICAgc3RhdGUgb2YgaXQuIEl04oCZ cyBmcm9tIDIwMTQgYW5kIHdhcyBvcmlnaW5hbGx5IHdyaXR0ZW4gZm9yIHBocG5nLg0KPiAg ICAgSSBoYWQgcGxhbm5lZCB0byBzdGFydCB0ZWFzaW5nIG91dCBiaXRzIG9mIGl0IGludG8g YSBuZXcgYnJhbmNoDQo+ICAgICBiYXNlZCBvbiB0aGUgY3VycmVudCBtYXN0ZXIgYnJhbmNo IHRvIHNlZSBob3cgZmFyIEkgY291bGQgZ2V0IHdpdGgNCj4gICAgIGl0LiBJIHdvdWxkbuKA mXQgbWluZCBzb21lIGhlbHAgd2l0aCB0aGF0LCBpZiBhbnlvbmXigJlzIGludGVyZXN0ZWQu IDotKQ0KPg0KPiAgICAgSWYgd2UgYXJlIGFibGUgdG8gZmluaXNoIHdoYXQgQW5kcmVhIHN0 YXJ0ZWQsIHRoZW4gd2Ugd291bGQgbm90DQo+ICAgICBuZWVkIHRvIGRyb3Agc3VwcG9ydCBm b3IgMzJiaXQgYnVpbGRzLg0KPg0KPiAgICAgQ2hlZXJzLA0KPiAgICAgQmVuDQo+DQo+DQo+ ICAgICBbXjFdOiBodHRwczovL3dpa2kucGhwLm5ldC9yZmMvYmlnaW50DQo+ICAgICBbXjJd OiBodHRwczovL2dpdGh1Yi5jb20vcGhwL3BocC1zcmMvcHVsbC84NzYNCj4NCj4NCj4NCj4N Cj4gU21hbGxlc3QgcmFtbm9kZS5jb20gPGh0dHA6Ly9yYW1ub2RlLmNvbT4gVlBTIGhhcyA1 MTJNQiByYW0uIEkgd291bGQgDQo+IHJ1biAzMmJpdCBQSFAgb24gYSA1MTJtYiByYW0gVlBT LiBJJ20gbm90IGxvbmdlciBhIHJhbW5vZGUgY3VzdG9tZXIsIA0KPiBidXQgSSB1c2VkIHRv IGJlLg0KPiBJIGZvciBvbmUgd291bGQgYmUgc2FkIHRvIHNlZSAzMmJpdCBQSFAgZ28uDQoN CkkgaGF2ZSBkb25lIGEgcXVpY2sgdGVzdCBvbiBjdXJyZW50IG1hc3RlciB3aXRoIFN5bWZv bnkgOg0KDQpXaXRob3V0IE9QQ2FjaGUNCngzMjogbWVtOiAxNjc3NzIxNmIsIHQ6IDAuMTUw MTc5MTQ3NzIwMzRzDQp4NjQ6IG1lbTogMjMwNjg2NzJiLCB0OiAwLjA3MjkyNjk5ODEzODQy OHMNCg0KV2l0aCBPUENhY2hlDQp4MzI6IG1lbTogNDE5NDMwNGIsIHQ6IDAuMDEwMzM4Nzgz MjY0MTZzDQp4NjQ6IG1lbTogNDE5NDMwNGIsIHQ6IDAuMDA4MDU4MDcxMTM2NDc0NnMNCg0K QXMgeW91IGNhbiBzZWUsIHdpdGggb3BjYWNoZSBlbmFibGVkIGl0J3MgdGFraW5nIHRoZSBz YW1lIGFtb3VudCBvZiANCm1lbW9yeS4gKEkgZG9uJ3Qga25vdyB3aHkgLi4uIGRpZCBtb3N0 bHkgdGhlIHNhbWUgc2V0dXAgYXMgdGhlIA0KY29uZmlndXJlLXgzMiBHSCBhY3Rpb24pDQoN Cg0K --------------qUDWmzydI3i9qSv2ftYnlgz7 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable


On 19.06.25 18:55, Hans Henrik Bergan wrote:

On Thu, Jun 19, 2025, 18:24 Ben Ramsey <ramsey@php.net> wrote:

&= gt; On Jun 19, 2025, at 11:08, Calvin Buckley <= calvin@cmpct.info> wrote:
>
> On Jun 19, 2025, at 11:08=E2=80=AFAM, Marc Bennewitz <marc@mabe.berlin> wrote:
>>
>> Hi,
>>
>> During the discussion about the year 2038 issue it turned out that maybe it's time to drop support for 32-bit of PHP completely.
>>
>> Based on that I have created an RFC to deprecate 32-bit build in 8.next and drop support for it in 9.
>>
>> RFC: = https://wiki.php.net/rfc/drop_32bit_support
>
> I think the biggest arguments against this would be: >
> - embedded systems; think of PHP in use for i.e. router web UIs. While I
> suspect a lot of these are going to be i.e. AArch64/RV64 in the future,
> there might be a long tail of existing systems. Of course, how many
> would upgrade to PHP 9?
>
> - WebAssembly; I don't know how widespread the Memory64 proposal is yet.
> We're using WebAssembly in the docs pages for runnable examples.
>
> And some niche cases like i.e. iSH (which emulates x86-32 on iOS).
>
> The other options include making zend_long always 64-bit and accept the
> performance penalty for 32-bit, or making 32-bit best-effort rather than
> providing any guarantees.


Last night, I was giving some thought to reviving Andrea=E2= =80=99s Big Integer RFC[^1]. This is something I=E2=80=99ve wanted = for a long time (especially for my ramsey/uuid library, among other things).

Andrea had a work-in-progress PR[^2]. I=E2=80=99m not sure = the current state of it. It=E2=80=99s from 2014 and was origina= lly written for phpng. I had planned to start teasing out bits of it into a new branch based on the current master branch to see how far I could get with it. I wouldn=E2=80=99t mind= some help with that, if anyone=E2=80=99s interested. :-)

If we are able to finish what Andrea started, then we would not need to drop support for 32bit builds.

Cheers,
Ben


[^1]: = https://wiki.php.net/rfc/bigint
[^2]: = https://github.com/php/php-src/pull/876



Smallest ramnode.com VPS has 512MB ram. I= would run 32bit PHP on a 512mb ram VPS. I'm not longer a ramnode customer, but I used to be.=C2=A0
I for one would be sad to see 32bit PHP go.

I have done a quick test on current master with Symfony :

Without OPCache
x32: mem: 16777216b, t: 0.15017914772034s
x64: mem: 23068672b, t: 0.072926998138428s

With OPCache
x32: mem: 4194304b, t: 0.01033878326416s
x64: mem: 4194304b, t: 0.0080580711364746s

As you can see, with opcache enabled it's taking the same amount of memory. (I don't know why ... did mostly the same setup as the configure-x32 GH action)


--------------qUDWmzydI3i9qSv2ftYnlgz7-- --------------HJqWwMgW61cneDeTeXMtAUFe Content-Type: application/pgp-keys; name="OpenPGP_0x3936ABF753BC88CE.asc" Content-Disposition: attachment; filename="OpenPGP_0x3936ABF753BC88CE.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFby8roBCAD4qHjbk9+V3SmB5DfpkTtX58jYJ9VXVfF54MDoI0fQiYvKyrrg hfO78alHc12RsEZxLH2F5kEfu8WO4wA4apg2gBnRRxqPj7krsct1ySOAdMrRVp8W taeaznpdcn2gJZyAMSI6LTzebT25N77ksvSrUi1BuCKyOa7SmYff3xGgOwYsHQlT 5opMNGPCVegiPmO/K37anwtsgj6L7RVtjXtp2Z3wAs6r3EmO318PL48xDLUgYMvE FAPJglth5FGH2En6n6HFIhxh43LqXQiNeHVjLjS2y8huNBswwc9ZVxk3ip5z/GCm pWnNkgGBOSJ7loJRsq2tOaU6yU8KWb5rhOoFABEBAAHNIU1hcmMgQmVubmV3aXR6 IDxtYXJjQG1hYmUuYmVybGluPsLAeAQTAQIAIgUCVvLyugIbAwYLCQgHAwIGFQgC CQoLBBYCAwECHgECF4AACgkQOTar91O8iM6jzggAwvV6MqU/hcAI6ldpxVjucGz2 J9cAWtva8GL+rm9zvEs7EENtamehJiZob/CTw50WiI/zsJzPblktpT0D2AFBEp9k P5/8CmCpZzxYPsxnLtsFM52fOBpO+aP0PSStBpJjndjBH7HPqKcTCXM3ZM+SL6ly RweAJR7G+JXIZbuUrbjB2lbGx3itNZ6TeXqqnE6KTXNKLEbNHfVdzE4sPDkmuZRo /M2h+gmeS1iQb29WBmhvL6czugCQI9rYl7C4Nci9wPii1lTYyfCWQfQKID4/F2Hi Ov+N/vDMCK1xV8TUeCy8w4X+nYj+wDog046ki9lUM60oPij6WoSJLqfsXr1kNc7A TQRW8vK6AQgAq7QYLB1Dz+8RSi5AGJP1tOFQXtcxyOhNVQZsI1mCQiHay4wteQ+5 m4EOUuR+FrFIlnbSrPdTkKD2wvQDHVqpZivThBpJvara/ick0wi2R3dasu1sPMu1 P6h1EwUsydhviNJB07aLfPAWD6eoqmGTd8236znIIq7mbnNpOnxIQxviTyELUekr Nw38uQtVzR6XZv9PAThA2o1J1JZID7QUpKcNyo9ebYlwxyS+xzhA4DLDqfD6O5sK oKvxEf2fIZeP0ETPpHNYk0WiWnmNoPy8eEY07LriYALVidBwPBcxus0wGoKf8Nun y2aE13SHmj0ioBI1bXMGJx3hEbvzXK6WrwARAQABwsBfBBgBAgAJBQJW8vK6AhsM AAoJEDk2q/dTvIjOkowIAI70P8U4j3eqyK/7x1bnCZZRcpwZ1aH+LR1yMKTINo9N DqlOBWQTLT69YMfV4UN+nTSiD/uLw1fSeLSzBwpoalCMLPVOX/d3Mq5JtL5cKtWU TIVf3Vb7VbN4Rvb8HgWjeSnM1PiG9yQBmLKI68sG/gdgvA/xANdUatkDgG0yj8PC dt+Vy4EblXbIAXZXJ6eRugSKowTjst7iHXKOJxivomHFcmqmkiqjwGTGx/jrhbDt EpPDRk+U9W45D4CbUcyPR6lMSrje5JPGQDv/45M5wPe286YelBjnb0cWRJpA7GZC WDKZOsQ2H6cCRBi8i4m+vfRk7GLA536XnmvWxKFVP9U=3D =3Doi2m -----END PGP PUBLIC KEY BLOCK----- --------------HJqWwMgW61cneDeTeXMtAUFe-- --------------bsr3KxAD7YnDTzlgjF8wc6nA-- --------------JCYeLVLQd0M50UWVRyU39eQE Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature.asc" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEENJIbKB0SAX2RmUKbOTar91O8iM4FAmhVQyAFAwAAAAAACgkQOTar91O8iM5H ZAgAlyHoLu15KimfWkJ7WxsDZ6hs7xRZ/eka90x8kjYRefR9nT12fZh+QHvchryAXyqzaZ1ee+BP WQsRChmRdGSWbhO3Z0CS04Ryx1bpfn0oBQNKMNme7aMB52NQ6bDn1uyLLf4HmEgB5VWKzowCYL6/ PuqCx0uIMfMY+GZE+uOSSWnzMXrkg1iZQTgw+XOrFEIeNlS9AHkQtdvRh+tGOziNzkdU4iyq3MCk 1lWtm8UTtVibNU3OmQqiVlHo5bFL+K3EvpSaipN54LPrnNOTMJRJvyxSHSJwGfiaa1cU1d94x+dP On4hJd3OJvdvI33Nzl8LyplzVtblQhb6URIqa/xa1g== =5biQ -----END PGP SIGNATURE----- --------------JCYeLVLQd0M50UWVRyU39eQE--