From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) 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.2 Received: (qmail 32152 invoked from network); 8 May 2020 19:57:04 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 8 May 2020 19:57:04 -0000 Content-Type: multipart/mixed; boundary="===============8486380998484214453==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_LLVM/Clang_10?= To: ml@inbox.vuxu.org From: q66 Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Fri, 08 May 2020 21:57:04 +0200 List-Id: Message-ID: <20200508195704.6UNg2VAR3zK5reLHc0TLSal0ZU_AxArY0m_YKfNSpC0@z> GitHub notification mails are now in MIME to allow UTF8. --===============8486380998484214453== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgcTY2IGFnYWluc3QgbWFzdGVyIG9u IHRoZSB2b2lkLXBhY2thZ2VzIHJlcG9zaXRvcnkKCmh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLXBw Yy92b2lkLXBhY2thZ2VzIGxsdm0xMApodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lk LXBhY2thZ2VzL3B1bGwvMjE3NTYKCkxMVk0vQ2xhbmcgMTAKIyBuZWVkcyByZWJ1aWxkaW5nICh1 bnRpY2tlZCBzdGlsbCBuZWVkcyB0ZXN0aW5nKQ0KDQotIFt4XSBsaWJjbGMtZ2l0DQotIFt4XSBt ZXNhDQotIFt4XSBsbHZtOQ0KLSBbeF0gYnBmdHJhY2UNCi0gW3hdIGdub21lLWJ1aWxkZXINCi0g W3hdIGp1Q2krKw0KLSBbeF0ga2RldmVsb3ANCi0gW3hdIHF0NQ0KLSBbeF0gcXRjcmVhdG9yDQot IFt4XSBydGFncw0KLSBbeF0gc2hpYm9rZW4yDQotIFt4XSByZGVkdXANCi0gW3hdIGNvZGVsaXRl DQotIFt4XSBiY2MNCi0gW3hdIGNjbHMNCi0gW3hdIGNsYXp5DQotIFsgXSBhZmwgKHg4NiBvbmx5 LCBuZWVkIGhlbHApDQotIFsgXSBiZWlnbmV0ICh4ODYgb25seSwgbmVlZCBobGVwKQ0KLSBbIF0g aXNwYyAoeDg2IG9ubHksIG5lZWQgaGVscCkNCi0gW3hdIGxsdm0tbGlidW53aW5kDQotIFt4XSBs aWJjeHgNCi0gW3hdIGxpYmN4eGFiaQ0KLSBbeF0gaW5jbHVkZS13aGF0LXlvdS11c2UNCg0KIyBu byBidW1wIGJ1dCB0ZXN0IGJ1aWxkIGFueXdheQ0KDQotIFt4XSBoZnNwcm9ncw0KLSBbIF0gZ29k b3QNCi0gWyBdIGZpcmVmb3gNCi0gWyBdIGZpcmVmb3gtZXNyDQotIFsgXSB0aHVuZGVyYmlyZA0K LSBbIF0gYmF0DQotIFsgXSBibGVuZGVyDQotIFsgXSBhcmRvdXINCi0gWyBdIHBpanVsDQotIFsg XSBxdjRsMg0KLSBbIF0geW9zeXMNCgoKQSBwYXRjaCBmaWxlIGZyb20gaHR0cHM6Ly9naXRodWIu Y29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9wdWxsLzIxNzU2LnBhdGNoIGlzIGF0dGFjaGVk --===============8486380998484214453== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-llvm10-21756.patch" RnJvbSA4Y2YzYjRiZTI3YTY4MTgyYzYwNWY2ZDMyMjU5MDZjNTc0YWY0N2RmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBxNjYgPGRhbmllbEBvY3RhZm9yZ2Uub3JnPgpEYXRlOiBGcmks IDggTWF5IDIwMjAgMDU6MDY6MjggKzAyMDAKU3ViamVjdDogW1BBVENIIDAxLzI0XSBOZXcgcGFj a2FnZTogbGx2bTEwLTEwLjAuMCwgcmVidWlsZCBsbHZtOSBzdGFuZGFsb25lCgotLS0KIGNvbW1v bi9zaGxpYnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNyArLQogc3JjcGtn cy9jbGFuZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyICstCiBzcmNwa2dz L2NsYW5nLWFuYWx5emVyICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDIgKy0KIHNyY3BrZ3Mv Y2xhbmctdG9vbHMtZXh0cmEgICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQogc3JjcGtncy9s aWJsbHZtMTAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxICsKIHNyY3BrZ3MvbGxk ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQogc3JjcGtncy9sbGQt ZGV2ZWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyICstCiBzcmNwa2dzL2xsZGIg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDIgKy0KIHNyY3BrZ3MvbGxkYi1k ZXZlbCAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQogc3JjcGtncy9sbHZtMTAv ZmlsZXMvbGx2bS1Db25maWctY29uZmlnLmggICAgIHwgICA5ICsKIC4uLi9sbHZtMTAvZmlsZXMv bGx2bS1Db25maWctbGx2bS1jb25maWcuaCAgICB8ICAgOSArCiAuLi5jbGFuZy0wMDEtZml4LXVu d2luZC1jaGFpbi1pbmNsdXNpb24ucGF0Y2ggfCAgIDAKIC4uLi9jbGFuZy9jbGFuZy0wMDItYWRk LW11c2wtdHJpcGxlcy5wYXRjaCAgICB8ICAgMAogLi4uL2NsYW5nLTAwMy1wcGM2NC1keW5hbWlj LWxpbmtlci1wYXRoLnBhdGNoIHwgICAwCiAuLi4vY2xhbmcvY2xhbmctMDA0LXBwYzY0LW11c2wt ZWxmdjIucGF0Y2ggICAgfCAgMTUgKy0KIC4uLi9jb21waWxlci1ydC9jb21waWxlci1ydC1hcm12 NS5wYXRjaCAgICAgICB8ICAxMSArCiAuLi4vZmlsZXMvcGF0Y2hlcy9sbGRiL211c2wucGF0Y2gg ICAgICAgICAgICAgfCAgIDAKIC4uLi9maWxlcy9wYXRjaGVzL2xsdm0vbGx2bS0wMDEtbXVzbC5w YXRjaCAgICB8ICA1OCArKysrCiAuLi4vbGx2bS9sbHZtLTAwMi1tdXNsLXBwYzY0LWVsZnYyLnBh dGNoICAgICAgfCAgMjYgKysKIC4uLi9wYXRjaGVzL2xsdm0vbGx2bS0wMDMtc2VjdXJlcGx0LnBh dGNoICAgICB8ICAxMSArCiAuLi4vcGF0Y2hlcy9sbHZtL2xsdm0tMDA0LW92ZXJyaWRlLW9wdC5w YXRjaCAgfCAgMTggKysKIC4uLi9wYXRjaGVzL2xsdm0vbGx2bS0wMDUtcHBjLWJpZ3BpYy5wYXRj aCAgICB8ICAzOCArKysKIHNyY3BrZ3MvbGx2bTEwL3RlbXBsYXRlICAgICAgICAgICAgICAgICAg ICAgICB8IDI4OCArKysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvbGx2bTEwL3VwZGF0ZSAgICAg ICAgICAgICAgICAgICAgICAgICB8ICAgMiArCiAuLi4vY29tcGlsZXItcnQvY29tcGlsZXItcnQt YXJtdjUucGF0Y2ggICAgICAgfCAgMTEgLQogc3JjcGtncy9sbHZtOS90ZW1wbGF0ZSAgICAgICAg ICAgICAgICAgICAgICAgIHwgMTkxICstLS0tLS0tLS0tLQogMjYgZmlsZXMgY2hhbmdlZCwgNDk2 IGluc2VydGlvbnMoKyksIDIxMyBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEyMDAwMCBzcmNw a2dzL2xpYmxsdm0xMAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbGx2bTEwL2ZpbGVzL2xs dm0tQ29uZmlnLWNvbmZpZy5oCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9sbHZtMTAvZmls ZXMvbGx2bS1Db25maWctbGx2bS1jb25maWcuaAogcmVuYW1lIHNyY3BrZ3Mve2xsdm05ID0+IGxs dm0xMH0vZmlsZXMvcGF0Y2hlcy9jbGFuZy9jbGFuZy0wMDEtZml4LXVud2luZC1jaGFpbi1pbmNs dXNpb24ucGF0Y2ggKDEwMCUpCiByZW5hbWUgc3JjcGtncy97bGx2bTkgPT4gbGx2bTEwfS9maWxl cy9wYXRjaGVzL2NsYW5nL2NsYW5nLTAwMi1hZGQtbXVzbC10cmlwbGVzLnBhdGNoICgxMDAlKQog cmVuYW1lIHNyY3BrZ3Mve2xsdm05ID0+IGxsdm0xMH0vZmlsZXMvcGF0Y2hlcy9jbGFuZy9jbGFu Zy0wMDMtcHBjNjQtZHluYW1pYy1saW5rZXItcGF0aC5wYXRjaCAoMTAwJSkKIHJlbmFtZSBzcmNw a2dzL3tsbHZtOSA9PiBsbHZtMTB9L2ZpbGVzL3BhdGNoZXMvY2xhbmcvY2xhbmctMDA0LXBwYzY0 LW11c2wtZWxmdjIucGF0Y2ggKDYzJSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2xsdm0x MC9maWxlcy9wYXRjaGVzL2NvbXBpbGVyLXJ0L2NvbXBpbGVyLXJ0LWFybXY1LnBhdGNoCiByZW5h bWUgc3JjcGtncy97bGx2bTkgPT4gbGx2bTEwfS9maWxlcy9wYXRjaGVzL2xsZGIvbXVzbC5wYXRj aCAoMTAwJSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2xsdm0xMC9maWxlcy9wYXRjaGVz L2xsdm0vbGx2bS0wMDEtbXVzbC5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbGx2 bTEwL2ZpbGVzL3BhdGNoZXMvbGx2bS9sbHZtLTAwMi1tdXNsLXBwYzY0LWVsZnYyLnBhdGNoCiBj cmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9sbHZtMTAvZmlsZXMvcGF0Y2hlcy9sbHZtL2xsdm0t MDAzLXNlY3VyZXBsdC5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbGx2bTEwL2Zp bGVzL3BhdGNoZXMvbGx2bS9sbHZtLTAwNC1vdmVycmlkZS1vcHQucGF0Y2gKIGNyZWF0ZSBtb2Rl IDEwMDY0NCBzcmNwa2dzL2xsdm0xMC9maWxlcy9wYXRjaGVzL2xsdm0vbGx2bS0wMDUtcHBjLWJp Z3BpYy5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbGx2bTEwL3RlbXBsYXRlCiBj cmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9sbHZtMTAvdXBkYXRlCiBkZWxldGUgbW9kZSAxMDA2 NDQgc3JjcGtncy9sbHZtOS9maWxlcy9wYXRjaGVzL2NvbXBpbGVyLXJ0L2NvbXBpbGVyLXJ0LWFy bXY1LnBhdGNoCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5k ZXggZmE4YWY2NmY5MjUuLjgzNDJlMTE3MDkyIDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisr KyBiL2NvbW1vbi9zaGxpYnMKQEAgLTEwMjYsOSArMTAyNiwxMCBAQCBsaWJ1Y2hhcmRldC5zby4w IHVjaGFyZGV0LTAuMC42XzEKIGxpYmd0a3NvdXJjZXZpZXdtbS0zLjAuc28uMCBndGtzb3VyY2V2 aWV3bW0tMy4yLjBfMQogbGlieWFqbC5zby4yIHlhamwtMi4wLjFfMQogbGliY29uZnVzZS5zby4y IGNvbmZ1c2UtMy4yLjFfMQotbGlibGxkYi5zby45IGxsZGItOS4wLjBfMQotbGliY2xhbmcuc28u OSBjbGFuZy05LjAuMF8xCi1saWJjbGFuZy1jcHAuc28uOSBjbGFuZy05LjAuMF8xCitsaWJsbGRi LnNvLjEwIGxsZGItMTAuMC4wXzEKK2xpYmNsYW5nLnNvLjEwIGNsYW5nLTEwLjAuMF8xCitsaWJj bGFuZy1jcHAuc28uMTAgY2xhbmctMTAuMC4wXzEKK2xpYkxMVk0tMTAuc28gbGlibGx2bTEwLTEw LjAuMF8xCiBsaWJMTFZNLTkuc28gbGlibGx2bTktOS4wLjBfMQogbGliaXNvZnMuc28uNiBsaWJp c29mcy0wLjYuMjRfMQogbGlibXBhY2suc28uMCBsaWJtcGFjay0xLjAuNV8xCmRpZmYgLS1naXQg YS9zcmNwa2dzL2NsYW5nIGIvc3JjcGtncy9jbGFuZwppbmRleCAxNDU0MGQ3YmFkMi4uNTlmMjY1 NzVjYjMgMTIwMDAwCi0tLSBhL3NyY3BrZ3MvY2xhbmcKKysrIGIvc3JjcGtncy9jbGFuZwpAQCAt MSArMSBAQAotbGx2bTkKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCitsbHZtMTAKXCBObyBu ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL2NsYW5nLWFuYWx5emVy IGIvc3JjcGtncy9jbGFuZy1hbmFseXplcgppbmRleCAxNDU0MGQ3YmFkMi4uNTlmMjY1NzVjYjMg MTIwMDAwCi0tLSBhL3NyY3BrZ3MvY2xhbmctYW5hbHl6ZXIKKysrIGIvc3JjcGtncy9jbGFuZy1h bmFseXplcgpAQCAtMSArMSBAQAotbGx2bTkKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCits bHZtMTAKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL2Ns YW5nLXRvb2xzLWV4dHJhIGIvc3JjcGtncy9jbGFuZy10b29scy1leHRyYQppbmRleCAxNDU0MGQ3 YmFkMi4uNTlmMjY1NzVjYjMgMTIwMDAwCi0tLSBhL3NyY3BrZ3MvY2xhbmctdG9vbHMtZXh0cmEK KysrIGIvc3JjcGtncy9jbGFuZy10b29scy1leHRyYQpAQCAtMSArMSBAQAotbGx2bTkKXCBObyBu ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCitsbHZtMTAKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxl CmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYmxsdm0xMCBiL3NyY3BrZ3MvbGlibGx2bTEwCm5ldyBm aWxlIG1vZGUgMTIwMDAwCmluZGV4IDAwMDAwMDAwMDAwLi41OWYyNjU3NWNiMwotLS0gL2Rldi9u dWxsCisrKyBiL3NyY3BrZ3MvbGlibGx2bTEwCkBAIC0wLDAgKzEgQEAKK2xsdm0xMApcIE5vIG5l d2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGxkIGIvc3JjcGtncy9s bGQKaW5kZXggMTQ1NDBkN2JhZDIuLjU5ZjI2NTc1Y2IzIDEyMDAwMAotLS0gYS9zcmNwa2dzL2xs ZAorKysgYi9zcmNwa2dzL2xsZApAQCAtMSArMSBAQAotbGx2bTkKXCBObyBuZXdsaW5lIGF0IGVu ZCBvZiBmaWxlCitsbHZtMTAKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQg YS9zcmNwa2dzL2xsZC1kZXZlbCBiL3NyY3BrZ3MvbGxkLWRldmVsCmluZGV4IDE0NTQwZDdiYWQy Li41OWYyNjU3NWNiMyAxMjAwMDAKLS0tIGEvc3JjcGtncy9sbGQtZGV2ZWwKKysrIGIvc3JjcGtn cy9sbGQtZGV2ZWwKQEAgLTEgKzEgQEAKLWxsdm05ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmls ZQorbGx2bTEwClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9sbGRiIGIvc3JjcGtncy9sbGRiCmluZGV4IDE0NTQwZDdiYWQyLi41OWYyNjU3NWNiMyAxMjAw MDAKLS0tIGEvc3JjcGtncy9sbGRiCisrKyBiL3NyY3BrZ3MvbGxkYgpAQCAtMSArMSBAQAotbGx2 bTkKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCitsbHZtMTAKXCBObyBuZXdsaW5lIGF0IGVu ZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xsZGItZGV2ZWwgYi9zcmNwa2dzL2xsZGIt ZGV2ZWwKaW5kZXggMTQ1NDBkN2JhZDIuLjU5ZjI2NTc1Y2IzIDEyMDAwMAotLS0gYS9zcmNwa2dz L2xsZGItZGV2ZWwKKysrIGIvc3JjcGtncy9sbGRiLWRldmVsCkBAIC0xICsxIEBACi1sbHZtOQpc IE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKK2xsdm0xMApcIE5vIG5ld2xpbmUgYXQgZW5kIG9m IGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGx2bTEwL2ZpbGVzL2xsdm0tQ29uZmlnLWNvbmZp Zy5oIGIvc3JjcGtncy9sbHZtMTAvZmlsZXMvbGx2bS1Db25maWctY29uZmlnLmgKbmV3IGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmMzNjliNDU1MWY3Ci0tLSAvZGV2L251bGwK KysrIGIvc3JjcGtncy9sbHZtMTAvZmlsZXMvbGx2bS1Db25maWctY29uZmlnLmgKQEAgLTAsMCAr MSw5IEBACisjaW5jbHVkZSA8Yml0cy93b3Jkc2l6ZS5oPgorCisjaWYgX19XT1JEU0laRSA9PSAz MgorI2luY2x1ZGUgImNvbmZpZy0zMi5oIgorI2VsaWYgX19XT1JEU0laRSA9PSA2NAorI2luY2x1 ZGUgImNvbmZpZy02NC5oIgorI2Vsc2UKKyNlcnJvciAiVW5rbm93biB3b3JkIHNpemUiCisjZW5k aWYKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGx2bTEwL2ZpbGVzL2xsdm0tQ29uZmlnLWxsdm0tY29u ZmlnLmggYi9zcmNwa2dzL2xsdm0xMC9maWxlcy9sbHZtLUNvbmZpZy1sbHZtLWNvbmZpZy5oCm5l dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi4yZmEwOGM5YmU2OQotLS0gL2Rl di9udWxsCisrKyBiL3NyY3BrZ3MvbGx2bTEwL2ZpbGVzL2xsdm0tQ29uZmlnLWxsdm0tY29uZmln LmgKQEAgLTAsMCArMSw5IEBACisjaW5jbHVkZSA8Yml0cy93b3Jkc2l6ZS5oPgorCisjaWYgX19X T1JEU0laRSA9PSAzMgorI2luY2x1ZGUgImxsdm0tY29uZmlnLTMyLmgiCisjZWxpZiBfX1dPUkRT SVpFID09IDY0CisjaW5jbHVkZSAibGx2bS1jb25maWctNjQuaCIKKyNlbHNlCisjZXJyb3IgIlVu a25vd24gd29yZCBzaXplIgorI2VuZGlmCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xsdm05L2ZpbGVz L3BhdGNoZXMvY2xhbmcvY2xhbmctMDAxLWZpeC11bndpbmQtY2hhaW4taW5jbHVzaW9uLnBhdGNo IGIvc3JjcGtncy9sbHZtMTAvZmlsZXMvcGF0Y2hlcy9jbGFuZy9jbGFuZy0wMDEtZml4LXVud2lu ZC1jaGFpbi1pbmNsdXNpb24ucGF0Y2gKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9t IHNyY3BrZ3MvbGx2bTkvZmlsZXMvcGF0Y2hlcy9jbGFuZy9jbGFuZy0wMDEtZml4LXVud2luZC1j aGFpbi1pbmNsdXNpb24ucGF0Y2gKcmVuYW1lIHRvIHNyY3BrZ3MvbGx2bTEwL2ZpbGVzL3BhdGNo ZXMvY2xhbmcvY2xhbmctMDAxLWZpeC11bndpbmQtY2hhaW4taW5jbHVzaW9uLnBhdGNoCmRpZmYg LS1naXQgYS9zcmNwa2dzL2xsdm05L2ZpbGVzL3BhdGNoZXMvY2xhbmcvY2xhbmctMDAyLWFkZC1t dXNsLXRyaXBsZXMucGF0Y2ggYi9zcmNwa2dzL2xsdm0xMC9maWxlcy9wYXRjaGVzL2NsYW5nL2Ns YW5nLTAwMi1hZGQtbXVzbC10cmlwbGVzLnBhdGNoCnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5h bWUgZnJvbSBzcmNwa2dzL2xsdm05L2ZpbGVzL3BhdGNoZXMvY2xhbmcvY2xhbmctMDAyLWFkZC1t dXNsLXRyaXBsZXMucGF0Y2gKcmVuYW1lIHRvIHNyY3BrZ3MvbGx2bTEwL2ZpbGVzL3BhdGNoZXMv Y2xhbmcvY2xhbmctMDAyLWFkZC1tdXNsLXRyaXBsZXMucGF0Y2gKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvbGx2bTkvZmlsZXMvcGF0Y2hlcy9jbGFuZy9jbGFuZy0wMDMtcHBjNjQtZHluYW1pYy1saW5r ZXItcGF0aC5wYXRjaCBiL3NyY3BrZ3MvbGx2bTEwL2ZpbGVzL3BhdGNoZXMvY2xhbmcvY2xhbmct MDAzLXBwYzY0LWR5bmFtaWMtbGlua2VyLXBhdGgucGF0Y2gKc2ltaWxhcml0eSBpbmRleCAxMDAl CnJlbmFtZSBmcm9tIHNyY3BrZ3MvbGx2bTkvZmlsZXMvcGF0Y2hlcy9jbGFuZy9jbGFuZy0wMDMt cHBjNjQtZHluYW1pYy1saW5rZXItcGF0aC5wYXRjaApyZW5hbWUgdG8gc3JjcGtncy9sbHZtMTAv ZmlsZXMvcGF0Y2hlcy9jbGFuZy9jbGFuZy0wMDMtcHBjNjQtZHluYW1pYy1saW5rZXItcGF0aC5w YXRjaApkaWZmIC0tZ2l0IGEvc3JjcGtncy9sbHZtOS9maWxlcy9wYXRjaGVzL2NsYW5nL2NsYW5n LTAwNC1wcGM2NC1tdXNsLWVsZnYyLnBhdGNoIGIvc3JjcGtncy9sbHZtMTAvZmlsZXMvcGF0Y2hl cy9jbGFuZy9jbGFuZy0wMDQtcHBjNjQtbXVzbC1lbGZ2Mi5wYXRjaApzaW1pbGFyaXR5IGluZGV4 IDYzJQpyZW5hbWUgZnJvbSBzcmNwa2dzL2xsdm05L2ZpbGVzL3BhdGNoZXMvY2xhbmcvY2xhbmct MDA0LXBwYzY0LW11c2wtZWxmdjIucGF0Y2gKcmVuYW1lIHRvIHNyY3BrZ3MvbGx2bTEwL2ZpbGVz L3BhdGNoZXMvY2xhbmcvY2xhbmctMDA0LXBwYzY0LW11c2wtZWxmdjIucGF0Y2gKaW5kZXggMTRk ZmMwMDdlZDMuLmYxYWYxYjc5YjVmIDEwMDY0NAotLS0gYS9zcmNwa2dzL2xsdm05L2ZpbGVzL3Bh dGNoZXMvY2xhbmcvY2xhbmctMDA0LXBwYzY0LW11c2wtZWxmdjIucGF0Y2gKKysrIGIvc3JjcGtn cy9sbHZtMTAvZmlsZXMvcGF0Y2hlcy9jbGFuZy9jbGFuZy0wMDQtcHBjNjQtbXVzbC1lbGZ2Mi5w YXRjaApAQCAtMSwyNiArMSwyOSBAQAogLS0tIGEvbGliL0Jhc2ljL1RhcmdldHMvUFBDLmgKICsr KyBiL2xpYi9CYXNpYy9UYXJnZXRzL1BQQy5oCi1AQCAtMzc2LDExICszNzYsMTEgQEAgcHVibGlj OgorQEAgLTM4NiwxMSArMzg2LDEwIEBAIHB1YmxpYzoKICAKICAgICAgaWYgKChUcmlwbGUuZ2V0 QXJjaCgpID09IGxsdm06OlRyaXBsZTo6cHBjNjRsZSkpIHsKICAgICAgICByZXNldERhdGFMYXlv dXQoImUtbTplLWk2NDo2NC1uMzI6NjQiKTsKIC0gICAgICBBQkkgPSAiZWxmdjIiOwogICAgICB9 IGVsc2UgewogICAgICAgIHJlc2V0RGF0YUxheW91dCgiRS1tOmUtaTY0OjY0LW4zMjo2NCIpOwot LSAgICAgIEFCSSA9IFRyaXBsZS5nZXRFbnZpcm9ubWVudCgpID09IGxsdm06OlRyaXBsZTo6RUxG djIgPyAiZWxmdjIiIDogImVsZnYxIjsKKy0gICAgICBBQkkgPSAiZWxmdjEiOwogICAgICB9Ci0r ICAgIC8qIGRlZmF1bHQgdG8gZWxmdjIgYWx3YXlzLCBpZ25vcmUgbGx2bSdzIGVsZnYyIHRyaXBs ZXMgKi8KICsgICAgQUJJID0gImVsZnYyIjsKICAKICAgICAgaWYgKFRyaXBsZS5nZXRPUygpID09 IGxsdm06OlRyaXBsZTo6QUlYKQogICAgICAgIFN1aXRhYmxlQWxpZ24gPSA2NDsKIC0tLSBhL2xp Yi9Ecml2ZXIvVG9vbENoYWlucy9DbGFuZy5jcHAKICsrKyBiL2xpYi9Ecml2ZXIvVG9vbENoYWlu cy9DbGFuZy5jcHAKLUBAIC0xODA0LDcgKzE4MDQsNyBAQCB2b2lkIENsYW5nOjpBZGRQUENUYXJn ZXRBcmdzKGNvbnN0IEFyZ0xpc3QgJkFyZ3MsCitAQCAtMTkxOCwxMSArMTkxOCw3IEBAIHZvaWQg Q2xhbmc6OkFkZFBQQ1RhcmdldEFyZ3MoY29uc3QgQXJnTGlzdCAmQXJncywKKyAgICAgICAgIEFC SU5hbWUgPSAiZWxmdjEtcXB4IjsKICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KLSAKLS0gICAg ICBBQklOYW1lID0gImVsZnYxIjsKKy0KKy0gICAgICBpZiAoVC5pc011c2woKSB8fCAoVC5pc09T RnJlZUJTRCgpICYmIFQuZ2V0T1NNYWpvclZlcnNpb24oKSA+PSAxMykpCistICAgICAgICBBQklO YW1lID0gImVsZnYyIjsKKy0gICAgICBlbHNlCistICAgICAgICBBQklOYW1lID0gImVsZnYxIjsK ICsgICAgICBBQklOYW1lID0gImVsZnYyIjsKICAgICAgICBicmVhazsKICAgICAgfQpkaWZmIC0t Z2l0IGEvc3JjcGtncy9sbHZtMTAvZmlsZXMvcGF0Y2hlcy9jb21waWxlci1ydC9jb21waWxlci1y dC1hcm12NS5wYXRjaCBiL3NyY3BrZ3MvbGx2bTEwL2ZpbGVzL3BhdGNoZXMvY29tcGlsZXItcnQv Y29tcGlsZXItcnQtYXJtdjUucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw MDAwMDAuLjg5M2RkMjQ0YzViCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9sbHZtMTAvZmls ZXMvcGF0Y2hlcy9jb21waWxlci1ydC9jb21waWxlci1ydC1hcm12NS5wYXRjaApAQCAtMCwwICsx LDExIEBACistLS0gY29tcGlsZXItcnQtMTAuMC4wLnNyYy9saWIvYnVpbHRpbnMvQ01ha2VMaXN0 cy50eHQKKysrKyBjb21waWxlci1ydC0xMC4wLjAuc3JjL2xpYi9idWlsdGlucy9DTWFrZUxpc3Rz LnR4dAorQEAgLTQyOCw4ICs0MjgsNiBAQAorICkKKyBzZXQoYXJtX1RodW1iMV9TT1VSQ0VTCisg ICAke2FybV9UaHVtYjFfSlRfU09VUkNFU30KKy0gICR7YXJtX1RodW1iMV9TakxqX0VIX1NPVVJD RVN9CistICAke2FybV9UaHVtYjFfVkZQdjJfU09VUkNFU30KKyAgICR7YXJtX1RodW1iMV9pY2Fj aGVfU09VUkNFU30KKyApCisgCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xsdm05L2ZpbGVzL3BhdGNo ZXMvbGxkYi9tdXNsLnBhdGNoIGIvc3JjcGtncy9sbHZtMTAvZmlsZXMvcGF0Y2hlcy9sbGRiL211 c2wucGF0Y2gKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIHNyY3BrZ3MvbGx2bTkv ZmlsZXMvcGF0Y2hlcy9sbGRiL211c2wucGF0Y2gKcmVuYW1lIHRvIHNyY3BrZ3MvbGx2bTEwL2Zp bGVzL3BhdGNoZXMvbGxkYi9tdXNsLnBhdGNoCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xsdm0xMC9m aWxlcy9wYXRjaGVzL2xsdm0vbGx2bS0wMDEtbXVzbC5wYXRjaCBiL3NyY3BrZ3MvbGx2bTEwL2Zp bGVzL3BhdGNoZXMvbGx2bS9sbHZtLTAwMS1tdXNsLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IDAwMDAwMDAwMDAwLi5hMGVkZGJmNThiZQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3Br Z3MvbGx2bTEwL2ZpbGVzL3BhdGNoZXMvbGx2bS9sbHZtLTAwMS1tdXNsLnBhdGNoCkBAIC0wLDAg KzEsNTggQEAKK0Zyb20gZmFjYTNmYmQxNWQwYzMxMDg0OTNjM2M1NGNkOTMxMzhlMDQ5YWM0MyBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IEFuZHJlYSBCcmFuY2FsZW9uaSA8bWl3YXhl QGdtYWlsLmNvbT4KK0RhdGU6IFR1ZSwgOCBTZXAgMjAxNSAyMjowMzowMiArMDIwMAorU3ViamVj dDogW1BBVENIIDMvM10gbXVzbAorCistLS0KKyBpbmNsdWRlL2xsdm0vQW5hbHlzaXMvVGFyZ2V0 TGlicmFyeUluZm8uaCB8IDkgKysrKysrKysrCisgbGliL1N1cHBvcnQvRHluYW1pY0xpYnJhcnku Y3BwICAgICAgICAgICAgfCAyICstCisgbGliL1N1cHBvcnQvVW5peC9TaWduYWxzLmluYyAgICAg ICAgICAgICAgfCA2ICsrKy0tLQorIHV0aWxzL3VuaXR0ZXN0L2dvb2dsZXRlc3Qvc3JjL2d0ZXN0 LmNjICAgIHwgMSArCisgNSBmaWxlcyBjaGFuZ2VkLCAxNyBpbnNlcnRpb25zKCspLCA2IGRlbGV0 aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvaW5jbHVkZS9sbHZtL0FuYWx5c2lzL1RhcmdldExpYnJh cnlJbmZvLmggYi9pbmNsdWRlL2xsdm0vQW5hbHlzaXMvVGFyZ2V0TGlicmFyeUluZm8uaAoraW5k ZXggZTBhMWVlMy4uNDY1YjY1YSAxMDA2NDQKKy0tLSBhL2luY2x1ZGUvbGx2bS9BbmFseXNpcy9U YXJnZXRMaWJyYXJ5SW5mby5oCisrKysgYi9pbmNsdWRlL2xsdm0vQW5hbHlzaXMvVGFyZ2V0TGli cmFyeUluZm8uaAorQEAgLTE4LDYgKzE4LDE1IEBACisgI2luY2x1ZGUgImxsdm0vSVIvUGFzc01h bmFnZXIuaCIKKyAjaW5jbHVkZSAibGx2bS9QYXNzLmgiCisgCisrI3VuZGVmIGZvcGVuNjQKKysj dW5kZWYgZnNlZWtvNjQKKysjdW5kZWYgZnN0YXQ2NAorKyN1bmRlZiBmc3RhdHZmczY0CisrI3Vu ZGVmIGZ0ZWxsbzY0CisrI3VuZGVmIGxzdGF0NjQKKysjdW5kZWYgc3RhdDY0CisrI3VuZGVmIHRt cGZpbGU2NAorKworIG5hbWVzcGFjZSBsbHZtIHsKKyB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4gY2xh c3MgQXJyYXlSZWY7CisgCitkaWZmIC0tZ2l0IGEvdXRpbHMvdW5pdHRlc3QvZ29vZ2xldGVzdC9z cmMvZ3Rlc3QuY2MgYi91dGlscy91bml0dGVzdC9nb29nbGV0ZXN0L3NyYy9ndGVzdC5jYworaW5k ZXggNTc4MDc2NC4uMWQ1NDhjMSAxMDA2NDQKKy0tLSBhL3V0aWxzL3VuaXR0ZXN0L2dvb2dsZXRl c3Qvc3JjL2d0ZXN0LmNjCisrKysgYi91dGlscy91bml0dGVzdC9nb29nbGV0ZXN0L3NyYy9ndGVz dC5jYworQEAgLTEyOCw2ICsxMjgsNyBAQAorIAorICNpZiBHVEVTVF9DQU5fU1RSRUFNX1JFU1VM VFNfCisgIyBpbmNsdWRlIDxhcnBhL2luZXQuaD4gIC8vIE5PTElOVAorKyMgaW5jbHVkZSA8c3lz L3NvY2tldC5oPiAgLy8gTk9MSU5UCisgIyBpbmNsdWRlIDxuZXRkYi5oPiAgLy8gTk9MSU5UCisg IyBpbmNsdWRlIDxzeXMvc29ja2V0Lmg+ICAvLyBOT0xJTlQKKyAjIGluY2x1ZGUgPHN5cy90eXBl cy5oPiAgLy8gTk9MSU5UCistLSAKKzIuNS4xCisKKy0tLSBhL2xpYi9TdXBwb3J0L1VuaXgvRHlu YW1pY0xpYnJhcnkuaW5jCisrKysgYi9saWIvU3VwcG9ydC9Vbml4L0R5bmFtaWNMaWJyYXJ5Lmlu YworQEAgLTEwMiw3ICsxMDIsNyBAQCBzdGF0aWMgdm9pZCAqRG9TZWFyY2goY29uc3QgY2hhciog U3ltYm9sTmFtZSkgeworIAorIC8vIFRoaXMgbWFjcm8gcmV0dXJucyB0aGUgYWRkcmVzcyBvZiBh IHdlbGwta25vd24sIGV4cGxpY2l0IHN5bWJvbAorICNkZWZpbmUgRVhQTElDSVRfU1lNQk9MKFNZ TSkgXAorLSAgIGlmICghc3RyY21wKFN5bWJvbE5hbWUsICNTWU0pKSByZXR1cm4gJlNZTQorKyAg IGlmICghc3RyY21wKFN5bWJvbE5hbWUsICNTWU0pKSByZXR1cm4gKHZvaWQgKikmU1lNCisgCisg Ly8gVW5kZXIgZ2xpYmMgd2UgaGF2ZSBhIHdlaXJkIHNpdHVhdGlvbi4gVGhlIHN0ZGVyci9vdXQv aW4gc3ltYm9scyBhcmUgYm90aAorIC8vIG1hY3JvcyBhbmQgZ2xvYmFsIHZhcmlhYmxlcyBiZWNh dXNlIG9mIHN0YW5kYXJkcyByZXF1aXJlbWVudHMuIFNvLCB3ZQpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9sbHZtMTAvZmlsZXMvcGF0Y2hlcy9sbHZtL2xsdm0tMDAyLW11c2wtcHBjNjQtZWxmdjIucGF0 Y2ggYi9zcmNwa2dzL2xsdm0xMC9maWxlcy9wYXRjaGVzL2xsdm0vbGx2bS0wMDItbXVzbC1wcGM2 NC1lbGZ2Mi5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uMWZm OGFhYTIzOWMKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2xsdm0xMC9maWxlcy9wYXRjaGVz L2xsdm0vbGx2bS0wMDItbXVzbC1wcGM2NC1lbGZ2Mi5wYXRjaApAQCAtMCwwICsxLDI2IEBACitU aGlzIHBhdGNoZXMgTExWTSB0byB1c2UgRUxGdjIgb24gcHBjNjQgdW5jb2RpdGlvbmFsbHkgdW5s ZXNzIG92ZXJyaWRkZW4uIFdlCituZWVkIHRoaXMgYmVjYXVzZSB1bmxpa2UgbW9zdCBkaXN0cm9z IHdlIHVzZSBFTEZ2MiBmb3IgYm90aCBnbGliYyBhbmQgbXVzbAorb24gYmlnIGVuZGlhbiBwcGM2 NC4KKworLS0tIGEvbGliL1RhcmdldC9Qb3dlclBDL1BQQ1RhcmdldE1hY2hpbmUuY3BwCisrKysg Yi9saWIvVGFyZ2V0L1Bvd2VyUEMvUFBDVGFyZ2V0TWFjaGluZS5jcHAKK0BAIC0yMTMsOSArMjEz LDggQEAgc3RhdGljIFBQQ1RhcmdldE1hY2hpbmU6OlBQQ0FCSSBjb21wdXRlVGFyZ2V0QUJJKGNv bnN0IFRyaXBsZSAmVFQsCisgCisgICBzd2l0Y2ggKFRULmdldEFyY2goKSkgeworICAgY2FzZSBU cmlwbGU6OnBwYzY0bGU6CistICAgIHJldHVybiBQUENUYXJnZXRNYWNoaW5lOjpQUENfQUJJX0VM RnYyOworICAgY2FzZSBUcmlwbGU6OnBwYzY0OgorLSAgICByZXR1cm4gUFBDVGFyZ2V0TWFjaGlu ZTo6UFBDX0FCSV9FTEZ2MTsKKysgICAgcmV0dXJuIFBQQ1RhcmdldE1hY2hpbmU6OlBQQ19BQklf RUxGdjI7CisgICBkZWZhdWx0OgorICAgICByZXR1cm4gUFBDVGFyZ2V0TWFjaGluZTo6UFBDX0FC SV9VTktOT1dOOworICAgfQorLS0tIGEvdGVzdC9Db2RlR2VuL1Bvd2VyUEMvcHBjNjQtZWxmLWFi aS5sbAorKysrIGIvdGVzdC9Db2RlR2VuL1Bvd2VyUEMvcHBjNjQtZWxmLWFiaS5sbAorQEAgLTEs NCArMSw1IEBACistOyBSVU46IGxsYyAtdmVyaWZ5LW1hY2hpbmVpbnN0cnMgLW10cmlwbGU9cG93 ZXJwYzY0LXVua25vd24tbGludXgtZ251IDwgJXMgfCBGaWxlQ2hlY2sgJXMgLWNoZWNrLXByZWZp eD1DSEVDSy1FTEZ2MQorKzsgUlVOOiBsbGMgLXZlcmlmeS1tYWNoaW5laW5zdHJzIC1tdHJpcGxl PXBvd2VycGM2NC11bmtub3duLWxpbnV4LWdudSA8ICVzIHwgRmlsZUNoZWNrICVzIC1jaGVjay1w cmVmaXg9Q0hFQ0stRUxGdjIKKys7IFJVTjogbGxjIC12ZXJpZnktbWFjaGluZWluc3RycyAtbXRy aXBsZT1wb3dlcnBjNjQtdW5rbm93bi1saW51eC1tdXNsIDwgJXMgfCBGaWxlQ2hlY2sgJXMgLWNo ZWNrLXByZWZpeD1DSEVDSy1FTEZ2MgorIDsgUlVOOiBsbGMgLXZlcmlmeS1tYWNoaW5laW5zdHJz IC1tdHJpcGxlPXBvd2VycGM2NC11bmtub3duLWxpbnV4LWdudSAtdGFyZ2V0LWFiaSBlbGZ2MSA8 ICVzIHwgRmlsZUNoZWNrICVzIC1jaGVjay1wcmVmaXg9Q0hFQ0stRUxGdjEKKyA7IFJVTjogbGxj IC12ZXJpZnktbWFjaGluZWluc3RycyAtbXRyaXBsZT1wb3dlcnBjNjQtdW5rbm93bi1saW51eC1n bnUgLXRhcmdldC1hYmkgZWxmdjIgPCAlcyB8IEZpbGVDaGVjayAlcyAtY2hlY2stcHJlZml4PUNI RUNLLUVMRnYyCisgOyBSVU46IGxsYyAtdmVyaWZ5LW1hY2hpbmVpbnN0cnMgLW10cmlwbGU9cG93 ZXJwYzY0bGUtdW5rbm93bi1saW51eC1nbnUgPCAlcyB8IEZpbGVDaGVjayAlcyAtY2hlY2stcHJl Zml4PUNIRUNLLUVMRnYyCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xsdm0xMC9maWxlcy9wYXRjaGVz L2xsdm0vbGx2bS0wMDMtc2VjdXJlcGx0LnBhdGNoIGIvc3JjcGtncy9sbHZtMTAvZmlsZXMvcGF0 Y2hlcy9sbHZtL2xsdm0tMDAzLXNlY3VyZXBsdC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAwMDAwMDAwMDAwMC4uZmNiYWJhODYzMzUKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dz L2xsdm0xMC9maWxlcy9wYXRjaGVzL2xsdm0vbGx2bS0wMDMtc2VjdXJlcGx0LnBhdGNoCkBAIC0w LDAgKzEsMTEgQEAKKy0tLSBsbHZtL2xpYi9UYXJnZXQvUG93ZXJQQy9QUENTdWJ0YXJnZXQuY3Bw CisrKysgbGx2bS9saWIvVGFyZ2V0L1Bvd2VyUEMvUFBDU3VidGFyZ2V0LmNwcAorQEAgLTE1MCw3 ICsxNTAsNyBAQCB2b2lkIFBQQ1N1YnRhcmdldDo6aW5pdFN1YnRhcmdldEZlYXR1cmVzKFN0cmlu Z1JlZiBDUFUsIFN0cmluZ1JlZiBGUykgeworIAorICAgaWYgKChUYXJnZXRUcmlwbGUuaXNPU0Zy ZWVCU0QoKSAmJiBUYXJnZXRUcmlwbGUuZ2V0T1NNYWpvclZlcnNpb24oKSA+PSAxMykgfHwKKyAg ICAgICBUYXJnZXRUcmlwbGUuaXNPU05ldEJTRCgpIHx8IFRhcmdldFRyaXBsZS5pc09TT3BlbkJT RCgpIHx8CistICAgICAgVGFyZ2V0VHJpcGxlLmlzTXVzbCgpKQorKyAgICAgIGlzVGFyZ2V0TGlu dXgoKSkKKyAgICAgU2VjdXJlUGx0ID0gdHJ1ZTsKKyAKKyAgIGlmIChIYXNTUEUgJiYgSXNQUEM2 NCkKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGx2bTEwL2ZpbGVzL3BhdGNoZXMvbGx2bS9sbHZtLTAw NC1vdmVycmlkZS1vcHQucGF0Y2ggYi9zcmNwa2dzL2xsdm0xMC9maWxlcy9wYXRjaGVzL2xsdm0v bGx2bS0wMDQtb3ZlcnJpZGUtb3B0LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw MDAwMDAwMDAwLi4zMGQxZTE0ZTE5MwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbGx2bTEw L2ZpbGVzL3BhdGNoZXMvbGx2bS9sbHZtLTAwNC1vdmVycmlkZS1vcHQucGF0Y2gKQEAgLTAsMCAr MSwxOCBAQAorVGhpcyBhbGxvd3MgdXMgdG8gb3ZlcnJpZGUgdGhlIG9wdGltaXphdGlvbiBsZXZl bCBhcyBub3QgYWxsIHBsYXRmb3JtcyBjYW4KK2RlYWwgd2l0aCAtTzMuCisKKy0tLSBhL0NNYWtl TGlzdHMudHh0CisrKysgYi9DTWFrZUxpc3RzLnR4dAorQEAgLTg5Myw2ICs4OTMsMTIgQEAgaWYo IE1JTkdXIEFORCBOT1QgIiR7Q01BS0VfQ1hYX0NPTVBJTEVSX0lEfSIgTUFUQ0hFUyAiQ2xhbmci ICkKKyAgIGxsdm1fcmVwbGFjZV9jb21waWxlcl9vcHRpb24oQ01BS0VfQ1hYX0ZMQUdTX1JFTEVB U0UgIi1PMyIgIi1PMiIpCisgZW5kaWYoKQorIAorK3NldChWT0lEX0NYWF9PUFRfRkxBR1MgIiIg Q0FDSEUgU1RSSU5HICJPcHRpbWl6YXRpb24gbGV2ZWwgdG8gdXNlIikKKysKKytpZihOT1QgVk9J RF9DWFhfT1BUX0ZMQUdTIFNUUkVRVUFMICIiKQorKyAgbGx2bV9yZXBsYWNlX2NvbXBpbGVyX29w dGlvbihDTUFLRV9DWFhfRkxBR1NfUkVMRUFTRSAiLU8zIiAiJHtWT0lEX0NYWF9PUFRfRkxBR1N9 IikKKytlbmRpZigpCisrCisgIyBQdXQgdGhpcyBiZWZvcmUgdGJsZ2VuLiBFbHNlIHdlIGhhdmUg YSBjaXJjdWxhciBkZXBlbmRlbmNlLgorIGFkZF9zdWJkaXJlY3RvcnkobGliL0RlbWFuZ2xlKQor IGFkZF9zdWJkaXJlY3RvcnkobGliL1N1cHBvcnQpCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xsdm0x MC9maWxlcy9wYXRjaGVzL2xsdm0vbGx2bS0wMDUtcHBjLWJpZ3BpYy5wYXRjaCBiL3NyY3BrZ3Mv bGx2bTEwL2ZpbGVzL3BhdGNoZXMvbGx2bS9sbHZtLTAwNS1wcGMtYmlncGljLnBhdGNoCm5ldyBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi40ZTAwNDVkOTdkMwotLS0gL2Rldi9u dWxsCisrKyBiL3NyY3BrZ3MvbGx2bTEwL2ZpbGVzL3BhdGNoZXMvbGx2bS9sbHZtLTAwNS1wcGMt YmlncGljLnBhdGNoCkBAIC0wLDAgKzEsMzggQEAKK0Zyb20gZjNkYmRkNDljMDZiZmFmYzFkNjEz ODA5NGNmNDI4ODljMTRkMzhiNiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IFNhbXVl bCBIb2xsYW5kIDxzYW11ZWxAc2hvbGxhbmQub3JnPgorRGF0ZTogU3VuLCAzIE5vdiAyMDE5IDEw OjU3OjI3IC0wNjAwCitTdWJqZWN0OiBbUEFUQ0hdIFtMTFZNXVtQb3dlclBDXSBBc3N1bWUgQmln UElDIGlmIG5vIFBJQyBsZXZlbCBpcyBzcGVjaWZpZWQKKworLS0tCisgbGx2bS9saWIvVGFyZ2V0 L1Bvd2VyUEMvUFBDQXNtUHJpbnRlci5jcHAgIHwgMiArLQorIGxsdm0vbGliL1RhcmdldC9Qb3dl clBDL1BQQ01DSW5zdExvd2VyLmNwcCB8IDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0 aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL2xsdm0vbGliL1RhcmdldC9Q b3dlclBDL1BQQ0FzbVByaW50ZXIuY3BwIGIvbGx2bS9saWIvVGFyZ2V0L1Bvd2VyUEMvUFBDQXNt UHJpbnRlci5jcHAKK2luZGV4IDI2OWI4NGI0ZThkLi4wMzI0NmE1MjQyYyAxMDA2NDQKKy0tLSBs bHZtL2xpYi9UYXJnZXQvUG93ZXJQQy9QUENBc21QcmludGVyLmNwcAorKysrIGxsdm0vbGliL1Rh cmdldC9Qb3dlclBDL1BQQ0FzbVByaW50ZXIuY3BwCitAQCAtNDg4LDcgKzQ4OCw3IEBAIHZvaWQg UFBDQXNtUHJpbnRlcjo6RW1pdFRsc0NhbGwoY29uc3QgTWFjaGluZUluc3RyICpNSSwKKyAKKyAg IC8vIEFkZCAzMjc2OCBvZmZzZXQgdG8gdGhlIHN5bWJvbCBzbyB3ZSBmb2xsb3cgdXAgdGhlIGxh dGVzdCBHT1QvUExUIEFCSS4KKyAgIGlmIChLaW5kID09IE1DU3ltYm9sUmVmRXhwcjo6VktfUExU ICYmIFN1YnRhcmdldC0+aXNTZWN1cmVQbHQoKSAmJgorLSAgICAgIE0tPmdldFBJQ0xldmVsKCkg PT0gUElDTGV2ZWw6OkJpZ1BJQykKKysgICAgICBNLT5nZXRQSUNMZXZlbCgpICE9IFBJQ0xldmVs OjpTbWFsbFBJQykKKyAgICAgVGxzUmVmID0gTUNCaW5hcnlFeHByOjpjcmVhdGVBZGQoCisgICAg ICAgICBUbHNSZWYsIE1DQ29uc3RhbnRFeHByOjpjcmVhdGUoMzI3NjgsIE91dENvbnRleHQpLCBP dXRDb250ZXh0KTsKKyAgIGNvbnN0IE1hY2hpbmVPcGVyYW5kICZNTyA9IE1JLT5nZXRPcGVyYW5k KDIpOworZGlmZiAtLWdpdCBhL2xsdm0vbGliL1RhcmdldC9Qb3dlclBDL1BQQ01DSW5zdExvd2Vy LmNwcCBiL2xsdm0vbGliL1RhcmdldC9Qb3dlclBDL1BQQ01DSW5zdExvd2VyLmNwcAoraW5kZXgg MDI3ZTZiZDFiYTAuLmFlNDYxZjRlZWE5IDEwMDY0NAorLS0tIGxsdm0vbGliL1RhcmdldC9Qb3dl clBDL1BQQ01DSW5zdExvd2VyLmNwcAorKysrIGxsdm0vbGliL1RhcmdldC9Qb3dlclBDL1BQQ01D SW5zdExvd2VyLmNwcAorQEAgLTExNiw3ICsxMTYsNyBAQCBzdGF0aWMgTUNPcGVyYW5kIEdldFN5 bWJvbFJlZihjb25zdCBNYWNoaW5lT3BlcmFuZCAmTU8sIGNvbnN0IE1DU3ltYm9sICpTeW1ib2ws CisgICBjb25zdCBNQ0V4cHIgKkV4cHIgPSBNQ1N5bWJvbFJlZkV4cHI6OmNyZWF0ZShTeW1ib2ws IFJlZktpbmQsIEN0eCk7CisgICAvLyBJZiAtbXNlY3VyZS1wbHQgLWZQSUMsIGFkZCAzMjc2OCB0 byBzeW1ib2wuCisgICBpZiAoU3VidGFyZ2V0LT5pc1NlY3VyZVBsdCgpICYmIFRNLmlzUG9zaXRp b25JbmRlcGVuZGVudCgpICYmCistICAgICAgTS0+Z2V0UElDTGV2ZWwoKSA9PSBQSUNMZXZlbDo6 QmlnUElDICYmCisrICAgICAgTS0+Z2V0UElDTGV2ZWwoKSAhPSBQSUNMZXZlbDo6U21hbGxQSUMg JiYKKyAgICAgICBNTy5nZXRUYXJnZXRGbGFncygpID09IFBQQ0lJOjpNT19QTFQpCisgICAgIEV4 cHIgPQorICAgICAgICAgTUNCaW5hcnlFeHByOjpjcmVhdGVBZGQoRXhwciwgTUNDb25zdGFudEV4 cHI6OmNyZWF0ZSgzMjc2OCwgQ3R4KSwgQ3R4KTsKKy0tIAorMi4yMy4wCmRpZmYgLS1naXQgYS9z cmNwa2dzL2xsdm0xMC90ZW1wbGF0ZSBiL3NyY3BrZ3MvbGx2bTEwL3RlbXBsYXRlCm5ldyBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5mZDBjMGIzOGQ4YQotLS0gL2Rldi9udWxs CisrKyBiL3NyY3BrZ3MvbGx2bTEwL3RlbXBsYXRlCkBAIC0wLDAgKzEsMjg4IEBACisjIFRlbXBs YXRlIGZpbGUgZm9yICdsbHZtMTAnCitwa2duYW1lPWxsdm0xMAordmVyc2lvbj0xMC4wLjAKK3Jl dmlzaW9uPTEKK3dya3NyYz0ibGx2bS0ke3ZlcnNpb259LnNyYyIKK2J1aWxkX3N0eWxlPWNtYWtl Citjb25maWd1cmVfYXJncz0iCisgLURDTUFLRV9CVUlMRF9UWVBFPVJlbGVhc2UKKyAtRExMVk1f SU5TVEFMTF9VVElMUz1PTgorIC1ETExWTV9CVUlMRF9MTFZNX0RZTElCPU9OCisgLURMTFZNX0xJ TktfTExWTV9EWUxJQj1PTgorIC1ETExWTV9FTkFCTEVfUlRUST1PTgorIC1ETExWTV9FTkFCTEVf RkZJPU9OCisgLURMTFZNX0JJTlVUSUxTX0lOQ0RJUj0vdXNyL2luY2x1ZGUiCitob3N0bWFrZWRl cGVuZHM9Imdyb2ZmIHBlcmwgcHl0aG9uMyB6bGliLWRldmVsIGxpYmZmaS1kZXZlbCBzd2lnIgor bWFrZWRlcGVuZHM9InB5dGhvbjMtZGV2ZWwgemxpYi1kZXZlbCBsaWJmZmktZGV2ZWwgbGliZWRp dC1kZXZlbAorIGxpYnhtbDItZGV2ZWwgYmludXRpbHMtZGV2ZWwgbGliYXRvbWljLWRldmVsIgor ZGVwZW5kcz0ibGlibGx2bTEwIgorc2hvcnRfZGVzYz0iTG93IExldmVsIFZpcnR1YWwgTWFjaGlu ZSIKK21haW50YWluZXI9InE2NiA8ZGFuaWVsQG9jdGFmb3JnZS5vcmc+IgorbGljZW5zZT0iTkNT QSIKK2hvbWVwYWdlPSJodHRwczovL3d3dy5sbHZtLm9yZyIKK2Rpc3RmaWxlcz0iCisgaHR0cHM6 Ly9naXRodWIuY29tL2xsdm0vbGx2bS1wcm9qZWN0L3JlbGVhc2VzL2Rvd25sb2FkL2xsdm1vcmct JHt2ZXJzaW9ufS9sbHZtLSR7dmVyc2lvbn0uc3JjLnRhci54egorIGh0dHBzOi8vZ2l0aHViLmNv bS9sbHZtL2xsdm0tcHJvamVjdC9yZWxlYXNlcy9kb3dubG9hZC9sbHZtb3JnLSR7dmVyc2lvbn0v bGxkYi0ke3ZlcnNpb259LnNyYy50YXIueHoKKyBodHRwczovL2dpdGh1Yi5jb20vbGx2bS9sbHZt LXByb2plY3QvcmVsZWFzZXMvZG93bmxvYWQvbGx2bW9yZy0ke3ZlcnNpb259L2xsZC0ke3ZlcnNp b259LnNyYy50YXIueHoKKyBodHRwczovL2dpdGh1Yi5jb20vbGx2bS9sbHZtLXByb2plY3QvcmVs ZWFzZXMvZG93bmxvYWQvbGx2bW9yZy0ke3ZlcnNpb259L2NsYW5nLSR7dmVyc2lvbn0uc3JjLnRh ci54egorIGh0dHBzOi8vZ2l0aHViLmNvbS9sbHZtL2xsdm0tcHJvamVjdC9yZWxlYXNlcy9kb3du bG9hZC9sbHZtb3JnLSR7dmVyc2lvbn0vY2xhbmctdG9vbHMtZXh0cmEtJHt2ZXJzaW9ufS5zcmMu dGFyLnh6CisgaHR0cHM6Ly9naXRodWIuY29tL2xsdm0vbGx2bS1wcm9qZWN0L3JlbGVhc2VzL2Rv d25sb2FkL2xsdm1vcmctJHt2ZXJzaW9ufS9jb21waWxlci1ydC0ke3ZlcnNpb259LnNyYy50YXIu eHoiCitjaGVja3N1bT0iCisgZGY4M2E0NGIzYTlhNzEwMjkwNDllYzEwMWZiMDA3N2VjYmJkZjVm ZTQxZTM5NTIxNTAyNTc3OTA5OWE5OGZkZgorIGRkMWZmY2I0MmVkMDMzZjUxNjcwODllYzRjNmVi ZTg0ZmJjYTFkYjRhOWVhZWJmNWM2MTRhZjA5ZDg5ZWIxMzUKKyBiOWEwZDdjNTc2ZWVlZjA1YmMw NmQ2ZTk1NDkzOGEwMWM1Mzk2Y2VlMWQxZTk4NTg5MWUwYjFjZjE2ZTNkNzA4CisgODg1YjA2MmIw MGU5MDNkZjcyNjMxYzVmOThiOTU3OWVkMWVkMjc5MGY3NGU1NjQ2YjQyMzRmYTA4NGVhY2IyMQor IGFjZGY4Y2Y2NTc0YjQwZTZiMWRhYmM5M2U3NmRlYmI4NGE5ZmViNmYyMjk3MDEyNmIwNGQ0YmEx OGI5MjkxMWMKKyA2YTdkYTY0ZDNhMGE3MzIwNTc3YjY4YjljYTQ5MzNiZGNhYjY3NmU4OThiNzU5 ODUwZTgyNzMzM2MzMjgyYzc1IgorZGlzYWJsZV9wYXJhbGxlbF9idWlsZHM9eWVzCitsaWIzMmRp c2FibGVkPXllcworcHl0aG9uX3ZlcnNpb249MworCitfbGxkYl9lbmFibGU9eWVzCisKK2lmIFsg IiRDUk9TU19CVUlMRCIgXTsgdGhlbgorCV9sbGRiX2VuYWJsZT1ubworZmkKKworY2FzZSAiJFhC UFNfVEFSR0VUX01BQ0hJTkUiIGluCisJcHBjNjRsZSopIDs7CisJcHBjKikgX2xsZGJfZW5hYmxl PW5vIDs7Citlc2FjCisKK3N1YnBhY2thZ2VzPSJjbGFuZy10b29scy1leHRyYSBjbGFuZyBjbGFu Zy1hbmFseXplciBsaWJsbHZtMTAiCitpZiBbICIkX2xsZGJfZW5hYmxlIiA9ICJ5ZXMiIF07IHRo ZW4KKwkjIFhYWCBmYWlscyB0byBjcm9zcyBjb21waWxlIGR1ZSB0byBweXRob24KKwlzdWJwYWNr YWdlcys9IiBsbGRiIGxsZGItZGV2ZWwiCitmaQorc3VicGFja2FnZXMrPSIgbGxkIGxsZC1kZXZl bCIKKworcG9zdF9wYXRjaCgpIHsKKwkjIHBhdGNoZXMKKwljZCAke1hCUFNfQlVJTERESVJ9L2xs dm0tJHt2ZXJzaW9ufS5zcmMKKwlmb3IgaSBpbiAke0ZJTEVTRElSfS9wYXRjaGVzL2xsdm0vbGx2 bS0qLnBhdGNoOyBkbworCQltc2dfbm9ybWFsICJBcHBseWluZyAkaSB0byBsbHZtXG4iCisJCXBh dGNoIC1zTnAxIC1pICR7aX0KKwlkb25lCisKKwljZCAke1hCUFNfQlVJTERESVJ9L2NsYW5nLSR7 dmVyc2lvbn0uc3JjCisJZm9yIGkgaW4gJHtGSUxFU0RJUn0vcGF0Y2hlcy9jbGFuZy9jbGFuZy0q LnBhdGNoOyBkbworCQltc2dfbm9ybWFsICJBcHBseWluZyAkaSB0byBjbGFuZ1xuIgorCQlwYXRj aCAtc05wMSAtaSAke2l9CisJZG9uZQorCisJY2FzZSAiJFhCUFNfVEFSR0VUX01BQ0hJTkUiIGlu CisJYXJtdjUqKQorCQljZCAke1hCUFNfQlVJTERESVJ9L2NvbXBpbGVyLXJ0LSR7dmVyc2lvbn0u c3JjCisJCWZvciBpIGluICR7RklMRVNESVJ9L3BhdGNoZXMvY29tcGlsZXItcnQvY29tcGlsZXIt cnQtKi5wYXRjaDsgZG8KKwkJCW1zZ19ub3JtYWwgIkFwcGx5aW5nICRpIHRvIGNvbXBpbGVyLXJ0 XG4iCisJCQlwYXRjaCAtc05wMSAtaSAke2l9CisJCWRvbmUKKwkJOzsKKwllc2FjCisKKwlpZiBb ICIkX2xsZGJfZW5hYmxlIiA9ICJ5ZXMiIF07IHRoZW4KKwkJY2QgJHtYQlBTX0JVSUxERElSfS9s bGRiLSR7dmVyc2lvbn0uc3JjCisJCWZvciBpIGluICR7RklMRVNESVJ9L3BhdGNoZXMvbGxkYi8q LnBhdGNoOyBkbworCQkJbXNnX25vcm1hbCAiQXBwbHlpbmcgJGkgdG8gbGxkYlxuIgorCQkJcGF0 Y2ggLXNOcDEgLWkgJHtpfQorCQlkb25lCisJCWNhc2UgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiBp bgorCQkJKi1tdXNsKSBzZWQgLWkgJ3N8X19wdHJhY2VfcmVxdWVzdHxpbnR8Zycgc291cmNlL1Bs dWdpbnMvUHJvY2Vzcy9MaW51eC9OYXRpdmVQcm9jZXNzTGludXguY3BwIDs7CisJCWVzYWMKKwlm aQorCisJIyBNb3ZlIGNsYW5nIGZpbGVzIGludG8gdGhlIGxsdm0gc291cmNlLgorCWlmIFsgLWQg JHtYQlBTX0JVSUxERElSfS9jbGFuZy0ke3ZlcnNpb259LnNyYyBdOyB0aGVuCisJCW12ICR7WEJQ U19CVUlMRERJUn0vY2xhbmctJHt2ZXJzaW9ufS5zcmMgJHt3cmtzcmN9L3Rvb2xzL2NsYW5nCisJ ZmkKKwkjIE1vdmUgY2xhbmctdG9vbHMtZXh0cmEgZmlsZXMgaW50byBsbHZtIHNvdXJjZS4KKwlp ZiBbIC1kICR7WEJQU19CVUlMRERJUn0vY2xhbmctdG9vbHMtZXh0cmEtJHt2ZXJzaW9ufS5zcmMg XTsgdGhlbgorCQltdiAke1hCUFNfQlVJTERESVJ9L2NsYW5nLXRvb2xzLWV4dHJhLSR7dmVyc2lv bn0uc3JjICR7d3Jrc3JjfS90b29scy9jbGFuZy90b29scy9leHRyYQorCWZpCisJIyBNb3ZlIGxs ZCBmaWxlcyBpbnRvIHRoZSBsbHZtIHNvdXJjZS4KKwlpZiBbIC1kICR7WEJQU19CVUlMRERJUn0v bGxkLSR7dmVyc2lvbn0uc3JjIF07IHRoZW4KKwkJbXYgJHtYQlBTX0JVSUxERElSfS9sbGQtJHt2 ZXJzaW9ufS5zcmMgJHt3cmtzcmN9L3Rvb2xzL2xsZAorCWZpCisJIyBNb3ZlIGxsZGIgZmlsZXMg aW50byB0aGUgbGx2bSBzb3VyY2UuCisJaWYgWyAiJF9sbGRiX2VuYWJsZSIgPSAieWVzIiAtYSAt ZCAke1hCUFNfQlVJTERESVJ9L2xsZGItJHt2ZXJzaW9ufS5zcmMgXTsgdGhlbgorCQltdiAke1hC UFNfQlVJTERESVJ9L2xsZGItJHt2ZXJzaW9ufS5zcmMgJHt3cmtzcmN9L3Rvb2xzL2xsZGIKKwlm aQorCSMgTW92ZSBjb21waWxlci1ydCBmaWxlcyBpbnRvIHRoZSBsbHZtIHNvdXJjZS4KKwlpZiBb IC1kICR7WEJQU19CVUlMRERJUn0vY29tcGlsZXItcnQtJHt2ZXJzaW9ufS5zcmMgXTsgdGhlbgor CQltdiAke1hCUFNfQlVJTERESVJ9L2NvbXBpbGVyLXJ0LSR7dmVyc2lvbn0uc3JjICR7d3Jrc3Jj fS9wcm9qZWN0cy9jb21waWxlci1ydAorCWZpCisJY2FzZSAiJFhCUFNfVEFSR0VUX01BQ0hJTkUi IGluCisJCSotbXVzbCkKKwkJCSMgRGlzYWJsZSBzYW5pdGl6ZXJzCisJCQlzZWQgLWkgJ3Mvc2V0 KENPTVBJTEVSX1JUX0hBU19TQU5JVElaRVJfQ09NTU9OIFRSVUUpL3NldChDT01QSUxFUl9SVF9I QVNfU0FOSVRJWkVSX0NPTU1PTiBGQUxTRSkvJyAke3dya3NyY30vcHJvamVjdHMvY29tcGlsZXIt cnQvY21ha2UvY29uZmlnLWl4LmNtYWtlCisJCQk7OworCWVzYWMKKworfQorCitwcmVfY29uZmln dXJlKCkgeworCSMgVmFzdGx5IHJlZHVjZSBzaXplIG9mIGRlYnVnZ2luZyBzeW1ib2xzOgorCUNG TEFHUz0ke0NGTEFHUy8gLWcvIC1nMX0KKwlDWFhGTEFHUz0ke0NYWEZMQUdTLyAtZy8gLWcxfQor CisJIyBzaW5jZSBnY2M5LCB0aGUgYnVpbGQgbGlrZXMgdG8gYmxvdyB1cCBmb3IgcHBjMzIgYXBw YXJlbnRseSBiZWNhdXNlCisJIyBvZiBjbGFuZyBiZWluZyB0b28gbGFyZ2UgZm9yIGEgMjQtYml0 IHJlbGF0aXZlIGNhbGwgdG8gdGhlIFBMVCwgc28KKwkjIG9wdGltaXplIGZvciBzaXplIGluc3Rl YWQKKwljYXNlICIkWEJQU19UQVJHRVRfTUFDSElORSIgaW4KKwkJcHBjfHBwYy1tdXNsKSBjb25m aWd1cmVfYXJncys9IiAtRFZPSURfQ1hYX09QVF9GTEFHUz0tT3MiIDs7CisJZXNhYworCisJaWYg WyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCisJCW1zZ19ub3JtYWwgIkJ1aWxkaW5nIGhvc3QgdGJs Z2VuXG4iCisJCW1rZGlyIC1wIGJ1aWxkL0hPU1QKKwkJY2QgYnVpbGQvSE9TVAorCQlDQz0iJEJV SUxEX0NDIiBDWFg9IiRCVUlMRF9DWFgiIENGTEFHUz0iJEJVSUxEX0NGTEFHUyIgXAorCQkJQ1hY RkxBR1M9IiRCVUlMRF9DWFhGTEFHUyIgTERGTEFHUz0iJEJVSUxEX0xERkxBR1MiIFwKKwkJCWNt YWtlIC4uLy4uIC1EQ01BS0VfQlVJTERfVFlQRT1SZWxlYXNlCisJCW1ha2UgJHttYWtlam9ic30g LUMgdXRpbHMvVGFibGVHZW4KKwkJbWFrZSAke21ha2Vqb2JzfSAtQyB0b29scy9jbGFuZy91dGls cy9UYWJsZUdlbgorCQljb25maWd1cmVfYXJncys9IiAtRExMVk1fVEFCTEVHRU49JHt3cmtzcmN9 L2J1aWxkL0hPU1QvYmluL2xsdm0tdGJsZ2VuIgorCQljb25maWd1cmVfYXJncys9IiAtRENMQU5H X1RBQkxFR0VOPSR7d3Jrc3JjfS9idWlsZC9IT1NUL2Jpbi9jbGFuZy10YmxnZW4iCisJCWNkIC4u Ly4uCisJZmkKKworCWNhc2UgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiBpbgorCQlpNjg2KikgX2Fy Y2g9Ilg4NiI7OworCQl4ODZfNjQqKSBfYXJjaD0iWDg2Ijs7CisJCWFybXY1KikgX2FyY2g9IkFy bXY1dGUiOzsKKwkJYXJtdjYqKSBfYXJjaD0iQXJtdjYiOzsKKwkJYXJtdjcqKSBfYXJjaD0iQXJt djciOzsKKwkJYWFyY2g2NCopIF9hcmNoPSJBQXJjaDY0Ijs7CisJCW1pcHMqKSBfYXJjaD0iTWlw cyI7OworCQlwcGMqKSBfYXJjaD0iUG93ZXJQQyI7OworCWVzYWMKKwljb25maWd1cmVfYXJncys9 IiAtRExMVk1fVEFSR0VUX0FSQ0g9JHtfYXJjaH0iCisJY29uZmlndXJlX2FyZ3MrPSIgLURMTFZN X0RFRkFVTFRfVEFSR0VUX1RSSVBMRT0ke1hCUFNfQ1JPU1NfVFJJUExFVDotJFhCUFNfVFJJUExF VH0iCit9CisKK2RvX2luc3RhbGwoKSB7CisJdmxpY2Vuc2UgTElDRU5TRS5UWFQKKworCWNkIGJ1 aWxkCisJY21ha2UgLURDTUFLRV9JTlNUQUxMX1BSRUZJWD0ke0RFU1RESVJ9L3VzciAtUCBjbWFr ZV9pbnN0YWxsLmNtYWtlCisKKwkjIEZpeCBwZXJtaXNzaW9ucyBvZiBzdGF0aWMgbGlicworCWNo bW9kIC14ICR7REVTVERJUn0vdXNyL2xpYi8qLmEKKworCSMgUmVxdWlyZWQgZm9yIG11bHRpbGli LgorCWlmIFsgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiA9ICJ4ODZfNjQiIF07IHRoZW4KKwkJZm9y IF9oZWFkZXIgaW4gbGx2bS1jb25maWc7IGRvCisJCQltdiAke0RFU1RESVJ9L3Vzci9pbmNsdWRl L2xsdm0vQ29uZmlnLyR7X2hlYWRlcn17LC02NH0uaAorCQkJdmluc3RhbGwgJHtGSUxFU0RJUn0v bGx2bS1Db25maWctJHtfaGVhZGVyfS5oIDY0NCBcCisJCQkJdXNyL2luY2x1ZGUvbGx2bS9Db25m aWcgJHtfaGVhZGVyfS5oCisJCWRvbmUKKwlmaQorCisJIyBSZW1vdmUgbGx2bS1jb25maWctaG9z dCBpbiBjcm9zcyBidWlsZHMuCisJaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCisJCXJtIC1m ICR7REVTVERJUn0vdXNyL2Jpbi9sbHZtLWNvbmZpZy1ob3N0CisJZmkKK30KKworY2xhbmctYW5h bHl6ZXJfcGFja2FnZSgpIHsKKwlhcmNocz1ub2FyY2gKKwlweWNvbXBpbGVfZGlycz0idXNyL3No YXJlL3NjYW4tdmlldyIKKwlkZXBlbmRzPSJjbGFuZy0ke3ZlcnNpb259XyR7cmV2aXNpb259IHB5 dGhvbjMiCisJc2hvcnRfZGVzYys9IiAtIEEgc291cmNlIGNvZGUgYW5hbHlzaXMgZnJhbWV3b3Jr IgorCWhvbWVwYWdlPSJodHRwczovL2NsYW5nLWFuYWx5emVyLmxsdm0ub3JnLyIKKwlwa2dfaW5z dGFsbCgpIHsKKwkJdm1vdmUgdXNyL3NoYXJlL21hbi9tYW4xL3NjYW4tYnVpbGQuMQorCQl2bW92 ZSAiL3Vzci9iaW4vc2Nhbi0qIgorCQl2bW92ZSAiL3Vzci9zaGFyZS9zY2FuLSoiCisJCXZtb3Zl ICIvdXNyL2xpYmV4ZWMvKmFuYWx5emVyIgorCX0KK30KKworY2xhbmctdG9vbHMtZXh0cmFfcGFj a2FnZSgpIHsKKwlkZXBlbmRzPSJjbGFuZy0ke3ZlcnNpb259XyR7cmV2aXNpb259IHB5dGhvbjMi CisJc2hvcnRfZGVzYys9IiAtIEV4dHJhIENsYW5nIHRvb2xzIgorCWhvbWVwYWdlPSJodHRwczov L2NsYW5nLmxsdm0ub3JnL2V4dHJhLyIKKwlwa2dfaW5zdGFsbCgpIHsKKwkJdm1vdmUgdXNyL2Jp bi9jbGFuZy1hcHBseS1yZXBsYWNlbWVudHMKKwkJdm1vdmUgdXNyL2Jpbi9jbGFuZy1xdWVyeQor CQl2bW92ZSB1c3IvYmluL2NsYW5nLXJlbmFtZQorCQl2bW92ZSB1c3IvYmluL2NsYW5nLXRpZHkK KwkJdm1vdmUgdXNyL2Jpbi9tb2R1bGFyaXplCisJCXZtb3ZlICJ1c3IvbGliL2xpYmNsYW5nQXBw bHlSZXBsYWNlbWVudHMqIgorCQl2bW92ZSAidXNyL2xpYi9saWJjbGFuZ1F1ZXJ5KiIKKwkJdm1v dmUgInVzci9saWIvbGliY2xhbmdUaWR5KiIKKwkJdm1vdmUgInVzci9zaGFyZS9jbGFuZy8qdGlk eSoiCisJfQorfQorCitjbGFuZ19wYWNrYWdlKCkgeworCWxpYjMyZGlzYWJsZWQ9eWVzCisJZGVw ZW5kcz0ibGlic3RkYysrLWRldmVsIGxpYmdjYy1kZXZlbCBiaW51dGlscyIKKwljYXNlICIkWEJQ U19UQVJHRVRfTUFDSElORSIgaW4KKwkJKi1tdXNsKSBkZXBlbmRzKz0iIG11c2wtZGV2ZWwiOzsK KwkJKikgZGVwZW5kcys9IiBnbGliYy1kZXZlbCI7OworCWVzYWMKKwlzaG9ydF9kZXNjKz0iIC0g QyBsYW5ndWFnZSBmYW1pbHkgZnJvbnRlbmQiCisJaG9tZXBhZ2U9Imh0dHBzOi8vY2xhbmcubGx2 bS5vcmcvIgorCXBrZ19pbnN0YWxsKCkgeworCQl2bW92ZSB1c3IvaW5jbHVkZS9jbGFuZworCQl2 bW92ZSB1c3IvaW5jbHVkZS9jbGFuZy1jCisJCXZtb3ZlICJ1c3IvYmluLypjbGFuZyoiCisJCXZt b3ZlIHVzci9iaW4vYy1pbmRleC10ZXN0CisJCXZtb3ZlIHVzci9saWIvY2xhbmcKKwkJdm1vdmUg dXNyL2xpYi9jbWFrZS9jbGFuZworCQl2bW92ZSAidXNyL2xpYi9saWJjbGFuZyoiCisJCXZtb3Zl ICJ1c3Ivc2hhcmUvY2xhbmciCisJfQorfQorCitsbGRfcGFja2FnZSgpIHsKKwlsaWIzMmRpc2Fi bGVkPXllcworCXNob3J0X2Rlc2MrPSIgLSBsaW5rZXIiCisJaG9tZXBhZ2U9Imh0dHBzOi8vbGxk Lmxsdm0ub3JnIgorCXBrZ19pbnN0YWxsKCkgeworCQl2bW92ZSB1c3IvYmluL2xsZCoKKwkJdm1v dmUgdXNyL2Jpbi93YXNtLWxkCisJCXZtb3ZlIHVzci9iaW4vbGQubGxkKgorCX0KK30KKworbGxk LWRldmVsX3BhY2thZ2UoKSB7CisJbGliMzJkaXNhYmxlZD15ZXMKKwlzaG9ydF9kZXNjKz0iIC0g bGlua2VyIC0gZGV2ZWxvcG1lbnQgZmlsZXMiCisJaG9tZXBhZ2U9Imh0dHBzOi8vbGxkLmxsdm0u b3JnIgorCXBrZ19pbnN0YWxsKCkgeworCQl2bW92ZSB1c3IvaW5jbHVkZS9sbGQKKwkJdm1vdmUg InVzci9saWIvbGlibGxkKmEiCisJfQorfQorCitsbGRiX3BhY2thZ2UoKSB7CisJbGliMzJkaXNh YmxlZD15ZXMKKwlkZXBlbmRzKz0iIHB5dGhvbjMtc2l4IgorCXNob3J0X2Rlc2MrPSIgLSBMTERC IGRlYnVnZ2VyIgorCWhvbWVwYWdlPSJodHRwczovL2xsZGIubGx2bS5vcmcvIgorCXBrZ19pbnN0 YWxsKCkgeworCQl2bW92ZSB1c3IvYmluLypsbGRiKgorCQl2bW92ZSB1c3IvbGliL2xpYmxsZGIq c28uKgorCQl2bW92ZSAvdXNyL2xpYi9weXRob24qCisJCSMgRGVwZW5kIG9uIHB5dGhvbjMtc2l4 IGluc3RlYWQgb2YgY29uZmxpY3RpbmcKKwkJcm0gJHtQS0dERVNURElSfS91c3IvbGliL3B5dGhv bjMqL3NpdGUtcGFja2FnZXMvc2l4LnB5CisJfQorfQorCitsbGRiLWRldmVsX3BhY2thZ2UoKSB7 CisJZGVwZW5kcz0ibGxkYj49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlzaG9ydF9kZXNjKz0i IC0gTExEQiBkZWJ1Z2dlciAtIGRldmVsb3BtZW50IGZpbGVzIgorCXBrZ19pbnN0YWxsKCkgewor CQl2bW92ZSB1c3IvaW5jbHVkZS9sbGRiCisJCXZtb3ZlICJ1c3IvbGliL2xpYmxsZGIqLnNvIgor CX0KK30KKworbGlibGx2bTEwX3BhY2thZ2UoKSB7CisJc2hvcnRfZGVzYys9IiAtIHJ1bnRpbWUg bGlicmFyeSIKKwlwa2dfaW5zdGFsbCgpIHsKKwkJdm1vdmUgInVzci9saWIvbGliTExWTS0qLnNv KiIKKwl9Cit9CmRpZmYgLS1naXQgYS9zcmNwa2dzL2xsdm0xMC91cGRhdGUgYi9zcmNwa2dzL2xs dm0xMC91cGRhdGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjNkMDll YWZmMzczCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9sbHZtMTAvdXBkYXRlCkBAIC0wLDAg KzEsMiBAQAorc2l0ZT1odHRwczovL3JlbGVhc2VzLmxsdm0ub3JnLworcGF0dGVybj0iJ1xLW1xk XC5dKig/PScpIgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9sbHZtOS9maWxlcy9wYXRjaGVzL2NvbXBp bGVyLXJ0L2NvbXBpbGVyLXJ0LWFybXY1LnBhdGNoIGIvc3JjcGtncy9sbHZtOS9maWxlcy9wYXRj aGVzL2NvbXBpbGVyLXJ0L2NvbXBpbGVyLXJ0LWFybXY1LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCBmNGQyZTM0MWI2Yy4uMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9sbHZt OS9maWxlcy9wYXRjaGVzL2NvbXBpbGVyLXJ0L2NvbXBpbGVyLXJ0LWFybXY1LnBhdGNoCisrKyAv ZGV2L251bGwKQEAgLTEsMTEgKzAsMCBAQAotLS0tIGNvbXBpbGVyLXJ0LTkuMC4xLnNyYy9saWIv YnVpbHRpbnMvQ01ha2VMaXN0cy50eHQJMjAxOS0xMi0xMSAyMDoxNTozMC4wMDAwMDAwMDAgKzAx MDAKLSsrKyBjb21waWxlci1ydC05LjAuMS5zcmMvbGliL2J1aWx0aW5zL0NNYWtlTGlzdHMudHh0 CTIwMjAtMDMtMjkgMDc6MjM6MzguMTcyODEzMDM4ICswMjAwCi1AQCAtNDE5LDggKzQxOSw2IEBA Ci0gKQotIHNldChhcm1fVGh1bWIxX1NPVVJDRVMKLSAgICR7YXJtX1RodW1iMV9KVF9TT1VSQ0VT fQotLSAgJHthcm1fVGh1bWIxX1NqTGpfRUhfU09VUkNFU30KLS0gICR7YXJtX1RodW1iMV9WRlB2 Ml9TT1VSQ0VTfQotICAgJHthcm1fVGh1bWIxX2ljYWNoZV9TT1VSQ0VTfQotICkKLSAKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvbGx2bTkvdGVtcGxhdGUgYi9zcmNwa2dzL2xsdm05L3RlbXBsYXRlCmlu ZGV4IDM1MGE5ZDY3ZDE2Li43NjkyY2IyNTQwYyAxMDA2NDQKLS0tIGEvc3JjcGtncy9sbHZtOS90 ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2xsdm05L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAnbGx2bTknCiBwa2duYW1lPWxsdm05CiB2ZXJzaW9uPTkuMC4xCi1y ZXZpc2lvbj01CityZXZpc2lvbj02CiB3cmtzcmM9Imxsdm0tJHt2ZXJzaW9ufS5zcmMiCiBidWls ZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9IgpAQCAtMjAsNDIgKzIwLDE1IEBAIHNob3J0 X2Rlc2M9IkxvdyBMZXZlbCBWaXJ0dWFsIE1hY2hpbmUiCiBtYWludGFpbmVyPSJxNjYgPGRhbmll bEBvY3RhZm9yZ2Uub3JnPiIKIGxpY2Vuc2U9Ik5DU0EiCiBob21lcGFnZT0iaHR0cHM6Ly93d3cu bGx2bS5vcmciCi1kaXN0ZmlsZXM9IgotIGh0dHBzOi8vZ2l0aHViLmNvbS9sbHZtL2xsdm0tcHJv amVjdC9yZWxlYXNlcy9kb3dubG9hZC9sbHZtb3JnLSR7dmVyc2lvbn0vbGx2bS0ke3ZlcnNpb259 LnNyYy50YXIueHoKLSBodHRwczovL2dpdGh1Yi5jb20vbGx2bS9sbHZtLXByb2plY3QvcmVsZWFz ZXMvZG93bmxvYWQvbGx2bW9yZy0ke3ZlcnNpb259L2xsZGItJHt2ZXJzaW9ufS5zcmMudGFyLnh6 Ci0gaHR0cHM6Ly9naXRodWIuY29tL2xsdm0vbGx2bS1wcm9qZWN0L3JlbGVhc2VzL2Rvd25sb2Fk L2xsdm1vcmctJHt2ZXJzaW9ufS9sbGQtJHt2ZXJzaW9ufS5zcmMudGFyLnh6Ci0gaHR0cHM6Ly9n aXRodWIuY29tL2xsdm0vbGx2bS1wcm9qZWN0L3JlbGVhc2VzL2Rvd25sb2FkL2xsdm1vcmctJHt2 ZXJzaW9ufS9jbGFuZy0ke3ZlcnNpb259LnNyYy50YXIueHoKLSBodHRwczovL2dpdGh1Yi5jb20v bGx2bS9sbHZtLXByb2plY3QvcmVsZWFzZXMvZG93bmxvYWQvbGx2bW9yZy0ke3ZlcnNpb259L2Ns YW5nLXRvb2xzLWV4dHJhLSR7dmVyc2lvbn0uc3JjLnRhci54egotIGh0dHBzOi8vZ2l0aHViLmNv bS9sbHZtL2xsdm0tcHJvamVjdC9yZWxlYXNlcy9kb3dubG9hZC9sbHZtb3JnLSR7dmVyc2lvbn0v Y29tcGlsZXItcnQtJHt2ZXJzaW9ufS5zcmMudGFyLnh6IgotY2hlY2tzdW09IgotIDAwYTFlZTFm Mzg5ZjgxZTk5NzlmM2E2NDBhMDFjNDMxYjMwMjFkZTBkNDIyNzhmNjUwODM5MWEyZjBiODFjOWEK LSA4YTdiOWZkNzk1YzMxYTNlM2NiYTZjZTEzNzdhMmFlNWM2NzM3NmQ5Mjg4ODcwMmNlMjdlMjZm MDk3MWJlYjA5Ci0gODYyNjJiYWQzZTJmZDc4NGJhOGM1ZTIxNThkN2FhMzZmMTJiODVmMjUxNWU5 NWJjODFkNjVkNzViYjliMGM4MgotIDU3Nzg1MTJiMmUwNjVjMjA0MDEwZjg4Nzc3ZDQ0Yjk1MjUw NjcxMTAzZTQzNGY5ZGM3MzYzYWIyZTM4MDQyNTMKLSBiMjZmZDcyYTc4YmQ3ZGI5OThhMjYyNzBl YzllYzZhMDEzNDY2NTFkODhmYTg3YjRiMzIzZTEzMDQ5ZmI2ZjA3Ci0gYzJiZmFiOTVjOTk4NjMx ODMxODM2M2Q3ZjM3MWE4NWE5NWUzMzNiYzBiMzRmYmZhNTJlZGJkM2Y1ZTNhOTA3NyIKK2Rpc3Rm aWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL2xsdm0vbGx2bS1wcm9qZWN0L3JlbGVhc2VzL2Rvd25s b2FkL2xsdm1vcmctJHt2ZXJzaW9ufS9sbHZtLSR7dmVyc2lvbn0uc3JjLnRhci54eiIKK2NoZWNr c3VtPSIwMGExZWUxZjM4OWY4MWU5OTc5ZjNhNjQwYTAxYzQzMWIzMDIxZGUwZDQyMjc4ZjY1MDgz OTFhMmYwYjgxYzlhIgogZGlzYWJsZV9wYXJhbGxlbF9idWlsZHM9eWVzCiBsaWIzMmRpc2FibGVk PXllcwotIyBuZWNlc3NhcnkgdG8gb3ZlcnJpZGUgYXV0byBkZWZhdWx0CiBweXRob25fdmVyc2lv bj0zCiAKLV9sbGRiX2VuYWJsZT15ZXMKK2NvbmZsaWN0cz0ibGx2bTEwPj0wIgogCi1pZiBbICIk Q1JPU1NfQlVJTEQiIF07IHRoZW4KLQlfbGxkYl9lbmFibGU9bm8KLWZpCi0KLWNhc2UgIiRYQlBT X1RBUkdFVF9NQUNISU5FIiBpbgotCXBwYzY0bGUqKSA7OwotCXBwYyopIF9sbGRiX2VuYWJsZT1u byA7OwotZXNhYwotCi1zdWJwYWNrYWdlcz0iY2xhbmctdG9vbHMtZXh0cmEgY2xhbmcgY2xhbmct YW5hbHl6ZXIgbGlibGx2bTkiCi1pZiBbICIkX2xsZGJfZW5hYmxlIiA9ICJ5ZXMiIF07IHRoZW4K LQkjIFhYWCBmYWlscyB0byBjcm9zcyBjb21waWxlIGR1ZSB0byBweXRob24KLQlzdWJwYWNrYWdl cys9IiBsbGRiIGxsZGItZGV2ZWwiCi1maQotc3VicGFja2FnZXMrPSIgbGxkIGxsZC1kZXZlbCIK K3N1YnBhY2thZ2VzPSJsaWJsbHZtOSIKIAogcG9zdF9wYXRjaCgpIHsKIAkjIHBhdGNoZXMKQEAg LTY0LDYxICszNyw2IEBAIHBvc3RfcGF0Y2goKSB7CiAJCW1zZ19ub3JtYWwgIkFwcGx5aW5nICRp IHRvIGxsdm1cbiIKIAkJcGF0Y2ggLXNOcDEgLWkgJHtpfQogCWRvbmUKLQotCWNkICR7WEJQU19C VUlMRERJUn0vY2xhbmctJHt2ZXJzaW9ufS5zcmMKLQlmb3IgaSBpbiAke0ZJTEVTRElSfS9wYXRj aGVzL2NsYW5nL2NsYW5nLSoucGF0Y2g7IGRvCi0JCW1zZ19ub3JtYWwgIkFwcGx5aW5nICRpIHRv IGNsYW5nXG4iCi0JCXBhdGNoIC1zTnAxIC1pICR7aX0KLQlkb25lCi0KLQljYXNlICIkWEJQU19U QVJHRVRfTUFDSElORSIgaW4KLQlhcm12NSopCi0JCWNkICR7WEJQU19CVUlMRERJUn0vY29tcGls ZXItcnQtJHt2ZXJzaW9ufS5zcmMKLQkJZm9yIGkgaW4gJHtGSUxFU0RJUn0vcGF0Y2hlcy9jb21w aWxlci1ydC9jb21waWxlci1ydC0qLnBhdGNoOyBkbwotCQkJbXNnX25vcm1hbCAiQXBwbHlpbmcg JGkgdG8gY29tcGlsZXItcnRcbiIKLQkJCXBhdGNoIC1zTnAxIC1pICR7aX0KLQkJZG9uZQotCQk7 OwotCWVzYWMKLQotCWlmIFsgIiRfbGxkYl9lbmFibGUiID0gInllcyIgXTsgdGhlbgotCQljZCAk e1hCUFNfQlVJTERESVJ9L2xsZGItJHt2ZXJzaW9ufS5zcmMKLQkJZm9yIGkgaW4gJHtGSUxFU0RJ Un0vcGF0Y2hlcy9sbGRiLyoucGF0Y2g7IGRvCi0JCQltc2dfbm9ybWFsICJBcHBseWluZyAkaSB0 byBsbGRiXG4iCi0JCQlwYXRjaCAtc05wMSAtaSAke2l9Ci0JCWRvbmUKLQkJY2FzZSAiJFhCUFNf VEFSR0VUX01BQ0hJTkUiIGluCi0JCQkqLW11c2wpIHNlZCAtaSAnc3xfX3B0cmFjZV9yZXF1ZXN0 fGludHxnJyBzb3VyY2UvUGx1Z2lucy9Qcm9jZXNzL0xpbnV4L05hdGl2ZVByb2Nlc3NMaW51eC5j cHAgOzsKLQkJZXNhYwotCWZpCi0KLQkjIE1vdmUgY2xhbmcgZmlsZXMgaW50byB0aGUgbGx2bSBz b3VyY2UuCi0JaWYgWyAtZCAke1hCUFNfQlVJTERESVJ9L2NsYW5nLSR7dmVyc2lvbn0uc3JjIF07 IHRoZW4KLQkJbXYgJHtYQlBTX0JVSUxERElSfS9jbGFuZy0ke3ZlcnNpb259LnNyYyAke3dya3Ny Y30vdG9vbHMvY2xhbmcKLQlmaQotCSMgTW92ZSBjbGFuZy10b29scy1leHRyYSBmaWxlcyBpbnRv IGxsdm0gc291cmNlLgotCWlmIFsgLWQgJHtYQlBTX0JVSUxERElSfS9jbGFuZy10b29scy1leHRy YS0ke3ZlcnNpb259LnNyYyBdOyB0aGVuCi0JCW12ICR7WEJQU19CVUlMRERJUn0vY2xhbmctdG9v bHMtZXh0cmEtJHt2ZXJzaW9ufS5zcmMgJHt3cmtzcmN9L3Rvb2xzL2NsYW5nL3Rvb2xzL2V4dHJh Ci0JZmkKLQkjIE1vdmUgbGxkIGZpbGVzIGludG8gdGhlIGxsdm0gc291cmNlLgotCWlmIFsgLWQg JHtYQlBTX0JVSUxERElSfS9sbGQtJHt2ZXJzaW9ufS5zcmMgXTsgdGhlbgotCQltdiAke1hCUFNf QlVJTERESVJ9L2xsZC0ke3ZlcnNpb259LnNyYyAke3dya3NyY30vdG9vbHMvbGxkCi0JZmkKLQkj IE1vdmUgbGxkYiBmaWxlcyBpbnRvIHRoZSBsbHZtIHNvdXJjZS4KLQlpZiBbICIkX2xsZGJfZW5h YmxlIiA9ICJ5ZXMiIC1hIC1kICR7WEJQU19CVUlMRERJUn0vbGxkYi0ke3ZlcnNpb259LnNyYyBd OyB0aGVuCi0JCW12ICR7WEJQU19CVUlMRERJUn0vbGxkYi0ke3ZlcnNpb259LnNyYyAke3dya3Ny Y30vdG9vbHMvbGxkYgotCWZpCi0JIyBNb3ZlIGNvbXBpbGVyLXJ0IGZpbGVzIGludG8gdGhlIGxs dm0gc291cmNlLgotCWlmIFsgLWQgJHtYQlBTX0JVSUxERElSfS9jb21waWxlci1ydC0ke3ZlcnNp b259LnNyYyBdOyB0aGVuCi0JCW12ICR7WEJQU19CVUlMRERJUn0vY29tcGlsZXItcnQtJHt2ZXJz aW9ufS5zcmMgJHt3cmtzcmN9L3Byb2plY3RzL2NvbXBpbGVyLXJ0Ci0JZmkKLQljYXNlICIkWEJQ U19UQVJHRVRfTUFDSElORSIgaW4KLQkJKi1tdXNsKQotCQkJIyBEaXNhYmxlIHNhbml0aXplcnMK LQkJCXNlZCAtaSAncy9zZXQoQ09NUElMRVJfUlRfSEFTX1NBTklUSVpFUl9DT01NT04gVFJVRSkv c2V0KENPTVBJTEVSX1JUX0hBU19TQU5JVElaRVJfQ09NTU9OIEZBTFNFKS8nICR7d3Jrc3JjfS9w cm9qZWN0cy9jb21waWxlci1ydC9jbWFrZS9jb25maWctaXguY21ha2UKLQkJCTs7Ci0JZXNhYwot CiB9CiAKIHByZV9jb25maWd1cmUoKSB7CkBAIC0xNDEsOSArNTksNyBAQCBwcmVfY29uZmlndXJl KCkgewogCQkJQ1hYRkxBR1M9IiRCVUlMRF9DWFhGTEFHUyIgTERGTEFHUz0iJEJVSUxEX0xERkxB R1MiIFwKIAkJCWNtYWtlIC4uLy4uIC1EQ01BS0VfQlVJTERfVFlQRT1SZWxlYXNlCiAJCW1ha2Ug JHttYWtlam9ic30gLUMgdXRpbHMvVGFibGVHZW4KLQkJbWFrZSAke21ha2Vqb2JzfSAtQyB0b29s cy9jbGFuZy91dGlscy9UYWJsZUdlbgogCQljb25maWd1cmVfYXJncys9IiAtRExMVk1fVEFCTEVH RU49JHt3cmtzcmN9L2J1aWxkL0hPU1QvYmluL2xsdm0tdGJsZ2VuIgotCQljb25maWd1cmVfYXJn cys9IiAtRENMQU5HX1RBQkxFR0VOPSR7d3Jrc3JjfS9idWlsZC9IT1NUL2Jpbi9jbGFuZy10Ymxn ZW4iCiAJCWNkIC4uLy4uCiAJZmkKIApAQCAtMTg1LDEwMyArMTAxLDYgQEAgZG9faW5zdGFsbCgp IHsKIAlmaQogfQogCi1jbGFuZy1hbmFseXplcl9wYWNrYWdlKCkgewotCWFyY2hzPW5vYXJjaAot CXB5Y29tcGlsZV9kaXJzPSJ1c3Ivc2hhcmUvc2Nhbi12aWV3IgotCWRlcGVuZHM9ImNsYW5nLSR7 dmVyc2lvbn1fJHtyZXZpc2lvbn0gcHl0aG9uMyIKLQlzaG9ydF9kZXNjKz0iIC0gQSBzb3VyY2Ug Y29kZSBhbmFseXNpcyBmcmFtZXdvcmsiCi0JaG9tZXBhZ2U9Imh0dHBzOi8vY2xhbmctYW5hbHl6 ZXIubGx2bS5vcmcvIgotCXBrZ19pbnN0YWxsKCkgewotCQl2bW92ZSB1c3Ivc2hhcmUvbWFuL21h bjEvc2Nhbi1idWlsZC4xCi0JCXZtb3ZlICIvdXNyL2Jpbi9zY2FuLSoiCi0JCXZtb3ZlICIvdXNy L3NoYXJlL3NjYW4tKiIKLQkJdm1vdmUgIi91c3IvbGliZXhlYy8qYW5hbHl6ZXIiCi0JfQotfQot Ci1jbGFuZy10b29scy1leHRyYV9wYWNrYWdlKCkgewotCWRlcGVuZHM9ImNsYW5nLSR7dmVyc2lv bn1fJHtyZXZpc2lvbn0gcHl0aG9uMyIKLQlzaG9ydF9kZXNjKz0iIC0gRXh0cmEgQ2xhbmcgdG9v bHMiCi0JaG9tZXBhZ2U9Imh0dHBzOi8vY2xhbmcubGx2bS5vcmcvZXh0cmEvIgotCXBrZ19pbnN0 YWxsKCkgewotCQl2bW92ZSB1c3IvYmluL2NsYW5nLWFwcGx5LXJlcGxhY2VtZW50cwotCQl2bW92 ZSB1c3IvYmluL2NsYW5nLXF1ZXJ5Ci0JCXZtb3ZlIHVzci9iaW4vY2xhbmctcmVuYW1lCi0JCXZt b3ZlIHVzci9iaW4vY2xhbmctdGlkeQotCQl2bW92ZSB1c3IvYmluL21vZHVsYXJpemUKLQkJdm1v dmUgInVzci9saWIvbGliY2xhbmdBcHBseVJlcGxhY2VtZW50cyoiCi0JCXZtb3ZlICJ1c3IvbGli L2xpYmNsYW5nUXVlcnkqIgotCQl2bW92ZSAidXNyL2xpYi9saWJjbGFuZ1RpZHkqIgotCQl2bW92 ZSAidXNyL3NoYXJlL2NsYW5nLyp0aWR5KiIKLQl9Ci19Ci0KLWNsYW5nX3BhY2thZ2UoKSB7Ci0J bGliMzJkaXNhYmxlZD15ZXMKLQlkZXBlbmRzPSJsaWJzdGRjKystZGV2ZWwgbGliZ2NjLWRldmVs IGJpbnV0aWxzIgotCWNhc2UgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiBpbgotCQkqLW11c2wpIGRl cGVuZHMrPSIgbXVzbC1kZXZlbCI7OwotCQkqKSBkZXBlbmRzKz0iIGdsaWJjLWRldmVsIjs7Ci0J ZXNhYwotCXNob3J0X2Rlc2MrPSIgLSBDIGxhbmd1YWdlIGZhbWlseSBmcm9udGVuZCIKLQlob21l cGFnZT0iaHR0cHM6Ly9jbGFuZy5sbHZtLm9yZy8iCi0JcGtnX2luc3RhbGwoKSB7Ci0JCXZtb3Zl IHVzci9pbmNsdWRlL2NsYW5nCi0JCXZtb3ZlIHVzci9pbmNsdWRlL2NsYW5nLWMKLQkJdm1vdmUg InVzci9iaW4vKmNsYW5nKiIKLQkJdm1vdmUgdXNyL2Jpbi9jLWluZGV4LXRlc3QKLQkJdm1vdmUg dXNyL2xpYi9jbGFuZwotCQl2bW92ZSB1c3IvbGliL2NtYWtlL2NsYW5nCi0JCXZtb3ZlICJ1c3Iv bGliL2xpYmNsYW5nKiIKLQkJdm1vdmUgInVzci9zaGFyZS9jbGFuZyIKLQl9Ci19Ci0KLWxsZF9w YWNrYWdlKCkgewotCWxpYjMyZGlzYWJsZWQ9eWVzCi0Jc2hvcnRfZGVzYys9IiAtIGxpbmtlciIK LQlob21lcGFnZT0iaHR0cHM6Ly9sbGQubGx2bS5vcmciCi0JcGtnX2luc3RhbGwoKSB7Ci0JCXZt b3ZlIHVzci9iaW4vbGxkKgotCQl2bW92ZSB1c3IvYmluL3dhc20tbGQKLQkJdm1vdmUgdXNyL2Jp bi9sZC5sbGQqCi0JfQotfQotCi1sbGQtZGV2ZWxfcGFja2FnZSgpIHsKLQlsaWIzMmRpc2FibGVk PXllcwotCXNob3J0X2Rlc2MrPSIgLSBsaW5rZXIgLSBkZXZlbG9wbWVudCBmaWxlcyIKLQlob21l cGFnZT0iaHR0cHM6Ly9sbGQubGx2bS5vcmciCi0JcGtnX2luc3RhbGwoKSB7Ci0JCXZtb3ZlIHVz ci9pbmNsdWRlL2xsZAotCQl2bW92ZSAidXNyL2xpYi9saWJsbGQqYSIKLQl9Ci19Ci0KLWxsZGJf cGFja2FnZSgpIHsKLQlsaWIzMmRpc2FibGVkPXllcwotCWRlcGVuZHMrPSIgcHl0aG9uMy1zaXgi Ci0Jc2hvcnRfZGVzYys9IiAtIExMREIgZGVidWdnZXIiCi0JaG9tZXBhZ2U9Imh0dHBzOi8vbGxk Yi5sbHZtLm9yZy8iCi0JcGtnX2luc3RhbGwoKSB7Ci0JCXZtb3ZlIHVzci9iaW4vKmxsZGIqCi0J CXZtb3ZlIHVzci9saWIvbGlibGxkYipzby4qCi0JCXZtYW4gdG9vbHMvbGxkYi9kb2NzL2xsZGIu MQotCQl2bW92ZSAvdXNyL2xpYi9weXRob24qCi0JCSMgRGVwZW5kIG9uIHB5dGhvbjMtc2l4IGlu c3RlYWQgb2YgY29uZmxpY3RpbmcKLQkJcm0gJHtQS0dERVNURElSfS91c3IvbGliL3B5dGhvbjMq L3NpdGUtcGFja2FnZXMvc2l4LnB5Ci0JfQotfQotCi1sbGRiLWRldmVsX3BhY2thZ2UoKSB7Ci0J ZGVwZW5kcz0ibGxkYj49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKLQlzaG9ydF9kZXNjKz0iIC0g TExEQiBkZWJ1Z2dlciAtIGRldmVsb3BtZW50IGZpbGVzIgotCXBrZ19pbnN0YWxsKCkgewotCQl2 bW92ZSB1c3IvaW5jbHVkZS9sbGRiCi0JCXZtb3ZlICJ1c3IvbGliL2xpYmxsZGIqLnNvIgotCX0K LX0KLQogbGlibGx2bTlfcGFja2FnZSgpIHsKIAlzaG9ydF9kZXNjKz0iIC0gcnVudGltZSBsaWJy YXJ5IgogCXBrZ19pbnN0YWxsKCkgewoKRnJvbSA3NTE1MDhiNzE3ZmEzZDg2Y2U5NmU5Mzc0Njhh Mzg3OGM3YWJkZjE0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBxNjYgPGRhbmllbEBv Y3RhZm9yZ2Uub3JnPgpEYXRlOiBGcmksIDggTWF5IDIwMjAgMDU6MDg6NTggKzAyMDAKU3ViamVj dDogW1BBVENIIDAyLzI0XSBsbHZtOiB1cGRhdGUgdG8gMTAuMC4wCgotLS0KIHNyY3BrZ3MvbGx2 bS90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xsdm0vdGVtcGxhdGUgYi9zcmNwa2dz L2xsdm0vdGVtcGxhdGUKaW5kZXggZmE2NmJmODQ0NDQuLjk4NzhiZmNhZWQyIDEwMDY0NAotLS0g YS9zcmNwa2dzL2xsdm0vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9sbHZtL3RlbXBsYXRlCkBAIC0x LDkgKzEsOSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbGx2bScKIHBrZ25hbWU9bGx2bQotdmVy c2lvbj05LjAuMQordmVyc2lvbj0xMC4wLjAKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1ldGEK LWRlcGVuZHM9Imxsdm05IgorZGVwZW5kcz0ibGx2bTEwIgogcmVwbGFjZXM9Imxsdm04Pj0wIGxs dm03Pj0wIGxsdm02LjA+PTAgbGx2bTMuOT49MCIKIHNob3J0X2Rlc2M9IkxMVk0gbWV0YSBwYWNr YWdlIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKCkZy b20gODhlNjU5MDI4OWQ0YTRlNWU2Njg3YTdhMWI4NGM4NzE3OGNkNzg2NCBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogcTY2IDxkYW5pZWxAb2N0YWZvcmdlLm9yZz4KRGF0ZTogRnJpLCA4 IE1heSAyMDIwIDA1OjExOjMzICswMjAwClN1YmplY3Q6IFtQQVRDSCAwMy8yNF0gcnVzdDogc3dp dGNoIHRvIGxsdm05IGZvciBub3cKCi0tLQogc3JjcGtncy9ydXN0L3RlbXBsYXRlIHwgNCArKy0t CiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvcnVzdC90ZW1wbGF0ZSBiL3NyY3BrZ3MvcnVzdC90ZW1wbGF0ZQppbmRl eCBlNzQyMWNmNGUwNC4uMDIxNWVlYWY2YzUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcnVzdC90ZW1w bGF0ZQorKysgYi9zcmNwa2dzL3J1c3QvdGVtcGxhdGUKQEAgLTEyLDcgKzEyLDcgQEAgX2Nhcmdv X2Rpc3RfdmVyc2lvbj0wLjQxLjAKICMgdXBsb2FkZWQgdG8gaHR0cHM6Ly9hbHBoYS5kZS5yZXBv LnZvaWRsaW51eC5vcmcvZGlzdGZpbGVzLwogd3Jrc3JjPSJydXN0Yy0ke3ZlcnNpb259LXNyYyIK IGhvc3RtYWtlZGVwZW5kcz0iY21ha2UgY3VybCBwa2ctY29uZmlnIHB5dGhvbjMgdGFyIgotbWFr ZWRlcGVuZHM9ImxpYmZmaS1kZXZlbCBuY3Vyc2VzLWRldmVsIGxpYnhtbDItZGV2ZWwgemxpYi1k ZXZlbCBsbHZtIgorbWFrZWRlcGVuZHM9ImxpYmZmaS1kZXZlbCBuY3Vyc2VzLWRldmVsIGxpYnht bDItZGV2ZWwgemxpYi1kZXZlbCBsbHZtOSIKIGRlcGVuZHM9InJ1c3Qtc3RkIgogc2hvcnRfZGVz Yz0iU2FmZSwgY29uY3VycmVudCwgcHJhY3RpY2FsIHN5c3RlbXMgbGFuZ3VhZ2UiCiBtYWludGFp bmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgpAQCAtMjgsNyArMjgsNyBA QCBidWlsZF9vcHRpb25zPSJzdGF0aWNfbGx2bSIKIF9ib290c3RyYXBfZGlyPSJzdGFnZTAtYm9v dHN0cmFwIgogCiBpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KLQlob3N0bWFrZWRlcGVuZHMr PSIgY2FyZ28gbGx2bSIKKwlob3N0bWFrZWRlcGVuZHMrPSIgY2FyZ28gbGx2bTkiCiAJIyBUaGVz ZSBhcmUgcmVxdWlyZWQgZm9yIGJ1aWxkaW5nIHRoZSBidWlsZGhvc3QncyBzdGFnZTAvMQogCWhv c3RtYWtlZGVwZW5kcys9IiBsaWJmZmktZGV2ZWwgbGlieG1sMi1kZXZlbCBuY3Vyc2VzLWRldmVs IHpsaWItZGV2ZWwiCiBlbHNlCgpGcm9tIDIxMTk2MDZmYWM1OTYzYjQwNzk0NTVjZDJkMDJjMTJj YjdmMTA1NjQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHE2NiA8ZGFuaWVsQG9jdGFm b3JnZS5vcmc+CkRhdGU6IEZyaSwgOCBNYXkgMjAyMCAwNjoxMzozNSArMDIwMApTdWJqZWN0OiBb UEFUQ0ggMDQvMjRdIG1lc2E6IHJlYnVpbGQgYWdhaW5zdCBsbHZtMTAKCi0tLQogc3JjcGtncy9t ZXNhL3BhdGNoZXMvY2xvdmVyLXBwYzY0LWNwcDE0LnBhdGNoIHwgMTMgKysrKysrKysrKysrKwog c3JjcGtncy9tZXNhL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQog MiBmaWxlcyBjaGFuZ2VkLCAxNSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQogY3JlYXRl IG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbWVzYS9wYXRjaGVzL2Nsb3Zlci1wcGM2NC1jcHAxNC5wYXRj aAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbWVzYS9wYXRjaGVzL2Nsb3Zlci1wcGM2NC1jcHAxNC5w YXRjaCBiL3NyY3BrZ3MvbWVzYS9wYXRjaGVzL2Nsb3Zlci1wcGM2NC1jcHAxNC5wYXRjaApuZXcg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uYjdlZWY3Njk1OWEKLS0tIC9kZXYv bnVsbAorKysgYi9zcmNwa2dzL21lc2EvcGF0Y2hlcy9jbG92ZXItcHBjNjQtY3BwMTQucGF0Y2gK QEAgLTAsMCArMSwxMyBAQAorTExWTTEwIGhlYWRlcnMgbmVlZCBDKysxNCwgc28gb3ZlcnJpZGUg dGhlIG92ZXJyaWRlLgorCistLS0gbWVzb24uYnVpbGQKKysrKyBtZXNvbi5idWlsZAorQEAgLTcz MCw3ICs3MzAsNyBAQCBpZiBfb3BlbmNsICE9ICdkaXNhYmxlZCcKKyAgICAgICAjZXJyb3IgIkFs dGlWZWMgbm90IGVuYWJsZWQiCisgICAgICAgI2VuZGlmJycnLAorICAgICAgIG5hbWUgOiAnQWx0 aXZlYycpCistICAgIGNsb3Zlcl9jcHBfc3RkICs9IFsnY3BwX3N0ZD1nbnUrKzExJ10KKysgICAg Y2xvdmVyX2NwcF9zdGQgKz0gWydjcHBfc3RkPWdudSsrMTQnXQorICAgZW5kaWYKKyBlbHNlCisg ICBkZXBfY2xjID0gbnVsbF9kZXAKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbWVzYS90ZW1wbGF0ZSBi L3NyY3BrZ3MvbWVzYS90ZW1wbGF0ZQppbmRleCAwZDQ5ZjJiYWRmNC4uM2Y5OGY0NTQ3MDkgMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvbWVzYS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL21lc2EvdGVtcGxh dGUKQEAgLTEsMTMgKzEsMTMgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ21lc2EnCiBwa2duYW1l PW1lc2EKIHZlcnNpb249MjAuMC42Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiB3cmtzcmM9Im1l c2EtJHt2ZXJzaW9ufSIKIGJ1aWxkX3N0eWxlPW1lc29uCiBjb25maWd1cmVfYXJncz0iLURnbHZu ZD10cnVlIC1Ec2hhcmVkLWdsYXBpPXRydWUgLURnYm09dHJ1ZSAtRGVnbD10cnVlCiAgLURvc21l c2E9Z2FsbGl1bSAtRGdsZXMxPXRydWUgLURnbGVzMj10cnVlIC1EZ2x4PWRyaSAtRGRyaTM9dHJ1 ZQogIC1EbG1zZW5zb3JzPXRydWUgLURwbGF0Zm9ybXM9eDExLGRybSwkKHZvcHRfaWYgd2F5bGFu ZCB3YXlsYW5kKSxzdXJmYWNlbGVzcwotIC1EbGx2bT10cnVlIC1EYl9sdG89ZmFsc2UiCisgLURs bHZtPXRydWUgLURiX2x0bz1mYWxzZSAtRGNwcF9zdGQ9Z251KysxNCIKIGhvc3RtYWtlZGVwZW5k cz0iZ2V0dGV4dCBmbGV4IGxpYnhtbDItcHl0aG9uIGxsdm0gcGtnLWNvbmZpZwogIHB5dGhvbjMt TWFrbyAkKHZvcHRfaWYgd2F5bGFuZCAnd2F5bGFuZC1wcm90b2NvbHMgd2F5bGFuZC1kZXZlbCcp CiAgZ2xzbGFuZyIKCkZyb20gODFlMDg3MzYzOGVmN2Q3NjJiYTgzZjdhY2I1M2RmMGQ4ZGVhZGRi YiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogcTY2IDxkYW5pZWxAb2N0YWZvcmdlLm9y Zz4KRGF0ZTogRnJpLCA4IE1heSAyMDIwIDA2OjE0OjE1ICswMjAwClN1YmplY3Q6IFtQQVRDSCAw NS8yNF0gbGliY2xjLWdpdDogcmVidWlsZCB3aXRoIGxsdm0xMAoKLS0tCiBzcmNwa2dzL2xpYmNs Yy1naXQvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEg ZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYmNsYy1naXQvdGVtcGxhdGUgYi9z cmNwa2dzL2xpYmNsYy1naXQvdGVtcGxhdGUKaW5kZXggNjJlMDEwYTcxMjguLjc0OGZmZTk4ZmM4 IDEwMDY0NAotLS0gYS9zcmNwa2dzL2xpYmNsYy1naXQvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9s aWJjbGMtZ2l0L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn bGliY2xjLWdpdCcKIHBrZ25hbWU9bGliY2xjLWdpdAogdmVyc2lvbj0yMDE4MTEyNwotcmV2aXNp b249MworcmV2aXNpb249NAogX2dpdF9oYXNoPTFlY2IxNmRkN2Q4YjhlOTE1MTAyN2ZhYWI5OTZm MjdiMmFjNTA4ZTMKIHdya3NyYz0ibGliY2xjLSR7X2dpdF9oYXNofSIKIGJ1aWxkX3N0eWxlPWNv bmZpZ3VyZQoKRnJvbSA4Y2JmYWE5MTE0NmE2NWE3NTgzMzhlOWEzYmUwZmM3ZGNkNWM4Njg4IE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBxNjYgPGRhbmllbEBvY3RhZm9yZ2Uub3JnPgpE YXRlOiBGcmksIDggTWF5IDIwMjAgMDY6NDk6MDggKzAyMDAKU3ViamVjdDogW1BBVENIIDA2LzI0 XSBxdDU6IHJlYnVpbGQgZm9yIGxsdm0xMAoKLS0tCiBzcmNwa2dzL3F0NS90ZW1wbGF0ZSB8IDIg Ky0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvcXQ1L3RlbXBsYXRlIGIvc3JjcGtncy9xdDUvdGVtcGxhdGUKaW5kZXgg NWY5NzY2YWUyZjkuLjVmYmVlZjFmMTNmIDEwMDY0NAotLS0gYS9zcmNwa2dzL3F0NS90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL3F0NS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUg ZmlsZSBmb3IgJ3F0NScKIHBrZ25hbWU9cXQ1CiB2ZXJzaW9uPTUuMTQuMgotcmV2aXNpb249Mgor cmV2aXNpb249Mwogd3Jrc3JjPSJxdC1ldmVyeXdoZXJlLXNyYy0ke3ZlcnNpb259IgogYnVpbGRf c3R5bGU9bWV0YQogaG9zdG1ha2VkZXBlbmRzPSJjbWFrZSBjbGFuZyBmbGV4IGdpdCBnbGliLWRl dmVsIHBrZy1jb25maWcKCkZyb20gZTcyZGNlZDNkMTcwZDZhMThjNTg0NTE0MjIxYTkyYjgzMGNk NmE3ZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogcTY2IDxkYW5pZWxAb2N0YWZvcmdl Lm9yZz4KRGF0ZTogRnJpLCA4IE1heSAyMDIwIDA2OjQ5OjMzICswMjAwClN1YmplY3Q6IFtQQVRD SCAwNy8yNF0gcXRjcmVhdG9yOiByZWJ1aWxkIGZvciBsbHZtMTAKCi0tLQogc3JjcGtncy9xdGNy ZWF0b3IvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEg ZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Y3JlYXRvci90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvcXRjcmVhdG9yL3RlbXBsYXRlCmluZGV4IGZkOGFjMjc2NTQ3Li5jNzczM2Y2OWU1YSAx MDA2NDQKLS0tIGEvc3JjcGtncy9xdGNyZWF0b3IvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9xdGNy ZWF0b3IvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdxdGNy ZWF0b3InCiBwa2duYW1lPXF0Y3JlYXRvcgogdmVyc2lvbj00LjEyLjAKLXJldmlzaW9uPTEKK3Jl dmlzaW9uPTIKIHdya3NyYz0icXQtY3JlYXRvci1vcGVuc291cmNlLXNyYy0ke3ZlcnNpb259Igog YnVpbGRfc3R5bGU9cW1ha2UKIG1ha2VfaW5zdGFsbF9hcmdzPSJJTlNUQUxMX1JPT1Q9XCR7REVT VERJUn0vdXNyIgoKRnJvbSBkOTdkYTZlZWRhOGMzNDM3MDIyYTk0Y2RiYzQ0NmM5MmUxNWRkZWRm IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBxNjYgPGRhbmllbEBvY3RhZm9yZ2Uub3Jn PgpEYXRlOiBGcmksIDggTWF5IDIwMjAgMDY6NDk6NDkgKzAyMDAKU3ViamVjdDogW1BBVENIIDA4 LzI0XSBnbm9tZS1idWlsZGVyOiByZWJ1aWxkIGZvciBsbHZtMTAKCi0tLQogc3JjcGtncy9nbm9t ZS1idWlsZGVyL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCsp LCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1idWlsZGVyL3RlbXBs YXRlIGIvc3JjcGtncy9nbm9tZS1idWlsZGVyL3RlbXBsYXRlCmluZGV4IDlkNzE1MDY0YTE5Li45 NzBkMDhmMzQ2MiAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1idWlsZGVyL3RlbXBsYXRlCisr KyBiL3NyY3BrZ3MvZ25vbWUtYnVpbGRlci90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ2dub21lLWJ1aWxkZXInCiBwa2duYW1lPWdub21lLWJ1aWxkZXIKIHZl cnNpb249My4zNC4xCi1yZXZpc2lvbj0zCityZXZpc2lvbj00CiBidWlsZF9zdHlsZT1tZXNvbgog Y29uZmlndXJlX2FyZ3M9Ii1Ed2l0aF93ZWJraXQ9dHJ1ZSAtRHdpdGhfc3lzcHJvZj10cnVlIC1E aGVscD10cnVlIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGFwcGRhdGEtdG9vbHMgZGVz a3RvcC1maWxlLXV0aWxzIGZsZXggZ29iamVjdC1pbnRyb3NwZWN0aW9uCgpGcm9tIDI0MDUwMjZk OGUxZDExMzM5MjA2MzkwZDMzZjk1NzQ0ZDE4NmE0YzAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CkZyb206IHE2NiA8ZGFuaWVsQG9jdGFmb3JnZS5vcmc+CkRhdGU6IEZyaSwgOCBNYXkgMjAyMCAw Njo1MDowOCArMDIwMApTdWJqZWN0OiBbUEFUQ0ggMDkvMjRdIGp1Q2krKzogcmVidWlsZCBmb3Ig bGx2bTEwCgotLS0KIHNyY3BrZ3MvanVDaSsrL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5n ZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9q dUNpKysvdGVtcGxhdGUgYi9zcmNwa2dzL2p1Q2krKy90ZW1wbGF0ZQppbmRleCA3M2ZhN2Q4YjI2 NS4uMmViNDVhMjM0YjMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvanVDaSsrL3RlbXBsYXRlCisrKyBi L3NyY3BrZ3MvanVDaSsrL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxl IGZvciAnanVDaSsrJwogcGtnbmFtZT1qdUNpKysKIHZlcnNpb249MS41LjAKLXJldmlzaW9uPTQK K3JldmlzaW9uPTUKIF9saWJjbGFuZ21tX2NvbW1pdD0iNjg3YjljMjMxZDg1MDUwNGVjNTE1YWNi OWNjYWI3M2YyNmMzNDA2MyIKIF90aW55X2NvbW1pdD0iYTY3NzMyNzZlZmRiYzMyMmYxYWJiMDE1 OTMwMWY1NTAyNjQ3ZWI1MiIKIHdya3NyYz0ianVjaXBwLXYke3ZlcnNpb259IgoKRnJvbSA2Yjdl MDQ2MDA5ZjMxMzJjMGI4MTZkOWRkMDEzZDkxMmIxYWRmNTgyIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiBxNjYgPGRhbmllbEBvY3RhZm9yZ2Uub3JnPgpEYXRlOiBGcmksIDggTWF5IDIw MjAgMDY6NTA6NTMgKzAyMDAKU3ViamVjdDogW1BBVENIIDEwLzI0XSBrZGV2ZWxvcDogcmVidWls ZCBmb3IgbGx2bTEwCgotLS0KIHNyY3BrZ3Mva2RldmVsb3AvdGVtcGxhdGUgfCAyICstCiAxIGZp bGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9z cmNwa2dzL2tkZXZlbG9wL3RlbXBsYXRlIGIvc3JjcGtncy9rZGV2ZWxvcC90ZW1wbGF0ZQppbmRl eCA2NGRkMDM2ZTQ1Ni4uMTk4Y2Q1NDZmYjEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mva2RldmVsb3Av dGVtcGxhdGUKKysrIGIvc3JjcGtncy9rZGV2ZWxvcC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2tkZXZlbG9wJwogcGtnbmFtZT1rZGV2ZWxvcAogdmVyc2lv bj01LjUuMAotcmV2aXNpb249MgorcmV2aXNpb249MwogYnVpbGRfc3R5bGU9Y21ha2UKIGhvc3Rt YWtlZGVwZW5kcz0iZXh0cmEtY21ha2UtbW9kdWxlcyBxdDUtcW1ha2UgcXQ1LWhvc3QtdG9vbHMg cXQ1LXRvb2xzCiAga2NtdXRpbHMga2NvcmVhZGRvbnMga2RldmVsb3AtcGctcXQgcGxhc21hLWZy YW1ld29yayBnZXR0ZXh0IGxsdm0gdGFyIHdoaWNoIgoKRnJvbSBlNWM5MTA2ZTQ0YjMyZjFkNTJk OTBkNmE0MzMwNWY1NjBjZjRjMDE2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBSZW5h dG8gQWd1aWFyIDxyZW5hdG9AcmVuYXRvYWd1aWFyLm5ldD4KRGF0ZTogVGh1LCA3IE1heSAyMDIw IDIzOjQzOjMyIC0wNzAwClN1YmplY3Q6IFtQQVRDSCAxMS8yNF0gcmRlZHVwOiBvcnBoYW4sIHJl YnVpbGQgZm9yIGxsdm0xMAoKLS0tCiBzcmNwa2dzL3JkZWR1cC90ZW1wbGF0ZSB8IDQgKystLQog MSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL3JkZWR1cC90ZW1wbGF0ZSBiL3NyY3BrZ3MvcmRlZHVwL3RlbXBsYXRlCmlu ZGV4IDE0YWJhYjZhODVhLi45NGNiNTIzZmFiMiAxMDA2NDQKLS0tIGEvc3JjcGtncy9yZGVkdXAv dGVtcGxhdGUKKysrIGIvc3JjcGtncy9yZGVkdXAvdGVtcGxhdGUKQEAgLTEsMTMgKzEsMTMgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3JkZWR1cCcKIHBrZ25hbWU9cmRlZHVwCiB2ZXJzaW9uPTMu MS4xCi1yZXZpc2lvbj0zCityZXZpc2lvbj00CiB3cmtzcmM9cmRlZHVwLXJkZWR1cC12JHt2ZXJz aW9ufQogYnVpbGRfc3R5bGU9Y2FyZ28KIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBjbGFu ZyIKIG1ha2VkZXBlbmRzPSJsaWJyZXNzbC1kZXZlbCBsaWJsem1hLWRldmVsIGxpYnNvZGl1bS1k ZXZlbCIKIHNob3J0X2Rlc2M9IkRhdGEgZGVkdXBsaWNhdGlvbiBlbmdpbmUiCi1tYWludGFpbmVy PSJSZW5hdG8gQWd1aWFyIDxyZW5hdG9AcmVuYWcubWU+IgorbWFpbnRhaW5lcj0iT3JwaGFuZWQg PG9ycGhhbkB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9Ik1QTC0yLjAiCiBob21lcGFnZT0iaHR0 cHM6Ly9naXRodWIuY29tL2RwYy9yZGVkdXAiCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNv bS9kcGMvcmRlZHVwL2FyY2hpdmUvcmRlZHVwLXYke3ZlcnNpb259LnRhci5neiIKCkZyb20gMDMz Mjk4YTc2NTM2MDIzMTE0OGM3YjQwYmZkNzMyNzliNTgwNTFkZCBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogcTY2IDxkYW5pZWxAb2N0YWZvcmdlLm9yZz4KRGF0ZTogRnJpLCA4IE1heSAy MDIwIDE4OjAyOjM4ICswMjAwClN1YmplY3Q6IFtQQVRDSCAxMi8yNF0gYnBmdHJhY2U6IHVwZGF0 ZSB0byAwLjEwLjAKCi0tLQogc3JjcGtncy9icGZ0cmFjZS90ZW1wbGF0ZSB8IDQgKystLQogMSBm aWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9zcmNwa2dzL2JwZnRyYWNlL3RlbXBsYXRlIGIvc3JjcGtncy9icGZ0cmFjZS90ZW1wbGF0ZQpp bmRleCAyOGExZGIxYTEyZi4uZTgzMGUxZjBkZjMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYnBmdHJh Y2UvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9icGZ0cmFjZS90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2JwZnRyYWNlJwogcGtnbmFtZT1icGZ0cmFjZQotdmVy c2lvbj0wLjkuNAordmVyc2lvbj0wLjEwLjAKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNtYWtl CiBjb25maWd1cmVfYXJncz0iLURCVUlMRF9URVNUSU5HPU9GRiIgICMgbmVlZHMgcm9vdCB0byBy dW4KQEAgLTExLDcgKzExLDcgQEAgbWFpbnRhaW5lcj0iTGVhaCBOZXVraXJjaGVuIDxsZWFoQHZ1 eHUub3JnPiIKIGxpY2Vuc2U9IkFwYWNoZS0yLjAiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRodWIu Y29tL2lvdmlzb3IvYnBmdHJhY2UvIgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vaW92 aXNvci9icGZ0cmFjZS9hcmNoaXZlL3Yke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPTZmOTc4 ZDI3Y2I0NGY2OTc3NmY0NzdkYWRhNDIwYTcwYmIwYTM2NjEyMzE0MGYzM2JlMTkzYmE1ZTc1MmM1 YWYKK2NoZWNrc3VtPTUwZWE4MGMwZTMzN2M0YWFhMjYwOTExZTAxM2I5MmFlMDliZGQ1YTA2MmIy M2ViNzQ4MjkwNDA5YmMyODQ0ZGIKIAogcG9zdF9pbnN0YWxsKCkgewogCSMgY2xhc2hlcyB3aXRo IGJjYy10b29scyBhbnl3YXkKCkZyb20gNGJjNDBhMjgwYTBiNTJiMWEwOWQ2NzE1MWRjMjZiNGI2 OWZkNWRhMyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogcTY2IDxkYW5pZWxAb2N0YWZv cmdlLm9yZz4KRGF0ZTogRnJpLCA4IE1heSAyMDIwIDE4OjAyOjUzICswMjAwClN1YmplY3Q6IFtQ QVRDSCAxMy8yNF0gcnRhZ3M6IHJlYnVpbGQgZm9yIGxsdm0xMAoKLS0tCiBzcmNwa2dzL3J0YWdz L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0 aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ydGFncy90ZW1wbGF0ZSBiL3NyY3BrZ3MvcnRh Z3MvdGVtcGxhdGUKaW5kZXggZTE4MDZjM2Y5MjQuLmRjN2VlNWVkOWU5IDEwMDY0NAotLS0gYS9z cmNwa2dzL3J0YWdzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcnRhZ3MvdGVtcGxhdGUKQEAgLTEs NyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdydGFncycKIHBrZ25hbWU9cnRhZ3MKIHZl cnNpb249Mi4zOAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UKICMg RG9uJ3QgcnVuIHRlc3RzIGluIGRvX2luc3RhbGwsIHBsZWFzZS4KIGNvbmZpZ3VyZV9hcmdzPSIt RFNLSVBfQ1RFU1Q9VFJVRSIKCkZyb20gODY3YzhiNDNkNjI4NWEwYmQ4NWZlYzcyZGYwOWZlMzM2 MTNiNDVhOSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogcTY2IDxkYW5pZWxAb2N0YWZv cmdlLm9yZz4KRGF0ZTogRnJpLCA4IE1heSAyMDIwIDE4OjAzOjA4ICswMjAwClN1YmplY3Q6IFtQ QVRDSCAxNC8yNF0gc2hpYm9rZW4yOiByZWJ1aWxkIGZvciBsbHZtMTAKCi0tLQogc3JjcGtncy9z aGlib2tlbjIvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyks IDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3NoaWJva2VuMi90ZW1wbGF0ZSBi L3NyY3BrZ3Mvc2hpYm9rZW4yL3RlbXBsYXRlCmluZGV4IGE0Y2U1N2UwMWZlLi43YjIxNzRhYTY2 YiAxMDA2NDQKLS0tIGEvc3JjcGtncy9zaGlib2tlbjIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9z aGlib2tlbjIvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdz aGlib2tlbjInCiBwa2duYW1lPXNoaWJva2VuMgogdmVyc2lvbj01LjE0LjEKLXJldmlzaW9uPTEK K3JldmlzaW9uPTIKIF9wa2duYW1lPSJweXNpZGUtc2V0dXAtb3BlbnNvdXJjZS1zcmMtJHt2ZXJz aW9ufSIKIHdya3NyYz0iJF9wa2duYW1lIgogY29uZmlndXJlX2FyZ3M9Ii1EVVNFX1BZVEhPTl9W RVJTSU9OPTMgLURDTUFLRV9JTlNUQUxMX1BSRUZJWD0vdXNyCgpGcm9tIGJmYmM2ZDg1ZWIyMDI3 OWNmMWMzYWMyYWZiODJmYzQyZDFmZDdmZmUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IHE2NiA8ZGFuaWVsQG9jdGFmb3JnZS5vcmc+CkRhdGU6IEZyaSwgOCBNYXkgMjAyMCAxODoxMjo0 MiArMDIwMApTdWJqZWN0OiBbUEFUQ0ggMTUvMjRdIGNvZGVsaXRlOiByZWJ1aWxkIGZvciBsbHZt MTAKCi0tLQogc3JjcGtncy9jb2RlbGl0ZS90ZW1wbGF0ZSB8IDcgKysrKy0tLQogMSBmaWxlIGNo YW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNw a2dzL2NvZGVsaXRlL3RlbXBsYXRlIGIvc3JjcGtncy9jb2RlbGl0ZS90ZW1wbGF0ZQppbmRleCAw ZGI0NmEwOTFkOS4uYTJhMDlkNzlmYTEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvY29kZWxpdGUvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9jb2RlbGl0ZS90ZW1wbGF0ZQpAQCAtMSwxMiArMSwxMyBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnY29kZWxpdGUnCiBwa2duYW1lPWNvZGVsaXRlCiB2ZXJzaW9u PTEzLjAKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKK2FyY2hzPSJpNjg2KiB4ODZfNjQqIHBwYzY0 bGUqIgogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItRFdJVEhfUENIPTAKICAk KHZvcHRfaWYgc2Z0cCAtREVOQUJMRV9TRlRQPTEpCiAgJCh2b3B0X2lmIGxsZGIgLURFTkFCTEVf TExEQj0xKSIKLWhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBjbGFuZyIKK2hvc3RtYWtlZGVw ZW5kcz0icGtnLWNvbmZpZyBjbGFuZyB3aGljaCIKIG1ha2VkZXBlbmRzPSJndGsrMy1kZXZlbCB3 eFdpZGdldHMtZ3RrMy1kZXZlbCBzcWxpdGUtZGV2ZWwKICAkKHZvcHRfaWYgbGxkYiBsbGRiLWRl dmVsKSAkKHZvcHRfaWYgaHVuc3BlbGwgaHVuc3BlbGwtZGV2ZWwpCiAgJCh2b3B0X2lmIG15c3Fs IGxpYm1hcmlhZGJjbGllbnQtZGV2ZWwpICQodm9wdF9pZiBzZnRwIGxpYnNzaC1kZXZlbCkiCkBA IC0xNiw5ICsxNyw5IEBAIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0 cDovL3d3dy5jb2RlbGl0ZS5vcmciCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9lcmFu aWYvJHtwa2duYW1lfS9hcmNoaXZlLyR7dmVyc2lvbn0udGFyLmd6IgogY2hlY2tzdW09ZjI2NTNm YTQyZDYyMTQ5OTk3MTgyMzY5OThjYjIyM2U2ZGUwMGE0OThjMGNmZGU3OTVlOTAxYmU2OTNmYjlh Yworbm9jcm9zcz15ZXMKIHB5dGhvbl92ZXJzaW9uPTIgI3VudmVyaWZpZWQKIAotYXJjaHM9Imk2 ODYqIHg4Nl82NCogcHBjNjRsZSoiCiBidWlsZF9vcHRpb25zPSJodW5zcGVsbCBsbGRiIG15c3Fs IHNmdHAiCiBidWlsZF9vcHRpb25zX2RlZmF1bHQ9Imh1bnNwZWxsIGxsZGIgc2Z0cCIKIGRlc2Nf b3B0aW9uX2h1bnNwZWxsPSJFbmFibGUgU3BlbGxDaGVjayBwbHVnaW4iCgpGcm9tIDVhYmY3NGIy NTFhM2IyZjcyNTA3MDFlN2UzNmU4NDMyNjM2ZGU4MTAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CkZyb206IHE2NiA8ZGFuaWVsQG9jdGFmb3JnZS5vcmc+CkRhdGU6IEZyaSwgOCBNYXkgMjAyMCAx OTo0Njo1OSArMDIwMApTdWJqZWN0OiBbUEFUQ0ggMTYvMjRdIGNjbHM6IHVwZGF0ZSB0byAwLjIw MTkwODIzLjYKCi0tLQogc3JjcGtncy9iY2MvdGVtcGxhdGUgIHwgMiArLQogc3JjcGtncy9jY2xz L3RlbXBsYXRlIHwgNCArKy0tCiAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2JjYy90ZW1wbGF0ZSBiL3NyY3BrZ3Mv YmNjL3RlbXBsYXRlCmluZGV4IGM5YTFjYWFkZmMzLi43OWFlY2ZhNDNmOCAxMDA2NDQKLS0tIGEv c3JjcGtncy9iY2MvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9iY2MvdGVtcGxhdGUKQEAgLTEsNyAr MSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdiY2MnCiBwa2duYW1lPWJjYwogdmVyc2lvbj0w LjEzLjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIHdya3NyYz0iYmNjIgogYnVpbGRfc3R5bGU9 Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItRFJFVklTSU9OPSR7dmVyc2lvbn0iCmRpZmYgLS1naXQg YS9zcmNwa2dzL2NjbHMvdGVtcGxhdGUgYi9zcmNwa2dzL2NjbHMvdGVtcGxhdGUKaW5kZXggYzRi Y2FiZmJjNjUuLmJlYmZhMGY0YzYxIDEwMDY0NAotLS0gYS9zcmNwa2dzL2NjbHMvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9jY2xzL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnY2NscycKIHBrZ25hbWU9Y2NscwotdmVyc2lvbj0wLjIwMTkwODIzLjUKK3ZlcnNp b249MC4yMDE5MDgyMy42CiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1jbWFrZQogaG9zdG1ha2Vk ZXBlbmRzPSJjbGFuZy10b29scy1leHRyYSIKQEAgLTEwLDcgKzEwLDcgQEAgbWFpbnRhaW5lcj0i TmF0aGFuIE93ZW5zIDxuZG93ZW5zMDRAZ21haWwuY29tPiIKIGxpY2Vuc2U9IkFwYWNoZS0yLjAi CiBob21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL01hc2tSYXkvY2NscyIKIGRpc3RmaWxlcz0i aHR0cHM6Ly9naXRodWIuY29tL01hc2tSYXkvY2Nscy9hcmNoaXZlLyR7dmVyc2lvbn0udGFyLmd6 IgotY2hlY2tzdW09NmYzOWZhNWNlNzljMTY4Mjk3MzgxMWNlMjQwOTcxODcxMGJmZWY2MDA4Zjk0 Zjk2Mjc3MzkzZTY4NDZiZDc2YworY2hlY2tzdW09ODNkZDQ1MTIwZTk2NzQzMTlmOTFlNDM3OTAx MzgzMWUxMjRjMDg1OGUwNTBiYmMzNTIxZTNmOGFlYmU1Yzk1Ygogbm9jcm9zcz0iQ2xhbmcgY2Fu bm90IGJlIGluc3RhbGxlZCBhcyBtYWtlZGVwIgogCiBpZiBbICIkWEJQU19UQVJHRVRfTk9fQVRP TUlDOCIgXTsgdGhlbgoKRnJvbSBiYTU0MDYwOTYzYzcyYTA3MDZmOWQ1NjAyY2Y1NGIwMzAxM2Qz ZDM1IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBxNjYgPGRhbmllbEBvY3RhZm9yZ2Uu b3JnPgpEYXRlOiBGcmksIDggTWF5IDIwMjAgMTk6NTM6MzUgKzAyMDAKU3ViamVjdDogW1BBVENI IDE3LzI0XSBjbGF6eTogcmVidWlsZCBhZ2FpbnN0IGxsdm0xMAoKLS0tCiBzcmNwa2dzL2NsYXp5 L3BhdGNoZXMvbGx2bTEwLnBhdGNoIHwgNzIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr CiBzcmNwa2dzL2NsYXp5L3RlbXBsYXRlICAgICAgICAgICAgIHwgIDIgKy0KIDIgZmlsZXMgY2hh bmdlZCwgNzMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0 IHNyY3BrZ3MvY2xhenkvcGF0Y2hlcy9sbHZtMTAucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dz L2NsYXp5L3BhdGNoZXMvbGx2bTEwLnBhdGNoIGIvc3JjcGtncy9jbGF6eS9wYXRjaGVzL2xsdm0x MC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uMjg5ZGVhYWJi ZTQKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2NsYXp5L3BhdGNoZXMvbGx2bTEwLnBhdGNo CkBAIC0wLDAgKzEsNzIgQEAKK0Zyb20gZGY0MWJkMjk0MzM5MzcxMTFlZGNhMzY1NGE3YmViMTFl Yzc2NTAyOSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IEpvaGFubmVzIFppZWdlbmJh bGcgPEpvaGFubmVzLlppZWdlbmJhbGdAdHUtZHJlc2Rlbi5kZT4KK0RhdGU6IEZyaSwgMjcgTWFy IDIwMjAgMTQ6MTg6MzIgKzAxMDAKK1N1YmplY3Q6IFtQQVRDSF0gRml4IGJ1aWxkIGlzc3VlcyB1 c2luZyBsbHZtIDEwLjAuMAorCistLS0KKyBDTWFrZUxpc3RzLnR4dCAgICAgICAgICAgICAgICAg ICAgfCAgMiArLQorIHNyYy9DbGF6eVN0YW5kYWxvbmVNYWluLmNwcCAgICAgICB8IDEwICsrKysr KysrKysKKyBzcmMvY2hlY2tzL2xldmVsMC9xc3RyaW5nLXJlZi5jcHAgfCAgNCArKysrCisgMyBm aWxlcyBjaGFuZ2VkLCAxNSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCisKK2RpZmYgLS1n aXQgYS9DTWFrZUxpc3RzLnR4dCBiL0NNYWtlTGlzdHMudHh0CitpbmRleCBmMTQ2M2NmZS4uYTMw ODEzZjggMTAwNjQ0CistLS0gQ01ha2VMaXN0cy50eHQKKysrKyBDTWFrZUxpc3RzLnR4dAorQEAg LTUzLDcgKzUzLDcgQEAgaWYoTVNWQykKKyAgICMgZGlzYWJsZSB0cmlnZ2VyLWhhcHB5IHdhcm5p bmdzIGZyb20gQ2xhbmcvTExWTSBoZWFkZXJzCisgICBzZXQoQ01BS0VfQ1hYX0ZMQUdTICIke0NN QUtFX0NYWF9GTEFHU30gL3dkNDI2NyAvd2Q0MjQ0IC93ZDQyOTEgL3dkNDgwMCAvd2Q0MTQxIC93 ZDQxNDYgL3dkNDI1MSIpCisgZWxzZWlmKENNQUtFX0NPTVBJTEVSX0lTX0dOVUNYWCBPUiBDTUFL RV9DWFhfQ09NUElMRVJfSUQgTUFUQ0hFUyAiQ2xhbmciKQorLSAgc2V0KENNQUtFX0NYWF9GTEFH UyAiJHtDTUFLRV9DWFhfRkxBR1N9IC1zdGQ9YysrMTEgLWZuby1jb21tb24gLVdvdmVybG9hZGVk LXZpcnR1YWwgLVdjYXN0LXF1YWwgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXBlZGFudGljIC1Xbm8t bG9uZy1sb25nIC1XYWxsIC1XIC1Xbm8tdW51c2VkLXBhcmFtZXRlciAtV3dyaXRlLXN0cmluZ3Mg LWZuby1leGNlcHRpb25zIC1mbm8tcnR0aSIpCisrICBzZXQoQ01BS0VfQ1hYX0ZMQUdTICIke0NN QUtFX0NYWF9GTEFHU30gLXN0ZD1jKysxNCAtZm5vLWNvbW1vbiAtV292ZXJsb2FkZWQtdmlydHVh bCAtV2Nhc3QtcXVhbCAtZm5vLXN0cmljdC1hbGlhc2luZyAtcGVkYW50aWMgLVduby1sb25nLWxv bmcgLVdhbGwgLVcgLVduby11bnVzZWQtcGFyYW1ldGVyIC1Xd3JpdGUtc3RyaW5ncyAtZm5vLWV4 Y2VwdGlvbnMgLWZuby1ydHRpIikKKyBlbmRpZigpCisgCisgc2V0KENNQUtFX01PRFVMRV9MSU5L RVJfRkxBR1MgIiR7Q01BS0VfTU9EVUxFX0xJTktFUl9GTEFHU30gLVdsLC1mbGF0X25hbWVzcGFj ZSAtV2wsLXVuZGVmaW5lZCAtV2wsc3VwcHJlc3MiKQorZGlmZiAtLWdpdCBhL3NyYy9DbGF6eVN0 YW5kYWxvbmVNYWluLmNwcCBiL3NyYy9DbGF6eVN0YW5kYWxvbmVNYWluLmNwcAoraW5kZXggYWFk YTE4OTUuLjZiYWFlMzI5IDEwMDY0NAorLS0tIHNyYy9DbGF6eVN0YW5kYWxvbmVNYWluLmNwcAor KysrIHNyYy9DbGF6eVN0YW5kYWxvbmVNYWluLmNwcAorQEAgLTkzLDcgKzkzLDExIEBAIGNsYXNz IENsYXp5VG9vbEFjdGlvbkZhY3RvcnkKKyAgICAgeworICAgICB9CisgCisrI2lmIExMVk1fVkVS U0lPTl9NQUpPUiA+PSAxMAorKyAgICBzdGQ6OnVuaXF1ZV9wdHI8RnJvbnRlbmRBY3Rpb24+IGNy ZWF0ZSgpIG92ZXJyaWRlCisrI2Vsc2UKKyAgICAgRnJvbnRlbmRBY3Rpb24gKmNyZWF0ZSgpIG92 ZXJyaWRlCisrI2VuZGlmCisgICAgIHsKKyAgICAgICAgIENsYXp5Q29udGV4dDo6Q2xhenlPcHRp b25zIG9wdGlvbnMgPSBDbGF6eUNvbnRleHQ6OkNsYXp5T3B0aW9uX05vbmU7CisgCitAQCAtMTE2 LDkgKzEyMCwxNSBAQCBjbGFzcyBDbGF6eVRvb2xBY3Rpb25GYWN0b3J5CisgICAgICAgICAgICAg b3B0aW9ucyB8PSBDbGF6eUNvbnRleHQ6OkNsYXp5T3B0aW9uX0lnbm9yZUluY2x1ZGVkRmlsZXM7 CisgCisgICAgICAgICAvLyBUT0RPOiBXZSBuZWVkIHRvIGFncmVnYXRlIHRoZSBmaXhlcyB3aXRo IHByZXZpb3VzIHJ1bgorKyNpZiBMTFZNX1ZFUlNJT05fTUFKT1IgPj0gMTAKKysgICAgICAgIHJl dHVybiBzdGQ6Om1ha2VfdW5pcXVlPENsYXp5U3RhbmRhbG9uZUFTVEFjdGlvbj4oc19jaGVja3Mu Z2V0VmFsdWUoKSwgc19oZWFkZXJGaWx0ZXIuZ2V0VmFsdWUoKSwKKysgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc19pZ25vcmVEaXJzLmdl dFZhbHVlKCksIHNfZXhwb3J0Rml4ZXMuZ2V0VmFsdWUoKSwKKysgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbV9wYXRocywgb3B0aW9ucyk7 CisrI2Vsc2UKKyAgICAgICAgIHJldHVybiBuZXcgQ2xhenlTdGFuZGFsb25lQVNUQWN0aW9uKHNf Y2hlY2tzLmdldFZhbHVlKCksIHNfaGVhZGVyRmlsdGVyLmdldFZhbHVlKCksCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzX2lnbm9yZURpcnMuZ2V0VmFsdWUo KSwgc19leHBvcnRGaXhlcy5nZXRWYWx1ZSgpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgbV9wYXRocywgb3B0aW9ucyk7CisrI2VuZGlmCisgICAgIH0KKyAg ICAgc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+IG1fcGF0aHM7CisgfTsKK2RpZmYgLS1naXQgYS9z cmMvY2hlY2tzL2xldmVsMC9xc3RyaW5nLXJlZi5jcHAgYi9zcmMvY2hlY2tzL2xldmVsMC9xc3Ry aW5nLXJlZi5jcHAKK2luZGV4IGQxZDhhNGVhLi5lYzllODkwMSAxMDA2NDQKKy0tLSBzcmMvY2hl Y2tzL2xldmVsMC9xc3RyaW5nLXJlZi5jcHAKKysrKyBzcmMvY2hlY2tzL2xldmVsMC9xc3RyaW5n LXJlZi5jcHAKK0BAIC0xMTcsNyArMTE3LDExIEBAIHN0YXRpYyBib29sIGNvbnRhaW5zQ2hpbGQo U3RtdCAqcywgU3RtdCAqdGFyZ2V0KQorICAgICAgICAgcmV0dXJuIHRydWU7CisgCisgICAgIGlm IChhdXRvIG10ZSA9IGR5bl9jYXN0PE1hdGVyaWFsaXplVGVtcG9yYXJ5RXhwcj4ocykpIHsKKysj aWYgTExWTV9WRVJTSU9OX01BSk9SID49IDEwCisrICAgICAgICByZXR1cm4gY29udGFpbnNDaGls ZChtdGUtPmdldFN1YkV4cHIoKSwgdGFyZ2V0KTsKKysjZWxzZQorICAgICAgICAgcmV0dXJuIGNv bnRhaW5zQ2hpbGQobXRlLT5nZXRUZW1wb3JhcnkoKSwgdGFyZ2V0KTsKKysjZW5kaWYKKyAgICAg fSBlbHNlIGlmIChhdXRvIGljZSA9IGR5bl9jYXN0PEltcGxpY2l0Q2FzdEV4cHI+KHMpKSB7Cisg ICAgICAgICByZXR1cm4gY29udGFpbnNDaGlsZChpY2UtPmdldFN1YkV4cHIoKSwgdGFyZ2V0KTsK KyAgICAgfSBlbHNlIGlmIChhdXRvIGJ0ZSA9IGR5bl9jYXN0PENYWEJpbmRUZW1wb3JhcnlFeHBy PihzKSkgewpkaWZmIC0tZ2l0IGEvc3JjcGtncy9jbGF6eS90ZW1wbGF0ZSBiL3NyY3BrZ3MvY2xh enkvdGVtcGxhdGUKaW5kZXggZjdmNzkwMzk1ZTYuLmQ5ODQ2ZDViNDFlIDEwMDY0NAotLS0gYS9z cmNwa2dzL2NsYXp5L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvY2xhenkvdGVtcGxhdGUKQEAgLTEs NyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdjbGF6eScKIHBrZ25hbWU9Y2xhenkKIHZl cnNpb249MS42Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1jbWFrZQogaG9z dG1ha2VkZXBlbmRzPSJweXRob24iCiBtYWtlZGVwZW5kcz0iY2xhbmcgbGx2bSIKCkZyb20gNjcx ODIzMzhhMDM2ZGRmNWVmZjQ3ZjM1ZDQxNTM2MjBlMDIwNjc2YiBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogcTY2IDxkYW5pZWxAb2N0YWZvcmdlLm9yZz4KRGF0ZTogRnJpLCA4IE1heSAy MDIwIDIwOjA1OjIyICswMjAwClN1YmplY3Q6IFtQQVRDSCAxOC8yNF0gbGx2bS1saWJ1bndpbmQ6 IHVwZGF0ZSB0byAxMC4wLjAKCi0tLQogc3JjcGtncy9sbHZtLWxpYnVud2luZC90ZW1wbGF0ZSB8 IDEwICsrKysrLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9sbHZtLWxpYnVud2luZC90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvbGx2bS1saWJ1bndpbmQvdGVtcGxhdGUKaW5kZXggYzVkZDJkYTY3MWUuLjZlMjBhNzkx ZTY1IDEwMDY0NAotLS0gYS9zcmNwa2dzL2xsdm0tbGlidW53aW5kL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3MvbGx2bS1saWJ1bndpbmQvdGVtcGxhdGUKQEAgLTEsMTggKzEsMTggQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ2xsdm0tbGlidW53aW5kJwogcGtnbmFtZT1sbHZtLWxpYnVud2luZAotdmVy c2lvbj05LjAuMAordmVyc2lvbj0xMC4wLjAKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNtYWtl CiB3cmtzcmM9ImxpYnVud2luZC0ke3ZlcnNpb259LnNyYyIKLWhvc3RtYWtlZGVwZW5kcz0ibGx2 bTkiCi1tYWtlZGVwZW5kcz0ibGx2bTkiCitob3N0bWFrZWRlcGVuZHM9Imxsdm0xMCIKK21ha2Vk ZXBlbmRzPSJsbHZtMTAiCiBtYWtlX2J1aWxkX2FyZ3M9IlZFUkJPU0U9MSIKIHNob3J0X2Rlc2M9 IkxMVk0gdmVyc2lvbiBvZiBsaWJ1bndpbmQgbGlicmFyeSIKIG1haW50YWluZXI9Ik9ycGhhbmVk IDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJOQ1NBLCBNSVQiCiBob21lcGFnZT0i aHR0cHM6Ly9sbHZtLm9yZyIKLWRpc3RmaWxlcz0iaHR0cHM6Ly93d3cubGx2bS5vcmcvcmVsZWFz ZXMvJHt2ZXJzaW9ufS9saWJ1bndpbmQtJHt2ZXJzaW9ufS5zcmMudGFyLnh6IgotY2hlY2tzdW09 OTc2YThkMDllMTQyNGZiODQzMjEwZWVjZWMwMGE1MDZiOTU2ZTZjMzFhZGRhM2IwZDE5OWU5NDVi ZTBkMGRiMgorZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vbGx2bS9sbHZtLXByb2plY3Qv cmVsZWFzZXMvZG93bmxvYWQvbGx2bW9yZy0ke3ZlcnNpb259L2xpYnVud2luZC0ke3ZlcnNpb259 LnNyYy50YXIueHoiCitjaGVja3N1bT0wOWRjNWVjYzQ3MTQ4MDllY2Y2MjkwOGFlOGZlODYzNWFi NDc2ODgwNDU1Mjg3MDM2YTI3MzA5NjY4MzNjNjI2CiAKIHBvc3RfaW5zdGFsbCgpIHsKIAl2bWtk aXIgdXNyL2luY2x1ZGUKCkZyb20gZmE3NTU1ZTMzZjJjNDQ3YWQ3YWM2NTJhNDVhMjQ4MjVmZWVj ZWEyNiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogcTY2IDxkYW5pZWxAb2N0YWZvcmdl Lm9yZz4KRGF0ZTogRnJpLCA4IE1heSAyMDIwIDIwOjExOjQyICswMjAwClN1YmplY3Q6IFtQQVRD SCAxOS8yNF0gbGliY3h4YWJpOiB1cGRhdGUgdG8gMTAuMC4wCgotLS0KIHNyY3BrZ3MvbGliY3h4 YWJpL3RlbXBsYXRlIHwgMTQgKysrKysrKy0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA3IGluc2Vy dGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJjeHhhYmkv dGVtcGxhdGUgYi9zcmNwa2dzL2xpYmN4eGFiaS90ZW1wbGF0ZQppbmRleCAwM2I5NDI0ZGVlZS4u OTc5OTJhNzlmZjggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbGliY3h4YWJpL3RlbXBsYXRlCisrKyBi L3NyY3BrZ3MvbGliY3h4YWJpL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnbGliY3h4YWJpJwogcGtnbmFtZT1saWJjeHhhYmkKLXZlcnNpb249OS4wLjAKK3Zl cnNpb249MTAuMC4wCiByZXZpc2lvbj0xCiB3cmtzcmM9IiR7cGtnbmFtZX0tJHt2ZXJzaW9ufS5z cmMiCiBidWlsZF9zdHlsZT1jbWFrZQpAQCAtOCwxNiArOCwxNiBAQCBjb25maWd1cmVfYXJncz0i LURMSUJDWFhBQklfTElCQ1hYX0lOQ0xVREVTPS4uL2xpYmN4eC9pbmNsdWRlCiAgLURMSUJDWFhB QklfVVNFX0xMVk1fVU5XSU5ERVI9MQogIC1ETExWTV9ERUZBVUxUX1RBUkdFVF9UUklQTEU9JHtY QlBTX0NST1NTX1RSSVBMRVQ6LSRYQlBTX1RSSVBMRVR9IgogbWFrZV9idWlsZF9hcmdzPSJWRVJC T1NFPTEiCi1ob3N0bWFrZWRlcGVuZHM9Imxsdm05IgotbWFrZWRlcGVuZHM9Imxsdm05IGxsdm0t bGlidW53aW5kLWRldmVsIgoraG9zdG1ha2VkZXBlbmRzPSJsbHZtMTAiCittYWtlZGVwZW5kcz0i bGx2bTEwIGxsdm0tbGlidW53aW5kLWRldmVsIgogc2hvcnRfZGVzYz0iTG93LWxldmVsIHN1cHBv cnQgZm9yIGxpYmMrKyBzdGFuZGFyZCBsaWJyYXJ5IgogbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9y cGhhbkB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9Ik5DU0EsIE1JVCIKIGhvbWVwYWdlPSJodHRw czovL2xpYmN4eGFiaS5sbHZtLm9yZyIKLWRpc3RmaWxlcz0iaHR0cHM6Ly93d3cubGx2bS5vcmcv cmVsZWFzZXMvJHt2ZXJzaW9ufS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0uc3JjLnRhci54egotIGh0 dHBzOi8vd3d3Lmxsdm0ub3JnL3JlbGVhc2VzLyR7dmVyc2lvbn0vbGliY3h4LSR7dmVyc2lvbn0u c3JjLnRhci54eiIKLWNoZWNrc3VtPSI2NzUwNDE3ODM1NjVjOTA2YWMyZjdmOGIyYmM1YzQwZjE0 ZDg3MWVjZmE4YWRlMzQ4NTVhYTE4ZGU5NTUzMGU5Ci0gM2M0MTYyOTcyYjVkMzIwNGJhNDdhYzM4 NGFhNDU2ODU1YTE3YjVlOTc0MjI3MjNkNDc1ODI1MWFjZjFlZDI4YyIKK2Rpc3RmaWxlcz0iaHR0 cHM6Ly9naXRodWIuY29tL2xsdm0vbGx2bS1wcm9qZWN0L3JlbGVhc2VzL2Rvd25sb2FkL2xsdm1v cmctJHt2ZXJzaW9ufS9saWJjeHhhYmktJHt2ZXJzaW9ufS5zcmMudGFyLnh6CisgaHR0cHM6Ly9n aXRodWIuY29tL2xsdm0vbGx2bS1wcm9qZWN0L3JlbGVhc2VzL2Rvd25sb2FkL2xsdm1vcmctJHt2 ZXJzaW9ufS9saWJjeHgtJHt2ZXJzaW9ufS5zcmMudGFyLnh6IgorY2hlY2tzdW09ImU3MWJhYzc1 YTg4YzlkZGU0NTVhZDNmMmEyYjQ0OWJmNzQ1ZWFmZDQxZDJkODQzMjI1M2IyOTY0ZTBjYTE0ZTEK KyAyNzBmOGEzZjE3NmYxOTgxYjBmNmFiOGFhNTU2NzIwOTg4ODcyZWMyYjQ4ZWQzYjYwNWQwY2Vk OGQwOTE1NmM3IgogCiBjYXNlICIkWEJQU19UQVJHRVRfTUFDSElORSIgaW4KIAlhcm12WzY3XWwp CgpGcm9tIDA5YThmZDkwMWZkNTE5MDQxMmUzMTZhMzVkZDc0ODZkZTc2OGM2ZGQgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IHE2NiA8ZGFuaWVsQG9jdGFmb3JnZS5vcmc+CkRhdGU6IEZy aSwgOCBNYXkgMjAyMCAyMDoxMTo1MCArMDIwMApTdWJqZWN0OiBbUEFUQ0ggMjAvMjRdIGxpYmN4 eDogdXBkYXRlIHRvIDEwLjAuMAoKLS0tCiBzcmNwa2dzL2xpYmN4eC90ZW1wbGF0ZSB8IDggKysr Ky0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9saWJjeHgvdGVtcGxhdGUgYi9zcmNwa2dzL2xpYmN4eC90ZW1w bGF0ZQppbmRleCA1OGFmNTNlMTQ5ZS4uYjMyZTU2ZGZjZGYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mv bGliY3h4L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbGliY3h4L3RlbXBsYXRlCkBAIC0xLDIxICsx LDIxIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdsaWJjeHgnCiBwa2duYW1lPWxpYmN4eAotdmVy c2lvbj05LjAuMAordmVyc2lvbj0xMC4wLjAKIHJldmlzaW9uPTEKIHdya3NyYz0iJHtwa2duYW1l fS0ke3ZlcnNpb259LnNyYyIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncys9IiAt RExJQkNYWF9DWFhfQUJJPWxpYmN4eGFiaSAtRExJQkNYWF9FTkFCTEVfU1RBVElDX0FCSV9MSUJS QVJZPU9OCiAgLURMSUJDWFhfQ1hYX0FCSV9MSUJSQVJZX1BBVEg9JHtYQlBTX0NST1NTX0JBU0V9 L3Vzci9saWIKICAtRExJQkNYWEFCSV9VU0VfTExWTV9VTldJTkRFUj0xIgotaG9zdG1ha2VkZXBl bmRzPSJsbHZtOSBweXRob24zIgoraG9zdG1ha2VkZXBlbmRzPSJsbHZtMTAgcHl0aG9uMyIKIG1h a2VkZXBlbmRzPSJsaWJjeHhhYmktZGV2ZWwgbGx2bSBsbHZtLWxpYnVud2luZC1kZXZlbCIKIG1h a2VfYnVpbGRfYXJncz0iVkVSQk9TRT0xIgogc2hvcnRfZGVzYz0iTmV3IGltcGxlbWVudGF0aW9u IG9mIHRoZSBDKysgc3RhbmRhcmQgbGlicmFyeSwgdGFyZ2V0aW5nIEMrKzExLCBDKysxNCBhbmQg YWJvdmUiCiBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+IgogbGlj ZW5zZT0iTkNTQSwgTUlUIgogaG9tZXBhZ2U9Imh0dHBzOi8vbGliY3h4Lmxsdm0ub3JnIgotZGlz dGZpbGVzPSJodHRwczovL3d3dy5sbHZtLm9yZy9yZWxlYXNlcy8ke3ZlcnNpb259LyR7cGtnbmFt ZX0tJHt2ZXJzaW9ufS5zcmMudGFyLnh6IgotY2hlY2tzdW09M2M0MTYyOTcyYjVkMzIwNGJhNDdh YzM4NGFhNDU2ODU1YTE3YjVlOTc0MjI3MjNkNDc1ODI1MWFjZjFlZDI4YworZGlzdGZpbGVzPSJo dHRwczovL2dpdGh1Yi5jb20vbGx2bS9sbHZtLXByb2plY3QvcmVsZWFzZXMvZG93bmxvYWQvbGx2 bW9yZy0ke3ZlcnNpb259L2xpYmN4eC0ke3ZlcnNpb259LnNyYy50YXIueHoiCitjaGVja3N1bT0y NzBmOGEzZjE3NmYxOTgxYjBmNmFiOGFhNTU2NzIwOTg4ODcyZWMyYjQ4ZWQzYjYwNWQwY2VkOGQw OTE1NmM3CiAKIGNhc2UgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiBpbgogCSotbXVzbCkgY29uZmln dXJlX2FyZ3MrPSIgLURMSUJDWFhfSEFTX01VU0xfTElCQz1ZRVMiCgpGcm9tIGNlNDhmOGY2NjUz MjJmYzM2ZjQ5MmQzZDQ1YjFlZmRiY2ExNDc2OTkgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZy b206IHE2NiA8ZGFuaWVsQG9jdGFmb3JnZS5vcmc+CkRhdGU6IEZyaSwgOCBNYXkgMjAyMCAyMDoz MToyMCArMDIwMApTdWJqZWN0OiBbUEFUQ0ggMjEvMjRdIGluY2x1ZGUtd2hhdC15b3UtdXNlOiBy ZWJ1aWxkIGZvciBsbHZtMTAKCi0tLQogLi4uL2luY2x1ZGUtd2hhdC15b3UtdXNlL3BhdGNoZXMv bGx2bTEwLnBhdGNoIHwgNjEgKysrKysrKysrKysrKysrKysrKwogc3JjcGtncy9pbmNsdWRlLXdo YXQteW91LXVzZS90ZW1wbGF0ZSAgICAgICAgIHwgIDIgKy0KIDIgZmlsZXMgY2hhbmdlZCwgNjIg aW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mv aW5jbHVkZS13aGF0LXlvdS11c2UvcGF0Y2hlcy9sbHZtMTAucGF0Y2gKCmRpZmYgLS1naXQgYS9z cmNwa2dzL2luY2x1ZGUtd2hhdC15b3UtdXNlL3BhdGNoZXMvbGx2bTEwLnBhdGNoIGIvc3JjcGtn cy9pbmNsdWRlLXdoYXQteW91LXVzZS9wYXRjaGVzL2xsdm0xMC5wYXRjaApuZXcgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uYzZlMGE1YzFiMzkKLS0tIC9kZXYvbnVsbAorKysg Yi9zcmNwa2dzL2luY2x1ZGUtd2hhdC15b3UtdXNlL3BhdGNoZXMvbGx2bTEwLnBhdGNoCkBAIC0w LDAgKzEsNjEgQEAKKy0tLSBpd3l1X2RyaXZlci5jYworKysrIGl3eXVfZHJpdmVyLmNjCitAQCAt MjA1LDExICsyMDUsOCBAQCBDb21waWxlckluc3RhbmNlKiBDcmVhdGVDb21waWxlckluc3RhbmNl KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndikgeworIAorICAgLy8gSW5pdGlhbGl6ZSBhIGNv bXBpbGVyIGludm9jYXRpb24gb2JqZWN0IGZyb20gdGhlIGNsYW5nICgtY2MxKSBhcmd1bWVudHMu CisgICBjb25zdCBBcmdTdHJpbmdMaXN0ICZjY19hcmd1bWVudHMgPSBjb21tYW5kLmdldEFyZ3Vt ZW50cygpOworLSAgY29uc3QgY2hhcioqIGFyZ3Nfc3RhcnQgPSBjb25zdF9jYXN0PGNvbnN0IGNo YXIqKj4oY2NfYXJndW1lbnRzLmRhdGEoKSk7CistICBjb25zdCBjaGFyKiogYXJnc19lbmQgPSBh cmdzX3N0YXJ0ICsgY2NfYXJndW1lbnRzLnNpemUoKTsKKyAgIHN0ZDo6c2hhcmVkX3B0cjxDb21w aWxlckludm9jYXRpb24+IGludm9jYXRpb24obmV3IENvbXBpbGVySW52b2NhdGlvbik7CistICBD b21waWxlckludm9jYXRpb246OkNyZWF0ZUZyb21BcmdzKCppbnZvY2F0aW9uLAorLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdzX3N0YXJ0LCBhcmdzX2VuZCwgZGlhZ25v c3RpY3MpOworKyAgQ29tcGlsZXJJbnZvY2F0aW9uOjpDcmVhdGVGcm9tQXJncygqaW52b2NhdGlv biwgY2NfYXJndW1lbnRzLCBkaWFnbm9zdGljcyk7CisgICBpbnZvY2F0aW9uLT5nZXRGcm9udGVu ZE9wdHMoKS5EaXNhYmxlRnJlZSA9IGZhbHNlOworIAorICAgLy8gVXNlIGxpYmMrKyBoZWFkZXJz IGJ1bmRsZWQgd2l0aCBYY29kZS5hcHAgb24gbWFjT1MuCistLS0gaXd5dV9wcmVwcm9jZXNzb3Iu Y2MKKysrKyBpd3l1X3ByZXByb2Nlc3Nvci5jYworQEAgLTM0LDYgKzM0LDcgQEAKKyAjaW5jbHVk ZSAiY2xhbmcvTGV4L01hY3JvSW5mby5oIgorIAorIHVzaW5nIGNsYW5nOjpGaWxlRW50cnk7Cisr dXNpbmcgY2xhbmc6OkZpbGVFbnRyeVJlZjsKKyB1c2luZyBjbGFuZzo6RmlsZUlEOworIHVzaW5n IGNsYW5nOjpNYWNyb0RlZmluaXRpb247CisgdXNpbmcgY2xhbmc6Ok1hY3JvRGlyZWN0aXZlOwor QEAgLTY5NCw3ICs2OTUsNyBAQCB2b2lkIEl3eXVQcmVwcm9jZXNzb3JJbmZvOjpGaWxlQ2hhbmdl ZChTb3VyY2VMb2NhdGlvbiBsb2MsCisgLy8gQ2FsbGVkIHdoZW4gd2Ugc2VlIGFuICNpbmNsdWRl LCBidXQgZGVjaWRlIHdlIGRvbid0IG5lZWQgdG8KKyAvLyBhY3R1YWxseSByZWFkIGl0IGJlY2F1 c2UgaXQncyBhbHJlYWR5IGJlZW4gI2luY2x1ZGVkIChhbmQgaXMKKyAvLyBwcm90ZWN0ZWQgYnkg YSBoZWFkZXIgZ3VhcmQpLgorLXZvaWQgSXd5dVByZXByb2Nlc3NvckluZm86OkZpbGVTa2lwcGVk KGNvbnN0IEZpbGVFbnRyeSYgZmlsZSwKKyt2b2lkIEl3eXVQcmVwcm9jZXNzb3JJbmZvOjpGaWxl U2tpcHBlZChjb25zdCBGaWxlRW50cnlSZWYmIGZpbGUsCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgY29uc3QgVG9rZW4gJmZpbGVuYW1lLAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFNyY01ncjo6Q2hhcmFjdGVyaXN0aWNLaW5kIGZpbGVf dHlwZSkgeworICAgQ0hFQ0tfKGluY2x1ZGVfZmlsZW5hbWVfbG9jXy5pc1ZhbGlkKCkgJiYKK0BA IC03MDUsMTEgKzcwNiwxMSBAQCB2b2lkIEl3eXVQcmVwcm9jZXNzb3JJbmZvOjpGaWxlU2tpcHBl ZChjb25zdCBGaWxlRW50cnkmIGZpbGUsCisgICAgICAgR2V0SW5zdGFudGlhdGlvbkxvYyhmaWxl bmFtZS5nZXRMb2NhdGlvbigpKTsKKyAgIEVSUlNZTShHZXRGaWxlRW50cnkoaW5jbHVkZV9sb2Mp KQorICAgICAgIDw8ICJbICgjaW5jbHVkZSkgIF0gIiA8PCBpbmNsdWRlX25hbWVfYXNfd3JpdHRl bgorLSAgICAgIDw8ICIgKCIgPDwgR2V0RmlsZVBhdGgoJmZpbGUpIDw8ICIpXG4iOworKyAgICAg IDw8ICIgKCIgPDwgR2V0RmlsZVBhdGgoJmZpbGUuZ2V0RmlsZUVudHJ5KCkpIDw8ICIpXG4iOwor IAorLSAgQWRkRGlyZWN0SW5jbHVkZShpbmNsdWRlX2xvYywgJmZpbGUsIGluY2x1ZGVfbmFtZV9h c193cml0dGVuKTsKKy0gIGlmIChTaG91bGRSZXBvcnRJV1lVVmlvbGF0aW9uc0ZvcigmZmlsZSkp IHsKKy0gICAgZmlsZXNfdG9fcmVwb3J0X2l3eXVfdmlvbGF0aW9uc19mb3JfLmluc2VydCgmZmls ZSk7CisrICBBZGREaXJlY3RJbmNsdWRlKGluY2x1ZGVfbG9jLCAmZmlsZS5nZXRGaWxlRW50cnko KSwgaW5jbHVkZV9uYW1lX2FzX3dyaXR0ZW4pOworKyAgaWYgKFNob3VsZFJlcG9ydElXWVVWaW9s YXRpb25zRm9yKCZmaWxlLmdldEZpbGVFbnRyeSgpKSkgeworKyAgICBmaWxlc190b19yZXBvcnRf aXd5dV92aW9sYXRpb25zX2Zvcl8uaW5zZXJ0KCZmaWxlLmdldEZpbGVFbnRyeSgpKTsKKyAgIH0K KyB9CisgCistLS0gaXd5dV9wcmVwcm9jZXNzb3IuaAorKysrIGl3eXVfcHJlcHJvY2Vzc29yLmgK K0BAIC0yMDQsNyArMjA0LDcgQEAgY2xhc3MgSXd5dVByZXByb2Nlc3NvckluZm8gOiBwdWJsaWMg Y2xhbmc6OlBQQ2FsbGJhY2tzLAorICAgdm9pZCBGaWxlQ2hhbmdlZChjbGFuZzo6U291cmNlTG9j YXRpb24gbG9jLCBGaWxlQ2hhbmdlUmVhc29uIHJlYXNvbiwKKyAgICAgICAgICAgICAgICAgICAg Y2xhbmc6OlNyY01ncjo6Q2hhcmFjdGVyaXN0aWNLaW5kIGZpbGVfdHlwZSwKKyAgICAgICAgICAg ICAgICAgICAgY2xhbmc6OkZpbGVJRCBleGl0aW5nX2Zyb21faWQpIG92ZXJyaWRlOworLSAgdm9p ZCBGaWxlU2tpcHBlZChjb25zdCBjbGFuZzo6RmlsZUVudHJ5JiBmaWxlLCBjb25zdCBjbGFuZzo6 VG9rZW4gJmZpbGVuYW1lLAorKyAgdm9pZCBGaWxlU2tpcHBlZChjb25zdCBjbGFuZzo6RmlsZUVu dHJ5UmVmJiBmaWxlLCBjb25zdCBjbGFuZzo6VG9rZW4gJmZpbGVuYW1lLAorICAgICAgICAgICAg ICAgICAgICBjbGFuZzo6U3JjTWdyOjpDaGFyYWN0ZXJpc3RpY0tpbmQgZmlsZV90eXBlKSBvdmVy cmlkZTsKKyAgIC8vIEZpbGVDaGFuZ2VkIGlzIGFjdHVhbGx5IGEgbXVsdGktcGxleGVyIGZvciA0 IGRpZmZlcmVudCBjYWxsYmFja3MuCisgICB2b2lkIEZpbGVDaGFuZ2VkX0VudGVyRmlsZShjbGFu Zzo6U291cmNlTG9jYXRpb24gZmlsZV9iZWdpbm5pbmcpOwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9p bmNsdWRlLXdoYXQteW91LXVzZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvaW5jbHVkZS13aGF0LXlvdS11 c2UvdGVtcGxhdGUKaW5kZXggYTMzZDA3MDk1ZjQuLjE4YWQxYjg4OTZkIDEwMDY0NAotLS0gYS9z cmNwa2dzL2luY2x1ZGUtd2hhdC15b3UtdXNlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvaW5jbHVk ZS13aGF0LXlvdS11c2UvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICdpbmNsdWRlLXdoYXQteW91LXVzZScKIHBrZ25hbWU9aW5jbHVkZS13aGF0LXlvdS11c2UK IHZlcnNpb249MC4xMwotcmV2aXNpb249MQorcmV2aXNpb249Mgogd3Jrc3JjPSIke3BrZ25hbWV9 IgogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItRElXWVVfTExWTV9ST09UX1BB VEg9JHtYQlBTX0NST1NTX0JBU0V9L3VzciAiCgpGcm9tIDI5OTRkNjUzODBmOGYzOTNjNGE3ZTMz MDQ5ZThmMDMyYzJkZDJjNTMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHE2NiA8ZGFu aWVsQG9jdGFmb3JnZS5vcmc+CkRhdGU6IEZyaSwgOCBNYXkgMjAyMCAyMDozMjozOCArMDIwMApT dWJqZWN0OiBbUEFUQ0ggMjIvMjRdIGFmbDogcmVidWlsZCBmb3IgbGx2bTEwCgotLS0KIHNyY3Br Z3MvYWZsL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAx IGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hZmwvdGVtcGxhdGUgYi9zcmNwa2dz L2FmbC90ZW1wbGF0ZQppbmRleCA1ZGJhMjU2MmIzNy4uOTZjMzVhYTE0NGEgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvYWZsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvYWZsL3RlbXBsYXRlCkBAIC0xLDcg KzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnYWZsJwogcGtnbmFtZT1hZmwKIHZlcnNpb249 Mi41NmIKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKICMgeDg2IG9ubHkgY3VycmVudGx5CiBhcmNo cz0iaTY4NiogeDg2XzY0KiIKIHdya3NyYz0iQUZMLSR7dmVyc2lvbn0iCgpGcm9tIDA0Y2I5MDUy OTU1MmVjZTMyMDhjOTRlZjU1ZDM3YzI5OWQ3Y2M3NWQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CkZyb206IHE2NiA8ZGFuaWVsQG9jdGFmb3JnZS5vcmc+CkRhdGU6IEZyaSwgOCBNYXkgMjAyMCAy MDozMjo0OSArMDIwMApTdWJqZWN0OiBbUEFUQ0ggMjMvMjRdIGJlaWduZXQ6IHJlYnVpbGQgZm9y IGxsdm0xMAoKLS0tCiBzcmNwa2dzL2JlaWduZXQvcGF0Y2hlcy9sbHZtMTAucGF0Y2ggfCAzNDcg KysrKysrKysrKysrKysrKysrKysrKysrKysrCiBzcmNwa2dzL2JlaWduZXQvdGVtcGxhdGUgICAg ICAgICAgICAgfCAgIDIgKy0KIDIgZmlsZXMgY2hhbmdlZCwgMzQ4IGluc2VydGlvbnMoKyksIDEg ZGVsZXRpb24oLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2JlaWduZXQvcGF0Y2hlcy9s bHZtMTAucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2JlaWduZXQvcGF0Y2hlcy9sbHZtMTAu cGF0Y2ggYi9zcmNwa2dzL2JlaWduZXQvcGF0Y2hlcy9sbHZtMTAucGF0Y2gKbmV3IGZpbGUgbW9k ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjlhNmNjNWE4ZThmCi0tLSAvZGV2L251bGwKKysr IGIvc3JjcGtncy9iZWlnbmV0L3BhdGNoZXMvbGx2bTEwLnBhdGNoCkBAIC0wLDAgKzEsMzQ3IEBA CitkaWZmIC0tZ2l0IENNYWtlL0ZpbmRMTFZNLmNtYWtlIENNYWtlL0ZpbmRMTFZNLmNtYWtlCitp bmRleCAwYTU5ZTQ3Li42ZTkwOTIzIDEwMDY0NAorLS0tIENNYWtlL0ZpbmRMTFZNLmNtYWtlCisr KysgQ01ha2UvRmluZExMVk0uY21ha2UKK0BAIC0xMDQsMjggKzEwNCwxNiBAQCBzdHJpbmcoUkVH RVggUkVQTEFDRSAiICpcbiIgIiIgTExWTV9TWVNURU1fTElCUyAke0xMVk1fU1lTVEVNX0xJQlNf T1JJR30pCisgZW5kaWYgKExMVk1fU1lTVEVNX0xJQlNfT1JJRykKKyBlbmRpZiAoTExWTV9WRVJT SU9OX05PRE9UIFZFUlNJT05fR1JFQVRFUiAzNCkKKyAKKysjc29tZXRoaW5nIGhhcm1sZXNzIGJl Y2F1c2Ugd2hpdGVzcGFjZSBhdCBzdGFydCBpcyBhbiBlcnJvcgorK3NldChDTEFOR19MSUJSQVJJ RVMgIi1sZGwiKQorIG1hY3JvKGFkZF9vbmVfbGliIG5hbWUpCisgICBGSU5EX0xJQlJBUlkoQ0xB TkdfTElCCisgICAgIE5BTUVTICR7bmFtZX0KKyAgICAgUEFUSFMgJHtMTFZNX0xJQlJBUllfRElS fSBOT19ERUZBVUxUX1BBVEgpCistICBzZXQoQ0xBTkdfTElCUkFSSUVTICR7Q0xBTkdfTElCUkFS SUVTfSAke0NMQU5HX0xJQn0pCisrICBzZXQoQ0xBTkdfTElCUkFSSUVTICIke0NMQU5HX0xJQlJB UklFU30gJHtDTEFOR19MSUJ9IikKKysgIG1lc3NhZ2UoU1RBVFVTICJjbGFuZ2xpYnMgbmFtZSAk e25hbWV9IHRoaXMgJHtDTEFOR19MSUJ9IGFsbCAke0NMQU5HX0xJQlJBUklFU30gIikKKyAJdW5z ZXQoQ0xBTkdfTElCIENBQ0hFKQorIGVuZG1hY3JvKCkKKyAKKyAjQXNzdW1lIGNsYW5nIGxpYiBw YXRoIHNhbWUgYXMgbGx2bSBsaWIgcGF0aAorLWFkZF9vbmVfbGliKCJjbGFuZ0NvZGVHZW4iKQor LWFkZF9vbmVfbGliKCJjbGFuZ0Zyb250ZW5kIikKKy1hZGRfb25lX2xpYigiY2xhbmdTZXJpYWxp emF0aW9uIikKKy1hZGRfb25lX2xpYigiY2xhbmdEcml2ZXIiKQorLWFkZF9vbmVfbGliKCJjbGFu Z1NlbWEiKQorLWFkZF9vbmVfbGliKCJjbGFuZ1N0YXRpY0FuYWx5emVyRnJvbnRlbmQiKQorLWFk ZF9vbmVfbGliKCJjbGFuZ1N0YXRpY0FuYWx5emVyQ2hlY2tlcnMiKQorLWFkZF9vbmVfbGliKCJj bGFuZ1N0YXRpY0FuYWx5emVyQ29yZSIpCistYWRkX29uZV9saWIoImNsYW5nQW5hbHlzaXMiKQor LWFkZF9vbmVfbGliKCJjbGFuZ0VkaXQiKQorLWFkZF9vbmVfbGliKCJjbGFuZ0FTVCIpCistYWRk X29uZV9saWIoImNsYW5nQVNUTWF0Y2hlcnMiKQorLWFkZF9vbmVfbGliKCJjbGFuZ1BhcnNlIikK Ky1hZGRfb25lX2xpYigiY2xhbmdTZW1hIikKKy1hZGRfb25lX2xpYigiY2xhbmdMZXgiKQorLWFk ZF9vbmVfbGliKCJjbGFuZ0Jhc2ljIikKKythZGRfb25lX2xpYigiY2xhbmctY3BwIikKK2RpZmYg LS1naXQgQ01ha2VMaXN0cy50eHQgQ01ha2VMaXN0cy50eHQKK2luZGV4IGMxMWFjYmIuLjA4ZjQy N2QgMTAwNjQ0CistLS0gQ01ha2VMaXN0cy50eHQKKysrKyBDTWFrZUxpc3RzLnR4dAorQEAgLTc5 LDcgKzc5LDcgQEAgZWxzZWlmIChDT01QSUxFUiBTVFJFUVVBTCAiQ0xBTkciKQorIGVsc2VpZiAo Q09NUElMRVIgU1RSRVFVQUwgIklDQyIpCisgICBzZXQgKENNQUtFX0NfQ1hYX0ZMQUdTICIke0NN QUtFX0NfQ1hYX0ZMQUdTfSAgLXdkMjkyOCAtV2FsbCAtZlBJQyAtZnN0cmljdC1hbGlhc2luZyAt ZnAtbW9kZWwgZmFzdCAtbXNzZTQuMSAtV2wsLUUiKQorIGVuZGlmICgpCistc2V0IChDTUFLRV9D WFhfRkxBR1MgIiR7Q01BS0VfQ1hYX0ZMQUdTfSAke0NNQUtFX0NfQ1hYX0ZMQUdTfSAtc3RkPWMr KzB4IC1Xbm8taW52YWxpZC1vZmZzZXRvZiIpCisrc2V0IChDTUFLRV9DWFhfRkxBR1MgIiR7Q01B S0VfQ1hYX0ZMQUdTfSAke0NNQUtFX0NfQ1hYX0ZMQUdTfSAtV25vLWludmFsaWQtb2Zmc2V0b2Yi KQorIHNldCAoQ01BS0VfQ19GTEFHUyAiJHtDTUFLRV9DX0ZMQUdTfSAke0NNQUtFX0NfQ1hYX0ZM QUdTfSIpCisgc2V0IChDTUFLRV9DWFhfRkxBR1NfREVCVUcgICAgICAgICAgIi1PMCAtZyAtREdC RV9ERUJVRz0xIikKKyBzZXQgKENNQUtFX0NYWF9GTEFHU19SRUxXSVRIREVCSU5GTyAiLU8yIC1n IC1ER0JFX0RFQlVHPTEiKQorZGlmZiAtLWdpdCBiYWNrZW5kL3NyYy9iYWNrZW5kL3Byb2dyYW0u Y3BwIGJhY2tlbmQvc3JjL2JhY2tlbmQvcHJvZ3JhbS5jcHAKK2luZGV4IGIzNmY3YjQuLmU2NjYw MzEgMTAwNjQ0CistLS0gYmFja2VuZC9zcmMvYmFja2VuZC9wcm9ncmFtLmNwcAorKysrIGJhY2tl bmQvc3JjL2JhY2tlbmQvcHJvZ3JhbS5jcHAKK0BAIC02OTQsOSArNjk0LDkgQEAgbmFtZXNwYWNl IGdiZSB7CisgI2VuZGlmCisgICAgICAgICAgICAgICAgICk7CisgCisrICAgIGxsdm06OmNsOjpS ZXNldEFsbE9wdGlvbk9jY3VycmVuY2VzKCk7CisgICAgIGNsYW5nOjpDb21waWxlckludm9jYXRp b246OkNyZWF0ZUZyb21BcmdzKCpDSSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgJmFyZ3NbMF0sCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICZhcmdzWzBdICsgYXJncy5zaXplKCksCisrICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYW5nOjpBcnJheVJlZjxjb25zdCBjaGFy Kj4oYXJncyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IERpYWdzKTsKKyAgICAgLy8gQ3JlYXRlIHRoZSBjb21waWxlciBpbnN0YW5jZQorICAgICBjbGFu Zzo6Q29tcGlsZXJJbnN0YW5jZSBDbGFuZzsKK0BAIC0xMjQyLDggKzEyNDIsNyBAQCBFWFRFTkRf UVVPVEU6CisgICAgICAgLy8gQ3JlYXRlIHRoZSBjb21waWxlciBpbnZvY2F0aW9uCisgICAgICAg c3RkOjp1bmlxdWVfcHRyPGNsYW5nOjpDb21waWxlckludm9jYXRpb24+IENJKG5ldyBjbGFuZzo6 Q29tcGlsZXJJbnZvY2F0aW9uKTsKKyAgICAgICByZXR1cm4gY2xhbmc6OkNvbXBpbGVySW52b2Nh dGlvbjo6Q3JlYXRlRnJvbUFyZ3MoKkNJLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAmYXJnc1swXSwKKy0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmFyZ3NbMF0gKyBhcmdzLnNpemUo KSwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgY2xhbmc6OkFycmF5UmVmPGNvbnN0IGNoYXIqPihhcmdzKSwKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGlhZ3MpOworICAgICB9Cisg I2VuZGlmCitkaWZmIC0tZ2l0IGJhY2tlbmQvc3JjL2xsdm0vbGx2bV9nZW5fYmFja2VuZC5jcHAg YmFja2VuZC9zcmMvbGx2bS9sbHZtX2dlbl9iYWNrZW5kLmNwcAoraW5kZXggYzZmYzMwZC4uODI0 NDFkOCAxMDA2NDQKKy0tLSBiYWNrZW5kL3NyYy9sbHZtL2xsdm1fZ2VuX2JhY2tlbmQuY3BwCisr KysgYmFja2VuZC9zcmMvbGx2bS9sbHZtX2dlbl9iYWNrZW5kLmNwcAorQEAgLTU3NSwxMCArNTc1 LDEyIEBAIG5hbWVzcGFjZSBnYmUKKyAgICAgICAgIGhhc19lcnJvcnMoZmFsc2UpLAorICAgICAg ICAgbGVnYWN5TW9kZSh0cnVlKQorICAgICB7CisrI2lmIExMVk1fVkVSU0lPTl9NQUpPUiA8IDEw CisgI2lmIExMVk1fVkVSU0lPTl9NQUpPUiAqIDEwICsgTExWTV9WRVJTSU9OX01JTk9SID49IDM3 CisgICAgICAgaW5pdGlhbGl6ZUxvb3BJbmZvV3JhcHBlclBhc3NQYXNzKCpQYXNzUmVnaXN0cnk6 OmdldFBhc3NSZWdpc3RyeSgpKTsKKyAjZWxzZQorICAgICAgIGluaXRpYWxpemVMb29wSW5mb1Bh c3MoKlBhc3NSZWdpc3RyeTo6Z2V0UGFzc1JlZ2lzdHJ5KCkpOworKyNlbmRpZgorICNlbmRpZgor ICAgICAgIHBhc3MgPSBQQVNTX0VNSVRfUkVHSVNURVJTOworICAgICB9CitkaWZmIC0tZ2l0IGJh Y2tlbmQvc3JjL2xsdm0vbGx2bV9nZW5fYmFja2VuZC5ocHAgYmFja2VuZC9zcmMvbGx2bS9sbHZt X2dlbl9iYWNrZW5kLmhwcAoraW5kZXggYjQ3MTViMS4uOGU3NGY3YSAxMDA2NDQKKy0tLSBiYWNr ZW5kL3NyYy9sbHZtL2xsdm1fZ2VuX2JhY2tlbmQuaHBwCisrKysgYmFja2VuZC9zcmMvbGx2bS9s bHZtX2dlbl9iYWNrZW5kLmhwcAorQEAgLTEzMCwxMCArMTMwLDEwIEBAIG5hbWVzcGFjZSBnYmUK KyAgIGxsdm06OkZ1bmN0aW9uUGFzcyAqY3JlYXRlR2VuUGFzcyhpcjo6VW5pdCAmdW5pdCk7Cisg CisgICAvKiEgUmVtb3ZlIHRoZSBHRVAgaW5zdHJ1Y3Rpb25zICovCistICBsbHZtOjpCYXNpY0Js b2NrUGFzcyAqY3JlYXRlUmVtb3ZlR0VQUGFzcyhjb25zdCBpcjo6VW5pdCAmdW5pdCk7CisrICBs bHZtOjpGdW5jdGlvblBhc3MgKmNyZWF0ZVJlbW92ZUdFUFBhc3MoY29uc3QgaXI6OlVuaXQgJnVu aXQpOworIAorICAgLyohIE1lcmdlIGxvYWQvc3RvcmUgaWYgcG9zc2libGUgKi8KKy0gIGxsdm06 OkJhc2ljQmxvY2tQYXNzICpjcmVhdGVMb2FkU3RvcmVPcHRpbWl6YXRpb25QYXNzKCk7CisrICBs bHZtOjpGdW5jdGlvblBhc3MgKmNyZWF0ZUxvYWRTdG9yZU9wdGltaXphdGlvblBhc3MoKTsKKyAK KyAgIC8qISBTY2FsYXJpemUgYWxsIHZlY3RvciBvcCBpbnN0cnVjdGlvbnMgKi8KKyAgIGxsdm06 OkZ1bmN0aW9uUGFzcyogY3JlYXRlU2NhbGFyaXplUGFzcygpOworQEAgLTE0MSw3ICsxNDEsNyBA QCBuYW1lc3BhY2UgZ2JlCisgICBsbHZtOjpNb2R1bGVQYXNzKiBjcmVhdGVCYXJyaWVyTm9kdXBQ YXNzKGJvb2wpOworIAorICAgLyohIENvbnZlcnQgdGhlIEludHJpbnNpYyBjYWxsIHRvIGdlbiBm dW5jdGlvbiAqLworLSAgbGx2bTo6QmFzaWNCbG9ja1Bhc3MgKmNyZWF0ZUludHJpbnNpY0xvd2Vy aW5nUGFzcygpOworKyAgbGx2bTo6RnVuY3Rpb25QYXNzICpjcmVhdGVJbnRyaW5zaWNMb3dlcmlu Z1Bhc3MoKTsKKyAKKyAgIC8qISBQYXNzZXIgdGhlIHByaW50ZiBmdW5jdGlvbiBjYWxsLiAqLwor ICAgbGx2bTo6RnVuY3Rpb25QYXNzKiBjcmVhdGVQcmludGZQYXJzZXJQYXNzKGlyOjpVbml0ICZ1 bml0KTsKK2RpZmYgLS1naXQgYmFja2VuZC9zcmMvbGx2bS9sbHZtX2ludHJpbnNpY19sb3dlcmlu Zy5jcHAgYmFja2VuZC9zcmMvbGx2bS9sbHZtX2ludHJpbnNpY19sb3dlcmluZy5jcHAKK2luZGV4 IDk0ZjBjZTYuLmI1NTM5ZTkgMTAwNjQ0CistLS0gYmFja2VuZC9zcmMvbGx2bS9sbHZtX2ludHJp bnNpY19sb3dlcmluZy5jcHAKKysrKyBiYWNrZW5kL3NyYy9sbHZtL2xsdm1faW50cmluc2ljX2xv d2VyaW5nLmNwcAorQEAgLTI5LDEyICsyOSwxMiBAQAorIHVzaW5nIG5hbWVzcGFjZSBsbHZtOwor IAorIG5hbWVzcGFjZSBnYmUgeworLSAgICBjbGFzcyBJbnN0cmluc2ljTG93ZXJpbmcgOiBwdWJs aWMgQmFzaWNCbG9ja1Bhc3MKKysgICAgY2xhc3MgSW5zdHJpbnNpY0xvd2VyaW5nIDogcHVibGlj IEZ1bmN0aW9uUGFzcworICAgICB7CisgICAgIHB1YmxpYzoKKyAgICAgICBzdGF0aWMgY2hhciBJ RDsKKyAgICAgICBJbnN0cmluc2ljTG93ZXJpbmcoKSA6CistICAgICAgICBCYXNpY0Jsb2NrUGFz cyhJRCkge30KKysgICAgICAgIEZ1bmN0aW9uUGFzcyhJRCkge30KKyAKKyAgICAgICB2b2lkIGdl dEFuYWx5c2lzVXNhZ2UoQW5hbHlzaXNVc2FnZSAmQVUpIGNvbnN0IHsKKyAKK0BAIC05Myw5ICs5 Myw5IEBAIG5hbWVzcGFjZSBnYmUgeworICAgICAgICAgQ0ktPmVyYXNlRnJvbVBhcmVudCgpOwor ICAgICAgICAgcmV0dXJuIE5ld0NJOworICAgICAgIH0KKy0gICAgICB2aXJ0dWFsIGJvb2wgcnVu T25CYXNpY0Jsb2NrKEJhc2ljQmxvY2sgJkJCKQorKyAgICAgIHZpcnR1YWwgYm9vbCBydW5PbkZ1 bmN0aW9uKEZ1bmN0aW9uICZGKQorICAgICAgIHsKKy0gICAgICAgIGJvb2wgY2hhbmdlZEJsb2Nr ID0gZmFsc2U7CisrICAgICAgICBmb3IgKEJhc2ljQmxvY2sgJkJCIDogRikgeworICAgICAgICAg TW9kdWxlICpNID0gQkIuZ2V0UGFyZW50KCktPmdldFBhcmVudCgpOworIAorICAgICAgICAgRGF0 YUxheW91dCBURChNKTsKK0BAIC0xNTksMTMgKzE1OSwxNCBAQCBuYW1lc3BhY2UgZ2JlIHsKKyAg ICAgICAgICAgICB9CisgICAgICAgICAgIH0KKyAgICAgICAgIH0KKy0gICAgICAgIHJldHVybiBj aGFuZ2VkQmxvY2s7CisrICAgICAgICB9CisrICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICB9 CisgICAgIH07CisgCisgICAgIGNoYXIgSW5zdHJpbnNpY0xvd2VyaW5nOjpJRCA9IDA7CisgCist ICAgIEJhc2ljQmxvY2tQYXNzICpjcmVhdGVJbnRyaW5zaWNMb3dlcmluZ1Bhc3MoKSB7CisrICAg IEZ1bmN0aW9uUGFzcyAqY3JlYXRlSW50cmluc2ljTG93ZXJpbmdQYXNzKCkgeworICAgICAgIHJl dHVybiBuZXcgSW5zdHJpbnNpY0xvd2VyaW5nKCk7CisgICAgIH0KKyB9IC8vIGVuZCBuYW1lc3Bh Y2UKK2RpZmYgLS1naXQgYmFja2VuZC9zcmMvbGx2bS9sbHZtX2xvYWRzdG9yZV9vcHRpbWl6YXRp b24uY3BwIGJhY2tlbmQvc3JjL2xsdm0vbGx2bV9sb2Fkc3RvcmVfb3B0aW1pemF0aW9uLmNwcAor aW5kZXggNWFhMzhiZS4uZTMxNDMwMiAxMDA2NDQKKy0tLSBiYWNrZW5kL3NyYy9sbHZtL2xsdm1f bG9hZHN0b3JlX29wdGltaXphdGlvbi5jcHAKKysrKyBiYWNrZW5kL3NyYy9sbHZtL2xsdm1fbG9h ZHN0b3JlX29wdGltaXphdGlvbi5jcHAKK0BAIC0yNiwxMyArMjYsMTMgQEAKKyAKKyB1c2luZyBu YW1lc3BhY2UgbGx2bTsKKyBuYW1lc3BhY2UgZ2JlIHsKKy0gIGNsYXNzIEdlbkxvYWRTdG9yZU9w dGltaXphdGlvbiA6IHB1YmxpYyBCYXNpY0Jsb2NrUGFzcyB7CisrICBjbGFzcyBHZW5Mb2FkU3Rv cmVPcHRpbWl6YXRpb24gOiBwdWJsaWMgRnVuY3Rpb25QYXNzIHsKKyAKKyAgIHB1YmxpYzoKKyAg ICAgc3RhdGljIGNoYXIgSUQ7CisgICAgIFNjYWxhckV2b2x1dGlvbiAqU0U7CisgICAgIGNvbnN0 IERhdGFMYXlvdXQgKlREOworLSAgICBHZW5Mb2FkU3RvcmVPcHRpbWl6YXRpb24oKSA6IEJhc2lj QmxvY2tQYXNzKElEKSB7fQorKyAgICBHZW5Mb2FkU3RvcmVPcHRpbWl6YXRpb24oKSA6IEZ1bmN0 aW9uUGFzcyhJRCkge30KKyAKKyAgICAgdm9pZCBnZXRBbmFseXNpc1VzYWdlKEFuYWx5c2lzVXNh Z2UgJkFVKSBjb25zdCB7CisgI2lmIExMVk1fVkVSU0lPTl9NQUpPUiAqIDEwICsgTExWTV9WRVJT SU9OX01JTk9SID49IDM4CitAQCAtNDUsNyArNDUsOSBAQCBuYW1lc3BhY2UgZ2JlIHsKKyAgICAg ICBBVS5zZXRQcmVzZXJ2ZXNDRkcoKTsKKyAgICAgfQorIAorLSAgICB2aXJ0dWFsIGJvb2wgcnVu T25CYXNpY0Jsb2NrKEJhc2ljQmxvY2sgJkJCKSB7CisrICAgIHZpcnR1YWwgYm9vbCBydW5PbkZ1 bmN0aW9uKEZ1bmN0aW9uICZGKSB7CisrICAgICAgICBib29sIGNoYW5nZWRBbnlCbG9jayA9IGZh bHNlOworKyAgICAgICAgZm9yIChCYXNpY0Jsb2NrICZCQiA6IEYpIHsKKyAjaWYgTExWTV9WRVJT SU9OX01BSk9SICogMTAgKyBMTFZNX1ZFUlNJT05fTUlOT1IgPj0gMzgKKyAgICAgICBTRSA9ICZn ZXRBbmFseXNpczxTY2FsYXJFdm9sdXRpb25XcmFwcGVyUGFzcz4oKS5nZXRTRSgpOworICNlbHNl CitAQCAtNTksNyArNjEsOSBAQCBuYW1lc3BhY2UgZ2JlIHsKKyAgICAgICAjZWxzZQorICAgICAg ICAgVEQgPSBnZXRBbmFseXNpc0lmQXZhaWxhYmxlPERhdGFMYXlvdXQ+KCk7CisgICAgICAgI2Vu ZGlmCistICAgICAgcmV0dXJuIG9wdGltaXplTG9hZFN0b3JlKEJCKTsKKysgICAgICAgICAgIGNo YW5nZWRBbnlCbG9jayA9IG9wdGltaXplTG9hZFN0b3JlKEJCKSB8IGNoYW5nZWRBbnlCbG9jazsK KysgICAgICAgIH0KKysgICAgICAgIHJldHVybiBjaGFuZ2VkQW55QmxvY2s7CisgICAgIH0KKyAg ICAgVHlwZSAgICAqZ2V0VmFsdWVUeXBlKFZhbHVlICppbnNuKTsKKyAgICAgVmFsdWUgICAqZ2V0 UG9pbnRlck9wZXJhbmQoVmFsdWUgKkkpOworQEAgLTE0OCw3ICsxNTIsNyBAQCBuYW1lc3BhY2Ug Z2JlIHsKKyAgICAgICB2YWx1ZXMucHVzaF9iYWNrKG1lcmdlZFtpXSk7CisgICAgIH0KKyAgICAg TG9hZEluc3QgKmxkID0gY2FzdDxMb2FkSW5zdD4obWVyZ2VkWzBdKTsKKy0gICAgdW5zaWduZWQg YWxpZ24gPSBsZC0+Z2V0QWxpZ25tZW50KCk7CisrICAgIE1heWJlQWxpZ24gYWxpZ24gPSBsZC0+ Z2V0QWxpZ24oKTsKKyAgICAgdW5zaWduZWQgYWRkclNwYWNlID0gbGQtPmdldFBvaW50ZXJBZGRy ZXNzU3BhY2UoKTsKKyAgICAgLy8gaW5zZXJ0IGJlZm9yZSBmaXJzdCBsb2FkCisgICAgIEJ1aWxk ZXIuU2V0SW5zZXJ0UG9pbnQobGQpOworQEAgLTIzMSw3ICsyMzUsNyBAQCBuYW1lc3BhY2UgZ2Jl IHsKKyAKKyAgICAgdW5zaWduZWQgYWRkclNwYWNlID0gc3QtPmdldFBvaW50ZXJBZGRyZXNzU3Bh Y2UoKTsKKyAKKy0gICAgdW5zaWduZWQgYWxpZ24gPSBzdC0+Z2V0QWxpZ25tZW50KCk7CisrICAg IE1heWJlQWxpZ24gYWxpZ24gPSBzdC0+Z2V0QWxpZ24oKTsKKyAgICAgLy8gaW5zZXJ0IGJlZm9y ZSB0aGUgbGFzdCBzdG9yZQorICAgICBCdWlsZGVyLlNldEluc2VydFBvaW50KG1lcmdlZFtzaXpl LTFdKTsKKyAKK0BAIC0zMjUsNyArMzI5LDcgQEAgbmFtZXNwYWNlIGdiZSB7CisgICAgIHJldHVy biBjaGFuZ2VkOworICAgfQorIAorLSAgQmFzaWNCbG9ja1Bhc3MgKmNyZWF0ZUxvYWRTdG9yZU9w dGltaXphdGlvblBhc3MoKSB7CisrICBGdW5jdGlvblBhc3MgKmNyZWF0ZUxvYWRTdG9yZU9wdGlt aXphdGlvblBhc3MoKSB7CisgICAgIHJldHVybiBuZXcgR2VuTG9hZFN0b3JlT3B0aW1pemF0aW9u KCk7CisgICB9CisgfTsKK2RpZmYgLS1naXQgYmFja2VuZC9zcmMvbGx2bS9sbHZtX3Bhc3Nlcy5j cHAgYmFja2VuZC9zcmMvbGx2bS9sbHZtX3Bhc3Nlcy5jcHAKK2luZGV4IDEwNzUyYTMuLmI4ZjIy ODIgMTAwNjQ0CistLS0gYmFja2VuZC9zcmMvbGx2bS9sbHZtX3Bhc3Nlcy5jcHAKKysrKyBiYWNr ZW5kL3NyYy9sbHZtL2xsdm1fcGFzc2VzLmNwcAorQEAgLTM3LDcgKzM3LDcgQEAKKyAjaW5jbHVk ZSAic3lzL21hcC5ocHAiCisgCisgdXNpbmcgbmFtZXNwYWNlIGxsdm07CistCisrdGVtcGxhdGUg Y2xhc3MgY2ZnOjpVcGRhdGU8QmFzaWNCbG9jayAqPjsKKyBuYW1lc3BhY2UgZ2JlCisgeworICAg Ym9vbCBpc0tlcm5lbEZ1bmN0aW9uKGNvbnN0IGxsdm06OkZ1bmN0aW9uICZGKSB7CitAQCAtMjE5 LDEzICsyMTksMTMgQEAgbmFtZXNwYWNlIGdiZQorICAgICByZXR1cm4gb2Zmc2V0OworICAgfQor IAorLSAgY2xhc3MgR2VuUmVtb3ZlR0VQUGFzc3MgOiBwdWJsaWMgQmFzaWNCbG9ja1Bhc3MKKysg IGNsYXNzIEdlblJlbW92ZUdFUFBhc3NzIDogcHVibGljIEZ1bmN0aW9uUGFzcworICAgeworIAor ICAgIHB1YmxpYzoKKyAgICAgc3RhdGljIGNoYXIgSUQ7CisgICAgIEdlblJlbW92ZUdFUFBhc3Nz KGNvbnN0IGlyOjpVbml0ICZ1bml0KSA6CistICAgICAgQmFzaWNCbG9ja1Bhc3MoSUQpLAorKyAg ICAgIEZ1bmN0aW9uUGFzcyhJRCksCisgICAgICAgdW5pdCh1bml0KSB7fQorICAgICBjb25zdCBp cjo6VW5pdCAmdW5pdDsKKyAgICAgdm9pZCBnZXRBbmFseXNpc1VzYWdlKEFuYWx5c2lzVXNhZ2Ug JkFVKSBjb25zdCB7CitAQCAtMjQyLDE2ICsyNDIsMTggQEAgbmFtZXNwYWNlIGdiZQorIAorICAg ICBib29sIHNpbXBsaWZ5R0VQSW5zdHJ1Y3Rpb25zKEdldEVsZW1lbnRQdHJJbnN0KiBHRVBJbnN0 KTsKKyAKKy0gICAgdmlydHVhbCBib29sIHJ1bk9uQmFzaWNCbG9jayhCYXNpY0Jsb2NrICZCQikK KysgICAgdmlydHVhbCBib29sIHJ1bk9uRnVuY3Rpb24oRnVuY3Rpb24gJkYpCisgICAgIHsKKy0g ICAgICBib29sIGNoYW5nZWRCbG9jayA9IGZhbHNlOworKyAgICAgIGJvb2wgY2hhbmdlZEFueUJs b2NrID0gZmFsc2U7CisrICAgICAgICBmb3IgKEJhc2ljQmxvY2sgJkJCIDogRikgeworICAgICAg IGlwbGlzdDxJbnN0cnVjdGlvbj46Oml0ZXJhdG9yIEkgPSBCQi5nZXRJbnN0TGlzdCgpLmJlZ2lu KCk7CisgICAgICAgZm9yIChhdXRvIG5leHRJID0gSSwgRSA9IC0tQkIuZ2V0SW5zdExpc3QoKS5l bmQoKTsgSSAhPSBFOyBJID0gbmV4dEkpIHsKKyAgICAgICAgIGlwbGlzdDxJbnN0cnVjdGlvbj46 Oml0ZXJhdG9yIEkgPSBuZXh0SSsrOworICAgICAgICAgaWYoR2V0RWxlbWVudFB0ckluc3QqIGdl cCA9IGR5bl9jYXN0PEdldEVsZW1lbnRQdHJJbnN0PigmKkkpKQorLSAgICAgICAgICBjaGFuZ2Vk QmxvY2sgPSAoc2ltcGxpZnlHRVBJbnN0cnVjdGlvbnMoZ2VwKSB8fCBjaGFuZ2VkQmxvY2spOwor KyAgICAgICAgICBjaGFuZ2VkQW55QmxvY2sgPSAoc2ltcGxpZnlHRVBJbnN0cnVjdGlvbnMoZ2Vw KSB8IGNoYW5nZWRBbnlCbG9jayk7CisgICAgICAgfQorLSAgICAgIHJldHVybiBjaGFuZ2VkQmxv Y2s7CisrICAgICAgICB9CisrICAgICAgcmV0dXJuIGNoYW5nZWRBbnlCbG9jazsKKyAgICAgfQor ICAgfTsKKyAKK0BAIC0zNjcsNyArMzY5LDcgQEAgbmFtZXNwYWNlIGdiZQorICAgICByZXR1cm4g dHJ1ZTsKKyAgIH0KKyAKKy0gIEJhc2ljQmxvY2tQYXNzICpjcmVhdGVSZW1vdmVHRVBQYXNzKGNv bnN0IGlyOjpVbml0ICZ1bml0KSB7CisrICBGdW5jdGlvblBhc3MgKmNyZWF0ZVJlbW92ZUdFUFBh c3MoY29uc3QgaXI6OlVuaXQgJnVuaXQpIHsKKyAgICAgcmV0dXJuIG5ldyBHZW5SZW1vdmVHRVBQ YXNzcyh1bml0KTsKKyAgIH0KKyB9IC8qIG5hbWVzcGFjZSBnYmUgKi8KK2RpZmYgLS1naXQgYmFj a2VuZC9zcmMvbGx2bS9sbHZtX3NhbXBsZXJfZml4LmNwcCBiYWNrZW5kL3NyYy9sbHZtL2xsdm1f c2FtcGxlcl9maXguY3BwCitpbmRleCAyYTA5N2M4Li44NjNiZTZkIDEwMDY0NAorLS0tIGJhY2tl bmQvc3JjL2xsdm0vbGx2bV9zYW1wbGVyX2ZpeC5jcHAKKysrKyBiYWNrZW5kL3NyYy9sbHZtL2xs dm1fc2FtcGxlcl9maXguY3BwCitAQCAtMzMsMTAgKzMzLDEyIEBAIG5hbWVzcGFjZSBnYmUgewor ICAgY2xhc3MgU2FtcGxlckZpeCA6IHB1YmxpYyBGdW5jdGlvblBhc3MgeworICAgcHVibGljOgor ICAgICBTYW1wbGVyRml4KCkgOiBGdW5jdGlvblBhc3MoSUQpIHsKKysjaWYgTExWTV9WRVJTSU9O X01BSk9SIDwgMTAKKyAjaWYgTExWTV9WRVJTSU9OX01BSk9SICogMTAgKyBMTFZNX1ZFUlNJT05f TUlOT1IgPj0gMzUKKyAgICAgICBpbml0aWFsaXplRG9taW5hdG9yVHJlZVdyYXBwZXJQYXNzUGFz cygqUGFzc1JlZ2lzdHJ5OjpnZXRQYXNzUmVnaXN0cnkoKSk7CisgI2Vsc2UKKyAgICAgICBpbml0 aWFsaXplRG9taW5hdG9yVHJlZVBhc3MoKlBhc3NSZWdpc3RyeTo6Z2V0UGFzc1JlZ2lzdHJ5KCkp OworKyNlbmRpZgorICNlbmRpZgorICAgICB9CisgCitkaWZmIC0tZ2l0IGJhY2tlbmQvc3JjL2xs dm0vbGx2bV9zY2FsYXJpemUuY3BwIGJhY2tlbmQvc3JjL2xsdm0vbGx2bV9zY2FsYXJpemUuY3Bw CitpbmRleCBlOWEyYTY2Li5lOWQyZWU0IDEwMDY0NAorLS0tIGJhY2tlbmQvc3JjL2xsdm0vbGx2 bV9zY2FsYXJpemUuY3BwCisrKysgYmFja2VuZC9zcmMvbGx2bS9sbHZtX3NjYWxhcml6ZS5jcHAK K0BAIC05NiwxMCArOTYsMTIgQEAgbmFtZXNwYWNlIGdiZSB7CisgCisgICAgIFNjYWxhcml6ZSgp IDogRnVuY3Rpb25QYXNzKElEKQorICAgICB7CisrI2lmIExMVk1fVkVSU0lPTl9NQUpPUiA8IDEw CisgI2lmIExMVk1fVkVSU0lPTl9NQUpPUiAqIDEwICsgTExWTV9WRVJTSU9OX01JTk9SID49IDM1 CisgICAgICAgaW5pdGlhbGl6ZURvbWluYXRvclRyZWVXcmFwcGVyUGFzc1Bhc3MoKlBhc3NSZWdp c3RyeTo6Z2V0UGFzc1JlZ2lzdHJ5KCkpOworICNlbHNlCisgICAgICAgaW5pdGlhbGl6ZURvbWlu YXRvclRyZWVQYXNzKCpQYXNzUmVnaXN0cnk6OmdldFBhc3NSZWdpc3RyeSgpKTsKKysjZW5kaWYK KyAjZW5kaWYKKyAgICAgfQorIAorZGlmZiAtLWdpdCB1dGVzdHMvQ01ha2VMaXN0cy50eHQgdXRl c3RzL0NNYWtlTGlzdHMudHh0CitpbmRleCAzMDBkODdhLi42NDE3OWM3IDEwMDY0NAorLS0tIHV0 ZXN0cy9DTWFrZUxpc3RzLnR4dAorKysrIHV0ZXN0cy9DTWFrZUxpc3RzLnR4dAorQEAgLTI2LDgg KzI2LDggQEAgaWYgKE5PVCBOT1RfQlVJTERfU1RBTkRfQUxPTkVfVVRFU1QpCisgICAjIFRocmVh ZHMKKyAgIEZpbmRfUGFja2FnZShUaHJlYWRzKQorIAorLSAgc2V0IChDTUFLRV9DWFhfRkxBR1Mg IiR7Q01BS0VfQ1hYX0ZMQUdTfSAke0NNQUtFX0NfQ1hYX0ZMQUdTfSAtc3RkPWMrKzB4IC1Xbm8t aW52YWxpZC1vZmZzZXRvZiIpCistICBzZXQgKENNQUtFX0NfRkxBR1MgIiR7Q01BS0VfQ19GTEFH U30gJHtDTUFLRV9DX0NYWF9GTEFHU30iKQorKyAgc2V0IChDTUFLRV9DWFhfRkxBR1MgIiR7Q01B S0VfQ1hYX0ZMQUdTfSAke0NNQUtFX0NfQ1hYX0ZMQUdTfSAtV25vLWludmFsaWQtb2Zmc2V0b2Yg LWZmbG9hdC1zdG9yZSAtZm5vLXN0cmljdC1hbGlhc2luZyIpCisrICBzZXQgKENNQUtFX0NfRkxB R1MgIiR7Q01BS0VfQ19GTEFHU30gJHtDTUFLRV9DX0NYWF9GTEFHU30gLWZmbG9hdC1zdG9yZSAt Zm5vLXN0cmljdC1hbGlhc2luZyIpICNjb21waWxlcl97ZGVncmVlcyxyYWRpYW5zLGZ1bmN0aW9u X2FyZ3VtZW50Mn0gdXNlIGVxdWFsaXR5IGNvbXBhcmlzb24gb2YgZmxvYXRzLCBjb21waWxlcl9s b25nX2JpdGNhc3QgdXNlcyBhbGlhc2luZworICAgc2V0IChDTUFLRV9DWFhfRkxBR1NfREVCVUcg ICAgICAgICAgIi1PMCAtZyAtREdCRV9ERUJVRz0xIikKKyAgIHNldCAoQ01BS0VfQ1hYX0ZMQUdT X1JFTFdJVEhERUJJTkZPICItTzIgLWcgLURHQkVfREVCVUc9MSIpCisgICBzZXQgKENNQUtFX0NY WF9GTEFHU19NSU5TSVpFUkVMICAgICAiLU9zIC1ETkRFQlVHIC1ER0JFX0RFQlVHPTAiKQpkaWZm IC0tZ2l0IGEvc3JjcGtncy9iZWlnbmV0L3RlbXBsYXRlIGIvc3JjcGtncy9iZWlnbmV0L3RlbXBs YXRlCmluZGV4IGMxMzIzMzVkYTM3Li5hMDZmZDQwZGMxMiAxMDA2NDQKLS0tIGEvc3JjcGtncy9i ZWlnbmV0L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvYmVpZ25ldC90ZW1wbGF0ZQpAQCAtMSw3ICsx LDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2JlaWduZXQnCiBwa2duYW1lPWJlaWduZXQKIHZl cnNpb249MS4zLjIKLXJldmlzaW9uPTYKK3JldmlzaW9uPTcKIGFyY2hzPSJpNjg2KiB4ODZfNjQq Igogd3Jrc3JjPSJCZWlnbmV0LSR7dmVyc2lvbn0tU291cmNlIgogYnVpbGRfc3R5bGU9Y21ha2UK CkZyb20gY2FjYTMzNTgxOTUwZjNlMmI1MGNmYjY5Mzk0Njc0MTg1ZWJiYWZkMCBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogcTY2IDxkYW5pZWxAb2N0YWZvcmdlLm9yZz4KRGF0ZTogRnJp LCA4IE1heSAyMDIwIDIwOjMzOjE3ICswMjAwClN1YmplY3Q6IFtQQVRDSCAyNC8yNF0gaXNwYzog cmVidWlsZCBmb3IgbGx2bTEwCgpbY2kgc2tpcF0KLS0tCiBzcmNwa2dzL2lzcGMvdGVtcGxhdGUg fCAxNCArKysrKysrKystLS0tLQogMSBmaWxlIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgNSBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2lzcGMvdGVtcGxhdGUgYi9zcmNwa2dz L2lzcGMvdGVtcGxhdGUKaW5kZXggOTk4ZDgwMjhjYWMuLmUxZGU4YWFhZTNmIDEwMDY0NAotLS0g YS9zcmNwa2dzL2lzcGMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9pc3BjL3RlbXBsYXRlCkBAIC0x LDIxICsxLDI1IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdpc3BjJwogcGtnbmFtZT1pc3BjCiB2 ZXJzaW9uPTEuMTIuMAotcmV2aXNpb249MgorcmV2aXNpb249MwogYXJjaHM9Imk2ODYgeDg2XzY0 IgogYnVpbGRfc3R5bGU9Y21ha2UKLWhvc3RtYWtlZGVwZW5kcz0iY2xhbmcgcHl0aG9uMyBtNCBi aXNvbiBmbGV4IGxsdm0iCiBjb25maWd1cmVfYXJncz0iLURJU1BDX05PX0RVTVBTPXllcyIKK2hv c3RtYWtlZGVwZW5kcz0iY2xhbmcgcHl0aG9uMyBtNCBiaXNvbiBmbGV4IGxsdm0iCiBtYWtlZGVw ZW5kcz0ibmN1cnNlcy1kZXZlbCB6bGliLWRldmVsIgotc2hvcnRfZGVzYz0iQSBjb21waWxlciBm b3IgaGlnaC1wZXJmb3JtYW5jZSBTSU1EIHByb2dyYW1taW5nIG9uIHRoZSBDUFUiCitzaG9ydF9k ZXNjPSJDb21waWxlciBmb3IgaGlnaC1wZXJmb3JtYW5jZSBTSU1EIHByb2dyYW1taW5nIG9uIHRo ZSBDUFUiCiBtYWludGFpbmVyPSJBbmRyZWEgQnJhbmNhbGVvbmkgPGFiY0Bwb21wZWwubWU+Igot bGljZW5zZT0iQlNEIgorbGljZW5zZT0iQlNELTMtQ2xhdXNlIgogaG9tZXBhZ2U9Imh0dHBzOi8v aXNwYy5naXRodWIuaW8iCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9pc3BjL2lzcGMv YXJjaGl2ZS92JHt2ZXJzaW9ufS50YXIuZ3oiCi1wYXRjaF9hcmdzPSItcDEiCiBjaGVja3N1bT05 ZWJjMjlhZGNkZjQ3NzY1OWI0NTE1NWQwZjkxZTYxMTIwYTEyMDg0ZTQyMTEzZDBlOWY0Y2U1Y2Zk ZmJkY2FiCitwYXRjaF9hcmdzPSItcDEiCiBub3BpZT15ZXMKIAogcHJlX2J1aWxkKCkgewogCXNl ZCAtaSAnL3RpbmZvL2QnIENNYWtlTGlzdHMudHh0CiB9CisKK3Bvc3RfaW5zdGFsbCgpIHsKKwl2 bGljZW5zZSBMSUNFTlNFLnR4dAorfQo= --===============8486380998484214453==--