Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1h2L4E-0006sg-KX for pgsql-www@arkaria.postgresql.org; Fri, 08 Mar 2019 19:22:03 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1h2L4D-0001ar-1v for pgsql-www@arkaria.postgresql.org; Fri, 08 Mar 2019 19:22:01 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1h2L4C-0001WF-BS for pgsql-www@lists.postgresql.org; Fri, 08 Mar 2019 19:22:00 +0000 Received: from meldrar.postgresql.org ([2a02:c0:301:0:ffff::31]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1h2L44-0002qM-C5 for pgsql-www@lists.postgresql.org; Fri, 08 Mar 2019 19:21:59 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=postgresql.org; s=20171124; h=Content-Type:In-Reply-To:MIME-Version:Date: Message-ID:References:Cc:To:From:Subject:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=I1uipJJPb67vX+oj7oyGw7FTpapTE0bz8AihXh3UQQA=; b=R6SeppWM7p8/eaBvYF0zNFFKf6 MEST6/UISYLhCkT2524YsFHJNYju7Xm3OWZy8fLrOBEgjskhgKHH8KpoTPdwaTNjrAmNRDDGHPevi LvdkwXES/Rg2Xm42lFMywApgDSxrwuV5uPIeXQ+AtgAp1ISXmoOsVQJ6FxxBshNp7aai6tYvI6q7y fC85s04NIBJZlYeLd4kogJSkysUmBpEDaVHu+XI8YxZUh2rxvVyKy4vyhvHZyv3idpC6WnRN8hyvA sYY2m2K3x8kjIlXyE0pd7+yTKjjqNq1f3sC2bdBQYiKVl0FkSXlqas4qDGd92VSmk3ZTWsLPx81te LNkT/jSg==; Received: from [2001:470:f325:501:846f:336c:1683:cb6d] (helo=Ph33r-Retina.local) by meldrar.postgresql.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1h2L3v-0004eL-5j; Fri, 08 Mar 2019 19:21:50 +0000 Subject: Re: Release Notes Archive Patch From: "Jonathan S. Katz" To: Magnus Hagander Cc: "pgsql-www@lists.postgresql.org" References: <7ec61f14-5507-c073-b25d-247befef90e2@postgresql.org> Openpgp: preference=signencrypt Autocrypt: addr=jkatz@postgresql.org; keydata= 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 FmEC Message-ID: <961333c1-254b-8fae-4b53-4f6fa0dfe51f@postgresql.org> Date: Fri, 8 Mar 2019 11:21:38 -0800 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:60.0) Gecko/20100101 Thunderbird/60.5.3 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="sD8znzRwyN0tZb3XDqZPw8SIo9nQvyyVT" X-Host-Lookup-Failed: Reverse DNS lookup failed for 2001:470:f325:501:846f:336c:1683:cb6d (failed) List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --sD8znzRwyN0tZb3XDqZPw8SIo9nQvyyVT Content-Type: multipart/mixed; boundary="Nyc3L6P4g5tWM8MiiyT9apvkOfvTF1vYR"; protected-headers="v1" From: "Jonathan S. Katz" To: Magnus Hagander Cc: "pgsql-www@lists.postgresql.org" Message-ID: <961333c1-254b-8fae-4b53-4f6fa0dfe51f@postgresql.org> Subject: Re: Release Notes Archive Patch References: <7ec61f14-5507-c073-b25d-247befef90e2@postgresql.org> In-Reply-To: --Nyc3L6P4g5tWM8MiiyT9apvkOfvTF1vYR Content-Type: multipart/mixed; boundary="------------7DC464C59DCD83738DDCEDDD" Content-Language: en-US This is a multi-part message in MIME format. --------------7DC464C59DCD83738DDCEDDD Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 3/2/19 12:22 PM, Jonathan S. Katz wrote: This is done. Latest version attached. Per in-person patch review, attached is the latest version. Noted changes: 1. Fixed bug with previous/next in template 2. Only load the "content" when it is needed, i.e. when looking at the specific release notes for a (major,minor) version pair 3. Use some arrows to make the collapsible list look more..collapsible 4. Updated some comments Thanks, Jonathan --------------7DC464C59DCD83738DDCEDDD Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0"; name="0001-Create-Release-Notes-archive-in-the-Documentation-se.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename*0="0001-Create-Release-Notes-archive-in-the-Documentation-se.pa"; filename*1="tch" RnJvbSBjODg0NDkzNDk0ZTVhMjk2OTFiYzg1Y2I2YzA4NWM5Y2IwY2FlY2Y4IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAiSm9uYXRoYW4gUy4gS2F0eiIgPGpvbmF0aGFuLmth dHpAZXhjb3ZlbnR1cmVzLmNvbT4KRGF0ZTogVHVlLCAxMiBGZWIgMjAxOSAyMDo1MDo0OCAr MDEwMApTdWJqZWN0OiBbUEFUQ0ggMS8yXSBDcmVhdGUgUmVsZWFzZSBOb3RlcyBhcmNoaXZl IGluIHRoZSBEb2N1bWVudGF0aW9uCiBzZWN0aW9uLgoKVGhpcyBjcmVhdGVzIGEgY29uc29s aWRhdGVkIGFyZWEgdG8gcmVmZXJlbmNlIGFsbCBvZiB0aGUgbm90ZXMgZnJvbQpwcmV2aW91 cyByZWxlYXNlcyBvZiBQb3N0Z3JlU1FMLCBhcyBjdXJyZW50IHJlbGVhc2VzIG9ubHkga2Vl cCB0aGUKdGhlIG5vdGVzIGZvciB0aGF0IHNwZWNpZmljIG1ham9yIHJlbGVhc2Ugb2YgUG9z dGdyZVNRTC4KLS0tCiBtZWRpYS9jc3MvbWFpbi5jc3MgICAgICAgICAgICAgICAgICAgfCAg MjkgKysrKysrKysrKwogcGd3ZWIvY29yZS90ZW1wbGF0ZXRhZ3MvcGdmaWx0ZXJzLnB5IHwg ICA5ICsrKwogcGd3ZWIvZG9jcy92aWV3cy5weSAgICAgICAgICAgICAgICAgIHwgIDk4ICsr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogcGd3ZWIvdXJscy5weSAgICAgICAg ICAgICAgICAgICAgICAgIHwgICAyICsKIHBnd2ViL3V0aWwvY29udGV4dHMucHkgICAgICAg ICAgICAgICB8ICAgMSArCiBwZ3dlYi91dGlsL2RiLnB5ICAgICAgICAgICAgICAgICAgICAg fCAgIDcgKysrCiB0ZW1wbGF0ZXMvZG9jcy9yZWxlYXNlX25vdGVzLmh0bWwgICAgfCAxMDQg KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIDcgZmlsZXMgY2hhbmdlZCwg MjUwIGluc2VydGlvbnMoKykKIGNyZWF0ZSBtb2RlIDEwMDY0NCBwZ3dlYi91dGlsL2RiLnB5 CiBjcmVhdGUgbW9kZSAxMDA2NDQgdGVtcGxhdGVzL2RvY3MvcmVsZWFzZV9ub3Rlcy5odG1s CgpkaWZmIC0tZ2l0IGEvbWVkaWEvY3NzL21haW4uY3NzIGIvbWVkaWEvY3NzL21haW4uY3Nz CmluZGV4IGUwNDYyYWQyLi40ODlhYzkxNiAxMDA2NDQKLS0tIGEvbWVkaWEvY3NzL21haW4u Y3NzCisrKyBiL21lZGlhL2Nzcy9tYWluLmNzcwpAQCAtMTI5NCw2ICsxMjk0LDM1IEBAIHRh YmxlLnNwb25zb3ItdGFibGUgdGJvZHkgdHIgdGQ6bnRoLWNoaWxkKDMpIHsKICAgICB3aWR0 aDogMzAlOwogfQogCisvKiogUmVsZWFzZSBOb3RlcyAqLworI3JlbGVhc2Utbm90ZXMgLm5h dmhlYWRlciwKKyNyZWxlYXNlLW5vdGVzIC5uYXZmb290ZXIsCisjcmVsZWFzZS1ub3RlcyAu TkFWSEVBREVSLAorI3JlbGVhc2Utbm90ZXMgLk5BVkZPT1RFUiwKKyNyZWxlYXNlLW5vdGVz IC50aXRsZXBhZ2UsCisjcmVsZWFzZS1ub3RlcyBoMS5TRUNUMSwKKyNyZWxlYXNlLW5vdGVz IC50b2MgeworICAgIGRpc3BsYXk6IG5vbmU7Cit9CisKKyNyZWxlYXNlLW5vdGVzIC52ZXJz aW9uLWxpc3QgaDI6YWZ0ZXIgeworICAgIGNvbnRlbnQ6IG5vbmU7Cit9CisKKy5yZWxlYXNl LW5vdGVzLWxpc3QgeworICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsKK30KKworLnJlbGVh c2Utbm90ZXMtbGlzdCA6bm90KC5jb2xsYXBzZWQpID4gLnJpZ2h0LAorLnJlbGVhc2Utbm90 ZXMtbGlzdCAuY29sbGFwc2VkID4gLmRvd24geworICAgIGRpc3BsYXk6IG5vbmU7Cit9CisK Ky5yZWxlYXNlLW5vdGVzLWxpc3QgLmNvbGxhcHNlZCA+IC5yaWdodCwKKy5yZWxlYXNlLW5v dGVzLWxpc3QgOm5vdCguY29sbGFwc2VkKSA+IC5kb3duIHsKKyAgICBkaXNwbGF5OiBibG9j azsKK30KKwogCiAvKiogQUxMIFJFU1BPTlNJVkUgUVVFUklFUyBIRVJFICovCiAvKiBTbWFs bCBkZXZpY2VzIChsYW5kc2NhcGUgcGhvbmVzLCA1NzZweCBhbmQgdXApKi8KZGlmZiAtLWdp dCBhL3Bnd2ViL2NvcmUvdGVtcGxhdGV0YWdzL3BnZmlsdGVycy5weSBiL3Bnd2ViL2NvcmUv dGVtcGxhdGV0YWdzL3BnZmlsdGVycy5weQppbmRleCAxM2YyNDcwYy4uNGVkZWI5NWMgMTAw NjQ0Ci0tLSBhL3Bnd2ViL2NvcmUvdGVtcGxhdGV0YWdzL3BnZmlsdGVycy5weQorKysgYi9w Z3dlYi9jb3JlL3RlbXBsYXRldGFncy9wZ2ZpbHRlcnMucHkKQEAgLTcwLDMgKzcwLDEyIEBA IGRlZiBkaWN0bG9va3VwKHZhbHVlLCBrZXkpOgogQHJlZ2lzdGVyLmZpbHRlcihuYW1lPSdq c29uJykKIGRlZiB0b2pzb24odmFsdWUpOgogICAgIHJldHVybiBqc29uLmR1bXBzKHZhbHVl KQorCitAcmVnaXN0ZXIuZmlsdGVyKCkKK2RlZiByZWxlYXNlX25vdGVzX3BnX21pbm9yX3Zl cnNpb24obWlub3JfdmVyc2lvbiwgbWFqb3JfdmVyc2lvbik6CisgICAgIiIiRm9ybWF0cyB0 aGUgbWlub3IgdmVyc2lvbiBudW1iZXIgdG8gdGhlIGFwcHJvcHJpYXRlIFBvc3RncmVTUUwg dmVyc2lvbi4KKyAgICBUaGlzIGlzIHBhcnRpY3VsYXJseSBmb3IgdmVyeSBvbGQgdmVyc2lv biBvZiBQb3N0Z3JlU1FMLgorICAgICIiIgorICAgIGlmIHN0cihtYWpvcl92ZXJzaW9uKSBp biBbJzAnLCAnMSddOgorICAgICAgICByZXR1cm4gc3RyKG1pbm9yX3ZlcnNpb24pWzI6NF0K KyAgICByZXR1cm4gbWlub3JfdmVyc2lvbgpkaWZmIC0tZ2l0IGEvcGd3ZWIvZG9jcy92aWV3 cy5weSBiL3Bnd2ViL2RvY3Mvdmlld3MucHkKaW5kZXggNDU3N2YwY2UuLjYyZjBhYmIzIDEw MDY0NAotLS0gYS9wZ3dlYi9kb2NzL3ZpZXdzLnB5CisrKyBiL3Bnd2ViL2RvY3Mvdmlld3Mu cHkKQEAgLTEzLDYgKzEzLDcgQEAgZnJvbSBwZ3dlYi51dGlsLmhlbHBlcnMgaW1wb3J0IHRl bXBsYXRlX3RvX3N0cmluZwogZnJvbSBwZ3dlYi51dGlsLm1pc2MgaW1wb3J0IHNlbmRfdGVt cGxhdGVfbWFpbAogCiBmcm9tIHBnd2ViLmNvcmUubW9kZWxzIGltcG9ydCBWZXJzaW9uCitm cm9tIHBnd2ViLnV0aWwuZGIgaW1wb3J0IGV4ZWNfdG9fZGljdAogCiBmcm9tIC5tb2RlbHMg aW1wb3J0IERvY1BhZ2UKIGZyb20gLmZvcm1zIGltcG9ydCBEb2NDb21tZW50Rm9ybQpAQCAt MTQwLDYgKzE0MSwxMDMgQEAgZGVmIG1hbnVhbGFyY2hpdmUocmVxdWVzdCk6CiAgICAgICAg ICd2ZXJzaW9ucyc6IFtfVmVyc2lvblBkZldyYXBwZXIodikgZm9yIHYgaW4gdmVyc2lvbnNd LAogICAgIH0pCiAKK2RlZiByZWxlYXNlX25vdGVzKHJlcXVlc3QsIG1ham9yX3ZlcnNpb249 Tm9uZSwgbWlub3JfdmVyc2lvbj1Ob25lKToKKyAgICAiIiJDb250YWlucyB0aGUgbWFpbiBh cmNoaXZlIG9mIHJlbGVhc2Ugbm90ZXMuIiIiCisgICAgIyB0aGlzIHF1ZXJ5IGdldHMgYSBs aXN0IG9mIGEgdW5pcXVlIHNldCBvZiByZWxlYXNlIG5vdGVzIGZvciBlYWNoIHZlcnNpb24g b2YKKyAgICAjIFBvc3RncmVTUUwuIEZyb20gUG9zdGdyZVNRTCA5LjQrLCByZWxlYXNlIG5v dGVzIGFyZSBvbmx5IHByZXNlbnQgZm9yIHRoZWlyCisgICAgIyBzcGVjaWZpYyB2ZXJzaW9u IG9mIFBvc3RncmVTUUwsIHNvIGFsbCBsZWdhY3kgcmVsZWFzZSBub3RlcyBhcmUgcHJlc2Vu dCBpbgorICAgICMgOS4zIGFuZCBvbGRlcgorICAgICMgRmlyc3QgdGhlIHF1ZXJ5IGlkZW50 aWZpZXMgYWxsIG9mIHRoZSByZWxlYXNlIG5vdGUgZmlsZXMgdGhhdCBoYXZlIGJlZW4gbG9h ZGVkCisgICAgIyBpbnRvIHRoZSBkb2NzLiBXZSB3aWxsIGxpbWl0IG91ciBsb29rdXAgdG8g cmVsZWFzZSBub3RlcyBmcm9tIDkuMyBvbiB1cCwKKyAgICAjIGdpdmVuIDkuMyBoYXMgYWxs IHRoZSByZWxlYXNlIG5vdGVzIGZvciBQb3N0Z3JlU1FMIDkuMyBhbmQgb2xkZXIKKyAgICAj IEZyb20gdGhlcmUsIGl0IHBhcnNlcyB0aGUgdmVyc2lvbiB0aGUgcmVsZWFzZSBub3RlcyBh cmUgZm9yCisgICAgIyBmcm9tIHRoZSBmaWxlIG5hbWUsIGFuZCBicmVha3MgaXQgdXAgaW50 byAibWFqb3IiIGFuZCAibWlub3IiIHZlcnNpb24gZnJvbQorICAgICMgb3VyIHVuZGVyc3Rh bmRpbmcgb2YgaG93IFBvc3RncmVTUUwgdmVyc2lvbiBudW1iZXJpbmcgaXMgaGFuZGxlZCwg d2hpY2ggaXMKKyAgICAjIGluIDMgY2FtcHM6IDEgYW5kIG9sZGVyLCA2LjAgLSA5LjYsIDEw IC0gY3VycmVudAorICAgICMgSXQgaXMgdGhlbiBwdXQgaW50byBhIHVuaXF1ZSBzZXQKKyAg ICAjIExhc3RseSwgd2UgZGV0ZXJtaW5lIHRoZSBuZXh0L3ByZXZpb3VzIHZlcnNpb25zIChs ZWFkL2xhZykgc28gd2UgYXJlIGFibGUKKyAgICAjIHRvIGVhc2lseSBwYWdlIGJldHdlZW4g dGhlIGRpZmZlcmVudCB2ZXJzaW9ucyBpbiB0aGUgdW5pcXVlIHJlbGVhc2Ugbm90ZSB2aWV3 CisgICAgIyBXZSBvbmx5IGluY2x1ZGUgdGhlIGNvbnRlbnQgaWYgd2UgYXJlIGRvaW5nIGFu IGFjdHVhbCBsb29rdXAgb24gYW4gZXhhY3QKKyAgICAjIG1ham9yL21pbm9yIHJlbGVhc2Ug cGFpciwgdG8gbGltaXQgaG93IG11Y2ggZGF0YSB3ZSBsb2FkIGludG8gbWVtb3J5CisgICAg c3FsID0gIiIiCisgICAgU0VMRUNUCisgICAgICAgIHtjb250ZW50fQorICAgICAgICBmaWxl LCBtYWpvciwgbWlub3IsCisgICAgICAgIGxhZyhtaW5vcikgT1ZFUiAoUEFSVElUSU9OIEJZ IG1ham9yIE9SREVSIEJZIG1pbm9yKSBBUyBwcmV2aW91cywKKyAgICAgICAgbGVhZChtaW5v cikgT1ZFUiAoUEFSVElUSU9OIEJZIG1ham9yIE9SREVSIEJZIG1pbm9yKSBBUyBuZXh0Cisg ICAgRlJPTSAoCisgICAgICAgIFNFTEVDVCBESVNUSU5DVCBPTiAoZmlsZSwgbWFqb3IsIG1p bm9yKQorICAgICAgICAgICAge2NvbnRlbnR9CisgICAgICAgICAgICBmaWxlLAorICAgICAg ICAgICAgQ0FTRQorICAgICAgICAgICAgICAgIFdIRU4gdlsxXTo6aW50ID49IDEwIFRIRU4g dlsxXTo6bnVtZXJpYworICAgICAgICAgICAgICAgIFdIRU4gdlsxXTo6aW50IDw9IDEgVEhF TiB2WzFdOjppbnQKKyAgICAgICAgICAgICAgICBFTFNFIGFycmF5X3RvX3N0cmluZyh2WzE6 Ml0sICcuJyk6Om51bWVyaWMgRU5EIEFTIG1ham9yLAorICAgICAgICAgICAgQ09BTEVTQ0Uo CisgICAgICAgICAgICAgICAgQ0FTRQorICAgICAgICAgICAgICAgICAgICBXSEVOIHZbMV06 OmludCA+PSAxMCBUSEVOIHZbMl0KKyAgICAgICAgICAgICAgICAgICAgV0hFTiB2WzFdOjpp bnQgPD0gMSBUSEVOICcuJyB8fCB2WzJdCisgICAgICAgICAgICAgICAgICAgIEVMU0Ugdlsz XQorICAgICAgICAgICAgICAgIEVORDo6bnVtZXJpYywgMAorICAgICAgICAgICAgKSBBUyBt aW5vcgorICAgICAgICBGUk9NICgKKyAgICAgICAgICAgIFNFTEVDVAorICAgICAgICAgICAg ICAgIHtjb250ZW50fQorICAgICAgICAgICAgICAgIGZpbGUsCisgICAgICAgICAgICAgICAg c3RyaW5nX3RvX2FycmF5KHJlZ2V4cF9yZXBsYWNlKGZpbGUsICdyZWxlYXNlLSguKilcLmh0 bS4qJywgJ1xcMScpLCAnLScpIEFTIHYKKyAgICAgICAgICAgIEZST00gZG9jcworICAgICAg ICAgICAgV0hFUkUgZmlsZSB+ICdecmVsZWFzZS1cZCsnIEFORCB2ZXJzaW9uID49IDkuMwor ICAgICAgICApIHIKKyAgICApIHJyCisgICAgIiIiCisgICAgcGFyYW1zID0gW10KKyAgICAj IGlmIHRoZSBtYWpvciArIG1pbm9yIHZlcnNpb24gYXJlIHByb3ZpZGVkLCB0aGVuIHdlIHdh bnQgdG8gbmFycm93IGRvd24KKyAgICAjIHRoZSByZXN1bHRzIHRvIGFsbCB0aGUgcmVsZWFz ZSBub3RlcyBmb3IgdGhlIG1pbm9yIHZlcnNpb24sIGFzIHdlIG5lZWQgdGhlCisgICAgIyBs aXN0IG9mIHRoZSBlbnRpcmUgc2V0IGluIG9yZGVyIHRvIGdlbmVyYXRlIHRoZSBuaWNlIHNp ZGUgYmFyIGluIHRoZSByZWxlYXNlCisgICAgIyBub3RlcworICAgICMgb3RoZXJ3aXNlIGVu c3VyZSB0aGUgcmVsZWFzZSBub3RlcyBhcmUgcmV0dXJuZWQgaW4gb3JkZXIKKyAgICBpZiBt YWpvcl92ZXJzaW9uIGlzIG5vdCBOb25lIGFuZCBtaW5vcl92ZXJzaW9uIGlzIG5vdCBOb25l OgorICAgICAgICAjIGF0IHRoaXMgcG9pbnQsIGluY2x1ZGUgdGhlIGNvbnRlbnQKKyAgICAg ICAgc3FsID0gc3FsLmZvcm1hdChjb250ZW50PSJjb250ZW50LCIpCisgICAgICAgICMgcmVz dHJpY3QgdG8gdGhlIG1ham9yIHZlcnNpb24sIG9yZGVyIGZyb20gbGF0ZXN0IHRvIGVhcmxp ZXN0IG1pbm9yCisgICAgICAgIHNxbCA9ICIiInt9CisgICAgICAgIFdIRVJFIHJyLm1ham9y ID0gJXMKKyAgICAgICAgT1JERVIgQlkgcnIubWlub3IgREVTQyIiIi5mb3JtYXQoc3FsKQor ICAgICAgICBwYXJhbXMgKz0gW21ham9yX3ZlcnNpb25dCisgICAgZWxzZToKKyAgICAgICAg c3FsID0gc3FsLmZvcm1hdChjb250ZW50PSIiKQorICAgICAgICBzcWwgKz0gIiIiCisgICAg ICAgIE9SREVSIEJZIHJyLm1ham9yIERFU0MsIHJyLm1pbm9yIERFU0M7CisgICAgICAgICIi IgorICAgICMgcnVuIHRoZSBxdWVyeSwgbG9hZGluZyBhIGxpc3Qgb2YgZGljdCB0aGF0IGNv bnRhaW4gYWxsIG9mIHRoZSByZWxlYXNlCisgICAgIyBub3RlcyB0aGF0IGFyZSBmaWx0ZXJl ZCBvdXQgYnkgdGhlIHF1ZXJ5CisgICAgcmVsZWFzZV9ub3RlcyA9IGV4ZWNfdG9fZGljdChz cWwsIHBhcmFtcykKKyAgICAjIGRldGVybWluZSB3aGljaCBzZXQgb2YgZGF0YSB0byBwYXNz IHRvIHRoZSB0ZW1wbGF0ZToKKyAgICAjIGlmIGJvdGggbWFqb3IvbWlub3IgdmVyc2lvbnMg YXJlIHByZXNlbnQsIHdlIHdpbGwgbG9hZCB0aGUgcmVsZWFzZSBub3RlcworICAgICMgaWYg bmVpdGhlciBhcmUgcHJlc2VudCwgd2UgbG9hZCB0aGUgbGlzdCBvZiBhbGwgb2YgdGhlIHJl bGVhc2Ugbm90ZXMgdG8gbGlzdCBvdXQKKyAgICBpZiBtYWpvcl92ZXJzaW9uIGlzIG5vdCBO b25lIGFuZCBtaW5vcl92ZXJzaW9uIGlzIG5vdCBOb25lOgorICAgICAgICAjIGZpcnN0LCBz ZWUgaWYgYW55IHJlbGVhc2Ugbm90ZXMgd2VyZSByZXR1cm5lZDsgaWYgbm90LCByYWlzZSBh IDQwNAorICAgICAgICBpZiBub3QgcmVsZWFzZV9ub3RlczoKKyAgICAgICAgICAgIHJhaXNl IEh0dHA0MDQoKQorICAgICAgICAjIG5leHQsIHNlZSBpZiB3ZSBjYW4gZmluZCB0aGUgc3Bl Y2lmaWMgcmVsZWFzZSBub3RlcyB3ZSBhcmUgbG9va2luZyBmb3IKKyAgICAgICAgIyBmb3Jt YXQgd2hhdCB0aGUgIm1pbm9yIiB2ZXJzaW9uIHNob3VsZCBsb29rIGxpa2UKKyAgICAgICAg dHJ5OgorICAgICAgICAgICAgbWlub3IgPSBEZWNpbWFsKCcwLnt9Jy5mb3JtYXQobWlub3Jf dmVyc2lvbikgaWYgbWFqb3JfdmVyc2lvbiBpbiBbJzAnLCAnMSddIGVsc2UgbWlub3JfdmVy c2lvbikKKyAgICAgICAgZXhjZXB0IFR5cGVFcnJvcjoKKyAgICAgICAgICAgIHJhaXNlIEh0 dHA0MDQoKQorICAgICAgICByZWxlYXNlX25vdGUgPSBbciBmb3IgciBpbiByZWxlYXNlX25v dGVzIGlmIHJbJ21pbm9yJ10gPT0gbWlub3JdWzBdCisgICAgICAgICMgb2YgY291cnNlLCBp ZiBub3RoaW5nIGlzIGZvdW5kLCByZXR1cm4gYSA0MDQKKyAgICAgICAgaWYgbm90IHJlbGVh c2Vfbm90ZToKKyAgICAgICAgICAgIHJhaXNlIEh0dHA0MDQoKQorICAgICAgICBjb250ZXh0 ID0geworICAgICAgICAgICAgJ21ham9yX3ZlcnNpb24nOiBtYWpvcl92ZXJzaW9uLAorICAg ICAgICAgICAgJ21pbm9yX3ZlcnNpb24nOiBtaW5vcl92ZXJzaW9uLAorICAgICAgICAgICAg J3JlbGVhc2Vfbm90ZSc6IHJlbGVhc2Vfbm90ZSwKKyAgICAgICAgICAgICdyZWxlYXNlX25v dGVzJzogcmVsZWFzZV9ub3RlcworICAgICAgICB9CisgICAgZWxzZToKKyAgICAgICAgY29u dGV4dCA9IHsgJ3JlbGVhc2Vfbm90ZXMnOiByZWxlYXNlX25vdGVzIH0KKyAgICByZXR1cm4g cmVuZGVyX3Bnd2ViKHJlcXVlc3QsICdkb2NzJywgJ2RvY3MvcmVsZWFzZV9ub3Rlcy5odG1s JywgY29udGV4dCkKIAogQGxvZ2luX3JlcXVpcmVkCiBkZWYgY29tbWVudGZvcm0ocmVxdWVz dCwgaXRlbWlkLCB2ZXJzaW9uLCBmaWxlbmFtZSk6CmRpZmYgLS1naXQgYS9wZ3dlYi91cmxz LnB5IGIvcGd3ZWIvdXJscy5weQppbmRleCBkOGM2NjRmMi4uODA5MTNjM2YgMTAwNjQ0Ci0t LSBhL3Bnd2ViL3VybHMucHkKKysrIGIvcGd3ZWIvdXJscy5weQpAQCAtNTgsNiArNTgsOCBA QCB1cmxwYXR0ZXJucyA9IFsKICAgICB1cmwocideZG9jcy8kJywgcGd3ZWIuZG9jcy52aWV3 cy5yb290KSwKICAgICB1cmwocideZG9jcy9tYW51YWxzLyQnLCBwZ3dlYi5kb2NzLnZpZXdz Lm1hbnVhbHMpLAogICAgIHVybChyJ15kb2NzL21hbnVhbHMvYXJjaGl2ZS8kJywgcGd3ZWIu ZG9jcy52aWV3cy5tYW51YWxhcmNoaXZlKSwKKyAgICB1cmwocideZG9jcy9yZWxlYXNlLyQn LCBwZ3dlYi5kb2NzLnZpZXdzLnJlbGVhc2Vfbm90ZXMpLAorICAgIHVybChyJ15kb2NzL3Jl bGVhc2UvKCg/UDxtYWpvcl92ZXJzaW9uPihcZCtcLlxkKyl8XGQrKVwuKD9QPG1pbm9yX3Zl cnNpb24+XGQrKSkvJCcsIHBnd2ViLmRvY3Mudmlld3MucmVsZWFzZV9ub3RlcyksCiAgICAg IyBMZWdhY3kgVVJMcyBmb3IgYWNjZXNzaW5nIHRoZSBkb2NzIHBhZ2U7IHByb3ZpZGVzIGEg cGVybWFuZW50IHJlZGlyZWN0CiAgICAgdXJsKHInXmRvY3MvKGN1cnJlbnR8ZGV2ZWx8XGQr KD86XC5cZCk/KS8oc3RhdGljfGludGVyYWN0aXZlKS8oKC4qKS5odG1sPyk/JCcsIHBnd2Vi LmRvY3Mudmlld3MuZG9jc3Blcm1hbmVudHJlZGlyZWN0KSwKICAgICB1cmwocideZG9jcy8o Y3VycmVudHxkZXZlbHxcZCsoPzpcLlxkKT8pLyguKikuaHRtbD8kJywgcGd3ZWIuZG9jcy52 aWV3cy5kb2NwYWdlKSwKZGlmZiAtLWdpdCBhL3Bnd2ViL3V0aWwvY29udGV4dHMucHkgYi9w Z3dlYi91dGlsL2NvbnRleHRzLnB5CmluZGV4IDI1YzQ3ODdlLi5jMzhmMjQ4MCAxMDA2NDQK LS0tIGEvcGd3ZWIvdXRpbC9jb250ZXh0cy5weQorKysgYi9wZ3dlYi91dGlsL2NvbnRleHRz LnB5CkBAIC0zNCw2ICszNCw3IEBAIHNpdGVuYXYgPSB7CiAgICAgICAgICAgICB7J3RpdGxl JzogJ0phcGFuZXNlJywgJ2xpbmsnOiAnaHR0cDovL3d3dy5wb3N0Z3Jlc3FsLmpwL2RvY3Vt ZW50Lyd9LAogICAgICAgICAgICAgeyd0aXRsZSc6ICdSdXNzaWFuJywgJ2xpbmsnOiAnaHR0 cHM6Ly9wb3N0Z3Jlc3Byby5ydS9kb2NzL3Bvc3RncmVzcWwnfSwKICAgICAgICAgXX0sCisg ICAgICAgIHsndGl0bGUnOiAnUmVsZWFzZSBOb3RlcycsICdsaW5rJzogJy9kb2NzL3JlbGVh c2UvJ30sCiAgICAgICAgIHsndGl0bGUnOiAnQm9va3MnLCAnbGluayc6ICcvZG9jcy9ib29r cy8nfSwKICAgICAgICAgeyd0aXRsZSc6ICdPbmxpbmUgUmVzb3VyY2VzJywgJ2xpbmsnOiAn L2RvY3Mvb25saW5lLXJlc291cmNlcy8nfSwKICAgICAgICAgeyd0aXRsZSc6ICdXaWtpJywg J2xpbmsnOiAnaHR0cHM6Ly93aWtpLnBvc3RncmVzcWwub3JnJ30sCmRpZmYgLS1naXQgYS9w Z3dlYi91dGlsL2RiLnB5IGIvcGd3ZWIvdXRpbC9kYi5weQpuZXcgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAwMDAwMDAwMC4uYTFlZmFlMGEKLS0tIC9kZXYvbnVsbAorKysgYi9wZ3dlYi91 dGlsL2RiLnB5CkBAIC0wLDAgKzEsNyBAQAorZnJvbSBkamFuZ28uZGIgaW1wb3J0IGNvbm5l Y3Rpb24KKworZGVmIGV4ZWNfdG9fZGljdChxdWVyeSwgcGFyYW1zPU5vbmUpOgorICAgIGN1 cnMgPSBjb25uZWN0aW9uLmN1cnNvcigpCisgICAgY3Vycy5leGVjdXRlKHF1ZXJ5LCBwYXJh bXMpCisgICAgY29sdW1ucyA9IFtjb2xbMF0gZm9yIGNvbCBpbiBjdXJzLmRlc2NyaXB0aW9u XQorICAgIHJldHVybiBbZGljdChsaXN0KHppcChjb2x1bW5zLCByb3cpKSkgZm9yIHJvdyBp biBjdXJzLmZldGNoYWxsKCldCmRpZmYgLS1naXQgYS90ZW1wbGF0ZXMvZG9jcy9yZWxlYXNl X25vdGVzLmh0bWwgYi90ZW1wbGF0ZXMvZG9jcy9yZWxlYXNlX25vdGVzLmh0bWwKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAuLmNhNzRlOGQxCi0tLSAvZGV2L251bGwK KysrIGIvdGVtcGxhdGVzL2RvY3MvcmVsZWFzZV9ub3Rlcy5odG1sCkBAIC0wLDAgKzEsMTA0 IEBACit7JSBleHRlbmRzICJiYXNlL3BhZ2UuaHRtbCIgJX0KK3slIGxvYWQgcGdmaWx0ZXJz ICV9CisKK3slIGJsb2NrIGV4dHJhaGVhZCAlfQoreyUgaWYgbWFqb3JfdmVyc2lvbiBpcyBu b3QgTm9uZSBhbmQgbWlub3JfdmVyc2lvbiBpcyBub3QgTm9uZSAlfQorICA8YmFzZSBocmVm PSIvZG9jcy97eyBtYWpvcl92ZXJzaW9uIH19LyIgLz4KK3slIGVuZGlmICV9Cit7JSBlbmRi bG9jayBleHRyYWhlYWQgJX0KKworeyVibG9jayB0aXRsZSV9UmVsZWFzZSBOb3Rlc3slZW5k YmxvY2slfQorCit7JSBibG9jayBjb250ZW50cyAlfQoreyUgcmVncm91cCByZWxlYXNlX25v dGVzIGJ5IG1ham9yIGFzIHJlbGVhc2Vfbm90ZV9ncm91cHMgJX0KKworPGRpdiBpZD0icmVs ZWFzZS1ub3RlcyIgY2xhc3M9InJvdyI+CisgIHslIGlmIG1ham9yX3ZlcnNpb24gaXMgbm90 IE5vbmUgYW5kIG1pbm9yX3ZlcnNpb24gaXMgbm90IE5vbmUgJX0KKyAgICA8ZGl2IGNsYXNz PSJjb2wtbWQtMTAiPgorICAgICAgPHNlY3Rpb24+CisgICAgICAgIDxoMT5SZWxlYXNlIE5v dGVzIDxpIGNsYXNzPSJmYXIgZmEtZmlsZS1hbHQiPjwvaT48L2gxPgorICAgICAgICA8aDI+ CisgICAgICAgICAgeyUgaWYgbWFqb3JfdmVyc2lvbiA9PSAnMCcgJX1Qb3N0Z3Jlczk1eyUg ZWxzZSAlfVBvc3RncmVTUUx7JSBlbmRpZiAlfQorICAgICAgICAgIHt7IG1ham9yX3ZlcnNp b24gfX0ue3sgcmVsZWFzZV9ub3RlLm1pbm9yfHJlbGVhc2Vfbm90ZXNfcGdfbWlub3JfdmVy c2lvbjptYWpvcl92ZXJzaW9uIH19CisgICAgICAgIDwvaDI+CisgICAgICA8L3NlY3Rpb24+ CisgICAgICA8ZGl2IGlkPSJkb2NDb250ZW50Ij4KKyAgICAgICAge3sgcmVsZWFzZV9ub3Rl LmNvbnRlbnR8c2FmZSB9fQorICAgICAgPC9kaXY+CisgICAgICA8ZGl2IGNsYXNzPSJyb3ci PgorICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMyI+CisgICAgICAgICAgeyUgaWYgcmVs ZWFzZV9ub3RlLnByZXZpb3VzIGlzIG5vdCBOb25lICV9CisgICAgICAgICAgICA8YSBocmVm PSIvZG9jcy9yZWxlYXNlL3t7IG1ham9yX3ZlcnNpb24gfX0ue3sgcmVsZWFzZV9ub3RlLnBy ZXZpb3VzfHJlbGVhc2Vfbm90ZXNfcGdfbWlub3JfdmVyc2lvbjptYWpvcl92ZXJzaW9uIH19 LyI+CisgICAgICAgICAgICAgIFByZXZpb3VzCisgICAgICAgICAgICA8L2E+CisgICAgICAg ICAgeyUgZW5kaWYgJX0KKyAgICAgICAgPC9kaXY+CisgICAgICAgIDxkaXYgY2xhc3M9ImNv bC1tZC02IHRleHQtY2VudGVyIj4KKyAgICAgICAgICA8cD4KKyAgICAgICAgICAgIDxhIGhy ZWY9Ii9kb2NzL3JlbGVhc2UvIj4KKyAgICAgICAgICAgICAgUmV0dXJuIHRvIHRoZSBSZWxl YXNlIE5vdGVzIEFyY2hpdmUKKyAgICAgICAgICAgIDwvYT4KKyAgICAgICAgICA8L3A+Cisg ICAgICAgIDwvZGl2PgorICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMyB0ZXh0LXJpZ2h0 Ij4KKyAgICAgICAgICB7JSBpZiByZWxlYXNlX25vdGUubmV4dCBpcyBub3QgTm9uZSAlfQor ICAgICAgICAgICAgPGEgaHJlZj0iL2RvY3MvcmVsZWFzZS97eyBtYWpvcl92ZXJzaW9uIH19 Lnt7IHJlbGVhc2Vfbm90ZS5uZXh0fHJlbGVhc2Vfbm90ZXNfcGdfbWlub3JfdmVyc2lvbjpt YWpvcl92ZXJzaW9uIH19LyI+CisgICAgICAgICAgICAgIE5leHQKKyAgICAgICAgICAgIDwv YT4KKyAgICAgICAgICB7JSBlbmRpZiAlfQorICAgICAgICA8L2Rpdj4KKyAgICAgIDwvZGl2 PgorICAgIDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImNvbC1tZC0yIHZlcnNpb24tbGlzdCI+ CisgICAgICA8c2VjdGlvbj4KKyAgICAgICAgPGgyPlZlcnNpb25zPC9oMj4KKyAgICAgIDwv c2VjdGlvbj4KKyAgICAgIDx1bD4KKyAgICAgICAgeyUgZm9yIHIgaW4gcmVsZWFzZV9ub3Rl cyAlfQorICAgICAgICAgIDxsaT4KKyAgICAgICAgICAgIHslIGlmIHIubWlub3IgPT0gcmVs ZWFzZV9ub3RlLm1pbm9yICV9CisgICAgICAgICAgICAgIDxzdHJvbmc+CisgICAgICAgICAg ICAgICAge3sgbWFqb3JfdmVyc2lvbiB9fS57eyByLm1pbm9yfHJlbGVhc2Vfbm90ZXNfcGdf bWlub3JfdmVyc2lvbjptYWpvcl92ZXJzaW9uIH19CisgICAgICAgICAgICAgIDwvc3Ryb25n PgorICAgICAgICAgICAgeyUgZWxzZSAlfQorICAgICAgICAgICAgICA8YSBocmVmPSIvZG9j cy9yZWxlYXNlL3t7IG1ham9yX3ZlcnNpb24gfX0ue3sgci5taW5vcnxyZWxlYXNlX25vdGVz X3BnX21pbm9yX3ZlcnNpb246bWFqb3JfdmVyc2lvbiB9fS8iPgorICAgICAgICAgICAgICAg IHt7IG1ham9yX3ZlcnNpb24gfX0ue3sgci5taW5vcnxyZWxlYXNlX25vdGVzX3BnX21pbm9y X3ZlcnNpb246bWFqb3JfdmVyc2lvbiB9fQorICAgICAgICAgICAgICA8L2E+CisgICAgICAg ICAgICB7JSBlbmRpZiAlfQorICAgICAgICAgIDwvbGk+CisgICAgICAgIHslIGVuZGZvciAl fQorICAgICAgPC91bD4KKyAgICA8L2Rpdj4KKyAgeyUgZWxzZSAlfQorICAgIDxkaXYgY2xh c3M9ImNvbC1tZC05Ij4KKyAgICAgIDxzZWN0aW9uPgorICAgICAgICA8aDE+UmVsZWFzZSBO b3RlcyA8aSBjbGFzcz0iZmFyIGZhLWZpbGUtYWx0Ij48L2k+PC9oMT4KKyAgICAgIDwvc2Vj dGlvbj4KKyAgICAgIDxwPkJlbG93IGlzIHRoZSBjb21wbGV0ZSBhcmNoaXZlIG9mIHJlbGVh c2Ugbm90ZXMgZm9yIGV2ZXJ5IHZlcnNpb24gb2YgUG9zdGdyZVNRTC48L3A+CisgICAgICA8 dWwgY2xhc3M9InJlbGVhc2Utbm90ZXMtbGlzdCBmYS11bCI+CisgICAgICAgIHslIGZvciBy ZWxlYXNlX25vdGVfZ3JvdXAgaW4gcmVsZWFzZV9ub3RlX2dyb3VwcyAlfQorICAgICAgICAg IHslIHdpdGggbWFqb3JfdmVyc2lvbj1yZWxlYXNlX25vdGVfZ3JvdXAuZ3JvdXBlciAlfQor ICAgICAgICAgICAgPGxpPgorICAgICAgICAgICAgICA8YSBjbGFzcz0iY29sbGFwc2VkIiBo cmVmPSIjcmVsZWFzZXt7IG1ham9yX3ZlcnNpb24gfX0iIGRhdGEtdG9nZ2xlPSJjb2xsYXBz ZSIgcm9sZT0iYnV0dG9uIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSIgYXJpYS1jb250cm9scz0i cmVsZWFzZXt7IG1ham9yX3ZlcnNpb24gfX0iPgorICAgICAgICAgICAgICAgIDxzcGFuIGNs YXNzPSJmYS1saSByaWdodCI+PGkgY2xhc3M9ImZhcyBmYS1hbmdsZS1yaWdodCI+PC9pPjwv c3Bhbj4KKyAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZmEtbGkgZG93biI+PGkgY2xh c3M9ImZhcyBmYS1hbmdsZS1kb3duIj48L2k+PC9zcGFuPgorICAgICAgICAgICAgICAgIHsl IGlmIG1ham9yX3ZlcnNpb24gPT0gMCAlfVBvc3RncmVzOTV7JSBlbHNlICV9UG9zdGdyZVNR TCB7eyBtYWpvcl92ZXJzaW9uIH19eyUgZW5kaWYgJX0KKyAgICAgICAgICAgICAgPC9hPgor ICAgICAgICAgICAgICA8dWwgY2xhc3M9ImNvbGxhcHNlIHJlbGVhc2Utbm90ZXMtbGlzdCIg aWQ9InJlbGVhc2V7eyBtYWpvcl92ZXJzaW9uIH19Ij4KKyAgICAgICAgICAgICAgICB7JSBm b3IgcmVsZWFzZV9ub3RlIGluIHJlbGVhc2Vfbm90ZV9ncm91cC5saXN0ICV9CisgICAgICAg ICAgICAgICAgICA8bGk+CisgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9kb2NzL3Jl bGVhc2Uve3sgbWFqb3JfdmVyc2lvbiB9fS57eyByZWxlYXNlX25vdGUubWlub3J8cmVsZWFz ZV9ub3Rlc19wZ19taW5vcl92ZXJzaW9uOm1ham9yX3ZlcnNpb24gfX0vIj4KKyAgICAgICAg ICAgICAgICAgICAgICB7eyBtYWpvcl92ZXJzaW9uIH19Lnt7IHJlbGVhc2Vfbm90ZS5taW5v cnxyZWxlYXNlX25vdGVzX3BnX21pbm9yX3ZlcnNpb246bWFqb3JfdmVyc2lvbiB9fQorICAg ICAgICAgICAgICAgICAgICA8L2E+CisgICAgICAgICAgICAgICAgICA8L2xpPgorICAgICAg ICAgICAgICAgIHslIGVuZGZvciAlfQorICAgICAgICAgICAgICA8L3VsPgorICAgICAgICAg ICAgPC9saT4KKyAgICAgICAgICB7JSBlbmR3aXRoICV9CisgICAgICAgIHslIGVuZGZvciAl fQorICAgICAgPC91bD4KKyAgICA8L2Rpdj4KKyAgeyUgZW5kaWYgJX0KKzwvZGl2PgorCit7 JSBlbmRibG9jayAlfQotLSAKMi4xNC4zIChBcHBsZSBHaXQtOTgpCgo= --------------7DC464C59DCD83738DDCEDDD Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0"; name="0002-Ensure-release-notes-from-older-version-still-load-w.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename*0="0002-Ensure-release-notes-from-older-version-still-load-w.pa"; filename*1="tch" RnJvbSBiYTUyOWZlMWRlZDVjMmQ2NmU2OTEwZTc3OWRmZTIxOGIyOTQ0ZTRjIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAiSm9uYXRoYW4gUy4gS2F0eiIgPGpvbmF0aGFuLmth dHpAZXhjb3ZlbnR1cmVzLmNvbT4KRGF0ZTogV2VkLCAxMyBGZWIgMjAxOSAxNToyMjo0OSAt MDUwMApTdWJqZWN0OiBbUEFUQ0ggMi8yXSBFbnN1cmUgcmVsZWFzZSBub3RlcyBmcm9tIG9s ZGVyIHZlcnNpb24gc3RpbGwgbG9hZAogd2l0aG91dCA0MDQgZXJyb3JzLgoKQW4gdXBjb21p bmcgY2hhbmdlIGluIFBvc3RncmVTUUwga2VlcHMgb25seSByZWxlYXNlIG5vdGVzIGluIHRo ZWlyCmN1cnJlbnQgdmVyc2lvbnMuIFNvIGUuZy4sIFBvc3RncmVTUUwgMTEgb25seSBoYXMg dGhlIHJlbGVhc2Ugbm90ZXMKZm9yIDExLjAsIDExLjEsIDExLjIgZXRjLgoKVGh1cywgZm9y IFBvc3RncmVTUUwgOS40IG9uIHVwLCBhbnkgVVJMcyBzdWNoIGFzIC9kb2NzLzEwL3JlbGVh c2UtOS02LTguaHRtbAp3b3VsZCByZXR1cm4gYSA0MDQuIEFkZGl0b25hbCwgVVJMcyB3aXRo IC9jdXJyZW50LyBhbmQgL2RldmVsLyB3b3VsZCBicmVhawphcyB3ZWxsLgoKVGhpcyBwYXRj aCBwcmV2ZW50cyB0aGVzZSA0MDRzIGZyb20gb2NjdXJpbmcgYnkgcmVkaXJlY3RpbmcgdXNl cnMgYWNjZXNzaW5nCnJlbGVhc2Ugbm90ZXMgaW4gdGhlIDkuNCBhbmQgYWJvdmUgZG9jdW1l bnRhdGlvbiB0byB0aGUgb2xkZXIgdmVyc2lvbnMKb2YgdGhlIHJlbGVhc2Ugbm90ZXMgYnkg cmVkaXJlY3RpbmcgdGhlbSB0byB0aGUgbm90ZXMgaW4gdGhlIHNwZWNpZmljCnZlcnNpb24u IFNvIGluIHRoZSBhYm92ZSBleGFtcGxlLCBhIHVzZXIgd291bGQgYmUgcmVkaXJlY3QgdG8K L2RvY3MvOS42L3JlbGVhc2UtOS02LTguaHRtbAoKQXMgd2UgZG8gbm90IGhhdmUgZG9jdW1l bnRhdGlvbiBvbiB0aGUgd2Vic2l0ZSBwYXN0IDcuMiwgYW55IHJlbGVhc2UKbm90ZXMgZnJv bSBhbiBvbGRlciB2ZXJzaW9uIGFyZSByZWRpcmVjdGVkIHRvIHRoZSByZWxlYXNlIG5vdGVz IHRyZWUKaW4gNy4yCi0tLQogcGd3ZWIvZG9jcy92aWV3cy5weSB8IDMxICsrKysrKysrKysr KysrKysrKysrKysrKysrKysrKy0KIDEgZmlsZSBjaGFuZ2VkLCAzMCBpbnNlcnRpb25zKCsp LCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvcGd3ZWIvZG9jcy92aWV3cy5weSBiL3Bn d2ViL2RvY3Mvdmlld3MucHkKaW5kZXggNjJmMGFiYjMuLjU0NjkwZWVjIDEwMDY0NAotLS0g YS9wZ3dlYi9kb2NzL3ZpZXdzLnB5CisrKyBiL3Bnd2ViL2RvY3Mvdmlld3MucHkKQEAgLTUs OCArNSw5IEBAIGZyb20gcGd3ZWIudXRpbC5kZWNvcmF0b3JzIGltcG9ydCBsb2dpbl9yZXF1 aXJlZCwgYWxsb3dfZnJhbWVzLCBjb250ZW50X3NvdXJjZXMKIGZyb20gZGphbmdvLmRiLm1v ZGVscyBpbXBvcnQgUQogZnJvbSBkamFuZ28uY29uZiBpbXBvcnQgc2V0dGluZ3MKIAotZnJv bSBkZWNpbWFsIGltcG9ydCBEZWNpbWFsCitmcm9tIGRlY2ltYWwgaW1wb3J0IERlY2ltYWws IFJPVU5EX0RPV04KIGltcG9ydCBvcworaW1wb3J0IHJlCiAKIGZyb20gcGd3ZWIudXRpbC5j b250ZXh0cyBpbXBvcnQgcmVuZGVyX3Bnd2ViCiBmcm9tIHBnd2ViLnV0aWwuaGVscGVycyBp bXBvcnQgdGVtcGxhdGVfdG9fc3RyaW5nCkBAIC01NCw2ICs1NSwzNCBAQCBkZWYgZG9jcGFn ZShyZXF1ZXN0LCB2ZXJzaW9uLCBmaWxlbmFtZSk6CiAgICAgICAgIHJldHVybiBIdHRwUmVz cG9uc2VQZXJtYW5lbnRSZWRpcmVjdCgiL2RvY3MvezB9L3sxfS5odG1sIi5mb3JtYXQoaW50 KHZlciksIGZpbGVuYW1lKSkKIAogICAgIGZ1bGxuYW1lID0gIiVzLiVzIiAlIChmaWxlbmFt ZSwgZXh0ZW5zaW9uKQorCisgICAgIyBCZWZvcmUgbG9va2luZyB1cCB0aGUgZG9jdW1lbnRh dGlvbiwgd2UgbmVlZCB0byBtYWtlIGEgY2hlY2sgZm9yIHJlbGVhc2UKKyAgICAjIG5vdGVz LiBCYXNlZCBvbiBhIGNoYW5nZSwgZnJvbSBQb3N0Z3JlU1FMIDkuNCBhbmQgdXAsIHJlbGVh c2Ugbm90ZXMgYXJlCisgICAgIyBvbmx5IGF2YWlsYWJsZSBmb3IgdGhlIGN1cnJlbnQgdmVy c2lvbiAoZS5nLiAxMSBvbmx5IGhhcyAxMS4wLCAxMS4xLCAxMS4yKQorICAgICMgVGhpcyBj aGVja3MgdG8gc2VlIGlmIHRoZXJlIGlzIGEgbWlzbWF0Y2ggKGUuZy4gdmVyID0gOS40LCBm dWxsbmFtZSA9IHJlbGVhc2UtOS0zLTIuaHRtbCkKKyAgICAjIGFuZCBwZXJmb3JtIGEgcmVk aXJlY3QgdG8gdGhlIG9sZGVyIHZlcnNpb24KKyAgICBpZiBmdWxsbmFtZS5zdGFydHN3aXRo KCdyZWxlYXNlLScpIGFuZCB2ZXIgPj0gRGVjaW1hbCgiOS40Iik6CisgICAgICAgICMgZmln dXJlIG91dCB3aGljaCB2ZXJzaW9uIHRvIHJlZGlyZWN0IHRvLiBOb3RlIHRoYXQgdGhlIG9s ZGVzdCB2ZXJzaW9uCisgICAgICAgICMgb2YgdGhlIGRvY3MgbG9hZGVkIGlzIDcuMgorICAg ICAgICByZWxlYXNlX3ZlcnNpb24gPSByZS5zdWIocidyZWxlYXNlLSgoXGQrKSgtXGQrKT8p KC1cZCspPy5odG1sJywKKyAgICAgICAgICAgIHInXDEnLCBmdWxsbmFtZSkucmVwbGFjZSgn LScsICcuJykKKyAgICAgICAgIyBjb252ZXJ0IHRvIERlY2ltYWwgZm9yIGVhc2Ugb2YgbWFu aXB1bGF0aW9uCisgICAgICAgIHJlbGVhc2VfdmVyc2lvbiA9IERlY2ltYWwocmVsZWFzZV92 ZXJzaW9uKQorICAgICAgICAjIGlmIHRoZSB2ZXJzaW9uIGlzIGdyZWF0ZXIgdGhhbiAxMCwg dHJ1bmNhdGUgdGhlIG51bWJlcgorICAgICAgICBpZiByZWxlYXNlX3ZlcnNpb24gPj0gRGVj aW1hbCgnMTAnKToKKyAgICAgICAgICAgIHJlbGVhc2VfdmVyc2lvbiA9IHJlbGVhc2VfdmVy c2lvbi5xdWFudGl6ZShEZWNpbWFsKCcxJyksIHJvdW5kaW5nPVJPVU5EX0RPV04pCisgICAg ICAgICMgb25seSBwcm9jZWVkIGlmIHRoZSByZWxlYXNlIHZlcnNpb24gb2YgdGhlIGRvY3Vt ZW50cyBkb2VzIG5vdCBtYXRjaAorICAgICAgICAjIHRoZSBjYWxjdWxhdGVkIHJlbGVhc2Ug dmVyc2lvbgorICAgICAgICBpZiByZWxlYXNlX3ZlcnNpb24gIT0gdmVyOgorICAgICAgICAg ICAgdXJsID0gIi9kb2NzLyIKKyAgICAgICAgICAgIGlmIHJlbGVhc2VfdmVyc2lvbiA+PSBE ZWNpbWFsKCcxMCcpOgorICAgICAgICAgICAgICAgIHVybCArPSAie30ve30iLmZvcm1hdChp bnQocmVsZWFzZV92ZXJzaW9uKSwgZnVsbG5hbWUpCisgICAgICAgICAgICBlbGlmIHJlbGVh c2VfdmVyc2lvbiA8IERlY2ltYWwoJzcuMicpOgorICAgICAgICAgICAgICAgIHVybCArPSAi Ny4yL3t9Ii5mb3JtYXQoZnVsbG5hbWUpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAg ICAgICAgIHVybCArPSAie30ve30iLmZvcm1hdChyZWxlYXNlX3ZlcnNpb24sIGZ1bGxuYW1l KQorICAgICAgICAgICAgcmV0dXJuIEh0dHBSZXNwb25zZVBlcm1hbmVudFJlZGlyZWN0KHVy bCkKKwogICAgIHBhZ2UgPSBnZXRfb2JqZWN0X29yXzQwNChEb2NQYWdlLCB2ZXJzaW9uPXZl ciwgZmlsZT1mdWxsbmFtZSkKICAgICB2ZXJzaW9ucyA9IERvY1BhZ2Uub2JqZWN0cy5leHRy YSgKICAgICAgICAgd2hlcmU9WyJmaWxlPSVzIE9SIGZpbGUgSU4gKFNFTEVDVCBmaWxlMiBG Uk9NIGRvY3NhbGlhcyBXSEVSRSBmaWxlMT0lcykgT1IgZmlsZSBJTiAoU0VMRUNUIGZpbGUx IEZST00gZG9jc2FsaWFzIFdIRVJFIGZpbGUyPSVzKSJdLAotLSAKMi4xNC4zIChBcHBsZSBH aXQtOTgpCgo= --------------7DC464C59DCD83738DDCEDDD-- --Nyc3L6P4g5tWM8MiiyT9apvkOfvTF1vYR-- --sD8znzRwyN0tZb3XDqZPw8SIo9nQvyyVT Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEE+oS2la8r95ogZD/x8QSccp8cZScFAlyCwMMACgkQ8QSccp8c ZSd7BRAAh0pGYnCMe04Kf+btG87H1muCqjdWxilQdoJzpJnrAzhKC6GLBv1e5H1c CyY4twODyHM56D6wM/Fr/A91rUoJWp4cKmRI1g6+ZgLG4aSEpvJxkXYsQ75MxnYQ VPQlSR8sLfR+ld2DW2rxzDIAGCHvFthA56PP3t5oaMf3XaKLqQUMjxg2BnCvoNcj 3Tn0mHUr/P3PoB96wE8LSbi1Ygxm3bew87b14Swh1Kkp2rKPDZLB5AavqgEQIZZJ U8yeB8LAdZKCXsPm7ci0LrnAgyEM2n1736njSB51Y3Q28fmAbiJ0pj3y8+LrLBcP OVJZkzWQ1msdcn8+S7oMONLK/0eXkbsQu6amP5Htf7r5KYxqai/WChW3gYIW+z/9 UzAbXMWzDDqDJMHVxoTID8XXl2ASiDtTjvvsNL6TWCBK4ECHujpL15WeOOHGH0CC ioJmBVGBQKuVuWNad/VoiHjzyG8Vu+59UwDh8AmrK0qXb4SbUj1tcQCNLfNU1CCb HMMPnP3FN1w8YETaaxRaHtYizj5ckzvO1sKtQw9mQ9pL4PRbuH3AtyZVJLSKiJa3 kuttY6UWEEVuDl3iDFm7Ig1J5u2ReMwLySsYICGoyB3qRCAXhe5i0QN7iOY/Zep0 i5qydIfxv8pPf+enLt7pFOWlUosIBQVsIAK1sH+XIVJsdUqzeLU= =Ut41 -----END PGP SIGNATURE----- --sD8znzRwyN0tZb3XDqZPw8SIo9nQvyyVT--