From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 3265 invoked from network); 25 Oct 2020 02:30:41 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 25 Oct 2020 02:30:41 -0000 Content-Type: multipart/mixed; boundary="===============0321632926023192942==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_scons=3A_update_to_4=2E0=2E1?= To: ml@inbox.vuxu.org From: sgn Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Sun, 25 Oct 2020 03:30:36 +0100 List-Id: Message-ID: <20201025023036.qu5Xs5Z2t_OKP6KCYHA25Hie2C0MslOuIsNyfmOFI8A@z> GitHub notification mails are now in MIME to allow UTF8. --===============0321632926023192942== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgc2duIGFnYWluc3QgbWFzdGVyIG9u IHRoZSB2b2lkLXBhY2thZ2VzIHJlcG9zaXRvcnkKCmh0dHBzOi8vZ2l0aHViLmNvbS9zZ24vdm9p ZC1wYWNrYWdlcyBzY29ucy1weXRob24tMwpodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92 b2lkLXBhY2thZ2VzL3B1bGwvMjU3ODkKCnNjb25zOiB1cGRhdGUgdG8gNC4wLjEKQ2xvc2UgIzI0 NDQ4CgpBIHBhdGNoIGZpbGUgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lk LXBhY2thZ2VzL3B1bGwvMjU3ODkucGF0Y2ggaXMgYXR0YWNoZWQ= --===============0321632926023192942== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-scons-python-3-25789.patch" RnJvbSBkN2Y1OWJiODcxZTU5NWYxOGFmOTM0ZmQ3ZGY0OTg5YjgzYTNmZGRiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBDYW1lcm9uIE5lbW8gPGNuZW1vQHR1dGFub3RhLmNvbT4KRGF0 ZTogU3VuLCAyMyBBdWcgMjAyMCAxOTo0MDoyMyAtMDcwMApTdWJqZWN0OiBbUEFUQ0ggMDEvMTFd IHNjb25zOiB1cGRhdGUgdG8gNC4wLjEuCgpTd2l0Y2ggdG8gUHl0aG9uMy4KLS0tCiBzcmNwa2dz L3Njb25zL3RlbXBsYXRlIHwgMTcgKysrKysrKystLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA4 IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zY29u cy90ZW1wbGF0ZSBiL3NyY3BrZ3Mvc2NvbnMvdGVtcGxhdGUKaW5kZXggMmE1OThjNDA5OTQuLjg4 MzQ0M2UzNDY1IDEwMDY0NAotLS0gYS9zcmNwa2dzL3Njb25zL3RlbXBsYXRlCisrKyBiL3NyY3Br Z3Mvc2NvbnMvdGVtcGxhdGUKQEAgLTEsMjAgKzEsMTkgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J3Njb25zJwogcGtnbmFtZT1zY29ucwotcmV2ZXJ0cz0iNC4wLjFfMSIKLXZlcnNpb249My4xLjIK LXJldmlzaW9uPTQKLWJ1aWxkX3N0eWxlPXB5dGhvbjItbW9kdWxlCi1tYWtlX2luc3RhbGxfYXJn cz0iLS1zdGFuZGFyZC1saWIgLS1pbnN0YWxsLWRhdGE9L3Vzci9zaGFyZSIKLWhvc3RtYWtlZGVw ZW5kcz0icHl0aG9uIHB5dGhvbi1zZXR1cHRvb2xzIgotZGVwZW5kcz0icHl0aG9uIgordmVyc2lv bj00LjAuMQorcmV2aXNpb249Mgord3Jrc3JjPSJTQ29ucy0ke3ZlcnNpb259IgorYnVpbGRfc3R5 bGU9cHl0aG9uMy1tb2R1bGUKK2hvc3RtYWtlZGVwZW5kcz0icHl0aG9uMyBweXRob24zLXNldHVw dG9vbHMiCitkZXBlbmRzPSJweXRob24zIgogc2hvcnRfZGVzYz0iU29mdHdhcmUgY29uc3RydWN0 aW9uIHRvb2wiCiBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+Igog bGljZW5zZT0iTUlUIgogaG9tZXBhZ2U9Imh0dHBzOi8vd3d3LnNjb25zLm9yZy8iCiBkaXN0Zmls ZXM9IiR7U09VUkNFRk9SR0VfU0lURX0vJHtwa2duYW1lfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0u dGFyLmd6IgotY2hlY2tzdW09Ijc4MDFmM2Y2MmY2NTQ1MjhlMjcyZGY3ODBiZTEwYzBlOTMzN2U4 OTc2NTBiNjJkZGNlZTlmMzlmZGUxM2Y4ZmIiCitjaGVja3N1bT03MjJlZDEwNGI1YzYyNGVjZGM4 OWJkNGUwMmIwOTRkMmIxNGQ5OWQ0N2I1ZDA1MDE5NjFlNDdmNTc5YTIwMDdjCiAKIAogcG9zdF9p bnN0YWxsKCkgewotCXZsaWNlbnNlIExJQ0VOU0UudHh0CisJdmxpY2Vuc2UgTElDRU5TRQogfQoK RnJvbSBkNzhkY2MxNWU5N2E4Yzk0M2RhZDcxMDBhYmJkZDEyZjFkNDk4Yjg1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0PTkwbz1DMz1BMG49MjBUcj1FMT1CQT1B N249MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTogV2Vk LCAyMSBPY3QgMjAyMCAyMzowMDo0OCArMDcwMApTdWJqZWN0OiBbUEFUQ0ggMDIvMTFdIHN3aWZ0 ZW46IHVwZGF0ZSB0byA0LjAuMy4KCi0tLQogLi4uL3BhdGNoZXMvYm9vc3QtbG9naWMtdHJpYm9v bC1pby5wYXRjaCAgICAgIHwgMTAgKysrKwogc3JjcGtncy9zd2lmdGVuL3RlbXBsYXRlICAgICAg ICAgICAgICAgICAgICAgIHwgNTIgKysrKysrKysrKysrKystLS0tLQogMiBmaWxlcyBjaGFuZ2Vk LCA1MCBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBz cmNwa2dzL3N3aWZ0ZW4vcGF0Y2hlcy9ib29zdC1sb2dpYy10cmlib29sLWlvLnBhdGNoCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9zd2lmdGVuL3BhdGNoZXMvYm9vc3QtbG9naWMtdHJpYm9vbC1pby5w YXRjaCBiL3NyY3BrZ3Mvc3dpZnRlbi9wYXRjaGVzL2Jvb3N0LWxvZ2ljLXRyaWJvb2wtaW8ucGF0 Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjljMmFhNGZlMDkzCi0t LSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9zd2lmdGVuL3BhdGNoZXMvYm9vc3QtbG9naWMtdHJp Ym9vbC1pby5wYXRjaApAQCAtMCwwICsxLDEwIEBACistLS0gU3dpZnRlbi9OZXR3b3JrL1BsYXRm b3JtTkFUVHJhdmVyc2FsV29ya2VyLmNwcC5vcmlnCTIwMjAtMTAtMjQgMjI6NTU6MTIuMTUyMjg4 NTgyICswNzAwCisrKysgU3dpZnRlbi9OZXR3b3JrL1BsYXRmb3JtTkFUVHJhdmVyc2FsV29ya2Vy LmNwcAkyMDIwLTEwLTI0IDIyOjU1OjMxLjAyMjM0NjU5MiArMDcwMAorQEAgLTE0LDYgKzE0LDcg QEAKKyAKKyAjaW5jbHVkZSA8bWVtb3J5PgorIAorKyNpbmNsdWRlIDxib29zdC9sb2dpYy90cmli b29sX2lvLmhwcD4KKyAjaW5jbHVkZSA8Ym9vc3QvbnVtZXJpYy9jb252ZXJzaW9uL2Nhc3QuaHBw PgorIAorICNpbmNsdWRlIDxTd2lmdGVuL0Jhc2UvTG9nLmg+CmRpZmYgLS1naXQgYS9zcmNwa2dz L3N3aWZ0ZW4vdGVtcGxhdGUgYi9zcmNwa2dzL3N3aWZ0ZW4vdGVtcGxhdGUKaW5kZXggMGRiOTgw Mzk2ZWUuLjQ1MTE4ZGVhNTZjIDEwMDY0NAotLS0gYS9zcmNwa2dzL3N3aWZ0ZW4vdGVtcGxhdGUK KysrIGIvc3JjcGtncy9zd2lmdGVuL3RlbXBsYXRlCkBAIC0xLDE2ICsxLDE3IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdzd2lmdGVuJwogcGtnbmFtZT1zd2lmdGVuCi12ZXJzaW9uPTMuMAotcmV2 aXNpb249MTQKK3ZlcnNpb249NC4wLjMKK3JldmlzaW9uPTEKIHdya3NyYz0ic3dpZnQtJHt2ZXJz aW9ufSIKLWJ1aWxkX3N0eWxlPXNjb25zCi1tYWtlZGVwZW5kcz0iYm9vc3QtZGV2ZWwgbGlicmVz c2wtZGV2ZWwgbGlieG1sMi1kZXZlbCBsaWJpZG4tZGV2ZWwiCitob3N0bWFrZWRlcGVuZHM9InNj b25zIHBrZy1jb25maWciCittYWtlZGVwZW5kcz0iYm9vc3QtZGV2ZWwgbGlicmVzc2wtZGV2ZWwg bGlieG1sMi1kZXZlbCBsaWJpZG4tZGV2ZWwKKyBsdWE1MS1kZXZlbCBtaW5pdXBucGMtZGV2ZWwg c3FsaXRlLWRldmVsIgogc2hvcnRfZGVzYz0iWE1QUCBsaWJyYXJ5IGZvciBDKysiCiBtYWludGFp bmVyPSJKb2huIFJlZ2FuIDxqb2huQGpyanJ0ZWNoLmNvbT4iCi1saWNlbnNlPSJHUEwtMyIKK2xp Y2Vuc2U9IkdQTC0zLjAtb25seSIKIGhvbWVwYWdlPSJodHRwOi8vc3dpZnQuaW0vIgogZGlzdGZp bGVzPSJodHRwOi8vc3dpZnQuaW0vZ2l0L3N3aWZ0L3NuYXBzaG90L3N3aWZ0LSR7dmVyc2lvbn0u dGFyLmJ6MiIKLWNoZWNrc3VtPTJlNDhmMDgxZDMzN2Y0NzFiNGViYTdjMGM4MDdhN2I2NDAyMTZh NzZlZDM1NjhjZWQ1NWFiYjViOTI3YzdmZDIKK2NoZWNrc3VtPTZhM2Y5M2U4MDdhZmI1MWYxYjhh YjZlYzhmZWYzNzlkZmNjNTBiYTcxZmVmNmFiZWVlN2MxMjMzNDhkYTY2YjAKIAogaWYgWyAiJFhC UFNfVEFSR0VUX0xJQkMiID0gIm11c2wiIF07IHRoZW4KIAltYWtlZGVwZW5kcys9IiBtdXNsLWxl Z2FjeS1jb21wYXQiCkBAIC0yNCwxMyArMjUsMzYgQEAgY2FzZSAiJFhCUFNfVEFSR0VUX01BQ0hJ TkUiIGluCiAJcHBjKikgQ1hYRkxBR1MrPSIgLWZQSUMiOzsKIGVzYWMKIAorcG9zdF9wYXRjaCgp IHsKKwlybSAtcmYgM3JkUGFydHkvQm9vc3Qvc3JjCisJcm0gLXJmIDNyZFBhcnR5L0V4cGF0L3Ny YworCXJtIC1yZiAzcmRQYXJ0eS9MaWJJRE4vc3JjCisJcm0gLXJmIDNyZFBhcnR5L0xpYk1pbmlV UG5QYy9zcmMKKwkjIHJtIC1yZiAzcmRQYXJ0eS9MaWJOQVRQTVAvc3JjCisJcm0gLXJmIDNyZFBh cnR5L0x1YS9zcmMKKwlybSAtcmYgM3JkUGFydHkvU0NvbnMKKwlybSAtcmYgM3JkUGFydHkvU1FM aXRlL3NxbGl0ZSoKKwlybSAtcmYgM3JkUGFydHkvWkxpYi9zcmMKKwlmaW5kIC4gXCggXAorCQkt bmFtZSAnKi5weScgLW8gLW5hbWUgU0NvbnNjcmlwdCAtbyAtbmFtZSBTQ29uc3RydWN0IFwKKwkJ XCkgLWV4ZWMgMnRvMyAtdyB7fSArCisJaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCisJCXZz ZWQgLWkgLWUgInMsL3Vzci9pbmNsdWRlLCRYQlBTX0NST1NTX0JBU0UmLCIgXAorCQkJQnVpbGRU b29scy9TQ29ucy9TQ29uc3RydWN0CisJZmkKK30KKwogZG9fYnVpbGQoKSB7Ci0JY2FzZSAiJFhC UFNfVEFSR0VUX01BQ0hJTkUiIGluCi0JYXJtdjYqKSBzZWQgLWkgM3JkUGFydHkvQm9vc3Qvc3Jj L2xpYnMvYXRvbWljL3NyYy9sb2NrcG9vbC5jcHAgXAotCQktZSAicztCT09TVF9BVE9NSUNfVEhS RUFEX0ZFTkNFID4gMDswOyIgXAotCQktZSAicztCT09TVF9BVE9NSUNfU0lHTkFMX0ZFTkNFID4g MDswOyIKLQkJOzsKLQllc2FjCisJZm9yIF9sbGliIGluICQoJFBLR19DT05GSUcgLS1saWJzIGx1 YSkKKwlkbworCQlpZiBbWyAiJF9sbGliIiA9IC1sbHVhKiBdXTsgdGhlbgorCQkJbHVhX2xpYm5h bWU9JHtfbGxpYiMtbH0KKwkJCXZzZWQgLWkgLWUgIgorCQkJL2x1YV9saWJuYW1lL3MvXCJsdWFc Ii9cIiRsdWFfbGlibmFtZVwiLworCQkJIiBCdWlsZFRvb2xzL1NDb25zL1NDb25zY3JpcHQuYm9v dAorCQlmaQorCWRvbmUKKwlDWFhGTEFHUys9IiAkKCRQS0dfQ09ORklHIC0tY2ZsYWdzIGx1YSki CiAJc2NvbnMgXAogCSAgY2M9IiR7Q0N9IiBcCiAJICBjeHg9IiR7Q1hYfSIgXApAQCAtNDEsNiAr NjUsNyBAQCBkb19idWlsZCgpIHsKIH0KIAogZG9faW5zdGFsbCgpIHsKKwlDWFhGTEFHUys9IiAk KCRQS0dfQ09ORklHIC0tY2ZsYWdzIGx1YSkiCiAJc2NvbnMgXAogCSAgY2M9IiR7Q0N9IiBcCiAJ ICBjeHg9IiR7Q1hYfSIgXApAQCAtNDksNiArNzQsOSBAQCBkb19pbnN0YWxsKCkgewogCSAgJHtf c2NvbnNfb3B0aW9uc30gXAogCSAgU1dJRlRFTl9JTlNUQUxMRElSPSIke0RFU1RESVJ9L3VzciIg XAogCSAgIiR7REVTVERJUn0vdXNyIgorCisJIyBidW5kbGVkIDNyZCBwYXJ0eSBCU0QtMy1DbGF1 c2UKKwl2bGljZW5zZSAzcmRQYXJ0eS9MaWJOQVRQTVAvc3JjL2xpYm5hdHBtcC9MSUNFTlNFCiB9 CiAKIHN3aWZ0ZW4tZGV2ZWxfcGFja2FnZSgpIHsKCkZyb20gNjg4OTJjYjA3NDczOTI2ZjZlODhm ODQ5YTJlNzIyODU5ZjRjZjI1MiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogRXZnZW55 IEVybWFrb3YgPGV2Z2VueS52LmVybWFrb3ZAZ21haWwuY29tPgpEYXRlOiBNb24sIDE5IE9jdCAy MDIwIDE2OjU4OjExICsxMTAwClN1YmplY3Q6IFtQQVRDSCAwMy8xMV0gdmRyaWZ0OiByZW1vdmUg dW51c2VkIGRlcGVuZGVuY3k7IG1pbm9yIGZpeGVzCk1JTUUtVmVyc2lvbjogMS4wCkNvbnRlbnQt VHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOApDb250ZW50LVRyYW5zZmVyLUVuY29kaW5n OiA4Yml0CgpbRGFuaF0gUG9ydCBidWlsZCBzeXN0ZW0gdG8gUHl0aG9uIDMuCgpDby1BdXRob3Jl ZC1ieTogxJBvw6BuIFRy4bqnbiBDw7RuZyBEYW5oIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KQ2xv c2U6ICMyNTcyNwotLS0KIC4uLmRlLWJ1aWxkLWRhdGUtd2l0aC1TT1VSQ0VfREFURV9FUE9DSC5w YXRjaCB8IDM4ICsrKysrKysrKysrCiAuLi4vcGF0Y2hlcy8wMDAyLVNjb25zLXB5dGhvbi0zLWZp eGVzLnBhdGNoICAgfCA2NSArKysrKysrKysrKysrKysrKysrCiAuLi4vMDAwMy1TQ29uc3RydWN0 LVB5dGhvbi0zLWZpeC5wYXRjaCAgICAgICAgfCAzMiArKysrKysrKysKIHNyY3BrZ3MvdmRyaWZ0 L3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAgICB8ICA3ICstCiA0IGZpbGVzIGNoYW5nZWQs IDEzOCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNy Y3BrZ3MvdmRyaWZ0L3BhdGNoZXMvMDAwMS1BbGxvdy10by1vdmVycmlkZS1idWlsZC1kYXRlLXdp dGgtU09VUkNFX0RBVEVfRVBPQ0gucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3Zk cmlmdC9wYXRjaGVzLzAwMDItU2NvbnMtcHl0aG9uLTMtZml4ZXMucGF0Y2gKIGNyZWF0ZSBtb2Rl IDEwMDY0NCBzcmNwa2dzL3ZkcmlmdC9wYXRjaGVzLzAwMDMtU0NvbnN0cnVjdC1QeXRob24tMy1m aXgucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3ZkcmlmdC9wYXRjaGVzLzAwMDEtQWxsb3ct dG8tb3ZlcnJpZGUtYnVpbGQtZGF0ZS13aXRoLVNPVVJDRV9EQVRFX0VQT0NILnBhdGNoIGIvc3Jj cGtncy92ZHJpZnQvcGF0Y2hlcy8wMDAxLUFsbG93LXRvLW92ZXJyaWRlLWJ1aWxkLWRhdGUtd2l0 aC1TT1VSQ0VfREFURV9FUE9DSC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw MDAwMDAwMC4uYzNlYzQyMmEwMmYKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3ZkcmlmdC9w YXRjaGVzLzAwMDEtQWxsb3ctdG8tb3ZlcnJpZGUtYnVpbGQtZGF0ZS13aXRoLVNPVVJDRV9EQVRF X0VQT0NILnBhdGNoCkBAIC0wLDAgKzEsMzggQEAKK0Zyb20gNTM0NWU4YjU3ZDMwMGIxNGMzNmI4 NTE5ZTE4ZjY3MDk2ZTRiOGQ3OCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206ICJCZXJu aGFyZCBNLiBXaWVkZW1hbm4iIDxid2llZGVtYW5uQHN1c2UuZGU+CitEYXRlOiBUaHUsIDExIEp1 bCAyMDE5IDEwOjMzOjUyICswMjAwCitTdWJqZWN0OiBbUEFUQ0ggMS8zXSBBbGxvdyB0byBvdmVy cmlkZSBidWlsZCBkYXRlIHdpdGggU09VUkNFX0RBVEVfRVBPQ0gKKworaW4gb3JkZXIgdG8gbWFr ZSBidWlsZHMgcmVwcm9kdWNpYmxlLgorU2VlIGh0dHBzOi8vcmVwcm9kdWNpYmxlLWJ1aWxkcy5v cmcvIGZvciB3aHkgdGhpcyBpcyBnb29kCithbmQgaHR0cHM6Ly9yZXByb2R1Y2libGUtYnVpbGRz Lm9yZy9zcGVjcy9zb3VyY2UtZGF0ZS1lcG9jaC8KK2ZvciB0aGUgZGVmaW5pdGlvbiBvZiB0aGlz IHZhcmlhYmxlLgorCitBbHNvIHVzZSBVVEMvZ210aW1lIHRvIGJlIGluZGVwZW5kZW50IG9mIHRp bWV6b25lLgorLS0tCisgU0NvbnN0cnVjdCB8IDUgKystLS0KKyAxIGZpbGUgY2hhbmdlZCwgMiBp bnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IFNDb25zdHJ1Y3QgU0Nv bnN0cnVjdAoraW5kZXggOTUwYTUyODkuLjc2M2YyZTM2IDEwMDY0NAorLS0tIFNDb25zdHJ1Y3QK KysrKyBTQ29uc3RydWN0CitAQCAtMSw1ICsxLDQgQEAKKy1pbXBvcnQgb3MsIHN5cywgZXJybm8s IFNDb25zCistZnJvbSB0aW1lIGltcG9ydCBnbXRpbWUsIHN0cmZ0aW1lCisraW1wb3J0IG9zLCBz eXMsIHRpbWUsIGVycm5vLCBTQ29ucworIAorICMtLS0tLS0tLS0tLS0tLS0jCisgIyBCdWlsZCBP cHRpb25zICMKK0BAIC0zOTUsNyArMzk0LDcgQEAgZWxzZToKKyAjLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tIworICMgVmVyc2lvbiwgZGVidWcvcmVsZWFzZSAjCisgIy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSMKKy12ZXJzaW9uID0gc3RyZnRpbWUoIiVZLSVtLSVkIikKKyt2ZXJzaW9uID0gdGlt ZS5zdHJmdGltZSgiJVktJW0tJWQiLCB0aW1lLmdtdGltZShpbnQob3MuZW52aXJvbi5nZXQoJ1NP VVJDRV9EQVRFX0VQT0NIJywgdGltZS50aW1lKCkpKSkpCisgYnVpbGRfZGlyID0gJ2J1aWxkJwor IGlmIGVudlsncmVsZWFzZSddOgorICAgICAjIHJlbGVhc2UgYnVpbGQsIGRlYnVnZ2luZyBvZmYs IG9wdGltaXphdGlvbnMgb24KKy0tIAorMi4yOS4wLnJjMQorCmRpZmYgLS1naXQgYS9zcmNwa2dz L3ZkcmlmdC9wYXRjaGVzLzAwMDItU2NvbnMtcHl0aG9uLTMtZml4ZXMucGF0Y2ggYi9zcmNwa2dz L3ZkcmlmdC9wYXRjaGVzLzAwMDItU2NvbnMtcHl0aG9uLTMtZml4ZXMucGF0Y2gKbmV3IGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmJkMzIzOTk4MzZlCi0tLSAvZGV2L251bGwK KysrIGIvc3JjcGtncy92ZHJpZnQvcGF0Y2hlcy8wMDAyLVNjb25zLXB5dGhvbi0zLWZpeGVzLnBh dGNoCkBAIC0wLDAgKzEsNjUgQEAKK0Zyb20gYjVhZjM4MDg2YmNiOTcyZjZmNDU0ZjY1MjgxMTIx Y2NhOWQwZWQ5MyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IGxvZ3plcm8gPGNvcmUx M0BnbXgubmV0PgorRGF0ZTogVGh1LCAzMCBKdWwgMjAyMCAxOTowMToxMyArMDIwMAorU3ViamVj dDogW1BBVENIIDIvM10gU2NvbnMgcHl0aG9uIDMgZml4ZXMuCisKKy0tLQorIFNDb25zdHJ1Y3Qg ICAgIHwgMTAgKysrKystLS0tLQorIHNyYy9TQ29uc2NyaXB0IHwgIDIgKy0KKyAyIGZpbGVzIGNo YW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBTQ29u c3RydWN0IFNDb25zdHJ1Y3QKK2luZGV4IDc2M2YyZTM2Li5mMjBlMTc0NSAxMDA2NDQKKy0tLSBT Q29uc3RydWN0CisrKysgU0NvbnN0cnVjdAorQEAgLTkxLDkgKzkxLDkgQEAgZWxpZiBzeXMucGxh dGZvcm0gPT0gJ2Rhcndpbic6CisgCisgICAgIGZvciBhIGluIGVudlsndW5pdmVyc2FsJ106Cisg ICAgICAgICBpZiBub3Qgc2RrX3BhdGg6CistICAgICAgICAgICAgcHJpbnQgJ0J1aWxkaW5nIGEg dW5pdmVyc2FsIGJpbmFyeSByZXF1aXJlIGFjY2VzcyB0byBhbiAnICsgXAorKyAgICAgICAgICAg IHByaW50KCdCdWlsZGluZyBhIHVuaXZlcnNhbCBiaW5hcnkgcmVxdWlyZSBhY2Nlc3MgdG8gYW4g JyArIFwKKyAgICAgICAgICAgICAgICAgJ1NESyB0aGF0IGhhcyB1bml2ZXJzYWwgXG5iaW5hcnkg c3VwcG9ydC5JZiB5b3Uga25vdyAnICsgXAorLSAgICAgICAgICAgICAgICAndGhlIGxvY2F0aW9u IG9mIHN1Y2ggYW4gU0RLLCBzcGVjaWZ5IGl0IHVzaW5nIHRoZSBcbiJTREsiIG9wdGlvbicKKysg ICAgICAgICAgICAgICAgJ3RoZSBsb2NhdGlvbiBvZiBzdWNoIGFuIFNESywgc3BlY2lmeSBpdCB1 c2luZyB0aGUgXG4iU0RLIiBvcHRpb24nKQorICAgICAgICAgICAgIEV4aXQoMSkKKyAgICAgICAg IGVudi5BcHBlbmQoIENDRkxBR1MgPSBbJy1hcmNoJywgYV0sICBMSU5LRkxBR1MgPSBbJy1hcmNo JywgYV0gKQorIAorQEAgLTIzMSw3ICsyMzEsNyBAQCBkZWYgZGlzdGNvcHkgKHRhcmdldCwgc291 cmNlLCBlbnYpOgorIGRlZiB0YXJiYWxsZXIgKHRhcmdldCwgc291cmNlLCBlbnYpOiAgICAgICAg ICAgIAorICAgICBjbWQgPSAndGFyIC1qY2YgIiVzIiAtQyAiJXMiIC4nICAlICggc3RyKHRhcmdl dFswXSksIHN0cihzb3VyY2VbMF0pICkKKyAgICAgI2NtZCA9ICd0YXIgLWpjZiAnICsgc3RyICh0 YXJnZXRbMF0pICsgICcgJyArIHN0cihzb3VyY2VbMF0pICsgIiAgLS1leGNsdWRlICcqficgIgor LSAgICBwcmludCAncnVubmluZyAnLCBjbWQsICcgLi4uICcKKysgICAgcHJpbnQoJ3J1bm5pbmcg JywgY21kLCAnIC4uLiAnKQorICAgICBwID0gb3MucG9wZW4gKGNtZCkKKyAgICAgcmV0dXJuIHAu Y2xvc2UgKCkKKyAKK0BAIC0zNjEsMTEgKzM2MSwxMSBAQCBlbnYuUGFyc2VDb25maWcoJ3BrZy1j b25maWcgYnVsbGV0IC0tbGlicyAtLWNmbGFncycpCisgY29uZiA9IENvbmZpZ3VyZShlbnYpCisg Zm9yIGhlYWRlciBpbiBjaGVja19oZWFkZXJzOgorICAgICBpZiBub3QgY29uZi5DaGVja0NYWEhl YWRlcihoZWFkZXIpOgorLSAgICAgICAgcHJpbnQgJ1lvdSBkbyBub3QgaGF2ZSB0aGUgJXMgaGVh ZGVycyBpbnN0YWxsZWQuIEV4aXRpbmcuJyAlIGhlYWRlcgorKyAgICAgICAgcHJpbnQoJ1lvdSBk byBub3QgaGF2ZSB0aGUgJXMgaGVhZGVycyBpbnN0YWxsZWQuIEV4aXRpbmcuJyAlIGhlYWRlcikK KyAgICAgICAgIEV4aXQoMSkKKyBmb3IgbGliIGluIGNoZWNrX2xpYnM6CisgICAgIGlmIG5vdCBj b25mLkNoZWNrTGliV2l0aEhlYWRlcihsaWJbMF0sIGxpYlsxXSwgJ0MnLCBsaWJbMl0pOgorLSAg ICAgICAgcHJpbnQgbGliWzNdCisrICAgICAgICBwcmludChsaWJbM10pCisgICAgICAgICBFeGl0 KDEpCisgCisgZW52ID0gY29uZi5GaW5pc2goKQorZGlmZiAtLWdpdCBzcmMvU0NvbnNjcmlwdCBz cmMvU0NvbnNjcmlwdAoraW5kZXggYzk4MGEyZTYuLjY3Y2VjZWJkIDEwMDY0NAorLS0tIHNyYy9T Q29uc2NyaXB0CisrKysgc3JjL1NDb25zY3JpcHQKK0BAIC0xNTEsNyArMTUxLDcgQEAgc3JjID0g U3BsaXQoIiIiCisgCQl1dGlscy5jcHAKKyAJCXdpbmRvdy5jcHAiIiIpCisgCistc3JjLnNvcnQo bGFtYmRhIHgsIHk6IGNtcCh4Lmxvd2VyKCkseS5sb3dlcigpKSkKKytzcmMuc29ydChrZXkgPSBz dHIubG93ZXIpCisgCisgIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSMKKyAjIENvcHkgQnVpbGQg RW52aXJvbm1lbnQgIworLS0gCisyLjI5LjAucmMxCisKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdmRy aWZ0L3BhdGNoZXMvMDAwMy1TQ29uc3RydWN0LVB5dGhvbi0zLWZpeC5wYXRjaCBiL3NyY3BrZ3Mv dmRyaWZ0L3BhdGNoZXMvMDAwMy1TQ29uc3RydWN0LVB5dGhvbi0zLWZpeC5wYXRjaApuZXcgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uMmUxZWEzNzg1NmMKLS0tIC9kZXYvbnVs bAorKysgYi9zcmNwa2dzL3ZkcmlmdC9wYXRjaGVzLzAwMDMtU0NvbnN0cnVjdC1QeXRob24tMy1m aXgucGF0Y2gKQEAgLTAsMCArMSwzMiBAQAorRnJvbSBkMDUyOTI3NWNmNzBhYTYwYjc5NDJmMDMw NjIxNzkxM2RmNmJmNTNlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogTWF0dGhpYXMg Q29wcGVucyA8Y29wcGVucy5tYXR0aGlhcy5hYmNAZ21haWwuY29tPgorRGF0ZTogV2VkLCAyNiBB dWcgMjAyMCAxNDoyNDozNiArMDIwMAorU3ViamVjdDogW1BBVENIIDMvM10gU0NvbnN0cnVjdCBQ eXRob24gMyBmaXgKKworYGRpY3QuaGFzX2tleWAgaXMgcmVtb3ZlZCBpbiBQeXRob24gMy5YLCB1 c2UgYGluYCBpbnN0ZWFkLgorLS0tCisgU0NvbnN0cnVjdCB8IDYgKysrLS0tCisgMSBmaWxlIGNo YW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBTQ29u c3RydWN0IFNDb25zdHJ1Y3QKK2luZGV4IGYyMGUxNzQ1Li4wZTdmMDJlOSAxMDA2NDQKKy0tLSBT Q29uc3RydWN0CisrKysgU0NvbnN0cnVjdAorQEAgLTE0MCwxMSArMTQwLDExIEBAIGVsc2U6Cisg ICAgICAgICBDQyA9ICdnY2MnLCBDWFggPSAnZysrJywKKyAgICAgICAgIG9wdGlvbnMgPSBvcHRz KQorICAgICAjIFRha2UgZW52aXJvbm1lbnQgdmFyaWFibGVzIGludG8gYWNjb3VudAorLSAgICBp ZiBvcy5lbnZpcm9uLmhhc19rZXkoJ0NYWCcpOgorKyAgICBpZiAnQ1hYJyBpbiBvcy5lbnZpcm9u OgorICAgICAgICAgZW52WydDWFgnXSA9IG9zLmVudmlyb25bJ0NYWCddCistICAgIGlmIG9zLmVu dmlyb24uaGFzX2tleSgnQ1hYRkxBR1MnKToKKysgICAgaWYgJ0NYWEZMQUdTJyBpbiBvcy5lbnZp cm9uOgorICAgICAgICAgZW52WydDWFhGTEFHUyddICs9IFNDb25zLlV0aWwuQ0xWYXIob3MuZW52 aXJvblsnQ1hYRkxBR1MnXSkKKy0gICAgaWYgb3MuZW52aXJvbi5oYXNfa2V5KCdMREZMQUdTJyk6 CisrICAgIGlmICdMREZMQUdTJyBpbiBvcy5lbnZpcm9uOgorICAgICAgICAgZW52WydMSU5LRkxB R1MnXSArPSBTQ29ucy5VdGlsLkNMVmFyKG9zLmVudmlyb25bJ0xERkxBR1MnXSkKKyAgICAgY2hl Y2tfaGVhZGVycyA9IFsnR0wvZ2wuaCcsICdTREwyL1NETC5oJywgJ1NETDIvU0RMX2ltYWdlLmgn LCAndm9yYmlzL3ZvcmJpc2ZpbGUuaCcsICdjdXJsL2N1cmwuaCcsICdidWxsZXQvYnRCdWxsZXRD b2xsaXNpb25Db21tb24uaCcsICdidWxsZXQvYnRCdWxsZXREeW5hbWljc0NvbW1vbi5oJ10KKyAg ICAgY2hlY2tfbGlicyA9IFtdCistLSAKKzIuMjkuMC5yYzEKKwpkaWZmIC0tZ2l0IGEvc3JjcGtn cy92ZHJpZnQvdGVtcGxhdGUgYi9zcmNwa2dzL3ZkcmlmdC90ZW1wbGF0ZQppbmRleCAyOTAyODg2 OTZmNi4uNTY3NGY5NTFhODggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvdmRyaWZ0L3RlbXBsYXRlCisr KyBiL3NyY3BrZ3MvdmRyaWZ0L3RlbXBsYXRlCkBAIC0xLDE1ICsxLDE1IEBACiAjIFRlbXBsYXRl IGZpbGUgZm9yICd2ZHJpZnQnCiBwa2duYW1lPXZkcmlmdAogdmVyc2lvbj0yMDE0LjEwLjIwCi1y ZXZpc2lvbj05CityZXZpc2lvbj0xMAogd3Jrc3JjPSIkcGtnbmFtZSIKIGJ1aWxkX3N0eWxlPXNj b25zCiBtYWtlX2J1aWxkX2FyZ3M9InJlbGVhc2U9MSBmb3JjZV9mZWVkYmFjaz0xIGV4dGJ1bGxl dD0xIGRhdGFkaXI9c2hhcmUvJHtwa2duYW1lfSIKIG1ha2VfaW5zdGFsbF9hcmdzPSIkbWFrZV9i dWlsZF9hcmdzIgogaG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0IHBrZy1jb25maWciCi1tYWtlZGVw ZW5kcz0iYXNpbyBsaWJjdXJsLWRldmVsIGJ1bGxldC1kZXZlbCBTREwyX2ltYWdlLWRldmVsIGds ZXctZGV2ZWwKK21ha2VkZXBlbmRzPSJsaWJjdXJsLWRldmVsIGJ1bGxldC1kZXZlbCBTREwyX2lt YWdlLWRldmVsIGdsZXctZGV2ZWwKICBsaWJ2b3JiaXMtZGV2ZWwgbGliYXJjaGl2ZS1kZXZlbCBN ZXNhTGliLWRldmVsIgotZGVwZW5kcz0idmRyaWZ0LWRhdGEtJHt2ZXJzaW9ufV8ke3JldmlzaW9u fSIKK2RlcGVuZHM9ImRlc2t0b3AtZmlsZS11dGlscyB2ZHJpZnQtZGF0YS0ke3ZlcnNpb259XyR7 cmV2aXNpb259Igogc2hvcnRfZGVzYz0iT3BlbiBzb3VyY2UgZHJpdmluZyBzaW11bGF0aW9uIG1h ZGUgd2l0aCBkcmlmdCByYWNpbmcgaW4gbWluZCIKIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBo YW5Adm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgpAQCAtMzUsNyAr MzUsNiBAQCBwb3N0X2luc3RhbGwoKSB7CiAKIHZkcmlmdC1kYXRhX3BhY2thZ2UoKSB7CiAJc2hv cnRfZGVzYys9IiAtIGRhdGEgZmlsZXMiCi0JYXJjaHM9bm9hcmNoCiAJcGtnX2luc3RhbGwoKSB7 CiAJCXZtb3ZlIHVzci9zaGFyZS92ZHJpZnQKIAl9CgpGcm9tIDZiMGQyYTNjMzM5Y2M2ZmFiOWZl MjgyNTBkMWU0NDllOTM3ZDk3OGMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRG LTg/cT89QzQ9OTBvPUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0yMEM9QzM9QjRuZz0yMERhbmg/PQog PGNvbmdkYW5ocXhAZ21haWwuY29tPgpEYXRlOiBNb24sIDE5IE9jdCAyMDIwIDIzOjExOjM3ICsw NzAwClN1YmplY3Q6IFtQQVRDSCAwNC8xMV0gZmNldXg6IHBhdGNoIGZvciBweXRob24zLXNjb25z CgotLS0KIHNyY3BrZ3MvZmNldXgvcGF0Y2hlcy9zY29ucy1weXRob24tMy5wYXRjaCB8IDExMSAr KysrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvZmNldXgvdGVtcGxhdGUgICAgICAgICAgICAg ICAgICAgICB8ICAgMiArLQogMiBmaWxlcyBjaGFuZ2VkLCAxMTIgaW5zZXJ0aW9ucygrKSwgMSBk ZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvZmNldXgvcGF0Y2hlcy9zY29u cy1weXRob24tMy5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZmNldXgvcGF0Y2hlcy9zY29u cy1weXRob24tMy5wYXRjaCBiL3NyY3BrZ3MvZmNldXgvcGF0Y2hlcy9zY29ucy1weXRob24tMy5w YXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uYjQ4MDVlOTMzMDkK LS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2ZjZXV4L3BhdGNoZXMvc2NvbnMtcHl0aG9uLTMu cGF0Y2gKQEAgLTAsMCArMSwxMTEgQEAKKyBiYWNrcG9ydGVkIGZyb20gODc4MjQ1ZmUgQWx0ZXJl ZCBTQ29ucyBidWlsZCBzY3JpcHRzIHRvIHdvcmsgd2l0aCBQeXRob24gMy4KK2RpZmYgLS1naXQg U0NvbnN0cnVjdCBTQ29uc3RydWN0CistLS0gU0NvbnN0cnVjdAorKysrIFNDb25zdHJ1Y3QKK0BA IC00NywzMCArNDcsMzAgQEAgaWYgcGxhdGZvcm0uc3lzdGVtID09ICJwcGMiOgorICMgRGVmYXVs dCBjb21waWxlciBmbGFnczoKKyBlbnYuQXBwZW5kKENDRkxBR1MgPSBbJy1XYWxsJywgJy1Xbm8t d3JpdGUtc3RyaW5ncycsICctV25vLXNpZ24tY29tcGFyZSddKQorIAorLWlmIG9zLmVudmlyb24u aGFzX2tleSgnUExBVEZPUk0nKToKKytpZiAnUExBVEZPUk0nIGluIG9zLmVudmlyb246CisgICBl bnYuUmVwbGFjZShQTEFURk9STSA9IG9zLmVudmlyb25bJ1BMQVRGT1JNJ10pCistaWYgb3MuZW52 aXJvbi5oYXNfa2V5KCdDQycpOgorK2lmICdDQycgaW4gb3MuZW52aXJvbjoKKyAgIGVudi5SZXBs YWNlKENDID0gb3MuZW52aXJvblsnQ0MnXSkKKy1pZiBvcy5lbnZpcm9uLmhhc19rZXkoJ0NYWCcp OgorK2lmICdDWFgnIGluIG9zLmVudmlyb246CisgICBlbnYuUmVwbGFjZShDWFggPSBvcy5lbnZp cm9uWydDWFgnXSkKKy1pZiBvcy5lbnZpcm9uLmhhc19rZXkoJ1dJTkRSRVMnKToKKytpZiAnV0lO RFJFUycgaW4gb3MuZW52aXJvbjoKKyAgIGVudi5SZXBsYWNlKFdJTkRSRVMgPSBvcy5lbnZpcm9u WydXSU5EUkVTJ10pCistaWYgb3MuZW52aXJvbi5oYXNfa2V5KCdDRkxBR1MnKToKKytpZiAnQ0ZM QUdTJyBpbiBvcy5lbnZpcm9uOgorICAgZW52LkFwcGVuZChDQ0ZMQUdTID0gb3MuZW52aXJvblsn Q0ZMQUdTJ10uc3BsaXQoKSkKKy1pZiBvcy5lbnZpcm9uLmhhc19rZXkoJ0NYWEZMQUdTJyk6Cisr aWYgJ0NYWEZMQUdTJyBpbiBvcy5lbnZpcm9uOgorICAgZW52LkFwcGVuZChDWFhGTEFHUyA9IG9z LmVudmlyb25bJ0NYWEZMQUdTJ10uc3BsaXQoKSkKKy1pZiBvcy5lbnZpcm9uLmhhc19rZXkoJ0NQ UEZMQUdTJyk6CisraWYgJ0NQUEZMQUdTJyBpbiBvcy5lbnZpcm9uOgorICAgZW52LkFwcGVuZChD UFBGTEFHUyA9IG9zLmVudmlyb25bJ0NQUEZMQUdTJ10uc3BsaXQoKSkKKy1pZiBvcy5lbnZpcm9u Lmhhc19rZXkoJ0xERkxBR1MnKToKKytpZiAnTERGTEFHUycgaW4gb3MuZW52aXJvbjoKKyAgIGVu di5BcHBlbmQoTElOS0ZMQUdTID0gb3MuZW52aXJvblsnTERGTEFHUyddLnNwbGl0KCkpCistaWYg b3MuZW52aXJvbi5oYXNfa2V5KCdQS0dfQ09ORklHX1BBVEgnKToKKytpZiAnUEtHX0NPTkZJR19Q QVRIJyBpbiBvcy5lbnZpcm9uOgorICAgZW52WydFTlYnXVsnUEtHX0NPTkZJR19QQVRIJ10gPSBv cy5lbnZpcm9uWydQS0dfQ09ORklHX1BBVEgnXQorLWlmIG5vdCBvcy5lbnZpcm9uLmhhc19rZXko J1BLR19DT05GSUdfUEFUSCcpIGFuZCBlbnZbJ1BMQVRGT1JNJ10gPT0gJ2Rhcndpbic6CisraWYg J1BLR19DT05GSUdfUEFUSCcgbm90IGluIG9zLmVudmlyb24gYW5kIGVudlsnUExBVEZPUk0nXSA9 PSAnZGFyd2luJzoKKyAgIGVudlsnRU5WJ11bJ1BLR19DT05GSUdfUEFUSCddID0gIi91c3IvbG9j YWwvbGliL3BrZ2NvbmZpZzovb3B0L1gxMS9saWIvcGtnY29uZmlnIgorLWlmIG9zLmVudmlyb24u aGFzX2tleSgnUEtHX0NPTkZJR19MSUJESVInKToKKytpZiAnUEtHX0NPTkZJR19MSUJESVInIGlu IG9zLmVudmlyb246CisgICBlbnZbJ0VOViddWydQS0dfQ09ORklHX0xJQkRJUiddID0gb3MuZW52 aXJvblsnUEtHX0NPTkZJR19MSUJESVInXQorIAorLXByaW50ICJwbGF0Zm9ybTogIiwgZW52WydQ TEFURk9STSddCisrcHJpbnQoInBsYXRmb3JtOiAiLCBlbnZbJ1BMQVRGT1JNJ10pCisgCisgIyBj b21waWxlIHdpdGggY2xhbmcKKyBpZiBlbnZbJ0NMQU5HJ106CitAQCAtMTA0LDE4ICsxMDQsMTgg QEAgZWxzZToKKyAgICAgYXNzZXJ0IGNvbmYuQ2hlY2tMaWJXaXRoSGVhZGVyKCd6JywgJ3psaWIu aCcsICdjJywgJ2luZmxhdGU7JywgMSksICJwbGVhc2UgaW5zdGFsbDogemxpYiIKKyAgIGlmIGVu dlsnU0RMMiddOgorICAgICBpZiBub3QgY29uZi5DaGVja0xpYignU0RMMicpOgorLSAgICAgIHBy aW50ICdEaWQgbm90IGZpbmQgbGliU0RMMiBvciBTREwyLmxpYiwgZXhpdGluZyEnCisrICAgICAg cHJpbnQoJ0RpZCBub3QgZmluZCBsaWJTREwyIG9yIFNETDIubGliLCBleGl0aW5nIScpCisgICAg ICAgRXhpdCgxKQorICAgICBlbnYuQXBwZW5kKENQUERFRklORVM9WyJfU0RMMiJdKQorICAgICBl bnYuUGFyc2VDb25maWcoJ3BrZy1jb25maWcgc2RsMiAtLWNmbGFncyAtLWxpYnMnKQorICAgZWxz ZToKKyAgICAgaWYgbm90IGNvbmYuQ2hlY2tMaWIoJ1NETCcpOgorLSAgICAgIHByaW50ICdEaWQg bm90IGZpbmQgbGliU0RMIG9yIFNETC5saWIsIGV4aXRpbmchJworKyAgICAgIHByaW50KCdEaWQg bm90IGZpbmQgbGliU0RMIG9yIFNETC5saWIsIGV4aXRpbmchJykKKyAgICAgICBFeGl0KDEpCisg ICAgIGVudi5QYXJzZUNvbmZpZygnc2RsLWNvbmZpZyAtLWNmbGFncyAtLWxpYnMnKQorICAgaWYg ZW52WydHVEsnXToKKyAgICAgaWYgbm90IGNvbmYuQ2hlY2tMaWIoJ2d0ay14MTEtMi4wJyk6Cist ICAgICAgcHJpbnQgJ0NvdWxkIG5vdCBmaW5kIGxpYmd0ay0yLjAsIGV4aXRpbmchJworKyAgICAg IHByaW50KCdDb3VsZCBub3QgZmluZCBsaWJndGstMi4wLCBleGl0aW5nIScpCisgICAgICAgRXhp dCgxKQorICAgICAjIEFkZCBjb21waWxlciBhbmQgbGlua2VyIGZsYWdzIGZyb20gcGtnLWNvbmZp ZworICAgICBjb25maWdfc3RyaW5nID0gJ3BrZy1jb25maWcgLS1jZmxhZ3MgLS1saWJzIGd0ayst Mi4wJworQEAgLTE1NCw3ICsxNTQsNyBAQCBlbHNlOgorICAgICAgICAgZW52LkFwcGVuZChDQ0ZM QUdTID0gWyItSS91c3IvaW5jbHVkZS9sdWEiXSkKKyAgICAgICAgIGx1YV9hdmFpbGFibGUgPSBU cnVlCisgICAgICAgaWYgbHVhX2F2YWlsYWJsZSA9PSBGYWxzZToKKy0gICAgICAgIHByaW50ICdD b3VsZCBub3QgZmluZCBsaWJsdWEsIGV4aXRpbmchJworKyAgICAgICAgcHJpbnQgKCdDb3VsZCBu b3QgZmluZCBsaWJsdWEsIGV4aXRpbmchJykKKyAgICAgICAgIEV4aXQoMSkKKyAgICAgZWxzZToK KyAgICAgICBlbnYuQXBwZW5kKENDRkxBR1MgPSBbIi1Jc3JjL2x1YS9zcmMiXSkKK0BAIC0xNjgs NyArMTY4LDcgQEAgZWxzZToKKyAgICAgZ2QgPSBjb25mLkNoZWNrTGliKCdnZCcsIGF1dG9hZGQ9 MSkKKyAgICAgaWYgZ2QgPT0gMDoKKyAgICAgICBlbnZbJ0xPR08nXSA9IDAKKy0gICAgICBwcmlu dCAnRGlkIG5vdCBmaW5kIGxpYmdkLCB5b3Ugd29uXCd0IGJlIGFibGUgdG8gY3JlYXRlIGEgbG9n byBzY3JlZW4gZm9yIHlvdXIgYXZpcy4nCisrICAgICAgcHJpbnQoJ0RpZCBub3QgZmluZCBsaWJn ZCwgeW91IHdvblwndCBiZSBhYmxlIHRvIGNyZWF0ZSBhIGxvZ28gc2NyZWVuIGZvciB5b3VyIGF2 aXMuJykKKyAgICAKKyAgIGlmIGVudlsnT1BFTkdMJ10gYW5kIGNvbmYuQ2hlY2tMaWJXaXRoSGVh ZGVyKCdHTCcsICdHTC9nbC5oJywgJ2MnLCBhdXRvYWRkPTEpOgorICAgICBjb25mLmVudi5BcHBl bmQoQ0NGTEFHUyA9ICItRE9QRU5HTCIpCitAQCAtMTgyLDggKzE4Miw4IEBAIGlmIHN5cy5ieXRl b3JkZXIgPT0gJ2xpdHRsZScgb3IgZW52WydQTEFURk9STSddID09ICd3aW4zMic6CisgaWYgZW52 WydGUkFNRVNLSVAnXToKKyAgIGVudi5BcHBlbmQoQ1BQREVGSU5FUyA9IFsnRlJBTUVTS0lQJ10p CisgCistcHJpbnQgImJhc2UgQ1BQREVGSU5FUzoiLGVudlsnQ1BQREVGSU5FUyddCistcHJpbnQg ImJhc2UgQ0NGTEFHUzoiLGVudlsnQ0NGTEFHUyddCisrcHJpbnQoImJhc2UgQ1BQREVGSU5FUzoi LGVudlsnQ1BQREVGSU5FUyddKQorK3ByaW50KCJiYXNlIENDRkxBR1M6IixlbnZbJ0NDRkxBR1Mn XSkKKyAKKyBpZiBlbnZbJ0RFQlVHJ106CisgICBlbnYuQXBwZW5kKENQUERFRklORVM9WyJfREVC VUciXSwgQ0NGTEFHUyA9IFsnLWcnLCAnLU8wJ10pCitkaWZmIC0tZ2l0IHNyYy9TQ29uc2NyaXB0 IHNyYy9TQ29uc2NyaXB0CitpbmRleCA0NzEzZTE1Li4yMDAxMTQ2IDEwMDY0NAorLS0tIHNyYy9T Q29uc2NyaXB0CisrKysgc3JjL1NDb25zY3JpcHQKK0BAIC0zMyw3ICszMyw3IEBAIGVsc2U6Cisg ICBwbGF0Zm9ybV9maWxlcyA9IFNDb25zY3JpcHQoJ2RyaXZlcnMvc2RsL1NDb25zY3JpcHQnKQor IGZpbGVfbGlzdC5hcHBlbmQocGxhdGZvcm1fZmlsZXMpCisgCistcHJpbnQgZW52WydMSU5LRkxB R1MnXQorK3ByaW50KGVudlsnTElOS0ZMQUdTJ10pCisgCisgaWYgZW52WydQTEFURk9STSddID09 ICd3aW4zMic6CisgICBmY2V1eCA9IGVudi5Qcm9ncmFtKCdmY2V1eC5leGUnLCBmaWxlX2xpc3Qp CmRpZmYgLS1naXQgYS9zcmNwa2dzL2ZjZXV4L3RlbXBsYXRlIGIvc3JjcGtncy9mY2V1eC90ZW1w bGF0ZQppbmRleCA4YThjODdkNGZjNC4uOTc4YjA5N2E5MzMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mv ZmNldXgvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9mY2V1eC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2ZjZXV4JwogcGtnbmFtZT1mY2V1eAogdmVyc2lvbj0y LjIuMwotcmV2aXNpb249MgorcmV2aXNpb249MwogYnVpbGRfc3R5bGU9c2NvbnMKIG1ha2VfYnVp bGRfYXJncz0iU1lTVEVNX0xVQT0xIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIgoKRnJv bSA1NzU5YTUxMWQwYWMwODIxNTQyNjlhN2Y1MmJiYzY2YmFlZWE5OTg4IE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0PTkwbz1DMz1BMG49MjBUcj1FMT1CQT1BN249 MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTogTW9uLCAx OSBPY3QgMjAyMCAyMzozMDowNyArMDcwMApTdWJqZWN0OiBbUEFUQ0ggMDUvMTFdIG1peHh4OiBi dWlsZCB3aXRoIHNjb25zIChweXRob24gMykKCnNvdW5kdG91Y2gtZGV2ZWwgaXMgYWRkZWQgaW4g bWFrZWRlcGVuZHMsIG90aGVyd2lzZSwgZnRiZnMuCi0tLQogc3JjcGtncy9taXh4eC90ZW1wbGF0 ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL21peHh4L3RlbXBsYXRlIGIvc3JjcGtncy9taXh4eC90 ZW1wbGF0ZQppbmRleCBiZDVhNjhiYWM5OC4uYzFjMGJiYjMxY2MgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvbWl4eHgvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9taXh4eC90ZW1wbGF0ZQpAQCAtMSw3ICsx LDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ21peHh4JwogcGtnbmFtZT1taXh4eAogdmVyc2lv bj0yLjIuNAotcmV2aXNpb249NAorcmV2aXNpb249NQogd3Jrc3JjPSJtaXh4eC1yZWxlYXNlLSR7 dmVyc2lvbn0iCiBidWlsZF9zdHlsZT1zY29ucwogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmln IHByb3RvYnVmIgpAQCAtMTAsNyArMTAsNyBAQCBtYWtlZGVwZW5kcz0iY2hyb21hcHJpbnQtZGV2 ZWwgZmFhZDItZGV2ZWwgZmZtcGVnLWRldmVsIGZmdHctZGV2ZWwgZ2x1LWRldmVsCiAgb3B1c2Zp bGUtZGV2ZWwgcG9ydGF1ZGlvLWRldmVsIHBvcnRtaWRpLWRldmVsIHByb3RvYnVmLWRldmVsIHF0 NS1zY3JpcHQtZGV2ZWwKICBxdDUtc3ZnLWRldmVsIHF0NS14bWxwYXR0ZXJucy1kZXZlbCBydWJi ZXJiYW5kLWRldmVsIHRhZ2xpYi1kZXZlbCB1cG93ZXItZGV2ZWwKICB2YW1wLXBsdWdpbi1zZGst ZGV2ZWwgbHYyIGxpbHYtZGV2ZWwgcXQ1LXgxMWV4dHJhcy1kZXZlbCBoaWRhcGktZGV2ZWwKLSBs aWJ0aGVvcmEtZGV2ZWwgc3BlZXgtZGV2ZWwiCisgbGlidGhlb3JhLWRldmVsIHNwZWV4LWRldmVs IHNvdW5kdG91Y2gtZGV2ZWwiCiBkZXBlbmRzPSJxdDUtcGx1Z2luLXNxbGl0ZSIKIHNob3J0X2Rl c2M9Ik9wZW4gc291cmNlIGRpZ2l0YWwgREppbmcgc29mdHdhcmUgdGhhdCBhbGxvd3MgbWl4aW5n IG11c2ljIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIK CkZyb20gOTEwZDAxMGRlODgxM2NlYjY0OGRkMmVmYWVjZmE3ZDZlZGQ2ODU0ZiBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogPT9VVEYtOD9xPz1DND05MG89QzM9QTBuPTIwVHI9RTE9QkE9 QTduPTIwQz1DMz1CNG5nPTIwRGFuaD89CiA8Y29uZ2RhbmhxeEBnbWFpbC5jb20+CkRhdGU6IFR1 ZSwgMjAgT2N0IDIwMjAgMDA6MTg6MDkgKzA3MDAKU3ViamVjdDogW1BBVENIIDA2LzExXSBzZXJm OiBidWlsZCB3aXRoIHNjb25zLXB5dGhvbjMKCi0tLQogLi4uMTEwODMtZml4LWJ1aWxkaW5nLXdp dGgtc2NvbnMtMy4wLjAtLnBhdGNoIHwgMzEgKysrKysrKysrKysrKwogLi4ucHJpbnQtaW4tdGhl LXNjb25zLWZpbGUtdG8tdW5icmVhay1iLnBhdGNoIHwgMzEgKysrKysrKysrKysrKwogLi4uMy1N YWtlLXRoZS10ZXN0cy1ydW4td2l0aC1QeXRob24tMy54LnBhdGNoIHwgNDMgKysrKysrKysrKysr KysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCAxMDUgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUg MTAwNjQ0IHNyY3BrZ3Mvc2VyZi9wYXRjaGVzLzAwMDEtRm9sbG93LXVwLXRvLXIxODExMDgzLWZp eC1idWlsZGluZy13aXRoLXNjb25zLTMuMC4wLS5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNy Y3BrZ3Mvc2VyZi9wYXRjaGVzLzAwMDItRml4LXN5bnRheC1vZi1hLXByaW50LWluLXRoZS1zY29u cy1maWxlLXRvLXVuYnJlYWstYi5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvc2Vy Zi9wYXRjaGVzLzAwMDMtTWFrZS10aGUtdGVzdHMtcnVuLXdpdGgtUHl0aG9uLTMueC5wYXRjaAoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc2VyZi9wYXRjaGVzLzAwMDEtRm9sbG93LXVwLXRvLXIxODEx MDgzLWZpeC1idWlsZGluZy13aXRoLXNjb25zLTMuMC4wLS5wYXRjaCBiL3NyY3BrZ3Mvc2VyZi9w YXRjaGVzLzAwMDEtRm9sbG93LXVwLXRvLXIxODExMDgzLWZpeC1idWlsZGluZy13aXRoLXNjb25z LTMuMC4wLS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uYWNi ZTc1NWY1MzgKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3NlcmYvcGF0Y2hlcy8wMDAxLUZv bGxvdy11cC10by1yMTgxMTA4My1maXgtYnVpbGRpbmctd2l0aC1zY29ucy0zLjAuMC0ucGF0Y2gK QEAgLTAsMCArMSwzMSBAQAorRnJvbSA1YTczYjdjZTczNTBmMTlmZDVmOTA4ODAzYmUxMDRiMWRl ZDk3MzY2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogQW5kcmVhcyBTdGllZ2VyIDxh c3RpZWdlckBhcGFjaGUub3JnPgorRGF0ZTogV2VkLCA4IE5vdiAyMDE3IDE3OjA1OjI4ICswMDAw CitTdWJqZWN0OiBbUEFUQ0ggMS8zXSBGb2xsb3ctdXAgdG8gcjE4MTEwODMsIGZpeCBidWlsZGlu ZyB3aXRoIHNjb25zIDMuMC4wIGFuZAorIFB5dGhvbjMKKworKiBTQ29uc3RydWN0OiBBcHBlbmQg ZGVjb2RlKCd1dGYtOCkgdG8gRklMRS5nZXRfY29udGVudHMoKSB0byBhdm9pZAorICBUeXBlRXJy b3I6IGNhbm5vdCB1c2UgYSBzdHJpbmcgcGF0dGVybiBvbiBhIGJ5dGVzLWxpa2Ugb2JqZWN0CisK KworZ2l0LXN2bi1pZDogaHR0cHM6Ly9zdm4uYXBhY2hlLm9yZy9yZXBvcy9hc2Yvc2VyZi90cnVu a0AxODE0NjA0IDEzZjc5NTM1LTQ3YmItMDMxMC05OTU2LWZmYTQ1MGVkZWY2OAorLS0tCisgU0Nv bnN0cnVjdCB8IDIgKy0KKyAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRp b24oLSkKKworZGlmZiAtLWdpdCBTQ29uc3RydWN0IFNDb25zdHJ1Y3QKK2luZGV4IDQzNThhMjMu LjE3NjY4NzAgMTAwNjQ0CistLS0gU0NvbnN0cnVjdAorKysrIFNDb25zdHJ1Y3QKK0BAIC0xNjYs NyArMTY2LDcgQEAgZW52LkFwcGVuZChCVUlMREVSUyA9IHsKKyBtYXRjaCA9IHJlLnNlYXJjaCgn U0VSRl9NQUpPUl9WRVJTSU9OIChbMC05XSspLionCisgICAgICAgICAgICAgICAgICAgJ1NFUkZf TUlOT1JfVkVSU0lPTiAoWzAtOV0rKS4qJworICAgICAgICAgICAgICAgICAgICdTRVJGX1BBVENI X1ZFUlNJT04gKFswLTldKyknLAorLSAgICAgICAgICAgICAgICAgIGVudi5GaWxlKCdzZXJmLmgn KS5nZXRfY29udGVudHMoKSwKKysgICAgICAgICAgICAgICAgICBlbnYuRmlsZSgnc2VyZi5oJyku Z2V0X2NvbnRlbnRzKCkuZGVjb2RlKCd1dGYtOCcpLAorICAgICAgICAgICAgICAgICAgIHJlLkRP VEFMTCkKKyBNQUpPUiwgTUlOT1IsIFBBVENIID0gW2ludCh4KSBmb3IgeCBpbiBtYXRjaC5ncm91 cHMoKV0KKyBlbnYuQXBwZW5kKE1BSk9SPXN0cihNQUpPUikpCistLSAKKzIuMjkuMC5yYzEKKwpk aWZmIC0tZ2l0IGEvc3JjcGtncy9zZXJmL3BhdGNoZXMvMDAwMi1GaXgtc3ludGF4LW9mLWEtcHJp bnQtaW4tdGhlLXNjb25zLWZpbGUtdG8tdW5icmVhay1iLnBhdGNoIGIvc3JjcGtncy9zZXJmL3Bh dGNoZXMvMDAwMi1GaXgtc3ludGF4LW9mLWEtcHJpbnQtaW4tdGhlLXNjb25zLWZpbGUtdG8tdW5i cmVhay1iLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5jZDli NWUzYjAxYQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mvc2VyZi9wYXRjaGVzLzAwMDItRml4 LXN5bnRheC1vZi1hLXByaW50LWluLXRoZS1zY29ucy1maWxlLXRvLXVuYnJlYWstYi5wYXRjaApA QCAtMCwwICsxLDMxIEBACitGcm9tIDIxMmI3MDE0OWJjOTQzZGU3MTgwYWE4YzE4ZTFmOTJlMWNk NzZlYzcgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBCZXJ0IEh1aWpiZW4gPHJodWlq YmVuQGFwYWNoZS5vcmc+CitEYXRlOiBXZWQsIDQgT2N0IDIwMTcgMTQ6NTY6MjIgKzAwMDAKK1N1 YmplY3Q6IFtQQVRDSCAyLzNdIEZpeCBzeW50YXggb2YgYSBwcmludCgpIGluIHRoZSBzY29ucyBm aWxlIHRvIHVuYnJlYWsKKyBidWlsZGluZyB3aXRoIG1vc3QgcmVjZW50IHNjb25zIHZlcnNpb24u CisKKyogU0NvbnN0cnVjdAorICBVc2UgUHl0aG9uIDMuMCB2YWxpZCBzeW50YXggdG8gbWFrZSBT Y29ucyAzLjAuMCBoYXBweSBvbiBib3RoIHB5dGhvbiAzLjAKKyAgYW5kIDIuNy4KKworZ2l0LXN2 bi1pZDogaHR0cHM6Ly9zdm4uYXBhY2hlLm9yZy9yZXBvcy9hc2Yvc2VyZi90cnVua0AxODExMDgz IDEzZjc5NTM1LTQ3YmItMDMxMC05OTU2LWZmYTQ1MGVkZWY2OAorLS0tCisgU0NvbnN0cnVjdCB8 IDIgKy0KKyAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKKwor ZGlmZiAtLWdpdCBTQ29uc3RydWN0IFNDb25zdHJ1Y3QKK2luZGV4IDE3NjY4NzAuLmE3ZTE4ZGEg MTAwNjQ0CistLS0gU0NvbnN0cnVjdAorKysrIFNDb25zdHJ1Y3QKK0BAIC0xODMsNyArMTgzLDcg QEAgQ0FMTE9VVF9PS0FZID0gbm90IChlbnYuR2V0T3B0aW9uKCdjbGVhbicpIG9yIGVudi5HZXRP cHRpb24oJ2hlbHAnKSkKKyAKKyB1bmtub3duID0gb3B0cy5Vbmtub3duVmFyaWFibGVzKCkKKyBp ZiB1bmtub3duOgorLSAgcHJpbnQgJ1dhcm5pbmc6IFVzZWQgdW5rbm93biB2YXJpYWJsZXM6Jywg JywgJy5qb2luKHVua25vd24ua2V5cygpKQorKyAgcHJpbnQoJ1dhcm5pbmc6IFVzZWQgdW5rbm93 biB2YXJpYWJsZXM6JywgJywgJy5qb2luKHVua25vd24ua2V5cygpKSkKKyAKKyBhcHIgPSBzdHIo ZW52WydBUFInXSkKKyBhcHUgPSBzdHIoZW52WydBUFUnXSkKKy0tIAorMi4yOS4wLnJjMQorCmRp ZmYgLS1naXQgYS9zcmNwa2dzL3NlcmYvcGF0Y2hlcy8wMDAzLU1ha2UtdGhlLXRlc3RzLXJ1bi13 aXRoLVB5dGhvbi0zLngucGF0Y2ggYi9zcmNwa2dzL3NlcmYvcGF0Y2hlcy8wMDAzLU1ha2UtdGhl LXRlc3RzLXJ1bi13aXRoLVB5dGhvbi0zLngucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggMDAwMDAwMDAwMDAuLjNmNWNjODRlNTFjCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9z ZXJmL3BhdGNoZXMvMDAwMy1NYWtlLXRoZS10ZXN0cy1ydW4td2l0aC1QeXRob24tMy54LnBhdGNo CkBAIC0wLDAgKzEsNDMgQEAKK0Zyb20gYTAwZjdhYmQxNWE5MmFlNzc4MDZlZGNhNjIyN2VkMDlh YWUyYjcxMSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206ID0/VVRGLTg/cT9CcmFua289 MjA9QzQ9OENpYmVqPz0gPGJyYW5lQGFwYWNoZS5vcmc+CitEYXRlOiBTYXQsIDkgSnVuIDIwMTgg MDg6MTA6MTAgKzAwMDAKK1N1YmplY3Q6IFtQQVRDSCAzLzNdIE1ha2UgdGhlIHRlc3RzIHJ1biB3 aXRoIFB5dGhvbiAzLnguCisKKyogYnVpbGQvY2hlY2sucHk6IEFkZCBwYXJlbnRoZXNlcyBhcm91 bmQgJ3ByaW50JyBzdGF0ZW1lbnQgYXJndW1lbnRzCisgICBzbyB0aGF0IHRoZXkgd29yayB3aGVu ICdwcmludCcgaXMgYSBmdW5jdGlvbi4KKworZ2l0LXN2bi1pZDogaHR0cHM6Ly9zdm4uYXBhY2hl Lm9yZy9yZXBvcy9hc2Yvc2VyZi90cnVua0AxODMzMjIzIDEzZjc5NTM1LTQ3YmItMDMxMC05OTU2 LWZmYTQ1MGVkZWY2OAorLS0tCisgYnVpbGQvY2hlY2sucHkgfCAxMiArKysrKystLS0tLS0KKyAx IGZpbGUgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitkaWZmIC0t Z2l0IGJ1aWxkL2NoZWNrLnB5IGJ1aWxkL2NoZWNrLnB5CitpbmRleCAyZGFjYjRjLi4zNDFiYjNi IDEwMDc1NQorLS0tIGJ1aWxkL2NoZWNrLnB5CisrKysgYnVpbGQvY2hlY2sucHkKK0BAIC01Miwx NiArNTIsMTYgQEAgaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAKKyAgICMgRmluZCB0ZXN0 IHJlc3BvbnNlcyBhbmQgcnVuIHRoZW0gb25lIGJ5IG9uZQorICAgZm9yIGNhc2UgaW4gZ2xvYi5n bG9iKHRlc3RkaXIgKyAiL3Rlc3RjYXNlcy8qLnJlc3BvbnNlIik6CistICAgIHByaW50ICI9PSBU ZXN0aW5nICVzID09IiAlIChjYXNlKQorKyAgICBwcmludCgiPT0gVGVzdGluZyAlcyA9PSIgJSAo Y2FzZSkpCisgICAgIHRyeToKKyAgICAgICBzdWJwcm9jZXNzLmNoZWNrX2NhbGwoW1NFUkZfUkVT UE9OU0VfRVhFLCBjYXNlXSkKKy0gICAgZXhjZXB0IHN1YnByb2Nlc3MuQ2FsbGVkUHJvY2Vzc0Vy cm9yOgorLSAgICAgIHByaW50ICJFUlJPUjogdGVzdCBjYXNlICVzIGZhaWxlZCIgJSAoY2FzZSkK KysgICAgZXhjZXB0IHN1YnByb2Nlc3MuQ2FsbGVkUHJvY2Vzc0Vycm9yIGFzIHg6CisrICAgICAg cHJpbnQoIkVSUk9SOiB0ZXN0IGZhaWxlZCBpbiAnJXMnLCBleGl0IGNvZGU9JWQiICUgKHguY21k LCB4LnJldHVybmNvZGUpKQorICAgICAgIHN5cy5leGl0KDEpCisgCistICBwcmludCAiPT0gUnVu bmluZyB0aGUgdW5pdCB0ZXN0cyA9PSIKKysgIHByaW50KCI9PSBSdW5uaW5nIHRoZSB1bml0IHRl c3RzID09IikKKyAgIHRyeToKKyAgICAgc3VicHJvY2Vzcy5jaGVja19jYWxsKFRFU1RfQUxMX0VY RSkKKy0gIGV4Y2VwdCBzdWJwcm9jZXNzLkNhbGxlZFByb2Nlc3NFcnJvcjoKKy0gICAgcHJpbnQg IkVSUk9SOiB0ZXN0KHMpIGZhaWxlZCBpbiB0ZXN0X2FsbCIKKysgIGV4Y2VwdCBzdWJwcm9jZXNz LkNhbGxlZFByb2Nlc3NFcnJvciBhcyB4OgorKyAgICBwcmludCgiRVJST1I6IHRlc3QocykgZmFp bGVkIGluICclcycsIGV4aXQgY29kZT0lZCIgJSAoeC5jbWQsIHgucmV0dXJuY29kZSkpCisgICAg IHN5cy5leGl0KDEpCistLSAKKzIuMjkuMC5yYzEKKwoKRnJvbSBiNzliNzcxMWVjMDM2MzkzYjVh NGY4YTBhNGViNWRkNjM1MmUzNjc2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VU Ri04P3E/PUM0PTkwbz1DMz1BMG49MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0bmc9MjBEYW5oPz0K IDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMSBPY3QgMjAyMCAyMjowOTo1MSAr MDcwMApTdWJqZWN0OiBbUEFUQ0ggMDcvMTFdIHhib3hkcnY6IGNvbnZlcnQgdG8gUHl0aG9uIDMK CkNoZXJyeS1QaWNrZWQgZnJvbSB0aGVpciBzdGFibGUgYnJhbmNoLgotLS0KIC4uLi8wMDAxLVVw ZGF0ZS1TQ29uc3RydWN0LXRvLXB5dGhvbjMucGF0Y2ggICB8ICA3OSArKysrKysKIC4uLjAwMDMt VXBkYXRpbmctcHl0aG9uLWNvZGUtdG8tcHl0aG9uMy5wYXRjaCB8IDIzOCArKysrKysrKysrKysr KysrKysKIHNyY3BrZ3MveGJveGRydi90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgICB8ICAg NCArLQogMyBmaWxlcyBjaGFuZ2VkLCAzMTkgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkK IGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3hib3hkcnYvcGF0Y2hlcy8wMDAxLVVwZGF0ZS1T Q29uc3RydWN0LXRvLXB5dGhvbjMucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3hi b3hkcnYvcGF0Y2hlcy8wMDAzLVVwZGF0aW5nLXB5dGhvbi1jb2RlLXRvLXB5dGhvbjMucGF0Y2gK CmRpZmYgLS1naXQgYS9zcmNwa2dzL3hib3hkcnYvcGF0Y2hlcy8wMDAxLVVwZGF0ZS1TQ29uc3Ry dWN0LXRvLXB5dGhvbjMucGF0Y2ggYi9zcmNwa2dzL3hib3hkcnYvcGF0Y2hlcy8wMDAxLVVwZGF0 ZS1TQ29uc3RydWN0LXRvLXB5dGhvbjMucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg MDAwMDAwMDAwMDAuLmMzM2U5ZTFjOTA5Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy94Ym94 ZHJ2L3BhdGNoZXMvMDAwMS1VcGRhdGUtU0NvbnN0cnVjdC10by1weXRob24zLnBhdGNoCkBAIC0w LDAgKzEsNzkgQEAKK0Zyb20gMzlhMzM0ZmJjMDQ4MjYyNjQ1NWY0MTdlOTczMDhlNTJhYTg3NDZh NyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IEluZ28gUnVobmtlIDxncnVtYmVsQGdt YWlsLmNvbT4KK0RhdGU6IFN1biwgMjQgTm92IDIwMTkgMTg6MTY6MTYgKzAxMDAKK1N1YmplY3Q6 IFtQQVRDSCAxLzNdIFVwZGF0ZSBTQ29uc3RydWN0IHRvIHB5dGhvbjMKKworLS0tCisgU0NvbnN0 cnVjdCB8IDIwICsrKysrKysrKystLS0tLS0tLS0tCisgMSBmaWxlIGNoYW5nZWQsIDEwIGluc2Vy dGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IFNDb25zdHJ1Y3QgU0NvbnN0 cnVjdAoraW5kZXggNGNkNzk3MC4uNTRmYTExZiAxMDA2NDQKKy0tLSBTQ29uc3RydWN0CisrKysg U0NvbnN0cnVjdAorQEAgLTE1LDcgKzE1LDcgQEAgZGVmIGJ1aWxkX2RidXNfZ2x1ZSh0YXJnZXQs IHNvdXJjZSwgZW52KToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIi0tbW9kZT1nbGli LXNlcnZlciIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICItLXByZWZpeD0iICsgZW52 WydEQlVTX1BSRUZJWCddLCBzb3VyY2VbMF0uZ2V0X3BhdGgoKV0sCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgc3Rkb3V0PXN1YnByb2Nlc3MuUElQRSkuY29tbXVuaWNhdGUoKVswXQorLQor KyAgICB4bWwgPSB4bWwuZGVjb2RlKCkKKyAgICAgeG1sID0gcmUuc3ViKHIiY2FsbGJhY2sgPSBc KChbQS1aYS16X10rKVwpIFwobWFyc2hhbF9kYXRhIFw/IG1hcnNoYWxfZGF0YSA6IGNjLT5jYWxs YmFja1wpOyIsCisgICAgICAgICAgICAgICAgICByInVuaW9uIHsgXDEgZm47IHZvaWQqIG9iajsg fSBjb252O1xuICAiCisgICAgICAgICAgICAgICAgICAiY29udi5vYmogPSAobWFyc2hhbF9kYXRh ID8gbWFyc2hhbF9kYXRhIDogY2MtPmNhbGxiYWNrKTtcbiAgIgorQEAgLTI5LDE0ICsyOSwxNCBA QCBkZWYgYnVpbGRfYmluMmgodGFyZ2V0LCBzb3VyY2UsIGVudik6CisgICAgIFRha2VzIGEgbGlz dCBvZiBmaWxlcyBhbmQgY29udmVydHMgdGhlbSBpbnRvIGEgQyBzb3VyY2UgdGhhdCBjYW4gYmUg aW5jbHVkZWQKKyAgICAgIiIiCisgICAgIGRlZiBjX2VzY2FwZShzdHIpOiAKKy0gICAgICAgIHJl dHVybiBzdHIudHJhbnNsYXRlKHN0cmluZy5tYWtldHJhbnMoIi8uLSIsICJfX18iKSkKKysgICAg ICAgIHJldHVybiBzdHIudHJhbnNsYXRlKHN0ci5tYWtldHJhbnMoIi8uLSIsICJfX18iKSkKKyAg ICAgCistICAgIHByaW50IHRhcmdldAorLSAgICBwcmludCBzb3VyY2UKKysgICAgcHJpbnQodGFy Z2V0KQorKyAgICBwcmludChzb3VyY2UpCisgICAgIHdpdGggb3Blbih0YXJnZXRbMF0uZ2V0X3Bh dGgoKSwgInciKSBhcyBmb3V0OgorICAgICAgICAgZm91dC53cml0ZSgiLy8gYXV0b2dlbmVyYXRl ZCBieSBzY29ucyBCaW4ySCBidWlsZGVyLCBkbyBub3QgZWRpdCBieSBoYW5kIVxuXG4iKQorIAor LSAgICAgICAgaWYgZW52Lmhhc19rZXkoIkJJTjJIX05BTUVTUEFDRSIpOgorKyAgICAgICAgaWYg IkJJTjJIX05BTUVTUEFDRSIgaW4gZW52OgorICAgICAgICAgICAgIGZvdXQud3JpdGUoIm5hbWVz cGFjZSAlcyB7XG5cbiIgJSBlbnZbIkJJTjJIX05BTUVTUEFDRSJdKQorICAgICAgICAgICAgIAor ICAgICAgICAgIyB3cml0ZSBkb3duIGRhdGEKK0BAIC00NSw4ICs0NSw4IEBAIGRlZiBidWlsZF9i aW4yaCh0YXJnZXQsIHNvdXJjZSwgZW52KToKKyAgICAgICAgICAgICAgICAgZGF0YSA9IGZpbi5y ZWFkKCkKKyAgICAgICAgICAgICAgICAgZm91dC53cml0ZSgiLy8gXCIlc1wiXG4iICUgc3JjLmdl dF9wYXRoKCkpCisgICAgICAgICAgICAgICAgIGZvdXQud3JpdGUoImNvbnN0IGNoYXIgJXNbXSA9 IHsiICUgY19lc2NhcGUoc3JjLmdldF9wYXRoKCkpKQorLSAgICAgICAgICAgICAgICBieXRlc19h cnIgPSBbIjB4JTAyeCIgJSBvcmQoYykgZm9yIGMgaW4gZGF0YV0KKy0gICAgICAgICAgICAgICAg Zm9yIGkgaW4geHJhbmdlKGxlbihieXRlc19hcnIpKToKKysgICAgICAgICAgICAgICAgYnl0ZXNf YXJyID0gWyIweCUwMngiICUgYyBmb3IgYyBpbiBkYXRhXQorKyAgICAgICAgICAgICAgICBmb3Ig aSBpbiByYW5nZShsZW4oYnl0ZXNfYXJyKSk6CisgICAgICAgICAgICAgICAgICAgICBpZiBpICUg MTMgPT0gMDoKKyAgICAgICAgICAgICAgICAgICAgICAgICBmb3V0LndyaXRlKCJcbiAgIikKKyAg ICAgICAgICAgICAgICAgICAgIGZvdXQud3JpdGUoYnl0ZXNfYXJyW2ldKQorQEAgLTYyLDcgKzYy LDcgQEAgZGVmIGJ1aWxkX2JpbjJoKHRhcmdldCwgc291cmNlLCBlbnYpOgorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBzcmMgaW4gc291cmNlXSwgIixcbiIpKQorICAg ICAgICAgICAgIGZvdXQud3JpdGUoIlxufVxuXG4iKQorIAorLSAgICAgICAgaWYgZW52Lmhhc19r ZXkoIkJJTjJIX05BTUVTUEFDRSIpOgorKyAgICAgICAgaWYgIkJJTjJIX05BTUVTUEFDRSIgaW4g ZW52OgorICAgICAgICAgICAgIGZvdXQud3JpdGUoIn0gLy8gbmFtZXNwYWNlICVzXG5cbiIgJSBl bnZbIkJJTjJIX05BTUVTUEFDRSJdKQorICAgICAgICAgICAgICAgICAKKyAgICAgICAgIGZvdXQu d3JpdGUoIi8qIEVPRiAqL1xuIikKK0BAIC0xMzEsMTIgKzEzMSwxMiBAQCBlbnYuQXBwZW5kKENQ UERFRklORVMgPSB7ICdQQUNLQUdFX1ZFUlNJT04nOiAiJ1wiJXNcIiciICUgcGFja2FnZV92ZXJz aW9uIH0pCisgY29uZiA9IENvbmZpZ3VyZShlbnYpCisgDAorIGlmIG5vdCBjb25mLmVudlsnQ1hY J106CistICAgIHByaW50ICJnKysgbXVzdCBiZSBpbnN0YWxsZWQhIgorKyAgICBwcmludCgiZysr IG11c3QgYmUgaW5zdGFsbGVkISIpCisgICAgIEV4aXQoMSkKKyAKKyAjIFgxMSBjaGVja3MKKyBp ZiBub3QgY29uZi5DaGVja0xpYldpdGhIZWFkZXIoJ1gxMScsICdYMTEvWGxpYi5oJywgJ0MrKycp OgorLSAgICBwcmludCAnbGlieDExLWRldiBtdXN0IGJlIGluc3RhbGxlZCEnCisrICAgIHByaW50 KCdsaWJ4MTEtZGV2IG11c3QgYmUgaW5zdGFsbGVkIScpCisgICAgIEV4aXQoMSkKKyAKKyBlbnYg PSBjb25mLkZpbmlzaCgpCistLSAKKzIuMjkuMC5yYzEKKwpkaWZmIC0tZ2l0IGEvc3JjcGtncy94 Ym94ZHJ2L3BhdGNoZXMvMDAwMy1VcGRhdGluZy1weXRob24tY29kZS10by1weXRob24zLnBhdGNo IGIvc3JjcGtncy94Ym94ZHJ2L3BhdGNoZXMvMDAwMy1VcGRhdGluZy1weXRob24tY29kZS10by1w eXRob24zLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5hMTlm NzljN2UyYgotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MveGJveGRydi9wYXRjaGVzLzAwMDMt VXBkYXRpbmctcHl0aG9uLWNvZGUtdG8tcHl0aG9uMy5wYXRjaApAQCAtMCwwICsxLDIzOCBAQAor RnJvbSBlMzdkMzU1OGExYThhMzZmYmM1ZDY5M2M1Mzg5MzEyN2EyODhmZDAyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQorRnJvbTogSW5nbyBSdWhua2UgPGdydW1iZWxAZ21haWwuY29tPgorRGF0 ZTogU3VuLCAyNCBOb3YgMjAxOSAxODozNjoyNSArMDEwMAorU3ViamVjdDogW1BBVENIIDMvM10g VXBkYXRpbmcgcHl0aG9uIGNvZGUgdG8gcHl0aG9uMworCistLS0KKyBleGFtcGxlcy9yZXNwb25z ZWN1cnZlLWdlbmVyYXRvci5weSB8IDE0ICsrKystLS0tLQorIHJ1bnhib3hkcnYvcnVueGJveGRy diAgICAgICAgICAgICAgIHwgNDYgKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0KKyB4Ym94 ZHJ2Y3RsICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA4ICsrLS0tCisgMyBmaWxlcyBjaGFu Z2VkLCAzNCBpbnNlcnRpb25zKCspLCAzNCBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBleGFt cGxlcy9yZXNwb25zZWN1cnZlLWdlbmVyYXRvci5weSBleGFtcGxlcy9yZXNwb25zZWN1cnZlLWdl bmVyYXRvci5weQoraW5kZXggYzc0ZTM0ZC4uOTQyNDYzYiAxMDA3NTUKKy0tLSBleGFtcGxlcy9y ZXNwb25zZWN1cnZlLWdlbmVyYXRvci5weQorKysrIGV4YW1wbGVzL3Jlc3BvbnNlY3VydmUtZ2Vu ZXJhdG9yLnB5CitAQCAtMSwxNCArMSwxNCBAQAorLSMhL3Vzci9iaW4vZW52IHB5dGhvbgorKyMh L3Vzci9iaW4vZW52IHB5dGhvbjMKKyAKKyBpbXBvcnQgc3lzCisgaW1wb3J0IHN0cmluZworIAor IGlmIGxlbihzeXMuYXJndikgIT0gMzoKKy0gICAgcHJpbnQgIlVzYWdlOiIsIHN5cy5hcmd2WzBd LCAiU1RFUFMiLCAiRVFVQVRJT04iCistICAgIHByaW50ICJTaW1wbGUgZ2VuZXJhdG9yIGZvciBn ZW5lcmF0aW5nIHJlc3BvbnNlY3VydmUgZGF0YSBmcm9tIGVxdWF0aW9ucy4iCistICAgIHByaW50 ICIiCistICAgIHByaW50ICJFeGFtcGxlOiIKKy0gICAgcHJpbnQgIiAgICIsIHN5cy5hcmd2WzBd LCAiNiBpKioyIgorKyAgICBwcmludCgiVXNhZ2U6Iiwgc3lzLmFyZ3ZbMF0sICJTVEVQUyIsICJF UVVBVElPTiIpCisrICAgIHByaW50KCJTaW1wbGUgZ2VuZXJhdG9yIGZvciBnZW5lcmF0aW5nIHJl c3BvbnNlY3VydmUgZGF0YSBmcm9tIGVxdWF0aW9ucy4iKQorKyAgICBwcmludCgiIikKKysgICAg cHJpbnQoIkV4YW1wbGU6IikKKysgICAgcHJpbnQoIiAgICIsIHN5cy5hcmd2WzBdLCAiNiBpKioy IikKKyBlbHNlOgorICAgICBzdGVwcyA9IGludChzeXMuYXJndlsxXSkKKyAgICAgZXF1YXRpb24g PSBzeXMuYXJndlsyXQorQEAgLTE5LDYgKzE5LDYgQEAgZWxzZToKKyAgICAgbGVmdC5yZXZlcnNl KCkKKyAgICAgbGVmdCA9IGxlZnRbMDotMV0KKyAgICAgCistICAgIHByaW50IHN0cmluZy5qb2lu KFtzdHIoeCkgZm9yIHggaW4gKGxlZnQgKyByaWdodCldLCAiOiIpCisrICAgIHByaW50KHN0cmlu Zy5qb2luKFtzdHIoeCkgZm9yIHggaW4gKGxlZnQgKyByaWdodCldLCAiOiIpKQorICAgICAKKyAj IEVPRiAjCitkaWZmIC0tZ2l0IHJ1bnhib3hkcnYvcnVueGJveGRydiBydW54Ym94ZHJ2L3J1bnhi b3hkcnYKK2luZGV4IDM2MGM4MzYuLjY5ODM0OTYgMTAwNzU1CistLS0gcnVueGJveGRydi9ydW54 Ym94ZHJ2CisrKysgcnVueGJveGRydi9ydW54Ym94ZHJ2CitAQCAtMSw0ICsxLDQgQEAKKy0jIS91 c3IvYmluL2VudiBweXRob24KKysjIS91c3IvYmluL2VudiBweXRob24zCisgIyAgVGhpcyBwcm9n cmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2Rp ZnkKKyAjICBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNl bnNlIGFzIHB1Ymxpc2hlZCBieQorICMgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVp dGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCitAQCAtNDA5LDcgKzQwOSw3IEBAIGNs YXNzIFByb2Nlc3NNYW5hZ2VyKG9iamVjdCk6CisgCSIiIgorIAkjIFNpbmNlIHJlYXAoKSBtb2Rp ZmllcyBfX3Byb2NzLCB3ZSBoYXZlIHRvIGl0ZXJhdGUgb3ZlciBhIGNvcHkKKyAJIyBvZiB0aGUg a2V5cyBpbiBpdC4gIFRodXMsIGRvIG5vdCByZW1vdmUgdGhlIC5rZXlzKCkgY2FsbC4KKy0JZm9y IHByb2NpZCBpbiBzZWxmLl9fcHJvY3Mua2V5cygpOgorKwlmb3IgcHJvY2lkIGluIGxpc3Qoc2Vs Zi5fX3Byb2NzLmtleXMoKSk6CisgCSAgICBzZWxmLnJlYXAocHJvY2lkKQorIAorIAorQEAgLTQ0 NSw3ICs0NDUsNyBAQCBpbXBvcnQgb3MsIHN5cworIGltcG9ydCBvcy5wYXRoCisgaW1wb3J0IGZj bnRsCisgaW1wb3J0IHRpbWUKKy1pbXBvcnQgQ29uZmlnUGFyc2VyCisraW1wb3J0IGNvbmZpZ3Bh cnNlcgorIGZyb20gc3VicHJvY2VzcyBpbXBvcnQgY2hlY2tfY2FsbCwgUG9wZW4sIFBJUEUKKyBm cm9tIHNpZ25hbCBpbXBvcnQgU0lHSU5ULCBTSUdLSUxMCisgZnJvbSBvcHRwYXJzZSBpbXBvcnQg T3B0aW9uUGFyc2VyCitAQCAtNDgyLDcgKzQ4Miw3IEBAIGNsYXNzIFJ1blhCb3hEcnYob2JqZWN0 KToKKyAKKyAgICAgQHN0YXRpY21ldGhvZAorICAgICBkZWYgcnVuQ29tbWFuZEFuZEdldE91dHB1 dChjb21tYW5kKToKKy0gICAgICAgIHByaW50IGNvbW1hbmQKKysgICAgICAgIHByaW50KGNvbW1h bmQpCisgICAgICAgICBjYWxsY29tbWFuZCA9IFBvcGVuKGNvbW1hbmQsIHNoZWxsPVRydWUsIHN0 ZG91dD1QSVBFKQorICAgICAgICAgb3V0cHV0Y29tbWFuZCA9IGNhbGxjb21tYW5kLmNvbW11bmlj YXRlKCkKKyAgICAgICAgIHJldHVybiBvdXRwdXRjb21tYW5kWzBdLnNwbGl0KCJcbiIpCitAQCAt NTE3LDcgKzUxNyw3IEBAIGNsYXNzIFJ1blhCb3hEcnYob2JqZWN0KToKKyAgICAgICAgIGlmIFJ1 blhCb3hEcnYud2hpY2goUnVuWEJveERydi5zdWRvX2NvbW1hbmQpIGlzIE5vbmU6CisgICAgICAg ICAgICAgcmFpc2UgRXhjZXB0aW9uKCJDYW5ub3QgZmluZCAlcyEiICUgUnVuWEJveERydi5zdWRv X2NvbW1hbmQpCisgICAgICAgICBjb21tYW5kbGluZSA9ICIlcyAlcyIgJSAoUnVuWEJveERydi5z dWRvX2NvbW1hbmQsIGNvbW1hbmQpCistICAgICAgICBwcmludCBjb21tYW5kbGluZQorKyAgICAg ICAgcHJpbnQoY29tbWFuZGxpbmUpCisgICAgICAgICBjYWxsY29tbWFuZCA9IFBvcGVuKGNvbW1h bmRsaW5lLCBzaGVsbD1UcnVlLCBzdGRvdXQ9UElQRSkKKyAgICAgICAgIG91dHB1dGNvbW1hbmQg PSBjYWxsY29tbWFuZC5jb21tdW5pY2F0ZSgpCisgICAgICAgICByZXR1cm4gb3V0cHV0Y29tbWFu ZFswXQorQEAgLTUyNSwxNCArNTI1LDE0IEBAIGNsYXNzIFJ1blhCb3hEcnYob2JqZWN0KToKKyAg ICAgQHN0YXRpY21ldGhvZAorICAgICBkZWYga2lsbEV4aXN0aW5nWEJveERydihzaWcsIHNpZ25h bWUpOgorICAgICAgICAgZm9yIGxpbmUgaW4gUnVuWEJveERydi5ydW5Db21tYW5kQW5kR2V0T3V0 cHV0KCJwcyIpOgorLSAgICAgICAgICAgIHByaW50IGxpbmUKKysgICAgICAgICAgICBwcmludChs aW5lKQorICAgICAgICAgICAgIGZpZWxkcyA9IGxpbmUuc3BsaXQoKQorICAgICAgICAgICAgIGlm IGxlbihmaWVsZHMpIDwgNDoKKyAgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAg ICBwaWQgPSBmaWVsZHNbMF0KKyAgICAgICAgICAgICBwcm9jZXNzID0gZmllbGRzWzNdCisgICAg ICAgICAgICAgaWYgcHJvY2Vzcy5maW5kKFhCT1hEUlZOQU1FKSAhPSAtMToKKy0gICAgICAgICAg ICAgICAgcHJpbnQgIlVzaW5nICVzIG9uIGV4aXN0aW5nICVzIiAlIChzaWduYW1lLCBYQk9YRFJW TkFNRSkKKysgICAgICAgICAgICAgICAgcHJpbnQoIlVzaW5nICVzIG9uIGV4aXN0aW5nICVzIiAl IChzaWduYW1lLCBYQk9YRFJWTkFNRSkpCisgICAgICAgICAgICAgICAgIG9zLmtpbGwoaW50KHBp ZCksIHNpZykKKyAgICAgICAgICAgICAgICAgcmV0dXJuIFRydWUKKyAgICAgICAgIHJldHVybiBG YWxzZQorQEAgLTU0Miw3ICs1NDIsNyBAQCBjbGFzcyBSdW5YQm94RHJ2KG9iamVjdCk6CisgICAg ICAgICBsb2FkZWRtb2R1bGVzID0gW10KKyAgICAgICAgIHVubG9hZGVkbW9kdWxlcyA9IFtdCisg ICAgICAgICBmb3IgbGluZSBpbiBSdW5YQm94RHJ2LnJ1bkNvbW1hbmRBbmRHZXRPdXRwdXQoImxz bW9kIik6CistICAgICAgICAgICAgcHJpbnQgbGluZSAgICAgICAgICAgIAorKyAgICAgICAgICAg IHByaW50KGxpbmUpICAgICAgICAgICAgCisgICAgICAgICAgICAgZmllbGRzID0gbGluZS5zcGxp dCgpCisgICAgICAgICAgICAgaWYgbGVuKGZpZWxkcykgPCAzOgorICAgICAgICAgICAgICAgICBj b250aW51ZQorQEAgLTU1NSwxNyArNTU1LDE3IEBAIGNsYXNzIFJ1blhCb3hEcnYob2JqZWN0KToK KyAgICAgICAgICAgICAgICAgICAgIHVubG9hZGVkbW9kdWxlcy5hcHBlbmQobW9kdWxlbmFtZSkK KyAgICAgICAgIGZvciBtb2R1bGVuYW1lIGluIE1PRFVMRUxPQUQ6CisgICAgICAgICAgICAgaWYg bW9kdWxlbmFtZSBpbiBsb2FkZWRtb2R1bGVzOgorLSAgICAgICAgICAgICAgICBwcmludCAiJXMg YWxyZWFkeSBsb2FkZWQhIiAlIG1vZHVsZW5hbWUKKysgICAgICAgICAgICAgICAgcHJpbnQoIiVz IGFscmVhZHkgbG9hZGVkISIgJSBtb2R1bGVuYW1lKQorICAgICAgICAgICAgIGVsc2U6CistICAg ICAgICAgICAgICAgIHByaW50ICJMb2FkaW5nICVzISIgJSBtb2R1bGVuYW1lCistICAgICAgICAg ICAgICAgIHByaW50IFJ1blhCb3hEcnYucnVuQ29tbWFuZEFzUm9vdCgibW9kcHJvYmUgJXMiICUg bW9kdWxlbmFtZSkKKysgICAgICAgICAgICAgICAgcHJpbnQoIkxvYWRpbmcgJXMhIiAlIG1vZHVs ZW5hbWUpCisrICAgICAgICAgICAgICAgIHByaW50KFJ1blhCb3hEcnYucnVuQ29tbWFuZEFzUm9v dCgibW9kcHJvYmUgJXMiICUgbW9kdWxlbmFtZSkpCisgCisgICAgICAgICBmb3IgbW9kdWxlbmFt ZSBpbiBNT0RVTEVVTkxPQUQ6CisgICAgICAgICAgICAgaWYgbW9kdWxlbmFtZSBpbiB1bmxvYWRl ZG1vZHVsZXM6CistICAgICAgICAgICAgICAgIHByaW50ICJVbmxvYWRpbmcgJXMhIiAlIG1vZHVs ZW5hbWUKKy0gICAgICAgICAgICAgICAgcHJpbnQgUnVuWEJveERydi5ydW5Db21tYW5kQXNSb290 KCJybW1vZCAlcyIgJSBtb2R1bGVuYW1lKQorKyAgICAgICAgICAgICAgICBwcmludCgiVW5sb2Fk aW5nICVzISIgJSBtb2R1bGVuYW1lKQorKyAgICAgICAgICAgICAgICBwcmludChSdW5YQm94RHJ2 LnJ1bkNvbW1hbmRBc1Jvb3QoInJtbW9kICVzIiAlIG1vZHVsZW5hbWUpKQorICAgICAgICAgICAg IGVsc2U6CistICAgICAgICAgICAgICAgIHByaW50ICIlcyBhbHJlYWR5IHVubG9hZGVkISIgJSBt b2R1bGVuYW1lCisrICAgICAgICAgICAgICAgIHByaW50KCIlcyBhbHJlYWR5IHVubG9hZGVkISIg JSBtb2R1bGVuYW1lKQorIAorIAorICAgICBAc3RhdGljbWV0aG9kCitAQCAtNTc5LDExICs1Nzks MTEgQEAgY2xhc3MgUnVuWEJveERydihvYmplY3QpOgorICAgICAgICAgICAgIHJhaXNlIEV4Y2Vw dGlvbigiQ2Fubm90IGZpbmQgb25lIG9mOiAlcyEiICUgc3RyKFVJTlBVVF9MT0NBVElPTlMpKQor IAorICAgICAgICAgaWYgbm90IG9zLmFjY2Vzcyhsb2NhdGlvbiwgb3MuV19PSyk6CistICAgICAg ICAgICAgcHJpbnQgIlRyeWluZyB0byBjaGFuZ2UgcGVybWlzc2lvbnMgb2Y6ICVzIiAlIGxvY2F0 aW9uCistICAgICAgICAgICAgcHJpbnQgUnVuWEJveERydi5ydW5Db21tYW5kQXNSb290KCJjaG1v ZCAwNjYwICVzIiAlIGxvY2F0aW9uKQorKyAgICAgICAgICAgIHByaW50KCJUcnlpbmcgdG8gY2hh bmdlIHBlcm1pc3Npb25zIG9mOiAlcyIgJSBsb2NhdGlvbikKKysgICAgICAgICAgICBwcmludChS dW5YQm94RHJ2LnJ1bkNvbW1hbmRBc1Jvb3QoImNobW9kIDA2NjAgJXMiICUgbG9jYXRpb24pKQor IAorICAgICAgICAgaWYgb3MuYWNjZXNzKGxvY2F0aW9uLCBvcy5XX09LKToKKy0gICAgICAgICAg ICBwcmludCAiJXMgaXMgd3JpdGFibGUhIiAlIGxvY2F0aW9uCisrICAgICAgICAgICAgcHJpbnQo IiVzIGlzIHdyaXRhYmxlISIgJSBsb2NhdGlvbikKKyAgICAgICAgIGVsc2U6CisgICAgICAgICAg ICAgcmFpc2UgRXhjZXB0aW9uKCJDb3VsZCBub3Qgc2V0IHdyaXRlIHBlcm1pc3Npb25zIG9uICVz IiAlIGxvY2F0aW9uKQorIAorQEAgLTYxNCwzNiArNjE0LDM2IEBAIGNsYXNzIFJ1blhCb3hEcnYo b2JqZWN0KToKKyAgICAgICAgIG91dCA9ICIiCisgICAgICAgICB3aGlsZSBvdXQubG93ZXIoKS5m aW5kKExPQURFRFRFWFQpID09IC0xOgorICAgICAgICAgICAgIG91dCA9IFJ1blhCb3hEcnYuZ2V0 TmV4dChteVByb2MpCistICAgICAgICAgICAgcHJpbnQgb3V0CisrICAgICAgICAgICAgcHJpbnQo b3V0KQorICAgICAgICAgCisgICAgIGRlZiBwcm9jZXNzKHNlbGYpOgorICAgICAgICAgY29tbWFu ZGxpc3QgPSBbc2VsZi54Ym94ZHJ2cGF0aF0KKyAKKyAgICAgICAgIGlmIHNlbGYuY29uZmlnZmls ZToKKyAgICAgICAgICAgICAgY29tbWFuZGxpc3QgPSBjb21tYW5kbGlzdCArIFsiLS1jb25maWc9 JXMiICUgc2VsZi5jb25maWdmaWxlXQorLSAgICAgICAgcHJpbnQgY29tbWFuZGxpc3QgICAgICAg IAorKyAgICAgICAgcHJpbnQoY29tbWFuZGxpc3QpICAgICAgICAKKyAgICAgICAgIG15UHJvYyA9 IFByb2Nlc3MoY29tbWFuZGxpc3QpCisgICAgICAgICB3aXRoX3RpbWVvdXQoMSwgc2VsZi5jaGVj a0xvYWRlZCwgbXlQcm9jKSAgICAgICAgCisgICAgICAgICBpZiBsZW4oc2VsZi5hcHBhbmRwYXJh bXMpID09IDA6CisgICAgICAgICAgICAgcHJpbnQoIldBUk5JTkc6IE5vIHBhdGggdG8gYXBwbGlj YXRpb24gc3BlY2lmaWVkISIpCisgICAgICAgICBlbHNlOgorLSAgICAgICAgICAgIHByaW50KHNl bGYuYXBwYW5kcGFyYW1zKQorKyAgICAgICAgICAgIHByaW50KChzZWxmLmFwcGFuZHBhcmFtcykp CisgICAgICAgICAgICAgY2hlY2tfY2FsbChzZWxmLmFwcGFuZHBhcmFtcykKKy0gICAgICAgIHBy aW50ICJTZW5kaW5nIFNJR0lOVCIKKysgICAgICAgIHByaW50KCJTZW5kaW5nIFNJR0lOVCIpCisg ICAgICAgICBteVByb2Mua2lsbChTSUdJTlQpCisgICAgICAgICB0cnk6CisgICAgICAgICAgICAg d2l0aF90aW1lb3V0KDEsIG15UHJvYy53YWl0KQorICAgICAgICAgICAgIHN5cy5leGl0KDApCisg ICAgICAgICBleGNlcHQgVGltZW91dDoKKyAgICAgICAgICAgICBwYXNzCistICAgICAgICBwcmlu dCAiU2VuZGluZyBTSUdJTlQgYWdhaW4iCisrICAgICAgICBwcmludCgiU2VuZGluZyBTSUdJTlQg YWdhaW4iKQorICAgICAgICAgbXlQcm9jLmtpbGwoU0lHSU5UKQorICAgICAgICAgdHJ5OgorICAg ICAgICAgICAgIHdpdGhfdGltZW91dCgxLCBteVByb2Mud2FpdCkKKyAgICAgICAgICAgICBzeXMu ZXhpdCgwKQorICAgICAgICAgZXhjZXB0IFRpbWVvdXQ6CisgICAgICAgICAgICAgcGFzcworLSAg ICAgICAgcHJpbnQgIktpbGxpbmciCisrICAgICAgICBwcmludCgiS2lsbGluZyIpCisgICAgICAg ICBteVByb2MudGVybWluYXRlKCkKKyAKKyBkZWYgbWFpbigpOgorZGlmZiAtLWdpdCB4Ym94ZHJ2 Y3RsIHhib3hkcnZjdGwKK2luZGV4IDQ4MDdhMTEuLjU3MTc3ZGMgMTAwNzU1CistLS0geGJveGRy dmN0bAorKysrIHhib3hkcnZjdGwKK0BAIC0xLDQgKzEsNCBAQAorLSMhL3Vzci9iaW4vZW52IHB5 dGhvbjIKKysjIS91c3IvYmluL2VudiBweXRob24zCisgCisgIyMgIFhib3gzNjAgVVNCIEdhbWVw YWQgVXNlcnNwYWNlIERyaXZlcgorICMjICBDb3B5cmlnaHQgKEMpIDIwMTEgSW5nbyBSdWhua2Ug PGdydW1iZWxAZ21haWwuY29tPgorQEAgLTcxLDcgKzcxLDcgQEAgZWxpZiBvcHRpb25zLmJ1cyA9 PSAiYXV0byI6CisgICAgIGV4Y2VwdCBkYnVzLmV4Y2VwdGlvbnMuREJ1c0V4Y2VwdGlvbjoKKyAJ CQkJYnVzID0gZGJ1cy5TeXN0ZW1CdXMoKQorIGVsc2U6CistICAgIHByaW50ICJFcnJvcjogaW52 YWxpZCBhcmd1bWVudCB0byAtLWJ1cy4gTXVzdCBiZSAnYXV0bycsICdzZXNzaW9uLCBvciAnc3lz dGVtJyIKKysgICAgcHJpbnQoIkVycm9yOiBpbnZhbGlkIGFyZ3VtZW50IHRvIC0tYnVzLiBNdXN0 IGJlICdhdXRvJywgJ3Nlc3Npb24sIG9yICdzeXN0ZW0nIikKKyAgICAgZXhpdCgpCisgCisgaWYg b3B0aW9ucy5zdGF0dXM6CitAQCAtODIsNyArODIsNyBAQCBlbGlmIG9wdGlvbnMuc2h1dGRvd246 CisgICAgIGRhZW1vbi5TaHV0ZG93bigpCisgZWxzZToKKyAgICAgaWYgKG9wdGlvbnMubGVkIG9y IG9wdGlvbnMucnVtYmxlIG9yIG9wdGlvbnMuY29uZmlnKSBhbmQgb3B0aW9ucy5zbG90ID09IE5v bmU6CistICAgICAgICBwcmludCAiRXJyb3I6IC0tc2xvdCBhcmd1bWVudCByZXF1aXJlZCIKKysg ICAgICAgIHByaW50KCJFcnJvcjogLS1zbG90IGFyZ3VtZW50IHJlcXVpcmVkIikKKyAgICAgICAg IGV4aXQoKQorICAgICBlbHNlOgorICAgICAgICAgaWYgb3B0aW9ucy5zbG90ICE9IE5vbmU6CitA QCAtOTQsNyArOTQsNyBAQCBlbHNlOgorICAgICAgICAgICAgIGlmIG9wdGlvbnMucnVtYmxlOgor ICAgICAgICAgICAgICAgICBtID0gcmUubWF0Y2goJ14oXGQrKTooXGQrKSQnLCBvcHRpb25zLnJ1 bWJsZSkKKyAgICAgICAgICAgICAgICAgaWYgbm90IG06CistICAgICAgICAgICAgICAgICAgICBw cmludCAiRXJyb3I6IGludmFsaWQgYXJndW1lbnQgdG8gLS1ydW1ibGUiCisrICAgICAgICAgICAg ICAgICAgICBwcmludCgiRXJyb3I6IGludmFsaWQgYXJndW1lbnQgdG8gLS1ydW1ibGUiKQorICAg ICAgICAgICAgICAgICAgICAgZXhpdCgpCisgICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAg ICAgICAgICAgICAgICBsZWZ0ICA9IGludChtLmdyb3VwKDEpKQorLS0gCisyLjI5LjAucmMxCisK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MveGJveGRydi90ZW1wbGF0ZSBiL3NyY3BrZ3MveGJveGRydi90 ZW1wbGF0ZQppbmRleCBhYjRlYzBmOWI1ZC4uMmI0OTA1ZDg4OTAgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MveGJveGRydi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3hib3hkcnYvdGVtcGxhdGUKQEAgLTEs NyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd4Ym94ZHJ2JwogcGtnbmFtZT14Ym94ZHJ2 CiB2ZXJzaW9uPTAuOC44Ci1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiB3cmtzcmM9Inhib3hkcnYt bGludXgtJHt2ZXJzaW9ufSIKIGJ1aWxkX3N0eWxlPXNjb25zCiBob3N0bWFrZWRlcGVuZHM9InBr Zy1jb25maWcgZ2xpYi1kZXZlbCBkYnVzLWdsaWItZGV2ZWwiCkBAIC0xMiw3ICsxMiw3IEBAIGxp Y2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly94Ym94ZHJ2LmdpdGxh Yi5pby8iCiBkaXN0ZmlsZXM9Imh0dHBzOi8veGJveGRydi5naXRsYWIuaW8veGJveGRydi1saW51 eC0ke3ZlcnNpb259LnRhci5iejIiCiBjaGVja3N1bT1mNGZiOGMwOWMwY2UzODQxNzk4ZjEyOWFl NGMyY2FmM2Y2ZGI5Nzg2ZDc4YWQ5NDE5OTRlNDI1ZTNmZmMxNjhhCi1weXRob25fdmVyc2lvbj0y ICN1bnZlcmlmaWVkCitweXRob25fdmVyc2lvbj0zCiAKIGRvX2luc3RhbGwoKSB7CiAJbWFrZSBQ UkVGSVg9L3VzciBERVNURElSPSR7REVTVERJUn0gaW5zdGFsbAoKRnJvbSA0NzRkZTJkMDhlM2U2 NzViZmM3ZDVkMTY0MWYxYzIxMzcyNDQ0MTNlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiA9P1VURi04P3E/PUM0PTkwbz1DMz1BMG49MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0bmc9MjBE YW5oPz0KIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMSBPY3QgMjAyMCAyMjox NzoyMyArMDcwMApTdWJqZWN0OiBbUEFUQ0ggMDgvMTFdIGdwc2Q6IGJ1aWxkIHdpdGggUHl0aG9u IDMKCi0tLQogc3JjcGtncy9ncHNkL3RlbXBsYXRlIHwgMTIgKysrKysrLS0tLS0tCiAxIGZpbGUg Y2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvZ3BzZC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ3BzZC90ZW1wbGF0ZQppbmRleCBhNWYzNjI4 ZWE0Mi4uYjRhMWQ4ZDVmNmUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ3BzZC90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL2dwc2QvdGVtcGxhdGUKQEAgLTEsMTMgKzEsMTMgQEAKICMgVGVtcGxhdGUgZmls ZSBmb3IgJ2dwc2QnCiBwa2duYW1lPWdwc2QKIHZlcnNpb249My4yMAotcmV2aXNpb249MQorcmV2 aXNpb249MgogYnVpbGRfc3R5bGU9c2NvbnMKIG1ha2VfYnVpbGRfYXJncz0iZGJ1c19leHBvcnQ9 MCBncHNkX3VzZXI9Z3BzZCBncHNkX2dyb3VwPWdwc2Qgc2JpbmRpcj0vdXNyL2JpbgogIHVkZXZk aXI9L3Vzci9saWIvdWRldiBDQz0ke0NDfSBxdF92ZXJzaW9uZWQ9NSIKIG1ha2VfaW5zdGFsbF9h cmdzPSIkbWFrZV9idWlsZF9hcmdzIgogbWFrZV9pbnN0YWxsX3RhcmdldD11ZGV2LWluc3RhbGwK LWhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBiYyBweXRob24tcHlzZXJpYWwgbGlieHNsdCB4 bWx0byBhc2NpaWRvYyBuY3Vyc2VzIgoraG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGJjIHB5 dGhvbjMtcHlzZXJpYWwgbGlieHNsdCB4bWx0byBhc2NpaWRvYyBuY3Vyc2VzIgogbWFrZWRlcGVu ZHM9ImV1ZGV2LWxpYnVkZXYtZGV2ZWwgbnRwIGxpYnVzYi1kZXZlbCBuY3Vyc2VzLWRldmVsIGd0 ayszLWRldmVsCiAgcHBzLXRvb2xzLWRldmVsIGxpYmNhcC1kZXZlbCBsaWJibHVldG9vdGgtZGV2 ZWwgcXQ1LWRldmVsIgogc2hvcnRfZGVzYz0iR1BTL0FJUyByZWNlaXZlciBtb25pdG9yaW5nIGRh ZW1vbiIKQEAgLTE2LDEzICsxNiwxMyBAQCBsaWNlbnNlPSJCU0QtMy1DbGF1c2UiCiBob21lcGFn ZT0iaHR0cDovL3d3dy5jYXRiLm9yZy9ncHNkLyIKIGRpc3RmaWxlcz0iaHR0cDovL2Rvd25sb2Fk LW1pcnJvci5zYXZhbm5haC5nbnUub3JnL3JlbGVhc2VzL2dwc2QvZ3BzZC0ke3ZlcnNpb259LnRh ci54eiIKIGNoZWNrc3VtPTM5OThhNWNiYjcyOGU5N2Y4OTZmNDZjM2M4MzMwMWIxZTZjNWQ4NTkz OTNlNThjMmZhZDhjNTQyNjc3NGQ1NzEKLXB5dGhvbl92ZXJzaW9uPTIJIyBNdXN0IGJlIHNhbWUg dmVyc2lvbiBhcyBzY29ucworcHl0aG9uX3ZlcnNpb249MwkjIE11c3QgYmUgc2FtZSB2ZXJzaW9u IGFzIHNjb25zCiBzeXN0ZW1fYWNjb3VudHM9Imdwc2QiCiAKIHN1YnBhY2thZ2VzPSJncHNkLWRl dmVsIGdwc2QtcXQgZ3BzZC1xdC1kZXZlbCIKIGlmIFsgLXogIiRDUk9TU19CVUlMRCIgXTsgdGhl bgogCXN1YnBhY2thZ2VzKz0iIGdwc2QtcHl0aG9uIGdwc2QteGdwcyIKLQltYWtlZGVwZW5kcys9 IiBweXRob24tZGV2ZWwgcHl0aG9uLWdvYmplY3QtZGV2ZWwiCisJbWFrZWRlcGVuZHMrPSIgcHl0 aG9uMy1kZXZlbCBweXRob24zLWdvYmplY3QtZGV2ZWwiCiBlbHNlCiAJIyB4eHggc2NvbnMgdXNl cyBpdHMgZW52aXJvbm1lbnQgdG8gYnVpbGQgcHl0aG9uIHN0dWZmOyBzbyBhcmNoCiAJIyBhbmQg cHl0aG9uIHZlcnNpb24gbXVzdCBtYXRjaC4gVGhpcyBzaG91bGQgYmUgZml4ZWQuCkBAIC01MSw3 ICs1MSw3IEBAIHBvc3RfaW5zdGFsbCgpIHsKIAogZ3BzZC1weXRob25fcGFja2FnZSgpIHsKIAlz aG9ydF9kZXNjKz0iIC0gUHl0aG9uIHRvb2xzL2JpbmRpbmdzIgotCWRlcGVuZHM9InB5dGhvbiBw eXRob24tcHlzZXJpYWwgZ251cGxvdCAke3NvdXJjZXBrZ30+PSR7dmVyc2lvbn1fJHtyZXZpc2lv bn0iCisJZGVwZW5kcz0icHl0aG9uMyBweXRob24zLXB5c2VyaWFsIGdudXBsb3QgJHtzb3VyY2Vw a2d9Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259IgogCXBrZ19pbnN0YWxsKCkgewogCQl2bW92ZSAi dXNyL2xpYi9weXRob24qIgogCQl2bW92ZSB1c3IvYmluL2dlZ3BzCkBAIC03MSw3ICs3MSw3IEBA IGdwc2QtcHl0aG9uX3BhY2thZ2UoKSB7CiAKIGdwc2QteGdwc19wYWNrYWdlKCkgewogCXNob3J0 X2Rlc2MrPSIgLSBQeUdJIGJhc2VkIGNsaWVudHMiCi0JZGVwZW5kcz0iJHtzb3VyY2Vwa2d9LXB5 dGhvbj49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSBndGsrMyBweXRob24tZ29iamVjdCIKKwlkZXBl bmRzPSIke3NvdXJjZXBrZ30tcHl0aG9uPj0ke3ZlcnNpb259XyR7cmV2aXNpb259IGd0ayszIHB5 dGhvbjMtZ29iamVjdCIKIAlwa2dfaW5zdGFsbCgpIHsKIAkJdm1vdmUgdXNyL2Jpbi94Z3BzCiAJ CXZtb3ZlIHVzci9iaW4veGdwc3NwZWVkCgpGcm9tIDg5NDNiMzkyZWUwNzVlOTVkMmFhYWFhYzBm Njk5MzZiNjU3NTZiMTcgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRGLTg/cT89 QzQ9OTBvPUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0yMEM9QzM9QjRuZz0yMERhbmg/PQogPGNvbmdk YW5ocXhAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIxIE9jdCAyMDIwIDIyOjQyOjUxICswNzAwClN1 YmplY3Q6IFtQQVRDSCAwOS8xMV0gcGluZ3VzOiBidWlsZCB3aXRoIHNjb25zIFB5dGhvbiAzCgot LS0KIC4uLi9wYXRjaGVzL3Njb25zLXVzZS1weXRob24zLXByaW50LnBhdGNoICAgICB8IDI2ICsr KysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvcGluZ3VzL3RlbXBsYXRlICAgICAgICAgICAgICAg ICAgICAgICB8ICA0ICstLQogMiBmaWxlcyBjaGFuZ2VkLCAyOCBpbnNlcnRpb25zKCspLCAyIGRl bGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcGluZ3VzL3BhdGNoZXMvc2Nv bnMtdXNlLXB5dGhvbjMtcHJpbnQucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3Bpbmd1cy9w YXRjaGVzL3Njb25zLXVzZS1weXRob24zLXByaW50LnBhdGNoIGIvc3JjcGtncy9waW5ndXMvcGF0 Y2hlcy9zY29ucy11c2UtcHl0aG9uMy1wcmludC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAwMDAwMDAwMDAwMC4uYWIzZGFhMGUyMDEKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dz L3Bpbmd1cy9wYXRjaGVzL3Njb25zLXVzZS1weXRob24zLXByaW50LnBhdGNoCkBAIC0wLDAgKzEs MjYgQEAKK0Rlc2NyaXB0aW9uOiBVc2UgcHl0aG9uMyBwcmludCgpCitBdXRob3I6IFBoaWwgV3ll dHQgPHBoaWxpcC53eWV0dEBrYXRoZW5hcy5vcmc+CitMYXN0LVVwZGF0ZTogMjAxOS0xMi0yOQor QnVnLURlYmlhbjogaHR0cHM6Ly9idWdzLmRlYmlhbi5vcmcvOTQ3NTc0CisKK0luZGV4OiBwaW5n dXMvU0NvbnNjcmlwdAorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PQorLS0tIFNDb25zY3JpcHQKKysrKyBTQ29uc2NyaXB0 CitAQCAtMTI2LDEyICsxMjYsMTIgQEAgY2xhc3MgUHJvamVjdDoKKyAgICAgZGVmIGNvbmZpZ3Vy ZV9lbmQoc2VsZik6CisgICAgICAgICBzZWxmLmVudiA9IHNlbGYuY29uZi5GaW5pc2goKQorIAor LSAgICAgICAgcHJpbnQgIlJlcG9ydHM6IgorLSAgICAgICAgcHJpbnQgc2VsZi5yZXBvcnRzCisr ICAgICAgICBwcmludCAoIlJlcG9ydHM6IikKKysgICAgICAgIHByaW50IChzZWxmLnJlcG9ydHMp CisgCisgICAgICAgICBpZiBub3Qgc2VsZi5mYXRhbF9lcnJvciA9PSAiIjoKKy0gICAgICAgICAg ICBwcmludCAiRmF0YWwgRXJyb3JzOiIKKy0gICAgICAgICAgICBwcmludCBzZWxmLmZhdGFsX2Vy cm9yCisrICAgICAgICAgICAgcHJpbnQgKCJGYXRhbCBFcnJvcnM6IikKKysgICAgICAgICAgICBw cmludCAoc2VsZi5mYXRhbF9lcnJvcikKKyAgICAgICAgICAgICBFeGl0KDEpCisgCisgICAgIGRl ZiBjb25maWd1cmVfZ3h4KHNlbGYpOiAKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcGluZ3VzL3RlbXBs YXRlIGIvc3JjcGtncy9waW5ndXMvdGVtcGxhdGUKaW5kZXggNTU1MWIwMTE3MWYuLjhlMTI2Y2Y3 NDY2IDEwMDY0NAotLS0gYS9zcmNwa2dzL3Bpbmd1cy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3Bp bmd1cy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3Bpbmd1 cycKIHBrZ25hbWU9cGluZ3VzCiB2ZXJzaW9uPTAuNy42Ci1yZXZpc2lvbj0xMworcmV2aXNpb249 MTQKIHdya3NyYz0icGluZ3VzLXYke3ZlcnNpb259IgogYnVpbGRfc3R5bGU9c2NvbnMKIGhvc3Rt YWtlZGVwZW5kcz0icGtnLWNvbmZpZyIKQEAgLTI5LDcgKzI5LDcgQEAgZG9faW5zdGFsbCgpIHsK IAogcGluZ3VzLWRhdGFfcGFja2FnZSgpIHsKIAlzaG9ydF9kZXNjKz0iIC0gZGF0YSBmaWxlcyIK LQlhcmNocz1ub2FyY2gKKwlub3N0cmlwPXllcwogCXBrZ19pbnN0YWxsKCkgewogCQl2bW92ZSB1 c3Ivc2hhcmUvcGluZ3VzCiAJfQoKRnJvbSAzNmNiZDEwZTIyYWY1MzFhNWM0Y2Y1ODc4NzM0ZWZl YmVhYjgyYzEyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0PTkw bz1DMz1BMG49MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4 QGdtYWlsLmNvbT4KRGF0ZTogVGh1LCAyMiBPY3QgMjAyMCAyMjozMToyNyArMDcwMApTdWJqZWN0 OiBbUEFUQ0ggMTAvMTFdIFRoZS1Qb3dkZXItVG95OiB1cGRhdGUgdG8gOTUuMC4KCi0tLQogc3Jj cGtncy9UaGUtUG93ZGVyLVRveS90ZW1wbGF0ZSB8IDcgKysrKy0tLQogMSBmaWxlIGNoYW5nZWQs IDQgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL1Ro ZS1Qb3dkZXItVG95L3RlbXBsYXRlIGIvc3JjcGtncy9UaGUtUG93ZGVyLVRveS90ZW1wbGF0ZQpp bmRleCA3NzhjMGY4ZjIxMS4uODg5YzQyNzI0ZmIgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvVGhlLVBv d2Rlci1Ub3kvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9UaGUtUG93ZGVyLVRveS90ZW1wbGF0ZQpA QCAtMSwxNiArMSwxNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnVGhlLVBvd2Rlci1Ub3knCiBw a2duYW1lPVRoZS1Qb3dkZXItVG95Ci12ZXJzaW9uPTk0LjEKK3ZlcnNpb249OTUuMAogcmV2aXNp b249MQogYnVpbGRfc3R5bGU9c2NvbnMKIG1ha2VfYnVpbGRfYXJncz0iLS1vdXRwdXQ9cG93ZGVy IgotbWFrZWRlcGVuZHM9IlNETDItZGV2ZWwgbHVhNTEtZGV2ZWwgZmZ0dy1kZXZlbCBiemlwMi1k ZXZlbCB6bGliLWRldmVsIgorbWFrZWRlcGVuZHM9IlNETDItZGV2ZWwgbHVhNTEtZGV2ZWwgZmZ0 dy1kZXZlbCBiemlwMi1kZXZlbCB6bGliLWRldmVsCisgbGliY3VybC1kZXZlbCIKIHNob3J0X2Rl c2M9IkZhbGxpbmcgc2FuZCBwaHlzaWNzIHNhbmRib3gsIHNpbXVsYXRlcyBhaXIgcHJlc3N1cmUs IHZlbG9jaXR5ICYgaGVhdCIKIG1haW50YWluZXI9IklsbGlhIFNoZXN0YWtvdiA8aXNoZXN0YWtv dkBhaXJtYWlsLmNjPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0 cHM6Ly9wb3dkZXJ0b3kuY28udWsvIgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vVGhl LVBvd2Rlci1Ub3kvJHtwa2duYW1lfS9hcmNoaXZlL3Yke3ZlcnNpb259LnRhci5neiIKLWNoZWNr c3VtPTk3NzBjMDczMmM5N2U0ZTg5YTFlNTMzMzBjOTY5ZTk2NzU1OTVmNzhlNjY3M2M1MTljMzcy NGQ2ZGY1OTFlNzIKK2NoZWNrc3VtPWY2MGMzZGM5M2U0Y2VkZGVkYTkyYjc2OGU3NWEyZDIxOGY4 ZGYzZGE0YTU2OWI3ZDdjYjU3ZmZmNTUxNWUxNWIKIENQUERFRklORVM9SUdOT1JFX1VQREFURVMK IAogY2FzZSAiJFhCUFNfVEFSR0VUX01BQ0hJTkUiCgpGcm9tIDcwNTczOTkxNDhkODE5ZGQ3NTVl NTJmYzY5MTllYmYxMDJkOWYyMGQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRG LTg/cT89QzQ9OTBvPUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0yMEM9QzM9QjRuZz0yMERhbmg/PQog PGNvbmdkYW5ocXhAZ21haWwuY29tPgpEYXRlOiBUaHUsIDIyIE9jdCAyMDIwIDIyOjUwOjM0ICsw NzAwClN1YmplY3Q6IFtQQVRDSCAxMS8xMV0gZ3BpY2s6IGJ1aWxkIHdpdGggbmV3IHNjb25zCgpB bHNvIGJ1aWxkIHdpdGggLU8yIC1nIC0tV2wsLS1hcy1uZWVkZWQKLS0tCiBzcmNwa2dzL2dwaWNr L3BhdGNoZXMvc2NvbnMtcHl0aG9uMy5wYXRjaCB8IDE0NSArKysrKysrKysrKysrKysrKysrKysr CiBzcmNwa2dzL2dwaWNrL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICB8ICAgNCArLQogMiBm aWxlcyBjaGFuZ2VkLCAxNDcgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKIGNyZWF0ZSBt b2RlIDEwMDY0NCBzcmNwa2dzL2dwaWNrL3BhdGNoZXMvc2NvbnMtcHl0aG9uMy5wYXRjaAoKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvZ3BpY2svcGF0Y2hlcy9zY29ucy1weXRob24zLnBhdGNoIGIvc3Jj cGtncy9ncGljay9wYXRjaGVzL3Njb25zLXB5dGhvbjMucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2 NDQKaW5kZXggMDAwMDAwMDAwMDAuLmEyNTdlNzNkZWY4Ci0tLSAvZGV2L251bGwKKysrIGIvc3Jj cGtncy9ncGljay9wYXRjaGVzL3Njb25zLXB5dGhvbjMucGF0Y2gKQEAgLTAsMCArMSwxNDUgQEAK K2RpZmYgLS1naXQgU0NvbnNjcmlwdCBTQ29uc2NyaXB0CitpbmRleCA0M2Y5ODU3Li42MDY1MDIz IDEwMDY0NAorLS0tIFNDb25zY3JpcHQKKysrKyBTQ29uc2NyaXB0CitAQCAtNDgsNyArNDgsNyBA QCBlbnYuQWRkQ3VzdG9tQnVpbGRlcnMoKQorIGVudi5HZXRWZXJzaW9uSW5mbygpCisgCisgdHJ5 OgorLQl1bWFzayA9IG9zLnVtYXNrKDAyMikKKysJdW1hc2sgPSBvcy51bWFzaygwbzIyKQorIGV4 Y2VwdCBPU0Vycm9yOiAgICAgIyBpZ25vcmUgb24gc3lzdGVtcyB0aGF0IGRvbid0IHN1cHBvcnQg dW1hc2sKKyAJcGFzcworIAorQEAgLTgxLDU2ICs4MSwyMCBAQCBpZiBub3QgZW52LkdldE9wdGlv bignY2xlYW4nKToKKyAKKyAJZW52ID0gY29uZi5GaW5pc2goKQorIAorLWlmIG9zLmVudmlyb24u aGFzX2tleSgnQ0MnKToKKytpZiAnQ0MnIGluIG9zLmVudmlyb246CisgCWVudlsnQ0MnXSA9IG9z LmVudmlyb25bJ0NDJ10KKy1pZiBvcy5lbnZpcm9uLmhhc19rZXkoJ0NGTEFHUycpOgorKworK2lm ICdDRkxBR1MnIGluIG9zLmVudmlyb246CisgCWVudlsnQ0NGTEFHUyddICs9IFNDb25zLlV0aWwu Q0xWYXIob3MuZW52aXJvblsnQ0ZMQUdTJ10pCistaWYgb3MuZW52aXJvbi5oYXNfa2V5KCdDWFgn KToKKytpZiAnQ1hYJyBpbiBvcy5lbnZpcm9uOgorIAllbnZbJ0NYWCddID0gb3MuZW52aXJvblsn Q1hYJ10KKy1pZiBvcy5lbnZpcm9uLmhhc19rZXkoJ0NYWEZMQUdTJyk6CisraWYgJ0NYWEZMQUdT JyBpbiBvcy5lbnZpcm9uOgorIAllbnZbJ0NYWEZMQUdTJ10gKz0gU0NvbnMuVXRpbC5DTFZhcihv cy5lbnZpcm9uWydDWFhGTEFHUyddKQorLWlmIG9zLmVudmlyb24uaGFzX2tleSgnTERGTEFHUycp OgorK2lmICdMREZMQUdTJyBpbiBvcy5lbnZpcm9uOgorIAllbnZbJ0xJTktGTEFHUyddICs9IFND b25zLlV0aWwuQ0xWYXIob3MuZW52aXJvblsnTERGTEFHUyddKQorIAkKKyBEZWNpZGVyKCdNRDUt dGltZXN0YW1wJykKKyAKKy1pZiBub3QgZW52WydUT09MQ0hBSU4nXSA9PSAnbXN2Yyc6CistCWlm IG5vdCAob3MuZW52aXJvbi5oYXNfa2V5KCdDRkxBR1MnKSBvciBvcy5lbnZpcm9uLmhhc19rZXko J0NYWEZMQUdTJykgb3Igb3MuZW52aXJvbi5oYXNfa2V5KCdMREZMQUdTJykpOgorLQkJaWYgZW52 WydERUJVRyddOgorLQkJCWVudi5BcHBlbmQoCistCQkJCUNQUEZMQUdTID0gWyctV2FsbCcsICct ZzMnLCAnLU8wJ10sCistCQkJCUNGTEFHUyA9IFsnLVdhbGwnLCAnLWczJywgJy1PMCddLAorLQkJ CQlMSU5LRkxBR1MgPSBbJy1XbCwtYXMtbmVlZGVkJ10sCistCQkJCSkKKy0JCWVsc2U6CistCQkJ ZW52LkFwcGVuZCgKKy0JCQkJQ1BQREVGSU5FUyA9IFsnTkRFQlVHJ10sCistCQkJCUNERUZJTkVT ID0gWydOREVCVUcnXSwKKy0JCQkJQ1BQRkxBR1MgPSBbJy1XYWxsJywgJy1PMyddLAorLQkJCQlD RkxBR1MgPSBbJy1XYWxsJywgJy1PMyddLAorLQkJCQlMSU5LRkxBR1MgPSBbJy1XbCwtYXMtbmVl ZGVkJywgJy1zJ10sCistCQkJCSkKKy0KKy0JaWYgZW52WydCVUlMRF9UQVJHRVQnXSA9PSAnd2lu MzInOgorLQkJZW52LkFwcGVuZCgJCistCQkJCUxJTktGTEFHUyA9IFsnLVdsLC0tZW5hYmxlLWF1 dG8taW1wb3J0JywgJy1zdGF0aWMtbGliZ2NjJywgJy1zdGF0aWMtbGlic3RkYysrJ10sCistCQkJ CUNQUERFRklORVMgPSBbJ19XSU4zMl9XSU5OVD0weDA1MDEnXSwKKy0JCQkJKQorLWVsc2U6Cist CWVudlsnTElOS0NPTSddID0gW2VudlsnTElOS0NPTSddLCAnbXQuZXhlIC1ub2xvZ28gLW1hbmlm ZXN0ICR7VEFSR0VUfS5tYW5pZmVzdCAtb3V0cHV0cmVzb3VyY2U6JFRBUkdFVDsxJ10KKy0JaWYg ZW52WydERUJVRyddOgorLQkJZW52LkFwcGVuZCgKKy0JCQkJQ1BQRkxBR1MgPSBbJy9PZCcsICcv RUhzYycsICcvTUQnLCAnL0d5JywgJy9aaScsICcvVFAnLCAnL3dkNDgxOSddLAorLQkJCQlDUFBE RUZJTkVTID0gWydXSU4zMicsICdfREVCVUcnXSwKKy0JCQkJTElOS0ZMQUdTID0gWycvTUFOSUZF U1QnLCAnL0RFQlVHJ10sCistCQkJKQorLQllbHNlOgorLQkJZW52LkFwcGVuZCgKKy0JCQkJQ1BQ RkxBR1MgPSBbJy9PMicsICcvT2knLCAnL0dMJywgJy9FSHNjJywgJy9NRCcsICcvR3knLCAnL1pp JywgJy9UUCcsICcvd2Q0ODE5J10sCistCQkJCUNQUERFRklORVMgPSBbJ1dJTjMyJywgJ05ERUJV RyddLAorLQkJCQlMSU5LRkxBR1MgPSBbJy9NQU5JRkVTVCcsICcvTFRDRyddLAorLQkJCSkKKy0J CQkKKyBleHRlcm5fbGlicyA9IFNDb25zY3JpcHQoWydleHRlcm4vU0NvbnNjcmlwdCddLCBleHBv cnRzPSdlbnYnKQorIGV4ZWN1dGFibGUsIHBhcnNlcl9maWxlcyA9IFNDb25zY3JpcHQoWydzb3Vy Y2UvU0NvbnNjcmlwdCddLCBleHBvcnRzPSdlbnYnKQorIAorZGlmZiAtLWdpdCBzb3VyY2UvU0Nv bnNjcmlwdCBzb3VyY2UvU0NvbnNjcmlwdAoraW5kZXggYjc4YmZiNS4uY2E0MjcxMCAxMDA2NDQK Ky0tLSBzb3VyY2UvU0NvbnNjcmlwdAorKysrIHNvdXJjZS9TQ29uc2NyaXB0CitAQCAtNTAsNiAr NTAsOCBAQCBpZiBsb2NhbF9lbnZbJ0JVSUxEX1RBUkdFVCddID09ICd3aW4zMic6CisgZWxpZiBs b2NhbF9lbnZbJ0JVSUxEX1RBUkdFVCddID09ICdsaW51eDInOgorIAlsb2NhbF9lbnYuQXBwZW5k KExJQlM9WydydCcsICdleHBhdCddKQorIAorK2xvY2FsX2Vudi5BcHBlbmQoTElCUz1bJ2V4cGF0 J10pCisrCisgZXhlY3V0YWJsZSA9IGxvY2FsX2Vudi5Qcm9ncmFtKAorIAknZ3BpY2snLAorIAlz b3VyY2UgPSBbc291cmNlcywgb2JqZWN0c10pCitkaWZmIC0tZ2l0IHRvb2xzL2dwaWNrLnB5IHRv b2xzL2dwaWNrLnB5CitpbmRleCAyOTAwMGE2Li41YWVjZmU4IDEwMDY0NAorLS0tIHRvb2xzL2dw aWNrLnB5CisrKysgdG9vbHMvZ3BpY2sucHkKK0BAIC05LDEwICs5LDEwIEBAIGltcG9ydCBzeXMK KyBpbXBvcnQgZ2xvYgorIGltcG9ydCBzdWJwcm9jZXNzCisgCistZnJvbSBsZW1vbiBpbXBvcnQg KgorLWZyb20gZmxleCBpbXBvcnQgKgorLWZyb20gZ2V0dGV4dCBpbXBvcnQgKgorLWZyb20gcmVz b3VyY2VfdGVtcGxhdGUgaW1wb3J0ICoKKytmcm9tIC5sZW1vbiBpbXBvcnQgKgorK2Zyb20gLmZs ZXggaW1wb3J0ICoKKytmcm9tIC5nZXR0ZXh0IGltcG9ydCAqCisrZnJvbSAucmVzb3VyY2VfdGVt cGxhdGUgaW1wb3J0ICoKKyAKKyBmcm9tIFNDb25zLlNjcmlwdCBpbXBvcnQgKgorIGZyb20gU0Nv bnMuVXRpbCBpbXBvcnQgKgorQEAgLTc5LDkgKzc5LDkgQEAgY2xhc3MgR3BpY2tFbnZpcm9ubWVu dChTQ29uc0Vudmlyb25tZW50KToKKyAJZGVmIENvbmZpcm1Qcm9ncmFtcyhzZWxmLCBjb25mLCBw cm9ncmFtcyk6CisgCQljb25mLkFkZFRlc3RzKHsnQ2hlY2tQcm9ncmFtJzogQ2hlY2tQcm9ncmFt fSkKKyAJCQorLQkJZm9yIGV2YXIsIGFyZ3MgaW4gcHJvZ3JhbXMuaXRlcml0ZW1zKCk6CisrCQlm b3IgZXZhciwgYXJncyBpbiBwcm9ncmFtcy5pdGVtcygpOgorIAkJCWZvdW5kID0gRmFsc2UKKy0J CQlmb3IgbmFtZSwgbWVtYmVyX25hbWUgaW4gYXJnc1snY2hlY2tzJ10uaXRlcml0ZW1zKCk6Cisr CQkJZm9yIG5hbWUsIG1lbWJlcl9uYW1lIGluIGFyZ3NbJ2NoZWNrcyddLml0ZW1zKCk6CisgCQkJ CWlmIGNvbmYuQ2hlY2tQcm9ncmFtKHNlbGYsIG5hbWUsIG1lbWJlcl9uYW1lKToKKyAJCQkJCWZv dW5kID0gVHJ1ZTsKKyAJCQkJCWJyZWFrCitAQCAtOTUsOSArOTUsOSBAQCBjbGFzcyBHcGlja0Vu dmlyb25tZW50KFNDb25zRW52aXJvbm1lbnQpOgorIAlkZWYgQ29uZmlybUxpYnMoc2VsZiwgY29u ZiwgbGlicyk6CisgCQljb25mLkFkZFRlc3RzKHsnQ2hlY2tQS0cnOiBDaGVja1BLR30pCisgCQkK Ky0JCWZvciBldmFyLCBhcmdzIGluIGxpYnMuaXRlcml0ZW1zKCk6CisrCQlmb3IgZXZhciwgYXJn cyBpbiBsaWJzLml0ZW1zKCk6CisgCQkJZm91bmQgPSBGYWxzZQorLQkJCWZvciBuYW1lLCB2ZXJz aW9uIGluIGFyZ3NbJ2NoZWNrcyddLml0ZXJpdGVtcygpOgorKwkJCWZvciBuYW1lLCB2ZXJzaW9u IGluIGFyZ3NbJ2NoZWNrcyddLml0ZW1zKCk6CisgCQkJCWlmIGNvbmYuQ2hlY2tQS0cobmFtZSAr ICcgJyArIHZlcnNpb24pOgorIAkJCQkJc2VsZltldmFyXT1uYW1lCisgCQkJCQlmb3VuZCA9IFRy dWU7CitAQCAtMTI3LDkgKzEyNyw5IEBAIGNsYXNzIEdwaWNrRW52aXJvbm1lbnQoU0NvbnNFbnZp cm9ubWVudCk6CisgCQkJCXNlbGYuQWRkUG9zdEFjdGlvbihpLCBDaG1vZChpLCBwZXJtKSkKKyAJ CXJldHVybiBkaXIKKyAKKy0JSW5zdGFsbFByb2dyYW0gPSBsYW1iZGEgc2VsZiwgZGlyLCBzb3Vy Y2U6IEdwaWNrRW52aXJvbm1lbnQuSW5zdGFsbFBlcm0oc2VsZiwgZGlyLCBzb3VyY2UsIDA3NTUp CistCUluc3RhbGxEYXRhID0gbGFtYmRhIHNlbGYsIGRpciwgc291cmNlOiBHcGlja0Vudmlyb25t ZW50Lkluc3RhbGxQZXJtKHNlbGYsIGRpciwgc291cmNlLCAwNjQ0KQorLQlJbnN0YWxsRGF0YUF1 dG9EaXIgPSBsYW1iZGEgc2VsZiwgZGlyLCByZWxhdGl2ZV9kaXIsIHNvdXJjZTogR3BpY2tFbnZp cm9ubWVudC5JbnN0YWxsUGVybUF1dG9EaXIoc2VsZiwgZGlyLCByZWxhdGl2ZV9kaXIsIHNvdXJj ZSwgMDY0NCkKKysJSW5zdGFsbFByb2dyYW0gPSBsYW1iZGEgc2VsZiwgZGlyLCBzb3VyY2U6IEdw aWNrRW52aXJvbm1lbnQuSW5zdGFsbFBlcm0oc2VsZiwgZGlyLCBzb3VyY2UsIDBvNzU1KQorKwlJ bnN0YWxsRGF0YSA9IGxhbWJkYSBzZWxmLCBkaXIsIHNvdXJjZTogR3BpY2tFbnZpcm9ubWVudC5J bnN0YWxsUGVybShzZWxmLCBkaXIsIHNvdXJjZSwgMG82NDQpCisrCUluc3RhbGxEYXRhQXV0b0Rp ciA9IGxhbWJkYSBzZWxmLCBkaXIsIHJlbGF0aXZlX2Rpciwgc291cmNlOiBHcGlja0Vudmlyb25t ZW50Lkluc3RhbGxQZXJtQXV0b0RpcihzZWxmLCBkaXIsIHJlbGF0aXZlX2Rpciwgc291cmNlLCAw bzY0NCkKKyAKKyAJZGVmIEdldFNvdXJjZUZpbGVzKHNlbGYsIGRpcl9leGNsdWRlX3BhdHRlcm4s IGZpbGVfZXhjbHVkZV9wYXR0ZXJuKToKKyAJCWRpcl9leGNsdWRlX3Byb2cgPSByZS5jb21waWxl KGRpcl9leGNsdWRlX3BhdHRlcm4pCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dwaWNrL3RlbXBsYXRl IGIvc3JjcGtncy9ncGljay90ZW1wbGF0ZQppbmRleCA0MDJmOTVmZDE5Ni4uNWE1MzhhMDY4ZjIg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ3BpY2svdGVtcGxhdGUKKysrIGIvc3JjcGtncy9ncGljay90 ZW1wbGF0ZQpAQCAtMSwxMSArMSwxMSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ3BpY2snCiBw a2duYW1lPWdwaWNrCiB2ZXJzaW9uPTAuMi41Ci1yZXZpc2lvbj00CityZXZpc2lvbj01CiB3cmtz cmM9IiR7cGtnbmFtZX0tJHtwa2duYW1lfS0ke3ZlcnNpb259IgogYnVpbGRfc3R5bGU9c2NvbnMK IGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBwa2ctY29uZmlnIgotbWFrZWRlcGVuZHM9ImJvb3N0 LWRldmVsIGd0aystZGV2ZWwgbHVhNTItZGV2ZWwiCittYWtlZGVwZW5kcz0iYm9vc3QtZGV2ZWwg Z3RrKy1kZXZlbCBsdWE1Mi1kZXZlbCBleHBhdC1kZXZlbCIKIHNob3J0X2Rlc2M9IkFkdmFuY2Vk IGNvbG9yIHBpY2tlciB3cml0dGVuIGluIEMrKyB1c2luZyBHVEsrIHRvb2xraXQiCiBtYWludGFp bmVyPSJBbGV4YW5kZXIgTWFtYXkgPGFsZXhhbmRlckBtYW1heS5zdT4iCiBsaWNlbnNlPSJCU0Qt My1DbGF1c2UiCg== --===============0321632926023192942==--