From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp11.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id ODIlOasNJ2OAEAAAbAwnHQ (envelope-from ) for ; Sun, 18 Sep 2022 14:23:08 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp11.migadu.com with LMTPS id qBktOasNJ2O1tgAA9RJhRA (envelope-from ) for ; Sun, 18 Sep 2022 14:23:07 +0200 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 461AD75C9 for ; Sun, 18 Sep 2022 14:23:07 +0200 (CEST) Received: from localhost ([::1]:52788 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oZtKE-0001pK-ES for larch@yhetil.org; Sun, 18 Sep 2022 08:23:06 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:44114) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oZtKA-0001oN-Vv for bug-guix@gnu.org; Sun, 18 Sep 2022 08:23:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:49135) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oZtKA-00077e-MB for bug-guix@gnu.org; Sun, 18 Sep 2022 08:23:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1oZtKA-00082a-8j for bug-guix@gnu.org; Sun, 18 Sep 2022 08:23:02 -0400 X-Loop: help-debbugs@gnu.org Subject: bug#36508: [DRAFT PATCH] Stable allocation of uids, by keeping a historical mapping. References: <20190705083620.lbzu7a33awbymh3d@cf0> In-Reply-To: <20190705083620.lbzu7a33awbymh3d@cf0> Resent-From: Maxime Devos Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Sun, 18 Sep 2022 12:23:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 36508 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: 36508@debbugs.gnu.org Received: via spool by 36508-submit@debbugs.gnu.org id=B36508.166350376330864 (code B ref 36508); Sun, 18 Sep 2022 12:23:02 +0000 Received: (at 36508) by debbugs.gnu.org; 18 Sep 2022 12:22:43 +0000 Received: from localhost ([127.0.0.1]:48213 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oZtJq-00081h-4h for submit@debbugs.gnu.org; Sun, 18 Sep 2022 08:22:43 -0400 Received: from xavier.telenet-ops.be ([195.130.132.52]:49106) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oZtJn-00081X-Pc for 36508@debbugs.gnu.org; Sun, 18 Sep 2022 08:22:41 -0400 Received: from [192.168.81.79] ([188.188.37.253]) by xavier.telenet-ops.be with bizsmtp id MQNc280075TiYSc01QNcow; Sun, 18 Sep 2022 14:22:38 +0200 Message-ID: <020888b6-6e8d-23d8-ee81-92884c717fbe@telenet.be> Date: Sun, 18 Sep 2022 14:22:36 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.12.0 Content-Language: en-US From: Maxime Devos Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------HpdMtMHClxb1SVem0RL9QZMu" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telenet.be; s=r22; t=1663503758; bh=9TV0DR7vDjj9J+zcn/xD2s1nX1UgoT9IC/6FYV+4E00=; h=Date:To:From:Subject; b=OOqaXoTJ0UoSZ1r3q9bgVQXnvNk/u7bShXkOwNXSfW40eGx0Q6aM2Ig7FHhgW4vYG eGGNcf126rekOz4ei5CN5tYNxYxFSr8IVA5qq8GMN5WXcWpOlWhTrYzRtVBZNgqwJz 1EKnGSSEgbIkOZmKrSEOPwpClu/nHtei5d7Ku5VzoQtGjUYGs8VsbRtRYA5ef55qSc WVQ9B7giQ0D9yBRZHW8ENLiRAaH4dW4QuEDzQjYE3ahRZkbzvuSlCKlMqtVOCEcKZv D9CIangCl+X/IJxD4syUOka4kAUWjOfLavqC0kA3LOCj9WHu+Kb148SH0jtGXt91EF LFv4kwqU7M9lQ== X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-guix@gnu.org List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+larch=yhetil.org@gnu.org Sender: "bug-Guix" X-Migadu-Flow: FLOW_IN X-Migadu-To: larch@yhetil.org X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1663503787; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:resent-cc:resent-from:resent-sender: resent-message-id:in-reply-to:in-reply-to:references:references: list-id:list-help:list-unsubscribe:list-subscribe:list-post: dkim-signature; bh=9TV0DR7vDjj9J+zcn/xD2s1nX1UgoT9IC/6FYV+4E00=; b=Exrck5jYff5sXtoAG2fUi+hyTVhsLX+2JGN8aQWDDQ8BUmioTppN5BoqRWJzXoHCWcD3sn RNvPJvOVxdVVBlXjNfOZ8FBO4jW84y3+R+q5cV36J4H0TDD/2ROgZwYC9hqPknYPkuDYOi J13ObL9+6U3UyOuT0sfaNKLb7JSgF5mAITDb77TZ7L7nhQCusKT6Mp9EO1bcNlsvVtQAwT JrWgcJhsr5iCpaKTeBtzSHrG2qL/ZR1TZRjAIoNMn7m2Vnmu3kVKwHX85feepp8SbCCfRD 6Bt8NXygmcsNFNxQf57P3f8LKEheuf3iRo+cu47c1Ans/TjvIef9mNbljCGnIw== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1663503787; a=rsa-sha256; cv=none; b=AGIUR6tYrbAXfBPUVNOW4++fQcyoII5U2xo1bS3yFWCLLSjE4uJS6E7mz8R1gJ1zVsd6t7 HbTC9gIabPWCe0nqHz72h+OaRnV37Zn6M7ZBVNhamTme+RW6IdEtfnfDU/KjxptEN4TvC1 98u3M7Ffte5Ltn5xJJJed/rMjoXdyust2r/bTS6rgiAr7twAxSOkceflaqCSSKEhb90TQb TfLRf+rqbI5ITh1tVVI+TwkdGF2UoKSLdCB29rvMNedLJeV5JBxzgIvYcTTHlxrwaeDQm5 gFJRnjd6Q5bhOPxeIontuTl/Q3ckyVFLbEyKuPngw6y6bGZz/236ek57y40V8g== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=telenet.be header.s=r22 header.b=OOqaXoTJ; dmarc=fail reason="SPF not aligned (relaxed)" header.from=telenet.be (policy=none); spf=pass (aspmx1.migadu.com: domain of "bug-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="bug-guix-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: 5.26 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=telenet.be header.s=r22 header.b=OOqaXoTJ; dmarc=fail reason="SPF not aligned (relaxed)" header.from=telenet.be (policy=none); spf=pass (aspmx1.migadu.com: domain of "bug-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="bug-guix-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: 461AD75C9 X-Spam-Score: 5.26 X-Migadu-Scanner: scn0.migadu.com X-TUID: frGhNjOTcauE This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------HpdMtMHClxb1SVem0RL9QZMu Content-Type: multipart/mixed; boundary="------------5TFhG3tH0dVn3brDeQ29Kal4"; protected-headers="v1" From: Maxime Devos To: 36508@debbugs.gnu.org Message-ID: <020888b6-6e8d-23d8-ee81-92884c717fbe@telenet.be> Subject: [DRAFT PATCH] Stable allocation of uids, by keeping a historical mapping. --------------5TFhG3tH0dVn3brDeQ29Kal4 Content-Type: multipart/mixed; boundary="------------n0aORaGnf7ZoTpwNBOcR47qk" --------------n0aORaGnf7ZoTpwNBOcR47qk Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 SGksDQoNClRoZSBhdHRhY2hlZCBwYXRjaCBtYWludGFpbnMgYSBoaXN0b3JpY2FsIG1hcHBp bmcgZnJvbSB1c2VyIG5hbWVzIHRvIA0KVUlEcy9HSURzIChldmVuIHdoZW4gdGhvc2UgdXNl cnMgYXJlIHJlbW92ZWQgZnJvbSB0aGUgdXNlciBhY2NvdW50cyksIHRvIA0Kc29sdmUgPGh0 dHBzOi8vaXNzdWVzLmd1aXguZ251Lm9yZy8zNjUwOD4sIGFzIHByb3Bvc2VkIGJ5IE1hcmsg SCBXZWF2ZXIgDQppbiA8aHR0cHM6Ly9pc3N1ZXMuZ3VpeC5nbnUub3JnLzM2NTA4IzEwPi4N Cg0KKFRoZSBwcm9wb3NlZCBnYXJiYWdlIGNvbGxlY3RvciBpcyBub3QgaW5jbHVkZWQsIGhv d2V2ZXIuKQ0KDQpBcyBJIHByb3Bvc2VkIGluIDxodHRwczovL2lzc3Vlcy5ndWl4LmdudS5v cmcvMzY1MDgjMTQ+LCB0aGUgaW5mb3JtYXRpb24gDQpvZiB0aGlzIG1hcHBpbmcgaXMga2Vw dCBpbiBhIHNwZWNpYWwgJ3VzZXInLiAgSG93ZXZlciwgSSBkaWRuJ3QgDQppbXBsZW1lbnQg dGhlIHNhbWUgZm9yIGdyb3VwcyAocmFpc2VzIHNvbWUgcXVlc3Rpb25zIGFib3V0IGF0b21p Y2l0eSAtLSANCi9ldGMvcGFzc3dkIGFuZCAvZXRjL2dyb3VwcyBhcmUgc2VwYXJhdGUgZmls ZXMpLg0KDQpJIGRpZG4ndCBjb21wbGV0ZWx5IGZvbGxvdyB0aGF0IHByb3Bvc2FsIHRob3Vn aCwgc2luY2U6DQoNCiA+IGh0dHBzOi8vaXNzdWVzLmd1aXguZ251Lm9yZy8zNjUwOCMxNjoN CiA+IFByb2JsZW0gaXMgdGhhdCB0aGluZ3MgbGlrZSBHRE0gd291bGQgc3RpbGwgcHJvcG9z ZSB0aG9zZSBvbGQgYWNjb3VudHMNCiA+ICh1bmxlc3MgbWF5YmUgdGhlaXIgcGFzc3dvcmQg aXMgdW5pbml0aWFsaXplZCwgSeKAmW0gbm90IHN1cmU7IGJ1dCBpdOKAmXMNCiA+IHN0aWxs IGhhY2t5LikNCg0KLCB0aG91Z2ggdGhhdCBjb3VsZCBwZXJoYXBzIGJlIHNvbHZlZCBieSBh ZGp1c3RpbmcgR0RNIGFwcHJvcHJpYXRlbHkuDQoNCiJtYWtlIGNoZWNrIFRFU1RTPXRlc3Rz L2FjY291bnRzLnNjbSIgcGFzc2VzLCBidXQgb3RoZXJ3aXNlIHRoZSBwYXRjaCBpcyANCnJh dGhlciB1bnRlc3RlZCAoaGVuY2UsICdEUkFGVCcpIC0tIHRoZSBuZXcgZnVuY3Rpb25hbGl0 eSB3aWxsIG5lZWQgYSANCmZldyBhZGRpdGlvbmFsIHRlc3RzIGluIHRlc3RzL2FjY291bnQu c2NtLCB0byBhdm9pZCBpbnRyb2R1Y2luZyBidWdzIGluIA0KdGhlIGhhbmRsaW5nIG9mIC9l dGMvcGFzc3dkLg0KDQpPbiBzZWNvbmQgdGhvdWdodCwgYSBzZXBhcmF0ZSAvZXRjL3ByZXZp b3VzLXVpZHMgKGFzIHByb3Bvc2VkIGluDQo8aHR0cHM6Ly9pc3N1ZXMuZ3VpeC5nbnUub3Jn LzM2NTA4IzE2PiBieSBMdWRvdmljIENvdXJ0w6hzKQ0KbWlnaHQgYmUgYmV0dGVyICh0aGVy ZSBhcmUgYXRvbWljaXR5IGlzc3VlcyBhbnl3YXksIGR1ZSB0byAvZXRjL3Bhc3N3ZCANCmFu ZCAvZXRjL2dyb3VwcyBiZWluZyBzZXBhcmF0ZSBmaWxlcywgYW5kIGxvc2luZyB0aGUgaGlz dG9yaWNhbCBtYXBwaW5nDQppcyByZWxhdGl2ZWx5IGhhcm1sZXNzIGFuZCBzZWVtcyB1bmxp a2VseSB0byBoYXBwZW4gaW4gcHJhY3RpY2UpLg0KDQpHcmVldGluZ3MsDQpNYXhpbWUNCg== --------------n0aORaGnf7ZoTpwNBOcR47qk Content-Type: text/x-patch; charset=UTF-8; name="0001-DRAFT-Stable-allocation-of-uids.patch" Content-Disposition: attachment; filename="0001-DRAFT-Stable-allocation-of-uids.patch" Content-Transfer-Encoding: base64 RnJvbSAxZTBlYjc4ZmI3YWUxYTdiNmM0MGUzNjRkODhiMGIzMzk0NWVmN2MxIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBNYXhpbWUgRGV2b3MgPG1heGltZWRldm9zQHRlbGVu ZXQuYmU+CkRhdGU6IFN1biwgMTggU2VwIDIwMjIgMTQ6MTg6MTAgKzAyMDAKU3ViamVjdDog W1BBVENIXSBEUkFGVDogU3RhYmxlIGFsbG9jYXRpb24gb2YgdWlkcwoKLS0tCiBnbnUvYnVp bGQvYWNjb3VudHMuc2NtIHwgMTg2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrLS0tLS0tCiB0ZXN0cy9hY2NvdW50cy5zY20gICAgIHwgIDE0ICsrKy0KIDIgZmlsZXMg Y2hhbmdlZCwgMTczIGluc2VydGlvbnMoKyksIDI3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL2dudS9idWlsZC9hY2NvdW50cy5zY20gYi9nbnUvYnVpbGQvYWNjb3VudHMuc2NtCmlu ZGV4IDEyNDdmYzY0MGMuLjVlMDRlOWY1MjYgMTAwNjQ0Ci0tLSBhL2dudS9idWlsZC9hY2Nv dW50cy5zY20KKysrIGIvZ251L2J1aWxkL2FjY291bnRzLnNjbQpAQCAtMSw1ICsxLDYgQEAK IDs7OyBHTlUgR3VpeCAtLS0gRnVuY3Rpb25hbCBwYWNrYWdlIG1hbmFnZW1lbnQgZm9yIEdO VQogOzs7IENvcHlyaWdodCDCqSAyMDE5LCAyMDIxIEx1ZG92aWMgQ291cnTDqHMgPGx1ZG9A Z251Lm9yZz4KKzs7OyBDb3B5cmlnaHQgwqkgMjAyMiBNYXhpbWUgRGV2b3MgPG1heGltZWRl dm9zQHRlbGVuZXQuYmU+CiA7OzsKIDs7OyBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgR3Vp eC4KIDs7OwpAQCAtMTcsOSArMTgsMTEgQEAKIDs7OyBhbG9uZyB3aXRoIEdOVSBHdWl4LiAg SWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgogCiAoZGVmaW5l LW1vZHVsZSAoZ251IGJ1aWxkIGFjY291bnRzKQorICAjOnVzZS1tb2R1bGUgKGd1aXggYmFz ZTY0KQogICAjOnVzZS1tb2R1bGUgKGd1aXggcmVjb3JkcykKICAgIzp1c2UtbW9kdWxlIChn dWl4IGNvbWJpbmF0b3JzKQogICAjOnVzZS1tb2R1bGUgKGdudSBzeXN0ZW0gYWNjb3VudHMp CisgICM6dXNlLW1vZHVsZSAocm5ycyBieXRldmVjdG9ycykKICAgIzp1c2UtbW9kdWxlIChz cmZpIHNyZmktMSkKICAgIzp1c2UtbW9kdWxlIChzcmZpIHNyZmktMTEpCiAgICM6dXNlLW1v ZHVsZSAoc3JmaSBzcmZpLTE5KQpAQCAtNzIsMTAgKzc1LDE2IEBAIChkZWZpbmUtbW9kdWxl IChnbnUgYnVpbGQgYWNjb3VudHMpCiA7OzsgPHNoYWRvdy5oPiwgPHB3ZC5oPiwgYW5kIDxn cnAuaD4gcm91dGluZXMsIGFzIHdlbGwgYXMgYSBzdWJzZXQgb2YgdGhlCiA7OzsgZnVuY3Rp b25hbGl0eSBvZiB0aGUgU2hhZG93IGNvbW1hbmQtbGluZSB0b29scy4gIEl0IGNhbiBwYXJz ZSBhbmQgd3JpdGUKIDs7OyAvZXRjL3Bhc3N3ZCwgL2V0Yy9zaGFkb3csIGFuZCAvZXRjL2dy b3VwLiAgSXQgY2FuIGFsc28gdGFrZSBjYXJlIG9mIFVJRAotOzs7IGFuZCBHSUQgYWxsb2Nh dGlvbiBpbiBhIHdheSBzaW1pbGFyIHRvIHdoYXQgJ3VzZXJhZGQnIGRvZXMuCis7OzsgYW5k IEdJRCBhbGxvY2F0aW9uLCBpbiBhIGRpZmZlcmVudCB3YXkgdGhhbiAndXNlcmFkZCcgZG9l cy4KIDs7OwotOzs7IFRoZSBiZW5lZml0IGlzIHR3b2ZvbGQ6IGxlc3MgY29kZSBpcyBpbnZv bHZlZCwgYW5kIHRoZSBJRCBhbGxvY2F0aW9uCi07Ozsgc3RyYXRlZ3kgYW5kIHN0YXRlIHBy ZXNlcnZhdGlvbiBpcyBtYWRlIGV4cGxpY2l0LgorOzs7IFRoZSBiZW5lZml0IGlzIHRocmVl Zm9sZDogbGVzcyBjb2RlIGlzIGludm9sdmVkLCB0aGUgSUQgYWxsb2NhdGlvbgorOzs7IHN0 cmF0ZWd5IGFuZCBzdGF0ZSBwcmVzZXJ2YXRpb24gaXMgbWFkZSBleHBsaWNpdCBhbmQgaXQg YXZvaWRzCis7OzsgYWxsb2NhdGluZyBJRHMgdGhhdCB3ZXJlIGluIHRoZSBwYXN0IGFsbG9j YXRlZCBmb3Igc29tZSB1c2VyIHVzZXIKKzs7OyBhbmQgcmVtb3ZlZCBidXQgc3RpbGwgcHJl c2VudCBzb21ld2hlcmUgaW4gdGhlIGZpbGUgc3lzdGVtLgorOzs7IEFkZGl0aW9uYWxseSwg d2hlbiBzdWNoIGFuIHVzZXIgaXMgcmUtYWRkZWQsIEd1aXggd2lsbCB1c2UgdGhlIHNhbWUK Kzs7OyBJRCBhZ2FpbgorOzs7Cis7OzsgVE9ETzogZG8gdGhlIHNhbWUgJ2tlZXAgb2xkIElE cycgZm9yIGdyb3VwcyBhcyB3ZWxsLgogOzs7CiA7OzsgQ29kZToKIApAQCAtMjg4LDYgKzI5 Nyw4NSBAQCAoZGVmaW5lIHJlYWQtc2hhZG93CiAoZGVmaW5lIHJlYWQtZ3JvdXAKICAgKGRh dGFiYXNlLXJlYWRlciAiL2V0Yy9ncm91cCIgc3RyaW5nLT5ncm91cC1lbnRyeSkpCiAKKyhk ZWZpbmUgKGRlY29kZS1ndWl4LWRlbGV0ZWQtdXNlcnMgZW5jb2RlZCkKKyAgKGFsaXN0LT52 aGFzaCAoY2FsbC13aXRoLWlucHV0LXN0cmluZworICAgICAgICAgICAgICAgICAgICAodXRm OC0+c3RyaW5nIChiYXNlNjQtZGVjb2RlIGVuY29kZWQpKQorICAgICAgICAgICAgICAgICAg cmVhZCkpKQorKGRlZmluZSAoZW5jb2RlLWd1aXgtZGVsZXRlZC11c2VycyBkZWxldGVkLXVz ZXJuYW1lLT5pZCkKKyAgKGRlZmluZSAobGVzcyB0aGlzIHRoYXQpCisgICAgKDwgKGNkciB0 aGlzKSAoY2RyIHRoYXQpKSkKKyAgKGJhc2U2NC1lbmNvZGUKKyAgIChzdHJpbmctPnV0ZjgK KyAgICAob2JqZWN0LT5zdHJpbmcKKyAgICAgOzsgU29ydCB0aGUgbWFwcGluZ3MsIHRvIGF2 b2lkIGhhc2hpbmcgY2F1c2luZyBub24tZGV0ZXJtaW5pc20uCisgICAgIChzb3J0CisgICAg ICAodmhhc2gtZm9sZCAobGFtYmRhICh1c2VybmFtZSB2YWx1ZSBhY2N1bXVsYXRlZCkKKyAg ICAgICAgICAgICAgICAgICAgKHVubGVzcyAoc3RyaW5nPyB1c2VybmFtZSkKKyAgICAgICAg ICAgICAgICAgICAgICAoZXJyb3IgInVzZXJuYW1lIHNob3VsZCBiZSBhIHN0cmluZyIpKQor ICAgICAgICAgICAgICAgICAgICAodW5sZXNzIChpbnRlZ2VyPyB2YWx1ZSkKKyAgICAgICAg ICAgICAgICAgICAgICAoZXJyb3IgInVpZCBzaG91bGQgYmUgYSBzdHJpbmciKSkKKyAgICAg ICAgICAgICAgICAgICAgKGNvbnMgKGNvbnMgdXNlcm5hbWUgdmFsdWUpIGFjY3VtdWxhdGVk KSkKKyAgICAgICAgICAgICAgICAgICcoKQorICAgICAgICAgICAgICAgICAgZGVsZXRlZC11 c2VybmFtZS0+aWQpCisgICAgICBsZXNzKSkpKSkKKworKGRlZmluZSAocGFzc3dkLWRlbGV0 ZWQgcGFzc3dkKQorICAoZGVmaW5lIGd1aXgtZGVsZXRlZC11c2VycworICAgICgobG9va3Vw LXByb2NlZHVyZSBwYXNzd2QgcGFzc3dvcmQtZW50cnktbmFtZSkKKyAgICAgImd1aXgtZGVs ZXRlZC11c2VycyIpKQorICAoaWYgZ3VpeC1kZWxldGVkLXVzZXJzCisgICAgICAoZGVjb2Rl LWd1aXgtZGVsZXRlZC11c2VycyAocGFzc3dvcmQtZW50cnktcmVhbC1uYW1lIGd1aXgtZGVs ZXRlZC11c2VycykpCisgICAgICB2bGlzdC1udWxsKSkKKworKGRlZmluZSAoYWRqdXN0LWRl bGV0ZWQtdXNlcnMgY3VycmVudC1wYXNzd2QtZW50cmllcyBuZXctcGFzc3dkLWVudHJpZXMK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnQtZGVsZXRlZCkKKyAgKGRl ZmluZSBsb29rdXAtYnktbmFtZS9uZXcKKyAgICAobG9va3VwLXByb2NlZHVyZSBuZXctcGFz c3dkLWVudHJpZXMgcGFzc3dvcmQtZW50cnktbmFtZSkpCisgIChkZWZpbmUgbG9va3VwLWJ5 LWlkL25ldworICAgIChsb29rdXAtcHJvY2VkdXJlIG5ldy1wYXNzd2QtZW50cmllcyBwYXNz d29yZC1lbnRyeS11aWQpKQorICAoZGVmaW5lIGxvb2t1cC1ieS1pZC9vbGQKKyAgICAobG9v a3VwLXByb2NlZHVyZSBjdXJyZW50LXBhc3N3ZC1lbnRyaWVzIHBhc3N3b3JkLWVudHJ5LXVp ZCkpCisgIDs7IFJlbW92ZSBhbGwgdXNlcm5hbWVzIG9mICdjdXJyZW50LWRlbGV0ZWQnIHRo YXQgd2VyZSBhbGxvY2F0ZWQKKyAgOzsgKGluIG5ldy1wYXNzd2QtZW50cmllcykgYW5kIHNp bWlsYXJpbHksIHJlbW92ZSBhbGwgSURzIHRoYXQgd2VyZQorICA7OyBhbGxvY2F0ZWQuCisg IChkZWZpbmUgY3VycmVudC1kZWxldGVkL2ZpbHRlcmVkCisgICAgKHZoYXNoLWZvbGQgKGxh bWJkYSAodXNlcm5hbWUgaWQgYWNjdW11bGF0ZWQpCisgICAgICAgICAgICAgICAgICAoaWYg KG9yIChsb29rdXAtYnktbmFtZS9uZXcgdXNlcm5hbWUpCisgICAgICAgICAgICAgICAgICAg ICAgICAgIChsb29rdXAtYnktaWQvbmV3IGlkKSkKKyAgICAgICAgICAgICAgICAgICAgICBh Y2N1bXVsYXRlZAorICAgICAgICAgICAgICAgICAgICAgICh2aGFzaC1jb25zIHVzZXJuYW1l IGlkIGFjY3VtdWxhdGVkKSkpCisgICAgICAgICAgICAgICAgdmxpc3QtbnVsbAorICAgICAg ICAgICAgICAgIGN1cnJlbnQtZGVsZXRlZCkpCisgIChkZWZpbmUgKGlkLXJldXNlZD8gdXNl cm5hbWUgaWQpCisgICAgOzsgV2FzIHRoZSBJRCB1c2VkIGJ5IGEgZGlmZmVyZW50IHVzZXJu YW1lIHRoYW4gVVNFUk5BTUUgaW4KKyAgICA7OyBDVVJSRU5ULVBBU1NXRC1FTlRSSUVTPwor ICAgIChsZXQgKChvbGQtcGFzc3dvcmQtZW50cnkgKGxvb2t1cC1ieS1pZC9vbGQgaWQpKSkK KyAgICAgIChhbmQgb2xkLXBhc3N3b3JkLWVudHJ5IChzdHJpbmc9PyAocGFzc3dvcmQtZW50 cnktbmFtZSBvbGQtcGFzc3dvcmQtZW50cnkpCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgdXNlcm5hbWUpKSkpCisgIDs7IEFkZCB1c2VybmFtZXMgdGhhdCBh cmUgcHJlc2VudCBpbiBDVVJSRU5ULVBBU1NXRC1FTlRSSUVTIGJ1dAorICA7OyBub3QgaW4g TkVXLVBBU1NXRC1FTlRSSUVTLCBidXQgb25seSBpZiB0aGUgSUQgd2Fzbid0IHJldXNlZAor ICA7OyBmb3Igc29tZSBvdGhlciB1c2VyIG5hbWUuCisgIChkZWZpbmUgbmV3LWRlbGV0ZWQK KyAgICAoZm9sZCAobGFtYmRhICh1c2VybmFtZSBpZCBhY2N1bXVsYXRlZCkKKyAgICAgICAg ICAgIChpZiAoYW5kIChub3QgKGxvb2t1cC1ieS1uYW1lL25ldyB1c2VybmFtZSkpCisgICAg ICAgICAgICAgICAgICAgICAobm90IChpZC1yZXVzZWQ/IHVzZXJuYW1lIGlkKSkpCisgICAg ICAgICAgICAgICAgKHZoYXNoLWNvbnMgdXNlcm5hbWUgaWQgYWNjdW11bGF0ZWQpCisgICAg ICAgICAgICAgICAgYWNjdW11bGF0ZWQpKQorICAgICAgICAgIGN1cnJlbnQtZGVsZXRlZC9m aWx0ZXJlZAorICAgICAgICAgIGN1cnJlbnQtcGFzc3dkLWVudHJpZXMpKQorCisgIChkZWZp bmUgKGFkanVzdCBwYXNzd29yZC1lbnRyeSogYWNjdW11bGF0ZWQpCisgICAgKGNvbnMgKGlm IChzdHJpbmc9PyAocGFzc3dvcmQtZW50cnktbmFtZSBwYXNzd29yZC1lbnRyeSopICJndWl4 LWRlbGV0ZWQtdXNlcnMiKQorICAgICAgICAgICAgICAocGFzc3dvcmQtZW50cnkKKyAgICAg ICAgICAgICAgIChpbmhlcml0IHBhc3N3b3JkLWVudHJ5KikKKyAgICAgICAgICAgICAgIChy ZWFsLW5hbWUgKGVuY29kZS1ndWl4LWRlbGV0ZWQtdXNlcnMgbmV3LWRlbGV0ZWQpKSkKKyAg ICAgICAgICAgICAgcGFzc3dvcmQtZW50cnkqKQorICAgICAgICAgIGFjY3VtdWxhdGVkKSkK KyAgOzsgVGhlICdyZXZlcnNlJyBpcyB0byBwcmVzZXJ2ZSB0aGUgb3JkZXIgLS0gaW4gdGhl b3J5LCB0aGlzIHNob3VsZCBiZQorICA7OyB1bm5lY2Vzc2FyeSwgYnV0IHJldmVydGluZyB0 aGUgb3JkZXJpbmcgb2YgdGhlIGVudHJpZXMgaW4gL2V0Yy9wYXNzd2QKKyAgOzsgYWZ0ZXIg ZWFjaCByZWNvbmZpZ3VyYXRpb24gd291bGQgYmUgc3VycHJpc2luZy4KKyAgKGZvbGQgYWRq dXN0ICcoKSAocmV2ZXJzZSBuZXctcGFzc3dkLWVudHJpZXMpKSkKKwogDAogOzs7CiA7Ozsg QnVpbGRpbmcgZGF0YWJhc2VzLgpAQCAtMzIxLDcgKzQwOSw4IEBAIChkZWZpbmUgKHVzZXIt aWQ/IGlkKQogCiAoZGVmaW5lKiAoYWxsb2NhdGUtaWQgYXNzaWdubWVudCAjOmtleSBzeXN0 ZW0/KQogICAiUmV0dXJuIHR3byB2YWx1ZXM6IGEgbmV3bHkgYWxsb2NhdGVkIElELCBhbmQg YW4gdXBkYXRlZCA8YWxsb2NhdGlvbj4gcmVjb3JkCi1iYXNlZCBvbiBBU1NJR05NRU5ULiAg SWYgU1lTVEVNPyBpcyB0cnVlLCByZXR1cm4gYSBzeXN0ZW0gSUQuIgorYmFzZWQgb24gQVNT SUdOTUVOVC4gIElmIFNZU1RFTT8gaXMgdHJ1ZSwgcmV0dXJuIGEgc3lzdGVtIElELiAgVGhp cyByZXF1aXJlcwordGhhdCBubyBJRCBpcyBhbGxvY2F0ZWQgeWV0LiIKICAgKGRlZmluZSBu ZXh0CiAgICAgOzsgUmV0dXJuIHRoZSBuZXh0IGF2YWlsYWJsZSBJRCwgbG9vcGluZyBpZiBu ZWNlc3NhcnkuCiAgICAgKGlmIHN5c3RlbT8KQEAgLTQ0MSwyMCArNTMwLDI4IEBAIChkZWZp bmUgcHJldmlvdXMtZW50cnkKICAgICAgICAgICBnaWRzCiAgICAgICAgICAgZ3JvdXBzKSkp CiAKLShkZWZpbmUqIChhbGxvY2F0ZS1wYXNzd2QgdXNlcnMgZ3JvdXBzICM6b3B0aW9uYWwg KGN1cnJlbnQtcGFzc3dkICcoKSkpCisoZGVmaW5lKiAoYWxsb2NhdGUtcGFzc3dkIHVzZXJz IGdyb3VwcyAjOm9wdGlvbmFsIChjdXJyZW50LXBhc3N3ZCAnKCkpCisgICAgICAgICAgICAg ICAgICAgICAgICAgIChkZWxldGVkLXVzZXJuYW1lLT5pZCB2bGlzdC1udWxsKSkKICAgIlJl dHVybiBhIGxpc3Qgb2YgcGFzc3dvcmQgZW50cmllcyBmb3IgVVNFUlMsIGEgbGlzdCBvZiA8 dXNlci1hY2NvdW50Pi4KIFRha2UgR0lEcyBmcm9tIEdST1VQUywgYSBsaXN0IG9mIGdyb3Vw IGVudHJpZXMuICBSZXVzZSBVSURzIGZyb20KLUNVUlJFTlQtUEFTU1dELCBhIGxpc3Qgb2Yg cGFzc3dvcmQgZW50cmllcywgd2hlbiBwb3NzaWJsZTsgb3RoZXJ3aXNlIGFsbG9jYXRlCi1u ZXcgVUlEcy4iCitDVVJSRU5ULVBBU1NXRCwgYSBsaXN0IG9mIHBhc3N3b3JkIGVudHJpZXMs IG9yIGRlbGV0ZWQtdXNlcm5hbWUtPmlkLAorYSB2aGFzaCBvZiB1c2VybmFtZXMgdGhhdCB3 ZXJlIGRlbGV0ZWQgaW4gdGhlIHByZXZpb3VzIC9ldGMvcGFzc3dkIHRvIElEcywKK3doZW4g cG9zc2libGU7IG90aGVyd2lzZSBhbGxvY2F0ZSBuZXcgVUlEcy4iCiAgIChkZWZpbmUgdWlk cwotICAgIChyZXNlcnZlLWlkcyAocmVzZXJ2ZS1pZHMgKGFsbG9jYXRpb24pCi0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAobWFwIHBhc3N3b3JkLWVudHJ5LXVpZCBjdXJyZW50 LXBhc3N3ZCkpCi0gICAgICAgICAgICAgICAgIChmaWx0ZXItbWFwIHVzZXItYWNjb3VudC11 aWQgdXNlcnMpCi0gICAgICAgICAgICAgICAgICM6c2tpcD8gI2YpKQotCi0gIChkZWZpbmUg cHJldmlvdXMtZW50cnkKKyAgICAocmVzZXJ2ZS1pZHMgOyA8LS0gVE9ETzogaXMgIzpza2lw PyAjZmFsc2UgbmVlZGVkIGhlcmUgYXMgd2VsbD8KKyAgICAgKHJlc2VydmUtaWRzIChyZXNl cnZlLWlkcyAoYWxsb2NhdGlvbikKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAo bWFwIHBhc3N3b3JkLWVudHJ5LXVpZCBjdXJyZW50LXBhc3N3ZCkpCisgICAgICAgICAgICAg ICAgICAoZmlsdGVyLW1hcCB1c2VyLWFjY291bnQtdWlkIHVzZXJzKQorICAgICAgICAgICAg ICAgICAgIzpza2lwPyAjZikKKyAgICAgKHZoYXNoLWZvbGQgKGxhbWJkYSAodXNlcm5hbWUg aWQgYWNjdW11bGF0ZWQpCisgICAgICAgICAgICAgICAgICAgKGNvbnMgaWQgYWNjdW11bGF0 ZWQpKSAnKCkgZGVsZXRlZC11c2VybmFtZS0+aWQpKSkKKworICAoZGVmaW5lIHByZXZpb3Vz LXVuZGVsZXRlZC1lbnRyeQogICAgIChsb29rdXAtcHJvY2VkdXJlIGN1cnJlbnQtcGFzc3dk IHBhc3N3b3JkLWVudHJ5LW5hbWUpKQogCisgIChkZWZpbmUgKHByZXZpb3VzLWRlbGV0ZWQt ZW50cnkgdXNlcm5hbWUpCisgICAgKGFuZD0+ICh2aGFzaC1hc3NvYyB1c2VybmFtZSBkZWxl dGVkLXVzZXJuYW1lLT5pZCkgY2RyKSkKKwogICAoZGVmaW5lIChncm91cC1pZCBuYW1lKQog ICAgIChvciAoYW55IChsYW1iZGEgKGVudHJ5KQogICAgICAgICAgICAgICAgKGFuZCAoc3Ry aW5nPT8gKGdyb3VwLWVudHJ5LW5hbWUgZW50cnkpIG5hbWUpCkBAIC00NzEsMTcgKzU2OCwy OCBAQCAoZGVmaW5lIChncm91cC1pZCBuYW1lKQogICAgICAgICAgICAgICAgICAgKGRpcmVj dG9yeSAgICAodXNlci1hY2NvdW50LWhvbWUtZGlyZWN0b3J5IHVzZXIpKQogICAgICAgICAg ICAgICAgICAgKHNoZWxsICAgICAgICAodXNlci1hY2NvdW50LXNoZWxsIHVzZXIpKQogICAg ICAgICAgICAgICAgICAgKHN5c3RlbT8gICAgICAodXNlci1hY2NvdW50LXN5c3RlbT8gdXNl cikpKQotICAgICAgICAgICAgICAobGV0Ki12YWx1ZXMgKCgocHJldmlvdXMpCi0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgIChwcmV2aW91cy1lbnRyeSBuYW1lKSkKKyAgICAgICAg ICAgICAgKGxldCotdmFsdWVzICgoKHByZXZpb3VzLXVuZGVsZXRlZCkKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgKHByZXZpb3VzLXVuZGVsZXRlZC1lbnRyeSBuYW1lKSkKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAoKHByZXZpb3VzLWRlbGV0ZWQpCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIChwcmV2aW91cy1kZWxldGVkLWVudHJ5IG5hbWUpKQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoYWxsb2NhdGlvbiBpZCkKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgKGNvbmQKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICgobnVtYmVyPyByZXF1ZXN0ZWQtaWQpCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgKHZhbHVlcyAocmVzZXJ2ZS1pZHMgYWxsb2NhdGlvbgogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChsaXN0IHJlcXVlc3RlZC1p ZCkpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1ZXN0ZWQt aWQpKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHByZXZpb3VzCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAocHJldmlvdXMtdW5kZWxldGVkCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgKHZhbHVlcyBhbGxvY2F0aW9uCi0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAocGFzc3dvcmQtZW50cnktdWlkIHByZXZpb3Vz KSkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocGFzc3dvcmQt ZW50cnktdWlkIHByZXZpb3VzLXVuZGVsZXRlZCkpKQorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgKChhbmQgcHJldmlvdXMtZGVsZXRlZAorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgKG5vdCAoYWxsb2NhdGVkPyBhbGxvY2F0aW9uIHByZXZpb3VzLWRl bGV0ZWQpKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7OyBUaGlzIGRlbGV0 ZWQgdXNlciBtaWdodCBzdGlsbCBoYXZlIHNvbWUgZmlsZXMKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICA7OyBpbiB0aGUgZmlsZSBzeXN0ZW0sIHJldXNlIHRoZSBvbGQgaWQg c3VjaAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDs7IHRoYXQgaXQgcmVtYWlu cyBjb3JyZWN0LCB1bmxlc3Mgc29tZSBvdGhlcgorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIDs7IHVzZXIgaGFzIGNob29zZW4gdGhhdCBpZC4KKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAodmFsdWVzIChyZXNlcnZlLWlkcyBhbGxvY2F0aW9uCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGxpc3QgcHJl dmlvdXMtZGVsZXRlZCkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBwcmV2aW91cy1kZWxldGVkKSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChl bHNlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGFsbG9jYXRlLWlkIGFsbG9j YXRpb24KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzpz eXN0ZW0/IHN5c3RlbT8pKSkpKQpAQCAtNDk0LDkgKzYwMiwxMCBAQCAoZGVmaW5lIChncm91 cC1pZCBuYW1lKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDs7IFVzZXJzIG1p Z2h0IGNoYW5nZSB0aGVpciBuYW1lIHRvIHNvbWV0aGluZwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIDs7IG90aGVyIHRoYW4gd2hhdCB0aGUgc3lzYWRtaW4gY2hvc2UsIHdp dGgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7OyAnY2hmbicuICBUaHVzIGNv bnNpZGVyIGl0ICJzdGF0ZWZ1bCIuCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg KHJlYWwtbmFtZSAoaWYgKGFuZCBwcmV2aW91cyAobm90IHN5c3RlbT8pKQotICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChwYXNzd29yZC1lbnRyeS1y ZWFsLW5hbWUgcHJldmlvdXMpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgcmVhbC1uYW1lKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAocmVhbC1uYW1lCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChpZiAoYW5k IHByZXZpb3VzLXVuZGVsZXRlZCAobm90IHN5c3RlbT8pKQorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgKHBhc3N3b3JkLWVudHJ5LXJlYWwtbmFtZSBwcmV2aW91cy11 bmRlbGV0ZWQpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWFsLW5h bWUpKQogCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOzsgRG8gbm90IHJldXNl IHRoZSBzaGVsbCBvZiBQUkVWSU9VUyBzaW5jZSAoMSkKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICA7OyB0aGF0IGNvdWxkIGxlYWQgdG8gY29uZnVzaW9uLCBhbmQgKDIpIHRo ZQpAQCAtNTU2LDYgKzY2NSwyNSBAQCAoZGVmaW5lKiAodXNlcitncm91cC1kYXRhYmFzZXMg dXNlcnMgZ3JvdXBzCiBlbnRyaWVzLCBhbmQgdGhlIGxpc3Qgb2Ygc2hhZG93IGVudHJpZXMg Y29ycmVzcG9uZGluZyB0byBVU0VSUyBhbmQgR1JPVVBTLgogUHJlc2VydmUgc3RhdGVmdWwg Yml0cyBmcm9tIENVUlJFTlQtUEFTU1dELCBDVVJSRU5ULUdST1VQUywgYW5kCiBDVVJSRU5U LVNIQURPVzogVUlEcywgR0lEcywgcGFzc3dvcmRzLCB1c2VyIHNoZWxscywgZXRjLiIKKyAg KGRlZmluZSB1c2VycyoKKyAgICAoaWYgKChsb29rdXAtcHJvY2VkdXJlIHVzZXJzIHVzZXIt YWNjb3VudC1uYW1lKQorICAgICAgICAgImd1aXgtZGVsZXRlZC11c2VycyIpCisgICAgICAg IHVzZXJzCisgICAgICAgIChhcHBlbmQgdXNlcnMKKyAgICAgICAgICAgICAgICAobGlzdCAo dXNlci1hY2NvdW50CisgICAgICAgICAgICAgICAgICAgICAgIChuYW1lICJndWl4LWRlbGV0 ZWQtdXNlcnMiKQorICAgICAgICAgICAgICAgICAgICAgICAoZ3JvdXAgImd1aXgtZGVsZXRl ZC11c2VycyIpCisgICAgICAgICAgICAgICAgICAgICAgIChob21lLWRpcmVjdG9yeSAiL3Zh ci9lbXB0eSIpCisgICAgICAgICAgICAgICAgICAgICAgIChzeXN0ZW0/ICN0cnVlKSkpKSkp CisgIChkZWZpbmUgZ3JvdXBzKgorICAgIChpZiAoKGxvb2t1cC1wcm9jZWR1cmUgZ3JvdXBz IHVzZXItZ3JvdXAtbmFtZSkKKyAgICAgICAgICJndWl4LWRlbGV0ZWQtdXNlcnMiKQorICAg ICAgICBncm91cHMKKyAgICAgICAgKGFwcGVuZCBncm91cHMKKyAgICAgICAgICAgICAgICAo bGlzdCAodXNlci1ncm91cAorICAgICAgICAgICAgICAgICAgICAgICAobmFtZSAiZ3VpeC1k ZWxldGVkLXVzZXJzIikKKyAgICAgICAgICAgICAgICAgICAgICAgKHN5c3RlbT8gI3RydWUp KSkpKSkKKwogICAoZGVmaW5lIG1lbWJlcnMKICAgICA7OyBNYXAgZ3JvdXAgbmFtZSB0byB1 c2VyIG5hbWVzLgogICAgIChmb2xkIChsYW1iZGEgKHVzZXIgbWVtYmVycykKQEAgLTU2Mywx NiArNjkxLDI0IEBAIChkZWZpbmUgbWVtYmVycwogICAgICAgICAgICAgICAgICAgbWVtYmVy cwogICAgICAgICAgICAgICAgICAgKHVzZXItYWNjb3VudC1zdXBwbGVtZW50YXJ5LWdyb3Vw cyB1c2VyKSkpCiAgICAgICAgICAgdmxpc3QtbnVsbAotICAgICAgICAgIHVzZXJzKSkKKyAg ICAgICAgICB1c2VycyopKQorCisgIChkZWZpbmUgY3VycmVudC1kZWxldGVkIChwYXNzd2Qt ZGVsZXRlZCBjdXJyZW50LXBhc3N3ZCkpCiAKICAgKGRlZmluZSBncm91cC1lbnRyaWVzCi0g ICAgKGFsbG9jYXRlLWdyb3VwcyBncm91cHMgbWVtYmVycyBjdXJyZW50LWdyb3VwcykpCisg ICAgKGFsbG9jYXRlLWdyb3VwcyBncm91cHMqIG1lbWJlcnMgY3VycmVudC1ncm91cHMpKQog CiAgIChkZWZpbmUgcGFzc3dkLWVudHJpZXMKLSAgICAoYWxsb2NhdGUtcGFzc3dkIHVzZXJz IGdyb3VwLWVudHJpZXMgY3VycmVudC1wYXNzd2QpKQorICAgIChhbGxvY2F0ZS1wYXNzd2Qg dXNlcnMqIGdyb3VwLWVudHJpZXMgY3VycmVudC1wYXNzd2QKKyAgICAgICAgICAgICAgICAg ICAgIChwYXNzd2QtZGVsZXRlZCBjdXJyZW50LXBhc3N3ZCkpKQogCiAgIChkZWZpbmUgc2hh ZG93LWVudHJpZXMKLSAgICAocGFzc3dkLT5zaGFkb3cgdXNlcnMgcGFzc3dkLWVudHJpZXMg Y3VycmVudC1zaGFkb3cKKyAgICAocGFzc3dkLT5zaGFkb3cgdXNlcnMqIHBhc3N3ZC1lbnRy aWVzIGN1cnJlbnQtc2hhZG93CiAgICAgICAgICAgICAgICAgICAgICM6Y3VycmVudC10aW1l IGN1cnJlbnQtdGltZSkpCiAKLSAgKHZhbHVlcyBncm91cC1lbnRyaWVzIHBhc3N3ZC1lbnRy aWVzIHNoYWRvdy1lbnRyaWVzKSkKKyAgOzsgVE9ETzogYWRqdXN0IG5ldyAnZGVsZXRlZCcK KyAgKHZhbHVlcyBncm91cC1lbnRyaWVzIChhZGp1c3QtZGVsZXRlZC11c2VycworICAgICAg ICAgICAgICAgICAgICAgICAgIGN1cnJlbnQtcGFzc3dkCisgICAgICAgICAgICAgICAgICAg ICAgICAgcGFzc3dkLWVudHJpZXMKKyAgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50 LWRlbGV0ZWQpCisgICAgICAgICAgc2hhZG93LWVudHJpZXMpKQpkaWZmIC0tZ2l0IGEvdGVz dHMvYWNjb3VudHMuc2NtIGIvdGVzdHMvYWNjb3VudHMuc2NtCmluZGV4IDc4MTM2MzkwYmIu LjRlMjliZmUyODUgMTAwNjQ0Ci0tLSBhL3Rlc3RzL2FjY291bnRzLnNjbQorKysgYi90ZXN0 cy9hY2NvdW50cy5zY20KQEAgLTEsNSArMSw2IEBACiA7OzsgR05VIEd1aXggLS0tIEZ1bmN0 aW9uYWwgcGFja2FnZSBtYW5hZ2VtZW50IGZvciBHTlUKIDs7OyBDb3B5cmlnaHQgwqkgMjAx OSBMdWRvdmljIENvdXJ0w6hzIDxsdWRvQGdudS5vcmc+Cis7OzsgQ29weXJpZ2h0IMKpIDIw MjIgTWF4aW1lIERldm9zIDxtYXhpbWVkZXZvc0B0ZWxlbmV0LmJlPgogOzs7CiA7OzsgVGhp cyBmaWxlIGlzIHBhcnQgb2YgR05VIEd1aXguCiA7OzsKQEAgLTI3Miw3ICsyNzMsOSBAQCAo ZGVmaW5lIGFsbG9jYXRlLXBhc3N3ZCAoQEAgKGdudSBidWlsZCBhY2NvdW50cykgYWxsb2Nh dGUtcGFzc3dkKSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtZW1iZXJzICcoImJv YiIpKSkKICAgICAgICAgICAgICAgKGdyb3VwLWVudHJ5IChuYW1lICJiIikgKGdpZCAoKyAx ICVpZC1taW4pKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1lbWJlcnMgJygiYWxp Y2UiKSkpCi0gICAgICAgICAgICAgIChncm91cC1lbnRyeSAobmFtZSAicyIpIChnaWQgJXN5 c3RlbS1pZC1tYXgpKSkKKyAgICAgICAgICAgICAgKGdyb3VwLWVudHJ5IChuYW1lICJzIikg KGdpZCAlc3lzdGVtLWlkLW1heCkpCisgICAgICAgICAgICAgIChncm91cC1lbnRyeSAobmFt ZSAiZ3VpeC1kZWxldGVkLXVzZXJzIikKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIChn aWQgKC0gJXN5c3RlbS1pZC1tYXggMSkpKSkKICAgICAgICAgKGxpc3QgKHBhc3N3b3JkLWVu dHJ5IChuYW1lICJhbGljZSIpIChyZWFsLW5hbWUgIkFsaWNlIikKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICh1aWQgJWlkLW1pbikgKGdpZCAlaWQtbWluKQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgKGRpcmVjdG9yeSAiL2EiKSkKQEAgLTI4MSwxMiArMjg0 LDE5IEBAIChkZWZpbmUgYWxsb2NhdGUtcGFzc3dkIChAQCAoZ251IGJ1aWxkIGFjY291bnRz KSBhbGxvY2F0ZS1wYXNzd2QpKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGRp cmVjdG9yeSAiL2IiKSkKICAgICAgICAgICAgICAgKHBhc3N3b3JkLWVudHJ5IChuYW1lICJu b2JvZHkiKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVpZCA2NTUzNCkgKGdp ZCAlc3lzdGVtLWlkLW1heCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChkaXJl Y3RvcnkgIi92YXIvZW1wdHkiKSkKKyAgICAgICAgICAgICAgKHBhc3N3b3JkLWVudHJ5IChu YW1lICJndWl4LWRlbGV0ZWQtdXNlcnMiKQorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgOzsgZW1wdHkgbGlzdCwgc3RhcnQgd2l0aG91dCBkZWxldGVkIHVzZXJzCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAocmVhbC1uYW1lICJLQ2s9IikKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICh1aWQgJXN5c3RlbS1pZC1tYXgpCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAoZ2lkICgtICVzeXN0ZW0taWQtbWF4IDEpKSA7IFhYWDogd2h5 IG5vdCAlc3lzdGVtLWlkLW1heD8gIEJ1ZyBvciBPSz8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIChkaXJlY3RvcnkgIi92YXIvZW1wdHkiKSkpCiAgICAgICAgIChsaXN0IChz aGFkb3ctZW50cnkgKG5hbWUgImFsaWNlIikgKGxhc3QtY2hhbmdlIDEwMCkKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAocGFzc3dvcmQgKGNyeXB0ICJpbml0aWFsIHBhc3MiICIk NiQiKSkpCiAgICAgICAgICAgICAgIChzaGFkb3ctZW50cnkgKG5hbWUgImJvYiIpIChsYXN0 LWNoYW5nZSA1MCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocGFzc3dvcmQgKGNy eXB0ICJmb28iICIkNiQiKSkpCi0gICAgICAgICAgICAgIChzaGFkb3ctZW50cnkgKG5hbWUg Im5vYm9keSIpIChsYXN0LWNoYW5nZSAxMDApKSkpCisgICAgICAgICAgICAgIChzaGFkb3ct ZW50cnkgKG5hbWUgIm5vYm9keSIpIChsYXN0LWNoYW5nZSAxMDApKQorICAgICAgICAgICAg ICAoc2hhZG93LWVudHJ5IChuYW1lICJndWl4LWRlbGV0ZWQtdXNlcnMiKSAobGFzdC1jaGFu Z2UgMTAwKSkpKQogICAoY2FsbC13aXRoLXZhbHVlcwogICAgICAgKGxhbWJkYSAoKQogICAg ICAgICAodXNlcitncm91cC1kYXRhYmFzZXMgKGxpc3QgKHVzZXItYWNjb3VudAoKYmFzZS1j b21taXQ6IDE3ZjY0NmFlYmEzOWYwZDI5N2Y2YzkxMWQ4M2IzYmQ5ZTg4YTIyN2IKcHJlcmVx dWlzaXRlLXBhdGNoLWlkOiAxZjdjNDVjZjI0ODBmNGU2ZjFlOTU2MzY2MGUxYjczYTg2ODI0 MjVlCnByZXJlcXVpc2l0ZS1wYXRjaC1pZDogMGNhYWMzMTE4NzVlZTM5Y2I0ODU3MzY1N2Vi Yjk2MGU5MGRhNmRmYgpwcmVyZXF1aXNpdGUtcGF0Y2gtaWQ6IDQxODI4NTQ5M2Q4OWViZjEw MjE3NTkwMmQ5YjA5YTAxNzRlODgxOTAKcHJlcmVxdWlzaXRlLXBhdGNoLWlkOiAzYzM5ZWI4 MzlkOWQzZmYzZmNhNmNkOTg2MjFhNWQ1YzQxMWI3YWY0CnByZXJlcXVpc2l0ZS1wYXRjaC1p ZDogOGQ1NjYyZTg3NGM0NjlmNWVlNDk2ZWY1MTgxY2YyZDBhMzBhZDFkOApwcmVyZXF1aXNp dGUtcGF0Y2gtaWQ6IDI2NTEzYzNiM2I4Njk2M2RmNzE4ZWU0MWQxNGEyNWQxY2M2YThmM2YK cHJlcmVxdWlzaXRlLXBhdGNoLWlkOiAyYjI0OTdlMmVkZWMwYWZjNDhlYmFkZDZmMDlmMGM2 NjFjNDY2MTI3CnByZXJlcXVpc2l0ZS1wYXRjaC1pZDogMjcxMmVmYjk3YmYzMzk4NWZkMDY1 OGU0ZGQ4ZTkzNmRjMDhiZTVmZQpwcmVyZXF1aXNpdGUtcGF0Y2gtaWQ6IDlkMjQwOWI0ODBh OGJmZjBmZWYwMjliNGIwOTU5MjJkNDk1N2UwNmYKcHJlcmVxdWlzaXRlLXBhdGNoLWlkOiA1 MWEzMmFiY2EzZWZlYzFiYTY3ZWFkNTliODY5NGM1ZWEzMTI5YWQzCnByZXJlcXVpc2l0ZS1w YXRjaC1pZDogN2Q1NWUzYjM5ZWI4ODAzZjA1ODg1N2Q0NDEyNzk2YjNmNWRjMDg1NgpwcmVy ZXF1aXNpdGUtcGF0Y2gtaWQ6IDkwOTI5Mjc3NjFhMzQwYzA3YTk5ZjVmM2VkMzE0YTZhZGQw NGNkZWUKcHJlcmVxdWlzaXRlLXBhdGNoLWlkOiBlYWZlZWJhMWU2ODE2ZGVlM2Y4ZGY2NzE2 MzFiYmViNWMzNzMyMzdhCi0tIAoyLjM3LjMKCg== --------------n0aORaGnf7ZoTpwNBOcR47qk Content-Type: application/pgp-keys; name="OpenPGP_0x49E3EE22191725EE.asc" Content-Disposition: attachment; filename="OpenPGP_0x49E3EE22191725EE.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xjMEX4ch6BYJKwYBBAHaRw8BAQdANPb/d6MrGnGi5HyvODCkBUJPRjiFQcRU5V+m xvMaAa/NL01heGltZSBEZXZvcyA8bWF4aW1lLmRldm9zQHN0dWRlbnQua3VsZXV2 ZW4uYmU+wpAEExYIADgWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCX4ch6AIbAwUL CQgHAwUVCgkICwUWAgMBAAIeAQIXgAAKCRBJ4+4iGRcl7japAQC3opZ2KGWzWmRc /gIWSu0AAcfMwyinFEEPa/QhUt2CogD/e2RdF4CYAgaRHJJmZ9WU7piKbLZ7llB4 LzgezVDHggzNJU1heGltZSBEZXZvcyA8bWF4aW1lZGV2b3NAdGVsZW5ldC5iZT7C kAQTFggAOBYhBMHzPuIMUo/bfdcBH0nj7iIZFyXuBQJf56ycAhsDBQsJCAcDBRUK CQgLBRYCAwEAAh4BAheAAAoJEEnj7iIZFyXujpQBAKV1SwDDl4f24rXciDlB9L8W ycZt30CgbewMSRQk4mvbAP9dFMbVVixYBd6C8cfhR+NsOBGiOJnQABlUmgNuqGFJ Dc44BF+HIegSCisGAQQBl1UBBQEBB0BOlzIWiJzgobMF6/cqwLaLk7jIcFSZ++c0 k9cCNT6YXwMBCAfCeAQYFggAIBYhBMHzPuIMUo/bfdcBH0nj7iIZFyXuBQJfhyHo AhsMAAoJEEnj7iIZFyXuMr0BAJc8cl5PGvVmVuSQVKjleNl4DK1/XAaPAYPe34AE fZJPAP9IqLCQhH/FeJanHqBP8gNdGNI2qn8RnnLVfRJgUjZ1BA=3D=3D =3DOVqp -----END PGP PUBLIC KEY BLOCK----- --------------n0aORaGnf7ZoTpwNBOcR47qk-- --------------5TFhG3tH0dVn3brDeQ29Kal4-- --------------HpdMtMHClxb1SVem0RL9QZMu Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wnsEABYIACMWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYycNjAUDAAAAAAAKCRBJ4+4iGRcl7pG2 AQDyzDQGkTe768lujCasN+FEVunBxwI0mJ6BYg1nWJHoVQEA0KHt7qFKiu12LtTjQZ/VakHgELQH mGWr//5k2cSpHAo= =Nxuc -----END PGP SIGNATURE----- --------------HpdMtMHClxb1SVem0RL9QZMu--