From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-12.0 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5C5F5C433EF for ; Fri, 17 Sep 2021 21:24:45 +0000 (UTC) Received: from smtp3.osuosl.org (smtp3.osuosl.org [140.211.166.136]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id BDA0661244 for ; Fri, 17 Sep 2021 21:24:44 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org BDA0661244 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=free.fr Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=lists.buildroot.org Received: from localhost (localhost [127.0.0.1]) by smtp3.osuosl.org (Postfix) with ESMTP id 92C1E6077E; Fri, 17 Sep 2021 21:24:44 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp3.osuosl.org ([127.0.0.1]) by localhost (smtp3.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id PvzAI8mbdR1y; Fri, 17 Sep 2021 21:24:43 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by smtp3.osuosl.org (Postfix) with ESMTP id 3A30961C03; Fri, 17 Sep 2021 21:24:42 +0000 (UTC) Received: from smtp4.osuosl.org (smtp4.osuosl.org [140.211.166.137]) by ash.osuosl.org (Postfix) with ESMTP id D88901BF868 for ; Fri, 17 Sep 2021 21:24:40 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp4.osuosl.org (Postfix) with ESMTP id C7E1242551 for ; Fri, 17 Sep 2021 21:24:40 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Authentication-Results: smtp4.osuosl.org (amavisd-new); dkim=pass (2048-bit key) header.d=free.fr Received: from smtp4.osuosl.org ([127.0.0.1]) by localhost (smtp4.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id LrE4ty33w0OA for ; Fri, 17 Sep 2021 21:24:39 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.8.0 Received: from smtp5-g21.free.fr (smtp5-g21.free.fr [212.27.42.5]) by smtp4.osuosl.org (Postfix) with ESMTPS id CECA242531 for ; Fri, 17 Sep 2021 21:24:38 +0000 (UTC) Received: from ymorin.is-a-geek.org (unknown [IPv6:2a01:cb19:8b51:cb00:4db3:5a06:f3b2:1f85]) (Authenticated sender: yann.morin.1998@free.fr) by smtp5-g21.free.fr (Postfix) with ESMTPSA id 882F95FF67; Fri, 17 Sep 2021 23:24:29 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=free.fr; s=smtp-20201208; t=1631913876; bh=QPZ+03frPSfb47t+cT5kEhWoJjotzPcnSdXZkWvfyFE=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=jw1ZvTcFKnmsVqjnqqiercMfWqMwLTX+27Yiv6Sv4puoMO4TrOXnC3+v9yK+pH+87 RZEay+cjwbs3Dz9y2hYGh/PGIBu9YhYVjkKgRbg0xQevs01bPzSJ6V+TJAHeYeXWA/ 7Lnpwt+4Rv+Y+YcL6RM9sKn+JWh9GXC2f6ikWrQhVlf2x+0wN0nATh+2fX/lL+iGOW FwsEeF205+RvJyiM2ZuBfLjP7yaNa+hzmlZugnJESBBoPyEi9EHhGcW9W5uGyhHeXX OQwS7Bsi+C/x2SJnNz8Et9Hgch+USdpw2UN2yMLDw4S8eYgSBRERD41B5e9OzPQ6ce hAFHB1lmUQjfg== Received: by ymorin.is-a-geek.org (sSMTP sendmail emulation); Fri, 17 Sep 2021 23:24:29 +0200 Date: Fri, 17 Sep 2021 23:24:29 +0200 From: "Yann E. MORIN" To: Kory Maincent Message-ID: <20210917212429.GY1053080@scaer> References: <20210914093457.1389174-1-kory.maincent@bootlin.com> <20210914093457.1389174-2-kory.maincent@bootlin.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20210914093457.1389174-2-kory.maincent@bootlin.com> User-Agent: Mutt/1.5.22 (2013-10-16) Subject: Re: [Buildroot] [PATCH 1/8] boot/grub2: add support to build multiple Grub2 configurations in the same build X-BeenThere: buildroot@lists.buildroot.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: thomas.petazzoni@bootlin.com, buildroot@buildroot.org Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: buildroot-bounces@lists.buildroot.org Sender: "buildroot" S8O2cnksIEFsbCwKCk9uIDIwMjEtMDktMTQgMTE6MzQgKzAyMDAsIEtvcnkgTWFpbmNlbnQgc3Bh a2UgdGh1c2x5Ogo+IFdoZW4gR3J1YjIgaXMgYnVpbGQgaXQgaXMgY29uZmlndXJlZCBvbmx5IGZv ciBvbmUgYm9vdCBzZXQtdXAsIEJJT1MgTGVnYWN5LAo+IEVGSSAzMiBiaXQgb3IgRUZJIDY0IGJp dC4gSXQgY2FuIG5vdCBkZWFsIHdpdGggc2V2ZXJhbCBib290IHNldC11cCBvbiB0aGUKPiBzYW1l IGltYWdlLgo+IAo+IFRoaXMgcGF0Y2ggYWxsb3dzIHRvIGJ1aWxkIEdydWIyIGZvciBkaWZmZXJl bnQgY29uZmlndXJhdGlvbnMgc2ltdWx0YW5lb3VzbHkuCj4gV2UgdXNlIGEgR1JVQjJfVFVQTEVT IGxpc3QgdG8gZGVzY3JpYmUgYWxsIHRoZSBjb25maWd1cmF0aW9ucyBzZWxlY3RlZC4KPiBGb3Ig ZWFjaCBib290IGNhc2UgZGVzY3JpYmVkIGluIHRoZSBHUlVCMl9UVVBMRVMgbGlzdCwgaXQgY29u ZmlndXJlcyBhbmQKPiBidWlsZHMgR3J1YjIgaW4gYSBzZXBhcmF0ZSBmb2xkZXIgbmFtZWQgYnVp bGQtJCh0dXBsZSkuCj4gV2UgdXNlIGEgZm9yZWFjaCBsb29wIHRvIG1ha2UgYWN0aW9ucyBvbiBl YWNoIHR1cGxlIHNlbGVjdGVkLgoKV2hhdCB5b3UgZm9yZ290IHRvIHN0YXRlIGluIGJvbGQgZmF0 IGNoYXJhY3RlcnMgaGVyZSwgaXMgdGhhdCB3ZSBjYW4gbm8KbG9uZ2VyIHVzZSBhdXRvdG9vbHMt cGFja2FnZSBhcyBhIGNvbnNlcXVlbmNlIG9mIHRoaXMgbXVsdGktYnVpbGQsIGFuZAp0aGF0IHdl IGhhdmUgdG8gcmVzb3J0IHRvIGdlbmVyaWMtcGFjYWtnZSBhbmQgYSBwYXJ0aWFsIGR1cGxpY2F0 aW9uIG9mCnRoZSBhdXRvdG9vbHMtaW5mcmEuCgpUaGlzIGlzIG5vdCB2ZXJ5IG5pY2UuLi4gOi0o CgpJSVJDLCB3ZSBoYWQgYSBzaW1pbGFyIHByb2JsZW0gd2l0aCBiYXJib3gsIHdoZXJlIHdlIGhh ZCB0byBidWlsZCB0d28KaW1hZ2VzIGZvciBpdCwgc28gd2UgZW5kZWQgdXAgZHVwbGljYXRpbmcg dGhlIHBhY2thZ2UsIHdoZXJlIHRoZQp0b3AtbW9zdCBib290L2JhcmVib3gvYmFyZWJveC5tayBk ZWZpbmVzIGEgbWluaW1hbGlzdCBiYXJlYm94LXBhY2thZ2UKaW5mcmEsIGFuZCB0aGUgYmFyZWJv eCBhbmQgYmFyZWJveC1hdXggYXJlIHR3byBiYXJlYm94LXBhY2thZ2U6CgogICAgYm9vdC9iYXJl Ym94LwogICAg4pSc4pSA4pSAIGJhcmVib3gvCiAgICDilIIgICDilJzilIDilIAgYmFyZWJveC5o YXNoIC0+IC4uL2JhcmVib3guaGFzaAogICAg4pSCICAg4pSc4pSA4pSAIGJhcmVib3gubWsKICAg IOKUgiAgIOKUlOKUgOKUgCBDb25maWcuaW4KICAgIOKUnOKUgOKUgCBiYXJlYm94LWF1eC8KICAg IOKUgiAgIOKUnOKUgOKUgCBiYXJlYm94LWF1eC5oYXNoIC0+IC4uL2JhcmVib3guaGFzaAogICAg 4pSCICAg4pSc4pSA4pSAIGJhcmVib3gtYXV4Lm1rCiAgICDilIIgICDilJTilIDilIAgQ29uZmln LmluCiAgICDilJzilIDilIAgYmFyZWJveC5oYXNoCiAgICDilJzilIDilIAgYmFyZWJveC5tawog ICAg4pSU4pSA4pSAIENvbmZpZy5pbgoKSWYgSSB1bmRlcnN0YW5kIGNvcnJlY3RseSwgd2UgYXJl IGluIGEgc2ltaWxhciBzaXR1YXRpb24gd2l0aCBncnViMiwgYW5kCnRoZXJlIGFyZSBvbmx5IGV2 ZXIgYXQgbW9zdCB0d28gInBsYXRmb3JtcyIgd2UgY2FuIGJ1aWxkLCBhbmQgaXQgZG9lcwpub3Qg bG9vayBsaWtlIGl0IHdpbGwgZXZlciBjaGFuZ2U6CgogICAgaTM4NjoKICAgICAgICBCUjJfVEFS R0VUX0dSVUIyX0kzODZfUEMKICAgICAgICBCUjJfVEFSR0VUX0dSVUIyX0kzODZfRUZJCgogICAg eDg2XzY0OgogICAgICAgIEJSMl9UQVJHRVRfR1JVQjJfSTM4Nl9FRkkKICAgICAgICBCUjJfVEFS R0VUX0dSVUIyX1g4Nl82NF9FRkkKCiAgICBhcm06CiAgICAgICAgQlIyX1RBUkdFVF9HUlVCMl9B Uk1fVUJPT1QKICAgICAgICBCUjJfVEFSR0VUX0dSVUIyX0FSTV9FRkkKCiAgICBhYXJjaDY0Ogog ICAgICAgIEJSMl9UQVJHRVRfR1JVQjJfQVJNNjRfRUZJCgpTbywgY2FuJ3Qgd2UgZG8gdGhlIHNh bWUgImR1cGxpY2F0aW9uIiBvZiBncnViMj8KCk5vdGUgdGhhdCwgaW4gbWVudWNvbmZpZywgd2Ug Y2FuIGtlZXAgdGhpbmdzIGFzLWlzLCBzbyB0aHQgaXQgbG9va3MKbmljZXIgdG8gdGhlIHVzZXIs IGFuZCB0aGVuIHdlIGhhdmUgYSBiaXQgb2YgbG9naWMgdG8gZGVjaWRlIGlmIHdlIG5lZWQKZ3J1 YjItYXV4IChvciB3aGF0ZXZlciBpdCdzIG5hbWVkKToKCiAgICBjb25maWcgQlIyX1BBQ0tBR0Vf R1JVQjJfTkVFRFNfQVVYCiAgICAgICAgYm9vbAogICAgICAgIHNlbGVjdCBCUjJfUEFDS0FHRV9H UlVCMl9BVVgKICAgICAgICBkZWZhdWx0IHkgaWYgQlIyX1RBUkdFVF9HUlVCMl9JMzg2X1BDICYm IEJSMl9UQVJHRVRfR1JVQjJfSTM4Nl9FRkkKICAgICAgICBkZWZhdWx0IHkgaWYgQlIyX1RBUkdF VF9HUlVCMl9JMzg2X0VGSSAmJiBCUjJfVEFSR0VUX0dSVUIyX1g4Nl82NF9FRkkKICAgICAgICBk ZWZhdWx0IHkgaWYgQlIyX1RBUkdFVF9HUlVCMl9BUk1fVUJPT1QgJiYgQlIyX1RBUkdFVF9HUlVC Ml9BUk1fRUZJCgpBbmQgdGhpcyBtZWFucyB0aGUgdXNlciBpcyBub3QgZXZlbiBhd2FyZSAoaW4g bWVudWNvbmZpZykgdGhhdCB0aGVyZSBpcwphIHNlY29uZGFyeSBncnViMi1hdXggcGFja2FnZS4K CkFueXdheSwgc2VlIHNvbWUgcmV2aWV3IGJlbG93Li4uCgo+IFdlIGhhdmUgdG8gc2VwYXJhdGUg dGhlIEJSMl9UQVJHRVRfR1JVQjJfQlVJTFRJTl9NT0RVTEVTIGFuZCB0aGUKPiBCUjJfVEFSR0VU X0dSVUIyX0JVSUxUSU5fQ09ORklHIGZvciBlYWNoIEJJT1Mgb3IgRUZJIGJvb3QgY2FzZXMuCj4g Cj4gU2lnbmVkLW9mZi1ieTogS29yeSBNYWluY2VudCA8a29yeS5tYWluY2VudEBib290bGluLmNv bT4KPiAtLS0KPiAgQ29uZmlnLmluLmxlZ2FjeSAgICAgICAgICAgICAgICAgICAgICAgICB8ICAx NiArKysKPiAgYm9vdC9ncnViMi9Db25maWcuaW4gICAgICAgICAgICAgICAgICAgICB8ICA0MCAr KysrLS0KPiAgYm9vdC9ncnViMi9ncnViMi5tayAgICAgICAgICAgICAgICAgICAgICB8IDE2NSAr KysrKysrKysrKysrLS0tLS0tLS0tLQo+ICBzdXBwb3J0L3Rlc3RpbmcvdGVzdHMvZnMvdGVzdF9p c285NjYwLnB5IHwgICA5ICstCj4gIDQgZmlsZXMgY2hhbmdlZCwgMTQ2IGluc2VydGlvbnMoKyks IDg0IGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9Db25maWcuaW4ubGVnYWN5IGIvQ29u ZmlnLmluLmxlZ2FjeQo+IGluZGV4IGEwYzFhNjg5OGYuLjUxOWNiODMwYjYgMTAwNjQ0Cj4gLS0t IGEvQ29uZmlnLmluLmxlZ2FjeQo+ICsrKyBiL0NvbmZpZy5pbi5sZWdhY3kKPiBAQCAtMTQ0LDYg KzE0NCwyMiBAQCBlbmRpZgo+ICAKPiAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwo+ICAKPiArY29u ZmlnIEJSMl9UQVJHRVRfR1JVQjJfQlVJTFRJTl9NT0RVTEVTCj4gKwlib29sICJ0aGUgZ3J1YjIg YnVpbHRpbiBtb2R1bGVzIGhhcyBiZWVuIHJlbmFtZWQiCgpCUjJfVEFSR0VUX0dSVUIyX0JVSUxU SU5fTU9EVUxFUyB3YXMgYSBzdHJpbmcsIHNvIGl0IGNhbid0IGJlIGEgYm9vbGVhbgppbiBsZWdh Y3kuCgo+ICsJc2VsZWN0IEJSMl9MRUdBQ1kKPiArCWhlbHAKPiArCSAgVGhpcyBvcHRpb24gaGFz IGJlZW4gc3BsaXQgdG8gc2VwYXJhdGUgdGhlIGJ1aWx0aW4gbW9kdWxlcwo+ICsJICBiZXR3ZWVu IEJSMl9UQVJHRVRfR1JVQjJfQlVJTFRJTl9NT0RVTEVTX1BDIGFuZAo+ICsJICBCUjJfVEFSR0VU X0dSVUIyX0JVSUxUSU5fTU9EVUxFU19FRkkuCj4gKwo+ICtjb25maWcgQlIyX1RBUkdFVF9HUlVC Ml9CVUlMVElOX0NPTkZJRwo+ICsJYm9vbCAidGhlIGdydWIyIGJ1aWx0aW4gY29uZmlndXJhdGlv biBoYXMgYmVlbiByZW5hbWVkIgoKRGl0dG86IGEgc3RyaW5nIG1pZ3JhdGVzIHRvIGEgbGVnYWN5 IHN0cmluZyBub3QgYSBsZWdhY3kgYm9vbC4KCj4gKwlzZWxlY3QgQlIyX0xFR0FDWQo+ICsJaGVs cAo+ICsJICBUaGlzIG9wdGlvbiBoYXMgYmVlbiBzcGxpdCB0byBzZXBhcmF0ZSB0aGUgYnVpbHRp biBjb25maWd1cmF0aW9uCj4gKwkgIGJldHdlZW4gQlIyX1RBUkdFVF9HUlVCMl9CVUlMVElOX0NP TkZJR19QQyBhbmQKPiArCSAgQlIyX1RBUkdFVF9HUlVCMl9CVUlMVElOX0NPTkZJR19FRkkuCj4g Kwo+ICBjb21tZW50ICJMZWdhY3kgb3B0aW9ucyByZW1vdmVkIGluIDIwMjEuMDUiCj4gIAo+ICBj b25maWcgQlIyX1BBQ0tBR0VfVURJU0tTX0xWTTIKPiBkaWZmIC0tZ2l0IGEvYm9vdC9ncnViMi9D b25maWcuaW4gYi9ib290L2dydWIyL0NvbmZpZy5pbgo+IGluZGV4IGU0NTEzMzk5OWUuLjc5MDQ2 YjljN2YgMTAwNjQ0Cj4gLS0tIGEvYm9vdC9ncnViMi9Db25maWcuaW4KPiArKysgYi9ib290L2dy dWIyL0NvbmZpZy5pbgo+IEBAIC0yNyw5ICsyNyw2IEBAIGNvbmZpZyBCUjJfVEFSR0VUX0dSVUIy Cj4gIAo+ICBpZiBCUjJfVEFSR0VUX0dSVUIyCj4gIAo+IC1jaG9pY2UKPiAtCXByb21wdCAiUGxh dGZvcm0iCgpCZWZvcmUsIHRoaXMgd2FzIGEgY2hvaWNlLCB3aGljaGogd291bGQgZ3VhcmFudGVl IHRoYXQgZXhhY3RseSBvbmUKcGxhdGZvcm0gd291bGQgYmUgZW5hYmxlZC4KCk5vdywgd2l0aCB5 b3VyIHBhdGNoLCB0aGVyZSBpcyBub3RoaW5nIHRoYXQgZW5zdXJlcyB0aGF0IHRoZXJlIGlzIGF0 CmxlYXN0IG9uZSBwbGF0Zm9ybSBlbmFibGVkLgoKV2hlbiB0aGVyZSBhcmUgbW9yZSB0aGFuIHR3 byBvcHRpb25zLCBsaWtlIGlzIHRoZSBjYXNlIGhlcmUsIHdoYXQgd2UKdXN1YWxseSBkbyBpczoK CiAgICBjb25maWcgQlIyX1RBUkdFVF9HUlVCMgogICAgICAgIGJvb2wgImdydWIyIgogICAgICAg IHNlbGVjdCBCUjJfVEFSR0VUX0dSVUIyX0kzODZfUEMgaWYgIUJSMl9UQVJHRVRfR1JVQjJfSEFT X1BURgoKICAgIGNvbmZpZyBCUjJfVEFSR0VUX0dSVUIyX0hBU19QVEYKICAgICAgICBib29sCgog ICAgY29uZmlnIEJSMl9UQVJHRVRfR1JVQjJfSTM4Nl9QQwogICAgICAgIGJvb2wgImkzODYtcGMi CgogICAgY29uZmlnIEJSMl9UQVJHRVRfR1JVQjJfSTM4Nl9FRkkKICAgICAgICBib29sICJpMzg2 LWVmaSIKICAgICAgICBzZWxlY3QgQlIyX1RBUkdFVF9HUlVCMl9IQVNfUFRGCgogICAgY29uZmln IEJSMl9UQVJHRVRfR1JVQjJfWDg2XzY0X0VGSQogICAgICAgIGJvb2wgIng4Ni02NC1lZmkiCiAg ICAgICAgc2VsZWN0IEJSMl9UQVJHRVRfR1JVQjJfSEFTX1BURgoKICAgICMgYW5kIHNvIG9uLi4u CgpUaGlzIGVuc3VyZXMgdGhhdCBhdCBsZWFzdCBvbmUgcGxhdGZvcm0gaXMgZW5hYmxlZC4KCj4g IGNvbmZpZyBCUjJfVEFSR0VUX0dSVUIyX0kzODZfUEMKPiAgCWJvb2wgImkzODYtcGMiCj4gIAlk ZXBlbmRzIG9uIEJSMl9pMzg2IHx8IEJSMl94ODZfNjQKPiBAQCAtNzYsMTAgKzczLDEwIEBAIGNv bmZpZyBCUjJfVEFSR0VUX0dSVUIyX0FSTTY0X0VGSQo+ICAJICBBYXJjaDY0IHBsYXRmb3JtIGFu ZCB5b3Ugd2FudCB0byBib290IEdydWIgMiBhcyBhbiBFRkkKPiAgCSAgYXBwbGljYXRpb24uCj4g IAo+IC1lbmRjaG9pY2UKPiAtCj4gIGlmIEJSMl9UQVJHRVRfR1JVQjJfSTM4Nl9QQyB8fCBCUjJf VEFSR0VUX0dSVUIyX0FSTV9VQk9PVAo+ICAKPiArY29tbWVudCAiT3B0aW9ucyBmb3IgdGhlIHg4 NiBsZWdhY3kgQklPUyBvciBBUk0gVS1Cb290IHN1cHBvcnQiCj4gKwo+ICBjb25maWcgQlIyX1RB UkdFVF9HUlVCMl9CT09UX1BBUlRJVElPTgo+ICAJc3RyaW5nICJib290IHBhcnRpdGlvbiIKPiAg CWRlZmF1bHQgImhkMCxtc2RvczEiCj4gQEAgLTg5LDI0ICs4Niw0MyBAQCBjb25maWcgQlIyX1RB UkdFVF9HUlVCMl9CT09UX1BBUlRJVElPTgo+ICAJICBmaXJzdCBkaXNrIGlmIHVzaW5nIGEgbGVn YWN5IHBhcnRpdGlvbiB0YWJsZSwgb3IgJ2hkMCxncHQxJwo+ICAJICBpZiB1c2luZyBHUFQgcGFy dGl0aW9uIHRhYmxlLgo+ICAKPiAtZW5kaWYgIyBCUjJfVEFSR0VUX0dSVUIyX0kzODZfUEMgfHwg QlIyX1RBUkdFVF9HUlVCMl9BUk1fVUJPT1QKPiAtCj4gLWNvbmZpZyBCUjJfVEFSR0VUX0dSVUIy X0JVSUxUSU5fTU9EVUxFUwo+ICtjb25maWcgQlIyX1RBUkdFVF9HUlVCMl9CVUlMVElOX01PRFVM RVNfUEMKPiAgCXN0cmluZyAiYnVpbHRpbiBtb2R1bGVzIgo+ICAJZGVmYXVsdCAiYm9vdCBsaW51 eCBleHQyIGZhdCBzcXVhc2g0IHBhcnRfbXNkb3MgcGFydF9ncHQgbm9ybWFsIGJpb3NkaXNrIiBp ZiBCUjJfVEFSR0VUX0dSVUIyX0kzODZfUEMKPiAtCWRlZmF1bHQgImJvb3QgbGludXggZXh0MiBm YXQgc3F1YXNoNCBwYXJ0X21zZG9zIHBhcnRfZ3B0IG5vcm1hbCBlZmlfZ29wIiBcCj4gLQkJaWYg QlIyX1RBUkdFVF9HUlVCMl9JMzg2X0VGSSB8fCBCUjJfVEFSR0VUX0dSVUIyX1g4Nl82NF9FRkkg fHwgXAo+IC0JCSAgIEJSMl9UQVJHRVRfR1JVQjJfQVJNX0VGSSAgfHwgQlIyX1RBUkdFVF9HUlVC Ml9BUk02NF9FRkkKPiAgCWRlZmF1bHQgImxpbnV4IGV4dDIgZmF0IHBhcnRfbXNkb3Mgbm9ybWFs IiBpZiBCUjJfVEFSR0VUX0dSVUIyX0FSTV9VQk9PVAo+ICsJZGVmYXVsdCBCUjJfVEFSR0VUX0dS VUIyX0JVSUxUSU5fTU9EVUxFUyBpZiBCUjJfVEFSR0VUX0dSVUIyX0JVSUxUSU5fTU9EVUxFUyAh PSAiIiAjIGxlZ2FjeQoKS2NvbmZpZyB1c2VzIHRoZSBmaXJzdCBkZWZhdWx0IGluIG9yZGVyLCB3 aGljaCBjb25kaXRpb24gaXMgdmFsaWQsIGFuZAp3ZSB3YW50IHRoZSBsZWdhY3kgZGVmYXVsdCB0 byB0YWtlIHByZWNlZGVuY2Ugb3ZlciB0aGUgcGVyLXBsYXRmb3JtCmRlZmF1bHQuIFNvIHdlIHdh bnQgdGhlIGxlZ2FjeSBkZWZhdWx0IHRvIGNvbWUgZmlyc3QgaW4gdGhlIGxpc3Q6CgogICAgZGVm YXVsdCBCUjJfVEFSR0VUX0dSVUIyX0JVSUxUSU5fTU9EVUxFUyBpZiBCUjJfVEFSR0VUX0dSVUIy X0JVSUxUSU5fTU9EVUxFUyAhPSAiIiAjIGxlZ2FjeQogICAgZGVmYXVsdCAiYm9vdCBsaW51eCBl eHQyIGZhdCBzcXVhc2g0IHBhcnRfbXNkb3MgcGFydF9ncHQgbm9ybWFsIGJpb3NkaXNrIiBpZiBC UjJfVEFSR0VUX0dSVUIyX0kzODZfUEMKICAgIGRlZmF1bHQgImxpbnV4IGV4dDIgZmF0IHBhcnRf bXNkb3Mgbm9ybWFsIiBpZiBCUjJfVEFSR0VUX0dSVUIyX0FSTV9VQk9PVAoKPiArY29uZmlnIEJS Ml9UQVJHRVRfR1JVQjJfQlVJTFRJTl9DT05GSUdfUEMKPiArCXN0cmluZyAiYnVpbHRpbiBjb25m aWciCj4gKwlkZWZhdWx0IEJSMl9UQVJHRVRfR1JVQjJfQlVJTFRJTl9DT05GSUcgaWYgQlIyX1RB UkdFVF9HUlVCMl9CVUlMVElOX0NPTkZJRyAhPSAiIiAjIGxlZ2FjeQo+ICsJaGVscAo+ICsJICBQ YXRoIHRvIGEgR3J1YiAyIGNvbmZpZ3VyYXRpb24gZmlsZSB0aGF0IHdpbGwgYmUgZW1iZWRkZWQK PiArCSAgaW50byB0aGUgR3J1YiBpbWFnZSBpdHNlbGYuIFRoaXMgYWxsb3dzIHRvIHNldCB0aGUg cm9vdAo+ICsJICBkZXZpY2UgYW5kIG90aGVyIGNvbmZpZ3VyYXRpb24gcGFyYW1ldGVycywgYnV0 IGhvd2V2ZXIgbWVudQo+ICsJICBlbnRyaWVzIGNhbm5vdCBiZSBkZXNjcmliZWQgaW4gdGhpcyBl bWJlZGRlZCBjb25maWd1cmF0aW9uLgo+ICsKPiArZW5kaWYgIyBCUjJfVEFSR0VUX0dSVUIyX0kz ODZfUEMgfHwgQlIyX1RBUkdFVF9HUlVCMl9BUk1fVUJPT1QKPiArCj4gK2lmIEJSMl9UQVJHRVRf R1JVQjJfSTM4Nl9FRkkgfHwgQlIyX1RBUkdFVF9HUlVCMl9YODZfNjRfRUZJIHx8IFwKPiArCUJS Ml9UQVJHRVRfR1JVQjJfQVJNX0VGSSAgfHwgQlIyX1RBUkdFVF9HUlVCMl9BUk02NF9FRkkKPiAr Cj4gK2NvbW1lbnQgIk9wdGlvbnMgZm9yIHRoZSBFRkkgQklPUyBvciBBUk0gRUZJIHN1cHBvcnQi Cj4gKwo+ICtjb25maWcgQlIyX1RBUkdFVF9HUlVCMl9CVUlMVElOX01PRFVMRVNfRUZJCj4gKwlz dHJpbmcgImJ1aWx0aW4gbW9kdWxlcyIKPiArCWRlZmF1bHQgImJvb3QgbGludXggZXh0MiBmYXQg c3F1YXNoNCBwYXJ0X21zZG9zIHBhcnRfZ3B0IG5vcm1hbCBlZmlfZ29wIgo+ICsJZGVmYXVsdCBC UjJfVEFSR0VUX0dSVUIyX0JVSUxUSU5fTU9EVUxFUyBpZiBCUjJfVEFSR0VUX0dSVUIyX0JVSUxU SU5fTU9EVUxFUyAhPSAiIiAjIGxlZ2FjeQoKRGl0dG86IGxlZ2FjeSBkZWZhdWx0IGNvbWVzIGZp cnN0LgoKPiAtY29uZmlnIEJSMl9UQVJHRVRfR1JVQjJfQlVJTFRJTl9DT05GSUcKPiArY29uZmln IEJSMl9UQVJHRVRfR1JVQjJfQlVJTFRJTl9DT05GSUdfRUZJCj4gIAlzdHJpbmcgImJ1aWx0aW4g Y29uZmlnIgo+ICsJZGVmYXVsdCBCUjJfVEFSR0VUX0dSVUIyX0JVSUxUSU5fQ09ORklHIGlmIEJS Ml9UQVJHRVRfR1JVQjJfQlVJTFRJTl9DT05GSUcgIT0gIiIgIyBsZWdhY3kKPiAgCWhlbHAKPiAg CSAgUGF0aCB0byBhIEdydWIgMiBjb25maWd1cmF0aW9uIGZpbGUgdGhhdCB3aWxsIGJlIGVtYmVk ZGVkCj4gIAkgIGludG8gdGhlIEdydWIgaW1hZ2UgaXRzZWxmLiBUaGlzIGFsbG93cyB0byBzZXQg dGhlIHJvb3QKPiAgCSAgZGV2aWNlIGFuZCBvdGhlciBjb25maWd1cmF0aW9uIHBhcmFtZXRlcnMs IGJ1dCBob3dldmVyIG1lbnUKPiAgCSAgZW50cmllcyBjYW5ub3QgYmUgZGVzY3JpYmVkIGluIHRo aXMgZW1iZWRkZWQgY29uZmlndXJhdGlvbi4KPiAgCj4gK2VuZGlmCj4gIGNvbmZpZyBCUjJfVEFS R0VUX0dSVUIyX0lOU1RBTExfVE9PTFMKPiAgCWJvb2wgImluc3RhbGwgdG9vbHMiCj4gIAloZWxw Cj4gZGlmZiAtLWdpdCBhL2Jvb3QvZ3J1YjIvZ3J1YjIubWsgYi9ib290L2dydWIyL2dydWIyLm1r Cj4gaW5kZXggNTJlOTE5OWFlOS4uMDRlYWRkNWRjMyAxMDA2NDQKPiAtLS0gYS9ib290L2dydWIy L2dydWIyLm1rCj4gKysrIGIvYm9vdC9ncnViMi9ncnViMi5tawo+IEBAIC01Nyw1MiArNTcsNjUg QEAgR1JVQjJfSU5TVEFMTF9UQVJHRVQgPSBOTwo+ICBlbmRpZgo+ICBHUlVCMl9DUEVfSURfVkVO RE9SID0gZ251Cj4gIAo+IC1HUlVCMl9CVUlMVElOX01PRFVMRVMgPSAkKGNhbGwgcXN0cmlwLCQo QlIyX1RBUkdFVF9HUlVCMl9CVUlMVElOX01PRFVMRVMpKQo+IC1HUlVCMl9CVUlMVElOX0NPTkZJ RyA9ICQoY2FsbCBxc3RyaXAsJChCUjJfVEFSR0VUX0dSVUIyX0JVSUxUSU5fQ09ORklHKSkKPiAr R1JVQjJfQlVJTFRJTl9NT0RVTEVTX1BDID0gJChjYWxsIHFzdHJpcCwkKEJSMl9UQVJHRVRfR1JV QjJfQlVJTFRJTl9NT0RVTEVTX1BDKSkKPiArR1JVQjJfQlVJTFRJTl9NT0RVTEVTX0VGSSA9ICQo Y2FsbCBxc3RyaXAsJChCUjJfVEFSR0VUX0dSVUIyX0JVSUxUSU5fTU9EVUxFU19FRkkpKQo+ICtH UlVCMl9CVUlMVElOX0NPTkZJR19QQyA9ICQoY2FsbCBxc3RyaXAsJChCUjJfVEFSR0VUX0dSVUIy X0JVSUxUSU5fQ09ORklHX1BDKSkKPiArR1JVQjJfQlVJTFRJTl9DT05GSUdfRUZJID0gJChjYWxs IHFzdHJpcCwkKEJSMl9UQVJHRVRfR1JVQjJfQlVJTFRJTl9DT05GSUdfRUZJKSkKPiAgR1JVQjJf Qk9PVF9QQVJUSVRJT04gPSAkKGNhbGwgcXN0cmlwLCQoQlIyX1RBUkdFVF9HUlVCMl9CT09UX1BB UlRJVElPTikpCgpBaCwgd2VlJ3JlIGdldHRpbmcgaW50byB0aGUgdWdseSBwYXJ0Li4uIDstXQoK PiAgaWZlcSAoJChCUjJfVEFSR0VUX0dSVUIyX0kzODZfUEMpLHkpClstLVNOSVAgcmVtb3ZhbHMt LV0KPiArR1JVQjJfSTM4Nl9QQ19JTUFHRSA9ICQoQklOQVJJRVNfRElSKS9ncnViLmltZwo+ICtH UlVCMl9JMzg2X1BDX0NGRyA9ICQoVEFSR0VUX0RJUikvYm9vdC9ncnViL2dydWIuY2ZnCj4gK0dS VUIyX0kzODZfUENfUFJFRklYID0gKCQoR1JVQjJfQk9PVF9QQVJUSVRJT04pKS9ib290L2dydWIK PiArR1JVQjJfSTM4Nl9QQ19UQVJHRVQgPSBpMzg2Cj4gK0dSVUIyX0kzODZfUENfUExBVEZPUk0g PSBwYwo+ICtHUlVCMl9JMzg2X1BDX0JVSUxUSU4gPSBQQwo+ICtHUlVCMl9UVVBMRVMgKz0gaTM4 Ni1wYwo+ICtlbmRpZgo+ICtpZmVxICgkKEJSMl9UQVJHRVRfR1JVQjJfSTM4Nl9FRkkpLHkpCj4g K0dSVUIyX0kzODZfRUZJX0lNQUdFID0gJChCSU5BUklFU19ESVIpL2VmaS1wYXJ0L0VGSS9CT09U L2Jvb3RpYTMyLmVmaQo+ICtHUlVCMl9JMzg2X0VGSV9DRkcgPSAkKEJJTkFSSUVTX0RJUikvZWZp LXBhcnQvRUZJL0JPT1QvZ3J1Yi5jZmcKPiArR1JVQjJfSTM4Nl9FRklfUFJFRklYID0gL0VGSS9C T09UCj4gK0dSVUIyX0kzODZfRUZJX1RBUkdFVCA9IGkzODYKPiArR1JVQjJfSTM4Nl9FRklfUExB VEZPUk0gPSBlZmkKPiArR1JVQjJfSTM4Nl9FRklfQlVJTFRJTiA9IEVGSQo+ICtHUlVCMl9UVVBM RVMgKz0gaTM4Ni1lZmkKPiArZW5kaWYKWy0tU05JUC0tXQoKSSB0aGluayBpdCBpcyBtb3JlIGRp Z2VzdGlibGUgaWYgd3JpdHRlbiBhczoKCiAgICBHUlVCMl9JTUFHRV9pMzg2LXBjID0gJChCSU5B UklFU19ESVIpL2dydWIuaW1nCiAgICBHUlVCMl9DRkdfaTM4Ni1wYyA9ICQoVEFSR0VUX0RJUikv Ym9vdC9ncnViL2dydWIuY2ZnCiAgICBHUlVCMl9QUkVGSVhfaTM4Ni1wYyA9ICgkKEdSVUIyX0JP T1RfUEFSVElUSU9OKSkvYm9vdC9ncnViCiAgICBHUlVCMl9UQVJHRVRfaTM4Ni1wYyA9IGkzODYK ICAgIEdSVUIyX1BMQVRGT1JNX2kzODYtcGMgPSBwYwogICAgR1JVQjJfQlVJTFRJTl9pMzg2LXBj ID0gUEMKICAgIEdSVUIyX1RVUExFU18kKEJSMl9UQVJHRVRfR1JVQjJfSTM4Nl9QQykgKz0gaTM4 Ni1wYwoKICAgIEdSVUIyX0lNQUdFX2kzODYtZWZpID0gJChCSU5BUklFU19ESVIpL2VmaS1wYXJ0 L0VGSS9CT09UL2Jvb3RpYTMyLmVmaQogICAgR1JVQjJfQ0ZHX2kzODYtZWZpID0gJChCSU5BUklF U19ESVIpL2VmaS1wYXJ0L0VGSS9CT09UL2dydWIuY2ZnCiAgICBHUlVCMl9QUkVGSVhfaTM4Ni1l ZmkgPSAvRUZJL0JPT1QKICAgIEdSVUIyX1RBUkdFVF9pMzg2LWVmaSA9IGkzODYKICAgIEdSVUIy X1BMQVRGT1JNX2kzODYtZWZpID0gZWZpCiAgICBHUlVCMl9CVUlMVElOX2kzODYtZWZpID0gRUZJ CiAgICBHUlVCMl9UVVBMRVNfJChCUjJfVEFSR0VUX0dSVUIyX0kzODZfRUZJKSArPSBpMzg2LWVm aQoKICAgIFsuLi5dCgogICAgJChmb3JlYWNoIHR1cGxlLCAkKEdSVUIyX1RVUExFU195KSwgYmxh YmxhYmxhLi4uKQoKVGhhdCB3YXkgeW91IGRvbjt0IGhhdmUgdG8gcGxheSB0cmlja3Mgd2l0aCAk KGNhbGwgVVBQRVJDQVNFLCQodHVwbGUpKSwKYW5kIHRoZSBjb25kaXRpb25hbCBibG9ja3MgYXJl IGdvbmUgYXdheSB3aGljaCBtYWtlcyBmb3IgYSBtb3JlIGxlZ2libGUKY29kZSAoSU1ITykuCgo+ ICAjIEdydWIyIGlzIGtpbmQgb2Ygc3BlY2lhbDogaXQgY29uc2lkZXJzIENDLCBMRCBhbmQgc28g b24gdG8gYmUgdGhlCj4gQEAgLTEyOCw4ICsxNDEsMTAgQEAgR1JVQjJfQ09ORl9FTlYgPSBcCj4g IAlUQVJHRVRfU1RSSVA9IiQoVEFSR0VUX0NST1NTKXN0cmlwIgo+ICAKPiAgR1JVQjJfQ09ORl9P UFRTID0gXAo+IC0JLS10YXJnZXQ9JChHUlVCMl9UQVJHRVQpIFwKPiAtCS0td2l0aC1wbGF0Zm9y bT0kKEdSVUIyX1BMQVRGT1JNKSBcCj4gKwktLWhvc3Q9JChHTlVfVEFSR0VUX05BTUUpIFwKPiAr CS0tYnVpbGQ9JChHTlVfSE9TVF9OQU1FKSBcCj4gKwktLXRhcmdldD0kKEdSVUIyXyQoY2FsbCBV UFBFUkNBU0UsJCh0dXBsZSkpX1RBUkdFVCkgXAo+ICsJLS13aXRoLXBsYXRmb3JtPSQoR1JVQjJf JChjYWxsIFVQUEVSQ0FTRSwkKHR1cGxlKSlfUExBVEZPUk0pIFwKCiAgICAtLXRhcmdldD0kKEdS VUIyX1RBUkdFVF8kKHR1cGxlKSkKICAgIC0td2l0aC1wbGF0Zm9ybT0kKEdSVUIyX1BMQVRGT1JN XyQodHVwbGUpKSBcCgpIb3dldmVyLCBJIGRvbid0IGxpa2UgbWFjcm9zIHRoYXQgYXJlIGltcGxp Y2l0bHkgcGFyYW1ldGVyaXNlZC4gV2UndmUKZ29uZSBpbiBxdWl0ZSBzb21lIGNoYW5nZXMgaW4g dGhlIHBhc3QgdG8gZml4IHNpbWlsYXIgY2FzZXMgKGUuZy4gaW4gdGhlCmRvd25sb2FkIGluZnJh KS4KClNvLCBJJ2Qgd3JpdGUgYSByZWFsIHBhcmFtZXRlcmlzZWQgbWFyY286CgogICAgIyAkKDEp OiB0dXBsZSBibGFibGFibGEuLi4KICAgIEdSVUIyX0NPTkZfT1BUUyA9IFwKICAgICAgICAtLWhv c3Q9JChHTlVfVEFSR0VUX05BTUUpIFwKICAgICAgICAtLXRhcmdldD0kKEdSVUIyX1RBUkdFVF8k KDEpKSBcCiAgICAgICAgLS13aXRoLXBsYXRmb3JtPSQoR1JVQjJfUExBVEZPUk1fJCgxKSkgXAog ICAgICAgIFsuLi5dCgogICAgJChmb3JlYWNoIHR1cGxlLCAkKEdSVUIyX1RVUExFU195KSwgXAog ICAgICAgIFsuLi5dIFwKICAgICAgICAuLi9jb25maWd1cmUgJChjYWxsIEdSVUIyX0NPTkZfT1BU UywkKHR1cGxlKSkKICAgICkKCiAgICAjIEFuZCBkaXR0byBmb3IgdGhlIF9CVUlMRF9DTURTLi4u Cgo+ICAJLS1wcmVmaXg9LyBcCj4gIAktLWV4ZWMtcHJlZml4PS8gXAo+ICAJLS1kaXNhYmxlLWdy dWItbWtmb250IFwKPiBAQCAtMTQ3LDM0ICsxNjIsNDYgQEAgSE9TVF9HUlVCMl9DT05GX09QVFMg PSBcCj4gIAktLWVuYWJsZS1saWJ6ZnM9bm8gXAo+ICAJLS1kaXNhYmxlLXdlcnJvcgo+ICAKPiAt aWZlcSAoJChCUjJfVEFSR0VUX0dSVUIyX0kzODZfUEMpLHkpCj4gLWRlZmluZSBHUlVCMl9JTUFH RV9JTlNUQUxMX0VMVE9SSVRPCj4gLQljYXQgJChIT1NUX0RJUikvbGliL2dydWIvJChHUlVCMl9U VVBMRSkvY2Rib290LmltZyAkKEdSVUIyX0lNQUdFKSA+IFwKPiAtCQkkKEJJTkFSSUVTX0RJUikv Z3J1Yi1lbHRvcml0by5pbWcKPiArZGVmaW5lIEdSVUIyX0NPTkZJR1VSRV9DTURTCj4gKwkkKGZv cmVhY2ggdHVwbGUsICQoR1JVQjJfVFVQTEVTKSwgXAo+ICsJCW1rZGlyIC1wICQoQEQpL2J1aWxk LSQodHVwbGUpIDsgXAo+ICsJCWNkICQoQEQpL2J1aWxkLSQodHVwbGUpIDsgXAo+ICsJCSQoVEFS R0VUX0NPTkZJR1VSRV9PUFRTKSBcCj4gKwkJJChUQVJHRVRfQ09ORklHVVJFX0FSR1MpIFwKPiAr CQkkKEdSVUIyX0NPTkZfRU5WKSBcCj4gKwkJLi4vY29uZmlndXJlIFwKPiArCQkJJChHUlVCMl9D T05GX09QVFMpCj4gKwkpCj4gIGVuZGVmCj4gLWVuZGlmCj4gIAo+IC1kZWZpbmUgR1JVQjJfSU5T VEFMTF9JTUFHRVNfQ01EUwo+IC0JbWtkaXIgLXAgJChkaXIgJChHUlVCMl9JTUFHRSkpCj4gLQkk KEhPU1RfRElSKS91c3IvYmluL2dydWItbWtpbWFnZSBcCj4gLQkJLWQgJChARCkvZ3J1Yi1jb3Jl LyBcCj4gLQkJLU8gJChHUlVCMl9UVVBMRSkgXAo+IC0JCS1vICQoR1JVQjJfSU1BR0UpIFwKPiAt CQktcCAiJChHUlVCMl9QUkVGSVgpIiBcCj4gLQkJJChpZiAkKEdSVUIyX0JVSUxUSU5fQ09ORklH KSwtYyAkKEdSVUIyX0JVSUxUSU5fQ09ORklHKSkgXAo+IC0JCSQoR1JVQjJfQlVJTFRJTl9NT0RV TEVTKQo+IC0JbWtkaXIgLXAgJChkaXIgJChHUlVCMl9DRkcpKQo+IC0JJChJTlNUQUxMKSAtRCAt bSAwNjQ0IGJvb3QvZ3J1YjIvZ3J1Yi5jZmcgJChHUlVCMl9DRkcpCj4gLQkkKEdSVUIyX0lNQUdF X0lOU1RBTExfRUxUT1JJVE8pCj4gK2RlZmluZSBHUlVCMl9CVUlMRF9DTURTCj4gKwkkKGZvcmVh Y2ggdHVwbGUsICQoR1JVQjJfVFVQTEVTKSwgXAo+ICsJCSQoVEFSR0VUX01BS0VfRU5WKSAkKE1B S0UpIC1DICQoQEQpL2J1aWxkLSQodHVwbGUpCj4gKwkpCj4gIGVuZGVmCj4gIAo+IC1pZmVxICgk KEdSVUIyX1BMQVRGT1JNKSxlZmkpCj4gLWRlZmluZSBHUlVCMl9FRklfU1RBUlRVUF9OU0gKPiAt CWVjaG8gJChub3RkaXIgJChHUlVCMl9JTUFHRSkpID4gXAo+IC0JCSQoQklOQVJJRVNfRElSKS9l ZmktcGFydC9zdGFydHVwLm5zaAo+ICtkZWZpbmUgR1JVQjJfSU5TVEFMTF9JTUFHRVNfQ01EUwo+ ICsJJChmb3JlYWNoIHR1cGxlLCAkKEdSVUIyX1RVUExFUyksIFwKPiArCQlta2RpciAtcCAkKGRp ciAkKEdSVUIyXyQoY2FsbCBVUFBFUkNBU0UsJCh0dXBsZSkpX0lNQUdFKSkgOyBcCj4gKwkJJChI T1NUX0RJUikvdXNyL2Jpbi9ncnViLW1raW1hZ2UgXAo+ICsJCQktZCAkKEBEKS9idWlsZC0kKHR1 cGxlKS9ncnViLWNvcmUvIFwKPiArCQkJLU8gJCh0dXBsZSkgXAo+ICsJCQktbyAkKEdSVUIyXyQo Y2FsbCBVUFBFUkNBU0UsJCh0dXBsZSkpX0lNQUdFKSBcCj4gKwkJCS1wICIkKEdSVUIyXyQoY2Fs bCBVUFBFUkNBU0UsJCh0dXBsZSkpX1BSRUZJWCkiIFwKPiArCQkJJChpZiAkKEdSVUIyX0JVSUxU SU5fQ09ORklHXyQoR1JVQjJfJChjYWxsIFVQUEVSQ0FTRSwkKHR1cGxlKSlfQlVJTFRJTikpLCBc Cj4gKwkJCQktYyAkKEdSVUIyX0JVSUxUSU5fQ09ORklHXyQoR1JVQjJfJChjYWxsIFVQUEVSQ0FT RSwkKHR1cGxlKSlfQlVJTFRJTikpKSBcCj4gKwkJCSQoR1JVQjJfQlVJTFRJTl9NT0RVTEVTXyQo R1JVQjJfJChjYWxsIFVQUEVSQ0FTRSwkKHR1cGxlKSlfQlVJTFRJTikpIDsgXAo+ICsJCSQoSU5T VEFMTCkgLUQgLW0gMDY0NCBib290L2dydWIyL2dydWIuY2ZnICQoR1JVQjJfJChjYWxsIFVQUEVS Q0FTRSwkKHR1cGxlKSlfQ0ZHKSA7IFwKPiArCQkkKGlmICQoZmluZHN0cmluZyAkKEdSVUIyXyQo Y2FsbCBVUFBFUkNBU0UsJCh0dXBsZSkpX1BMQVRGT1JNKSwgcGMpLCBcCj4gKwkJCWNhdCAkKEhP U1RfRElSKS9saWIvZ3J1Yi8kKHR1cGxlKS9jZGJvb3QuaW1nICQoR1JVQjJfJChjYWxsIFVQUEVS Q0FTRSwkKHR1cGxlKSlfSU1BR0UpID4gXAo+ICsJCQkJJChCSU5BUklFU19ESVIpL2dydWItZWx0 b3JpdG8uaW1nLCBcCgpTcHVyaW91cyB0cmFpbGluZyBjb21tYS4gWW91J3JlIGx1Y2t5LCB0aGlz IGlzIGludGVycHJldGVkIGFzIGEKc2VwYXJhdG9yIGJldHdlZW4gdGhlIHR3byAnaWYnIGNsYXVz ZXMsIHByb3ZpZGluZyBhbiBlbXB0eSAnZWxzZScKY2xhdXNlLiBTdGlsbCwgcGxlYXNlIGRyb3Ag aXQuCgo+ICsJCSkgXAo+ICsJCSQoaWYgJChmaW5kc3RyaW5nICQoR1JVQjJfJChjYWxsIFVQUEVS Q0FTRSwkKHR1cGxlKSlfUExBVEZPUk0pLCBlZmkpLCBcCj4gKwkJCWVjaG8gJChub3RkaXIgJChH UlVCMl8kKGNhbGwgVVBQRVJDQVNFLCQodHVwbGUpKV9JTUFHRSkpID4gXAo+ICsJCQkJJChCSU5B UklFU19ESVIpL2VmaS1wYXJ0L3N0YXJ0dXAubnNoIFwKCkZvciB4ODZfNjQsIHlvdSBjYW4gbm93 IGhhdmUgdHdvIHBsYXRmb3JtcyBwcm92aWRpbmcgdGhlIEVGSSBzdHVmZjoKYm90aCBCUjJfVEFS R0VUX0dSVUIyX0kzODZfRUZJIGFuZCBCUjJfVEFSR0VUX0dSVUIyX1g4Nl82NF9FRkkgY2FuIG5v dwpiZSBlbmFibGVkIGF0IHRoZSBzYW1lIHRpbWUsIHNvIHRoZSBsYXR0ZXIgd2lsbCByZXBsY2Fl IHRoZSBmb3JtZXIgaW4KdGhhdCBzdGFydHVwLm5zaCBmaWxlLiBUaGlzIGlzIHByb2JhYmx5IG5v dCBnb29kLi4uCgo+ICsJCSkKPiArCSkKPiAgZW5kZWYKPiAtR1JVQjJfUE9TVF9JTlNUQUxMX0lN QUdFU19IT09LUyArPSBHUlVCMl9FRklfU1RBUlRVUF9OU0gKPiAtZW5kaWYKPiAgCj4gLSQoZXZh bCAkKGF1dG90b29scy1wYWNrYWdlKSkKPiArJChldmFsICQoZ2VuZXJpYy1wYWNrYWdlKSkKClRo aXMgaXMgbXkgbWFpbiBwcm9ibGVtOiB3ZSdyZSBtb3N0bHkgZHVwbGljYXRpbmcgYml0cyBhbmQg cGllY2VzIG9mIHRoZQphdXRvdG9sbHMtcGFja2FnZSBpbmZyYSwgd2hpY2ggbWVhbnMgd2UgKndp bGwqIGZhbGwgYmVoaW5kIHZlcnkgcXVpY2tseQp3aGVuIHdlIGhhdmUgdG8gdXBkYXRlIHNhaWQg aW5mcmEsIGFuZCB0aG9zZSBjaGFuZ2VzIHdpbGwgbm90IHBlcmNvbGF0ZQp0byB0aGlzIGdydWIy IHBhY2thZ2UuCgo+ICAkKGV2YWwgJChob3N0LWF1dG90b29scy1wYWNrYWdlKSkKPiBkaWZmIC0t Z2l0IGEvc3VwcG9ydC90ZXN0aW5nL3Rlc3RzL2ZzL3Rlc3RfaXNvOTY2MC5weSBiL3N1cHBvcnQv dGVzdGluZy90ZXN0cy9mcy90ZXN0X2lzbzk2NjAucHkKPiBpbmRleCA2OGY0ODQwODUyLi5mZmZh NDljYWYzIDEwMDY0NAo+IC0tLSBhL3N1cHBvcnQvdGVzdGluZy90ZXN0cy9mcy90ZXN0X2lzbzk2 NjAucHkKPiArKysgYi9zdXBwb3J0L3Rlc3RpbmcvdGVzdHMvZnMvdGVzdF9pc285NjYwLnB5Cj4g QEAgLTU0LDcgKzU0LDggQEAgY2xhc3MgVGVzdElzbzk2NjBHcnViMkV4dGVybmFsKGluZnJhLmJh c2V0ZXN0LkJSVGVzdCk6Cj4gICAgICAgICAgIyBCUjJfVEFSR0VUX1JPT1RGU19JU085NjYwX0lO SVRSRCBpcyBub3Qgc2V0Cj4gICAgICAgICAgQlIyX1RBUkdFVF9HUlVCMj15Cj4gICAgICAgICAg QlIyX1RBUkdFVF9HUlVCMl9CT09UX1BBUlRJVElPTj0iY2QiCj4gLSAgICAgICAgQlIyX1RBUkdF VF9HUlVCMl9CVUlMVElOX01PRFVMRVM9ImJvb3QgbGludXggZXh0MiBmYXQgcGFydF9tc2RvcyBw YXJ0X2dwdCBub3JtYWwgYmlvc2Rpc2sgaXNvOTY2MCIKPiArICAgICAgICBCUjJfVEFSR0VUX0dS VUIyX0JVSUxUSU5fTU9EVUxFU19QQz0iYm9vdCBsaW51eCBleHQyIGZhdCBwYXJ0X21zZG9zIHBh cnRfZ3B0IG5vcm1hbCBiaW9zZGlzayBpc285NjYwIgo+ICsgICAgICAgIEJSMl9UQVJHRVRfR1JV QjJfQlVJTFRJTl9DT05GSUdfUEM9IiIKCk5vIG5lZWQgdG8gcHJvdmlkZSBhbiBlbXB0eSBzdHJp bmcgaGVyZTogdGhlIGRlZmF1bHQgKmlzKiBhbiBlbXB0eQpzdHJpbmcuCgo+ICAgICAgICAgIEJS Ml9UQVJHRVRfUk9PVEZTX0lTTzk2NjBfQk9PVF9NRU5VPSJ7fSIKPiAgICAgICAgICAiIiIuZm9y bWF0KGluZnJhLmZpbGVwYXRoKCJjb25mL2dydWIyLmNmZyIpKQo+ICAKPiBAQCAtNzUsNyArNzYs OCBAQCBjbGFzcyBUZXN0SXNvOTY2MEdydWIyRXh0ZXJuYWxDb21wcmVzcyhpbmZyYS5iYXNldGVz dC5CUlRlc3QpOgo+ICAgICAgICAgIEJSMl9UQVJHRVRfUk9PVEZTX0lTTzk2NjBfVFJBTlNQQVJF TlRfQ09NUFJFU1NJT049eQo+ICAgICAgICAgIEJSMl9UQVJHRVRfR1JVQjI9eQo+ICAgICAgICAg IEJSMl9UQVJHRVRfR1JVQjJfQk9PVF9QQVJUSVRJT049ImNkIgo+IC0gICAgICAgIEJSMl9UQVJH RVRfR1JVQjJfQlVJTFRJTl9NT0RVTEVTPSJib290IGxpbnV4IGV4dDIgZmF0IHBhcnRfbXNkb3Mg cGFydF9ncHQgbm9ybWFsIGJpb3NkaXNrIGlzbzk2NjAiCj4gKyAgICAgICAgQlIyX1RBUkdFVF9H UlVCMl9CVUlMVElOX01PRFVMRVNfUEM9ImJvb3QgbGludXggZXh0MiBmYXQgcGFydF9tc2RvcyBw YXJ0X2dwdCBub3JtYWwgYmlvc2Rpc2sgaXNvOTY2MCIKPiArICAgICAgICBCUjJfVEFSR0VUX0dS VUIyX0JVSUxUSU5fQ09ORklHX1BDPSIiCgpEaXR0by4KCj4gICAgICAgICAgQlIyX1RBUkdFVF9S T09URlNfSVNPOTY2MF9CT09UX01FTlU9Int9Igo+ICAgICAgICAgICIiIi5mb3JtYXQoaW5mcmEu ZmlsZXBhdGgoImNvbmYvZ3J1YjIuY2ZnIikpCj4gIAo+IEBAIC05NSw3ICs5Nyw4IEBAIGNsYXNz IFRlc3RJc285NjYwR3J1YjJJbnRlcm5hbChpbmZyYS5iYXNldGVzdC5CUlRlc3QpOgo+ICAgICAg ICAgIEJSMl9UQVJHRVRfUk9PVEZTX0lTTzk2NjBfSU5JVFJEPXkKPiAgICAgICAgICBCUjJfVEFS R0VUX0dSVUIyPXkKPiAgICAgICAgICBCUjJfVEFSR0VUX0dSVUIyX0JPT1RfUEFSVElUSU9OPSJj ZCIKPiAtICAgICAgICBCUjJfVEFSR0VUX0dSVUIyX0JVSUxUSU5fTU9EVUxFUz0iYm9vdCBsaW51 eCBleHQyIGZhdCBwYXJ0X21zZG9zIHBhcnRfZ3B0IG5vcm1hbCBiaW9zZGlzayBpc285NjYwIgo+ ICsgICAgICAgIEJSMl9UQVJHRVRfR1JVQjJfQlVJTFRJTl9NT0RVTEVTX1BDPSJib290IGxpbnV4 IGV4dDIgZmF0IHBhcnRfbXNkb3MgcGFydF9ncHQgbm9ybWFsIGJpb3NkaXNrIGlzbzk2NjAiCj4g KyAgICAgICAgQlIyX1RBUkdFVF9HUlVCMl9CVUlMVElOX0NPTkZJR19QQz0iIgoKRGl0dG8uCgpH aXZlbiB0aGUgYWJvdmUsIGFuZCBnaXZlbiB0aGF0IHRoZSByZXN0IG9mIHRoZSBzZXJpZXMgKShl eGNlcHQgcGF0Y2hlcwoyLTMgYWxyZWFkeSBhcHBsaWVkKSBkZXBlbmQgb24gdGhpcyBmaXJzdCBw YXRjaCwgSSd2ZSBtYXJrZWQgdGhlIHNlcmllcwphcyBDaGFuZ2VzIFJlcXVlc3RlZCBpbiBQYXRj aHdvcmsuCgpSZWdhcmRzLApZYW5uIEUuIE1PUklOLgoKPiAgICAgICAgICBCUjJfVEFSR0VUX1JP T1RGU19JU085NjYwX0JPT1RfTUVOVT0ie30iCj4gICAgICAgICAgIiIiLmZvcm1hdChpbmZyYS5m aWxlcGF0aCgiY29uZi9ncnViMi5jZmciKSkKPiAgCj4gLS0gCj4gMi4yNS4xCj4gCj4gX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiBidWlsZHJvb3QgbWFp bGluZyBsaXN0Cj4gYnVpbGRyb290QGxpc3RzLmJ1aWxkcm9vdC5vcmcKPiBodHRwczovL2xpc3Rz LmJ1aWxkcm9vdC5vcmcvbWFpbG1hbi9saXN0aW5mby9idWlsZHJvb3QKCi0tIAouLS0tLS0tLS0t LS0tLS0tLS0uLS0tLS0tLS0tLS0tLS0tLS0tLS0uLS0tLS0tLS0tLS0tLS0tLS0tLi0tLS0tLS0t LS0tLS0tLS0tLS0tLgp8ICBZYW5uIEUuIE1PUklOICB8IFJlYWwtVGltZSBFbWJlZGRlZCB8IC8i XCBBU0NJSSBSSUJCT04gfCBFcmljcycgY29uc3BpcmFjeTogfAp8ICszMyA2NjIgMzc2IDA1NiB8 IFNvZnR3YXJlICBEZXNpZ25lciB8IFwgLyBDQU1QQUlHTiAgICAgfCAgX19fICAgICAgICAgICAg ICAgfAp8ICszMyA1NjEgMDk5IDQyNyBgLS0tLS0tLS0tLS0tLi0tLS0tLS06ICBYICBBR0FJTlNU ICAgICAgfCAgXGUvICBUaGVyZSBpcyBubyAgfAp8IGh0dHA6Ly95bW9yaW4uaXMtYS1nZWVrLm9y Zy8gfCBfLypcXyB8IC8gXCBIVE1MIE1BSUwgICAgfCAgIHYgICBjb25zcGlyYWN5LiAgfAonLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXi0tLS0tLS1eLS0tLS0tLS0tLS0tLS0tLS0tXi0t LS0tLS0tLS0tLS0tLS0tLS0tJwpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpidWlsZHJvb3QgbWFpbGluZyBsaXN0CmJ1aWxkcm9vdEBsaXN0cy5idWlsZHJv b3Qub3JnCmh0dHBzOi8vbGlzdHMuYnVpbGRyb290Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2J1aWxk cm9vdAo=