Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1s7QBp-005dW7-Pf for pgsql-hackers@arkaria.postgresql.org; Thu, 16 May 2024 01:45:51 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1s7QBp-00Conw-Gw for pgsql-hackers@arkaria.postgresql.org; Thu, 16 May 2024 01:45:49 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1s7QBp-00Col9-3w for pgsql-hackers@lists.postgresql.org; Thu, 16 May 2024 01:45:49 +0000 Received: from meldrar.postgresql.org ([2a02:c0:301:0:ffff::31]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1s7QBg-000Spi-Mf for pgsql-hackers@lists.postgresql.org; Thu, 16 May 2024 01:45:48 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=postgresql.org; s=20171124; h=Content-Type:Subject:From:To:MIME-Version: Date:Message-ID:Sender:Reply-To:Cc:Content-Transfer-Encoding:Content-ID: Content-Description:In-Reply-To:References; bh=iZ4/R4pBSIs3+f3ShIAtQZdc0kJHND3QNv7b/qiTx4M=; b=B1vu9s35p2x0Yl0lvkHkfGeegc KRVdn5T/EqtSl2lNmLfyqgfBHnHo8Q/aIw7m6YXsMusBO5ldTkA7hCmdoFLr3uprZ7/GxYBr/a2rV bsljXa1U48SX3XfcBm7UIsypp06TE9Uzeayv6VSdYWdQulFvttqsJc+XlQ4DX5Z0p6L4SoEvVy0lt FtZJoqvccoW8BdW8+In4yG6rVouYoj6MhnW8Mja0kutwxGZ2q1BqmALWRFbbJa5Cg7v34o4YX8wE3 aow74zefwPuJzRM9g69wMX6xInxGz5tannhvtQRPqzh8jUxBdSxdDM7E/SOqVOqKpQpLyuUTLWfKG SJ31LqLQ==; Received: from [52.119.84.39] (helo=[192.168.88.172]) by meldrar.postgresql.org with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1s7QBd-0010Us-Gg for pgsql-hackers@lists.postgresql.org; Thu, 16 May 2024 01:45:41 +0000 Message-ID: <6d008414-3da4-4049-a585-0aa20da1bbce@postgresql.org> Date: Wed, 15 May 2024 21:45:35 -0400 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Content-Language: en-US To: PostgreSQL Hackers From: "Jonathan S. Katz" Subject: PostgreSQL 17 Beta 1 release announcement draft Autocrypt: addr=jkatz@postgresql.org; keydata= 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 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------uoYm2vMF6ZZfdKrFRawG4jv3" X-Host-Lookup-Failed: Reverse DNS lookup failed for 52.119.84.39 (failed) List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------uoYm2vMF6ZZfdKrFRawG4jv3 Content-Type: multipart/mixed; boundary="------------9XA0zvzHi0GlBNU32PuTEFED"; protected-headers="v1" From: "Jonathan S. Katz" To: PostgreSQL Hackers Message-ID: <6d008414-3da4-4049-a585-0aa20da1bbce@postgresql.org> Subject: PostgreSQL 17 Beta 1 release announcement draft --------------9XA0zvzHi0GlBNU32PuTEFED Content-Type: multipart/mixed; boundary="------------Q4rI4epbT9Vg1u0ZOqXud4mi" --------------Q4rI4epbT9Vg1u0ZOqXud4mi Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 SGksDQoNCkF0dGFjaGVkIGlzIGEgY29weSBvZiB0aGUgUG9zdGdyZVNRTCAxNyBCZXRhIDEg cmVsZWFzZSBhbm5vdW5jZW1lbnQgDQpkcmFmdC4gVGhpcyBjb250YWlucyBhIHVzZXItZmFj aW5nIHN1bW1hcnkgb2Ygc29tZSBvZiB0aGUgZmVhdHVyZXMgdGhhdCANCndpbGwgYmUgYXZh aWxhYmxlIGluIHRoZSBCZXRhLCBhcyB3ZWxsIGFzIGEgY2FsbCB0byB0ZXN0LiBJJ3ZlIG1h ZGUgYW4gDQplZmZvcnQgdG8gZ3JvdXAgdGhlbSBsb2dpY2FsbHkgYXJvdW5kIHRoZSBkaWZm ZXJlbnQgd29ya2Zsb3dzIHRoZXkgYWZmZWN0Lg0KDQpBIGZldyBub3RlczoNCg0KKiBUaGUg c2VjdGlvbiB3aXRoIHRoZSBmZWF0dXJlcyBpcyBub3QgODAtY2hhciBkZWxpbWl0ZWQuIEkg d2lsbCBkbyB0aGF0IA0KYmVmb3JlIHRoZSBmaW5hbCBjb3B5DQoNCiogVGhlcmUgaXMgYW4g ZXhwbGljaXQgY2FsbG91dCB0aGF0IHdlJ3ZlIGFkZGVkIGluIHRoZSBTUUwvSlNPTiBmZWF0 dXJlcyANCnRoYXQgd2VyZSBwcmV2aW91c2x5IHJldmVydGVkIGluIFBHMTUuIEkgd2FudCB0 byBlbnN1cmUgd2UncmUgDQp0cmFuc3BhcmVudCBhYm91dCB0aGF0LCBidXQgYWxzbyB1c2Ug aXQgYXMgYSBob29rIHRvIGdldCBwZW9wbGUgdGVzdGluZy4NCg0KV2hlbiByZXZpZXdpbmc6 DQoNCiogUGxlYXNlIGNoZWNrIGZvciBjb3JyZWN0bmVzcyBvZiBmZWF0dXJlIGRlc2NyaXB0 aW9ucywga2VlcGluZyBpbiBtaW5kIA0KdGhpcyBpcyB0YXJnZXRlZCBmb3IgYSBnZW5lcmFs IGF1ZGllbmNlDQoNCiogUGxlYXNlIGluZGljYXRlIGlmIHlvdSBiZWxpZXZlIHRoZXJlJ3Mg YSBub3RhYmxlIG9taXNzaW9uLCBvciBpZiB3ZSANCnNob3VsZCBvbWl0IGFueSBvZiB0aGVz ZSBjYWxsb3V0cw0KDQoqIFBsZWFzZSBpbmRpY2F0ZSBpZiBhIGRlc2NyaXB0aW9uIGlzIGNv bmZ1c2luZyAtIEknbSBoYXBweSB0byByZXdyaXRlIA0KdG8gZW5zdXJlIGl0J3MgY2xlYXJl ci4NCg0KUGxlYXNlIHByb3ZpZGUgZmVlZGJhY2sgbm8gbGF0ZXIgdGhhbiBXZWQgMjAyNC0w NS0yMiAxODowMCBVVEMuIEFzIHRoZSANCmJldGEgcmVsZWFzZSB0YWtlcyBzb21lIGV4dHJh IGVmZm9ydCwgSSB3YW50IHRvIGVuc3VyZSBhbGwgY2hhbmdlcyBhcmUgDQppbiB3aXRoIHRp bWUgdG8gc3BhcmUgYmVmb3JlIHJlbGVhc2UgZGF5Lg0KDQpUaGFua3MsDQoNCkpvbmF0aGFu DQo= --------------Q4rI4epbT9Vg1u0ZOqXud4mi Content-Type: text/plain; charset=UTF-8; name="17beta1.md" Content-Disposition: attachment; filename="17beta1.md" Content-Transfer-Encoding: base64 VGhlIFBvc3RncmVTUUwgR2xvYmFsIERldmVsb3BtZW50IEdyb3VwIGFubm91bmNlcyB0aGF0 IHRoZSBmaXJzdCBiZXRhIHJlbGVhc2Ugb2YKUG9zdGdyZVNRTCAxNyBpcyBub3cgW2F2YWls YWJsZSBmb3IgZG93bmxvYWRdKGh0dHBzOi8vd3d3LnBvc3RncmVzcWwub3JnL2Rvd25sb2Fk LykuClRoaXMgcmVsZWFzZSBjb250YWlucyBwcmV2aWV3cyBvZiBhbGwgZmVhdHVyZXMgdGhh dCB3aWxsIGJlIGF2YWlsYWJsZSB3aGVuClBvc3RncmVTUUwgMTcgaXMgbWFkZSBnZW5lcmFs bHkgYXZhaWxhYmxlLCB0aG91Z2ggc29tZSBkZXRhaWxzIG9mIHRoZSByZWxlYXNlCmNhbiBj aGFuZ2UgZHVyaW5nIHRoZSBiZXRhIHBlcmlvZC4KCllvdSBjYW4gZmluZCBpbmZvcm1hdGlv biBhYm91dCBhbGwgb2YgdGhlIGZlYXR1cmVzIGFuZCBjaGFuZ2VzIGZvdW5kIGluClBvc3Rn cmVTUUwgMTcgaW4gdGhlIFtyZWxlYXNlIG5vdGVzXShodHRwczovL3d3dy5wb3N0Z3Jlc3Fs Lm9yZy9kb2NzLzE3L3JlbGVhc2UtMTcuaHRtbCk6CgogIFtodHRwczovL3d3dy5wb3N0Z3Jl c3FsLm9yZy9kb2NzLzE3L3JlbGVhc2UtMTcuaHRtbF0oaHR0cHM6Ly93d3cucG9zdGdyZXNx bC5vcmcvZG9jcy8xNy9yZWxlYXNlLTE3Lmh0bWwpCgpJbiB0aGUgc3Bpcml0IG9mIHRoZSBv cGVuIHNvdXJjZSBQb3N0Z3JlU1FMIGNvbW11bml0eSwgd2Ugc3Ryb25nbHkgZW5jb3VyYWdl IHlvdQp0byB0ZXN0IHRoZSBuZXcgZmVhdHVyZXMgb2YgUG9zdGdyZVNRTCAxNyBvbiB5b3Vy IHN5c3RlbXMgdG8gaGVscCB1cyBlbGltaW5hdGUKYnVncyBvciBvdGhlciBpc3N1ZXMgdGhh dCBtYXkgZXhpc3QuIFdoaWxlIHdlIGRvIG5vdCBhZHZpc2UgeW91IHRvIHJ1bgpQb3N0Z3Jl U1FMIDE3IEJldGEgMSBpbiBwcm9kdWN0aW9uIGVudmlyb25tZW50cywgd2UgZW5jb3VyYWdl IHlvdSB0byBmaW5kIHdheXMKdG8gcnVuIHlvdXIgdHlwaWNhbCBhcHBsaWNhdGlvbiB3b3Jr bG9hZHMgYWdhaW5zdCB0aGlzIGJldGEgcmVsZWFzZS4KCllvdXIgdGVzdGluZyBhbmQgZmVl ZGJhY2sgd2lsbCBoZWxwIHRoZSBjb21tdW5pdHkgZW5zdXJlIHRoYXQgdGhlIFBvc3RncmVT UUwgMTcKcmVsZWFzZSB1cGhvbGRzIG91ciBzdGFuZGFyZHMgb2YgZGVsaXZlcmluZyBhIHN0 YWJsZSwgcmVsaWFibGUgcmVsZWFzZSBvZiB0aGUKd29ybGQncyBtb3N0IGFkdmFuY2VkIG9w ZW4gc291cmNlIHJlbGF0aW9uYWwgZGF0YWJhc2UuIFBsZWFzZSByZWFkIG1vcmUgYWJvdXQK b3VyIFtiZXRhIHRlc3RpbmcgcHJvY2Vzc10oaHR0cHM6Ly93d3cucG9zdGdyZXNxbC5vcmcv ZGV2ZWxvcGVyL2JldGEvKSBhbmQgaG93CnlvdSBjYW4gY29udHJpYnV0ZToKCiAgW2h0dHBz Oi8vd3d3LnBvc3RncmVzcWwub3JnL2RldmVsb3Blci9iZXRhL10oaHR0cHM6Ly93d3cucG9z dGdyZXNxbC5vcmcvZGV2ZWxvcGVyL2JldGEvKQoKUG9zdGdyZVNRTCAxNyBGZWF0dXJlIEhp Z2hsaWdodHMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiMjIyBRdWVyeSBh bmQgT3BlcmF0aW9uYWwgUGVyZm9ybWFuY2UgSW1wcm92ZW1lbnRzCgpQb3N0Z3JlU1FMIDE3 IGJ1aWxkcyBvbiByZWNlbnQgcmVsZWFzZXMgYW5kIGNvbnRpbnVlcyB0byBpbXByb3ZlIHBl cmZvcm1hbmNlIGFjcm9zcyB0aGUgZW50aXJlIHN5c3RlbS4gW1ZhY3V1bV0oaHR0cHM6Ly93 d3cucG9zdGdyZXNxbC5vcmcvZG9jcy8xNy9yb3V0aW5lLXZhY3V1bWluZy5odG1sKSwgdGhl IFBvc3RncmVTUUwgcHJvY2VzcyByZXNwb25zaWJsZSBmb3IgcmVjbGFpbWluZyBzdG9yYWdl LCBoYXMgYSBuZXcgaW50ZXJuYWwgZGF0YSBzdHJ1Y3R1cmUgdGhhdCByZWR1Y2VzIG1lbW9y eSB1c2FnZSBhbmQgaGFzIHNob3duIHVwIHRvIGEgNnggaW1wcm92ZW1lbnQgaW4gb3ZlcmFs bCB0aW1lIHRvIGNvbXBsZXRlIGl0cyB3b3JrLiBBZGRpdGlvbmFsbHksIHRoZSB2YWN1dW0g cHJvY2VzcyBubyBsb25nZXIgaGFzIGEgYDFHQmAgbGltaXQgb24gdGhlIG1lbW9yeSBpdCBj YW4gdXNlIChjb250cm9sbGVkIGJ5IFtgbWFpbnRlbmFuY2Vfd29ya19tZW1gXShodHRwczov L3d3dy5wb3N0Z3Jlc3FsLm9yZy9kb2NzLzE3L3J1bnRpbWUtY29uZmlnLXJlc291cmNlLmh0 bWwjR1VDLU1BSU5URU5BTkNFLVdPUkstTUVNKSksIGdpdmluZyB5b3UgdGhlIG9wdGlvbiB0 byBhcHBseSBtb3JlIHJlc291cmNlcyB0byB2YWN1dW1pbmcuCgpQb3N0Z3JlU1FMIDE3IGNh biBub3cgdXNlIGJvdGggcGxhbm5lciBzdGF0aXN0aWNzIGFuZCB0aGUgc29ydCBvcmRlciBv ZiBbY29tbW9uIHRhYmxlIGV4cHJlc3Npb25zXShodHRwczovL3d3dy5wb3N0Z3Jlc3FsLm9y Zy9kb2NzLzE3L3F1ZXJpZXMtd2l0aC5odG1sKSAoYWthIFtgV0lUSGAgcXVlcmllc10oaHR0 cHM6Ly93d3cucG9zdGdyZXNxbC5vcmcvZG9jcy8xNy9xdWVyaWVzLXdpdGguaHRtbCkpIHRv IGZ1cnRoZXIgb3B0aW1pemUgdGhlc2UgcXVlcmllcyBhbmQgaGVscCB0aGVtIHRvIGV4ZWN1 dGUgbW9yZSBxdWlja2x5LiBBZGRpdGlvbmFsbHksIHRoaXMgcmVsZWFzZSBzaWduaWZpY2Fu dGx5IGltcHJvdmVzIGV4ZWN1dGlvbiB0aW1lIG9mIHF1ZXJpZXMgdGhhdCB1c2UgdGhlIGBJ TmAgY2xhdXNlIHdpdGggYSBbQi10cmVlIGluZGV4XShodHRwczovL3d3dy5wb3N0Z3Jlc3Fs Lm9yZy9kb2NzLzE3L2luZGV4ZXMtdHlwZXMuaHRtbCNJTkRFWEVTLVRZUEVTLUJUUkVFKS4g U3RhcnRpbmcgd2l0aCB0aGlzIHJlbGVhc2UsIFBvc3RncmVTUUwgY2FuIHJlbW92ZSByZWR1 bmRhbnQgYElTIE5PVCBOVUxMYCBzdGF0ZW1lbnRzIGZyb20gZXhlY3V0aW9uIG9uIGNvbHVt bnMgdGhhdCBoYXZlIGEgYE5PVCBOVUxMYCBjb25zdHJhaW50LCBhbmQgbm8gbG9uZ2VyIG5l ZWRzIHRvIGRvIHdvcmsgb24gcXVlcmllcyB0aGF0IGNvbnRhaW4gYW4gYElTIE5VTExgIGNs YXVzZSBvbiBhbiBgSVMgTk9UIE5VTExgIGNvbHVtbi4gTm93IGFzIG9mIFBvc3RncmVTUUwg MTcsIHlvdSBjYW4gbm93IHVzZSBwYXJhbGxlbCBpbmRleCBidWlsZHMgZm9yIFtCUklOXSho dHRwczovL3d3dy5wb3N0Z3Jlc3FsLm9yZy9kb2NzLzE3L2JyaW4uaHRtbCkgaW5kZXhlcy4K Cldvcmtsb2FkcyB3aXRoIGhpZ2hseSBjb25jdXJyZW50IGNoYW5nZXMgY2FuIGJlbmVmaXQg ZnJvbSBQb3N0Z3JlU1FMIDE3IHdpdGggYW4gaW1wcm92ZW1lbnQgdG8gaG93IFt3cml0ZS1h aGVhZCBsb2ddKGh0dHBzOi8vd3d3LnBvc3RncmVzcWwub3JnL2RvY3MvMTcvd2FsLWludHJv Lmh0bWwpIChbV0FMXShodHRwczovL3d3dy5wb3N0Z3Jlc3FsLm9yZy9kb2NzLzE3L3dhbC1p bnRyby5odG1sKSkgbG9ja3MgYXJlIG1hbmFnZWQsIHdpdGggc29tZSB0ZXN0cyBzaG93aW5n IHVwIHRvIGEgMnggcGVyZm9ybWFuY2UgaW1wcm92ZW1lbnQuIAoKRmluYWxseSwgUG9zdGdy ZVNRTCAxNyBhZGRzIG1vcmUgZXhwbGljaXRseSBTSU1EIGluc3RydWN0aW9ucywgaW5jbHVk aW5nIEFWWC01MTIgc3VwcG9ydCBmb3IgdGhlIFtgYml0X2NvdW50XShodHRwczovL3d3dy5w b3N0Z3Jlc3FsLm9yZy9kb2NzLzE3L2Z1bmN0aW9ucy1iaXRzdHJpbmcuaHRtbCkgZnVuY3Rp b24uCgoKIyMjIFBhcnRpdGlvbmVkIGFuZCBkaXN0cmlidXRlZCB3b3JrbG9hZHMgZW5oYW5j ZW1lbnRzCgpQb3N0Z3JlU1FMIDE3IGJyaW5ncyBtb3JlIGZsZXhpYmlsaXR5IHRvIHBhcnRp dGlvbiBtYW5hZ2VtZW50LCBhZGRpbmcgdGhlIGFiaWxpdHkgdG8gYm90aCBzcGxpdCBhbmQg bWVyZ2UgcGFydGl0aW9ucywgYW5kIGFkZHMgc3VwcG9ydCB0byBwYXJ0aXRpb25lZCB0YWJs ZXMgZm9yIGlkZW50aXR5IGNvbHVtbnMgYW5kIGV4Y2x1c2lvbiBjb25zdHJhaW50cy4gQWRk aXRpb25hbGx5LCB0aGUgW1Bvc3RncmVTUUwgZm9yZWlnbiBkYXRhIHdyYXBwZXJdKGh0dHBz Oi8vd3d3LnBvc3RncmVzcWwub3JnL2RvY3MvMTcvcG9zdGdyZXMtZmR3Lmh0bWwpIChbYHBv c3RncmVzX2Zkd2BdKGh0dHBzOi8vd3d3LnBvc3RncmVzcWwub3JnL2RvY3MvMTcvcG9zdGdy ZXMtZmR3Lmh0bWwpKSBjYW4gcmVhbGl6ZSBwZXJmb3JtYW5jZSBiZW5lZml0cyBmcm9tIHF1 ZXJpZXMgd2l0aCBgRVhJU1RTYCBhbmQgYElOYCBzdWJxdWVyaWVzIGFzIHRoZXNlIGNhbiBu b3cgYmUgcHVzaGVkIGRvd24gdG8gdGhlIHJlbW90ZSBzZXJ2ZXIuCgpQb3N0Z3JlU1FMIDE3 IGFkZHMgbmV3IGNhcGFiaWxpdGllcyB0byBsb2dpY2FsIHJlcGxpY2F0aW9uIHRoYXQgbWFr ZSBpdCBzaW1wbGVyIHRvIHVzZSBpdCBpbiBoaWdoIGF2YWlsYWJpbGl0eSB3b3JrbG9hZHMg YW5kIG9uIHVwZ3JhZGVzLiBTdGFydGluZyB3aXRoIFBvc3RncmVTUUwgMTcsIHlvdSBubyBs b25nZXIgbmVlZCB0byBkcm9wIFtsb2dpY2FsIHJlcGxpY2F0aW9uIHNsb3RzXShodHRwczov L3d3dy5wb3N0Z3Jlc3FsLm9yZy9kb2NzLzE3L2xvZ2ljYWwtcmVwbGljYXRpb24tc3Vic2Ny aXB0aW9uLmh0bWwjTE9HSUNBTC1SRVBMSUNBVElPTi1TVUJTQ1JJUFRJT04tU0xPVCkgd2hl biB1c2luZyBbYHBnX3VwZ3JhZGVgXShodHRwczovL3d3dy5wb3N0Z3Jlc3FsLm9yZy9kb2Nz LzE3L3BndXBncmFkZS5odG1sKSwgYWxsb3dpbmcgeW91IHRvIGF2b2lkIHJlc3luY2hyb25p emluZyBkYXRhIGFmdGVyIGFuIHVwZ3JhZGUuIEFkZGl0aW9uYWxseSwgdGhpcyByZWxlYXNl IGludHJvZHVjZXMgZmFpbG92ZXIgY29udHJvbCBmb3IgbG9naWNhbCByZXBsaWNhdGlvbiwg cHJvdmlkaW5nIG1vcmUgY29udHJvbCBmb3IgbWFuYWdpbmcgUG9zdGdyZVNRTCBkYXRhYmFz ZXMgaW4gaGlnaCBhdmFpbGFiaWxpdHkgZW52aXJvbm1lbnRzLiBQb3N0Z3JlU1FMIDE3IGFs c28gbGV0cyBsb2dpY2FsIHJlcGxpY2F0aW9uIHN1YnNjcmliZXJzIHVzZSBgaGFzaGAgaW5k ZXhlcyBmb3IgbG9va3VwcywgYW5kIGludHJvZHVjZXMgdGhlIGBwZ19jcmVhdGVzdWJzY3Jp YmVyYCBjb21tYW5kLWxpbmUgdG9vbCBmb3IgYWRkaW5nIGxvZ2ljYWwgcmVwbGljYXRpb24g b24gYSByZXBsaWNhIHVzaW5nIHBoeXNpY2FsIHJlcGxpY2F0aW9uLgoKIyMjIERldmVsb3Bl ciBFeHBlcmllbmNlCgpQb3N0Z3JlU1FMIDE3IGNvbnRpbnVlcyB0byBidWlsZCBvbiB0aGUg U1FML0pTT04gc3RhbmRhcmQsIGFkZGluZyBzdXBwb3J0IGZvciB0aGUgYEpTT05fVEFCTEVg IGZlYXR1cmVzIHRoYXQgY2FuIGNvbnZlcnQgSlNPTiB0byBhIHN0YW5kYXJkIFBvc3RncmVT UUwgdGFibGUsIGFuZCBTUUwvSlNPTiBjb25zdHJ1Y3RvciAoYEpTT05gLCBgSlNPTl9TQ0FM QVJgLCBgSlNPTl9TRVJJQUxJWkVgKSBhbmQgcXVlcnkgZnVuY3Rpb25zIChgSlNPTl9FWElT VFNgLCBgSlNPTl9RVUVSWWAsIGBKU09OX1ZBTFVFYCkuIE5vdGFibHksIHRoZXNlIGZlYXR1 cmVzIHdlcmUgb3JpZ2luYWxseSBwbGFubmVkIGZvciB0aGUgUG9zdGdyZVNRTCAxNSByZWxl YXNlIGJ1dCB3ZXJlIHJldmVydGVkIGR1cmluZyB0aGUgYmV0YSBwZXJpb2QgZHVlIHRvIGRl c2lnbiBjb25zaWRlcmF0aW9ucywgd2hpY2ggaXMgb25lIHJlYXNvbiB3ZSBhc2sgZm9yIHlv dSB0byBoZWxwIHVzIHRlc3QgZmVhdHVyZXMgZHVyaW5nIGJldGEhIEFkZGl0aW9uYWxseSwg UG9zdGdyZVNRTCAxNyBhZGRzIG1vcmUgZnVuY3Rpb25hbGl0eSB0byBpdHMgYGpzb25wYXRo YCBpbXBsZW1lbnRhdGlvbiwgaW5jbHVkaW5nIHRoZSBhYmlsaXR5IHRvIGNvbnZlcnQgSlNP TiB2YWx1ZXMgdG8gZGlmZmVyZW50IGRhdGEgdHlwZXMuCgpUaGUgW2BNRVJHRWBdKGh0dHBz Oi8vd3d3LnBvc3RncmVzcWwub3JnL2RvY3MvMTcvc3FsLW1lcmdlLmh0bWwpIGNvbW1hbmQg bm93IHN1cHBvcnRzIHRoZSBgUkVUVVJOSU5HYCBjbGF1c2UsIGxldHRpbmcgeW91IGZ1cnRo ZXIgd29yayB3aXRoIG1vZGlmaWVkIHJvd3MuIFlvdSBjYW4gYWxzbyBzZWUgd2hhdCBwYXJ0 IG9mIHRoZSBgTUVSR0VgIGNvbW1hbmQgbW9kaWZpZWQgdGhlIHJvdyB1c2luZyB0aGUgbmV3 IGBtZXJnZV9hY3Rpb25gIGZ1bmN0aW9uLiBQb3N0Z3JlU1FMIDE3IGFsc28gbGV0cyB5b3Ug dXBkYXRlIHZpZXdzIHVzaW5nIHRoZSBgTUVSR0VgIGNvbW1hbmQsIGFuZCBhZGRzIGEgYFdI RU4gTk9UIE1BVENIRUQgQlkgU09VUkNFYCBjbGF1c2UgdG8gbGV0IHlvdSBwcm92aWRlIGJl aGF2aW9yIGlmIGEgc291cmNlIHJvdyBkb2Vzbid0IG1lZXQgdGhlIGNvbmRpdGlvbnMuCgpb YENPUFlgXShodHRwczovL3d3dy5wb3N0Z3Jlc3FsLm9yZy9kb2NzLzE3L3NxbC1jb3B5Lmh0 bWwpLCB1c2VkIHRvIGVmZmljaWVudGx5IGJ1bGsgbG9hZCBkYXRhIGludG8gUG9zdGdyZVNR TCwgaGFzIGltcHJvdmVkIHBlcmZvcm1hbmNlIGluIFBvc3RncmVTUUwgMTcgd2hlbiB0aGUg c291cmNlIGVuY29kaW5nIG1hdGNoZXMgdGhlIGRlc3RpbmF0aW9uIGVuY29kaW5nLiBBZGRp dGlvbmFsbHkgYENPUFlgIGhhcyBhIG5ldyBvcHRpb24sIGBJR05PUkVfRVJST1JgLCB0aGF0 IGxldHMgdGhlIGNvcHkgcHJvY2VlZCBldmVuIGlmIHRoZSB0aGVyZSBpcyBhbiBlcnJvciBp bnNlcnRpbmcgYSByb3cuCgpQb3N0Z3JlU1FMIDE3IGluY2x1ZGVzIGEgYnVpbHQtaW4gY29s bGF0aW9uIHByb3ZpZGVyIHRoYXQgcHJvdmlkZXMgc2ltaWxhciBzZW1hbnRpY3MgdG8gdGhl IGBDYCBjb2xsYXRpb24gcHJvdmlkZWQgYnkgbGliYy4gVGhpcyBuZXcgY29sbGF0aW9uIGlz IGd1YXJhbnRlZWQgdG8gYmUgaW1tdXRhYmxlLCBlbnN1cmluZyB0aGF0IHRoZSByZXR1cm4g dmFsdWVzIG9mIHlvdXIgc29ydHMgd29uJ3QgY2hhbmdlIHJlZ2FyZGxlc3Mgb2Ygd2hhdCBz eXN0ZW0geW91ciBQb3N0Z3JlU1FMIGluc3RhbGxhdGlvbiBydW5zIG9uLgoKIyMjIFNlY3Vy aXR5IEZlYXR1cmVzCgpQb3N0Z3JlU1FMIDE3IGFkZHMgYSBuZXcgY29ubmVjdGlvbiBwYXJh bWV0ZXIsIGBzc2xuZWdvdGF0aW9uYCwgd2hpY2ggYWxsb3dzIFBvc3RncmVTUUwgdG8gcGVy Zm9ybSBkaXJlY3QgVExTIGhhbmRzaGFrZXMgd2hlbiB1c2luZyBbQUxQTl0oaHR0cHM6Ly9l bi53aWtpcGVkaWEub3JnL3dpa2kvQXBwbGljYXRpb24tTGF5ZXJfUHJvdG9jb2xfTmVnb3Rp YXRpb24pLCBlbGltaW5hdGluZyBhIG5ldHdvcmsgcm91bmR0cmlwLiBQb3N0Z3JlU1FMIGlz IHJlZ2lzdGVyZWQgYXMgYHBvc3RncmVzcWxgIGluIHRoZSBBTFBOIGRpcmVjdG9yeS4KClRo aXMgcmVsZWFzZSBpbnRyb2R1Y2VzIGV2ZW50IHRyaWdnZXJzIHRoYXQgZXhlY3V0ZSBkdXJp bmcgYXV0aGVudGljYXRpb24sIGFuZCBpbiBsaWJwcSBpbmNsdWRlcyBhIG5ldyBBUEkgY2Fs bGVkIGBQUWNoYW5nZVBhc3N3b3JkYCB0aGF0IGF1dG9tYXRpY2FsbHkgaGFzaGVzIHBhc3N3 b3JkcyBvbiB0aGUgY2xpZW50LXNpZGUgdG8gcHJldmVudCBhY2NpZGVudGFsIHBsYWludGV4 dCBsb2dnaW5nIGluIHRoZSBzZXJ2ZXIuCgpQb3N0Z3JlU1FMIDE3IGFkZHMgYSBuZXcgW3By ZWRlZmluZWQgcm9sZV0oaHR0cHM6Ly93d3cucG9zdGdyZXNxbC5vcmcvZG9jcy8xNy9wcmVk ZWZpbmVkLXJvbGVzLmh0bWwpIGNhbGxlZCBgcGdfbWFpbnRhaW5gIHRoYXQgZ2l2ZXMgdXNl cnMgcGVybWlzc2lvbiB0byBleGVjdXRlIGBWQUNVVU1gLCBgQU5BTFlaRWAsIGBDTFVTVEVS YCwgYFJFRlJFU0ggTUFURVJJQUxJWkVEIFZJRVdgLCBgUkVJTkRFWGAsIGFuZCBgTE9DSyBU QUJMRWAgb24gYWxsIHJlbGF0aW9ucy4gVGhpcyByZWxlYXNlIGFsc28gZW5zdXJlcyB0aGUg YHNlYXJjaF9wYXRoYCBpcyBzYWZlIGZvciBtYWludGVuYW5jZSBvcGVyYXRpb25zIGxpa2Ug YFZBQ1VVTWAsIGBBTkFMWVpFYCwgYENMVVNURVJgLCBgUkVGUkVTSCBNQVRFUklBTElaRUQg VklFV2AgYW5kIGBJTkRFWGAuIEZpbmFsbHksIHVzZXJzIGNhbiBub3cgdXNlIGBBTFRFUiBT WVNURU1gIHRvIHNldCB0aGUgdmFsdWVzIGZvciB1bnJlY29nbml6ZWQgY3VzdG9tIHNlcnZl ciB2YXJpYWJsZXMuCgojIyMgQmFja3VwIGFuZCBFeHBvcnQgTWFuYWdlbWVudAoKUG9zdGdy ZVNRTCAxNyBpbnRyb2R1Y2VzIHRoZSBhYmlsaXR5IHRvIHBlcmZvcm0gaW5jcmVtZW50YWwg YmFja3VwcyB1c2luZyBbYHBnX2Jhc2ViYWNrdXBgXShodHRwczovL3d3dy5wb3N0Z3Jlc3Fs Lm9yZy9kb2NzLzE3L2FwcC1wZ2Jhc2ViYWNrdXAuaHRtbCksIGFuZCBhZGRzIGEgbmV3IHV0 aWxpdHkgY2FsbGVkIFtgcGdfY29tYmluZWJhY2t1cGBdKGh0dHBzOi8vd3d3LnBvc3RncmVz cWwub3JnL2RvY3MvMTcvYXBwLXBnY29tYmluZWJhY2t1cC5odG1sKSB0aGF0J3MgdXNlZCBh cyBwYXJ0IG9mIHRoZSBiYWNrdXAgcmVzdG9yYXRpb24gcHJvY2Vzcy4gVGhpcyByZWxlYXNl IGFkZHMgYSBuZXcgZmxhZyB0byBbYHBnX2R1bXBgXShodHRwczovL3d3dy5wb3N0Z3Jlc3Fs Lm9yZy9kb2NzLzE3L2FwcC1wZ2R1bXAuaHRtbCkgY2FsbGVkIGAtLWZpbHRlcmAsIGxldHRp bmcgeW91IHNwZWNpZnkgYSBmaWxlIHRoYXQgY29udGFpbnMgaW5zdHJ1Y3Rpb25zIG9uIHdo YXQgb2JqZWN0cyB0byBpbmNsdWRlL2V4Y2x1ZGUgZnJvbSBhIGR1bXAuCgojIyMgTW9uaXRv cmluZwoKVGhlIFtgRVhQTEFJTmBdKGh0dHBzOi8vd3d3LnBvc3RncmVzcWwub3JnL2RvY3Mv MTcvc3FsLWV4cGxhaW4uaHRtbCkgY29tbWFuZCwgd2hpY2ggcHJvdmlkZXMgaW5mb3JtYXRp b24gYWJvdXQgcXVlcnkgcGxhbnMgYW5kIGV4ZWN1dGlvbiwgYWRkcyB0d28gbmV3IG9wdGlv bnM6IGBTRVJJQUxJWkVgLCB3aGljaCBzaG93cyB0aGUgYW1vdW50IG9mIHRpbWUgaXQgdGFr ZXMgdG8gY29udmVydCBkYXRhIGZvciBuZXR3b3JrIHRyYW5zbWlzc2lvbiwgYW5kIGBNRU1P UllgLCB3aGljaCByZXBvcnRzIG9wdGltaXplciBtZW1vcnkgdXNhZ2UuIEFkZGl0aW9uYWxs eSwgYEVYUExBSU5gIGNhbiBub3cgc2hvdyBob3cgbXVjaCB0aW1lIGlzIHNwZW50IGZvciBJ L08gYmxvY2sgcmVhZHMgYW5kIHdyaXRlcy4KClBvc3RncmVTUUwgMTcgbm9ybWFsaXplcyB0 aGUgcGFyYW1ldGVycyBmb3IgYENBTExgIGluIFtgcGdfc3RhdF9zdGF0ZW1lbnRzYF0oaHR0 cHM6Ly93d3cucG9zdGdyZXNxbC5vcmcvZG9jcy8xNy9wZ3N0YXRzdGF0ZW1lbnRzLmh0bWwp LCByZWR1Y2luZyB0aGUgbnVtYmVyIG9mIGVudHJpZXMgZm9yIGZyZXF1ZW50bHkgY2FsbGVk IHN0b3JlZCBwcm9jZWR1cmVzLiBBZGRpdGlvbmFsbHksIFtgVkFDVVVNYCBwcm9ncmVzcyBy ZXBvcnRpbmddKGh0dHBzOi8vd3d3LnBvc3RncmVzcWwub3JnL2RvY3MvZGV2ZWwvcHJvZ3Jl c3MtcmVwb3J0aW5nLmh0bWwjVkFDVVVNLVBST0dSRVNTLVJFUE9SVElORykgbm93IHNob3dz IHRoZSBwcm9ncmVzcyBvZiB2YWN1dW1pbmcgaW5kZXhlcy4gUG9zdGdyZVNRTCAxNyBhbHNv IGludHJvZHVjZXMgYSBuZXcgdmlldywgW2BwZ193YWl0X2V2ZW50c2BdKGh0dHBzOi8vd3d3 LnBvc3RncmVzcWwub3JnL2RvY3MvMTcvdmlldy1wZy13YWl0LWV2ZW50cy5odG1sKSwgd2hp Y2ggcHJvdmlkZXMgZGVzY3JpcHRpb25zIGFib3V0IHdhaXQgZXZlbnRzIGFuZCBjYW4gYmUg Y29tYmluZWQgd2l0aCBgcGdfc3RhdF9hY3Rpdml0eWAgdG8gZ2l2ZSBtb3JlIGluc2lnaHQg aW50byBhbiBvcGVyYXRpb24uIEFkZGl0aW9uYWxseSwgc29tZSBpbmZvcm1hdGlvbiBpbiB0 aGUgW2BwZ19zdGF0X2Jnd3JpdGVyYF0oaHR0cHM6Ly93d3cucG9zdGdyZXNxbC5vcmcvZG9j cy8xNy9tb25pdG9yaW5nLXN0YXRzLmh0bWwjTU9OSVRPUklORy1QRy1TVEFULUJHV1JJVEVS LVZJRVcpIHZpZXcgaXMgbm93IHNwbGl0IG91dCBpbnRvIHRoZSBuZXcgW2BwZ19zdGF0X2No ZWNrcG9pbnRlcmBdKGh0dHBzOi8vd3d3LnBvc3RncmVzcWwub3JnL2RvY3MvMTcvbW9uaXRv cmluZy1zdGF0cy5odG1sI01PTklUT1JJTkctUEctU1RBVC1DSEVDS1BPSU5URVItVklFVykg dmlldy4KCkFkZGl0aW9uYWwgRmVhdHVyZXMKLS0tLS0tLS0tLS0tLS0tLS0tLQoKTWFueSBv dGhlciBuZXcgZmVhdHVyZXMgYW5kIGltcHJvdmVtZW50cyBoYXZlIGJlZW4gYWRkZWQgdG8g UG9zdGdyZVNRTCAxNy4gTWFueQpvZiB0aGVzZSBtYXkgYWxzbyBiZSBoZWxwZnVsIGZvciB5 b3VyIHVzZSBjYXNlcy4gUGxlYXNlIHNlZSB0aGUKW3JlbGVhc2Ugbm90ZXNdKGh0dHBzOi8v d3d3LnBvc3RncmVzcWwub3JnL2RvY3MvMTcvcmVsZWFzZS0xNy5odG1sKSBmb3IgYQpjb21w bGV0ZSBsaXN0IG9mIG5ldyBhbmQgY2hhbmdlZCBmZWF0dXJlczoKCiAgW2h0dHBzOi8vd3d3 LnBvc3RncmVzcWwub3JnL2RvY3MvMTcvcmVsZWFzZS0xNy5odG1sXShodHRwczovL3d3dy5w b3N0Z3Jlc3FsLm9yZy9kb2NzLzE3L3JlbGVhc2UtMTcuaHRtbCkKClRlc3RpbmcgZm9yIEJ1 Z3MgJiBDb21wYXRpYmlsaXR5Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpU aGUgc3RhYmlsaXR5IG9mIGVhY2ggUG9zdGdyZVNRTCByZWxlYXNlIGdyZWF0bHkgZGVwZW5k cyBvbiB5b3UsIHRoZSBjb21tdW5pdHksCnRvIHRlc3QgdGhlIHVwY29taW5nIHZlcnNpb24g d2l0aCB5b3VyIHdvcmtsb2FkcyBhbmQgdGVzdGluZyB0b29scyBpbiBvcmRlciB0bwpmaW5k IGJ1Z3MgYW5kIHJlZ3Jlc3Npb25zIGJlZm9yZSB0aGUgZ2VuZXJhbCBhdmFpbGFiaWxpdHkg b2YgUG9zdGdyZVNRTCAxNy4gQXMKdGhpcyBpcyBhIEJldGEsIG1pbm9yIGNoYW5nZXMgdG8g ZGF0YWJhc2UgYmVoYXZpb3JzLCBmZWF0dXJlIGRldGFpbHMsIGFuZCBBUElzCmFyZSBzdGls bCBwb3NzaWJsZS4gWW91ciBmZWVkYmFjayBhbmQgdGVzdGluZyB3aWxsIGhlbHAgZGV0ZXJt aW5lIHRoZSBmaW5hbAp0d2Vha3Mgb24gdGhlIG5ldyBmZWF0dXJlcywgc28gcGxlYXNlIHRl c3QgaW4gdGhlIG5lYXIgZnV0dXJlLiBUaGUgcXVhbGl0eSBvZgp1c2VyIHRlc3RpbmcgaGVs cHMgZGV0ZXJtaW5lIHdoZW4gd2UgY2FuIG1ha2UgYSBmaW5hbCByZWxlYXNlLgoKQSBsaXN0 IG9mIFtvcGVuIGlzc3Vlc10oaHR0cHM6Ly93aWtpLnBvc3RncmVzcWwub3JnL3dpa2kvUG9z dGdyZVNRTF8xN19PcGVuX0l0ZW1zKQppcyBwdWJsaWNseSBhdmFpbGFibGUgaW4gdGhlIFBv c3RncmVTUUwgd2lraS4gIFlvdSBjYW4KW3JlcG9ydCBidWdzXShodHRwczovL3d3dy5wb3N0 Z3Jlc3FsLm9yZy9hY2NvdW50L3N1Ym1pdGJ1Zy8pIHVzaW5nIHRoaXMgZm9ybSBvbgp0aGUg UG9zdGdyZVNRTCB3ZWJzaXRlOgoKICBbaHR0cHM6Ly93d3cucG9zdGdyZXNxbC5vcmcvYWNj b3VudC9zdWJtaXRidWcvXShodHRwczovL3d3dy5wb3N0Z3Jlc3FsLm9yZy9hY2NvdW50L3N1 Ym1pdGJ1Zy8pCgpCZXRhIFNjaGVkdWxlCi0tLS0tLS0tLS0tLS0KClRoaXMgaXMgdGhlIGZp cnN0IGJldGEgcmVsZWFzZSBvZiB2ZXJzaW9uIDE3LiBUaGUgUG9zdGdyZVNRTCBQcm9qZWN0 IHdpbGwKcmVsZWFzZSBhZGRpdGlvbmFsIGJldGFzIGFzIHJlcXVpcmVkIGZvciB0ZXN0aW5n LCBmb2xsb3dlZCBieSBvbmUgb3IgbW9yZQpyZWxlYXNlIGNhbmRpZGF0ZXMsIHVudGlsIHRo ZSBmaW5hbCByZWxlYXNlIGFyb3VuZCBTZXB0ZW1iZXIvT2N0b2JlciAyMDI0LiBGb3IgZnVy dGhlcgppbmZvcm1hdGlvbiBwbGVhc2Ugc2VlIHRoZSBbQmV0YSBUZXN0aW5nXShodHRwczov L3d3dy5wb3N0Z3Jlc3FsLm9yZy9kZXZlbG9wZXIvYmV0YS8pCnBhZ2UuCgpMaW5rcwotLS0t LQoKKiBbRG93bmxvYWRdKGh0dHBzOi8vd3d3LnBvc3RncmVzcWwub3JnL2Rvd25sb2FkLykK KiBbQmV0YSBUZXN0aW5nIEluZm9ybWF0aW9uXShodHRwczovL3d3dy5wb3N0Z3Jlc3FsLm9y Zy9kZXZlbG9wZXIvYmV0YS8pCiogW1Bvc3RncmVTUUwgMTcgQmV0YSBSZWxlYXNlIE5vdGVz XShodHRwczovL3d3dy5wb3N0Z3Jlc3FsLm9yZy9kb2NzLzE3L3JlbGVhc2UtMTcuaHRtbCkK KiBbUG9zdGdyZVNRTCAxNyBPcGVuIElzc3Vlc10oaHR0cHM6Ly93aWtpLnBvc3RncmVzcWwu b3JnL3dpa2kvUG9zdGdyZVNRTF8xN19PcGVuX0l0ZW1zKQoqIFtGZWF0dXJlIE1hdHJpeF0o aHR0cHM6Ly93d3cucG9zdGdyZXNxbC5vcmcvYWJvdXQvZmVhdHVyZW1hdHJpeC8pCiogW1N1 Ym1pdCBhIEJ1Z10oaHR0cHM6Ly93d3cucG9zdGdyZXNxbC5vcmcvYWNjb3VudC9zdWJtaXRi dWcvKQo= --------------Q4rI4epbT9Vg1u0ZOqXud4mi-- --------------9XA0zvzHi0GlBNU32PuTEFED-- --------------uoYm2vMF6ZZfdKrFRawG4jv3 Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature.asc" -----BEGIN PGP SIGNATURE----- wsF5BAABCAAjFiEE+oS2la8r95ogZD/x8QSccp8cZScFAmZFZT8FAwAAAAAACgkQ8QSccp8cZSde oA/8D8JVDU3RWDIDIFKVCUjuaPaoUlOwljxKkAI2eBoa5VX0vJgcTBoH094tyI5Xm6wt3EiFNRRh UoAtQOiu0wnqKBTC4EOHO7di2z6U5hvZnhbSqwtLiCQQIKEWaYgySXiIaqW+YggW2SSDtv290DUI fk2cUo7anbCC6DrYOejJa50boYfN3CP+YmDFYbW/6GBUP5nW0K2JkJe1HuqBc5NBgJQkbh4bzcPY yC4e+RnvAbsyebUD1b+o3cqyHGtA+6XIJyMMPVcgVMmv4abGhK0IaCzenwjDKwHc5F/ufORKQP1v IGbNI/VqRSRdDtR8BjQue6q45PLo0o4y15o7G+jTeJBHUFyNnKEFm7qxNGTlYNPL1lvZ+4Y8vHJP CofaHn1JBlyA5MbRdP606b+mIbgJIM3FGDHeNZ8k0PB3Dzbym1F028vaPEE4dxGCtW8TNGDHcutD qw1Dtb1Gebmw6PA8Op2ldmdg/1l6d+7ifRWO+DhIrGGrmlhAFRsi/Ht1q0KwxJN560AzK4aNBw/0 up+c1YCkPEwgjPUmpSUfALFxRuqT09CPY3SL9e0oG1miaLqMXcDq1/2iTGe5WQDh8wLLXn1kEnqu HGA462WlV4kA0qT94PaZjJnRUl8klDpPyl1Pua+SPqsK1cJWgVK9MbkfqPRDZQCLRaePR/Vb97uS dQ4= =1dKQ -----END PGP SIGNATURE----- --------------uoYm2vMF6ZZfdKrFRawG4jv3--