From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 From: =?utf-8?b?T25kxZllaiBOb3NlayA8b25vc2VrQHJlZGhhdC5jb20+?= To: git-commits@fedoraproject.org Subject: [rpms/rpkg] 1.70-1: A few patches mostly for `pre-push-check` Date: Mon, 10 Aug 2026 21:44:33 GMT Message-ID: <178639827370.1.6588226425333558803.rpms-rpkg-bd87270301b5@fedoraproject.org> List-ID: X-Git-Repo: rpms/rpkg X-Git-Branch: 1.70-1 X-Git-Rev: bd87270301b52a4b0c99555aa070378a8c6cc736 ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvcnBrZwogICAgICAgICAgICBCcmFuY2ggOiAxLjcwLTEKICAgICAgICAgICAg Q29tbWl0IDogYmQ4NzI3MDMwMWI1MmE0YjBjOTk1NTVhYTA3MDM3OGE4YzZjYzczNgogICAgICAg ICAgICBBdXRob3IgOiBPbmTFmWVqIE5vc2VrIDxvbm9zZWtAcmVkaGF0LmNvbT4KICAgICAgICAg ICAgRGF0ZSAgIDogMjAyMy0wMy0zMVQyMzo1NDo0NiswMDowMAogICAgICAgICAgICBTdGF0cyAg OiArODg1Ly0xIGluIDggZmlsZShzKQogICAgICAgICAgICBVUkwgICAgOiBodHRwczovL3NyYy5m ZWRvcmFwcm9qZWN0Lm9yZy9ycG1zL3Jwa2cvYy9iZDg3MjcwMzAxYjUyYTRiMGM5OTU1NWFhMDcw Mzc4YThjNmNjNzM2P2JyYW5jaD0xLjcwLTEKCiAgICAgICAgICAgIExvZzoKICAgICAgICAgICAg QSBmZXcgcGF0Y2hlcyBtb3N0bHkgZm9yIGBwcmUtcHVzaC1jaGVja2AKCi0gUGF0Y2g6IEZpeCB1 bml0dGVzdHMgZm9yIGBjbG9uZWAgYW5kIHByZS1wdXNoIGhvb2sgc2NyaXB0Ci0gUGF0Y2g6IHBy ZS1wdXNoIGhvb2sgc2NyaXB0IGNvbnRhaW5zIGEgdXNlcidzIGNvbmZpZwotIFBhdGNoOiBBIEhF QUQgcXVlcnkgaW50byBhIGxvb2thc2lkZSBjYWNoZQotIFBhdGNoOiBgcHJlLXB1c2gtY2hlY2tg IGhhdmUgdG8gdXNlIHNwZWN0b29sIHdpdGggLS1kZWZpbmUKLSBQYXRjaDogQWRkIG1vcmUgaW5m b3JtYXRpb24gYWJvdXQgcHJlLXB1c2ggaG9vawotIFBhdGNoOiBVcGRhdGUgdG8gc3BlYyBmaWxl IHByZXNlbmNlIGNoZWNraW5nCi0gUGF0Y2g6IE1vcmUgcm9idXN0IHNwZWMgZmlsZSBwcmVzZW5j ZSBjaGVja2luZwoKU2lnbmVkLW9mZi1ieTogT25kxZllaiBOb3NlayA8b25vc2VrQHJlZGhhdC5j b20+CgotLS0KZGlmZiAtLWdpdCBhLzAwMDctTW9yZS1yb2J1c3Qtc3BlYy1maWxlLXByZXNlbmNl LWNoZWNraW5nLnBhdGNoIGIvMDAwNy1Nb3JlLXJvYnVzdC1zcGVjLWZpbGUtcHJlc2VuY2UtY2hl Y2tpbmcucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTFkZGU2NAot LS0gL2Rldi9udWxsCisrKyBiLzAwMDctTW9yZS1yb2J1c3Qtc3BlYy1maWxlLXByZXNlbmNlLWNo ZWNraW5nLnBhdGNoCkBAIC0wLDAgKzEsMjkyIEBACitGcm9tIDExMDg4MTBiZGVmZDBkODgwNTE3 YjI3NGFjZDZhM2JkMGQ0MTU2ZTAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBPbmRy ZWogTm9zZWsgPG9ub3Nla0ByZWRoYXQuY29tPgorRGF0ZTogVHVlLCAyMSBNYXIgMjAyMyAwMjo0 NDowNCArMDEwMAorU3ViamVjdDogW1BBVENIIDA3LzEyXSBNb3JlIHJvYnVzdCBzcGVjIGZpbGUg cHJlc2VuY2UgY2hlY2tpbmcKKworU29tZSBjb21tYW5kcyAodmVycmVsLCBzb3VyY2VzLCBwcmVw LCBpbXBvcnQsIC4uLikgbmVlZCB0byBjaGVjaword2hldGhlciB0aGUgZGlzdC1naXQgcmVwb3Np dG9yeSBpcyBpbiB0aGUgY29ycmVjdCBzdGF0ZS4gSXQgbWVhbnMKK2F0IGxlYXN0IHRoZSBwcmVz ZW5jZSBvZiB0aGUgc3BlY2ZpbGUuCitJbiB0aGUgYmVnaW5uaW5nLCBycGtnIGRldGVjdHMgbGF5 b3V0cy4gTGF5b3V0cyBkZXRlcm1pbmUgdGhlIGZpbGUKK3N0cnVjdHVyZSBvZiB0aGUgcmVwb3Np dG9yeS4gRm9yIGV4YW1wbGUsIG1vc3QgY29tbWFuZHMgY2FuJ3QKK2JlIGV4ZWN1dGVkIGZvciB0 aGUgUmV0aXJlZExheW91dCAodGhlcmUgaXMgbm8gc3BlY2ZpbGUpLgorV2hlbiB0aGUgcmVwb3Np dG9yeSBkaXJlY3RvcnkgZXhpc3RzLCBzb21lIGxheW91dCBjYW4gYmUgYWx3YXlzCitkZXRlY3Rl ZC4gVGhlcmVmb3JlICctLXBhdGgnIGFyZ3VtZW50IGlzIG5vdyBjaGVja2VkIGZvcgorYSB2YWxp ZCBkaXJlY3RvcnkuCitUaGUgdGltZW91dCBjaGFuZ2UgaW4gdGhlIHJlcXVlc3QgZml4ZXMgdGhl IG5ldyBiYW5kaXQncyBmaW5kaW5nLgorCitGaXhlczogIzY2MworSklSQTogUkhFTENNUC0xMTM4 NworCitTaWduZWQtb2ZmLWJ5OiBPbmRyZWogTm9zZWsgPG9ub3Nla0ByZWRoYXQuY29tPgorLS0t CisgcHlycGtnL19faW5pdF9fLnB5ICAgICAgICAgIHwgIDkgKysrKy0tLQorIHB5cnBrZy9jbGku cHkgICAgICAgICAgICAgICB8ICA4ICsrKy0tLQorIHB5cnBrZy9sYXlvdXQvX19pbml0X18ucHkg ICB8ICA0ICstLQorIHB5cnBrZy91dGlscy5weSAgICAgICAgICAgICB8IDE0ICsrKysrKysrKysK KyB0ZXN0cy9jb21tYW5kcy90ZXN0X3B1c2gucHkgfCA1NCArKysrKysrKysrKysrKysrKysrLS0t LS0tLS0tLS0tLS0tLS0tCisgdGVzdHMvdGVzdF9jbGkucHkgICAgICAgICAgIHwgMTIgKysrKysr LS0tCisgNiBmaWxlcyBjaGFuZ2VkLCA2MyBpbnNlcnRpb25zKCspLCAzOCBkZWxldGlvbnMoLSkK KworZGlmZiAtLWdpdCBhL3B5cnBrZy9fX2luaXRfXy5weSBiL3B5cnBrZy9fX2luaXRfXy5weQor aW5kZXggNzc2Y2IyMS4uMDI4ZDE5NSAxMDA2NDQKKy0tLSBhL3B5cnBrZy9fX2luaXRfXy5weQor KysrIGIvcHlycGtnL19faW5pdF9fLnB5CitAQCAtOTIzLDkgKzkyMyw4IEBAIGNsYXNzIENvbW1h bmRzKG9iamVjdCk6CisgICAgIGRlZiBsb2FkX3NwZWMoc2VsZik6CisgICAgICAgICAiIiJUaGlz IHNldHMgdGhlIHNwZWMgYXR0cmlidXRlIiIiCisgCistICAgICAgICBpZiBzZWxmLmxheW91dCBp cyBOb25lOgorKyAgICAgICAgaWYgc2VsZi5sYXlvdXQgaXMgTm9uZSBvciBpc2luc3RhbmNlKHNl bGYubGF5b3V0LCBsYXlvdXQuSW5jb21wbGV0ZUxheW91dCk6CisgICAgICAgICAgICAgcmFpc2Ug cnBrZ0Vycm9yKCdTcGVjIGZpbGUgaXMgbm90IGF2YWlsYWJsZScpCistCisgICAgICAgICBpZiBz ZWxmLmlzX3JldGlyZWQoKToKKyAgICAgICAgICAgICByYWlzZSBycGtnRXJyb3IoJ1RoaXMgcGFj a2FnZSBvciBtb2R1bGUgaXMgcmV0aXJlZC4gVGhlIGFjdGlvbiBoYXMgc3RvcHBlZC4nKQorIAor QEAgLTExNjYsOCArMTE2NSwxMCBAQCBjbGFzcyBDb21tYW5kcyhvYmplY3QpOgorIAorICAgICBA cHJvcGVydHkKKyAgICAgZGVmIHNvdXJjZXNfZmlsZW5hbWUoc2VsZik6CistICAgICAgICBpZiBz ZWxmLmxheW91dCBpcyBOb25lOgorLSAgICAgICAgICAgIHJldHVybiBvcy5wYXRoLmpvaW4oc2Vs Zi5wYXRoLCAnc291cmNlcycpCisrICAgICAgICBpZiBzZWxmLmxheW91dCBpcyBOb25lIG9yIGlz aW5zdGFuY2Uoc2VsZi5sYXlvdXQsIGxheW91dC5JbmNvbXBsZXRlTGF5b3V0KToKKysgICAgICAg ICAgICByYWlzZSBycGtnRXJyb3IoJ1NwZWMgZmlsZSBpcyBub3QgYXZhaWxhYmxlJykKKysgICAg ICAgIGlmIHNlbGYuaXNfcmV0aXJlZCgpOgorKyAgICAgICAgICAgIHJhaXNlIHJwa2dFcnJvcign VGhpcyBwYWNrYWdlIG9yIG1vZHVsZSBpcyByZXRpcmVkLiBUaGUgYWN0aW9uIGhhcyBzdG9wcGVk LicpCisgICAgICAgICByZXR1cm4gb3MucGF0aC5qb2luKAorICAgICAgICAgICAgIHNlbGYucGF0 aCwgc2VsZi5sYXlvdXQuc291cmNlc19maWxlX3RlbXBsYXRlLnJlcGxhY2UoInswLnJlcG9fbmFt ZX0iLCBzZWxmLnJlcG9fbmFtZSkpCisgCitkaWZmIC0tZ2l0IGEvcHlycGtnL2NsaS5weSBiL3B5 cnBrZy9jbGkucHkKK2luZGV4IGMzNjcyYjMuLjFiY2Y2ZTQgMTAwNjQ0CistLS0gYS9weXJwa2cv Y2xpLnB5CisrKysgYi9weXJwa2cvY2xpLnB5CitAQCAtMzg2LDcgKzM4Niw3IEBAIGNsYXNzIGNs aUNsaWVudChvYmplY3QpOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlbHA9 J1J1biBLb2ppIGNvbW1hbmRzIGFzIGEgZGlmZmVyZW50IHVzZXInKQorICAgICAgICAgIyBMZXQg dGhlIHVzZXIgZGVmaW5lIGEgcGF0aCB0byB3b3JrIGluIHJhdGhlciB0aGFuIGN3ZAorICAgICAg ICAgc2VsZi5wYXJzZXIuYWRkX2FyZ3VtZW50KCctLXBhdGgnLCBkZWZhdWx0PU5vbmUsCistICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT11dGlscy51LAorKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHR5cGU9dXRpbHMudmFsaWRhdGVfcGF0aCwKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBoZWxwPSdEZWZpbmUgdGhlIGRpcmVjdG9yeSB0byB3 b3JrIGluICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnKGRlZmF1bHRzIHRv IGN3ZCknKQorICAgICAgICAgIyBWZXJib3NpdHkKK0BAIC05MTEsOCArOTExLDkgQEAgY2xhc3Mg Y2xpQ2xpZW50KG9iamVjdCk6CisgICAgICAgICBpZiAncGF0aCcgaW4gYXJnczoKKyAgICAgICAg ICAgICAjIFdpdGhvdXQgInBhdGgiLCB3ZSBjYW4ndCByZWFsbHkgdGVzdC4uLgorICAgICAgICAg ICAgIHVybCA9ICclKHByb3RvY29sKXM6Ly8lKGhvc3Qpcy8lKHBhdGgpcy9pbmZvL3JlZnM/c2Vy dmljZT1naXQtcmVjZWl2ZS1wYWNrJyAlIGFyZ3MKKy0gICAgICAgICAgICByZXNwID0gcmVxdWVz dHMuaGVhZCh1cmwsIGF1dGg9SFRUUEJhc2ljQXV0aChhcmdzWyd1c2VybmFtZSddLAorLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3Nb J3Bhc3N3b3JkJ10pKQorKyAgICAgICAgICAgIHJlc3AgPSByZXF1ZXN0cy5oZWFkKHVybCwKKysg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRoPUhUVFBCYXNpY0F1dGgoYXJnc1sn dXNlcm5hbWUnXSwgYXJnc1sncGFzc3dvcmQnXSksCisrICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdGltZW91dD0xNSkKKyAgICAgICAgICAgICBpZiByZXNwLnN0YXR1c19jb2RlID09 IDQwMToKKyAgICAgICAgICAgICAgICAgcmV0dXJuIHNlbGYub2lkY19jbGllbnQucmVwb3J0X3Rv a2VuX2lzc3VlKCkKKyAKK0BAIC0yMzYzLDYgKzIzNjQsNyBAQCBjbGFzcyBjbGlDbGllbnQob2Jq ZWN0KToKKyAKKyAgICAgZGVmIGltcG9ydF9zcnBtKHNlbGYpOgorICAgICAgICAgdXBsb2FkZmls ZXMgPSBzZWxmLmNtZC5pbXBvcnRfc3JwbShzZWxmLmFyZ3Muc3JwbSkKKysgICAgICAgIHNlbGYu bG9hZF9jbWQoKSAgIyB0byByZWxvYWQgbGF5b3V0cyAtIGJlY2F1c2UgYSBzcGVjZmlsZSBjb3Vs ZCBhcHBlYXIgZHVyaW5nIGltcG9ydAorICAgICAgICAgaWYgdXBsb2FkZmlsZXM6CisgICAgICAg ICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICBzZWxmLmNtZC51cGxvYWQodXBsb2FkZmlsZXMs IHJlcGxhY2U9VHJ1ZSwgb2ZmbGluZT1zZWxmLmFyZ3Mub2ZmbGluZSkKK2RpZmYgLS1naXQgYS9w eXJwa2cvbGF5b3V0L19faW5pdF9fLnB5IGIvcHlycGtnL2xheW91dC9fX2luaXRfXy5weQoraW5k ZXggNzYyYWYwZC4uODUwZGRjMiAxMDA2NDQKKy0tLSBhL3B5cnBrZy9sYXlvdXQvX19pbml0X18u cHkKKysrKyBiL3B5cnBrZy9sYXlvdXQvX19pbml0X18ucHkKK0BAIC0xMiw4ICsxMiw4IEBACisg ZnJvbSBweXJwa2cuZXJyb3JzIGltcG9ydCBMYXlvdXRFcnJvcgorIAorIGZyb20gLmJhc2UgaW1w b3J0IE1ldGFMYXlvdXQKKy1mcm9tIC5sYXlvdXRzIGltcG9ydCAoRGlzdEdpdExheW91dCwgSW5j b21wbGV0ZUxheW91dCwgICMgbm9xYTogRjQwMQorLSAgICAgICAgICAgICAgICAgICAgICBSZXRp cmVkTGF5b3V0LCBTUlBNTGF5b3V0KQorK2Zyb20gLmxheW91dHMgaW1wb3J0IChEaXN0R2l0TGF5 b3V0LCBEaXN0R2l0UmVzdWx0c0RpckxheW91dCwgICMgbm9xYTogRjQwMQorKyAgICAgICAgICAg ICAgICAgICAgICBJbmNvbXBsZXRlTGF5b3V0LCBSZXRpcmVkTGF5b3V0LCBTUlBNTGF5b3V0KQor IAorIAorIGRlZiBidWlsZChwYXRoLCBoaW50PU5vbmUpOgorZGlmZiAtLWdpdCBhL3B5cnBrZy91 dGlscy5weSBiL3B5cnBrZy91dGlscy5weQoraW5kZXggY2ViNDkwNi4uMzMzN2JkYiAxMDA2NDQK Ky0tLSBhL3B5cnBrZy91dGlscy5weQorKysrIGIvcHlycGtnL3V0aWxzLnB5CitAQCAtMjYsMTEg KzI2LDI1IEBAIGlmIHNpeC5QWTM6CisgICAgIGRlZiB1KHMpOgorICAgICAgICAgcmV0dXJuIHMK KyAKKysgICAgZGVmIHZhbGlkYXRlX3BhdGgocyk6CisrICAgICAgICBhYnNwYXRoID0gb3MucGF0 aC5hYnNwYXRoKHMpCisrICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhhYnNwYXRoKToKKysgICAg ICAgICAgICByZXR1cm4gcworKyAgICAgICAgZWxzZToKKysgICAgICAgICAgICByYWlzZSBhcmdw YXJzZS5Bcmd1bWVudFR5cGVFcnJvcignZ2l2ZW4gcGF0aCBcJ3swfVwnIGRvZXNuXCd0IGV4aXN0 Jy5mb3JtYXQoYWJzcGF0aCkpCisrCisgICAgIGdldGN3ZCA9IG9zLmdldGN3ZAorIGVsc2U6Cisg ICAgIGRlZiB1KHMpOgorICAgICAgICAgcmV0dXJuIHMuZGVjb2RlKCd1dGYtOCcpCisgCisrICAg IGRlZiB2YWxpZGF0ZV9wYXRoKHMpOgorKyAgICAgICAgYWJzcGF0aCA9IG9zLnBhdGguYWJzcGF0 aChzLmRlY29kZSgndXRmLTgnKSkKKysgICAgICAgIGlmIG9zLnBhdGguZXhpc3RzKGFic3BhdGgp OgorKyAgICAgICAgICAgIHJldHVybiBzLmRlY29kZSgndXRmLTgnKQorKyAgICAgICAgZWxzZToK KysgICAgICAgICAgICByYWlzZSBhcmdwYXJzZS5Bcmd1bWVudFR5cGVFcnJvcignZ2l2ZW4gcGF0 aCBcJ3swfVwnIGRvZXNuXCd0IGV4aXN0Jy5mb3JtYXQoYWJzcGF0aCkpCisrCisgICAgIGdldGN3 ZCA9IG9zLmdldGN3ZHUKKyAKKyAKK2RpZmYgLS1naXQgYS90ZXN0cy9jb21tYW5kcy90ZXN0X3B1 c2gucHkgYi90ZXN0cy9jb21tYW5kcy90ZXN0X3B1c2gucHkKK2luZGV4IGVmODA1N2EuLjc5YzNh OGIgMTAwNjQ0CistLS0gYS90ZXN0cy9jb21tYW5kcy90ZXN0X3B1c2gucHkKKysrKyBiL3Rlc3Rz L2NvbW1hbmRzL3Rlc3RfcHVzaC5weQorQEAgLTEsOSArMSwxMyBAQAorICMgLSotIGNvZGluZzog dXRmLTggLSotCisgCisgaW1wb3J0IG9zCisraW1wb3J0IHN1YnByb2Nlc3MKKyAKKyBpbXBvcnQg Z2l0CisgCisraW1wb3J0IHB5cnBrZworK2Zyb20gcHlycGtnLnNvdXJjZXMgaW1wb3J0IFNvdXJj ZXNGaWxlCisrCisgZnJvbSAuIGltcG9ydCBDb21tYW5kVGVzdENhc2UKKyAKKyBTUEVDRklMRV9U RU1QTEFURSA9ICIiIk5hbWU6ICAgICAgICAgICB0ZXN0CitAQCAtMjIsMTEgKzI2LDYgQEAgVGVz dAorICUlaW5zdGFsbAorIHJtIC1mICRSUE1fQlVJTERfUk9PVCUle19zeXNjb25mZGlyfS8iIiIK KyAKKy1DTE9ORV9DT05GSUcgPSAnJycKKy0gICAgYnouZGVmYXVsdC1jb21wb25lbnQgJShtb2R1 bGUpcworLSAgICBzZW5kZW1haWwudG8gJShtb2R1bGUpcy1vd25lckBmZWRvcmFwcm9qZWN0Lm9y ZworLScnJworLQorIAorIGNsYXNzIENvbW1hbmRQdXNoVGVzdENhc2UoQ29tbWFuZFRlc3RDYXNl KToKKyAKK0BAIC00NSwyOCArNDQsMzAgQEAgY2xhc3MgQ29tbWFuZFB1c2hUZXN0Q2FzZShDb21t YW5kVGVzdENhc2UpOgorIAorICAgICAgICAgc2VsZi5tYWtlX25ld19naXQoc2VsZi5tb2R1bGUp CisgCistICAgICAgICBpbXBvcnQgcHlycGtnCistICAgICAgICBjbWQgPSBweXJwa2cuQ29tbWFu ZHMoc2VsZi5wYXRoLCBzZWxmLmxvb2thc2lkZSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBzZWxmLmxvb2thc2lkZWhhc2gsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg c2VsZi5sb29rYXNpZGVfY2dpLCBzZWxmLmdpdGJhc2V1cmwsCistICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgc2VsZi5hbm9uZ2l0dXJsLCBzZWxmLmJyYW5jaHJlLCBzZWxmLmtvamlwcm9m aWxlLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuYnVpbGRfY2xpZW50LCBz ZWxmLnVzZXIsIHNlbGYuZGlzdCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxm LnRhcmdldCwgc2VsZi5xdWlldCkKKy0gICAgICAgIGNtZC5jbG9uZV9jb25maWdfcnBtcyA9IENM T05FX0NPTkZJRworLSAgICAgICAgY21kLmNsb25lKHNlbGYubW9kdWxlLCBhbm9uPVRydWUpCist ICAgICAgICBjbWQucGF0aCA9IG9zLnBhdGguam9pbihzZWxmLnBhdGgsIHNlbGYubW9kdWxlKQor LSAgICAgICAgb3MuY2hkaXIob3MucGF0aC5qb2luKHNlbGYucGF0aCwgc2VsZi5tb2R1bGUpKQor KyAgICAgICAgbW9kdWxlZGlyID0gb3MucGF0aC5qb2luKHNlbGYuZ2l0cm9vdCwgc2VsZi5tb2R1 bGUpCisrICAgICAgICBzdWJwcm9jZXNzLmNoZWNrX2NhbGwoWydnaXQnLCAnY2xvbmUnLCAnZmls ZTovLyVzJyAlIG1vZHVsZWRpcl0sCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3dk PXNlbGYucGF0aCwgc3Rkb3V0PXN1YnByb2Nlc3MuUElQRSwKKysgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBzdGRlcnI9c3VicHJvY2Vzcy5QSVBFKQorKworKyAgICAgICAgc2VsZi5jbG9u ZWRfZGlyID0gb3MucGF0aC5qb2luKHNlbGYucGF0aCwgc2VsZi5tb2R1bGUpCisrICAgICAgICBz ZWxmLmNtZCA9IHB5cnBrZy5Db21tYW5kcyhzZWxmLmNsb25lZF9kaXIsIHNlbGYubG9va2FzaWRl LAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5sb29rYXNpZGVoYXNo LAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5sb29rYXNpZGVfY2dp LCBzZWxmLmdpdGJhc2V1cmwsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz ZWxmLmFub25naXR1cmwsIHNlbGYuYnJhbmNocmUsIHNlbGYua29qaXByb2ZpbGUsCisrICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmJ1aWxkX2NsaWVudCwgc2VsZi51c2Vy LCBzZWxmLmRpc3QsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnRh cmdldCwgc2VsZi5xdWlldCkKKysgICAgICAgIG9zLmNoZGlyKHNlbGYuY2xvbmVkX2RpcikKKyAK KyAgICAgICAgIHNwZWNfZmlsZSA9ICdtb2R1bGUuc3BlYycKKyAgICAgICAgIHdpdGggb3Blbihz cGVjX2ZpbGUsICd3JykgYXMgZjoKKyAgICAgICAgICAgICBmLndyaXRlKFNQRUNGSUxFX1RFTVBM QVRFICUgJycpCisgCistICAgICAgICBjbWQucmVwby5pbmRleC5hZGQoW3NwZWNfZmlsZV0pCist ICAgICAgICBjbWQucmVwby5pbmRleC5jb21taXQoImFkZCBTUEVDIikKKysgICAgICAgIHNlbGYu Y21kLnJlcG8uaW5kZXguYWRkKFtzcGVjX2ZpbGVdKQorKyAgICAgICAgc2VsZi5jbWQucmVwby5p bmRleC5jb21taXQoImFkZCBTUEVDIikKKyAKKyAgICAgICAgICMgTm93LCBjaGFuZ2UgZGlyZWN0 b3J5IHRvIHBhcmVudCBhbmQgdGVzdCB0aGUgcHVzaAorICAgICAgICAgb3MuY2hkaXIoc2VsZi5w YXRoKQorLSAgICAgICAgY21kLnB1c2gobm9fdmVyaWZ5PVRydWUpCisrICAgICAgICBzZWxmLmNt ZC5wdXNoKG5vX3ZlcmlmeT1UcnVlKQorIAorIAorIGNsYXNzIFRlc3RQdXNoV2l0aFBhdGNoZXMo Q29tbWFuZFRlc3RDYXNlKToKK0BAIC03NiwxOCArNzcsMjAgQEAgY2xhc3MgVGVzdFB1c2hXaXRo UGF0Y2hlcyhDb21tYW5kVGVzdENhc2UpOgorIAorICAgICAgICAgc2VsZi5tYWtlX25ld19naXQo c2VsZi5tb2R1bGUpCisgCistICAgICAgICBpbXBvcnQgcHlycGtnCistICAgICAgICBzZWxmLmNt ZCA9IHB5cnBrZy5Db21tYW5kcyhzZWxmLnBhdGgsIHNlbGYubG9va2FzaWRlLAorKyAgICAgICAg bW9kdWxlZGlyID0gb3MucGF0aC5qb2luKHNlbGYuZ2l0cm9vdCwgc2VsZi5tb2R1bGUpCisrICAg ICAgICBzdWJwcm9jZXNzLmNoZWNrX2NhbGwoWydnaXQnLCAnY2xvbmUnLCAnZmlsZTovLyVzJyAl IG1vZHVsZWRpcl0sCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3dkPXNlbGYucGF0 aCwgc3Rkb3V0PXN1YnByb2Nlc3MuUElQRSwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBzdGRlcnI9c3VicHJvY2Vzcy5QSVBFKQorKworKyAgICAgICAgc2VsZi5jbG9uZWRfZGlyID0g b3MucGF0aC5qb2luKHNlbGYucGF0aCwgc2VsZi5tb2R1bGUpCisrICAgICAgICBzZWxmLmNtZCA9 IHB5cnBrZy5Db21tYW5kcyhzZWxmLmNsb25lZF9kaXIsIHNlbGYubG9va2FzaWRlLAorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5sb29rYXNpZGVoYXNoLAorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5sb29rYXNpZGVfY2dpLCBzZWxmLmdp dGJhc2V1cmwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmFub25n aXR1cmwsIHNlbGYuYnJhbmNocmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBzZWxmLmtvamlwcm9maWxlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg c2VsZi5idWlsZF9jbGllbnQsIHNlbGYudXNlciwgc2VsZi5kaXN0LAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgc2VsZi50YXJnZXQsIHNlbGYucXVpZXQpCistICAgICAgICBz ZWxmLmNtZC5jbG9uZV9jb25maWdfcnBtcyA9IENMT05FX0NPTkZJRworLSAgICAgICAgc2VsZi5j bWQuY2xvbmUoc2VsZi5tb2R1bGUsIGFub249VHJ1ZSkKKy0gICAgICAgIHNlbGYuY21kLnBhdGgg PSBvcy5wYXRoLmpvaW4oc2VsZi5wYXRoLCBzZWxmLm1vZHVsZSkKKy0gICAgICAgIG9zLmNoZGly KG9zLnBhdGguam9pbihzZWxmLnBhdGgsIHNlbGYubW9kdWxlKSkKKysgICAgICAgIG9zLmNoZGly KHNlbGYuY2xvbmVkX2RpcikKKyAKKyAgICAgICAgICMgVHJhY2sgU1BFQyBhbmQgYS5wYXRjaCBp biBnaXQKKyAgICAgICAgIHNwZWNfZmlsZSA9ICdtb2R1bGUuc3BlYycKK0BAIC0xMDMsNyArMTA2 LDYgQEAgUGF0Y2gzOiBkLnBhdGgKKyAgICAgICAgICAgICAgICAgZi53cml0ZShwYXRjaF9maWxl KQorIAorICAgICAgICAgIyBUcmFjayBjLnBhdGNoIGluIHNvdXJjZXMKKy0gICAgICAgIGZyb20g cHlycGtnLnNvdXJjZXMgaW1wb3J0IFNvdXJjZXNGaWxlCisgICAgICAgICBzb3VyY2VzX2ZpbGUg PSBTb3VyY2VzRmlsZShzZWxmLmNtZC5zb3VyY2VzX2ZpbGVuYW1lLAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgc2VsZi5jbWQuc291cmNlX2VudHJ5X3R5cGUpCisgICAgICAg ICBmaWxlX2hhc2ggPSBzZWxmLmNtZC5sb29rYXNpZGVjYWNoZS5oYXNoX2ZpbGUoJ2MucGF0Y2gn KQorZGlmZiAtLWdpdCBhL3Rlc3RzL3Rlc3RfY2xpLnB5IGIvdGVzdHMvdGVzdF9jbGkucHkKK2lu ZGV4IGRmMDUzYWEuLjg2OGFkMWYgMTAwNjQ0CistLS0gYS90ZXN0cy90ZXN0X2NsaS5weQorKysr IGIvdGVzdHMvdGVzdF9jbGkucHkKK0BAIC0xODQxLDkgKzE4NDEsMTEgQEAgY2xhc3MgVGVzdE1v Y2tidWlsZChDbGlUZXN0Q2FzZSk6CisgICAgIEBwYXRjaCgncHlycGtnLkNvbW1hbmRzLl9jb25m aWdfZGlyX2Jhc2ljJykKKyAgICAgQHBhdGNoKCdweXJwa2cuQ29tbWFuZHMuX2NvbmZpZ19kaXJf b3RoZXInKQorICAgICBAcGF0Y2goJ29zLnBhdGguZXhpc3RzJywgcmV0dXJuX3ZhbHVlPUZhbHNl KQorKyAgICBAcGF0Y2goJ3B5cnBrZy51dGlscy52YWxpZGF0ZV9wYXRoJykKKyAgICAgZGVmIHRl c3RfdXNlX21vY2tfY29uZmlnX2dvdF9mcm9tX2tvamkoCistICAgICAgICAgICAgc2VsZiwgZXhp c3RzLCBjb25maWdfZGlyX290aGVyLCBjb25maWdfZGlyX2Jhc2ljKToKKysgICAgICAgICAgICBz ZWxmLCB2YWxpZGF0ZV9wYXRoLCBleGlzdHMsIGNvbmZpZ19kaXJfb3RoZXIsIGNvbmZpZ19kaXJf YmFzaWMpOgorICAgICAgICAgbW9ja19sYXlvdXQgPSBsYXlvdXQuRGlzdEdpdExheW91dChyb290 X2Rpcj1zZWxmLmNsb25lZF9yZXBvX3BhdGgpCisrICAgICAgICB2YWxpZGF0ZV9wYXRoLnJldHVy bl92YWx1ZSA9IHNlbGYuY2xvbmVkX3JlcG9fcGF0aAorICAgICAgICAgd2l0aCBwYXRjaCgncHly cGtnLmxheW91dC5idWlsZCcsIHJldHVybl92YWx1ZT1tb2NrX2xheW91dCk6CisgICAgICAgICAg ICAgY29uZmlnX2Rpcl9iYXNpYy5yZXR1cm5fdmFsdWUgPSAnL3BhdGgvdG8vY29uZmlnLWRpcicK KyAKK0BAIC0xODU5LDkgKzE4NjEsMTEgQEAgY2xhc3MgVGVzdE1vY2tidWlsZChDbGlUZXN0Q2Fz ZSk6CisgCisgICAgIEBwYXRjaCgncHlycGtnLkNvbW1hbmRzLl9jb25maWdfZGlyX2Jhc2ljJykK KyAgICAgQHBhdGNoKCdvcy5wYXRoLmV4aXN0cycsIHJldHVybl92YWx1ZT1GYWxzZSkKKysgICAg QHBhdGNoKCdweXJwa2cudXRpbHMudmFsaWRhdGVfcGF0aCcpCisgICAgIGRlZiB0ZXN0X2ZhaWxf dG9fc3RvcmVfbW9ja19jb25maWdfaW5fY3JlYXRlZF9jb25maWdfZGlyKAorLSAgICAgICAgICAg IHNlbGYsIGV4aXN0cywgY29uZmlnX2Rpcl9iYXNpYyk6CisrICAgICAgICAgICAgc2VsZiwgdmFs aWRhdGVfcGF0aCwgZXhpc3RzLCBjb25maWdfZGlyX2Jhc2ljKToKKyAgICAgICAgIGNvbmZpZ19k aXJfYmFzaWMuc2lkZV9lZmZlY3QgPSBycGtnRXJyb3IKKysgICAgICAgIHZhbGlkYXRlX3BhdGgu cmV0dXJuX3ZhbHVlID0gc2VsZi5jbG9uZWRfcmVwb19wYXRoCisgCisgICAgICAgICBjbGlfY21k ID0gWydycGtnJywgJy0tcGF0aCcsIHNlbGYuY2xvbmVkX3JlcG9fcGF0aCwKKyAgICAgICAgICAg ICAgICAgICAgJy0tcmVsZWFzZScsICdyaGVsLTcnLCAnbW9ja2J1aWxkJ10KK0BAIC0xODcwLDEw ICsxODc0LDEyIEBAIGNsYXNzIFRlc3RNb2NrYnVpbGQoQ2xpVGVzdENhc2UpOgorICAgICBAcGF0 Y2goJ3B5cnBrZy5Db21tYW5kcy5fY29uZmlnX2Rpcl9iYXNpYycpCisgICAgIEBwYXRjaCgncHly cGtnLkNvbW1hbmRzLl9jb25maWdfZGlyX290aGVyJykKKyAgICAgQHBhdGNoKCdvcy5wYXRoLmV4 aXN0cycsIHJldHVybl92YWx1ZT1GYWxzZSkKKysgICAgQHBhdGNoKCdweXJwa2cudXRpbHMudmFs aWRhdGVfcGF0aCcpCisgICAgIGRlZiB0ZXN0X2ZhaWxfdG9fcG9wdWxhdGVfbW9ja19jb25maWco CistICAgICAgICAgICAgc2VsZiwgZXhpc3RzLCBjb25maWdfZGlyX290aGVyLCBjb25maWdfZGly X2Jhc2ljKToKKysgICAgICAgICAgICBzZWxmLCB2YWxpZGF0ZV9wYXRoLCBleGlzdHMsIGNvbmZp Z19kaXJfb3RoZXIsIGNvbmZpZ19kaXJfYmFzaWMpOgorICAgICAgICAgY29uZmlnX2Rpcl9iYXNp Yy5yZXR1cm5fdmFsdWUgPSAnL3BhdGgvdG8vY29uZmlnLWRpcicKKyAgICAgICAgIGNvbmZpZ19k aXJfb3RoZXIuc2lkZV9lZmZlY3QgPSBycGtnRXJyb3IKKysgICAgICAgIHZhbGlkYXRlX3BhdGgu cmV0dXJuX3ZhbHVlID0gc2VsZi5jbG9uZWRfcmVwb19wYXRoCisgCisgICAgICAgICBjbGlfY21k ID0gWydycGtnJywgJy0tcGF0aCcsIHNlbGYuY2xvbmVkX3JlcG9fcGF0aCwKKyAgICAgICAgICAg ICAgICAgICAgJy0tcmVsZWFzZScsICdyaGVsLTcnLCAnbW9ja2J1aWxkJ10KKy0tIAorMi4zOS4y CisKCmRpZmYgLS1naXQgYS8wMDA4LVVwZGF0ZS10by1zcGVjLWZpbGUtcHJlc2VuY2UtY2hlY2tp bmcucGF0Y2ggYi8wMDA4LVVwZGF0ZS10by1zcGVjLWZpbGUtcHJlc2VuY2UtY2hlY2tpbmcucGF0 Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzIzNDE1ZgotLS0gL2Rldi9u dWxsCisrKyBiLzAwMDgtVXBkYXRlLXRvLXNwZWMtZmlsZS1wcmVzZW5jZS1jaGVja2luZy5wYXRj aApAQCAtMCwwICsxLDQzIEBACitGcm9tIDc5MWZkMDNiNGRlMTMyNDUwODU4M2FiNTNjODljYzY3 NDU5ZGIzNTUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBPbmRyZWogTm9zZWsgPG9u b3Nla0ByZWRoYXQuY29tPgorRGF0ZTogVHVlLCAyMSBNYXIgMjAyMyAxMzo0NDozOCArMDEwMAor U3ViamVjdDogW1BBVENIIDA4LzEyXSBVcGRhdGUgdG8gc3BlYyBmaWxlIHByZXNlbmNlIGNoZWNr aW5nCisKK1VzaW5nIGEgZGlmZmVyZW50IGFwcHJvYWNoIHRvIGNoZWNraW5nIHRoZSBsYXlvdXQu IE9sZGVyIHdheSBwcmV2ZW50ZWQKK2ByZXRpcmVgIGZ1bmN0aW9uIHdvcmtpbmcgY29ycmVjdGx5 LiBMYXlvdXRzIGFyZSBkZXRlY3RlZCBhdCB0aGUKK2JlZ2lubmluZyBvZiB0aGUgcnVuIGFuZCB0 aGUgcmVzdWx0IHN0YXlzIHRoZSBzYW1lLCB1bmxpa2UgdGhlIGRpcmVjdAorY2hlY2tpbmcgZmls ZXMgbGlrZSBkZWFkLnBhY2thZ2UgaW4gZnVuY3Rpb24gYGlzX3JldGlyZWRgLgorCitGaXhlczog IzY2MworSklSQTogUkhFTENNUC0xMTM4NworCitTaWduZWQtb2ZmLWJ5OiBPbmRyZWogTm9zZWsg PG9ub3Nla0ByZWRoYXQuY29tPgorLS0tCisgcHlycGtnL19faW5pdF9fLnB5IHwgNCArKy0tCisg MSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworZGlmZiAt LWdpdCBhL3B5cnBrZy9fX2luaXRfXy5weSBiL3B5cnBrZy9fX2luaXRfXy5weQoraW5kZXggMDI4 ZDE5NS4uZThmNDg4NiAxMDA2NDQKKy0tLSBhL3B5cnBrZy9fX2luaXRfXy5weQorKysrIGIvcHly cGtnL19faW5pdF9fLnB5CitAQCAtOTI1LDcgKzkyNSw3IEBAIGNsYXNzIENvbW1hbmRzKG9iamVj dCk6CisgCisgICAgICAgICBpZiBzZWxmLmxheW91dCBpcyBOb25lIG9yIGlzaW5zdGFuY2Uoc2Vs Zi5sYXlvdXQsIGxheW91dC5JbmNvbXBsZXRlTGF5b3V0KToKKyAgICAgICAgICAgICByYWlzZSBy cGtnRXJyb3IoJ1NwZWMgZmlsZSBpcyBub3QgYXZhaWxhYmxlJykKKy0gICAgICAgIGlmIHNlbGYu aXNfcmV0aXJlZCgpOgorKyAgICAgICAgaWYgaXNpbnN0YW5jZShzZWxmLmxheW91dCwgbGF5b3V0 LlJldGlyZWRMYXlvdXQpOgorICAgICAgICAgICAgIHJhaXNlIHJwa2dFcnJvcignVGhpcyBwYWNr YWdlIG9yIG1vZHVsZSBpcyByZXRpcmVkLiBUaGUgYWN0aW9uIGhhcyBzdG9wcGVkLicpCisgCisg ICAgICAgICAjIEdldCBhIGxpc3Qgb2YgIi5zcGVjIiBmaWxlcyBpbiB0aGUgcGF0aCB3ZSdyZSBs b29raW5nIGF0CitAQCAtMTE2Nyw3ICsxMTY3LDcgQEAgY2xhc3MgQ29tbWFuZHMob2JqZWN0KToK KyAgICAgZGVmIHNvdXJjZXNfZmlsZW5hbWUoc2VsZik6CisgICAgICAgICBpZiBzZWxmLmxheW91 dCBpcyBOb25lIG9yIGlzaW5zdGFuY2Uoc2VsZi5sYXlvdXQsIGxheW91dC5JbmNvbXBsZXRlTGF5 b3V0KToKKyAgICAgICAgICAgICByYWlzZSBycGtnRXJyb3IoJ1NwZWMgZmlsZSBpcyBub3QgYXZh aWxhYmxlJykKKy0gICAgICAgIGlmIHNlbGYuaXNfcmV0aXJlZCgpOgorKyAgICAgICAgaWYgaXNp bnN0YW5jZShzZWxmLmxheW91dCwgbGF5b3V0LlJldGlyZWRMYXlvdXQpOgorICAgICAgICAgICAg IHJhaXNlIHJwa2dFcnJvcignVGhpcyBwYWNrYWdlIG9yIG1vZHVsZSBpcyByZXRpcmVkLiBUaGUg YWN0aW9uIGhhcyBzdG9wcGVkLicpCisgICAgICAgICByZXR1cm4gb3MucGF0aC5qb2luKAorICAg ICAgICAgICAgIHNlbGYucGF0aCwgc2VsZi5sYXlvdXQuc291cmNlc19maWxlX3RlbXBsYXRlLnJl cGxhY2UoInswLnJlcG9fbmFtZX0iLCBzZWxmLnJlcG9fbmFtZSkpCistLSAKKzIuMzkuMgorCgpk aWZmIC0tZ2l0IGEvMDAwOS1BZGQtbW9yZS1pbmZvcm1hdGlvbi1hYm91dC1wcmUtcHVzaC1ob29r LnBhdGNoIGIvMDAwOS1BZGQtbW9yZS1pbmZvcm1hdGlvbi1hYm91dC1wcmUtcHVzaC1ob29rLnBh dGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjYwYmFkMjcKLS0tIC9kZXYv bnVsbAorKysgYi8wMDA5LUFkZC1tb3JlLWluZm9ybWF0aW9uLWFib3V0LXByZS1wdXNoLWhvb2su cGF0Y2gKQEAgLTAsMCArMSw0NCBAQAorRnJvbSAwMzkzZGMzOWJmNDUwY2YyMGRmOWRiNjNiYWMx MzVjMDc4ZjY0YTE0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogPT9VVEYtOD9xP0x1 Ym9tPUMzPUFEcj0yMFNlZGw9QzM9QTE9QzU9OTk/PSA8bHNlZGxhckByZWRoYXQuY29tPgorRGF0 ZTogVHVlLCAyOCBNYXIgMjAyMyAwODo1MzozMCArMDIwMAorU3ViamVjdDogW1BBVENIIDA5LzEy XSBBZGQgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCBwcmUtcHVzaCBob29rCitNSU1FLVZlcnNpb246 IDEuMAorQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04CitDb250ZW50LVRy YW5zZmVyLUVuY29kaW5nOiA4Yml0CisKK0l0J3Mgbm90IG9idmlvdXMgdG8gbWFueSB1c2VycyB3 aGVyZSB0aGUgY2hlY2sgaXMgY29taW5nIGZyb20sIGFuZCB0aGV5CitoYXZlIHRoZSBwb3dlciB0 byBlZGl0IHRoZSBzY3JpcHQgb3IgZGVsZXRlIGl0IGNvbXBsZXRlbHkuIExldCdzIHRyeSB0bwor aW1wcm92ZSB0aGF0IGEgYml0LgorCitTaWduZWQtb2ZmLWJ5OiBMdWJvbcOtciBTZWRsw6HFmSA8 bHNlZGxhckByZWRoYXQuY29tPgorLS0tCisgcHlycGtnL19faW5pdF9fLnB5IHwgNiArKysrKy0K KyAxIGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCisKK2RpZmYg LS1naXQgYS9weXJwa2cvX19pbml0X18ucHkgYi9weXJwa2cvX19pbml0X18ucHkKK2luZGV4IGU4 ZjQ4ODYuLjdhM2M5YzYgMTAwNjQ0CistLS0gYS9weXJwa2cvX19pbml0X18ucHkKKysrKyBiL3B5 cnBrZy9fX2luaXRfXy5weQorQEAgLTE4MDYsNiArMTgwNiwxMCBAQCBjbGFzcyBDb21tYW5kcyhv YmplY3QpOgorICAgICAgICAgaG9va19jb250ZW50ID0gdGV4dHdyYXAuZGVkZW50KCIiIgorICAg ICAgICAgICAgICMhL2Jpbi9iYXNoCisgCisrICAgICAgICAgICAgIyBUaGlzIGZpbGUgd2FzIGdl bmVyYXRlZCBieSB7MH0gd2hlbiBjbG9uaW5nIHRoZSByZXBvc2l0b3J5LgorKyAgICAgICAgICAg ICMgWW91IGNhbiBlZGl0IGl0IHRvIHlvdXIgbGlraW5nIG9yIGRlbGV0ZSBjb21wbGV0ZWx5LiBJ dCB3aWxsIG5vdAorKyAgICAgICAgICAgICMgYmUgcmVjcmVhdGVkLgorKworICAgICAgICAgICAg IF9yZW1vdGU9IiQxIgorICAgICAgICAgICAgIF91cmw9IiQyIgorIAorQEAgLTQ0MjksNyArNDQz Myw3IEBAIGNsYXNzIENvbW1hbmRzKG9iamVjdCk6CisgICAgICAgICByZXR1cm4gc2VsZi5fcmVw b19uYW1lLCB2ZXJzaW9uLCByZWxlYXNlCisgCisgICAgIGRlZiBwcmVfcHVzaF9jaGVjayhzZWxm LCByZWYpOgorLSAgICAgICAgc2hvd19oaW50ID0gKCdIaW50OiB0aGlzIGNoZWNrIChwcmUtcHVz aCBob29rIHNjcmlwdCkgY2FuIGJlIGJ5cGFzc2VkIGJ5IGFkZGluZyAnCisrICAgICAgICBzaG93 X2hpbnQgPSAoJ0hpbnQ6IHRoaXMgY2hlY2sgKC5naXQvaG9va3MvcHJlLXB1c2ggc2NyaXB0KSBj YW4gYmUgYnlwYXNzZWQgYnkgYWRkaW5nICcKKyAgICAgICAgICAgICAgICAgICAgICAndGhlIGFy Z3VtZW50IFwnLS1uby12ZXJpZnlcJyBhcmd1bWVudCB0byB0aGUgcHVzaCBjb21tYW5kLicpCisg ICAgICAgICB0cnk6CisgICAgICAgICAgICAgY29tbWl0ID0gc2VsZi5yZXBvLmNvbW1pdChyZWYp CistLSAKKzIuMzkuMgorCgpkaWZmIC0tZ2l0IGEvMDAxMC1wcmUtcHVzaC1jaGVjay1oYXZlLXRv LXVzZS1zcGVjdG9vbC13aXRoLWRlZmluZS5wYXRjaCBiLzAwMTAtcHJlLXB1c2gtY2hlY2staGF2 ZS10by11c2Utc3BlY3Rvb2wtd2l0aC1kZWZpbmUucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggMDAwMDAwMC4uYmZlNzA5NAotLS0gL2Rldi9udWxsCisrKyBiLzAwMTAtcHJlLXB1c2gt Y2hlY2staGF2ZS10by11c2Utc3BlY3Rvb2wtd2l0aC1kZWZpbmUucGF0Y2gKQEAgLTAsMCArMSwx NDYgQEAKK0Zyb20gZDViZTUxZWVjOTkxMDhjMzgwOTU1MWI2MTUwNjRkMGM1Y2JlNjI4YSBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IE9uZHJlaiBOb3NlayA8b25vc2VrQHJlZGhhdC5j b20+CitEYXRlOiBUdWUsIDI4IE1hciAyMDIzIDE5OjU4OjA2ICswMjAwCitTdWJqZWN0OiBbUEFU Q0ggMTAvMTJdIGBwcmUtcHVzaC1jaGVja2AgaGF2ZSB0byB1c2Ugc3BlY3Rvb2wgd2l0aCAtLWRl ZmluZQorCitUbyBnZXQgYWxsIGRlZmluZWQgc291cmNlIGZpbGVzIGFuZCBwYXRjaGVzIGZyb20g dGhlIHNwZWNmaWxlLAordGhlICdzcGVjdG9vbCcgdXRpbGl0eSBuZWVkcyAnLS1kZWZpbmUnIGFy Z3VtZW50KHMpIHRvIHNldCBzcGVjaWZpYworcGF0aHMgZm9yIHRoZSByZXBvc2l0b3J5LgorCitK SVJBOiBSSEVMQ01QLTExNDY2CitGaXhlczogIzY3MgorCitTaWduZWQtb2ZmLWJ5OiBPbmRyZWog Tm9zZWsgPG9ub3Nla0ByZWRoYXQuY29tPgorLS0tCisgcHlycGtnL19faW5pdF9fLnB5ICAgICAg ICAgICAgICAgICAgICB8IDU3ICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLQorIHRlc3RzL2Nv bW1hbmRzL3Rlc3RfcHJlX3B1c2hfY2hlY2sucHkgfCAgMyArLQorIDIgZmlsZXMgY2hhbmdlZCwg MzMgaW5zZXJ0aW9ucygrKSwgMjcgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9weXJwa2cv X19pbml0X18ucHkgYi9weXJwa2cvX19pbml0X18ucHkKK2luZGV4IDdhM2M5YzYuLjU4NGMxNDEg MTAwNjQ0CistLS0gYS9weXJwa2cvX19pbml0X18ucHkKKysrKyBiL3B5cnBrZy9fX2luaXRfXy5w eQorQEAgLTQ0NDIsMzAgKzQ0NDIsNDEgQEAgY2xhc3MgQ29tbWFuZHMob2JqZWN0KToKKyAgICAg ICAgICAgICBzeXMuZXhpdCgxKQorIAorICAgICAgICAgdHJ5OgorKyAgICAgICAgICAgIGNsb25l X2RpciA9IHRlbXBmaWxlLm1rZHRlbXAocHJlZml4PSJwcmVfcHVzaF9ob29rXyIpCisrICAgICAg ICAgICAgZm9yIGNtZCBpbiBbCisrICAgICAgICAgICAgICAgICgnZ2l0JywgJ2Nsb25lJywgc2Vs Zi5wYXRoLCBjbG9uZV9kaXIpLAorKyAgICAgICAgICAgICAgICAoJ2dpdCcsICdjaGVja291dCcs IHJlZiksCisrICAgICAgICAgICAgXToKKysgICAgICAgICAgICAgICAgcmV0LCBfLCBfID0gc2Vs Zi5fcnVuX2NvbW1hbmQoY21kLCBjd2Q9Y2xvbmVfZGlyLAorKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAjIHN1cHByZXNzIHVud2FudGVkIHByaW50aW5nIG9m IGNvbW1hbmQgbGluZSBtZXNzYWdlcworKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICByZXR1cm5fc3Rkb3V0PVRydWUsIHJldHVybl9zdGRlcnI9VHJ1ZSkKKysg ICAgICAgICAgICAgICAgaWYgcmV0ICE9IDA6CisrICAgICAgICAgICAgICAgICAgICBzZWxmLmxv Zy5lcnJvcignQ29tbWFuZCBcJ3swfVwnIGZhaWxlZC4gUHVzaCBvcGVyYXRpb24gJworKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3dhcyBjYW5jZWxsZWQuJy5mb3JtYXQoJyAn LmpvaW4oY21kKSkpCisrICAgICAgICAgICAgICAgICAgICBzZWxmLmxvZy53YXJuaW5nKHNob3df aGludCkKKysgICAgICAgICAgICAgICAgICAgIHN5cy5leGl0KDIpCisrCisrICAgICAgICAgICAg IyBnZXQgYWxsIHNvdXJjZSBmaWxlcyBmcm9tIHRoZSBzcGVjZmlsZSAoaW5jbHVkaW5nIHBhdGNo ZXMpCisgICAgICAgICAgICAgIyBBc3N1bWUsIHRoYXQgc3BlY2ZpbGUgbmFtZXMgYXJlIHNhbWUg aW4gdGhlIGFjdGl2ZSBicmFuY2gKKyAgICAgICAgICAgICAjIGFuZCBpbiB0aGUgcHVzaGVkIGJy YW5jaCAoZ2l0IGNoZWNrb3V0IGYzNyAmJiBnaXQgcHVzaCBvcmlnaW4gcmF3aGlkZSkKKyAgICAg ICAgICAgICAjIGluIHRoaXMgY2FzZSAnZjM3JyBpcyBhY3RpdmUgYnJhbmNoIGFuZCAncmF3aGlk ZScgaXMgcHVzaGVkIGJyYW5jaC4KKyAgICAgICAgICAgICBzcGVjZmlsZV9wYXRoX2Fic29sdXRl ID0gb3MucGF0aC5qb2luKHNlbGYubGF5b3V0LnNwZWNkaXIsIHNlbGYuc3BlYykKKyAgICAgICAg ICAgICAjIGNvbnZlcnQgdG8gcmVsYXRpdmUgcGF0aAorICAgICAgICAgICAgIHNwZWNmaWxlX3Bh dGggPSBvcy5wYXRoLnJlbHBhdGgoc3BlY2ZpbGVfcGF0aF9hYnNvbHV0ZSwgc3RhcnQ9c2VsZi5w YXRoKQorLSAgICAgICAgICAgIHNwZWNfY29udGVudCA9IHNlbGYucmVwby5naXQuY2F0X2ZpbGUo Ii1wIiwgInswfTp7MX0iLmZvcm1hdChyZWYsIHNwZWNmaWxlX3BhdGgpKQorLSAgICAgICAgZXhj ZXB0IEV4Y2VwdGlvbjoKKy0gICAgICAgICAgICAjIEl0IG1pZ2h0IGJlIHRoZSBjYXNlIG9mIGFu IGVtcHR5IGNvbW1pdAorLSAgICAgICAgICAgIHNlbGYubG9nLndhcm5pbmcoJ1NwZWNmaWxlIGRv ZXNuXCd0IGV4aXN0LiBQdXNoIG9wZXJhdGlvbiBjb250aW51ZXMuJykKKy0gICAgICAgICAgICBy ZXR1cm4KKy0KKy0gICAgICAgICMgbG9hZCBzcGVjZmlsZSBjb250ZW50IGZyb20gcHVzaGVkIGJy YW5jaCBhbmQgc2F2ZSBpdCBpbnRvIGEgdGVtcG9yYXJ5IGZpbGUKKy0gICAgICAgIHdpdGggdGVt cGZpbGUuTmFtZWRUZW1wb3JhcnlGaWxlKG1vZGU9IncrIikgYXMgdGVtcG9yYXJ5X3NwZWM6Cist ICAgICAgICAgICAgdGVtcG9yYXJ5X3NwZWMud3JpdGUoc3BlY19jb250ZW50KQorLSAgICAgICAg ICAgIHRlbXBvcmFyeV9zcGVjLmZsdXNoKCkKKy0gICAgICAgICAgICAjIGdldCBhbGwgc291cmNl IGZpbGVzIGZyb20gdGhlIHNwZWNmaWxlIChpbmNsdWRpbmcgcGF0Y2hlcykKKy0gICAgICAgICAg ICBjbWQgPSAoJ3NwZWN0b29sJywgJy1sJywgdGVtcG9yYXJ5X3NwZWMubmFtZSkKKy0gICAgICAg ICAgICByZXQsIHN0ZG91dCwgXyA9IHNlbGYuX3J1bl9jb21tYW5kKGNtZCwgcmV0dXJuX3RleHQ9 VHJ1ZSwgcmV0dXJuX3N0ZG91dD1UcnVlKQorKyAgICAgICAgICAgIGNtZCA9IFsnc3BlY3Rvb2wn LCAnLWwnLCBvcy5wYXRoLmpvaW4oY2xvbmVfZGlyLCBzcGVjZmlsZV9wYXRoKV0KKysgICAgICAg ICAgICAjIGV4dHJhY3QganVzdCAnLS1kZWZpbmUnIGFyZ3VtZW50cyBmcm9tIHJwbWRlZmluZXMK KysgICAgICAgICAgICBmb3Igb3B0LCB2YWwgaW4gemlwKHNlbGYucnBtZGVmaW5lc1swOjoyXSwg c2VsZi5ycG1kZWZpbmVzWzE6OjJdKToKKysgICAgICAgICAgICAgICAgaWYgb3B0ID09ICctLWRl ZmluZSc6CisrICAgICAgICAgICAgICAgICAgICBjbWQuZXh0ZW5kKChvcHQsIHZhbCkpCisrICAg ICAgICAgICAgcmV0LCBzdGRvdXQsIF8gPSBzZWxmLl9ydW5fY29tbWFuZChjbWQsIGN3ZD1jbG9u ZV9kaXIsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBy ZXR1cm5fdGV4dD1UcnVlLCByZXR1cm5fc3Rkb3V0PVRydWUpCisgICAgICAgICAgICAgaWYgcmV0 ICE9IDA6CisgICAgICAgICAgICAgICAgIHNlbGYubG9nLmVycm9yKCdDb21tYW5kIFwnezB9XCcg ZmFpbGVkLiBQdXNoIG9wZXJhdGlvbiAnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICd3YXMgY2FuY2VsbGVkLicuZm9ybWF0KCcgJy5qb2luKGNtZCkpKQorICAgICAgICAgICAgICAg ICBzZWxmLmxvZy53YXJuaW5nKHNob3dfaGludCkKKy0gICAgICAgICAgICAgICAgc3lzLmV4aXQo MikKKysgICAgICAgICAgICAgICAgc3lzLmV4aXQoMykKKysgICAgICAgIGZpbmFsbHk6CisrICAg ICAgICAgICAgc2VsZi5fY2xlYW51cF90bXBfZGlyKGNsb25lX2RpcikKKyAKKyAgICAgICAgIHNv dXJjZV9maWxlcyA9IFtdCisgICAgICAgICAjIGV4dHJhY3Qgc291cmNlIGZpbGVzIGZyb20gdGhl IHNwZWN0b29sJ3Mgb3V0cHV0CitAQCAtNDQ5MCwyMiArNDUwMSwxNiBAQCBjbGFzcyBDb21tYW5k cyhvYmplY3QpOgorICAgICAgICAgICAgIHNvdXJjZXNfZmlsZV9wYXRoX2Fic29sdXRlID0gc2Vs Zi5zb3VyY2VzX2ZpbGVuYW1lCisgICAgICAgICAgICAgIyBjb252ZXJ0IHRvIHJlbGF0aXZlIHBh dGgKKyAgICAgICAgICAgICBzb3VyY2VzX2ZpbGVfcGF0aCA9IG9zLnBhdGgucmVscGF0aChzb3Vy Y2VzX2ZpbGVfcGF0aF9hYnNvbHV0ZSwgc3RhcnQ9c2VsZi5wYXRoKQorLSAgICAgICAgICAgIHNv dXJjZXNfZmlsZV9jb250ZW50ID0gc2VsZi5yZXBvLmdpdC5jYXRfZmlsZSgKKy0gICAgICAgICAg ICAgICAgJy1wJywgJ3swfTp7MX0nLmZvcm1hdChyZWYsIHNvdXJjZXNfZmlsZV9wYXRoKSkKKysK KysgICAgICAgICAgICAjIHBhcnNlICdzb3VyY2VzJyBmaWxlcyBjb250ZW50CisrICAgICAgICAg ICAgc291cmNlc2YgPSBTb3VyY2VzRmlsZShzb3VyY2VzX2ZpbGVfcGF0aCwgc2VsZi5zb3VyY2Vf ZW50cnlfdHlwZSkKKysgICAgICAgICAgICBzb3VyY2VzZl9lbnRyaWVzID0gc2V0KGl0ZW0uZmls ZSBmb3IgaXRlbSBpbiBzb3VyY2VzZi5lbnRyaWVzKQorICAgICAgICAgZXhjZXB0IEV4Y2VwdGlv bjoKKyAgICAgICAgICAgICBzZWxmLmxvZy53YXJuaW5nKCdcJ3NvdXJjZXNcJyBmaWxlIGRvZXNu XCd0IGV4aXN0LiBQdXNoIG9wZXJhdGlvbiBjb250aW51ZXMuJykKKyAgICAgICAgICAgICAjIE5P VEU6IGNoZWNrIGRvZXNuJ3QgZmFpbCB3aGVuICdzb3VyY2VzJyBmaWxlIGRvZXNuJ3QgZXhpc3Qu IEp1c3Qgc2tpcHMgdGhlIHJlc3QuCisgICAgICAgICAgICAgIyBpdCBtaWdodCBiZSB0aGUgY2Fz ZSBvZiB0aGUgcHVzaCB3aXRob3V0ICdzb3VyY2VzJyA9IHJldGlyaW5nIHRoZSByZXBvc2l0b3J5 CisgICAgICAgICAgICAgcmV0dXJuCisgCistICAgICAgICAjIGxvYWQgJ3NvdXJjZXMnIGZpbGUg Y29udGVudCBmcm9tIHB1c2hlZCBicmFuY2ggYW5kIHNhdmUgaXQgaW50byBhIHRlbXBvcmFyeSBm aWxlCistICAgICAgICB3aXRoIHRlbXBmaWxlLk5hbWVkVGVtcG9yYXJ5RmlsZShtb2RlPSJ3KyIp IGFzIHRlbXBvcmFyeV9zb3VyY2VzX2ZpbGU6CistICAgICAgICAgICAgdGVtcG9yYXJ5X3NvdXJj ZXNfZmlsZS53cml0ZShzb3VyY2VzX2ZpbGVfY29udGVudCkKKy0gICAgICAgICAgICB0ZW1wb3Jh cnlfc291cmNlc19maWxlLmZsdXNoKCkKKy0gICAgICAgICAgICAjIHBhcnNlICdzb3VyY2VzJyBm aWxlcyBjb250ZW50CistICAgICAgICAgICAgc291cmNlc2YgPSBTb3VyY2VzRmlsZSh0ZW1wb3Jh cnlfc291cmNlc19maWxlLm5hbWUsIHNlbGYuc291cmNlX2VudHJ5X3R5cGUpCistICAgICAgICBz b3VyY2VzZl9lbnRyaWVzID0gc2V0KGl0ZW0uZmlsZSBmb3IgaXRlbSBpbiBzb3VyY2VzZi5lbnRy aWVzKQorLQorICAgICAgICAgIyBsaXN0IG9mIGFsbCBmaWxlcyAodGhlaXIgcmVsYXRpdmUgcGF0 aHMpIGluIHRoZSBjb21taXQKKyAgICAgICAgIHJlcG9fZW50cmllcyA9IHNldChpdGVtLnBhdGgg Zm9yIGl0ZW0gaW4gY29tbWl0LnRyZWUudHJhdmVyc2UoKSBpZiBpdGVtLnR5cGUgIT0gInRyZWUi KQorIAorQEAgLTQ1MTgsNyArNDUyMyw3IEBAIGNsYXNzIENvbW1hbmRzKG9iamVjdCk6CisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICdub3IgdHJhY2tlZCBpbiBnaXQuICcKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1B1c2ggb3BlcmF0aW9uIHdhcyBjYW5jZWxsZWQn LmZvcm1hdChzb3VyY2VfZmlsZSkpCisgICAgICAgICAgICAgICAgIHNlbGYubG9nLndhcm5pbmco c2hvd19oaW50KQorLSAgICAgICAgICAgICAgICBzeXMuZXhpdCgzKQorKyAgICAgICAgICAgICAg ICBzeXMuZXhpdCg0KQorIAorICAgICAgICAgIyB2ZXJpZnkgYWxsIGZpbGUgZW50cmllcyBpbiAn c291cmNlcycgd2VyZSB1cGxvYWRlZCB0byB0aGUgbG9va2FzaWRlIGNhY2hlCisgICAgICAgICBm b3IgZW50cnkgaW4gc291cmNlc2YuZW50cmllczoKK0BAIC00NTMyLDYgKzQ1MzcsNiBAQCBjbGFz cyBDb21tYW5kcyhvYmplY3QpOgorICAgICAgICAgICAgICAgICBzZWxmLmxvZy5lcnJvcignU291 cmNlIGZpbGUgKG9yIHRhcmJhbGwpIFwne31cJyB3YXNuXCd0IHVwbG9hZGVkIHRvIHRoZSBsb29r YXNpZGUgJworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnY2FjaGUuIFB1c2ggb3Bl cmF0aW9uIHdhcyBjYW5jZWxsZWQuJy5mb3JtYXQoZmlsZW5hbWUpKQorICAgICAgICAgICAgICAg ICBzZWxmLmxvZy53YXJuaW5nKHNob3dfaGludCkKKy0gICAgICAgICAgICAgICAgc3lzLmV4aXQo NCkKKysgICAgICAgICAgICAgICAgc3lzLmV4aXQoNSkKKyAKKyAgICAgICAgIHJldHVybiAwICAj IFRoZSBwdXNoIG9wZXJhdGlvbiBjb250aW51ZXMKK2RpZmYgLS1naXQgYS90ZXN0cy9jb21tYW5k cy90ZXN0X3ByZV9wdXNoX2NoZWNrLnB5IGIvdGVzdHMvY29tbWFuZHMvdGVzdF9wcmVfcHVzaF9j aGVjay5weQoraW5kZXggNWUzMTRiOS4uZWUxNTFjMSAxMDA2NDQKKy0tLSBhL3Rlc3RzL2NvbW1h bmRzL3Rlc3RfcHJlX3B1c2hfY2hlY2sucHkKKysrKyBiL3Rlc3RzL2NvbW1hbmRzL3Rlc3RfcHJl X3B1c2hfY2hlY2sucHkKK0BAIC0zNyw2ICszNyw3IEBAIGNsYXNzIFRlc3RQcmVQdXNoQ2hlY2so Q29tbWFuZFRlc3RDYXNlKToKKyAgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICAgc3VwZXIo VGVzdFByZVB1c2hDaGVjaywgc2VsZikuc2V0VXAoKQorIAorKyAgICAgICAgc2VsZi5kaXN0ID0g InJoZWwtOCIKKyAgICAgICAgIHNlbGYubWFrZV9uZXdfZ2l0KHNlbGYubW9kdWxlKQorIAorICAg ICAgICAgbW9kdWxlZGlyID0gb3MucGF0aC5qb2luKHNlbGYuZ2l0cm9vdCwgc2VsZi5tb2R1bGUp CitAQCAtODcsNyArODgsNyBAQCBQYXRjaDM6IGQucGF0Y2gKKyAgICAgICAgIHdpdGggc2VsZi5h c3NlcnRSYWlzZXMoU3lzdGVtRXhpdCkgYXMgZXhjOgorICAgICAgICAgICAgIHNlbGYuY21kLnBy ZV9wdXNoX2NoZWNrKCJIRUFEIikKKyAKKy0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXhjLmV4 Y2VwdGlvbi5jb2RlLCAzKQorKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChleGMuZXhjZXB0aW9u LmNvZGUsIDQpCisgICAgICAgICBsb2dfZXJyb3IuYXNzZXJ0X2NhbGxlZF9vbmNlX3dpdGgoIlNv dXJjZSBmaWxlICdiLnBhdGNoJyB3YXMgbmVpdGhlciBsaXN0ZWQgaW4gdGhlICIKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJ3NvdXJjZXMnIGZpbGUgbm9yIHRy YWNrZWQgaW4gZ2l0LiBQdXNoIG9wZXJhdGlvbiAiCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIndhcyBjYW5jZWxsZWQiKQorLS0gCisyLjM5LjIKKwoKZGlmZiAt LWdpdCBhLzAwMTEtQS1IRUFELXF1ZXJ5LWludG8tYS1sb29rYXNpZGUtY2FjaGUucGF0Y2ggYi8w MDExLUEtSEVBRC1xdWVyeS1pbnRvLWEtbG9va2FzaWRlLWNhY2hlLnBhdGNoCm5ldyBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmEzMjgxYjIKLS0tIC9kZXYvbnVsbAorKysgYi8wMDEx LUEtSEVBRC1xdWVyeS1pbnRvLWEtbG9va2FzaWRlLWNhY2hlLnBhdGNoCkBAIC0wLDAgKzEsOTcg QEAKK0Zyb20gNzdjZDYwOGU1OTZhZjk0ODExYzIyYTE2ZmY1OGEyNjVkOWM3MzgxZSBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IE9uZHJlaiBOb3NlayA8b25vc2VrQHJlZGhhdC5jb20+ CitEYXRlOiBGcmksIDMxIE1hciAyMDIzIDE0OjA5OjA5ICswMjAwCitTdWJqZWN0OiBbUEFUQ0gg MTEvMTJdIEEgSEVBRCBxdWVyeSBpbnRvIGEgbG9va2FzaWRlIGNhY2hlCisKK0EgcXVlcnkgYWJv dXQgd2hldGhlciBzb21lIGZpbGUgaXMgcHJlc2VudCBpbiB0aGUgbG9va2FzaWRlIGNhY2hlIHdh cwordW5kZXIgYXV0aGVudGljYXRpb24gYW5kIGl0IHByZXZlbnRlZCB1c2luZyBjb21tYW5kIGBw cmUtcHVzaC1jaGVja2AKK2ZvciB0aG9zZSB3aXRob3V0IHRoZSAncGFja2FnZXInIHBlcm1pc3Np b24uCitBZGRlZCBhbm90aGVyIG1ldGhvZCAoYmFzZWQgb24gSFRUUCBIRUFEKSwgdGhhdCBhbGxv d3MgdGhlIHNhbWUgY2hlY2sKK3dpdGhvdXQgYXV0aGVudGljYXRpb24uCisKK0pJUkE6IFJIRUxD TVAtMTE0ODUKK0ZpeGVzOiBodHRwczovL3BhZ3VyZS5pby9mZWRwa2cvaXNzdWUvNTEzCisKK1Np Z25lZC1vZmYtYnk6IE9uZHJlaiBOb3NlayA8b25vc2VrQHJlZGhhdC5jb20+CistLS0KKyBweXJw a2cvX19pbml0X18ucHkgIHwgIDIgKy0KKyBweXJwa2cvbG9va2FzaWRlLnB5IHwgMzYgKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tCisgMiBmaWxlcyBjaGFuZ2VkLCAzNSBpbnNl cnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvcHlycGtnL19faW5pdF9f LnB5IGIvcHlycGtnL19faW5pdF9fLnB5CitpbmRleCA1ODRjMTQxLi4xNTIwM2I3IDEwMDY0NAor LS0tIGEvcHlycGtnL19faW5pdF9fLnB5CisrKysgYi9weXJwa2cvX19pbml0X18ucHkKK0BAIC00 NTI5LDcgKzQ1MjksNyBAQCBjbGFzcyBDb21tYW5kcyhvYmplY3QpOgorICAgICAgICAgZm9yIGVu dHJ5IGluIHNvdXJjZXNmLmVudHJpZXM6CisgICAgICAgICAgICAgZmlsZW5hbWUgPSBlbnRyeS5m aWxlCisgICAgICAgICAgICAgaGFzaCA9IGVudHJ5Lmhhc2gKKy0gICAgICAgICAgICBmaWxlX2V4 aXN0c19pbl9sb29rYXNpZGUgPSBzZWxmLmxvb2thc2lkZWNhY2hlLnJlbW90ZV9maWxlX2V4aXN0 cygKKysgICAgICAgICAgICBmaWxlX2V4aXN0c19pbl9sb29rYXNpZGUgPSBzZWxmLmxvb2thc2lk ZWNhY2hlLnJlbW90ZV9maWxlX2V4aXN0c19oZWFkKAorICAgICAgICAgICAgICAgICBzZWxmLm5z X3JlcG9fbmFtZSBpZiBzZWxmLmxvb2thc2lkZV9uYW1lc3BhY2VkIGVsc2Ugc2VsZi5yZXBvX25h bWUsCisgICAgICAgICAgICAgICAgIGZpbGVuYW1lLAorICAgICAgICAgICAgICAgICBoYXNoKQor ZGlmZiAtLWdpdCBhL3B5cnBrZy9sb29rYXNpZGUucHkgYi9weXJwa2cvbG9va2FzaWRlLnB5Citp bmRleCA5MGYwZjFlLi5lY2JmMTJiIDEwMDY0NAorLS0tIGEvcHlycGtnL2xvb2thc2lkZS5weQor KysrIGIvcHlycGtnL2xvb2thc2lkZS5weQorQEAgLTIyLDcgKzIyLDcgQEAgaW1wb3J0IHN5cwor IAorIGltcG9ydCBweWN1cmwKKyBpbXBvcnQgc2l4CistZnJvbSBzaXgubW92ZXMgaW1wb3J0IGh0 dHBfY2xpZW50CisrZnJvbSBzaXgubW92ZXMgaW1wb3J0IGh0dHBfY2xpZW50LCB1cmxsaWIKKyAK KyBmcm9tIC5lcnJvcnMgaW1wb3J0IChBbHJlYWR5VXBsb2FkZWRFcnJvciwgRG93bmxvYWRFcnJv ciwgSW52YWxpZEhhc2hUeXBlLAorICAgICAgICAgICAgICAgICAgICAgIFVwbG9hZEVycm9yKQor QEAgLTE1Nyw3ICsxNTcsNyBAQCBjbGFzcyBDR0lMb29rYXNpZGVDYWNoZShvYmplY3QpOgorICAg ICAgICAgICAgICAgICByZXR1cm4KKyAKKyAgICAgICAgIHNlbGYubG9nLmluZm8oIkRvd25sb2Fk aW5nICVzIiwgZmlsZW5hbWUpCistICAgICAgICB1cmxlZF9maWxlID0gZmlsZW5hbWUucmVwbGFj ZSgnICcsICclMjAnKQorKyAgICAgICAgdXJsZWRfZmlsZSA9IHVybGxpYi5wYXJzZS5xdW90ZShm aWxlbmFtZSkKKyAgICAgICAgIHVybCA9IHNlbGYuZ2V0X2Rvd25sb2FkX3VybChuYW1lLCB1cmxl ZF9maWxlLCBoYXNoLCBoYXNodHlwZSwgKiprd2FyZ3MpCisgICAgICAgICBpZiBpc2luc3RhbmNl KHVybCwgc2l4LnRleHRfdHlwZSk6CisgICAgICAgICAgICAgdXJsID0gdXJsLmVuY29kZSgndXRm LTgnKQorQEAgLTIwMCw2ICsyMDAsMzggQEAgY2xhc3MgQ0dJTG9va2FzaWRlQ2FjaGUob2JqZWN0 KToKKyAgICAgICAgIGlmIG5vdCBzZWxmLmZpbGVfaXNfdmFsaWQob3V0ZmlsZSwgaGFzaCwgaGFz aHR5cGU9aGFzaHR5cGUpOgorICAgICAgICAgICAgIHJhaXNlIERvd25sb2FkRXJyb3IoJyVzIGZh aWxlZCBjaGVja3N1bScgJSBmaWxlbmFtZSkKKyAKKysgICAgZGVmIHJlbW90ZV9maWxlX2V4aXN0 c19oZWFkKHNlbGYsIG5hbWUsIGZpbGVuYW1lLCBoYXNoKToKKysgICAgICAgICIiIlZlcmlmeSB3 aGV0aGVyIGEgZmlsZSBleGlzdHMgb24gdGhlIGxvb2thc2lkZSBjYWNoZS4KKysgICAgICAgIFVz ZXMgYSBIVFRQIEhFQUQgcmVxdWVzdCBhbmQgZG9lc24ndCByZXF1aXJlIGF1dGhlbnRpY2F0aW9u LgorKworKyAgICAgICAgOnBhcmFtIHN0ciBuYW1lOiBUaGUgbmFtZSBvZiB0aGUgbW9kdWxlLiAo dXN1YWxseSB0aGUgbmFtZSBvZiB0aGUKKysgICAgICAgICAgICBTUlBNKS4gVGhpcyBjYW4gaW5j bHVkZSB0aGUgbmFtZXNwYWNlIGFzIHdlbGwgKGRlcGVuZGluZyBvbiB3aGF0CisrICAgICAgICAg ICAgdGhlIHNlcnZlciBzaWRlIGV4cGVjdHMpLgorKyAgICAgICAgOnBhcmFtIHN0ciBmaWxlbmFt ZTogVGhlIG5hbWUgb2YgdGhlIGZpbGUgdG8gY2hlY2sgZm9yLgorKyAgICAgICAgOnBhcmFtIHN0 ciBoYXNoOiBUaGUga25vd24gZ29vZCBoYXNoIG9mIHRoZSBmaWxlLgorKyAgICAgICAgIiIiCisr CisrICAgICAgICB1cmxlZF9maWxlID0gdXJsbGliLnBhcnNlLnF1b3RlKGZpbGVuYW1lKQorKyAg ICAgICAgdXJsID0gc2VsZi5nZXRfZG93bmxvYWRfdXJsKG5hbWUsIHVybGVkX2ZpbGUsIGhhc2gs IHNlbGYuaGFzaHR5cGUpCisrCisrICAgICAgICBjID0gcHljdXJsLkN1cmwoKQorKyAgICAgICAg Yy5zZXRvcHQocHljdXJsLlVSTCwgdXJsKQorKyAgICAgICAgYy5zZXRvcHQocHljdXJsLk5PQk9E WSwgVHJ1ZSkKKysgICAgICAgIGMuc2V0b3B0KHB5Y3VybC5GT0xMT1dMT0NBVElPTiwgMSkKKysK KysgICAgICAgIHRyeToKKysgICAgICAgICAgICBjLnBlcmZvcm0oKQorKyAgICAgICAgICAgIHN0 YXR1cyA9IGMuZ2V0aW5mbyhweWN1cmwuUkVTUE9OU0VfQ09ERSkKKysgICAgICAgIGV4Y2VwdCBF eGNlcHRpb24gYXMgZToKKysgICAgICAgICAgICByYWlzZSBEb3dubG9hZEVycm9yKGUpCisrICAg ICAgICBmaW5hbGx5OgorKyAgICAgICAgICAgIGMuY2xvc2UoKQorKworKyAgICAgICAgaWYgc3Rh dHVzICE9IDIwMDoKKysgICAgICAgICAgICBzZWxmLmxvZy5kZWJ1ZygnVW5hdmFpbGFibGUgZmls ZSBcJyVzXCcgYXQgJXMnICUgKGZpbGVuYW1lLCB1cmwpKQorKyAgICAgICAgICAgIHJldHVybiBG YWxzZQorKyAgICAgICAgcmV0dXJuIFRydWUKKysKKyAgICAgZGVmIHJlbW90ZV9maWxlX2V4aXN0 cyhzZWxmLCBuYW1lLCBmaWxlbmFtZSwgaGFzaCk6CisgICAgICAgICAiIiJWZXJpZnkgd2hldGhl ciBhIGZpbGUgZXhpc3RzIG9uIHRoZSBsb29rYXNpZGUgY2FjaGUKKyAKKy0tIAorMi4zOS4yCisK CmRpZmYgLS1naXQgYS8wMDEyLXByZS1wdXNoLWhvb2stc2NyaXB0LWNvbnRhaW5zLWEtdXNlci1z LWNvbmZpZy5wYXRjaCBiLzAwMTItcHJlLXB1c2gtaG9vay1zY3JpcHQtY29udGFpbnMtYS11c2Vy LXMtY29uZmlnLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZmMjY3 NmQKLS0tIC9kZXYvbnVsbAorKysgYi8wMDEyLXByZS1wdXNoLWhvb2stc2NyaXB0LWNvbnRhaW5z LWEtdXNlci1zLWNvbmZpZy5wYXRjaApAQCAtMCwwICsxLDE5NyBAQAorRnJvbSAxZjAzZWI5MTAy Zjc2NWMzNmNjMjAxYTQ5OWQ4MTU3MzJlNjdkZDM5IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQor RnJvbTogT25kcmVqIE5vc2VrIDxvbm9zZWtAcmVkaGF0LmNvbT4KK0RhdGU6IE1vbiwgMjcgTWFy IDIwMjMgMjM6MzQ6MTIgKzAyMDAKK1N1YmplY3Q6IFtQQVRDSCAxMi8xMl0gcHJlLXB1c2ggaG9v ayBzY3JpcHQgY29udGFpbnMgYSB1c2VyJ3MgY29uZmlnCisKK1doZW4gdGhlIGBjbG9uZWAgY29t bWFuZCBpcyBjYWxsZWQgd2l0aCBhbiBhcmd1bWVudAorLUN8LS1jb25maWcgPGNvbmZpZ19maWxl PgordGhpcyBhcmd1bWVudCBpcyBwbGFjZWQgdG8gdGhlIGdlbmVyYXRlZCBwcmUtcHVzaCBzY3Jp cHQuCisKK0ZpeGVzOiAjNjY3CitKSVJBOiBSSEVMQ01QLTExMzk0CisKK1NpZ25lZC1vZmYtYnk6 IE9uZHJlaiBOb3NlayA8b25vc2VrQHJlZGhhdC5jb20+CistLS0KKyBweXJwa2cvX19pbml0X18u cHkgICAgICAgICAgIHwgMjMgKysrKysrKysrKysrLS0tLS0tLQorIHB5cnBrZy9jbGkucHkgICAg ICAgICAgICAgICAgfCAgNiArKystLQorIHRlc3RzL2NvbW1hbmRzL3Rlc3RfY2xvbmUucHkgfCA0 NCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyAzIGZpbGVzIGNoYW5nZWQs IDYzIGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvcHlycGtn L19faW5pdF9fLnB5IGIvcHlycGtnL19faW5pdF9fLnB5CitpbmRleCAxNTIwM2I3Li45OTk2NDAy IDEwMDY0NAorLS0tIGEvcHlycGtnL19faW5pdF9fLnB5CisrKysgYi9weXJwa2cvX19pbml0X18u cHkKK0BAIC0xNTY2LDcgKzE1NjYsOCBAQCBjbGFzcyBDb21tYW5kcyhvYmplY3QpOgorICAgICAg ICAgcmV0dXJuCisgCisgICAgIGRlZiBjbG9uZShzZWxmLCByZXBvLCBwYXRoPU5vbmUsIGJyYW5j aD1Ob25lLCBiYXJlX2Rpcj1Ob25lLAorLSAgICAgICAgICAgICAgYW5vbj1GYWxzZSwgdGFyZ2V0 PU5vbmUsIGRlcHRoPU5vbmUsIGV4dHJhX2FyZ3M9Tm9uZSk6CisrICAgICAgICAgICAgICBhbm9u PUZhbHNlLCB0YXJnZXQ9Tm9uZSwgZGVwdGg9Tm9uZSwgZXh0cmFfYXJncz1Ob25lLAorKyAgICAg ICAgICAgICAgY29uZmlnX3BhdGg9Tm9uZSk6CisgICAgICAgICAiIiJDbG9uZSBhIHJlcG8sIG9w dGlvbmFsbHkgY2hlY2sgb3V0IGEgc3BlY2lmaWMgYnJhbmNoLgorIAorICAgICAgICAgOnBhcmFt IHN0ciByZXBvOiB0aGUgbmFtZSBvZiB0aGUgcmVwb3NpdG9yeSB0byBjbG9uZS4KK0BAIC0xNTgz LDYgKzE1ODQsNyBAQCBjbGFzcyBDb21tYW5kcyhvYmplY3QpOgorICAgICAgICAgICAgIHRvIHRo ZSBzcGVjaWZpZWQgbnVtYmVyIG9mIGNvbW1pdHMuCisgICAgICAgICA6cGFyYW0gbGlzdCBleHRy YV9hcmdzOiBhZGRpdGlvbmFsIGFyZ3VtZW50cyB0aGF0IGFyZSBwYXNzZWQgdG8KKyAgICAgICAg ICAgICB0aGUgY2xvbmUgY29tbWFuZC4KKysgICAgICAgIDpwYXJhbSBzdHIgY29uZmlnX3BhdGg6 IHBhdGggdG8gdGhlIGdsb2JhbCBjb25maWcgZmlsZQorICAgICAgICAgIiIiCisgCisgICAgICAg ICBpZiBub3QgcGF0aDoKK0BAIC0xNjM4LDcgKzE2NDAsNyBAQCBjbGFzcyBDb21tYW5kcyhvYmpl Y3QpOgorIAorICAgICAgICAgaWYgbm90IGJhcmVfZGlyOgorICAgICAgICAgICAgIHNlbGYuX2Fk ZF9naXRfZXhjbHVkZXMob3MucGF0aC5qb2luKHBhdGgsIGdpdF9kaXIpKQorLSAgICAgICAgICAg IHNlbGYuX2FkZF9naXRfcHJlX3B1c2hfaG9vayhvcy5wYXRoLmpvaW4ocGF0aCwgZ2l0X2Rpcikp CisrICAgICAgICAgICAgc2VsZi5fYWRkX2dpdF9wcmVfcHVzaF9ob29rKG9zLnBhdGguam9pbihw YXRoLCBnaXRfZGlyKSwgY29uZmlnX3BhdGgpCisgCisgICAgICAgICByZXR1cm4KKyAKK0BAIC0x NjU0LDcgKzE2NTYsNyBAQCBjbGFzcyBDb21tYW5kcyhvYmplY3QpOgorICAgICAgICAgcmV0dXJu IHJlcG8KKyAKKyAgICAgZGVmIGNsb25lX3dpdGhfZGlycyhzZWxmLCByZXBvLCBhbm9uPUZhbHNl LCB0YXJnZXQ9Tm9uZSwgZGVwdGg9Tm9uZSwKKy0gICAgICAgICAgICAgICAgICAgICAgICBleHRy YV9hcmdzPU5vbmUpOgorKyAgICAgICAgICAgICAgICAgICAgICAgIGV4dHJhX2FyZ3M9Tm9uZSwg Y29uZmlnX3BhdGg9Tm9uZSk6CisgICAgICAgICAiIiJDbG9uZSBhIHJlcG8gb2xkIHN0eWxlIHdp dGggc3ViZGlycyBmb3IgZWFjaCBicmFuY2guCisgCisgICAgICAgICA6cGFyYW0gc3RyIHJlcG86 IG5hbWUgb2YgdGhlIHJlcG9zaXRvcnkgdG8gY2xvbmUuCitAQCAtMTY2Niw2ICsxNjY4LDcgQEAg Y2xhc3MgQ29tbWFuZHMob2JqZWN0KToKKyAgICAgICAgICAgICB0byB0aGUgc3BlY2lmaWVkIG51 bWJlciBvZiBjb21taXRzLgorICAgICAgICAgOnBhcmFtIGxpc3QgZXh0cmFfYXJnczogYWRkaXRp b25hbCBhcmd1bWVudHMgdGhhdCBhcmUgcGFzc2VkIHRvCisgICAgICAgICAgICAgdGhlIGNsb25l IGNvbW1hbmQuCisrICAgICAgICA6cGFyYW0gc3RyIGNvbmZpZ19wYXRoOiBwYXRoIHRvIHRoZSBn bG9iYWwgY29uZmlnIGZpbGUKKyAgICAgICAgICIiIgorIAorICAgICAgICAgc2VsZi5fcHVzaF91 cmwgPSBOb25lCitAQCAtMTcyNCw3ICsxNzI3LDcgQEAgY2xhc3MgQ29tbWFuZHMob2JqZWN0KToK KyAKKyAgICAgICAgICAgICAgICAgIyBBZGQgZXhjbHVkZXMKKyAgICAgICAgICAgICAgICAgc2Vs Zi5fYWRkX2dpdF9leGNsdWRlcyhicmFuY2hfcGF0aCkKKy0gICAgICAgICAgICAgICAgc2VsZi5f YWRkX2dpdF9wcmVfcHVzaF9ob29rKGJyYW5jaF9wYXRoKQorKyAgICAgICAgICAgICAgICBzZWxm Ll9hZGRfZ2l0X3ByZV9wdXNoX2hvb2soYnJhbmNoX3BhdGgsIGNvbmZpZ19wYXRoKQorICAgICAg ICAgICAgIGV4Y2VwdCAoZ2l0LkdpdENvbW1hbmRFcnJvciwgT1NFcnJvcikgYXMgZToKKyAgICAg ICAgICAgICAgICAgcmFpc2UgcnBrZ0Vycm9yKCdDb3VsZCBub3QgbG9jYWxseSBjbG9uZSAlcyBm cm9tICVzOiAlcycKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICUgKGJyYW5jaCwg cmVwb19wYXRoLCBlKSkKK0BAIC0xNzg3LDcgKzE3OTAsNyBAQCBjbGFzcyBDb21tYW5kcyhvYmpl Y3QpOgorICAgICAgICAgZ2l0X2V4Y2x1ZGVzLndyaXRlKCkKKyAgICAgICAgIHNlbGYubG9nLmRl YnVnKCdHaXQtZXhjbHVkZXMgcGF0dGVybnMgd2VyZSBhZGRlZCBpbnRvICVzJyAlIGdpdF9leGNs dWRlc19wYXRoKQorIAorLSAgICBkZWYgX2FkZF9naXRfcHJlX3B1c2hfaG9vayhzZWxmLCBjb25m X2Rpcik6CisrICAgIGRlZiBfYWRkX2dpdF9wcmVfcHVzaF9ob29rKHNlbGYsIHJlcG9fZGlyLCBj b25maWdfcGF0aD1Ob25lKToKKyAgICAgICAgICIiIgorICAgICAgICAgQ3JlYXRlIHByZS1wdXNo IGhvb2sgc2NyaXB0IGFuZCB3cml0ZSBpdCBpbiB0aGUgbG9jYXRpb246CisgICAgICAgICA8cmVw b3NpdG9yeV9kaXJlY3Rvcnk+Ly5naXQvaG9va3MvcHJlLXB1c2gKK0BAIC0xODAzLDYgKzE4MDYs MTAgQEAgY2xhc3MgQ29tbWFuZHMob2JqZWN0KToKKyAgICAgICAgICAgICBzZWxmLmxvZy5kZWJ1 ZygnUHJlLXB1c2ggaG9vayBzY3JpcHQgd2FzIE5PVCBhZGRlZCAtIG1pc3NpbmcgJworICAgICAg ICAgICAgICAgICAgICAgICAgICAgICd0aGUgcGFja2FnaW5nIHRvb2wgbGlrZSBmZWRwa2csIHJo cGtnLCAuLi4nKQorICAgICAgICAgICAgIHJldHVybgorKworKyAgICAgICAgIyBpbiBjYXNlIHRo ZSBjbG9uZSBjb21tYW5kIHJ1biB3aXRoICd4LXBrZyAtQyA8Y29uZmlnX3BhdGg+IGNsb25lIDxy ZXBvX25hbWU+JworKyAgICAgICAgY29uZmlnX2FyZyA9ICcgLUMgInswfSInLmZvcm1hdChvcy5w YXRoLnJlYWxwYXRoKGNvbmZpZ19wYXRoKSkgaWYgY29uZmlnX3BhdGggZWxzZSAiIgorKworICAg ICAgICAgaG9va19jb250ZW50ID0gdGV4dHdyYXAuZGVkZW50KCIiIgorICAgICAgICAgICAgICMh L2Jpbi9iYXNoCisgCitAQCAtMTgxOCw3ICsxODI1LDcgQEAgY2xhc3MgQ29tbWFuZHMob2JqZWN0 KToKKyAgICAgICAgICAgICBkbworICAgICAgICAgICAgICAgICBjb21tYW5kIC12IHswfSA+L2Rl di9udWxsIDI+JjEgfHwge3sgZWNobyA+JjIgIldhcm5pbmc6ICd7MH0nIGlzIG1pc3NpbmcsIFxc CisgICAgICAgICAgICAgcHJlLXB1c2ggY2hlY2sgaXMgb21pdHRlZC4gU2VlIC5naXQvaG9va3Mv cHJlLXB1c2giOyBleGl0IDA7IH19CistICAgICAgICAgICAgICAgIHswfSBwcmUtcHVzaC1jaGVj ayAiJGxvY2FsX3NoYSIKKysgICAgICAgICAgICAgICAgezB9ezF9IHByZS1wdXNoLWNoZWNrICIk bG9jYWxfc2hhIgorICAgICAgICAgICAgICAgICByZXRfY29kZT0kPworICAgICAgICAgICAgICAg ICBpZiBbICRyZXRfY29kZSAtbmUgMCBdICYmIFsgJGV4aXRfY29kZSAtZXEgMCBdOyB0aGVuCisg ICAgICAgICAgICAgICAgICAgICBleGl0X2NvZGU9JHJldF9jb2RlCitAQCAtMTgyNiw4ICsxODMz LDggQEAgY2xhc3MgQ29tbWFuZHMob2JqZWN0KToKKyAgICAgICAgICAgICBkb25lCisgCisgICAg ICAgICAgICAgZXhpdCAkZXhpdF9jb2RlCistICAgICAgICAiIiIpLnN0cmlwKCkuZm9ybWF0KHRv b2xfbmFtZSkKKy0gICAgICAgIGdpdF9wcmVfcHVzaF9ob29rX3BhdGggPSBvcy5wYXRoLmpvaW4o Y29uZl9kaXIsICcuZ2l0L2hvb2tzL3ByZS1wdXNoJykKKysgICAgICAgICIiIikuc3RyaXAoKS5m b3JtYXQodG9vbF9uYW1lLCBjb25maWdfYXJnKQorKyAgICAgICAgZ2l0X3ByZV9wdXNoX2hvb2tf cGF0aCA9IG9zLnBhdGguam9pbihyZXBvX2RpciwgJy5naXQvaG9va3MvcHJlLXB1c2gnKQorICAg ICAgICAgaWYgbm90IG9zLnBhdGguZXhpc3RzKG9zLnBhdGguZGlybmFtZShnaXRfcHJlX3B1c2hf aG9va19wYXRoKSk6CisgICAgICAgICAgICAgIyBwcmVwYXJlICIuZ2l0L2hvb2tzIiBkaXJlY3Rv cnkgaWYgaXQgaXMgbWlzc2luZworICAgICAgICAgICAgIG9zLm1ha2VkaXJzKG9zLnBhdGguZGly bmFtZShnaXRfcHJlX3B1c2hfaG9va19wYXRoKSkKK2RpZmYgLS1naXQgYS9weXJwa2cvY2xpLnB5 IGIvcHlycGtnL2NsaS5weQoraW5kZXggMWJjZjZlNC4uM2Q4Y2UzMyAxMDA2NDQKKy0tLSBhL3B5 cnBrZy9jbGkucHkKKysrKyBiL3B5cnBrZy9jbGkucHkKK0BAIC0yMTgyLDE0ICsyMTgyLDE2IEBA IGNsYXNzIGNsaUNsaWVudChvYmplY3QpOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBhbm9uPXNlbGYuYXJncy5hbm9ueW1vdXMsCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHRhcmdldD1zZWxmLmFyZ3MuY2xvbmVfdGFyZ2V0LAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXB0aD1zZWxmLmFyZ3MuZGVwdGgsCistICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4dHJhX2FyZ3M9c2VsZi5leHRyYV9h cmdzKQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHRyYV9hcmdzPXNl bGYuZXh0cmFfYXJncywKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u ZmlnX3BhdGg9c2VsZi5hcmdzLmNvbmZpZykKKyAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAg c2VsZi5jbWQuY2xvbmUoc2VsZi5hcmdzLnJlcG9bMF0sCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgYnJhbmNoPXNlbGYuYXJncy5icmFuY2gsCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgYW5vbj1zZWxmLmFyZ3MuYW5vbnltb3VzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg IHRhcmdldD1zZWxmLmFyZ3MuY2xvbmVfdGFyZ2V0LAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGRlcHRoPXNlbGYuYXJncy5kZXB0aCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICBl eHRyYV9hcmdzPXNlbGYuZXh0cmFfYXJncykKKysgICAgICAgICAgICAgICAgICAgICAgICAgICBl eHRyYV9hcmdzPXNlbGYuZXh0cmFfYXJncywKKysgICAgICAgICAgICAgICAgICAgICAgICAgICBj b25maWdfcGF0aD1zZWxmLmFyZ3MuY29uZmlnKQorIAorICAgICBkZWYgY29tbWl0KHNlbGYpOgor ICAgICAgICAgaWYgc2VsZi5hcmdzLndpdGhfY2hhbmdlbG9nIGFuZCBub3Qgc2VsZi5hcmdzLm1l c3NhZ2U6CitkaWZmIC0tZ2l0IGEvdGVzdHMvY29tbWFuZHMvdGVzdF9jbG9uZS5weSBiL3Rlc3Rz L2NvbW1hbmRzL3Rlc3RfY2xvbmUucHkKK2luZGV4IGY3NDE4NjQuLjZlZjEzMDAgMTAwNjQ0Cist LS0gYS90ZXN0cy9jb21tYW5kcy90ZXN0X2Nsb25lLnB5CisrKysgYi90ZXN0cy9jb21tYW5kcy90 ZXN0X2Nsb25lLnB5CitAQCAtOTUsNiArOTUsNTAgQEAgY2xhc3MgQ29tbWFuZENsb25lVGVzdENh c2UoQ29tbWFuZFRlc3RDYXNlKToKKyAKKyAgICAgICAgIHNodXRpbC5ybXRyZWUoYWx0cGF0aCkK KyAKKysgICAgZGVmIHRlc3RfY2xvbmVfYW5vbnltb3VzX3ByZV9wdXNoX2hvb2soc2VsZik6Cisr ICAgICAgICBzZWxmLm1ha2VfbmV3X2dpdChzZWxmLm1vZHVsZSkKKysKKysgICAgICAgIGFsdHBh dGggPSB0ZW1wZmlsZS5ta2R0ZW1wKHByZWZpeD0ncnBrZy10ZXN0cy4nKQorKworKyAgICAgICAg Y21kID0gcHlycGtnLkNvbW1hbmRzKHNlbGYucGF0aCwgc2VsZi5sb29rYXNpZGUsIHNlbGYubG9v a2FzaWRlaGFzaCwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmxvb2thc2lk ZV9jZ2ksIHNlbGYuZ2l0YmFzZXVybCwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz ZWxmLmFub25naXR1cmwsIHNlbGYuYnJhbmNocmUsIHNlbGYua29qaXByb2ZpbGUsCisrICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5idWlsZF9jbGllbnQsIHNlbGYudXNlciwgc2Vs Zi5kaXN0LAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYudGFyZ2V0LCBzZWxm LnF1aWV0KQorKyAgICAgICAgY21kLmNsb25lKHNlbGYubW9kdWxlLCBhbm9uPVRydWUsIGNvbmZp Z19wYXRoPU5vbmUpCisrCisrICAgICAgICBtb2R1bGVkaXIgPSBvcy5wYXRoLmpvaW4oc2VsZi5w YXRoLCBzZWxmLm1vZHVsZSkKKysgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmlzZmls ZShvcy5wYXRoLmpvaW4obW9kdWxlZGlyLCAnLmdpdC9ob29rcy9wcmUtcHVzaCcpKSkKKysKKysg ICAgICAgIHdpdGggb3Blbihvcy5wYXRoLmpvaW4obW9kdWxlZGlyLCAnLmdpdC9ob29rcy9wcmUt cHVzaCcpKSBhcyBnaXRfaG9va19zY3JpcHQ6CisrICAgICAgICAgICAgY29udGVudCA9IGdpdF9o b29rX3NjcmlwdC5yZWFkKCkKKysgICAgICAgICAgICBwYXR0ZXJuID0gJ19fbWFpbl9fLnB5IHBy ZS1wdXNoLWNoZWNrICIkbG9jYWxfc2hhIicKKysgICAgICAgICAgICBzZWxmLmFzc2VydEluKHBh dHRlcm4sIGNvbnRlbnQpCisrCisrICAgICAgICBzaHV0aWwucm10cmVlKGFsdHBhdGgpCisrCisr ICAgIGRlZiB0ZXN0X2Nsb25lX2Fub255bW91c19wcmVfcHVzaF9ob29rX2NvbmZpZyhzZWxmKToK KysgICAgICAgIHNlbGYubWFrZV9uZXdfZ2l0KHNlbGYubW9kdWxlKQorKworKyAgICAgICAgYWx0 cGF0aCA9IHRlbXBmaWxlLm1rZHRlbXAocHJlZml4PSdycGtnLXRlc3RzLicpCisrCisrICAgICAg ICBjbWQgPSBweXJwa2cuQ29tbWFuZHMoc2VsZi5wYXRoLCBzZWxmLmxvb2thc2lkZSwgc2VsZi5s b29rYXNpZGVoYXNoLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYubG9va2Fz aWRlX2NnaSwgc2VsZi5naXRiYXNldXJsLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHNlbGYuYW5vbmdpdHVybCwgc2VsZi5icmFuY2hyZSwgc2VsZi5rb2ppcHJvZmlsZSwKKysgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmJ1aWxkX2NsaWVudCwgc2VsZi51c2VyLCBz ZWxmLmRpc3QsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi50YXJnZXQsIHNl bGYucXVpZXQpCisrICAgICAgICBjbWQuY2xvbmUoc2VsZi5tb2R1bGUsIGFub249VHJ1ZSwgY29u ZmlnX3BhdGg9Ii9ob21lL2NvbmYvcmhwa2cuY29uZiIpCisrCisrICAgICAgICBtb2R1bGVkaXIg PSBvcy5wYXRoLmpvaW4oc2VsZi5wYXRoLCBzZWxmLm1vZHVsZSkKKysgICAgICAgIHNlbGYuYXNz ZXJ0VHJ1ZShvcy5wYXRoLmlzZmlsZShvcy5wYXRoLmpvaW4obW9kdWxlZGlyLCAnLmdpdC9ob29r cy9wcmUtcHVzaCcpKSkKKysKKysgICAgICAgIHdpdGggb3Blbihvcy5wYXRoLmpvaW4obW9kdWxl ZGlyLCAnLmdpdC9ob29rcy9wcmUtcHVzaCcpKSBhcyBnaXRfaG9va19zY3JpcHQ6CisrICAgICAg ICAgICAgY29udGVudCA9IGdpdF9ob29rX3NjcmlwdC5yZWFkKCkKKysgICAgICAgICAgICBwYXR0 ZXJuID0gJ19fbWFpbl9fLnB5IC1DICIvaG9tZS9jb25mL3JocGtnLmNvbmYiIHByZS1wdXNoLWNo ZWNrICIkbG9jYWxfc2hhIicKKysgICAgICAgICAgICBzZWxmLmFzc2VydEluKHBhdHRlcm4sIGNv bnRlbnQpCisrCisrICAgICAgICBzaHV0aWwucm10cmVlKGFsdHBhdGgpCisrCisgICAgIGRlZiB0 ZXN0X2Nsb25lX2Fub255bW91c193aXRoX2JyYW5jaChzZWxmKToKKyAgICAgICAgIHNlbGYubWFr ZV9uZXdfZ2l0KHNlbGYubW9kdWxlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJhbmNo ZXM9WydycGtnLXRlc3RzLTEnLCAncnBrZy10ZXN0cy0yJ10pCistLSAKKzIuMzkuMgorCgpkaWZm IC0tZ2l0IGEvMDAxMy1GaXgtdW5pdHRlc3RzLWZvci1jbG9uZS1hbmQtcHJlLXB1c2gtaG9vay1z Y3JpcHQucGF0Y2ggYi8wMDEzLUZpeC11bml0dGVzdHMtZm9yLWNsb25lLWFuZC1wcmUtcHVzaC1o b29rLXNjcmlwdC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45OTFm YjIyCi0tLSAvZGV2L251bGwKKysrIGIvMDAxMy1GaXgtdW5pdHRlc3RzLWZvci1jbG9uZS1hbmQt cHJlLXB1c2gtaG9vay1zY3JpcHQucGF0Y2gKQEAgLTAsMCArMSw0OSBAQAorRnJvbSAxZDgyYjdl YWY5OGU2OTU2ODlhN2RjMTBiZDMwODAzMGUzYzEzZWVhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQorRnJvbTogT25kcmVqIE5vc2VrIDxvbm9zZWtAcmVkaGF0LmNvbT4KK0RhdGU6IFNhdCwgMSBB cHIgMjAyMyAwMTozNDozNCArMDIwMAorU3ViamVjdDogW1BBVENIXSBGaXggdW5pdHRlc3RzIGZv ciBgY2xvbmVgIGFuZCBwcmUtcHVzaCBob29rIHNjcmlwdAorCitTaWduZWQtb2ZmLWJ5OiBPbmRy ZWogTm9zZWsgPG9ub3Nla0ByZWRoYXQuY29tPgorLS0tCisgdGVzdHMvY29tbWFuZHMvdGVzdF9j bG9uZS5weSB8IDggKysrKysrLS0KKyAxIGZpbGUgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAy IGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvdGVzdHMvY29tbWFuZHMvdGVzdF9jbG9uZS5w eSBiL3Rlc3RzL2NvbW1hbmRzL3Rlc3RfY2xvbmUucHkKK2luZGV4IDZlZjEzMDAuLjg1ZmRmZDEg MTAwNjQ0CistLS0gYS90ZXN0cy9jb21tYW5kcy90ZXN0X2Nsb25lLnB5CisrKysgYi90ZXN0cy9j b21tYW5kcy90ZXN0X2Nsb25lLnB5CitAQCAtMSw1ICsxLDYgQEAKKyBpbXBvcnQgb3MKKyBpbXBv cnQgc2h1dGlsCisraW1wb3J0IHN5cworIGltcG9ydCB0ZW1wZmlsZQorIAorIGltcG9ydCBnaXQK K0BAIC0xMTAsOSArMTExLDEwIEBAIGNsYXNzIENvbW1hbmRDbG9uZVRlc3RDYXNlKENvbW1hbmRU ZXN0Q2FzZSk6CisgICAgICAgICBtb2R1bGVkaXIgPSBvcy5wYXRoLmpvaW4oc2VsZi5wYXRoLCBz ZWxmLm1vZHVsZSkKKyAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmlzZmlsZShvcy5w YXRoLmpvaW4obW9kdWxlZGlyLCAnLmdpdC9ob29rcy9wcmUtcHVzaCcpKSkKKyAKKysgICAgICAg IGNsb25uZWRfYnkgPSBvcy5wYXRoLmJhc2VuYW1lKHN5cy5hcmd2WzBdKQorICAgICAgICAgd2l0 aCBvcGVuKG9zLnBhdGguam9pbihtb2R1bGVkaXIsICcuZ2l0L2hvb2tzL3ByZS1wdXNoJykpIGFz IGdpdF9ob29rX3NjcmlwdDoKKyAgICAgICAgICAgICBjb250ZW50ID0gZ2l0X2hvb2tfc2NyaXB0 LnJlYWQoKQorLSAgICAgICAgICAgIHBhdHRlcm4gPSAnX19tYWluX18ucHkgcHJlLXB1c2gtY2hl Y2sgIiRsb2NhbF9zaGEiJworKyAgICAgICAgICAgIHBhdHRlcm4gPSAnezB9IHByZS1wdXNoLWNo ZWNrICIkbG9jYWxfc2hhIicuZm9ybWF0KGNsb25uZWRfYnkpCisgICAgICAgICAgICAgc2VsZi5h c3NlcnRJbihwYXR0ZXJuLCBjb250ZW50KQorIAorICAgICAgICAgc2h1dGlsLnJtdHJlZShhbHRw YXRoKQorQEAgLTEzMiw5ICsxMzQsMTEgQEAgY2xhc3MgQ29tbWFuZENsb25lVGVzdENhc2UoQ29t bWFuZFRlc3RDYXNlKToKKyAgICAgICAgIG1vZHVsZWRpciA9IG9zLnBhdGguam9pbihzZWxmLnBh dGgsIHNlbGYubW9kdWxlKQorICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguaXNmaWxl KG9zLnBhdGguam9pbihtb2R1bGVkaXIsICcuZ2l0L2hvb2tzL3ByZS1wdXNoJykpKQorIAorKyAg ICAgICAgY2xvbm5lZF9ieSA9IG9zLnBhdGguYmFzZW5hbWUoc3lzLmFyZ3ZbMF0pCisgICAgICAg ICB3aXRoIG9wZW4ob3MucGF0aC5qb2luKG1vZHVsZWRpciwgJy5naXQvaG9va3MvcHJlLXB1c2gn KSkgYXMgZ2l0X2hvb2tfc2NyaXB0OgorICAgICAgICAgICAgIGNvbnRlbnQgPSBnaXRfaG9va19z Y3JpcHQucmVhZCgpCistICAgICAgICAgICAgcGF0dGVybiA9ICdfX21haW5fXy5weSAtQyAiL2hv bWUvY29uZi9yaHBrZy5jb25mIiBwcmUtcHVzaC1jaGVjayAiJGxvY2FsX3NoYSInCisrICAgICAg ICAgICAgcGF0dGVybiA9ICd7MH0gLUMgIi9ob21lL2NvbmYvcmhwa2cuY29uZiIgcHJlLXB1c2gt Y2hlY2sgJyBcCisrICAgICAgICAgICAgICAgICAgICAgICciJGxvY2FsX3NoYSInLmZvcm1hdChj bG9ubmVkX2J5KQorICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4ocGF0dGVybiwgY29udGVudCkK KyAKKyAgICAgICAgIHNodXRpbC5ybXRyZWUoYWx0cGF0aCkKKy0tIAorMi4zOS4yCisKCmRpZmYg LS1naXQgYS9ycGtnLnNwZWMgYi9ycGtnLnNwZWMKaW5kZXggNTA2MDRiZi4uMjkwZTM0NSAxMDA2 NDQKLS0tIGEvcnBrZy5zcGVjCisrKyBiL3Jwa2cuc3BlYwpAQCAtMSw2ICsxLDYgQEAKIE5hbWU6 ICAgICAgICAgICBycGtnCiBWZXJzaW9uOiAgICAgICAgMS42NgotUmVsZWFzZTogICAgICAgIDQl ez9kaXN0fQorUmVsZWFzZTogICAgICAgIDUlez9kaXN0fQogCiBTdW1tYXJ5OiAgICAgICAgUHl0 aG9uIGxpYnJhcnkgZm9yIGludGVyYWN0aW5nIHdpdGggcnBtK2dpdAogTGljZW5zZTogICAgICAg IEdQTHYyKyBhbmQgTEdQTHYyCkBAIC00MCw2ICs0MCwxMyBAQCBQYXRjaDM6ICAgICAgICAgMDAw My1SZW1vdmUtRW52aXJvbm1lbnQtTWFya2Vycy1zeW50YXgucGF0Y2gKIFBhdGNoNDogICAgICAg ICAwMDA0LVByb2Nlc3Mtc291cmNlLVVSTHMtd2l0aC1mcmFnbWVudC1pbi1wcmUtcHVzaC1ob29r LnBhdGNoCiBQYXRjaDU6ICAgICAgICAgMDAwNS1jb250YWluZXItYnVpbGQtdXBkYXRlLXNpZ25p bmctaW50ZW50LWhlbHAtZm9yLU9TQlMtLnBhdGNoCiBQYXRjaDY6ICAgICAgICAgMDAwNi1Eby1u b3QtZ2VuZXJhdGUtcHJlLXB1c2gtaG9vay1zY3JpcHQtaW4tc29tZS1jYXNlcy5wYXRjaAorUGF0 Y2g3OiAgICAgICAgIDAwMDctTW9yZS1yb2J1c3Qtc3BlYy1maWxlLXByZXNlbmNlLWNoZWNraW5n LnBhdGNoCitQYXRjaDg6ICAgICAgICAgMDAwOC1VcGRhdGUtdG8tc3BlYy1maWxlLXByZXNlbmNl LWNoZWNraW5nLnBhdGNoCitQYXRjaDk6ICAgICAgICAgMDAwOS1BZGQtbW9yZS1pbmZvcm1hdGlv bi1hYm91dC1wcmUtcHVzaC1ob29rLnBhdGNoCitQYXRjaDEwOiAgICAgICAgMDAxMC1wcmUtcHVz aC1jaGVjay1oYXZlLXRvLXVzZS1zcGVjdG9vbC13aXRoLWRlZmluZS5wYXRjaAorUGF0Y2gxMTog ICAgICAgIDAwMTEtQS1IRUFELXF1ZXJ5LWludG8tYS1sb29rYXNpZGUtY2FjaGUucGF0Y2gKK1Bh dGNoMTI6ICAgICAgICAwMDEyLXByZS1wdXNoLWhvb2stc2NyaXB0LWNvbnRhaW5zLWEtdXNlci1z LWNvbmZpZy5wYXRjaAorUGF0Y2gxMzogICAgICAgIDAwMTMtRml4LXVuaXR0ZXN0cy1mb3ItY2xv bmUtYW5kLXByZS1wdXNoLWhvb2stc2NyaXB0LnBhdGNoCiAKICVkZXNjcmlwdGlvbgogUHl0aG9u IGxpYnJhcnkgZm9yIGludGVyYWN0aW5nIHdpdGggcnBtK2dpdApAQCAtMjU2LDYgKzI2MywxNSBA QCBleGFtcGxlX2NsaV9kaXI9JFJQTV9CVUlMRF9ST09UJXtfZGF0YWRpcn0vJXtuYW1lfS9leGFt cGxlcy9jbGkKIAogCiAlY2hhbmdlbG9nCisqIFNhdCBBcHIgMSAyMDIzIE9uZMWZZWogTm9zZWsg PG9ub3Nla0ByZWRoYXQuY29tPiAtIDEuNjYtNQorLSBQYXRjaDogRml4IHVuaXR0ZXN0cyBmb3Ig YGNsb25lYCBhbmQgcHJlLXB1c2ggaG9vayBzY3JpcHQKKy0gUGF0Y2g6IHByZS1wdXNoIGhvb2sg c2NyaXB0IGNvbnRhaW5zIGEgdXNlcidzIGNvbmZpZworLSBQYXRjaDogQSBIRUFEIHF1ZXJ5IGlu dG8gYSBsb29rYXNpZGUgY2FjaGUKKy0gUGF0Y2g6IGBwcmUtcHVzaC1jaGVja2AgaGF2ZSB0byB1 c2Ugc3BlY3Rvb2wgd2l0aCAtLWRlZmluZQorLSBQYXRjaDogQWRkIG1vcmUgaW5mb3JtYXRpb24g YWJvdXQgcHJlLXB1c2ggaG9vaworLSBQYXRjaDogVXBkYXRlIHRvIHNwZWMgZmlsZSBwcmVzZW5j ZSBjaGVja2luZworLSBQYXRjaDogTW9yZSByb2J1c3Qgc3BlYyBmaWxlIHByZXNlbmNlIGNoZWNr aW5nCisKICogRnJpIE1hciAxMCAyMDIzIE9uZMWZZWogTm9zZWsgPG9ub3Nla0ByZWRoYXQuY29t PiAtIDEuNjYtNAogLSBQYXRjaDogRG8gbm90IGdlbmVyYXRlIHByZS1wdXNoIGhvb2sgc2NyaXB0 IGluIHNvbWUgY2FzZXMKIAo=