From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 90530 invoked by alias); 1 Jul 2015 20:53:50 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 90495 invoked by uid 89); 1 Jul 2015 20:53:50 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=2.2 required=5.0 tests=AWL,BAYES_50,KAM_LAZY_DOMAIN_SECURITY,KAM_LINEPADDING,RP_MATCHES_RCVD,SPF_HELO_PASS,WEIRD_QUOTING autolearn=no version=3.3.2 X-Spam-User: qpsmtpd, 2 recipients X-HELO: mx1.redhat.com Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-GCM-SHA384 encrypted) ESMTPS; Wed, 01 Jul 2015 20:53:47 +0000 Received: from int-mx09.intmail.prod.int.phx2.redhat.com (int-mx09.intmail.prod.int.phx2.redhat.com [10.5.11.22]) by mx1.redhat.com (Postfix) with ESMTPS id 013353500F7; Wed, 1 Jul 2015 20:53:45 +0000 (UTC) Received: from YAAKOV04.redhat.com ([10.10.116.36]) by int-mx09.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id t61KrhkB001804 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Wed, 1 Jul 2015 16:53:44 -0400 Message-ID: <1435784026.10408.10.camel@redhat.com> Subject: Re: [PATCH] config: fix AM_ICONV for in-tree libiconv From: Yaakov Selkowitz To: gcc-patches@gcc.gnu.org, "binutils@sourceware.org" , "gdb-patches@sourceware.org" Date: Wed, 01 Jul 2015 20:53:00 -0000 In-Reply-To: <1435783931.10408.8.camel@redhat.com> References: <1432934749.13692.9.camel@redhat.com> <1435783562.10408.6.camel@redhat.com> <1435783931.10408.8.camel@redhat.com> Content-Type: multipart/mixed; boundary="=-c5XhPzaWPTSvNlvpOvBt" Mime-Version: 1.0 X-SW-Source: 2015-07/txt/msg00064.txt.bz2 --=-c5XhPzaWPTSvNlvpOvBt Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit Content-length: 1243 On Wed, 2015-07-01 at 15:52 -0500, Yaakov Selkowitz wrote: > On Wed, 2015-07-01 at 15:46 -0500, Yaakov Selkowitz wrote: > > On Fri, 2015-05-29 at 16:25 -0500, Yaakov Selkowitz wrote: > > > This is the second in a series of patches to make a build with an > > > in-tree GNU libiconv work as designed. > > > > > > Currently GDB is the only toolchain component which actually uses an > > > in-tree libiconv. This patch modifies the common AM_ICONV to use an > > > in-tree libiconv when present and not already provided by libc. (GDB's > > > workaround uses an in-tree libiconv even when libc provides iconv(3); > > > I'm not sure when or why that would be desirable.) > > > > > > Once these two patches are merged in to each tree, I will follow with > > > patches to regenerate the various configure scripts and a few other > > > minor corresponding changes. > > > > This patch was bootstrapped in conjunction with the toplevel libiconv > > patch. I don't have write permissions to either repository, so please > > apply once approved. > > Ditto for this patch, which regenerates intl/configure for the changes > in config/iconv.m4. With the patch attached this time. -- Yaakov Selkowitz Associate Software Engineer, ARM Red Hat, Inc. --=-c5XhPzaWPTSvNlvpOvBt Content-Disposition: attachment; filename="0003-intl-autoconf.patch" Content-Transfer-Encoding: base64 Content-Type: text/x-patch; name="0003-intl-autoconf.patch"; charset="UTF-8" Content-length: 42997 SW5kZXg6IGludGwvY29uZmlndXJlCj09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K LS0tIGludGwvY29uZmlndXJlCShyZXZpc2lvbiAyMjUyMTUpCisrKyBpbnRs L2NvbmZpZ3VyZQkod29ya2luZyBjb3B5KQpAQCAtNjA5LDggKzYwOSw2IEBA CiBVU0VfSU5DTFVERURfTElCSU5UTAogQlVJTERfSU5DTFVERURfTElCSU5U TAogSU5UTEJJU09OCi1MVExJQklDT05WCi1MSUJJQ09OVgogR0xJQkMyMQog QUxMT0NBCiBFR1JFUApAQCAtNjg0LDkgKzY4Miw5IEBACiBhY191c2VyX29w dHM9JwogZW5hYmxlX29wdGlvbl9jaGVja2luZwogZW5hYmxlX25scword2l0 aF9saWJpY29udl9wcmVmaXgKIHdpdGhfZ251X2xkCiBlbmFibGVfcnBhdGgK LXdpdGhfbGliaWNvbnZfcHJlZml4CiB3aXRoX2luY2x1ZGVkX2dldHRleHQK IHdpdGhfbGliaW50bF9wcmVmaXgKIGVuYWJsZV9tYWludGFpbmVyX21vZGUK QEAgLTEzMTksOSArMTMxNyw5IEBACiBPcHRpb25hbCBQYWNrYWdlczoKICAg LS13aXRoLVBBQ0tBR0VbPUFSR10gICAgdXNlIFBBQ0tBR0UgW0FSRz15ZXNd CiAgIC0td2l0aG91dC1QQUNLQUdFICAgICAgIGRvIG5vdCB1c2UgUEFDS0FH RSAoc2FtZSBhcyAtLXdpdGgtUEFDS0FHRT1ubykKKyAgLS13aXRoLWxpYmlj b252LXByZWZpeD1ESVIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgc2Vh cmNoIGZvciBsaWJpY29udiBpbiBESVIvaW5jbHVkZSBhbmQgRElSL2xpYgog ICAtLXdpdGgtZ251LWxkICAgICAgICAgICBhc3N1bWUgdGhlIEMgY29tcGls ZXIgdXNlcyBHTlUgbGQgZGVmYXVsdD1ubwotICAtLXdpdGgtbGliaWNvbnYt cHJlZml4Wz1ESVJdICBzZWFyY2ggZm9yIGxpYmljb252IGluIERJUi9pbmNs dWRlIGFuZCBESVIvbGliCi0gIC0td2l0aG91dC1saWJpY29udi1wcmVmaXgg ICAgIGRvbid0IHNlYXJjaCBmb3IgbGliaWNvbnYgaW4gaW5jbHVkZWRpciBh bmQgbGliZGlyCiAgIC0td2l0aC1pbmNsdWRlZC1nZXR0ZXh0IHVzZSB0aGUg R05VIGdldHRleHQgbGlicmFyeSBpbmNsdWRlZCBoZXJlCiAgIC0td2l0aC1s aWJpbnRsLXByZWZpeFs9RElSXSAgc2VhcmNoIGZvciBsaWJpbnRsIGluIERJ Ui9pbmNsdWRlIGFuZCBESVIvbGliCiAgIC0td2l0aG91dC1saWJpbnRsLXBy ZWZpeCAgICAgZG9uJ3Qgc2VhcmNoIGZvciBsaWJpbnRsIGluIGluY2x1ZGVk aXIgYW5kIGxpYmRpcgpAQCAtNDg0OSw1NDggKzQ4NDcsNyBAQAogICBmaQog CiAKLSAgICAgIGlmIHRlc3QgIlgkcHJlZml4IiA9ICJYTk9ORSI7IHRoZW4K LSAgICBhY2xfZmluYWxfcHJlZml4PSIkYWNfZGVmYXVsdF9wcmVmaXgiCi0g IGVsc2UKLSAgICBhY2xfZmluYWxfcHJlZml4PSIkcHJlZml4IgotICBmaQot ICBpZiB0ZXN0ICJYJGV4ZWNfcHJlZml4IiA9ICJYTk9ORSI7IHRoZW4KLSAg ICBhY2xfZmluYWxfZXhlY19wcmVmaXg9JyR7cHJlZml4fScKLSAgZWxzZQot ICAgIGFjbF9maW5hbF9leGVjX3ByZWZpeD0iJGV4ZWNfcHJlZml4IgotICBm aQotICBhY2xfc2F2ZV9wcmVmaXg9IiRwcmVmaXgiCi0gIHByZWZpeD0iJGFj bF9maW5hbF9wcmVmaXgiCi0gIGV2YWwgYWNsX2ZpbmFsX2V4ZWNfcHJlZml4 PVwiJGFjbF9maW5hbF9leGVjX3ByZWZpeFwiCi0gIHByZWZpeD0iJGFjbF9z YXZlX3ByZWZpeCIKIAotCi0jIENoZWNrIHdoZXRoZXIgLS13aXRoLWdudS1s ZCB3YXMgZ2l2ZW4uCi1pZiB0ZXN0ICIke3dpdGhfZ251X2xkK3NldH0iID0g c2V0OyB0aGVuIDoKLSAgd2l0aHZhbD0kd2l0aF9nbnVfbGQ7IHRlc3QgIiR3 aXRodmFsIiA9IG5vIHx8IHdpdGhfZ251X2xkPXllcwotZWxzZQotICB3aXRo X2dudV9sZD1ubwotZmkKLQotIyBQcmVwYXJlIFBBVEhfU0VQQVJBVE9SLgot IyBUaGUgdXNlciBpcyBhbHdheXMgcmlnaHQuCi1pZiB0ZXN0ICIke1BBVEhf U0VQQVJBVE9SK3NldH0iICE9IHNldDsgdGhlbgotICBlY2hvICIjISAvYmlu L3NoIiA+Y29uZiQkLnNoCi0gIGVjaG8gICJleGl0IDAiICAgPj5jb25mJCQu c2gKLSAgY2htb2QgK3ggY29uZiQkLnNoCi0gIGlmIChQQVRIPSIvbm9uZXhp c3RlbnQ7LiI7IGNvbmYkJC5zaCkgPi9kZXYvbnVsbCAyPiYxOyB0aGVuCi0g ICAgUEFUSF9TRVBBUkFUT1I9JzsnCi0gIGVsc2UKLSAgICBQQVRIX1NFUEFS QVRPUj06Ci0gIGZpCi0gIHJtIC1mIGNvbmYkJC5zaAotZmkKLWFjX3Byb2c9 bGQKLWlmIHRlc3QgIiRHQ0MiID0geWVzOyB0aGVuCi0gICMgQ2hlY2sgaWYg Z2NjIC1wcmludC1wcm9nLW5hbWU9bGQgZ2l2ZXMgYSBwYXRoLgotICB7ICRh c19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5n IGZvciBsZCB1c2VkIGJ5IEdDQyIgPiY1Ci0kYXNfZWNob19uICJjaGVja2lu ZyBmb3IgbGQgdXNlZCBieSBHQ0MuLi4gIiA+JjY7IH0KLSAgY2FzZSAkaG9z dCBpbgotICAqLSotbWluZ3cqKQotICAgICMgZ2NjIGxlYXZlcyBhIHRyYWls aW5nIGNhcnJpYWdlIHJldHVybiB3aGljaCB1cHNldHMgbWluZ3cKLSAgICBh Y19wcm9nPWAoJENDIC1wcmludC1wcm9nLW5hbWU9bGQpIDI+JjUgfCB0ciAt ZCAnXDAxNSdgIDs7Ci0gICopCi0gICAgYWNfcHJvZz1gKCRDQyAtcHJpbnQt cHJvZy1uYW1lPWxkKSAyPiY1YCA7OwotICBlc2FjCi0gIGNhc2UgJGFjX3By b2cgaW4KLSAgICAjIEFjY2VwdCBhYnNvbHV0ZSBwYXRocy4KLSAgICBbXFwv XSogfCBbQS1aYS16XTpbXFwvXSopCi0gICAgICByZV9kaXJlbHQ9Jy9bXi9d W14vXSovXC5cLi8nCi0gICAgICAjIENhbm9uaWNhbGl6ZSB0aGUgcGF0aCBv ZiBsZAotICAgICAgYWNfcHJvZz1gZWNobyAkYWNfcHJvZ3wgc2VkICdzJVxc XFwlLyVnJ2AKLSAgICAgIHdoaWxlIGVjaG8gJGFjX3Byb2cgfCBncmVwICIk cmVfZGlyZWx0IiA+IC9kZXYvbnVsbCAyPiYxOyBkbwotCWFjX3Byb2c9YGVj aG8gJGFjX3Byb2d8IHNlZCAicyUkcmVfZGlyZWx0JS8lImAKLSAgICAgIGRv bmUKLSAgICAgIHRlc3QgLXogIiRMRCIgJiYgTEQ9IiRhY19wcm9nIgotICAg ICAgOzsKLSAgIiIpCi0gICAgIyBJZiBpdCBmYWlscywgdGhlbiBwcmV0ZW5k IHdlIGFyZW4ndCB1c2luZyBHQ0MuCi0gICAgYWNfcHJvZz1sZAotICAgIDs7 Ci0gICopCi0gICAgIyBJZiBpdCBpcyByZWxhdGl2ZSwgdGhlbiBzZWFyY2gg Zm9yIHRoZSBmaXJzdCBsZCBpbiBQQVRILgotICAgIHdpdGhfZ251X2xkPXVu a25vd24KLSAgICA7OwotICBlc2FjCi1lbGlmIHRlc3QgIiR3aXRoX2dudV9s ZCIgPSB5ZXM7IHRoZW4KLSAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGlu ZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgR05VIGxkIiA+JjUKLSRhc19l Y2hvX24gImNoZWNraW5nIGZvciBHTlUgbGQuLi4gIiA+JjY7IH0KLWVsc2UK LSAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBj aGVja2luZyBmb3Igbm9uLUdOVSBsZCIgPiY1Ci0kYXNfZWNob19uICJjaGVj a2luZyBmb3Igbm9uLUdOVSBsZC4uLiAiID4mNjsgfQotZmkKLWlmIHRlc3Qg IiR7YWNsX2N2X3BhdGhfTEQrc2V0fSIgPSBzZXQ7IHRoZW4gOgotICAkYXNf ZWNob19uICIoY2FjaGVkKSAiID4mNgotZWxzZQotICBpZiB0ZXN0IC16ICIk TEQiOyB0aGVuCi0gIElGUz0iJHtJRlM9IAl9IjsgYWNfc2F2ZV9pZnM9IiRJ RlMiOyBJRlM9IiR7SUZTfSR7UEFUSF9TRVBBUkFUT1ItOn0iCi0gIGZvciBh Y19kaXIgaW4gJFBBVEg7IGRvCi0gICAgdGVzdCAteiAiJGFjX2RpciIgJiYg YWNfZGlyPS4KLSAgICBpZiB0ZXN0IC1mICIkYWNfZGlyLyRhY19wcm9nIiB8 fCB0ZXN0IC1mICIkYWNfZGlyLyRhY19wcm9nJGFjX2V4ZWV4dCI7IHRoZW4K LSAgICAgIGFjbF9jdl9wYXRoX0xEPSIkYWNfZGlyLyRhY19wcm9nIgotICAg ICAgIyBDaGVjayB0byBzZWUgaWYgdGhlIHByb2dyYW0gaXMgR05VIGxkLiAg SSdkIHJhdGhlciB1c2UgLS12ZXJzaW9uLAotICAgICAgIyBidXQgYXBwYXJl bnRseSBzb21lIEdOVSBsZCdzIG9ubHkgYWNjZXB0IC12LgotICAgICAgIyBC cmVhayBvbmx5IGlmIGl0IHdhcyB0aGUgR05VL25vbi1HTlUgbGQgdGhhdCB3 ZSBwcmVmZXIuCi0gICAgICBpZiAiJGFjbF9jdl9wYXRoX0xEIiAtdiAyPiYx IDwgL2Rldi9udWxsIHwgZWdyZXAgJyhHTlV8d2l0aCBCRkQpJyA+IC9kZXYv bnVsbDsgdGhlbgotCXRlc3QgIiR3aXRoX2dudV9sZCIgIT0gbm8gJiYgYnJl YWsKLSAgICAgIGVsc2UKLQl0ZXN0ICIkd2l0aF9nbnVfbGQiICE9IHllcyAm JiBicmVhawotICAgICAgZmkKLSAgICBmaQotICBkb25lCi0gIElGUz0iJGFj X3NhdmVfaWZzIgotZWxzZQotICBhY2xfY3ZfcGF0aF9MRD0iJExEIiAjIExl dCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdCB3aXRoIGEgcGF0aC4KLWZp Ci1maQotCi1MRD0iJGFjbF9jdl9wYXRoX0xEIgotaWYgdGVzdCAtbiAiJExE IjsgdGhlbgotICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJ TkVOT306IHJlc3VsdDogJExEIiA+JjUKLSRhc19lY2hvICIkTEQiID4mNjsg fQotZWxzZQotICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJ TkVOT306IHJlc3VsdDogbm8iID4mNQotJGFzX2VjaG8gIm5vIiA+JjY7IH0K LWZpCi10ZXN0IC16ICIkTEQiICYmIGFzX2ZuX2Vycm9yICJubyBhY2NlcHRh YmxlIGxkIGZvdW5kIGluIFwkUEFUSCIgIiRMSU5FTk8iIDUKLXsgJGFzX2Vj aG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgaWYg dGhlIGxpbmtlciAoJExEKSBpcyBHTlUgbGQiID4mNQotJGFzX2VjaG9fbiAi Y2hlY2tpbmcgaWYgdGhlIGxpbmtlciAoJExEKSBpcyBHTlUgbGQuLi4gIiA+ JjY7IH0KLWlmIHRlc3QgIiR7YWNsX2N2X3Byb2dfZ251X2xkK3NldH0iID0g c2V0OyB0aGVuIDoKLSAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKLWVs c2UKLSAgIyBJJ2QgcmF0aGVyIHVzZSAtLXZlcnNpb24gaGVyZSwgYnV0IGFw cGFyZW50bHkgc29tZSBHTlUgbGQncyBvbmx5IGFjY2VwdCAtdi4KLWlmICRM RCAtdiAyPiYxIDwvZGV2L251bGwgfCBlZ3JlcCAnKEdOVXx3aXRoIEJGRCkn IDE+JjU7IHRoZW4KLSAgYWNsX2N2X3Byb2dfZ251X2xkPXllcwotZWxzZQot ICBhY2xfY3ZfcHJvZ19nbnVfbGQ9bm8KLWZpCi1maQoteyAkYXNfZWNobyAi JGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY2xfY3Zf cHJvZ19nbnVfbGQiID4mNQotJGFzX2VjaG8gIiRhY2xfY3ZfcHJvZ19nbnVf bGQiID4mNjsgfQotd2l0aF9nbnVfbGQ9JGFjbF9jdl9wcm9nX2dudV9sZAot Ci0KLQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5F Tk99OiBjaGVja2luZyBmb3Igc2hhcmVkIGxpYnJhcnkgcnVuIHBhdGggb3Jp Z2luIiA+JjUKLSRhc19lY2hvX24gImNoZWNraW5nIGZvciBzaGFyZWQgbGli cmFyeSBydW4gcGF0aCBvcmlnaW4uLi4gIiA+JjY7IH0KLWlmIHRlc3QgIiR7 YWNsX2N2X3JwYXRoK3NldH0iID0gc2V0OyB0aGVuIDoKLSAgJGFzX2VjaG9f biAiKGNhY2hlZCkgIiA+JjYKLWVsc2UKLQotICAgIENDPSIkQ0MiIEdDQz0i JEdDQyIgTERGTEFHUz0iJExERkxBR1MiIExEPSIkTEQiIHdpdGhfZ251X2xk PSIkd2l0aF9nbnVfbGQiIFwKLSAgICAke0NPTkZJR19TSEVMTC0vYmluL3No fSAiJGFjX2F1eF9kaXIvY29uZmlnLnJwYXRoIiAiJGhvc3QiID4gY29uZnRl c3Quc2gKLSAgICAuIC4vY29uZnRlc3Quc2gKLSAgICBybSAtZiAuL2NvbmZ0 ZXN0LnNoCi0gICAgYWNsX2N2X3JwYXRoPWRvbmUKLQotZmkKLXsgJGFzX2Vj aG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNs X2N2X3JwYXRoIiA+JjUKLSRhc19lY2hvICIkYWNsX2N2X3JwYXRoIiA+JjY7 IH0KLSAgd2w9IiRhY2xfY3Zfd2wiCi0gIGxpYmV4dD0iJGFjbF9jdl9saWJl eHQiCi0gIHNobGliZXh0PSIkYWNsX2N2X3NobGliZXh0IgotICBoYXJkY29k ZV9saWJkaXJfZmxhZ19zcGVjPSIkYWNsX2N2X2hhcmRjb2RlX2xpYmRpcl9m bGFnX3NwZWMiCi0gIGhhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3I9IiRhY2xf Y3ZfaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvciIKLSAgaGFyZGNvZGVfZGly ZWN0PSIkYWNsX2N2X2hhcmRjb2RlX2RpcmVjdCIKLSAgaGFyZGNvZGVfbWlu dXNfTD0iJGFjbF9jdl9oYXJkY29kZV9taW51c19MIgotICAgICMgQ2hlY2sg d2hldGhlciAtLWVuYWJsZS1ycGF0aCB3YXMgZ2l2ZW4uCi1pZiB0ZXN0ICIk e2VuYWJsZV9ycGF0aCtzZXR9IiA9IHNldDsgdGhlbiA6Ci0gIGVuYWJsZXZh bD0kZW5hYmxlX3JwYXRoOyA6Ci1lbHNlCi0gIGVuYWJsZV9ycGF0aD15ZXMK LWZpCi0KLQotCi0KLQotCi0KLQotICAgIHVzZV9hZGRpdGlvbmFsPXllcwot Ci0gIGFjbF9zYXZlX3ByZWZpeD0iJHByZWZpeCIKLSAgcHJlZml4PSIkYWNs X2ZpbmFsX3ByZWZpeCIKLSAgYWNsX3NhdmVfZXhlY19wcmVmaXg9IiRleGVj X3ByZWZpeCIKLSAgZXhlY19wcmVmaXg9IiRhY2xfZmluYWxfZXhlY19wcmVm aXgiCi0KLSAgICBldmFsIGFkZGl0aW9uYWxfaW5jbHVkZWRpcj1cIiRpbmNs dWRlZGlyXCIKLSAgICBldmFsIGFkZGl0aW9uYWxfbGliZGlyPVwiJGxpYmRp clwiCi0KLSAgZXhlY19wcmVmaXg9IiRhY2xfc2F2ZV9leGVjX3ByZWZpeCIK LSAgcHJlZml4PSIkYWNsX3NhdmVfcHJlZml4IgotCi0KLSMgQ2hlY2sgd2hl dGhlciAtLXdpdGgtbGliaWNvbnYtcHJlZml4IHdhcyBnaXZlbi4KLWlmIHRl c3QgIiR7d2l0aF9saWJpY29udl9wcmVmaXgrc2V0fSIgPSBzZXQ7IHRoZW4g OgotICB3aXRodmFsPSR3aXRoX2xpYmljb252X3ByZWZpeDsKLSAgICBpZiB0 ZXN0ICJYJHdpdGh2YWwiID0gIlhubyI7IHRoZW4KLSAgICAgIHVzZV9hZGRp dGlvbmFsPW5vCi0gICAgZWxzZQotICAgICAgaWYgdGVzdCAiWCR3aXRodmFs IiA9ICJYIjsgdGhlbgotCi0gIGFjbF9zYXZlX3ByZWZpeD0iJHByZWZpeCIK LSAgcHJlZml4PSIkYWNsX2ZpbmFsX3ByZWZpeCIKLSAgYWNsX3NhdmVfZXhl Y19wcmVmaXg9IiRleGVjX3ByZWZpeCIKLSAgZXhlY19wcmVmaXg9IiRhY2xf ZmluYWxfZXhlY19wcmVmaXgiCi0KLSAgICAgICAgICBldmFsIGFkZGl0aW9u YWxfaW5jbHVkZWRpcj1cIiRpbmNsdWRlZGlyXCIKLSAgICAgICAgICBldmFs IGFkZGl0aW9uYWxfbGliZGlyPVwiJGxpYmRpclwiCi0KLSAgZXhlY19wcmVm aXg9IiRhY2xfc2F2ZV9leGVjX3ByZWZpeCIKLSAgcHJlZml4PSIkYWNsX3Nh dmVfcHJlZml4IgotCi0gICAgICBlbHNlCi0gICAgICAgIGFkZGl0aW9uYWxf aW5jbHVkZWRpcj0iJHdpdGh2YWwvaW5jbHVkZSIKLSAgICAgICAgYWRkaXRp b25hbF9saWJkaXI9IiR3aXRodmFsL2xpYiIKLSAgICAgIGZpCi0gICAgZmkK LQotZmkKLQotICAgICAgTElCSUNPTlY9Ci0gIExUTElCSUNPTlY9Ci0gIElO Q0lDT05WPQotICBycGF0aGRpcnM9Ci0gIGx0cnBhdGhkaXJzPQotICBuYW1l c19hbHJlYWR5X2hhbmRsZWQ9Ci0gIG5hbWVzX25leHRfcm91bmQ9J2ljb252 ICcKLSAgd2hpbGUgdGVzdCAtbiAiJG5hbWVzX25leHRfcm91bmQiOyBkbwot ICAgIG5hbWVzX3RoaXNfcm91bmQ9IiRuYW1lc19uZXh0X3JvdW5kIgotICAg IG5hbWVzX25leHRfcm91bmQ9Ci0gICAgZm9yIG5hbWUgaW4gJG5hbWVzX3Ro aXNfcm91bmQ7IGRvCi0gICAgICBhbHJlYWR5X2hhbmRsZWQ9Ci0gICAgICBm b3IgbiBpbiAkbmFtZXNfYWxyZWFkeV9oYW5kbGVkOyBkbwotICAgICAgICBp ZiB0ZXN0ICIkbiIgPSAiJG5hbWUiOyB0aGVuCi0gICAgICAgICAgYWxyZWFk eV9oYW5kbGVkPXllcwotICAgICAgICAgIGJyZWFrCi0gICAgICAgIGZpCi0g ICAgICBkb25lCi0gICAgICBpZiB0ZXN0IC16ICIkYWxyZWFkeV9oYW5kbGVk IjsgdGhlbgotICAgICAgICBuYW1lc19hbHJlYWR5X2hhbmRsZWQ9IiRuYW1l c19hbHJlYWR5X2hhbmRsZWQgJG5hbWUiCi0gICAgICAgICAgICAgICAgICAg ICAgICB1cHBlcm5hbWU9YGVjaG8gIiRuYW1lIiB8IHNlZCAtZSAneXxhYmNk ZWZnaGlqa2xtbm9wcXJzdHV2d3h5ei4vLXxBQkNERUZHSElKS0xNTk9QUVJT VFVWV1hZWl9fX3wnYAotICAgICAgICBldmFsIHZhbHVlPVwiXCRIQVZFX0xJ QiR1cHBlcm5hbWVcIgotICAgICAgICBpZiB0ZXN0IC1uICIkdmFsdWUiOyB0 aGVuCi0gICAgICAgICAgaWYgdGVzdCAiJHZhbHVlIiA9IHllczsgdGhlbgot ICAgICAgICAgICAgZXZhbCB2YWx1ZT1cIlwkTElCJHVwcGVybmFtZVwiCi0g ICAgICAgICAgICB0ZXN0IC16ICIkdmFsdWUiIHx8IExJQklDT05WPSIke0xJ QklDT05WfSR7TElCSUNPTlY6KyB9JHZhbHVlIgotICAgICAgICAgICAgZXZh bCB2YWx1ZT1cIlwkTFRMSUIkdXBwZXJuYW1lXCIKLSAgICAgICAgICAgIHRl c3QgLXogIiR2YWx1ZSIgfHwgTFRMSUJJQ09OVj0iJHtMVExJQklDT05WfSR7 TFRMSUJJQ09OVjorIH0kdmFsdWUiCi0gICAgICAgICAgZWxzZQotICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOgotICAgICAgICAgIGZp Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGZvdW5kX2Rpcj0KLSAgICAgICAgICBmb3VuZF9sYT0KLSAgICAgICAgICBm b3VuZF9zbz0KLSAgICAgICAgICBmb3VuZF9hPQotICAgICAgICAgIGlmIHRl c3QgJHVzZV9hZGRpdGlvbmFsID0geWVzOyB0aGVuCi0gICAgICAgICAgICBp ZiB0ZXN0IC1uICIkc2hsaWJleHQiICYmIHRlc3QgLWYgIiRhZGRpdGlvbmFs X2xpYmRpci9saWIkbmFtZS4kc2hsaWJleHQiOyB0aGVuCi0gICAgICAgICAg ICAgIGZvdW5kX2Rpcj0iJGFkZGl0aW9uYWxfbGliZGlyIgotICAgICAgICAg ICAgICBmb3VuZF9zbz0iJGFkZGl0aW9uYWxfbGliZGlyL2xpYiRuYW1lLiRz aGxpYmV4dCIKLSAgICAgICAgICAgICAgaWYgdGVzdCAtZiAiJGFkZGl0aW9u YWxfbGliZGlyL2xpYiRuYW1lLmxhIjsgdGhlbgotICAgICAgICAgICAgICAg IGZvdW5kX2xhPSIkYWRkaXRpb25hbF9saWJkaXIvbGliJG5hbWUubGEiCi0g ICAgICAgICAgICAgIGZpCi0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAg ICAgIGlmIHRlc3QgLWYgIiRhZGRpdGlvbmFsX2xpYmRpci9saWIkbmFtZS4k bGliZXh0IjsgdGhlbgotICAgICAgICAgICAgICAgIGZvdW5kX2Rpcj0iJGFk ZGl0aW9uYWxfbGliZGlyIgotICAgICAgICAgICAgICAgIGZvdW5kX2E9IiRh ZGRpdGlvbmFsX2xpYmRpci9saWIkbmFtZS4kbGliZXh0IgotICAgICAgICAg ICAgICAgIGlmIHRlc3QgLWYgIiRhZGRpdGlvbmFsX2xpYmRpci9saWIkbmFt ZS5sYSI7IHRoZW4KLSAgICAgICAgICAgICAgICAgIGZvdW5kX2xhPSIkYWRk aXRpb25hbF9saWJkaXIvbGliJG5hbWUubGEiCi0gICAgICAgICAgICAgICAg ZmkKLSAgICAgICAgICAgICAgZmkKLSAgICAgICAgICAgIGZpCi0gICAgICAg ICAgZmkKLSAgICAgICAgICBpZiB0ZXN0ICJYJGZvdW5kX2RpciIgPSAiWCI7 IHRoZW4KLSAgICAgICAgICAgIGZvciB4IGluICRMREZMQUdTICRMVExJQklD T05WOyBkbwotCi0gIGFjbF9zYXZlX3ByZWZpeD0iJHByZWZpeCIKLSAgcHJl Zml4PSIkYWNsX2ZpbmFsX3ByZWZpeCIKLSAgYWNsX3NhdmVfZXhlY19wcmVm aXg9IiRleGVjX3ByZWZpeCIKLSAgZXhlY19wcmVmaXg9IiRhY2xfZmluYWxf ZXhlY19wcmVmaXgiCi0gIGV2YWwgeD1cIiR4XCIKLSAgZXhlY19wcmVmaXg9 IiRhY2xfc2F2ZV9leGVjX3ByZWZpeCIKLSAgcHJlZml4PSIkYWNsX3NhdmVf cHJlZml4IgotCi0gICAgICAgICAgICAgIGNhc2UgIiR4IiBpbgotICAgICAg ICAgICAgICAgIC1MKikKLSAgICAgICAgICAgICAgICAgIGRpcj1gZWNobyAi WCR4IiB8IHNlZCAtZSAncy9eWC1MLy8nYAotICAgICAgICAgICAgICAgICAg aWYgdGVzdCAtbiAiJHNobGliZXh0IiAmJiB0ZXN0IC1mICIkZGlyL2xpYiRu YW1lLiRzaGxpYmV4dCI7IHRoZW4KLSAgICAgICAgICAgICAgICAgICAgZm91 bmRfZGlyPSIkZGlyIgotICAgICAgICAgICAgICAgICAgICBmb3VuZF9zbz0i JGRpci9saWIkbmFtZS4kc2hsaWJleHQiCi0gICAgICAgICAgICAgICAgICAg IGlmIHRlc3QgLWYgIiRkaXIvbGliJG5hbWUubGEiOyB0aGVuCi0gICAgICAg ICAgICAgICAgICAgICAgZm91bmRfbGE9IiRkaXIvbGliJG5hbWUubGEiCi0g ICAgICAgICAgICAgICAgICAgIGZpCi0gICAgICAgICAgICAgICAgICBlbHNl Ci0gICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLWYgIiRkaXIvbGliJG5h bWUuJGxpYmV4dCI7IHRoZW4KLSAgICAgICAgICAgICAgICAgICAgICBmb3Vu ZF9kaXI9IiRkaXIiCi0gICAgICAgICAgICAgICAgICAgICAgZm91bmRfYT0i JGRpci9saWIkbmFtZS4kbGliZXh0IgotICAgICAgICAgICAgICAgICAgICAg IGlmIHRlc3QgLWYgIiRkaXIvbGliJG5hbWUubGEiOyB0aGVuCi0gICAgICAg ICAgICAgICAgICAgICAgICBmb3VuZF9sYT0iJGRpci9saWIkbmFtZS5sYSIK LSAgICAgICAgICAgICAgICAgICAgICBmaQotICAgICAgICAgICAgICAgICAg ICBmaQotICAgICAgICAgICAgICAgICAgZmkKLSAgICAgICAgICAgICAgICAg IDs7Ci0gICAgICAgICAgICAgIGVzYWMKLSAgICAgICAgICAgICAgaWYgdGVz dCAiWCRmb3VuZF9kaXIiICE9ICJYIjsgdGhlbgotICAgICAgICAgICAgICAg IGJyZWFrCi0gICAgICAgICAgICAgIGZpCi0gICAgICAgICAgICBkb25lCi0g ICAgICAgICAgZmkKLSAgICAgICAgICBpZiB0ZXN0ICJYJGZvdW5kX2RpciIg IT0gIlgiOyB0aGVuCi0gICAgICAgICAgICAgICAgICAgICAgICBMVExJQklD T05WPSIke0xUTElCSUNPTlZ9JHtMVExJQklDT05WOisgfS1MJGZvdW5kX2Rp ciAtbCRuYW1lIgotICAgICAgICAgICAgaWYgdGVzdCAiWCRmb3VuZF9zbyIg IT0gIlgiOyB0aGVuCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgIiRlbmFibGVfcnBh dGgiID0gbm8gfHwgdGVzdCAiWCRmb3VuZF9kaXIiID0gIlgvdXNyL2xpYiI7 IHRoZW4KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTElCSUNP TlY9IiR7TElCSUNPTlZ9JHtMSUJJQ09OVjorIH0kZm91bmRfc28iCi0gICAg ICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgaGF2ZWl0PQotICAgICAgICAgICAgICAgIGZvciB4IGluICRsdHJw YXRoZGlyczsgZG8KLSAgICAgICAgICAgICAgICAgIGlmIHRlc3QgIlgkeCIg PSAiWCRmb3VuZF9kaXIiOyB0aGVuCi0gICAgICAgICAgICAgICAgICAgIGhh dmVpdD15ZXMKLSAgICAgICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAg ICAgICAgICAgIGZpCi0gICAgICAgICAgICAgICAgZG9uZQotICAgICAgICAg ICAgICAgIGlmIHRlc3QgLXogIiRoYXZlaXQiOyB0aGVuCi0gICAgICAgICAg ICAgICAgICBsdHJwYXRoZGlycz0iJGx0cnBhdGhkaXJzICRmb3VuZF9kaXIi Ci0gICAgICAgICAgICAgICAgZmkKLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgaWYgdGVzdCAiJGhhcmRjb2RlX2RpcmVjdCIgPSB5ZXM7IHRo ZW4KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIExJQklDT05WPSIke0xJQklDT05WfSR7TElCSUNPTlY6 KyB9JGZvdW5kX3NvIgotICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAg ICAgICAgICAgIGlmIHRlc3QgLW4gIiRoYXJkY29kZV9saWJkaXJfZmxhZ19z cGVjIiAmJiB0ZXN0ICIkaGFyZGNvZGVfbWludXNfTCIgPSBubzsgdGhlbgot ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgTElCSUNPTlY9IiR7TElCSUNPTlZ9JHtMSUJJQ09O VjorIH0kZm91bmRfc28iCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXZlaXQ9Ci0gICAg ICAgICAgICAgICAgICAgIGZvciB4IGluICRycGF0aGRpcnM7IGRvCi0gICAg ICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiWCR4IiA9ICJYJGZvdW5kX2Rp ciI7IHRoZW4KLSAgICAgICAgICAgICAgICAgICAgICAgIGhhdmVpdD15ZXMK LSAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCi0gICAgICAgICAgICAg ICAgICAgICAgZmkKLSAgICAgICAgICAgICAgICAgICAgZG9uZQotICAgICAg ICAgICAgICAgICAgICBpZiB0ZXN0IC16ICIkaGF2ZWl0IjsgdGhlbgotICAg ICAgICAgICAgICAgICAgICAgIHJwYXRoZGlycz0iJHJwYXRoZGlycyAkZm91 bmRfZGlyIgotICAgICAgICAgICAgICAgICAgICBmaQotICAgICAgICAgICAg ICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBoYXZlaXQ9Ci0gICAgICAgICAgICAgICAgICAgIGZvciB4IGluICRMREZM QUdTICRMSUJJQ09OVjsgZG8KLQotICBhY2xfc2F2ZV9wcmVmaXg9IiRwcmVm aXgiCi0gIHByZWZpeD0iJGFjbF9maW5hbF9wcmVmaXgiCi0gIGFjbF9zYXZl X2V4ZWNfcHJlZml4PSIkZXhlY19wcmVmaXgiCi0gIGV4ZWNfcHJlZml4PSIk YWNsX2ZpbmFsX2V4ZWNfcHJlZml4IgotICBldmFsIHg9XCIkeFwiCi0gIGV4 ZWNfcHJlZml4PSIkYWNsX3NhdmVfZXhlY19wcmVmaXgiCi0gIHByZWZpeD0i JGFjbF9zYXZlX3ByZWZpeCIKLQotICAgICAgICAgICAgICAgICAgICAgIGlm IHRlc3QgIlgkeCIgPSAiWC1MJGZvdW5kX2RpciI7IHRoZW4KLSAgICAgICAg ICAgICAgICAgICAgICAgIGhhdmVpdD15ZXMKLSAgICAgICAgICAgICAgICAg ICAgICAgIGJyZWFrCi0gICAgICAgICAgICAgICAgICAgICAgZmkKLSAgICAg ICAgICAgICAgICAgICAgZG9uZQotICAgICAgICAgICAgICAgICAgICBpZiB0 ZXN0IC16ICIkaGF2ZWl0IjsgdGhlbgotICAgICAgICAgICAgICAgICAgICAg IExJQklDT05WPSIke0xJQklDT05WfSR7TElCSUNPTlY6KyB9LUwkZm91bmRf ZGlyIgotICAgICAgICAgICAgICAgICAgICBmaQotICAgICAgICAgICAgICAg ICAgICBpZiB0ZXN0ICIkaGFyZGNvZGVfbWludXNfTCIgIT0gbm87IHRoZW4K LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBM SUJJQ09OVj0iJHtMSUJJQ09OVn0ke0xJQklDT05WOisgfSRmb3VuZF9zbyIK LSAgICAgICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBMSUJJQ09OVj0iJHtMSUJJQ09OVn0k e0xJQklDT05WOisgfS1sJG5hbWUiCi0gICAgICAgICAgICAgICAgICAgIGZp Ci0gICAgICAgICAgICAgICAgICBmaQotICAgICAgICAgICAgICAgIGZpCi0g ICAgICAgICAgICAgIGZpCi0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAg ICAgIGlmIHRlc3QgIlgkZm91bmRfYSIgIT0gIlgiOyB0aGVuCi0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIExJQklDT05WPSIke0xJQklDT05W fSR7TElCSUNPTlY6KyB9JGZvdW5kX2EiCi0gICAgICAgICAgICAgIGVsc2UK LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIExJQklDT05WPSIke0xJQklDT05WfSR7TElCSUNPTlY6KyB9LUwkZm91 bmRfZGlyIC1sJG5hbWUiCi0gICAgICAgICAgICAgIGZpCi0gICAgICAgICAg ICBmaQotICAgICAgICAgICAgICAgICAgICAgICAgYWRkaXRpb25hbF9pbmNs dWRlZGlyPQotICAgICAgICAgICAgY2FzZSAiJGZvdW5kX2RpciIgaW4KLSAg ICAgICAgICAgICAgKi9saWIgfCAqL2xpYi8pCi0gICAgICAgICAgICAgICAg YmFzZWRpcj1gZWNobyAiWCRmb3VuZF9kaXIiIHwgc2VkIC1lICdzLF5YLCwn IC1lICdzLC9saWIvKiQsLCdgCi0gICAgICAgICAgICAgICAgYWRkaXRpb25h bF9pbmNsdWRlZGlyPSIkYmFzZWRpci9pbmNsdWRlIgotICAgICAgICAgICAg ICAgIDs7Ci0gICAgICAgICAgICBlc2FjCi0gICAgICAgICAgICBpZiB0ZXN0 ICJYJGFkZGl0aW9uYWxfaW5jbHVkZWRpciIgIT0gIlgiOyB0aGVuCi0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiWCRhZGRpdGlvbmFsX2luY2x1 ZGVkaXIiICE9ICJYL3Vzci9pbmNsdWRlIjsgdGhlbgotICAgICAgICAgICAg ICAgIGhhdmVpdD0KLSAgICAgICAgICAgICAgICBpZiB0ZXN0ICJYJGFkZGl0 aW9uYWxfaW5jbHVkZWRpciIgPSAiWC91c3IvbG9jYWwvaW5jbHVkZSI7IHRo ZW4KLSAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLW4gIiRHQ0MiOyB0aGVu Ci0gICAgICAgICAgICAgICAgICAgIGNhc2UgJGhvc3Rfb3MgaW4KLSAgICAg ICAgICAgICAgICAgICAgICBsaW51eCopIGhhdmVpdD15ZXM7OwotICAgICAg ICAgICAgICAgICAgICBlc2FjCi0gICAgICAgICAgICAgICAgICBmaQotICAg ICAgICAgICAgICAgIGZpCi0gICAgICAgICAgICAgICAgaWYgdGVzdCAteiAi JGhhdmVpdCI7IHRoZW4KLSAgICAgICAgICAgICAgICAgIGZvciB4IGluICRD UFBGTEFHUyAkSU5DSUNPTlY7IGRvCi0KLSAgYWNsX3NhdmVfcHJlZml4PSIk cHJlZml4IgotICBwcmVmaXg9IiRhY2xfZmluYWxfcHJlZml4IgotICBhY2xf c2F2ZV9leGVjX3ByZWZpeD0iJGV4ZWNfcHJlZml4IgotICBleGVjX3ByZWZp eD0iJGFjbF9maW5hbF9leGVjX3ByZWZpeCIKLSAgZXZhbCB4PVwiJHhcIgot ICBleGVjX3ByZWZpeD0iJGFjbF9zYXZlX2V4ZWNfcHJlZml4IgotICBwcmVm aXg9IiRhY2xfc2F2ZV9wcmVmaXgiCi0KLSAgICAgICAgICAgICAgICAgICAg aWYgdGVzdCAiWCR4IiA9ICJYLUkkYWRkaXRpb25hbF9pbmNsdWRlZGlyIjsg dGhlbgotICAgICAgICAgICAgICAgICAgICAgIGhhdmVpdD15ZXMKLSAgICAg ICAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgICAgICAgICBm aQotICAgICAgICAgICAgICAgICAgZG9uZQotICAgICAgICAgICAgICAgICAg aWYgdGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KLSAgICAgICAgICAgICAgICAg ICAgaWYgdGVzdCAtZCAiJGFkZGl0aW9uYWxfaW5jbHVkZWRpciI7IHRoZW4K LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg SU5DSUNPTlY9IiR7SU5DSUNPTlZ9JHtJTkNJQ09OVjorIH0tSSRhZGRpdGlv bmFsX2luY2x1ZGVkaXIiCi0gICAgICAgICAgICAgICAgICAgIGZpCi0gICAg ICAgICAgICAgICAgICBmaQotICAgICAgICAgICAgICAgIGZpCi0gICAgICAg ICAgICAgIGZpCi0gICAgICAgICAgICBmaQotICAgICAgICAgICAgICAgICAg ICAgICAgaWYgdGVzdCAtbiAiJGZvdW5kX2xhIjsgdGhlbgotICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBzYXZlX2xpYmRpcj0iJGxpYmRpciIKLSAgICAgICAgICAgICAgY2FzZSAi JGZvdW5kX2xhIiBpbgotICAgICAgICAgICAgICAgICovKiB8ICpcXCopIC4g IiRmb3VuZF9sYSIgOzsKLSAgICAgICAgICAgICAgICAqKSAuICIuLyRmb3Vu ZF9sYSIgOzsKLSAgICAgICAgICAgICAgZXNhYwotICAgICAgICAgICAgICBs aWJkaXI9IiRzYXZlX2xpYmRpciIKLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICBmb3IgZGVwIGluICRkZXBlbmRlbmN5X2xpYnM7IGRvCi0gICAgICAg ICAgICAgICAgY2FzZSAiJGRlcCIgaW4KLSAgICAgICAgICAgICAgICAgIC1M KikKLSAgICAgICAgICAgICAgICAgICAgYWRkaXRpb25hbF9saWJkaXI9YGVj aG8gIlgkZGVwIiB8IHNlZCAtZSAncy9eWC1MLy8nYAotICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGlmIHRlc3QgIlgkYWRkaXRpb25hbF9saWJkaXIiICE9 ICJYL3Vzci9saWIiOyB0aGVuCi0gICAgICAgICAgICAgICAgICAgICAgaGF2 ZWl0PQotICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgIlgkYWRkaXRp b25hbF9saWJkaXIiID0gIlgvdXNyL2xvY2FsL2xpYiI7IHRoZW4KLSAgICAg ICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLW4gIiRHQ0MiOyB0aGVuCi0g ICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJGhvc3Rfb3MgaW4KLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICBsaW51eCopIGhhdmVpdD15ZXM7 OwotICAgICAgICAgICAgICAgICAgICAgICAgICBlc2FjCi0gICAgICAgICAg ICAgICAgICAgICAgICBmaQotICAgICAgICAgICAgICAgICAgICAgIGZpCi0g ICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRo ZW4KLSAgICAgICAgICAgICAgICAgICAgICAgIGhhdmVpdD0KLSAgICAgICAg ICAgICAgICAgICAgICAgIGZvciB4IGluICRMREZMQUdTICRMSUJJQ09OVjsg ZG8KLQotICBhY2xfc2F2ZV9wcmVmaXg9IiRwcmVmaXgiCi0gIHByZWZpeD0i JGFjbF9maW5hbF9wcmVmaXgiCi0gIGFjbF9zYXZlX2V4ZWNfcHJlZml4PSIk ZXhlY19wcmVmaXgiCi0gIGV4ZWNfcHJlZml4PSIkYWNsX2ZpbmFsX2V4ZWNf cHJlZml4IgotICBldmFsIHg9XCIkeFwiCi0gIGV4ZWNfcHJlZml4PSIkYWNs X3NhdmVfZXhlY19wcmVmaXgiCi0gIHByZWZpeD0iJGFjbF9zYXZlX3ByZWZp eCIKLQotICAgICAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0ICJYJHgi ID0gIlgtTCRhZGRpdGlvbmFsX2xpYmRpciI7IHRoZW4KLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICBoYXZlaXQ9eWVzCi0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgICAgICAgICAgICAgICAgICAg ZmkKLSAgICAgICAgICAgICAgICAgICAgICAgIGRvbmUKLSAgICAgICAgICAg ICAgICAgICAgICAgIGlmIHRlc3QgLXogIiRoYXZlaXQiOyB0aGVuCi0gICAg ICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLWQgIiRhZGRpdGlvbmFs X2xpYmRpciI7IHRoZW4KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgTElCSUNPTlY9IiR7TElCSUNP TlZ9JHtMSUJJQ09OVjorIH0tTCRhZGRpdGlvbmFsX2xpYmRpciIKLSAgICAg ICAgICAgICAgICAgICAgICAgICAgZmkKLSAgICAgICAgICAgICAgICAgICAg ICAgIGZpCi0gICAgICAgICAgICAgICAgICAgICAgICBoYXZlaXQ9Ci0gICAg ICAgICAgICAgICAgICAgICAgICBmb3IgeCBpbiAkTERGTEFHUyAkTFRMSUJJ Q09OVjsgZG8KLQotICBhY2xfc2F2ZV9wcmVmaXg9IiRwcmVmaXgiCi0gIHBy ZWZpeD0iJGFjbF9maW5hbF9wcmVmaXgiCi0gIGFjbF9zYXZlX2V4ZWNfcHJl Zml4PSIkZXhlY19wcmVmaXgiCi0gIGV4ZWNfcHJlZml4PSIkYWNsX2ZpbmFs X2V4ZWNfcHJlZml4IgotICBldmFsIHg9XCIkeFwiCi0gIGV4ZWNfcHJlZml4 PSIkYWNsX3NhdmVfZXhlY19wcmVmaXgiCi0gIHByZWZpeD0iJGFjbF9zYXZl X3ByZWZpeCIKLQotICAgICAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0 ICJYJHgiID0gIlgtTCRhZGRpdGlvbmFsX2xpYmRpciI7IHRoZW4KLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICBoYXZlaXQ9eWVzCi0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgICAgICAgICAgICAg ICAgICAgZmkKLSAgICAgICAgICAgICAgICAgICAgICAgIGRvbmUKLSAgICAg ICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLXogIiRoYXZlaXQiOyB0aGVu Ci0gICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLWQgIiRhZGRp dGlvbmFsX2xpYmRpciI7IHRoZW4KLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTFRMSUJJQ09OVj0i JHtMVExJQklDT05WfSR7TFRMSUJJQ09OVjorIH0tTCRhZGRpdGlvbmFsX2xp YmRpciIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgZmkKLSAgICAgICAg ICAgICAgICAgICAgICAgIGZpCi0gICAgICAgICAgICAgICAgICAgICAgZmkK LSAgICAgICAgICAgICAgICAgICAgZmkKLSAgICAgICAgICAgICAgICAgICAg OzsKLSAgICAgICAgICAgICAgICAgIC1SKikKLSAgICAgICAgICAgICAgICAg ICAgZGlyPWBlY2hvICJYJGRlcCIgfCBzZWQgLWUgJ3MvXlgtUi8vJ2AKLSAg ICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiJGVuYWJsZV9ycGF0aCIgIT0g bm87IHRoZW4KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhdmVpdD0KLSAgICAg ICAgICAgICAgICAgICAgICBmb3IgeCBpbiAkcnBhdGhkaXJzOyBkbwotICAg ICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiWCR4IiA9ICJYJGRpciI7 IHRoZW4KLSAgICAgICAgICAgICAgICAgICAgICAgICAgaGF2ZWl0PXllcwot ICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAg ICAgICAgICAgICAgZmkKLSAgICAgICAgICAgICAgICAgICAgICBkb25lCi0g ICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRo ZW4KLSAgICAgICAgICAgICAgICAgICAgICAgIHJwYXRoZGlycz0iJHJwYXRo ZGlycyAkZGlyIgotICAgICAgICAgICAgICAgICAgICAgIGZpCi0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBoYXZlaXQ9Ci0gICAgICAgICAgICAgICAgICAgICAg Zm9yIHggaW4gJGx0cnBhdGhkaXJzOyBkbwotICAgICAgICAgICAgICAgICAg ICAgICAgaWYgdGVzdCAiWCR4IiA9ICJYJGRpciI7IHRoZW4KLSAgICAgICAg ICAgICAgICAgICAgICAgICAgaGF2ZWl0PXllcwotICAgICAgICAgICAgICAg ICAgICAgICAgICBicmVhawotICAgICAgICAgICAgICAgICAgICAgICAgZmkK LSAgICAgICAgICAgICAgICAgICAgICBkb25lCi0gICAgICAgICAgICAgICAg ICAgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KLSAgICAgICAgICAg ICAgICAgICAgICAgIGx0cnBhdGhkaXJzPSIkbHRycGF0aGRpcnMgJGRpciIK LSAgICAgICAgICAgICAgICAgICAgICBmaQotICAgICAgICAgICAgICAgICAg ICBmaQotICAgICAgICAgICAgICAgICAgICA7OwotICAgICAgICAgICAgICAg ICAgLWwqKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIG5hbWVzX25leHRfcm91bmQ9IiRuYW1lc19uZXh0X3JvdW5kICJgZWNo byAiWCRkZXAiIHwgc2VkIC1lICdzL15YLWwvLydgCi0gICAgICAgICAgICAg ICAgICAgIDs7Ci0gICAgICAgICAgICAgICAgICAqLmxhKQotICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lc19uZXh0X3JvdW5kPSIk bmFtZXNfbmV4dF9yb3VuZCAiYGVjaG8gIlgkZGVwIiB8IHNlZCAtZSAncyxe WC4qLywsJyAtZSAncyxebGliLCwnIC1lICdzLFwubGEkLCwnYAotICAgICAg ICAgICAgICAgICAgICA7OwotICAgICAgICAgICAgICAgICAgKikKLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMSUJJQ09OVj0i JHtMSUJJQ09OVn0ke0xJQklDT05WOisgfSRkZXAiCi0gICAgICAgICAgICAg ICAgICAgIExUTElCSUNPTlY9IiR7TFRMSUJJQ09OVn0ke0xUTElCSUNPTlY6 KyB9JGRlcCIKLSAgICAgICAgICAgICAgICAgICAgOzsKLSAgICAgICAgICAg ICAgICBlc2FjCi0gICAgICAgICAgICAgIGRvbmUKLSAgICAgICAgICAgIGZp Ci0gICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTElCSUNPTlY9IiR7 TElCSUNPTlZ9JHtMSUJJQ09OVjorIH0tbCRuYW1lIgotICAgICAgICAgICAg TFRMSUJJQ09OVj0iJHtMVExJQklDT05WfSR7TFRMSUJJQ09OVjorIH0tbCRu YW1lIgotICAgICAgICAgIGZpCi0gICAgICAgIGZpCi0gICAgICBmaQotICAg IGRvbmUKLSAgZG9uZQotICBpZiB0ZXN0ICJYJHJwYXRoZGlycyIgIT0gIlgi OyB0aGVuCi0gICAgaWYgdGVzdCAtbiAiJGhhcmRjb2RlX2xpYmRpcl9zZXBh cmF0b3IiOyB0aGVuCi0gICAgICAgICAgICAgICAgICAgICAgICBhbGxkaXJz PQotICAgICAgZm9yIGZvdW5kX2RpciBpbiAkcnBhdGhkaXJzOyBkbwotICAg ICAgICBhbGxkaXJzPSIke2FsbGRpcnN9JHthbGxkaXJzOiskaGFyZGNvZGVf bGliZGlyX3NlcGFyYXRvcn0kZm91bmRfZGlyIgotICAgICAgZG9uZQotICAg ICAgICAgICAgYWNsX3NhdmVfbGliZGlyPSIkbGliZGlyIgotICAgICAgbGli ZGlyPSIkYWxsZGlycyIKLSAgICAgIGV2YWwgZmxhZz1cIiRoYXJkY29kZV9s aWJkaXJfZmxhZ19zcGVjXCIKLSAgICAgIGxpYmRpcj0iJGFjbF9zYXZlX2xp YmRpciIKLSAgICAgIExJQklDT05WPSIke0xJQklDT05WfSR7TElCSUNPTlY6 KyB9JGZsYWciCi0gICAgZWxzZQotICAgICAgICAgICAgZm9yIGZvdW5kX2Rp ciBpbiAkcnBhdGhkaXJzOyBkbwotICAgICAgICBhY2xfc2F2ZV9saWJkaXI9 IiRsaWJkaXIiCi0gICAgICAgIGxpYmRpcj0iJGZvdW5kX2RpciIKLSAgICAg ICAgZXZhbCBmbGFnPVwiJGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWNcIgot ICAgICAgICBsaWJkaXI9IiRhY2xfc2F2ZV9saWJkaXIiCi0gICAgICAgIExJ QklDT05WPSIke0xJQklDT05WfSR7TElCSUNPTlY6KyB9JGZsYWciCi0gICAg ICBkb25lCi0gICAgZmkKLSAgZmkKLSAgaWYgdGVzdCAiWCRsdHJwYXRoZGly cyIgIT0gIlgiOyB0aGVuCi0gICAgICAgICAgICBmb3IgZm91bmRfZGlyIGlu ICRsdHJwYXRoZGlyczsgZG8KLSAgICAgIExUTElCSUNPTlY9IiR7TFRMSUJJ Q09OVn0ke0xUTElCSUNPTlY6KyB9LVIkZm91bmRfZGlyIgotICAgIGRvbmUK LSAgZmkKLQotCi0KLQogICBmb3IgYWNfaGVhZGVyIGluIGFyZ3ouaCBsaW1p dHMuaCBsb2NhbGUuaCBubF90eXBlcy5oIG1hbGxvYy5oIHN0ZGRlZi5oIFwK IHN0ZGxpYi5oIHN0cmluZy5oIHVuaXN0ZC5oIHN5cy9wYXJhbS5oCiBkbyA6 CkBAIC01NDI2LDMzICs0ODgzLDIwIEBACiAKIAogCisjIENoZWNrIHdoZXRo ZXIgLS13aXRoLWxpYmljb252LXByZWZpeCB3YXMgZ2l2ZW4uCitpZiB0ZXN0 ICIke3dpdGhfbGliaWNvbnZfcHJlZml4K3NldH0iID0gc2V0OyB0aGVuIDoK KyAgd2l0aHZhbD0kd2l0aF9saWJpY29udl9wcmVmaXg7CisgICAgZm9yIGRp ciBpbiBgZWNobyAiJHdpdGh2YWwiIHwgdHIgOiAnICdgOyBkbworICAgICAg aWYgdGVzdCAtZCAkZGlyL2luY2x1ZGU7IHRoZW4gTElCSUNPTlZfSU5DTFVE RT0iLUkkZGlyL2luY2x1ZGUiOyBmaQorICAgICAgaWYgdGVzdCAtZCAkZGly L2xpYjsgdGhlbiBMSUJJQ09OVl9MSUJESVI9Ii1MJGRpci9saWIiOyBmaQor ICAgIGRvbmUKIAorZmkKIAotICAgICAgICAgIGFtX3NhdmVfQ1BQRkxBR1M9 IiRDUFBGTEFHUyIKIAotICBmb3IgZWxlbWVudCBpbiAkSU5DSUNPTlY7IGRv Ci0gICAgaGF2ZWl0PQotICAgIGZvciB4IGluICRDUFBGTEFHUzsgZG8KKyAg QlVJTERfTElCSUNPTlZfTElCRElSUz0iLi4vbGliaWNvbnYvbGliLy5saWJz IC4uL2xpYmljb252L2xpYi9fbGlicyIKKyAgQlVJTERfTElCSUNPTlZfSU5D TFVERT0iLUkuLi9saWJpY29udi9pbmNsdWRlIgogCi0gIGFjbF9zYXZlX3By ZWZpeD0iJHByZWZpeCIKLSAgcHJlZml4PSIkYWNsX2ZpbmFsX3ByZWZpeCIK LSAgYWNsX3NhdmVfZXhlY19wcmVmaXg9IiRleGVjX3ByZWZpeCIKLSAgZXhl Y19wcmVmaXg9IiRhY2xfZmluYWxfZXhlY19wcmVmaXgiCi0gIGV2YWwgeD1c IiR4XCIKLSAgZXhlY19wcmVmaXg9IiRhY2xfc2F2ZV9leGVjX3ByZWZpeCIK LSAgcHJlZml4PSIkYWNsX3NhdmVfcHJlZml4IgotCi0gICAgICBpZiB0ZXN0 ICJYJHgiID0gIlgkZWxlbWVudCI7IHRoZW4KLSAgICAgICAgaGF2ZWl0PXll cwotICAgICAgICBicmVhawotICAgICAgZmkKLSAgICBkb25lCi0gICAgaWYg dGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KLSAgICAgIENQUEZMQUdTPSIke0NQ UEZMQUdTfSR7Q1BQRkxBR1M6KyB9JGVsZW1lbnQiCi0gICAgZmkKLSAgZG9u ZQotCi0KICAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5F Tk99OiBjaGVja2luZyBmb3IgaWNvbnYiID4mNQogJGFzX2VjaG9fbiAiY2hl Y2tpbmcgZm9yIGljb252Li4uICIgPiY2OyB9CiBpZiB0ZXN0ICIke2FtX2N2 X2Z1bmNfaWNvbnYrc2V0fSIgPSBzZXQ7IHRoZW4gOgpAQCAtNTQ2MSw2ICs0 OTA1LDEwIEBACiAKICAgICBhbV9jdl9mdW5jX2ljb252PSJubywgY29uc2lk ZXIgaW5zdGFsbGluZyBHTlUgbGliaWNvbnYiCiAgICAgYW1fY3ZfbGliX2lj b252PW5vCisgICAgYW1fY3ZfdXNlX2J1aWxkX2xpYmljb252PW5vCisgICAg YW1fY3ZfYnVpbGRfbGliaWNvbnZfcGF0aD0KKworICAgICMgRmlyc3QsIHRy eSB0byBmaW5kIGljb252IGluIGxpYmMuCiAgICAgY2F0IGNvbmZkZWZzLmgg LSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAogLyogZW5kIGNvbmZkZWZz LmguICAqLwogI2luY2x1ZGUgPHN0ZGxpYi5oPgpAQCAtNTQ2OSw4ICs0OTE3 LDggQEAKIG1haW4gKCkKIHsKIGljb252X3QgY2QgPSBpY29udl9vcGVuKCIi LCIiKTsKLSAgICAgICBpY29udihjZCxOVUxMLE5VTEwsTlVMTCxOVUxMKTsK LSAgICAgICBpY29udl9jbG9zZShjZCk7CisgICAgICAgICBpY29udihjZCxO VUxMLE5VTEwsTlVMTCxOVUxMKTsKKyAgICAgICAgIGljb252X2Nsb3NlKGNk KTsKICAgOwogICByZXR1cm4gMDsKIH0KQEAgLTU0ODAsOSArNDkyOCw1NSBA QAogZmkKIHJtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19v YmpleHQgXAogICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNf ZXh0CisKKyAgICAjIElmIGxpYmljb252IGlzIHBhcnQgb2YgdGhlIGJ1aWxk IHRyZWUsIHRoZW4gdHJ5IHVzaW5nIGl0IG92ZXIKKyAgICAjIGFueSBzeXN0 ZW0gbGliaWNvbnYuCisgICAgaWYgdGVzdCAiJGFtX2N2X2Z1bmNfaWNvbnYi ICE9IHllcyAmJiB0ZXN0IC1kIC4uL2xpYmljb252OyB0aGVuCisgICAgICBm b3IgbGliX2RpciBpbiAkQlVJTERfTElCSUNPTlZfTElCRElSUzsgZG8KKyAg ICAgICAgYW1fc2F2ZV9MSUJTPSIkTElCUyIKKyAgICAgICAgYW1fc2F2ZV9D UFBGTEFHUz0iJENQUEZMQUdTIgorICAgICAgICBMSUJTPSIkTElCUyAkbGli X2Rpci9saWJpY29udi5hIgorICAgICAgICBDUFBGTEFHUz0iJENQUEZMQUdT ICRCVUlMRF9MSUJJQ09OVl9JTkNMVURFIgorICAgICAgICBjYXQgY29uZmRl ZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29u ZmRlZnMuaC4gICovCisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8 aWNvbnYuaD4KK2ludAorbWFpbiAoKQoreworaWNvbnZfdCBjZCA9IGljb252 X29wZW4oIiIsIiIpOworICAgICAgICAgICBpY29udihjZCxOVUxMLE5VTEws TlVMTCxOVUxMKTsKKyAgICAgICAgICAgaWNvbnZfY2xvc2UoY2QpOworICA7 CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9saW5r ICIkTElORU5PIjsgdGhlbiA6CisgIGFtX2N2X3VzZV9idWlsZF9saWJpY29u dj15ZXMKKyAgICAgICAgICBhbV9jdl9idWlsZF9saWJpY29udl9wYXRoPSRs aWJfZGlyL2xpYmljb252LmEKKyAgICAgICAgICBhbV9jdl9saWJfaWNvbnY9 eWVzCisgICAgICAgICAgYW1fY3ZfZnVuY19pY29udj15ZXMKK2ZpCitybSAt ZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IFwKKyAg ICBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAorICAgICAg ICBMSUJTPSIkYW1fc2F2ZV9MSUJTIgorICAgICAgICBDUFBGTEFHUz0iJGFt X3NhdmVfQ1BQRkxBR1MiCisgICAgICAgIGlmIHRlc3QgIiRhbV9jdl91c2Vf YnVpbGRfbGliaWNvbnYiID0gInllcyI7IHRoZW4KKyAgICAgICAgICBicmVh aworICAgICAgICBmaQorICAgICAgZG9uZQorICAgIGZpCisKKyAgICAjIElm IGljb252IHdhcyBub3QgaW4gbGliYywgdHJ5IC1saWNvbnYuICBJbiB0aGlz IGNhc2UsIGFycmFuZ2UgdG8KKyAgICAjIGxvb2sgaW4gdGhlIGxpYmljb252 IHByZWZpeCwgaWYgaXQgd2FzIHNwZWNpZmllZCBieSB0aGUgdXNlci4KICAg ICBpZiB0ZXN0ICIkYW1fY3ZfZnVuY19pY29udiIgIT0geWVzOyB0aGVuCisg ICAgICBhbV9zYXZlX0NQUEZMQUdTPSIkQ1BQRkxBR1MiCiAgICAgICBhbV9z YXZlX0xJQlM9IiRMSUJTIgotICAgICAgTElCUz0iJExJQlMgJExJQklDT05W IgorICAgICAgaWYgdGVzdCAtbiAiJExJQklDT05WX0lOQ0xVREUiOyB0aGVu CisgICAgICAgIENQUEZMQUdTPSIkQ1BQRkxBR1MgJExJQklDT05WX0lOQ0xV REUiCisgICAgICAgIExJQlM9IiRMSUJTICRMSUJJQ09OVl9MSUJESVIiCisg ICAgICBmaQorICAgICAgTElCUz0iJExJQlMgLWxpY29udiIKICAgICAgIGNh dCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKIC8q IGVuZCBjb25mZGVmcy5oLiAgKi8KICNpbmNsdWRlIDxzdGRsaWIuaD4KQEAg LTU1MDQsMzAgKzQ5OTgsMzQgQEAKIHJtIC1mIGNvcmUgY29uZnRlc3QuZXJy IGNvbmZ0ZXN0LiRhY19vYmpleHQgXAogICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4 dCBjb25mdGVzdC4kYWNfZXh0CiAgICAgICBMSUJTPSIkYW1fc2F2ZV9MSUJT IgorICAgICAgQ1BQRkxBR1M9IiRhbV9zYXZlX0NQUEZMQUdTIgogICAgIGZp CiAKIGZpCiB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVO T306IHJlc3VsdDogJGFtX2N2X2Z1bmNfaWNvbnYiID4mNQogJGFzX2VjaG8g IiRhbV9jdl9mdW5jX2ljb252IiA+JjY7IH0KLSAgaWYgdGVzdCAiJGFtX2N2 X2Z1bmNfaWNvbnYiID0geWVzOyB0aGVuCiAKLSRhc19lY2hvICIjZGVmaW5l IEhBVkVfSUNPTlYgMSIgPj5jb25mZGVmcy5oCi0KLSAgZmkKKyAgIyBTZXQg dGhlIHZhcmlvdXMgZmxhZ3MgYmFzZWQgb24gdGhlIGNhY2hlIHZhcmlhYmxl cy4gIFdlIGNhbid0IHJlbHkKKyAgIyBvbiB0aGUgZmxhZ3MgdG8gcmVtYWlu IHNldCBmcm9tIHRoZSBhYm92ZSBjb2RlLCBkdWUgdG8gY2FjaGluZy4KKyAg TElCSUNPTlY9CiAgIGlmIHRlc3QgIiRhbV9jdl9saWJfaWNvbnYiID0geWVz OyB0aGVuCi0gICAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRM SU5FTk99OiBjaGVja2luZyBob3cgdG8gbGluayB3aXRoIGxpYmljb252IiA+ JjUKLSRhc19lY2hvX24gImNoZWNraW5nIGhvdyB0byBsaW5rIHdpdGggbGli aWNvbnYuLi4gIiA+JjY7IH0KLSAgICB7ICRhc19lY2hvICIkYXNfbWU6JHth c19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJExJQklDT05WIiA+JjUKLSRh c19lY2hvICIkTElCSUNPTlYiID4mNjsgfQorICAgIExJQklDT05WPSItbGlj b252IgogICBlbHNlCi0gICAgICAgICAgICBDUFBGTEFHUz0iJGFtX3NhdmVf Q1BQRkxBR1MiCi0gICAgTElCSUNPTlY9Ci0gICAgTFRMSUJJQ09OVj0KKyAg ICBMSUJJQ09OVl9MSUJESVI9CisgICAgTElCSUNPTlZfSU5DTFVERT0KICAg ZmkKKyAgaWYgdGVzdCAiJGFtX2N2X3VzZV9idWlsZF9saWJpY29udiIgPSB5 ZXM7IHRoZW4KKyAgICBMSUJJQ09OVj0iJGFtX2N2X2J1aWxkX2xpYmljb252 X3BhdGgiCisgICAgTElCSUNPTlZfTElCRElSPSIiCisgICAgTElCSUNPTlZf SU5DTFVERT0iJEJVSUxEX0xJQklDT05WX0lOQ0xVREUiCisgIGZpCisgIENQ UEZMQUdTPSIkQ1BQRkxBR1MgJExJQklDT05WX0lOQ0xVREUiCisgIExJQlM9 IiRMSUJTICRMSUJJQ09OVl9MSUJESVIgJExJQklDT05WIgogCisgIGlmIHRl c3QgIiRhbV9jdl9mdW5jX2ljb252IiA9IHllczsgdGhlbgogCiskYXNfZWNo byAiI2RlZmluZSBIQVZFX0lDT05WIDEiID4+Y29uZmRlZnMuaAogCi0gIGlm IHRlc3QgIiRhbV9jdl9mdW5jX2ljb252IiA9IHllczsgdGhlbgogICAgIHsg JGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tp bmcgZm9yIGljb252IGRlY2xhcmF0aW9uIiA+JjUKICRhc19lY2hvX24gImNo ZWNraW5nIGZvciBpY29udiBkZWNsYXJhdGlvbi4uLiAiID4mNjsgfQogICAg IGlmIHRlc3QgIiR7YW1fY3ZfcHJvdG9faWNvbnYrc2V0fSIgPSBzZXQ7IHRo ZW4gOgpAQCAtNTcxMCwyMCArNTIwOCwxNzggQEAKICAgZmkKIAogCisgICAg ICBpZiB0ZXN0ICJYJHByZWZpeCIgPSAiWE5PTkUiOyB0aGVuCisgICAgYWNs X2ZpbmFsX3ByZWZpeD0iJGFjX2RlZmF1bHRfcHJlZml4IgorICBlbHNlCisg ICAgYWNsX2ZpbmFsX3ByZWZpeD0iJHByZWZpeCIKKyAgZmkKKyAgaWYgdGVz dCAiWCRleGVjX3ByZWZpeCIgPSAiWE5PTkUiOyB0aGVuCisgICAgYWNsX2Zp bmFsX2V4ZWNfcHJlZml4PScke3ByZWZpeH0nCisgIGVsc2UKKyAgICBhY2xf ZmluYWxfZXhlY19wcmVmaXg9IiRleGVjX3ByZWZpeCIKKyAgZmkKKyAgYWNs X3NhdmVfcHJlZml4PSIkcHJlZml4IgorICBwcmVmaXg9IiRhY2xfZmluYWxf cHJlZml4IgorICBldmFsIGFjbF9maW5hbF9leGVjX3ByZWZpeD1cIiRhY2xf ZmluYWxfZXhlY19wcmVmaXhcIgorICBwcmVmaXg9IiRhY2xfc2F2ZV9wcmVm aXgiCiAKIAorIyBDaGVjayB3aGV0aGVyIC0td2l0aC1nbnUtbGQgd2FzIGdp dmVuLgoraWYgdGVzdCAiJHt3aXRoX2dudV9sZCtzZXR9IiA9IHNldDsgdGhl biA6CisgIHdpdGh2YWw9JHdpdGhfZ251X2xkOyB0ZXN0ICIkd2l0aHZhbCIg PSBubyB8fCB3aXRoX2dudV9sZD15ZXMKK2Vsc2UKKyAgd2l0aF9nbnVfbGQ9 bm8KK2ZpCiAKKyMgUHJlcGFyZSBQQVRIX1NFUEFSQVRPUi4KKyMgVGhlIHVz ZXIgaXMgYWx3YXlzIHJpZ2h0LgoraWYgdGVzdCAiJHtQQVRIX1NFUEFSQVRP UitzZXR9IiAhPSBzZXQ7IHRoZW4KKyAgZWNobyAiIyEgL2Jpbi9zaCIgPmNv bmYkJC5zaAorICBlY2hvICAiZXhpdCAwIiAgID4+Y29uZiQkLnNoCisgIGNo bW9kICt4IGNvbmYkJC5zaAorICBpZiAoUEFUSD0iL25vbmV4aXN0ZW50Oy4i OyBjb25mJCQuc2gpID4vZGV2L251bGwgMj4mMTsgdGhlbgorICAgIFBBVEhf U0VQQVJBVE9SPSc7JworICBlbHNlCisgICAgUEFUSF9TRVBBUkFUT1I9Ogor ICBmaQorICBybSAtZiBjb25mJCQuc2gKK2ZpCithY19wcm9nPWxkCitpZiB0 ZXN0ICIkR0NDIiA9IHllczsgdGhlbgorICAjIENoZWNrIGlmIGdjYyAtcHJp bnQtcHJvZy1uYW1lPWxkIGdpdmVzIGEgcGF0aC4KKyAgeyAkYXNfZWNobyAi JGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgbGQg dXNlZCBieSBHQ0MiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yIGxk IHVzZWQgYnkgR0NDLi4uICIgPiY2OyB9CisgIGNhc2UgJGhvc3QgaW4KKyAg Ki0qLW1pbmd3KikKKyAgICAjIGdjYyBsZWF2ZXMgYSB0cmFpbGluZyBjYXJy aWFnZSByZXR1cm4gd2hpY2ggdXBzZXRzIG1pbmd3CisgICAgYWNfcHJvZz1g KCRDQyAtcHJpbnQtcHJvZy1uYW1lPWxkKSAyPiY1IHwgdHIgLWQgJ1wwMTUn YCA7OworICAqKQorICAgIGFjX3Byb2c9YCgkQ0MgLXByaW50LXByb2ctbmFt ZT1sZCkgMj4mNWAgOzsKKyAgZXNhYworICBjYXNlICRhY19wcm9nIGluCisg ICAgIyBBY2NlcHQgYWJzb2x1dGUgcGF0aHMuCisgICAgW1xcL10qIHwgW0Et WmEtel06W1xcL10qKQorICAgICAgcmVfZGlyZWx0PScvW14vXVteL10qL1wu XC4vJworICAgICAgIyBDYW5vbmljYWxpemUgdGhlIHBhdGggb2YgbGQKKyAg ICAgIGFjX3Byb2c9YGVjaG8gJGFjX3Byb2d8IHNlZCAncyVcXFxcJS8lZydg CisgICAgICB3aGlsZSBlY2hvICRhY19wcm9nIHwgZ3JlcCAiJHJlX2RpcmVs dCIgPiAvZGV2L251bGwgMj4mMTsgZG8KKwlhY19wcm9nPWBlY2hvICRhY19w cm9nfCBzZWQgInMlJHJlX2RpcmVsdCUvJSJgCisgICAgICBkb25lCisgICAg ICB0ZXN0IC16ICIkTEQiICYmIExEPSIkYWNfcHJvZyIKKyAgICAgIDs7Cisg ICIiKQorICAgICMgSWYgaXQgZmFpbHMsIHRoZW4gcHJldGVuZCB3ZSBhcmVu J3QgdXNpbmcgR0NDLgorICAgIGFjX3Byb2c9bGQKKyAgICA7OworICAqKQor ICAgICMgSWYgaXQgaXMgcmVsYXRpdmUsIHRoZW4gc2VhcmNoIGZvciB0aGUg Zmlyc3QgbGQgaW4gUEFUSC4KKyAgICB3aXRoX2dudV9sZD11bmtub3duCisg ICAgOzsKKyAgZXNhYworZWxpZiB0ZXN0ICIkd2l0aF9nbnVfbGQiID0geWVz OyB0aGVuCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElO RU5PfTogY2hlY2tpbmcgZm9yIEdOVSBsZCIgPiY1CiskYXNfZWNob19uICJj aGVja2luZyBmb3IgR05VIGxkLi4uICIgPiY2OyB9CitlbHNlCisgIHsgJGFz X2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcg Zm9yIG5vbi1HTlUgbGQiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9y IG5vbi1HTlUgbGQuLi4gIiA+JjY7IH0KK2ZpCitpZiB0ZXN0ICIke2FjbF9j dl9wYXRoX0xEK3NldH0iID0gc2V0OyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAi KGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgaWYgdGVzdCAteiAiJExEIjsgdGhl bgorICBJRlM9IiR7SUZTPSAJfSI7IGFjX3NhdmVfaWZzPSIkSUZTIjsgSUZT PSIke0lGU30ke1BBVEhfU0VQQVJBVE9SLTp9IgorICBmb3IgYWNfZGlyIGlu ICRQQVRIOyBkbworICAgIHRlc3QgLXogIiRhY19kaXIiICYmIGFjX2Rpcj0u CisgICAgaWYgdGVzdCAtZiAiJGFjX2Rpci8kYWNfcHJvZyIgfHwgdGVzdCAt ZiAiJGFjX2Rpci8kYWNfcHJvZyRhY19leGVleHQiOyB0aGVuCisgICAgICBh Y2xfY3ZfcGF0aF9MRD0iJGFjX2Rpci8kYWNfcHJvZyIKKyAgICAgICMgQ2hl Y2sgdG8gc2VlIGlmIHRoZSBwcm9ncmFtIGlzIEdOVSBsZC4gIEknZCByYXRo ZXIgdXNlIC0tdmVyc2lvbiwKKyAgICAgICMgYnV0IGFwcGFyZW50bHkgc29t ZSBHTlUgbGQncyBvbmx5IGFjY2VwdCAtdi4KKyAgICAgICMgQnJlYWsgb25s eSBpZiBpdCB3YXMgdGhlIEdOVS9ub24tR05VIGxkIHRoYXQgd2UgcHJlZmVy LgorICAgICAgaWYgIiRhY2xfY3ZfcGF0aF9MRCIgLXYgMj4mMSA8IC9kZXYv bnVsbCB8IGVncmVwICcoR05VfHdpdGggQkZEKScgPiAvZGV2L251bGw7IHRo ZW4KKwl0ZXN0ICIkd2l0aF9nbnVfbGQiICE9IG5vICYmIGJyZWFrCisgICAg ICBlbHNlCisJdGVzdCAiJHdpdGhfZ251X2xkIiAhPSB5ZXMgJiYgYnJlYWsK KyAgICAgIGZpCisgICAgZmkKKyAgZG9uZQorICBJRlM9IiRhY19zYXZlX2lm cyIKK2Vsc2UKKyAgYWNsX2N2X3BhdGhfTEQ9IiRMRCIgIyBMZXQgdGhlIHVz ZXIgb3ZlcnJpZGUgdGhlIHRlc3Qgd2l0aCBhIHBhdGguCitmaQorZmkKIAor TEQ9IiRhY2xfY3ZfcGF0aF9MRCIKK2lmIHRlc3QgLW4gIiRMRCI7IHRoZW4K KyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBy ZXN1bHQ6ICRMRCIgPiY1CiskYXNfZWNobyAiJExEIiA+JjY7IH0KK2Vsc2UK KyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBy ZXN1bHQ6IG5vIiA+JjUKKyRhc19lY2hvICJubyIgPiY2OyB9CitmaQordGVz dCAteiAiJExEIiAmJiBhc19mbl9lcnJvciAibm8gYWNjZXB0YWJsZSBsZCBm b3VuZCBpbiBcJFBBVEgiICIkTElORU5PIiA1Cit7ICRhc19lY2hvICIkYXNf bWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGlmIHRoZSBsaW5r ZXIgKCRMRCkgaXMgR05VIGxkIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5n IGlmIHRoZSBsaW5rZXIgKCRMRCkgaXMgR05VIGxkLi4uICIgPiY2OyB9Citp ZiB0ZXN0ICIke2FjbF9jdl9wcm9nX2dudV9sZCtzZXR9IiA9IHNldDsgdGhl biA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgICMg SSdkIHJhdGhlciB1c2UgLS12ZXJzaW9uIGhlcmUsIGJ1dCBhcHBhcmVudGx5 IHNvbWUgR05VIGxkJ3Mgb25seSBhY2NlcHQgLXYuCitpZiAkTEQgLXYgMj4m MSA8L2Rldi9udWxsIHwgZWdyZXAgJyhHTlV8d2l0aCBCRkQpJyAxPiY1OyB0 aGVuCisgIGFjbF9jdl9wcm9nX2dudV9sZD15ZXMKK2Vsc2UKKyAgYWNsX2N2 X3Byb2dfZ251X2xkPW5vCitmaQorZmkKK3sgJGFzX2VjaG8gIiRhc19tZTok e2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNsX2N2X3Byb2dfZ251 X2xkIiA+JjUKKyRhc19lY2hvICIkYWNsX2N2X3Byb2dfZ251X2xkIiA+JjY7 IH0KK3dpdGhfZ251X2xkPSRhY2xfY3ZfcHJvZ19nbnVfbGQKIAogCiAKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hl Y2tpbmcgZm9yIHNoYXJlZCBsaWJyYXJ5IHJ1biBwYXRoIG9yaWdpbiIgPiY1 CiskYXNfZWNob19uICJjaGVja2luZyBmb3Igc2hhcmVkIGxpYnJhcnkgcnVu IHBhdGggb3JpZ2luLi4uICIgPiY2OyB9CitpZiB0ZXN0ICIke2FjbF9jdl9y cGF0aCtzZXR9IiA9IHNldDsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNo ZWQpICIgPiY2CitlbHNlCiAKKyAgICBDQz0iJENDIiBHQ0M9IiRHQ0MiIExE RkxBR1M9IiRMREZMQUdTIiBMRD0iJExEIiB3aXRoX2dudV9sZD0iJHdpdGhf Z251X2xkIiBcCisgICAgJHtDT05GSUdfU0hFTEwtL2Jpbi9zaH0gIiRhY19h dXhfZGlyL2NvbmZpZy5ycGF0aCIgIiRob3N0IiA+IGNvbmZ0ZXN0LnNoCisg ICAgLiAuL2NvbmZ0ZXN0LnNoCisgICAgcm0gLWYgLi9jb25mdGVzdC5zaAor ICAgIGFjbF9jdl9ycGF0aD1kb25lCiAKK2ZpCit7ICRhc19lY2hvICIkYXNf bWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjbF9jdl9ycGF0 aCIgPiY1CiskYXNfZWNobyAiJGFjbF9jdl9ycGF0aCIgPiY2OyB9CisgIHds PSIkYWNsX2N2X3dsIgorICBsaWJleHQ9IiRhY2xfY3ZfbGliZXh0IgorICBz aGxpYmV4dD0iJGFjbF9jdl9zaGxpYmV4dCIKKyAgaGFyZGNvZGVfbGliZGly X2ZsYWdfc3BlYz0iJGFjbF9jdl9oYXJkY29kZV9saWJkaXJfZmxhZ19zcGVj IgorICBoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yPSIkYWNsX2N2X2hhcmRj b2RlX2xpYmRpcl9zZXBhcmF0b3IiCisgIGhhcmRjb2RlX2RpcmVjdD0iJGFj bF9jdl9oYXJkY29kZV9kaXJlY3QiCisgIGhhcmRjb2RlX21pbnVzX0w9IiRh Y2xfY3ZfaGFyZGNvZGVfbWludXNfTCIKKyAgICAjIENoZWNrIHdoZXRoZXIg LS1lbmFibGUtcnBhdGggd2FzIGdpdmVuLgoraWYgdGVzdCAiJHtlbmFibGVf cnBhdGgrc2V0fSIgPSBzZXQ7IHRoZW4gOgorICBlbmFibGV2YWw9JGVuYWJs ZV9ycGF0aDsgOgorZWxzZQorICBlbmFibGVfcnBhdGg9eWVzCitmaQogCiAK IAogCiAKKworCisKKworCisKKworCisKKworCisKICAgeyAkYXNfZWNobyAi JGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyB3aGV0aGVy IE5MUyBpcyByZXF1ZXN0ZWQiID4mNQogJGFzX2VjaG9fbiAiY2hlY2tpbmcg d2hldGhlciBOTFMgaXMgcmVxdWVzdGVkLi4uICIgPiY2OyB9CiAgICAgIyBD aGVjayB3aGV0aGVyIC0tZW5hYmxlLW5scyB3YXMgZ2l2ZW4uCg== --=-c5XhPzaWPTSvNlvpOvBt--