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 20247 invoked from network); 8 May 2020 22:51:22 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 8 May 2020 22:51:22 -0000 Content-Type: multipart/mixed; boundary="===============8035426537350543882==" 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: Sat, 09 May 2020 00:51:18 +0200 List-Id: Message-ID: <20200508225118.-7Ef01iU8NkN7jPZgkIBPCObzAxzbAOySgzBvLYe5vk@z> GitHub notification mails are now in MIME to allow UTF8. --===============8035426537350543882== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgcTY2IGFnYWluc3QgbWFzdGVyIG9u IHRoZSB2b2lkLXBhY2thZ2VzIHJlcG9zaXRvcnkKCmh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLXBw Yy92b2lkLXBhY2thZ2VzIGxsdm0xMApodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lk LXBhY2thZ2VzL3B1bGwvMjE3NTYKCkxMVk0vQ2xhbmcgMTAKIyBuZWVkcyByZWJ1aWxkaW5nICh1 bnRpY2tlZCBzdGlsbCBuZWVkcyB0ZXN0aW5nKQ0KDQotIFt4XSBsaWJjbGMtZ2l0DQotIFt4XSBt ZXNhDQotIFt4XSBsbHZtOQ0KLSBbeF0gYnBmdHJhY2UNCi0gW3hdIGdub21lLWJ1aWxkZXINCi0g W3hdIGp1Q2krKw0KLSBbeF0ga2RldmVsb3ANCi0gW3hdIHF0NQ0KLSBbeF0gcXRjcmVhdG9yDQot IFt4XSBydGFncw0KLSBbeF0gc2hpYm9rZW4yDQotIFt4XSByZGVkdXANCi0gW3hdIGNvZGVsaXRl DQotIFt4XSBiY2MNCi0gW3hdIGNjbHMNCi0gW3hdIGNsYXp5DQotIFt4XSBhZmwgKHg4NiBvbmx5 LCBuZWVkIGhlbHApDQotIFt4XSBiZWlnbmV0ICh4ODYgb25seSwgbmVlZCBobGVwKQ0KLSBbeF0g aXNwYyAoeDg2IG9ubHksIG5lZWQgaGVscCkNCi0gW3hdIGxsdm0tbGlidW53aW5kDQotIFt4XSBs aWJjeHgNCi0gW3hdIGxpYmN4eGFiaQ0KLSBbeF0gaW5jbHVkZS13aGF0LXlvdS11c2UNCg0KIyBu byBidW1wIGJ1dCB0ZXN0IGJ1aWxkIGFueXdheQ0KDQotIFt4XSBoZnNwcm9ncw0KLSBbeF0gZ29k b3QNCi0gW3hdIGZpcmVmb3gNCi0gW3hdIGZpcmVmb3gtZXNyDQotIFt4XSBiYXQNCi0gW3hdIGJs ZW5kZXINCi0gW3hdIGFyZG91cg0KLSBbeF0gcGlqdWwNCi0gW3hdIHF2NGwyDQotIFt4XSB5b3N5 cw0KCgpBIHBhdGNoIGZpbGUgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lk LXBhY2thZ2VzL3B1bGwvMjE3NTYucGF0Y2ggaXMgYXR0YWNoZWQ= --===============8035426537350543882== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-llvm10-21756.patch" RnJvbSBiYTJkYTI4NTMzNjZlMDY5MmMzODU2NTEyNmY2ZDJhNjUxYzE1NDcxIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBxNjYgPGRhbmllbEBvY3RhZm9yZ2Uub3JnPgpEYXRlOiBGcmks IDggTWF5IDIwMjAgMDU6MDY6MjggKzAyMDAKU3ViamVjdDogW1BBVENIIDAxLzI0XSBOZXcgcGFj a2FnZTogbGx2bTEwLTEwLjAuMCwgcmVidWlsZCBsbHZtOSBzdGFuZGFsb25lCgotLS0KIGNvbW1v bi9zaGxpYnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNyArLQogc3JjcGtn cy9jbGFuZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyICstCiBzcmNwa2dz L2NsYW5nLWFuYWx5emVyICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDIgKy0KIHNyY3BrZ3Mv Y2xhbmctdG9vbHMtZXh0cmEgICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQogc3JjcGtncy9s aWJsbHZtMTAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxICsKIHNyY3BrZ3MvbGxk ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQogc3JjcGtncy9sbGQt ZGV2ZWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyICstCiBzcmNwa2dzL2xsZGIg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDIgKy0KIHNyY3BrZ3MvbGxkYi1k ZXZlbCAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQogc3JjcGtncy9sbHZtMTAv ZmlsZXMvbGx2bS1Db25maWctY29uZmlnLmggICAgIHwgICA5ICsKIC4uLi9sbHZtMTAvZmlsZXMv bGx2bS1Db25maWctbGx2bS1jb25maWcuaCAgICB8ICAgOSArCiAuLi5jbGFuZy0wMDEtZml4LXVu d2luZC1jaGFpbi1pbmNsdXNpb24ucGF0Y2ggfCAgIDAKIC4uLi9jbGFuZy9jbGFuZy0wMDItYWRk LW11c2wtdHJpcGxlcy5wYXRjaCAgICB8ICAgMAogLi4uL2NsYW5nLTAwMy1wcGM2NC1keW5hbWlj LWxpbmtlci1wYXRoLnBhdGNoIHwgICAwCiAuLi4vY2xhbmcvY2xhbmctMDA0LXBwYzY0LW11c2wt ZWxmdjIucGF0Y2ggICAgfCAgMTUgKy0KIC4uLi9jb21waWxlci1ydC9jb21waWxlci1ydC1hcm12 NS5wYXRjaCAgICAgICB8ICAxMSArCiAuLi4vZmlsZXMvcGF0Y2hlcy9sbGRiL211c2wucGF0Y2gg ICAgICAgICAgICAgfCAgIDAKIC4uLi9maWxlcy9wYXRjaGVzL2xsdm0vbGx2bS0wMDEtbXVzbC5w YXRjaCAgICB8ICA1OCArKysrCiAuLi4vbGx2bS9sbHZtLTAwMi1tdXNsLXBwYzY0LWVsZnYyLnBh dGNoICAgICAgfCAgMjYgKysKIC4uLi9wYXRjaGVzL2xsdm0vbGx2bS0wMDMtc2VjdXJlcGx0LnBh dGNoICAgICB8ICAxMSArCiAuLi4vcGF0Y2hlcy9sbHZtL2xsdm0tMDA0LW92ZXJyaWRlLW9wdC5w YXRjaCAgfCAgMTggKysKIC4uLi9wYXRjaGVzL2xsdm0vbGx2bS0wMDUtcHBjLWJpZ3BpYy5wYXRj aCAgICB8ICAzOCArKysKIC4uLi9sbHZtL2xsdm0tMDA2LWFhcmNoNjQtbWZfZXhlYy5wYXRjaCAg ICAgICB8ICAyNSArKwogc3JjcGtncy9sbHZtMTAvdGVtcGxhdGUgICAgICAgICAgICAgICAgICAg ICAgIHwgMjg3ICsrKysrKysrKysrKysrKysrKwogc3JjcGtncy9sbHZtMTAvdXBkYXRlICAgICAg ICAgICAgICAgICAgICAgICAgIHwgICAyICsKIC4uLi9jb21waWxlci1ydC9jb21waWxlci1ydC1h cm12NS5wYXRjaCAgICAgICB8ICAxMSAtCiAuLi4vbGx2bS9sbHZtLTAwNy1hYXJjaDY0LW1mX2V4 ZWMucGF0Y2ggICAgICAgfCAgMjUgKysKIHNyY3BrZ3MvbGx2bTkvdGVtcGxhdGUgICAgICAgICAg ICAgICAgICAgICAgICB8IDE5MiArLS0tLS0tLS0tLS0KIDI4IGZpbGVzIGNoYW5nZWQsIDU0NSBp bnNlcnRpb25zKCspLCAyMTQgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMjAwMDAgc3JjcGtn cy9saWJsbHZtMTAKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2xsdm0xMC9maWxlcy9sbHZt LUNvbmZpZy1jb25maWcuaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbGx2bTEwL2ZpbGVz L2xsdm0tQ29uZmlnLWxsdm0tY29uZmlnLmgKIHJlbmFtZSBzcmNwa2dzL3tsbHZtOSA9PiBsbHZt MTB9L2ZpbGVzL3BhdGNoZXMvY2xhbmcvY2xhbmctMDAxLWZpeC11bndpbmQtY2hhaW4taW5jbHVz aW9uLnBhdGNoICgxMDAlKQogcmVuYW1lIHNyY3BrZ3Mve2xsdm05ID0+IGxsdm0xMH0vZmlsZXMv cGF0Y2hlcy9jbGFuZy9jbGFuZy0wMDItYWRkLW11c2wtdHJpcGxlcy5wYXRjaCAoMTAwJSkKIHJl bmFtZSBzcmNwa2dzL3tsbHZtOSA9PiBsbHZtMTB9L2ZpbGVzL3BhdGNoZXMvY2xhbmcvY2xhbmct MDAzLXBwYzY0LWR5bmFtaWMtbGlua2VyLXBhdGgucGF0Y2ggKDEwMCUpCiByZW5hbWUgc3JjcGtn cy97bGx2bTkgPT4gbGx2bTEwfS9maWxlcy9wYXRjaGVzL2NsYW5nL2NsYW5nLTAwNC1wcGM2NC1t dXNsLWVsZnYyLnBhdGNoICg2MyUpCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9sbHZtMTAv ZmlsZXMvcGF0Y2hlcy9jb21waWxlci1ydC9jb21waWxlci1ydC1hcm12NS5wYXRjaAogcmVuYW1l IHNyY3BrZ3Mve2xsdm05ID0+IGxsdm0xMH0vZmlsZXMvcGF0Y2hlcy9sbGRiL211c2wucGF0Y2gg KDEwMCUpCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9sbHZtMTAvZmlsZXMvcGF0Y2hlcy9s bHZtL2xsdm0tMDAxLW11c2wucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2xsdm0x MC9maWxlcy9wYXRjaGVzL2xsdm0vbGx2bS0wMDItbXVzbC1wcGM2NC1lbGZ2Mi5wYXRjaAogY3Jl YXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbGx2bTEwL2ZpbGVzL3BhdGNoZXMvbGx2bS9sbHZtLTAw My1zZWN1cmVwbHQucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2xsdm0xMC9maWxl cy9wYXRjaGVzL2xsdm0vbGx2bS0wMDQtb3ZlcnJpZGUtb3B0LnBhdGNoCiBjcmVhdGUgbW9kZSAx MDA2NDQgc3JjcGtncy9sbHZtMTAvZmlsZXMvcGF0Y2hlcy9sbHZtL2xsdm0tMDA1LXBwYy1iaWdw aWMucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2xsdm0xMC9maWxlcy9wYXRjaGVz L2xsdm0vbGx2bS0wMDYtYWFyY2g2NC1tZl9leGVjLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQg c3JjcGtncy9sbHZtMTAvdGVtcGxhdGUKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2xsdm0x MC91cGRhdGUKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2xsdm05L2ZpbGVzL3BhdGNoZXMv Y29tcGlsZXItcnQvY29tcGlsZXItcnQtYXJtdjUucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBz cmNwa2dzL2xsdm05L2ZpbGVzL3BhdGNoZXMvbGx2bS9sbHZtLTAwNy1hYXJjaDY0LW1mX2V4ZWMu cGF0Y2gKCmRpZmYgLS1naXQgYS9jb21tb24vc2hsaWJzIGIvY29tbW9uL3NobGlicwppbmRleCBm YThhZjY2ZjkyNS4uODM0MmUxMTcwOTIgMTAwNjQ0Ci0tLSBhL2NvbW1vbi9zaGxpYnMKKysrIGIv Y29tbW9uL3NobGlicwpAQCAtMTAyNiw5ICsxMDI2LDEwIEBAIGxpYnVjaGFyZGV0LnNvLjAgdWNo YXJkZXQtMC4wLjZfMQogbGliZ3Rrc291cmNldmlld21tLTMuMC5zby4wIGd0a3NvdXJjZXZpZXdt bS0zLjIuMF8xCiBsaWJ5YWpsLnNvLjIgeWFqbC0yLjAuMV8xCiBsaWJjb25mdXNlLnNvLjIgY29u ZnVzZS0zLjIuMV8xCi1saWJsbGRiLnNvLjkgbGxkYi05LjAuMF8xCi1saWJjbGFuZy5zby45IGNs YW5nLTkuMC4wXzEKLWxpYmNsYW5nLWNwcC5zby45IGNsYW5nLTkuMC4wXzEKK2xpYmxsZGIuc28u MTAgbGxkYi0xMC4wLjBfMQorbGliY2xhbmcuc28uMTAgY2xhbmctMTAuMC4wXzEKK2xpYmNsYW5n LWNwcC5zby4xMCBjbGFuZy0xMC4wLjBfMQorbGliTExWTS0xMC5zbyBsaWJsbHZtMTAtMTAuMC4w XzEKIGxpYkxMVk0tOS5zbyBsaWJsbHZtOS05LjAuMF8xCiBsaWJpc29mcy5zby42IGxpYmlzb2Zz LTAuNi4yNF8xCiBsaWJtcGFjay5zby4wIGxpYm1wYWNrLTEuMC41XzEKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvY2xhbmcgYi9zcmNwa2dzL2NsYW5nCmluZGV4IDE0NTQwZDdiYWQyLi41OWYyNjU3NWNi MyAxMjAwMDAKLS0tIGEvc3JjcGtncy9jbGFuZworKysgYi9zcmNwa2dzL2NsYW5nCkBAIC0xICsx IEBACi1sbHZtOQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKK2xsdm0xMApcIE5vIG5ld2xp bmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY2xhbmctYW5hbHl6ZXIgYi9z cmNwa2dzL2NsYW5nLWFuYWx5emVyCmluZGV4IDE0NTQwZDdiYWQyLi41OWYyNjU3NWNiMyAxMjAw MDAKLS0tIGEvc3JjcGtncy9jbGFuZy1hbmFseXplcgorKysgYi9zcmNwa2dzL2NsYW5nLWFuYWx5 emVyCkBAIC0xICsxIEBACi1sbHZtOQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKK2xsdm0x MApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY2xhbmct dG9vbHMtZXh0cmEgYi9zcmNwa2dzL2NsYW5nLXRvb2xzLWV4dHJhCmluZGV4IDE0NTQwZDdiYWQy Li41OWYyNjU3NWNiMyAxMjAwMDAKLS0tIGEvc3JjcGtncy9jbGFuZy10b29scy1leHRyYQorKysg Yi9zcmNwa2dzL2NsYW5nLXRvb2xzLWV4dHJhCkBAIC0xICsxIEBACi1sbHZtOQpcIE5vIG5ld2xp bmUgYXQgZW5kIG9mIGZpbGUKK2xsdm0xMApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvbGlibGx2bTEwIGIvc3JjcGtncy9saWJsbHZtMTAKbmV3IGZpbGUg bW9kZSAxMjAwMDAKaW5kZXggMDAwMDAwMDAwMDAuLjU5ZjI2NTc1Y2IzCi0tLSAvZGV2L251bGwK KysrIGIvc3JjcGtncy9saWJsbHZtMTAKQEAgLTAsMCArMSBAQAorbGx2bTEwClwgTm8gbmV3bGlu ZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9sbGQgYi9zcmNwa2dzL2xsZApp bmRleCAxNDU0MGQ3YmFkMi4uNTlmMjY1NzVjYjMgMTIwMDAwCi0tLSBhL3NyY3BrZ3MvbGxkCisr KyBiL3NyY3BrZ3MvbGxkCkBAIC0xICsxIEBACi1sbHZtOQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9m IGZpbGUKK2xsdm0xMApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvbGxkLWRldmVsIGIvc3JjcGtncy9sbGQtZGV2ZWwKaW5kZXggMTQ1NDBkN2JhZDIuLjU5 ZjI2NTc1Y2IzIDEyMDAwMAotLS0gYS9zcmNwa2dzL2xsZC1kZXZlbAorKysgYi9zcmNwa2dzL2xs ZC1kZXZlbApAQCAtMSArMSBAQAotbGx2bTkKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCits bHZtMTAKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xs ZGIgYi9zcmNwa2dzL2xsZGIKaW5kZXggMTQ1NDBkN2JhZDIuLjU5ZjI2NTc1Y2IzIDEyMDAwMAot LS0gYS9zcmNwa2dzL2xsZGIKKysrIGIvc3JjcGtncy9sbGRiCkBAIC0xICsxIEBACi1sbHZtOQpc IE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKK2xsdm0xMApcIE5vIG5ld2xpbmUgYXQgZW5kIG9m IGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGxkYi1kZXZlbCBiL3NyY3BrZ3MvbGxkYi1kZXZl bAppbmRleCAxNDU0MGQ3YmFkMi4uNTlmMjY1NzVjYjMgMTIwMDAwCi0tLSBhL3NyY3BrZ3MvbGxk Yi1kZXZlbAorKysgYi9zcmNwa2dzL2xsZGItZGV2ZWwKQEAgLTEgKzEgQEAKLWxsdm05ClwgTm8g bmV3bGluZSBhdCBlbmQgb2YgZmlsZQorbGx2bTEwClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmls ZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9sbHZtMTAvZmlsZXMvbGx2bS1Db25maWctY29uZmlnLmgg Yi9zcmNwa2dzL2xsdm0xMC9maWxlcy9sbHZtLUNvbmZpZy1jb25maWcuaApuZXcgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uYzM2OWI0NTUxZjcKLS0tIC9kZXYvbnVsbAorKysg Yi9zcmNwa2dzL2xsdm0xMC9maWxlcy9sbHZtLUNvbmZpZy1jb25maWcuaApAQCAtMCwwICsxLDkg QEAKKyNpbmNsdWRlIDxiaXRzL3dvcmRzaXplLmg+CisKKyNpZiBfX1dPUkRTSVpFID09IDMyCisj aW5jbHVkZSAiY29uZmlnLTMyLmgiCisjZWxpZiBfX1dPUkRTSVpFID09IDY0CisjaW5jbHVkZSAi Y29uZmlnLTY0LmgiCisjZWxzZQorI2Vycm9yICJVbmtub3duIHdvcmQgc2l6ZSIKKyNlbmRpZgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9sbHZtMTAvZmlsZXMvbGx2bS1Db25maWctbGx2bS1jb25maWcu aCBiL3NyY3BrZ3MvbGx2bTEwL2ZpbGVzL2xsdm0tQ29uZmlnLWxsdm0tY29uZmlnLmgKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjJmYTA4YzliZTY5Ci0tLSAvZGV2L251 bGwKKysrIGIvc3JjcGtncy9sbHZtMTAvZmlsZXMvbGx2bS1Db25maWctbGx2bS1jb25maWcuaApA QCAtMCwwICsxLDkgQEAKKyNpbmNsdWRlIDxiaXRzL3dvcmRzaXplLmg+CisKKyNpZiBfX1dPUkRT SVpFID09IDMyCisjaW5jbHVkZSAibGx2bS1jb25maWctMzIuaCIKKyNlbGlmIF9fV09SRFNJWkUg PT0gNjQKKyNpbmNsdWRlICJsbHZtLWNvbmZpZy02NC5oIgorI2Vsc2UKKyNlcnJvciAiVW5rbm93 biB3b3JkIHNpemUiCisjZW5kaWYKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGx2bTkvZmlsZXMvcGF0 Y2hlcy9jbGFuZy9jbGFuZy0wMDEtZml4LXVud2luZC1jaGFpbi1pbmNsdXNpb24ucGF0Y2ggYi9z cmNwa2dzL2xsdm0xMC9maWxlcy9wYXRjaGVzL2NsYW5nL2NsYW5nLTAwMS1maXgtdW53aW5kLWNo YWluLWluY2x1c2lvbi5wYXRjaApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gc3Jj cGtncy9sbHZtOS9maWxlcy9wYXRjaGVzL2NsYW5nL2NsYW5nLTAwMS1maXgtdW53aW5kLWNoYWlu LWluY2x1c2lvbi5wYXRjaApyZW5hbWUgdG8gc3JjcGtncy9sbHZtMTAvZmlsZXMvcGF0Y2hlcy9j bGFuZy9jbGFuZy0wMDEtZml4LXVud2luZC1jaGFpbi1pbmNsdXNpb24ucGF0Y2gKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvbGx2bTkvZmlsZXMvcGF0Y2hlcy9jbGFuZy9jbGFuZy0wMDItYWRkLW11c2wt dHJpcGxlcy5wYXRjaCBiL3NyY3BrZ3MvbGx2bTEwL2ZpbGVzL3BhdGNoZXMvY2xhbmcvY2xhbmct MDAyLWFkZC1tdXNsLXRyaXBsZXMucGF0Y2gKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBm cm9tIHNyY3BrZ3MvbGx2bTkvZmlsZXMvcGF0Y2hlcy9jbGFuZy9jbGFuZy0wMDItYWRkLW11c2wt dHJpcGxlcy5wYXRjaApyZW5hbWUgdG8gc3JjcGtncy9sbHZtMTAvZmlsZXMvcGF0Y2hlcy9jbGFu Zy9jbGFuZy0wMDItYWRkLW11c2wtdHJpcGxlcy5wYXRjaApkaWZmIC0tZ2l0IGEvc3JjcGtncy9s bHZtOS9maWxlcy9wYXRjaGVzL2NsYW5nL2NsYW5nLTAwMy1wcGM2NC1keW5hbWljLWxpbmtlci1w YXRoLnBhdGNoIGIvc3JjcGtncy9sbHZtMTAvZmlsZXMvcGF0Y2hlcy9jbGFuZy9jbGFuZy0wMDMt cHBjNjQtZHluYW1pYy1saW5rZXItcGF0aC5wYXRjaApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVu YW1lIGZyb20gc3JjcGtncy9sbHZtOS9maWxlcy9wYXRjaGVzL2NsYW5nL2NsYW5nLTAwMy1wcGM2 NC1keW5hbWljLWxpbmtlci1wYXRoLnBhdGNoCnJlbmFtZSB0byBzcmNwa2dzL2xsdm0xMC9maWxl cy9wYXRjaGVzL2NsYW5nL2NsYW5nLTAwMy1wcGM2NC1keW5hbWljLWxpbmtlci1wYXRoLnBhdGNo CmRpZmYgLS1naXQgYS9zcmNwa2dzL2xsdm05L2ZpbGVzL3BhdGNoZXMvY2xhbmcvY2xhbmctMDA0 LXBwYzY0LW11c2wtZWxmdjIucGF0Y2ggYi9zcmNwa2dzL2xsdm0xMC9maWxlcy9wYXRjaGVzL2Ns YW5nL2NsYW5nLTAwNC1wcGM2NC1tdXNsLWVsZnYyLnBhdGNoCnNpbWlsYXJpdHkgaW5kZXggNjMl CnJlbmFtZSBmcm9tIHNyY3BrZ3MvbGx2bTkvZmlsZXMvcGF0Y2hlcy9jbGFuZy9jbGFuZy0wMDQt cHBjNjQtbXVzbC1lbGZ2Mi5wYXRjaApyZW5hbWUgdG8gc3JjcGtncy9sbHZtMTAvZmlsZXMvcGF0 Y2hlcy9jbGFuZy9jbGFuZy0wMDQtcHBjNjQtbXVzbC1lbGZ2Mi5wYXRjaAppbmRleCAxNGRmYzAw N2VkMy4uZjFhZjFiNzliNWYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbGx2bTkvZmlsZXMvcGF0Y2hl cy9jbGFuZy9jbGFuZy0wMDQtcHBjNjQtbXVzbC1lbGZ2Mi5wYXRjaAorKysgYi9zcmNwa2dzL2xs dm0xMC9maWxlcy9wYXRjaGVzL2NsYW5nL2NsYW5nLTAwNC1wcGM2NC1tdXNsLWVsZnYyLnBhdGNo CkBAIC0xLDI2ICsxLDI5IEBACiAtLS0gYS9saWIvQmFzaWMvVGFyZ2V0cy9QUEMuaAogKysrIGIv bGliL0Jhc2ljL1RhcmdldHMvUFBDLmgKLUBAIC0zNzYsMTEgKzM3NiwxMSBAQCBwdWJsaWM6CitA QCAtMzg2LDExICszODYsMTAgQEAgcHVibGljOgogIAogICAgICBpZiAoKFRyaXBsZS5nZXRBcmNo KCkgPT0gbGx2bTo6VHJpcGxlOjpwcGM2NGxlKSkgewogICAgICAgIHJlc2V0RGF0YUxheW91dCgi ZS1tOmUtaTY0OjY0LW4zMjo2NCIpOwogLSAgICAgIEFCSSA9ICJlbGZ2MiI7CiAgICAgIH0gZWxz ZSB7CiAgICAgICAgcmVzZXREYXRhTGF5b3V0KCJFLW06ZS1pNjQ6NjQtbjMyOjY0Iik7Ci0tICAg ICAgQUJJID0gVHJpcGxlLmdldEVudmlyb25tZW50KCkgPT0gbGx2bTo6VHJpcGxlOjpFTEZ2MiA/ ICJlbGZ2MiIgOiAiZWxmdjEiOworLSAgICAgIEFCSSA9ICJlbGZ2MSI7CiAgICAgIH0KLSsgICAg LyogZGVmYXVsdCB0byBlbGZ2MiBhbHdheXMsIGlnbm9yZSBsbHZtJ3MgZWxmdjIgdHJpcGxlcyAq LwogKyAgICBBQkkgPSAiZWxmdjIiOwogIAogICAgICBpZiAoVHJpcGxlLmdldE9TKCkgPT0gbGx2 bTo6VHJpcGxlOjpBSVgpCiAgICAgICAgU3VpdGFibGVBbGlnbiA9IDY0OwogLS0tIGEvbGliL0Ry aXZlci9Ub29sQ2hhaW5zL0NsYW5nLmNwcAogKysrIGIvbGliL0RyaXZlci9Ub29sQ2hhaW5zL0Ns YW5nLmNwcAotQEAgLTE4MDQsNyArMTgwNCw3IEBAIHZvaWQgQ2xhbmc6OkFkZFBQQ1RhcmdldEFy Z3MoY29uc3QgQXJnTGlzdCAmQXJncywKK0BAIC0xOTE4LDExICsxOTE4LDcgQEAgdm9pZCBDbGFu Zzo6QWRkUFBDVGFyZ2V0QXJncyhjb25zdCBBcmdMaXN0ICZBcmdzLAorICAgICAgICAgQUJJTmFt ZSA9ICJlbGZ2MS1xcHgiOwogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQotIAotLSAgICAgIEFC SU5hbWUgPSAiZWxmdjEiOworLQorLSAgICAgIGlmIChULmlzTXVzbCgpIHx8IChULmlzT1NGcmVl QlNEKCkgJiYgVC5nZXRPU01ham9yVmVyc2lvbigpID49IDEzKSkKKy0gICAgICAgIEFCSU5hbWUg PSAiZWxmdjIiOworLSAgICAgIGVsc2UKKy0gICAgICAgIEFCSU5hbWUgPSAiZWxmdjEiOwogKyAg ICAgIEFCSU5hbWUgPSAiZWxmdjIiOwogICAgICAgIGJyZWFrOwogICAgICB9CmRpZmYgLS1naXQg YS9zcmNwa2dzL2xsdm0xMC9maWxlcy9wYXRjaGVzL2NvbXBpbGVyLXJ0L2NvbXBpbGVyLXJ0LWFy bXY1LnBhdGNoIGIvc3JjcGtncy9sbHZtMTAvZmlsZXMvcGF0Y2hlcy9jb21waWxlci1ydC9jb21w aWxlci1ydC1hcm12NS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw MC4uODkzZGQyNDRjNWIKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2xsdm0xMC9maWxlcy9w YXRjaGVzL2NvbXBpbGVyLXJ0L2NvbXBpbGVyLXJ0LWFybXY1LnBhdGNoCkBAIC0wLDAgKzEsMTEg QEAKKy0tLSBjb21waWxlci1ydC0xMC4wLjAuc3JjL2xpYi9idWlsdGlucy9DTWFrZUxpc3RzLnR4 dAorKysrIGNvbXBpbGVyLXJ0LTEwLjAuMC5zcmMvbGliL2J1aWx0aW5zL0NNYWtlTGlzdHMudHh0 CitAQCAtNDI4LDggKzQyOCw2IEBACisgKQorIHNldChhcm1fVGh1bWIxX1NPVVJDRVMKKyAgICR7 YXJtX1RodW1iMV9KVF9TT1VSQ0VTfQorLSAgJHthcm1fVGh1bWIxX1NqTGpfRUhfU09VUkNFU30K Ky0gICR7YXJtX1RodW1iMV9WRlB2Ml9TT1VSQ0VTfQorICAgJHthcm1fVGh1bWIxX2ljYWNoZV9T T1VSQ0VTfQorICkKKyAKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGx2bTkvZmlsZXMvcGF0Y2hlcy9s bGRiL211c2wucGF0Y2ggYi9zcmNwa2dzL2xsdm0xMC9maWxlcy9wYXRjaGVzL2xsZGIvbXVzbC5w YXRjaApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gc3JjcGtncy9sbHZtOS9maWxl cy9wYXRjaGVzL2xsZGIvbXVzbC5wYXRjaApyZW5hbWUgdG8gc3JjcGtncy9sbHZtMTAvZmlsZXMv cGF0Y2hlcy9sbGRiL211c2wucGF0Y2gKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGx2bTEwL2ZpbGVz L3BhdGNoZXMvbGx2bS9sbHZtLTAwMS1tdXNsLnBhdGNoIGIvc3JjcGtncy9sbHZtMTAvZmlsZXMv cGF0Y2hlcy9sbHZtL2xsdm0tMDAxLW11c2wucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggMDAwMDAwMDAwMDAuLmEwZWRkYmY1OGJlCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9s bHZtMTAvZmlsZXMvcGF0Y2hlcy9sbHZtL2xsdm0tMDAxLW11c2wucGF0Y2gKQEAgLTAsMCArMSw1 OCBAQAorRnJvbSBmYWNhM2ZiZDE1ZDBjMzEwODQ5M2MzYzU0Y2Q5MzEzOGUwNDlhYzQzIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogQW5kcmVhIEJyYW5jYWxlb25pIDxtaXdheGVAZ21h aWwuY29tPgorRGF0ZTogVHVlLCA4IFNlcCAyMDE1IDIyOjAzOjAyICswMjAwCitTdWJqZWN0OiBb UEFUQ0ggMy8zXSBtdXNsCisKKy0tLQorIGluY2x1ZGUvbGx2bS9BbmFseXNpcy9UYXJnZXRMaWJy YXJ5SW5mby5oIHwgOSArKysrKysrKysKKyBsaWIvU3VwcG9ydC9EeW5hbWljTGlicmFyeS5jcHAg ICAgICAgICAgICB8IDIgKy0KKyBsaWIvU3VwcG9ydC9Vbml4L1NpZ25hbHMuaW5jICAgICAgICAg ICAgICB8IDYgKysrLS0tCisgdXRpbHMvdW5pdHRlc3QvZ29vZ2xldGVzdC9zcmMvZ3Rlc3QuY2Mg ICAgfCAxICsKKyA1IGZpbGVzIGNoYW5nZWQsIDE3IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25z KC0pCisKK2RpZmYgLS1naXQgYS9pbmNsdWRlL2xsdm0vQW5hbHlzaXMvVGFyZ2V0TGlicmFyeUlu Zm8uaCBiL2luY2x1ZGUvbGx2bS9BbmFseXNpcy9UYXJnZXRMaWJyYXJ5SW5mby5oCitpbmRleCBl MGExZWUzLi40NjViNjVhIDEwMDY0NAorLS0tIGEvaW5jbHVkZS9sbHZtL0FuYWx5c2lzL1Rhcmdl dExpYnJhcnlJbmZvLmgKKysrKyBiL2luY2x1ZGUvbGx2bS9BbmFseXNpcy9UYXJnZXRMaWJyYXJ5 SW5mby5oCitAQCAtMTgsNiArMTgsMTUgQEAKKyAjaW5jbHVkZSAibGx2bS9JUi9QYXNzTWFuYWdl ci5oIgorICNpbmNsdWRlICJsbHZtL1Bhc3MuaCIKKyAKKysjdW5kZWYgZm9wZW42NAorKyN1bmRl ZiBmc2Vla282NAorKyN1bmRlZiBmc3RhdDY0CisrI3VuZGVmIGZzdGF0dmZzNjQKKysjdW5kZWYg ZnRlbGxvNjQKKysjdW5kZWYgbHN0YXQ2NAorKyN1bmRlZiBzdGF0NjQKKysjdW5kZWYgdG1wZmls ZTY0CisrCisgbmFtZXNwYWNlIGxsdm0geworIHRlbXBsYXRlIDx0eXBlbmFtZSBUPiBjbGFzcyBB cnJheVJlZjsKKyAKK2RpZmYgLS1naXQgYS91dGlscy91bml0dGVzdC9nb29nbGV0ZXN0L3NyYy9n dGVzdC5jYyBiL3V0aWxzL3VuaXR0ZXN0L2dvb2dsZXRlc3Qvc3JjL2d0ZXN0LmNjCitpbmRleCA1 NzgwNzY0Li4xZDU0OGMxIDEwMDY0NAorLS0tIGEvdXRpbHMvdW5pdHRlc3QvZ29vZ2xldGVzdC9z cmMvZ3Rlc3QuY2MKKysrKyBiL3V0aWxzL3VuaXR0ZXN0L2dvb2dsZXRlc3Qvc3JjL2d0ZXN0LmNj CitAQCAtMTI4LDYgKzEyOCw3IEBACisgCisgI2lmIEdURVNUX0NBTl9TVFJFQU1fUkVTVUxUU18K KyAjIGluY2x1ZGUgPGFycGEvaW5ldC5oPiAgLy8gTk9MSU5UCisrIyBpbmNsdWRlIDxzeXMvc29j a2V0Lmg+ICAvLyBOT0xJTlQKKyAjIGluY2x1ZGUgPG5ldGRiLmg+ICAvLyBOT0xJTlQKKyAjIGlu Y2x1ZGUgPHN5cy9zb2NrZXQuaD4gIC8vIE5PTElOVAorICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+ ICAvLyBOT0xJTlQKKy0tIAorMi41LjEKKworLS0tIGEvbGliL1N1cHBvcnQvVW5peC9EeW5hbWlj TGlicmFyeS5pbmMKKysrKyBiL2xpYi9TdXBwb3J0L1VuaXgvRHluYW1pY0xpYnJhcnkuaW5jCitA QCAtMTAyLDcgKzEwMiw3IEBAIHN0YXRpYyB2b2lkICpEb1NlYXJjaChjb25zdCBjaGFyKiBTeW1i b2xOYW1lKSB7CisgCisgLy8gVGhpcyBtYWNybyByZXR1cm5zIHRoZSBhZGRyZXNzIG9mIGEgd2Vs bC1rbm93biwgZXhwbGljaXQgc3ltYm9sCisgI2RlZmluZSBFWFBMSUNJVF9TWU1CT0woU1lNKSBc CistICAgaWYgKCFzdHJjbXAoU3ltYm9sTmFtZSwgI1NZTSkpIHJldHVybiAmU1lNCisrICAgaWYg KCFzdHJjbXAoU3ltYm9sTmFtZSwgI1NZTSkpIHJldHVybiAodm9pZCAqKSZTWU0KKyAKKyAvLyBV bmRlciBnbGliYyB3ZSBoYXZlIGEgd2VpcmQgc2l0dWF0aW9uLiBUaGUgc3RkZXJyL291dC9pbiBz eW1ib2xzIGFyZSBib3RoCisgLy8gbWFjcm9zIGFuZCBnbG9iYWwgdmFyaWFibGVzIGJlY2F1c2Ug b2Ygc3RhbmRhcmRzIHJlcXVpcmVtZW50cy4gU28sIHdlCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xs dm0xMC9maWxlcy9wYXRjaGVzL2xsdm0vbGx2bS0wMDItbXVzbC1wcGM2NC1lbGZ2Mi5wYXRjaCBi L3NyY3BrZ3MvbGx2bTEwL2ZpbGVzL3BhdGNoZXMvbGx2bS9sbHZtLTAwMi1tdXNsLXBwYzY0LWVs ZnYyLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi4xZmY4YWFh MjM5YwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbGx2bTEwL2ZpbGVzL3BhdGNoZXMvbGx2 bS9sbHZtLTAwMi1tdXNsLXBwYzY0LWVsZnYyLnBhdGNoCkBAIC0wLDAgKzEsMjYgQEAKK1RoaXMg cGF0Y2hlcyBMTFZNIHRvIHVzZSBFTEZ2MiBvbiBwcGM2NCB1bmNvZGl0aW9uYWxseSB1bmxlc3Mg b3ZlcnJpZGRlbi4gV2UKK25lZWQgdGhpcyBiZWNhdXNlIHVubGlrZSBtb3N0IGRpc3Ryb3Mgd2Ug dXNlIEVMRnYyIGZvciBib3RoIGdsaWJjIGFuZCBtdXNsCitvbiBiaWcgZW5kaWFuIHBwYzY0Lgor CistLS0gYS9saWIvVGFyZ2V0L1Bvd2VyUEMvUFBDVGFyZ2V0TWFjaGluZS5jcHAKKysrKyBiL2xp Yi9UYXJnZXQvUG93ZXJQQy9QUENUYXJnZXRNYWNoaW5lLmNwcAorQEAgLTIxMyw5ICsyMTMsOCBA QCBzdGF0aWMgUFBDVGFyZ2V0TWFjaGluZTo6UFBDQUJJIGNvbXB1dGVUYXJnZXRBQkkoY29uc3Qg VHJpcGxlICZUVCwKKyAKKyAgIHN3aXRjaCAoVFQuZ2V0QXJjaCgpKSB7CisgICBjYXNlIFRyaXBs ZTo6cHBjNjRsZToKKy0gICAgcmV0dXJuIFBQQ1RhcmdldE1hY2hpbmU6OlBQQ19BQklfRUxGdjI7 CisgICBjYXNlIFRyaXBsZTo6cHBjNjQ6CistICAgIHJldHVybiBQUENUYXJnZXRNYWNoaW5lOjpQ UENfQUJJX0VMRnYxOworKyAgICByZXR1cm4gUFBDVGFyZ2V0TWFjaGluZTo6UFBDX0FCSV9FTEZ2 MjsKKyAgIGRlZmF1bHQ6CisgICAgIHJldHVybiBQUENUYXJnZXRNYWNoaW5lOjpQUENfQUJJX1VO S05PV047CisgICB9CistLS0gYS90ZXN0L0NvZGVHZW4vUG93ZXJQQy9wcGM2NC1lbGYtYWJpLmxs CisrKysgYi90ZXN0L0NvZGVHZW4vUG93ZXJQQy9wcGM2NC1lbGYtYWJpLmxsCitAQCAtMSw0ICsx LDUgQEAKKy07IFJVTjogbGxjIC12ZXJpZnktbWFjaGluZWluc3RycyAtbXRyaXBsZT1wb3dlcnBj NjQtdW5rbm93bi1saW51eC1nbnUgPCAlcyB8IEZpbGVDaGVjayAlcyAtY2hlY2stcHJlZml4PUNI RUNLLUVMRnYxCisrOyBSVU46IGxsYyAtdmVyaWZ5LW1hY2hpbmVpbnN0cnMgLW10cmlwbGU9cG93 ZXJwYzY0LXVua25vd24tbGludXgtZ251IDwgJXMgfCBGaWxlQ2hlY2sgJXMgLWNoZWNrLXByZWZp eD1DSEVDSy1FTEZ2MgorKzsgUlVOOiBsbGMgLXZlcmlmeS1tYWNoaW5laW5zdHJzIC1tdHJpcGxl PXBvd2VycGM2NC11bmtub3duLWxpbnV4LW11c2wgPCAlcyB8IEZpbGVDaGVjayAlcyAtY2hlY2st cHJlZml4PUNIRUNLLUVMRnYyCisgOyBSVU46IGxsYyAtdmVyaWZ5LW1hY2hpbmVpbnN0cnMgLW10 cmlwbGU9cG93ZXJwYzY0LXVua25vd24tbGludXgtZ251IC10YXJnZXQtYWJpIGVsZnYxIDwgJXMg fCBGaWxlQ2hlY2sgJXMgLWNoZWNrLXByZWZpeD1DSEVDSy1FTEZ2MQorIDsgUlVOOiBsbGMgLXZl cmlmeS1tYWNoaW5laW5zdHJzIC1tdHJpcGxlPXBvd2VycGM2NC11bmtub3duLWxpbnV4LWdudSAt dGFyZ2V0LWFiaSBlbGZ2MiA8ICVzIHwgRmlsZUNoZWNrICVzIC1jaGVjay1wcmVmaXg9Q0hFQ0st RUxGdjIKKyA7IFJVTjogbGxjIC12ZXJpZnktbWFjaGluZWluc3RycyAtbXRyaXBsZT1wb3dlcnBj NjRsZS11bmtub3duLWxpbnV4LWdudSA8ICVzIHwgRmlsZUNoZWNrICVzIC1jaGVjay1wcmVmaXg9 Q0hFQ0stRUxGdjIKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGx2bTEwL2ZpbGVzL3BhdGNoZXMvbGx2 bS9sbHZtLTAwMy1zZWN1cmVwbHQucGF0Y2ggYi9zcmNwa2dzL2xsdm0xMC9maWxlcy9wYXRjaGVz L2xsdm0vbGx2bS0wMDMtc2VjdXJlcGx0LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IDAwMDAwMDAwMDAwLi5mY2JhYmE4NjMzNQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbGx2 bTEwL2ZpbGVzL3BhdGNoZXMvbGx2bS9sbHZtLTAwMy1zZWN1cmVwbHQucGF0Y2gKQEAgLTAsMCAr MSwxMSBAQAorLS0tIGxsdm0vbGliL1RhcmdldC9Qb3dlclBDL1BQQ1N1YnRhcmdldC5jcHAKKysr KyBsbHZtL2xpYi9UYXJnZXQvUG93ZXJQQy9QUENTdWJ0YXJnZXQuY3BwCitAQCAtMTUwLDcgKzE1 MCw3IEBAIHZvaWQgUFBDU3VidGFyZ2V0Ojppbml0U3VidGFyZ2V0RmVhdHVyZXMoU3RyaW5nUmVm IENQVSwgU3RyaW5nUmVmIEZTKSB7CisgCisgICBpZiAoKFRhcmdldFRyaXBsZS5pc09TRnJlZUJT RCgpICYmIFRhcmdldFRyaXBsZS5nZXRPU01ham9yVmVyc2lvbigpID49IDEzKSB8fAorICAgICAg IFRhcmdldFRyaXBsZS5pc09TTmV0QlNEKCkgfHwgVGFyZ2V0VHJpcGxlLmlzT1NPcGVuQlNEKCkg fHwKKy0gICAgICBUYXJnZXRUcmlwbGUuaXNNdXNsKCkpCisrICAgICAgaXNUYXJnZXRMaW51eCgp KQorICAgICBTZWN1cmVQbHQgPSB0cnVlOworIAorICAgaWYgKEhhc1NQRSAmJiBJc1BQQzY0KQpk aWZmIC0tZ2l0IGEvc3JjcGtncy9sbHZtMTAvZmlsZXMvcGF0Y2hlcy9sbHZtL2xsdm0tMDA0LW92 ZXJyaWRlLW9wdC5wYXRjaCBiL3NyY3BrZ3MvbGx2bTEwL2ZpbGVzL3BhdGNoZXMvbGx2bS9sbHZt LTAwNC1vdmVycmlkZS1vcHQucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw MDAwMDAuLjMwZDFlMTRlMTkzCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9sbHZtMTAvZmls ZXMvcGF0Y2hlcy9sbHZtL2xsdm0tMDA0LW92ZXJyaWRlLW9wdC5wYXRjaApAQCAtMCwwICsxLDE4 IEBACitUaGlzIGFsbG93cyB1cyB0byBvdmVycmlkZSB0aGUgb3B0aW1pemF0aW9uIGxldmVsIGFz IG5vdCBhbGwgcGxhdGZvcm1zIGNhbgorZGVhbCB3aXRoIC1PMy4KKworLS0tIGEvQ01ha2VMaXN0 cy50eHQKKysrKyBiL0NNYWtlTGlzdHMudHh0CitAQCAtODkzLDYgKzg5MywxMiBAQCBpZiggTUlO R1cgQU5EIE5PVCAiJHtDTUFLRV9DWFhfQ09NUElMRVJfSUR9IiBNQVRDSEVTICJDbGFuZyIgKQor ICAgbGx2bV9yZXBsYWNlX2NvbXBpbGVyX29wdGlvbihDTUFLRV9DWFhfRkxBR1NfUkVMRUFTRSAi LU8zIiAiLU8yIikKKyBlbmRpZigpCisgCisrc2V0KFZPSURfQ1hYX09QVF9GTEFHUyAiIiBDQUNI RSBTVFJJTkcgIk9wdGltaXphdGlvbiBsZXZlbCB0byB1c2UiKQorKworK2lmKE5PVCBWT0lEX0NY WF9PUFRfRkxBR1MgU1RSRVFVQUwgIiIpCisrICBsbHZtX3JlcGxhY2VfY29tcGlsZXJfb3B0aW9u KENNQUtFX0NYWF9GTEFHU19SRUxFQVNFICItTzMiICIke1ZPSURfQ1hYX09QVF9GTEFHU30iKQor K2VuZGlmKCkKKysKKyAjIFB1dCB0aGlzIGJlZm9yZSB0YmxnZW4uIEVsc2Ugd2UgaGF2ZSBhIGNp cmN1bGFyIGRlcGVuZGVuY2UuCisgYWRkX3N1YmRpcmVjdG9yeShsaWIvRGVtYW5nbGUpCisgYWRk X3N1YmRpcmVjdG9yeShsaWIvU3VwcG9ydCkKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGx2bTEwL2Zp bGVzL3BhdGNoZXMvbGx2bS9sbHZtLTAwNS1wcGMtYmlncGljLnBhdGNoIGIvc3JjcGtncy9sbHZt MTAvZmlsZXMvcGF0Y2hlcy9sbHZtL2xsdm0tMDA1LXBwYy1iaWdwaWMucGF0Y2gKbmV3IGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjRlMDA0NWQ5N2QzCi0tLSAvZGV2L251bGwK KysrIGIvc3JjcGtncy9sbHZtMTAvZmlsZXMvcGF0Y2hlcy9sbHZtL2xsdm0tMDA1LXBwYy1iaWdw aWMucGF0Y2gKQEAgLTAsMCArMSwzOCBAQAorRnJvbSBmM2RiZGQ0OWMwNmJmYWZjMWQ2MTM4MDk0 Y2Y0Mjg4OWMxNGQzOGI2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogU2FtdWVsIEhv bGxhbmQgPHNhbXVlbEBzaG9sbGFuZC5vcmc+CitEYXRlOiBTdW4sIDMgTm92IDIwMTkgMTA6NTc6 MjcgLTA2MDAKK1N1YmplY3Q6IFtQQVRDSF0gW0xMVk1dW1Bvd2VyUENdIEFzc3VtZSBCaWdQSUMg aWYgbm8gUElDIGxldmVsIGlzIHNwZWNpZmllZAorCistLS0KKyBsbHZtL2xpYi9UYXJnZXQvUG93 ZXJQQy9QUENBc21QcmludGVyLmNwcCAgfCAyICstCisgbGx2bS9saWIvVGFyZ2V0L1Bvd2VyUEMv UFBDTUNJbnN0TG93ZXIuY3BwIHwgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25z KCspLCAyIGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvbGx2bS9saWIvVGFyZ2V0L1Bvd2Vy UEMvUFBDQXNtUHJpbnRlci5jcHAgYi9sbHZtL2xpYi9UYXJnZXQvUG93ZXJQQy9QUENBc21Qcmlu dGVyLmNwcAoraW5kZXggMjY5Yjg0YjRlOGQuLjAzMjQ2YTUyNDJjIDEwMDY0NAorLS0tIGxsdm0v bGliL1RhcmdldC9Qb3dlclBDL1BQQ0FzbVByaW50ZXIuY3BwCisrKysgbGx2bS9saWIvVGFyZ2V0 L1Bvd2VyUEMvUFBDQXNtUHJpbnRlci5jcHAKK0BAIC00ODgsNyArNDg4LDcgQEAgdm9pZCBQUENB c21QcmludGVyOjpFbWl0VGxzQ2FsbChjb25zdCBNYWNoaW5lSW5zdHIgKk1JLAorIAorICAgLy8g QWRkIDMyNzY4IG9mZnNldCB0byB0aGUgc3ltYm9sIHNvIHdlIGZvbGxvdyB1cCB0aGUgbGF0ZXN0 IEdPVC9QTFQgQUJJLgorICAgaWYgKEtpbmQgPT0gTUNTeW1ib2xSZWZFeHByOjpWS19QTFQgJiYg U3VidGFyZ2V0LT5pc1NlY3VyZVBsdCgpICYmCistICAgICAgTS0+Z2V0UElDTGV2ZWwoKSA9PSBQ SUNMZXZlbDo6QmlnUElDKQorKyAgICAgIE0tPmdldFBJQ0xldmVsKCkgIT0gUElDTGV2ZWw6OlNt YWxsUElDKQorICAgICBUbHNSZWYgPSBNQ0JpbmFyeUV4cHI6OmNyZWF0ZUFkZCgKKyAgICAgICAg IFRsc1JlZiwgTUNDb25zdGFudEV4cHI6OmNyZWF0ZSgzMjc2OCwgT3V0Q29udGV4dCksIE91dENv bnRleHQpOworICAgY29uc3QgTWFjaGluZU9wZXJhbmQgJk1PID0gTUktPmdldE9wZXJhbmQoMik7 CitkaWZmIC0tZ2l0IGEvbGx2bS9saWIvVGFyZ2V0L1Bvd2VyUEMvUFBDTUNJbnN0TG93ZXIuY3Bw IGIvbGx2bS9saWIvVGFyZ2V0L1Bvd2VyUEMvUFBDTUNJbnN0TG93ZXIuY3BwCitpbmRleCAwMjdl NmJkMWJhMC4uYWU0NjFmNGVlYTkgMTAwNjQ0CistLS0gbGx2bS9saWIvVGFyZ2V0L1Bvd2VyUEMv UFBDTUNJbnN0TG93ZXIuY3BwCisrKysgbGx2bS9saWIvVGFyZ2V0L1Bvd2VyUEMvUFBDTUNJbnN0 TG93ZXIuY3BwCitAQCAtMTE2LDcgKzExNiw3IEBAIHN0YXRpYyBNQ09wZXJhbmQgR2V0U3ltYm9s UmVmKGNvbnN0IE1hY2hpbmVPcGVyYW5kICZNTywgY29uc3QgTUNTeW1ib2wgKlN5bWJvbCwKKyAg IGNvbnN0IE1DRXhwciAqRXhwciA9IE1DU3ltYm9sUmVmRXhwcjo6Y3JlYXRlKFN5bWJvbCwgUmVm S2luZCwgQ3R4KTsKKyAgIC8vIElmIC1tc2VjdXJlLXBsdCAtZlBJQywgYWRkIDMyNzY4IHRvIHN5 bWJvbC4KKyAgIGlmIChTdWJ0YXJnZXQtPmlzU2VjdXJlUGx0KCkgJiYgVE0uaXNQb3NpdGlvbklu ZGVwZW5kZW50KCkgJiYKKy0gICAgICBNLT5nZXRQSUNMZXZlbCgpID09IFBJQ0xldmVsOjpCaWdQ SUMgJiYKKysgICAgICBNLT5nZXRQSUNMZXZlbCgpICE9IFBJQ0xldmVsOjpTbWFsbFBJQyAmJgor ICAgICAgIE1PLmdldFRhcmdldEZsYWdzKCkgPT0gUFBDSUk6Ok1PX1BMVCkKKyAgICAgRXhwciA9 CisgICAgICAgICBNQ0JpbmFyeUV4cHI6OmNyZWF0ZUFkZChFeHByLCBNQ0NvbnN0YW50RXhwcjo6 Y3JlYXRlKDMyNzY4LCBDdHgpLCBDdHgpOworLS0gCisyLjIzLjAKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvbGx2bTEwL2ZpbGVzL3BhdGNoZXMvbGx2bS9sbHZtLTAwNi1hYXJjaDY0LW1mX2V4ZWMucGF0 Y2ggYi9zcmNwa2dzL2xsdm0xMC9maWxlcy9wYXRjaGVzL2xsdm0vbGx2bS0wMDYtYWFyY2g2NC1t Zl9leGVjLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5hNjRh MzE3ZWU2YwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbGx2bTEwL2ZpbGVzL3BhdGNoZXMv bGx2bS9sbHZtLTAwNi1hYXJjaDY0LW1mX2V4ZWMucGF0Y2gKQEAgLTAsMCArMSwyNSBAQAorRml4 IGZhaWx1cmVzIGluIEFsbG9jYXRpb25UZXN0cy9NYXBwZWRNZW1vcnlUZXN0Liogb24gYWFyY2g2 NDoKKworICAgIEZhaWxpbmcgVGVzdHMgKDgpOgorICAgICAgICBMTFZNLVVuaXQgOjogU3VwcG9y dC8uL1N1cHBvcnRUZXN0cy9BbGxvY2F0aW9uVGVzdHMvTWFwcGVkTWVtb3J5VGVzdC5BbGxvY0Fu ZFJlbGVhc2UvMworICAgICAgICBMTFZNLVVuaXQgOjogU3VwcG9ydC8uL1N1cHBvcnRUZXN0cy9B bGxvY2F0aW9uVGVzdHMvTWFwcGVkTWVtb3J5VGVzdC5EdXBsaWNhdGVOZWFyLzMKKyAgICAgICAg TExWTS1Vbml0IDo6IFN1cHBvcnQvLi9TdXBwb3J0VGVzdHMvQWxsb2NhdGlvblRlc3RzL01hcHBl ZE1lbW9yeVRlc3QuRW5hYmxlZFdyaXRlLzMKKyAgICAgICAgTExWTS1Vbml0IDo6IFN1cHBvcnQv Li9TdXBwb3J0VGVzdHMvQWxsb2NhdGlvblRlc3RzL01hcHBlZE1lbW9yeVRlc3QuTXVsdGlwbGVB bGxvY0FuZFJlbGVhc2UvMworICAgICAgICBMTFZNLVVuaXQgOjogU3VwcG9ydC8uL1N1cHBvcnRU ZXN0cy9BbGxvY2F0aW9uVGVzdHMvTWFwcGVkTWVtb3J5VGVzdC5TdWNjZXNzaXZlTmVhci8zCisg ICAgICAgIExMVk0tVW5pdCA6OiBTdXBwb3J0Ly4vU3VwcG9ydFRlc3RzL0FsbG9jYXRpb25UZXN0 cy9NYXBwZWRNZW1vcnlUZXN0LlVuYWxpZ25lZE5lYXIvMworICAgICAgICBMTFZNLVVuaXQgOjog U3VwcG9ydC8uL1N1cHBvcnRUZXN0cy9BbGxvY2F0aW9uVGVzdHMvTWFwcGVkTWVtb3J5VGVzdC5a ZXJvTmVhci8zCisgICAgICAgIExMVk0tVW5pdCA6OiBTdXBwb3J0Ly4vU3VwcG9ydFRlc3RzL0Fs bG9jYXRpb25UZXN0cy9NYXBwZWRNZW1vcnlUZXN0Llplcm9TaXplTmVhci8zCisKK1Vwc3RyZWFt LUlzc3VlOiBodHRwczovL2J1Z3MubGx2bS5vcmcvc2hvd19idWcuY2dpP2lkPTE0Mjc4I2MxMAor CistLS0gYS9saWIvU3VwcG9ydC9Vbml4L01lbW9yeS5pbmMKKysrKyBiL2xpYi9TdXBwb3J0L1Vu aXgvTWVtb3J5LmluYworQEAgLTU5LDcgKzU5LDcgQEAKKyAgICAgcmV0dXJuIFBST1RfUkVBRCB8 IFBST1RfV1JJVEUgfCBQUk9UX0VYRUM7CisgICBjYXNlIGxsdm06OnN5czo6TWVtb3J5OjpNRl9F WEVDOgorICNpZiAoZGVmaW5lZChfX0ZyZWVCU0RfXykgfHwgZGVmaW5lZChfX1BPV0VSUENfXykg fHwgZGVmaW5lZCAoX19wcGNfXykgfHwgXAorLSAgICAgZGVmaW5lZChfUE9XRVIpIHx8IGRlZmlu ZWQoX0FSQ0hfUFBDKSkKKysgICAgIGRlZmluZWQoX1BPV0VSKSB8fCBkZWZpbmVkKF9BUkNIX1BQ QykgfHwgKGRlZmluZWQoX19saW51eF9fKSAmJiBkZWZpbmVkKF9fYWFyY2g2NF9fKSkpCisgICAg IC8vIE9uIFBvd2VyUEMsIGhhdmluZyBhbiBleGVjdXRhYmxlIHBhZ2UgdGhhdCBoYXMgbm8gcmVh ZCBwZXJtaXNzaW9uCisgICAgIC8vIGNhbiBoYXZlIHVuaW50ZW5kZWQgY29uc2VxdWVuY2VzLiAg VGhlIGZ1bmN0aW9uIEludmFsaWRhdGVJbnN0cnVjdGlvbi0KKyAgICAgLy8gQ2FjaGUgdXNlcyBp bnN0cnVjdGlvbnMgZGNiZiBhbmQgaWNiaSwgYm90aCBvZiB3aGljaCBhcmUgdHJlYXRlZCBieQpk aWZmIC0tZ2l0IGEvc3JjcGtncy9sbHZtMTAvdGVtcGxhdGUgYi9zcmNwa2dzL2xsdm0xMC90ZW1w bGF0ZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uOGZlMDlhMzMyYjIK LS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2xsdm0xMC90ZW1wbGF0ZQpAQCAtMCwwICsxLDI4 NyBAQAorIyBUZW1wbGF0ZSBmaWxlIGZvciAnbGx2bTEwJworcGtnbmFtZT1sbHZtMTAKK3ZlcnNp b249MTAuMC4wCityZXZpc2lvbj0xCit3cmtzcmM9Imxsdm0tJHt2ZXJzaW9ufS5zcmMiCitidWls ZF9zdHlsZT1jbWFrZQorY29uZmlndXJlX2FyZ3M9IgorIC1EQ01BS0VfQlVJTERfVFlQRT1SZWxl YXNlCisgLURMTFZNX0lOU1RBTExfVVRJTFM9T04KKyAtRExMVk1fQlVJTERfTExWTV9EWUxJQj1P TgorIC1ETExWTV9MSU5LX0xMVk1fRFlMSUI9T04KKyAtRExMVk1fRU5BQkxFX1JUVEk9T04KKyAt RExMVk1fRU5BQkxFX0ZGST1PTgorIC1ETExWTV9CSU5VVElMU19JTkNESVI9L3Vzci9pbmNsdWRl IgoraG9zdG1ha2VkZXBlbmRzPSJncm9mZiBwZXJsIHB5dGhvbjMgemxpYi1kZXZlbCBsaWJmZmkt ZGV2ZWwgc3dpZyIKK21ha2VkZXBlbmRzPSJweXRob24zLWRldmVsIHpsaWItZGV2ZWwgbGliZmZp LWRldmVsIGxpYmVkaXQtZGV2ZWwKKyBsaWJ4bWwyLWRldmVsIGJpbnV0aWxzLWRldmVsIGxpYmF0 b21pYy1kZXZlbCIKK2RlcGVuZHM9ImxpYmxsdm0xMCIKK3Nob3J0X2Rlc2M9IkxvdyBMZXZlbCBW aXJ0dWFsIE1hY2hpbmUiCittYWludGFpbmVyPSJxNjYgPGRhbmllbEBvY3RhZm9yZ2Uub3JnPiIK K2xpY2Vuc2U9Ik5DU0EiCitob21lcGFnZT0iaHR0cHM6Ly93d3cubGx2bS5vcmciCitkaXN0Zmls ZXM9IgorIGh0dHBzOi8vZ2l0aHViLmNvbS9sbHZtL2xsdm0tcHJvamVjdC9yZWxlYXNlcy9kb3du bG9hZC9sbHZtb3JnLSR7dmVyc2lvbn0vbGx2bS0ke3ZlcnNpb259LnNyYy50YXIueHoKKyBodHRw czovL2dpdGh1Yi5jb20vbGx2bS9sbHZtLXByb2plY3QvcmVsZWFzZXMvZG93bmxvYWQvbGx2bW9y Zy0ke3ZlcnNpb259L2xsZGItJHt2ZXJzaW9ufS5zcmMudGFyLnh6CisgaHR0cHM6Ly9naXRodWIu Y29tL2xsdm0vbGx2bS1wcm9qZWN0L3JlbGVhc2VzL2Rvd25sb2FkL2xsdm1vcmctJHt2ZXJzaW9u fS9sbGQtJHt2ZXJzaW9ufS5zcmMudGFyLnh6CisgaHR0cHM6Ly9naXRodWIuY29tL2xsdm0vbGx2 bS1wcm9qZWN0L3JlbGVhc2VzL2Rvd25sb2FkL2xsdm1vcmctJHt2ZXJzaW9ufS9jbGFuZy0ke3Zl cnNpb259LnNyYy50YXIueHoKKyBodHRwczovL2dpdGh1Yi5jb20vbGx2bS9sbHZtLXByb2plY3Qv cmVsZWFzZXMvZG93bmxvYWQvbGx2bW9yZy0ke3ZlcnNpb259L2NsYW5nLXRvb2xzLWV4dHJhLSR7 dmVyc2lvbn0uc3JjLnRhci54egorIGh0dHBzOi8vZ2l0aHViLmNvbS9sbHZtL2xsdm0tcHJvamVj dC9yZWxlYXNlcy9kb3dubG9hZC9sbHZtb3JnLSR7dmVyc2lvbn0vY29tcGlsZXItcnQtJHt2ZXJz aW9ufS5zcmMudGFyLnh6IgorY2hlY2tzdW09IgorIGRmODNhNDRiM2E5YTcxMDI5MDQ5ZWMxMDFm YjAwNzdlY2JiZGY1ZmU0MWUzOTUyMTUwMjU3NzkwOTlhOThmZGYKKyBkZDFmZmNiNDJlZDAzM2Y1 MTY3MDg5ZWM0YzZlYmU4NGZiY2ExZGI0YTllYWViZjVjNjE0YWYwOWQ4OWViMTM1CisgYjlhMGQ3 YzU3NmVlZWYwNWJjMDZkNmU5NTQ5MzhhMDFjNTM5NmNlZTFkMWU5ODU4OTFlMGIxY2YxNmUzZDcw OAorIDg4NWIwNjJiMDBlOTAzZGY3MjYzMWM1Zjk4Yjk1NzllZDFlZDI3OTBmNzRlNTY0NmI0MjM0 ZmEwODRlYWNiMjEKKyBhY2RmOGNmNjU3NGI0MGU2YjFkYWJjOTNlNzZkZWJiODRhOWZlYjZmMjI5 NzAxMjZiMDRkNGJhMThiOTI5MTFjCisgNmE3ZGE2NGQzYTBhNzMyMDU3N2I2OGI5Y2E0OTMzYmRj YWI2NzZlODk4Yjc1OTg1MGU4MjczMzNjMzI4MmM3NSIKK2xpYjMyZGlzYWJsZWQ9eWVzCitweXRo b25fdmVyc2lvbj0zCisKK19sbGRiX2VuYWJsZT15ZXMKKworaWYgWyAiJENST1NTX0JVSUxEIiBd OyB0aGVuCisJX2xsZGJfZW5hYmxlPW5vCitmaQorCitjYXNlICIkWEJQU19UQVJHRVRfTUFDSElO RSIgaW4KKwlwcGM2NGxlKikgOzsKKwlwcGMqKSBfbGxkYl9lbmFibGU9bm8gOzsKK2VzYWMKKwor c3VicGFja2FnZXM9ImNsYW5nLXRvb2xzLWV4dHJhIGNsYW5nIGNsYW5nLWFuYWx5emVyIGxpYmxs dm0xMCIKK2lmIFsgIiRfbGxkYl9lbmFibGUiID0gInllcyIgXTsgdGhlbgorCSMgWFhYIGZhaWxz IHRvIGNyb3NzIGNvbXBpbGUgZHVlIHRvIHB5dGhvbgorCXN1YnBhY2thZ2VzKz0iIGxsZGIgbGxk Yi1kZXZlbCIKK2ZpCitzdWJwYWNrYWdlcys9IiBsbGQgbGxkLWRldmVsIgorCitwb3N0X3BhdGNo KCkgeworCSMgcGF0Y2hlcworCWNkICR7WEJQU19CVUlMRERJUn0vbGx2bS0ke3ZlcnNpb259LnNy YworCWZvciBpIGluICR7RklMRVNESVJ9L3BhdGNoZXMvbGx2bS9sbHZtLSoucGF0Y2g7IGRvCisJ CW1zZ19ub3JtYWwgIkFwcGx5aW5nICRpIHRvIGxsdm1cbiIKKwkJcGF0Y2ggLXNOcDEgLWkgJHtp fQorCWRvbmUKKworCWNkICR7WEJQU19CVUlMRERJUn0vY2xhbmctJHt2ZXJzaW9ufS5zcmMKKwlm b3IgaSBpbiAke0ZJTEVTRElSfS9wYXRjaGVzL2NsYW5nL2NsYW5nLSoucGF0Y2g7IGRvCisJCW1z Z19ub3JtYWwgIkFwcGx5aW5nICRpIHRvIGNsYW5nXG4iCisJCXBhdGNoIC1zTnAxIC1pICR7aX0K Kwlkb25lCisKKwljYXNlICIkWEJQU19UQVJHRVRfTUFDSElORSIgaW4KKwlhcm12NSopCisJCWNk ICR7WEJQU19CVUlMRERJUn0vY29tcGlsZXItcnQtJHt2ZXJzaW9ufS5zcmMKKwkJZm9yIGkgaW4g JHtGSUxFU0RJUn0vcGF0Y2hlcy9jb21waWxlci1ydC9jb21waWxlci1ydC0qLnBhdGNoOyBkbwor CQkJbXNnX25vcm1hbCAiQXBwbHlpbmcgJGkgdG8gY29tcGlsZXItcnRcbiIKKwkJCXBhdGNoIC1z TnAxIC1pICR7aX0KKwkJZG9uZQorCQk7OworCWVzYWMKKworCWlmIFsgIiRfbGxkYl9lbmFibGUi ID0gInllcyIgXTsgdGhlbgorCQljZCAke1hCUFNfQlVJTERESVJ9L2xsZGItJHt2ZXJzaW9ufS5z cmMKKwkJZm9yIGkgaW4gJHtGSUxFU0RJUn0vcGF0Y2hlcy9sbGRiLyoucGF0Y2g7IGRvCisJCQlt c2dfbm9ybWFsICJBcHBseWluZyAkaSB0byBsbGRiXG4iCisJCQlwYXRjaCAtc05wMSAtaSAke2l9 CisJCWRvbmUKKwkJY2FzZSAiJFhCUFNfVEFSR0VUX01BQ0hJTkUiIGluCisJCQkqLW11c2wpIHNl ZCAtaSAnc3xfX3B0cmFjZV9yZXF1ZXN0fGludHxnJyBzb3VyY2UvUGx1Z2lucy9Qcm9jZXNzL0xp bnV4L05hdGl2ZVByb2Nlc3NMaW51eC5jcHAgOzsKKwkJZXNhYworCWZpCisKKwkjIE1vdmUgY2xh bmcgZmlsZXMgaW50byB0aGUgbGx2bSBzb3VyY2UuCisJaWYgWyAtZCAke1hCUFNfQlVJTERESVJ9 L2NsYW5nLSR7dmVyc2lvbn0uc3JjIF07IHRoZW4KKwkJbXYgJHtYQlBTX0JVSUxERElSfS9jbGFu Zy0ke3ZlcnNpb259LnNyYyAke3dya3NyY30vdG9vbHMvY2xhbmcKKwlmaQorCSMgTW92ZSBjbGFu Zy10b29scy1leHRyYSBmaWxlcyBpbnRvIGxsdm0gc291cmNlLgorCWlmIFsgLWQgJHtYQlBTX0JV SUxERElSfS9jbGFuZy10b29scy1leHRyYS0ke3ZlcnNpb259LnNyYyBdOyB0aGVuCisJCW12ICR7 WEJQU19CVUlMRERJUn0vY2xhbmctdG9vbHMtZXh0cmEtJHt2ZXJzaW9ufS5zcmMgJHt3cmtzcmN9 L3Rvb2xzL2NsYW5nL3Rvb2xzL2V4dHJhCisJZmkKKwkjIE1vdmUgbGxkIGZpbGVzIGludG8gdGhl IGxsdm0gc291cmNlLgorCWlmIFsgLWQgJHtYQlBTX0JVSUxERElSfS9sbGQtJHt2ZXJzaW9ufS5z cmMgXTsgdGhlbgorCQltdiAke1hCUFNfQlVJTERESVJ9L2xsZC0ke3ZlcnNpb259LnNyYyAke3dy a3NyY30vdG9vbHMvbGxkCisJZmkKKwkjIE1vdmUgbGxkYiBmaWxlcyBpbnRvIHRoZSBsbHZtIHNv dXJjZS4KKwlpZiBbICIkX2xsZGJfZW5hYmxlIiA9ICJ5ZXMiIC1hIC1kICR7WEJQU19CVUlMRERJ Un0vbGxkYi0ke3ZlcnNpb259LnNyYyBdOyB0aGVuCisJCW12ICR7WEJQU19CVUlMRERJUn0vbGxk Yi0ke3ZlcnNpb259LnNyYyAke3dya3NyY30vdG9vbHMvbGxkYgorCWZpCisJIyBNb3ZlIGNvbXBp bGVyLXJ0IGZpbGVzIGludG8gdGhlIGxsdm0gc291cmNlLgorCWlmIFsgLWQgJHtYQlBTX0JVSUxE RElSfS9jb21waWxlci1ydC0ke3ZlcnNpb259LnNyYyBdOyB0aGVuCisJCW12ICR7WEJQU19CVUlM RERJUn0vY29tcGlsZXItcnQtJHt2ZXJzaW9ufS5zcmMgJHt3cmtzcmN9L3Byb2plY3RzL2NvbXBp bGVyLXJ0CisJZmkKKwljYXNlICIkWEJQU19UQVJHRVRfTUFDSElORSIgaW4KKwkJKi1tdXNsKQor CQkJIyBEaXNhYmxlIHNhbml0aXplcnMKKwkJCXNlZCAtaSAncy9zZXQoQ09NUElMRVJfUlRfSEFT X1NBTklUSVpFUl9DT01NT04gVFJVRSkvc2V0KENPTVBJTEVSX1JUX0hBU19TQU5JVElaRVJfQ09N TU9OIEZBTFNFKS8nICR7d3Jrc3JjfS9wcm9qZWN0cy9jb21waWxlci1ydC9jbWFrZS9jb25maWct aXguY21ha2UKKwkJCTs7CisJZXNhYworCit9CisKK3ByZV9jb25maWd1cmUoKSB7CisJIyBWYXN0 bHkgcmVkdWNlIHNpemUgb2YgZGVidWdnaW5nIHN5bWJvbHM6CisJQ0ZMQUdTPSR7Q0ZMQUdTLyAt Zy8gLWcxfQorCUNYWEZMQUdTPSR7Q1hYRkxBR1MvIC1nLyAtZzF9CisKKwkjIHNpbmNlIGdjYzks IHRoZSBidWlsZCBsaWtlcyB0byBibG93IHVwIGZvciBwcGMzMiBhcHBhcmVudGx5IGJlY2F1c2UK KwkjIG9mIGNsYW5nIGJlaW5nIHRvbyBsYXJnZSBmb3IgYSAyNC1iaXQgcmVsYXRpdmUgY2FsbCB0 byB0aGUgUExULCBzbworCSMgb3B0aW1pemUgZm9yIHNpemUgaW5zdGVhZAorCWNhc2UgIiRYQlBT X1RBUkdFVF9NQUNISU5FIiBpbgorCQlwcGN8cHBjLW11c2wpIGNvbmZpZ3VyZV9hcmdzKz0iIC1E Vk9JRF9DWFhfT1BUX0ZMQUdTPS1PcyIgOzsKKwllc2FjCisKKwlpZiBbICIkQ1JPU1NfQlVJTEQi IF07IHRoZW4KKwkJbXNnX25vcm1hbCAiQnVpbGRpbmcgaG9zdCB0YmxnZW5cbiIKKwkJbWtkaXIg LXAgYnVpbGQvSE9TVAorCQljZCBidWlsZC9IT1NUCisJCUNDPSIkQlVJTERfQ0MiIENYWD0iJEJV SUxEX0NYWCIgQ0ZMQUdTPSIkQlVJTERfQ0ZMQUdTIiBcCisJCQlDWFhGTEFHUz0iJEJVSUxEX0NY WEZMQUdTIiBMREZMQUdTPSIkQlVJTERfTERGTEFHUyIgXAorCQkJY21ha2UgLi4vLi4gLURDTUFL RV9CVUlMRF9UWVBFPVJlbGVhc2UKKwkJbWFrZSAke21ha2Vqb2JzfSAtQyB1dGlscy9UYWJsZUdl bgorCQltYWtlICR7bWFrZWpvYnN9IC1DIHRvb2xzL2NsYW5nL3V0aWxzL1RhYmxlR2VuCisJCWNv bmZpZ3VyZV9hcmdzKz0iIC1ETExWTV9UQUJMRUdFTj0ke3dya3NyY30vYnVpbGQvSE9TVC9iaW4v bGx2bS10YmxnZW4iCisJCWNvbmZpZ3VyZV9hcmdzKz0iIC1EQ0xBTkdfVEFCTEVHRU49JHt3cmtz cmN9L2J1aWxkL0hPU1QvYmluL2NsYW5nLXRibGdlbiIKKwkJY2QgLi4vLi4KKwlmaQorCisJY2Fz ZSAiJFhCUFNfVEFSR0VUX01BQ0hJTkUiIGluCisJCWk2ODYqKSBfYXJjaD0iWDg2Ijs7CisJCXg4 Nl82NCopIF9hcmNoPSJYODYiOzsKKwkJYXJtdjUqKSBfYXJjaD0iQXJtdjV0ZSI7OworCQlhcm12 NiopIF9hcmNoPSJBcm12NiI7OworCQlhcm12NyopIF9hcmNoPSJBcm12NyI7OworCQlhYXJjaDY0 KikgX2FyY2g9IkFBcmNoNjQiOzsKKwkJbWlwcyopIF9hcmNoPSJNaXBzIjs7CisJCXBwYyopIF9h cmNoPSJQb3dlclBDIjs7CisJZXNhYworCWNvbmZpZ3VyZV9hcmdzKz0iIC1ETExWTV9UQVJHRVRf QVJDSD0ke19hcmNofSIKKwljb25maWd1cmVfYXJncys9IiAtRExMVk1fREVGQVVMVF9UQVJHRVRf VFJJUExFPSR7WEJQU19DUk9TU19UUklQTEVUOi0kWEJQU19UUklQTEVUfSIKK30KKworZG9faW5z dGFsbCgpIHsKKwl2bGljZW5zZSBMSUNFTlNFLlRYVAorCisJY2QgYnVpbGQKKwljbWFrZSAtRENN QUtFX0lOU1RBTExfUFJFRklYPSR7REVTVERJUn0vdXNyIC1QIGNtYWtlX2luc3RhbGwuY21ha2UK KworCSMgRml4IHBlcm1pc3Npb25zIG9mIHN0YXRpYyBsaWJzCisJY2htb2QgLXggJHtERVNURElS fS91c3IvbGliLyouYQorCisJIyBSZXF1aXJlZCBmb3IgbXVsdGlsaWIuCisJaWYgWyAiJFhCUFNf VEFSR0VUX01BQ0hJTkUiID0gIng4Nl82NCIgXTsgdGhlbgorCQlmb3IgX2hlYWRlciBpbiBsbHZt LWNvbmZpZzsgZG8KKwkJCW12ICR7REVTVERJUn0vdXNyL2luY2x1ZGUvbGx2bS9Db25maWcvJHtf aGVhZGVyfXssLTY0fS5oCisJCQl2aW5zdGFsbCAke0ZJTEVTRElSfS9sbHZtLUNvbmZpZy0ke19o ZWFkZXJ9LmggNjQ0IFwKKwkJCQl1c3IvaW5jbHVkZS9sbHZtL0NvbmZpZyAke19oZWFkZXJ9LmgK KwkJZG9uZQorCWZpCisKKwkjIFJlbW92ZSBsbHZtLWNvbmZpZy1ob3N0IGluIGNyb3NzIGJ1aWxk cy4KKwlpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KKwkJcm0gLWYgJHtERVNURElSfS91c3Iv YmluL2xsdm0tY29uZmlnLWhvc3QKKwlmaQorfQorCitjbGFuZy1hbmFseXplcl9wYWNrYWdlKCkg eworCWFyY2hzPW5vYXJjaAorCXB5Y29tcGlsZV9kaXJzPSJ1c3Ivc2hhcmUvc2Nhbi12aWV3Igor CWRlcGVuZHM9ImNsYW5nLSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0gcHl0aG9uMyIKKwlzaG9ydF9k ZXNjKz0iIC0gQSBzb3VyY2UgY29kZSBhbmFseXNpcyBmcmFtZXdvcmsiCisJaG9tZXBhZ2U9Imh0 dHBzOi8vY2xhbmctYW5hbHl6ZXIubGx2bS5vcmcvIgorCXBrZ19pbnN0YWxsKCkgeworCQl2bW92 ZSB1c3Ivc2hhcmUvbWFuL21hbjEvc2Nhbi1idWlsZC4xCisJCXZtb3ZlICIvdXNyL2Jpbi9zY2Fu LSoiCisJCXZtb3ZlICIvdXNyL3NoYXJlL3NjYW4tKiIKKwkJdm1vdmUgIi91c3IvbGliZXhlYy8q YW5hbHl6ZXIiCisJfQorfQorCitjbGFuZy10b29scy1leHRyYV9wYWNrYWdlKCkgeworCWRlcGVu ZHM9ImNsYW5nLSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0gcHl0aG9uMyIKKwlzaG9ydF9kZXNjKz0i IC0gRXh0cmEgQ2xhbmcgdG9vbHMiCisJaG9tZXBhZ2U9Imh0dHBzOi8vY2xhbmcubGx2bS5vcmcv ZXh0cmEvIgorCXBrZ19pbnN0YWxsKCkgeworCQl2bW92ZSB1c3IvYmluL2NsYW5nLWFwcGx5LXJl cGxhY2VtZW50cworCQl2bW92ZSB1c3IvYmluL2NsYW5nLXF1ZXJ5CisJCXZtb3ZlIHVzci9iaW4v Y2xhbmctcmVuYW1lCisJCXZtb3ZlIHVzci9iaW4vY2xhbmctdGlkeQorCQl2bW92ZSB1c3IvYmlu L21vZHVsYXJpemUKKwkJdm1vdmUgInVzci9saWIvbGliY2xhbmdBcHBseVJlcGxhY2VtZW50cyoi CisJCXZtb3ZlICJ1c3IvbGliL2xpYmNsYW5nUXVlcnkqIgorCQl2bW92ZSAidXNyL2xpYi9saWJj bGFuZ1RpZHkqIgorCQl2bW92ZSAidXNyL3NoYXJlL2NsYW5nLyp0aWR5KiIKKwl9Cit9CisKK2Ns YW5nX3BhY2thZ2UoKSB7CisJbGliMzJkaXNhYmxlZD15ZXMKKwlkZXBlbmRzPSJsaWJzdGRjKyst ZGV2ZWwgbGliZ2NjLWRldmVsIGJpbnV0aWxzIgorCWNhc2UgIiRYQlBTX1RBUkdFVF9NQUNISU5F IiBpbgorCQkqLW11c2wpIGRlcGVuZHMrPSIgbXVzbC1kZXZlbCI7OworCQkqKSBkZXBlbmRzKz0i IGdsaWJjLWRldmVsIjs7CisJZXNhYworCXNob3J0X2Rlc2MrPSIgLSBDIGxhbmd1YWdlIGZhbWls eSBmcm9udGVuZCIKKwlob21lcGFnZT0iaHR0cHM6Ly9jbGFuZy5sbHZtLm9yZy8iCisJcGtnX2lu c3RhbGwoKSB7CisJCXZtb3ZlIHVzci9pbmNsdWRlL2NsYW5nCisJCXZtb3ZlIHVzci9pbmNsdWRl L2NsYW5nLWMKKwkJdm1vdmUgInVzci9iaW4vKmNsYW5nKiIKKwkJdm1vdmUgdXNyL2Jpbi9jLWlu ZGV4LXRlc3QKKwkJdm1vdmUgdXNyL2xpYi9jbGFuZworCQl2bW92ZSB1c3IvbGliL2NtYWtlL2Ns YW5nCisJCXZtb3ZlICJ1c3IvbGliL2xpYmNsYW5nKiIKKwkJdm1vdmUgInVzci9zaGFyZS9jbGFu ZyIKKwl9Cit9CisKK2xsZF9wYWNrYWdlKCkgeworCWxpYjMyZGlzYWJsZWQ9eWVzCisJc2hvcnRf ZGVzYys9IiAtIGxpbmtlciIKKwlob21lcGFnZT0iaHR0cHM6Ly9sbGQubGx2bS5vcmciCisJcGtn X2luc3RhbGwoKSB7CisJCXZtb3ZlIHVzci9iaW4vbGxkKgorCQl2bW92ZSB1c3IvYmluL3dhc20t bGQKKwkJdm1vdmUgdXNyL2Jpbi9sZC5sbGQqCisJfQorfQorCitsbGQtZGV2ZWxfcGFja2FnZSgp IHsKKwlsaWIzMmRpc2FibGVkPXllcworCXNob3J0X2Rlc2MrPSIgLSBsaW5rZXIgLSBkZXZlbG9w bWVudCBmaWxlcyIKKwlob21lcGFnZT0iaHR0cHM6Ly9sbGQubGx2bS5vcmciCisJcGtnX2luc3Rh bGwoKSB7CisJCXZtb3ZlIHVzci9pbmNsdWRlL2xsZAorCQl2bW92ZSAidXNyL2xpYi9saWJsbGQq YSIKKwl9Cit9CisKK2xsZGJfcGFja2FnZSgpIHsKKwlsaWIzMmRpc2FibGVkPXllcworCWRlcGVu ZHMrPSIgcHl0aG9uMy1zaXgiCisJc2hvcnRfZGVzYys9IiAtIExMREIgZGVidWdnZXIiCisJaG9t ZXBhZ2U9Imh0dHBzOi8vbGxkYi5sbHZtLm9yZy8iCisJcGtnX2luc3RhbGwoKSB7CisJCXZtb3Zl IHVzci9iaW4vKmxsZGIqCisJCXZtb3ZlIHVzci9saWIvbGlibGxkYipzby4qCisJCXZtb3ZlIC91 c3IvbGliL3B5dGhvbioKKwkJIyBEZXBlbmQgb24gcHl0aG9uMy1zaXggaW5zdGVhZCBvZiBjb25m bGljdGluZworCQlybSAke1BLR0RFU1RESVJ9L3Vzci9saWIvcHl0aG9uMyovc2l0ZS1wYWNrYWdl cy9zaXgucHkKKwl9Cit9CisKK2xsZGItZGV2ZWxfcGFja2FnZSgpIHsKKwlkZXBlbmRzPSJsbGRi Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259IgorCXNob3J0X2Rlc2MrPSIgLSBMTERCIGRlYnVnZ2Vy IC0gZGV2ZWxvcG1lbnQgZmlsZXMiCisJcGtnX2luc3RhbGwoKSB7CisJCXZtb3ZlIHVzci9pbmNs dWRlL2xsZGIKKwkJdm1vdmUgInVzci9saWIvbGlibGxkYiouc28iCisJfQorfQorCitsaWJsbHZt MTBfcGFja2FnZSgpIHsKKwlzaG9ydF9kZXNjKz0iIC0gcnVudGltZSBsaWJyYXJ5IgorCXBrZ19p bnN0YWxsKCkgeworCQl2bW92ZSAidXNyL2xpYi9saWJMTFZNLSouc28qIgorCX0KK30KZGlmZiAt LWdpdCBhL3NyY3BrZ3MvbGx2bTEwL3VwZGF0ZSBiL3NyY3BrZ3MvbGx2bTEwL3VwZGF0ZQpuZXcg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uM2QwOWVhZmYzNzMKLS0tIC9kZXYv bnVsbAorKysgYi9zcmNwa2dzL2xsdm0xMC91cGRhdGUKQEAgLTAsMCArMSwyIEBACitzaXRlPWh0 dHBzOi8vcmVsZWFzZXMubGx2bS5vcmcvCitwYXR0ZXJuPSInXEtbXGRcLl0qKD89JykiCmRpZmYg LS1naXQgYS9zcmNwa2dzL2xsdm05L2ZpbGVzL3BhdGNoZXMvY29tcGlsZXItcnQvY29tcGlsZXIt cnQtYXJtdjUucGF0Y2ggYi9zcmNwa2dzL2xsdm05L2ZpbGVzL3BhdGNoZXMvY29tcGlsZXItcnQv Y29tcGlsZXItcnQtYXJtdjUucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGY0 ZDJlMzQxYjZjLi4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL2xsdm05L2ZpbGVzL3BhdGNoZXMv Y29tcGlsZXItcnQvY29tcGlsZXItcnQtYXJtdjUucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwx MSArMCwwIEBACi0tLS0gY29tcGlsZXItcnQtOS4wLjEuc3JjL2xpYi9idWlsdGlucy9DTWFrZUxp c3RzLnR4dAkyMDE5LTEyLTExIDIwOjE1OjMwLjAwMDAwMDAwMCArMDEwMAotKysrIGNvbXBpbGVy LXJ0LTkuMC4xLnNyYy9saWIvYnVpbHRpbnMvQ01ha2VMaXN0cy50eHQJMjAyMC0wMy0yOSAwNzoy MzozOC4xNzI4MTMwMzggKzAyMDAKLUBAIC00MTksOCArNDE5LDYgQEAKLSApCi0gc2V0KGFybV9U aHVtYjFfU09VUkNFUwotICAgJHthcm1fVGh1bWIxX0pUX1NPVVJDRVN9Ci0tICAke2FybV9UaHVt YjFfU2pMal9FSF9TT1VSQ0VTfQotLSAgJHthcm1fVGh1bWIxX1ZGUHYyX1NPVVJDRVN9Ci0gICAk e2FybV9UaHVtYjFfaWNhY2hlX1NPVVJDRVN9Ci0gKQotIApkaWZmIC0tZ2l0IGEvc3JjcGtncy9s bHZtOS9maWxlcy9wYXRjaGVzL2xsdm0vbGx2bS0wMDctYWFyY2g2NC1tZl9leGVjLnBhdGNoIGIv c3JjcGtncy9sbHZtOS9maWxlcy9wYXRjaGVzL2xsdm0vbGx2bS0wMDctYWFyY2g2NC1tZl9leGVj LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5hNjRhMzE3ZWU2 YwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbGx2bTkvZmlsZXMvcGF0Y2hlcy9sbHZtL2xs dm0tMDA3LWFhcmNoNjQtbWZfZXhlYy5wYXRjaApAQCAtMCwwICsxLDI1IEBACitGaXggZmFpbHVy ZXMgaW4gQWxsb2NhdGlvblRlc3RzL01hcHBlZE1lbW9yeVRlc3QuKiBvbiBhYXJjaDY0OgorCisg ICAgRmFpbGluZyBUZXN0cyAoOCk6CisgICAgICAgIExMVk0tVW5pdCA6OiBTdXBwb3J0Ly4vU3Vw cG9ydFRlc3RzL0FsbG9jYXRpb25UZXN0cy9NYXBwZWRNZW1vcnlUZXN0LkFsbG9jQW5kUmVsZWFz ZS8zCisgICAgICAgIExMVk0tVW5pdCA6OiBTdXBwb3J0Ly4vU3VwcG9ydFRlc3RzL0FsbG9jYXRp b25UZXN0cy9NYXBwZWRNZW1vcnlUZXN0LkR1cGxpY2F0ZU5lYXIvMworICAgICAgICBMTFZNLVVu aXQgOjogU3VwcG9ydC8uL1N1cHBvcnRUZXN0cy9BbGxvY2F0aW9uVGVzdHMvTWFwcGVkTWVtb3J5 VGVzdC5FbmFibGVkV3JpdGUvMworICAgICAgICBMTFZNLVVuaXQgOjogU3VwcG9ydC8uL1N1cHBv cnRUZXN0cy9BbGxvY2F0aW9uVGVzdHMvTWFwcGVkTWVtb3J5VGVzdC5NdWx0aXBsZUFsbG9jQW5k UmVsZWFzZS8zCisgICAgICAgIExMVk0tVW5pdCA6OiBTdXBwb3J0Ly4vU3VwcG9ydFRlc3RzL0Fs bG9jYXRpb25UZXN0cy9NYXBwZWRNZW1vcnlUZXN0LlN1Y2Nlc3NpdmVOZWFyLzMKKyAgICAgICAg TExWTS1Vbml0IDo6IFN1cHBvcnQvLi9TdXBwb3J0VGVzdHMvQWxsb2NhdGlvblRlc3RzL01hcHBl ZE1lbW9yeVRlc3QuVW5hbGlnbmVkTmVhci8zCisgICAgICAgIExMVk0tVW5pdCA6OiBTdXBwb3J0 Ly4vU3VwcG9ydFRlc3RzL0FsbG9jYXRpb25UZXN0cy9NYXBwZWRNZW1vcnlUZXN0Llplcm9OZWFy LzMKKyAgICAgICAgTExWTS1Vbml0IDo6IFN1cHBvcnQvLi9TdXBwb3J0VGVzdHMvQWxsb2NhdGlv blRlc3RzL01hcHBlZE1lbW9yeVRlc3QuWmVyb1NpemVOZWFyLzMKKworVXBzdHJlYW0tSXNzdWU6 IGh0dHBzOi8vYnVncy5sbHZtLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQyNzgjYzEwCisKKy0tLSBh L2xpYi9TdXBwb3J0L1VuaXgvTWVtb3J5LmluYworKysrIGIvbGliL1N1cHBvcnQvVW5peC9NZW1v cnkuaW5jCitAQCAtNTksNyArNTksNyBAQAorICAgICByZXR1cm4gUFJPVF9SRUFEIHwgUFJPVF9X UklURSB8IFBST1RfRVhFQzsKKyAgIGNhc2UgbGx2bTo6c3lzOjpNZW1vcnk6Ok1GX0VYRUM6Cisg I2lmIChkZWZpbmVkKF9fRnJlZUJTRF9fKSB8fCBkZWZpbmVkKF9fUE9XRVJQQ19fKSB8fCBkZWZp bmVkIChfX3BwY19fKSB8fCBcCistICAgICBkZWZpbmVkKF9QT1dFUikgfHwgZGVmaW5lZChfQVJD SF9QUEMpKQorKyAgICAgZGVmaW5lZChfUE9XRVIpIHx8IGRlZmluZWQoX0FSQ0hfUFBDKSB8fCAo ZGVmaW5lZChfX2xpbnV4X18pICYmIGRlZmluZWQoX19hYXJjaDY0X18pKSkKKyAgICAgLy8gT24g UG93ZXJQQywgaGF2aW5nIGFuIGV4ZWN1dGFibGUgcGFnZSB0aGF0IGhhcyBubyByZWFkIHBlcm1p c3Npb24KKyAgICAgLy8gY2FuIGhhdmUgdW5pbnRlbmRlZCBjb25zZXF1ZW5jZXMuICBUaGUgZnVu Y3Rpb24gSW52YWxpZGF0ZUluc3RydWN0aW9uLQorICAgICAvLyBDYWNoZSB1c2VzIGluc3RydWN0 aW9ucyBkY2JmIGFuZCBpY2JpLCBib3RoIG9mIHdoaWNoIGFyZSB0cmVhdGVkIGJ5CmRpZmYgLS1n aXQgYS9zcmNwa2dzL2xsdm05L3RlbXBsYXRlIGIvc3JjcGtncy9sbHZtOS90ZW1wbGF0ZQppbmRl eCAzNTBhOWQ2N2QxNi4uNzVkOWM4YWVkN2QgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbGx2bTkvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9sbHZtOS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ2xsdm05JwogcGtnbmFtZT1sbHZtOQogdmVyc2lvbj05LjAuMQotcmV2 aXNpb249NQorcmV2aXNpb249Ngogd3Jrc3JjPSJsbHZtLSR7dmVyc2lvbn0uc3JjIgogYnVpbGRf c3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSIKQEAgLTIwLDQyICsyMCwxNCBAQCBzaG9ydF9k ZXNjPSJMb3cgTGV2ZWwgVmlydHVhbCBNYWNoaW5lIgogbWFpbnRhaW5lcj0icTY2IDxkYW5pZWxA b2N0YWZvcmdlLm9yZz4iCiBsaWNlbnNlPSJOQ1NBIgogaG9tZXBhZ2U9Imh0dHBzOi8vd3d3Lmxs dm0ub3JnIgotZGlzdGZpbGVzPSIKLSBodHRwczovL2dpdGh1Yi5jb20vbGx2bS9sbHZtLXByb2pl Y3QvcmVsZWFzZXMvZG93bmxvYWQvbGx2bW9yZy0ke3ZlcnNpb259L2xsdm0tJHt2ZXJzaW9ufS5z cmMudGFyLnh6Ci0gaHR0cHM6Ly9naXRodWIuY29tL2xsdm0vbGx2bS1wcm9qZWN0L3JlbGVhc2Vz L2Rvd25sb2FkL2xsdm1vcmctJHt2ZXJzaW9ufS9sbGRiLSR7dmVyc2lvbn0uc3JjLnRhci54egot IGh0dHBzOi8vZ2l0aHViLmNvbS9sbHZtL2xsdm0tcHJvamVjdC9yZWxlYXNlcy9kb3dubG9hZC9s bHZtb3JnLSR7dmVyc2lvbn0vbGxkLSR7dmVyc2lvbn0uc3JjLnRhci54egotIGh0dHBzOi8vZ2l0 aHViLmNvbS9sbHZtL2xsdm0tcHJvamVjdC9yZWxlYXNlcy9kb3dubG9hZC9sbHZtb3JnLSR7dmVy c2lvbn0vY2xhbmctJHt2ZXJzaW9ufS5zcmMudGFyLnh6Ci0gaHR0cHM6Ly9naXRodWIuY29tL2xs dm0vbGx2bS1wcm9qZWN0L3JlbGVhc2VzL2Rvd25sb2FkL2xsdm1vcmctJHt2ZXJzaW9ufS9jbGFu Zy10b29scy1leHRyYS0ke3ZlcnNpb259LnNyYy50YXIueHoKLSBodHRwczovL2dpdGh1Yi5jb20v bGx2bS9sbHZtLXByb2plY3QvcmVsZWFzZXMvZG93bmxvYWQvbGx2bW9yZy0ke3ZlcnNpb259L2Nv bXBpbGVyLXJ0LSR7dmVyc2lvbn0uc3JjLnRhci54eiIKLWNoZWNrc3VtPSIKLSAwMGExZWUxZjM4 OWY4MWU5OTc5ZjNhNjQwYTAxYzQzMWIzMDIxZGUwZDQyMjc4ZjY1MDgzOTFhMmYwYjgxYzlhCi0g OGE3YjlmZDc5NWMzMWEzZTNjYmE2Y2UxMzc3YTJhZTVjNjczNzZkOTI4ODg3MDJjZTI3ZTI2ZjA5 NzFiZWIwOQotIDg2MjYyYmFkM2UyZmQ3ODRiYThjNWUyMTU4ZDdhYTM2ZjEyYjg1ZjI1MTVlOTVi YzgxZDY1ZDc1YmI5YjBjODIKLSA1Nzc4NTEyYjJlMDY1YzIwNDAxMGY4ODc3N2Q0NGI5NTI1MDY3 MTEwM2U0MzRmOWRjNzM2M2FiMmUzODA0MjUzCi0gYjI2ZmQ3MmE3OGJkN2RiOTk4YTI2MjcwZWM5 ZWM2YTAxMzQ2NjUxZDg4ZmE4N2I0YjMyM2UxMzA0OWZiNmYwNwotIGMyYmZhYjk1Yzk5ODYzMTgz MTgzNjNkN2YzNzFhODVhOTVlMzMzYmMwYjM0ZmJmYTUyZWRiZDNmNWUzYTkwNzciCi1kaXNhYmxl X3BhcmFsbGVsX2J1aWxkcz15ZXMKK2Rpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL2xsdm0v bGx2bS1wcm9qZWN0L3JlbGVhc2VzL2Rvd25sb2FkL2xsdm1vcmctJHt2ZXJzaW9ufS9sbHZtLSR7 dmVyc2lvbn0uc3JjLnRhci54eiIKK2NoZWNrc3VtPSIwMGExZWUxZjM4OWY4MWU5OTc5ZjNhNjQw YTAxYzQzMWIzMDIxZGUwZDQyMjc4ZjY1MDgzOTFhMmYwYjgxYzlhIgogbGliMzJkaXNhYmxlZD15 ZXMKLSMgbmVjZXNzYXJ5IHRvIG92ZXJyaWRlIGF1dG8gZGVmYXVsdAogcHl0aG9uX3ZlcnNpb249 MwogCi1fbGxkYl9lbmFibGU9eWVzCitjb25mbGljdHM9Imxsdm0xMD49MCIKIAotaWYgWyAiJENS T1NTX0JVSUxEIiBdOyB0aGVuCi0JX2xsZGJfZW5hYmxlPW5vCi1maQotCi1jYXNlICIkWEJQU19U QVJHRVRfTUFDSElORSIgaW4KLQlwcGM2NGxlKikgOzsKLQlwcGMqKSBfbGxkYl9lbmFibGU9bm8g OzsKLWVzYWMKLQotc3VicGFja2FnZXM9ImNsYW5nLXRvb2xzLWV4dHJhIGNsYW5nIGNsYW5nLWFu YWx5emVyIGxpYmxsdm05IgotaWYgWyAiJF9sbGRiX2VuYWJsZSIgPSAieWVzIiBdOyB0aGVuCi0J IyBYWFggZmFpbHMgdG8gY3Jvc3MgY29tcGlsZSBkdWUgdG8gcHl0aG9uCi0Jc3VicGFja2FnZXMr PSIgbGxkYiBsbGRiLWRldmVsIgotZmkKLXN1YnBhY2thZ2VzKz0iIGxsZCBsbGQtZGV2ZWwiCitz dWJwYWNrYWdlcz0ibGlibGx2bTkiCiAKIHBvc3RfcGF0Y2goKSB7CiAJIyBwYXRjaGVzCkBAIC02 NCw2MSArMzYsNiBAQCBwb3N0X3BhdGNoKCkgewogCQltc2dfbm9ybWFsICJBcHBseWluZyAkaSB0 byBsbHZtXG4iCiAJCXBhdGNoIC1zTnAxIC1pICR7aX0KIAlkb25lCi0KLQljZCAke1hCUFNfQlVJ TERESVJ9L2NsYW5nLSR7dmVyc2lvbn0uc3JjCi0JZm9yIGkgaW4gJHtGSUxFU0RJUn0vcGF0Y2hl cy9jbGFuZy9jbGFuZy0qLnBhdGNoOyBkbwotCQltc2dfbm9ybWFsICJBcHBseWluZyAkaSB0byBj bGFuZ1xuIgotCQlwYXRjaCAtc05wMSAtaSAke2l9Ci0JZG9uZQotCi0JY2FzZSAiJFhCUFNfVEFS R0VUX01BQ0hJTkUiIGluCi0JYXJtdjUqKQotCQljZCAke1hCUFNfQlVJTERESVJ9L2NvbXBpbGVy LXJ0LSR7dmVyc2lvbn0uc3JjCi0JCWZvciBpIGluICR7RklMRVNESVJ9L3BhdGNoZXMvY29tcGls ZXItcnQvY29tcGlsZXItcnQtKi5wYXRjaDsgZG8KLQkJCW1zZ19ub3JtYWwgIkFwcGx5aW5nICRp IHRvIGNvbXBpbGVyLXJ0XG4iCi0JCQlwYXRjaCAtc05wMSAtaSAke2l9Ci0JCWRvbmUKLQkJOzsK LQllc2FjCi0KLQlpZiBbICIkX2xsZGJfZW5hYmxlIiA9ICJ5ZXMiIF07IHRoZW4KLQkJY2QgJHtY QlBTX0JVSUxERElSfS9sbGRiLSR7dmVyc2lvbn0uc3JjCi0JCWZvciBpIGluICR7RklMRVNESVJ9 L3BhdGNoZXMvbGxkYi8qLnBhdGNoOyBkbwotCQkJbXNnX25vcm1hbCAiQXBwbHlpbmcgJGkgdG8g bGxkYlxuIgotCQkJcGF0Y2ggLXNOcDEgLWkgJHtpfQotCQlkb25lCi0JCWNhc2UgIiRYQlBTX1RB UkdFVF9NQUNISU5FIiBpbgotCQkJKi1tdXNsKSBzZWQgLWkgJ3N8X19wdHJhY2VfcmVxdWVzdHxp bnR8Zycgc291cmNlL1BsdWdpbnMvUHJvY2Vzcy9MaW51eC9OYXRpdmVQcm9jZXNzTGludXguY3Bw IDs7Ci0JCWVzYWMKLQlmaQotCi0JIyBNb3ZlIGNsYW5nIGZpbGVzIGludG8gdGhlIGxsdm0gc291 cmNlLgotCWlmIFsgLWQgJHtYQlBTX0JVSUxERElSfS9jbGFuZy0ke3ZlcnNpb259LnNyYyBdOyB0 aGVuCi0JCW12ICR7WEJQU19CVUlMRERJUn0vY2xhbmctJHt2ZXJzaW9ufS5zcmMgJHt3cmtzcmN9 L3Rvb2xzL2NsYW5nCi0JZmkKLQkjIE1vdmUgY2xhbmctdG9vbHMtZXh0cmEgZmlsZXMgaW50byBs bHZtIHNvdXJjZS4KLQlpZiBbIC1kICR7WEJQU19CVUlMRERJUn0vY2xhbmctdG9vbHMtZXh0cmEt JHt2ZXJzaW9ufS5zcmMgXTsgdGhlbgotCQltdiAke1hCUFNfQlVJTERESVJ9L2NsYW5nLXRvb2xz LWV4dHJhLSR7dmVyc2lvbn0uc3JjICR7d3Jrc3JjfS90b29scy9jbGFuZy90b29scy9leHRyYQot CWZpCi0JIyBNb3ZlIGxsZCBmaWxlcyBpbnRvIHRoZSBsbHZtIHNvdXJjZS4KLQlpZiBbIC1kICR7 WEJQU19CVUlMRERJUn0vbGxkLSR7dmVyc2lvbn0uc3JjIF07IHRoZW4KLQkJbXYgJHtYQlBTX0JV SUxERElSfS9sbGQtJHt2ZXJzaW9ufS5zcmMgJHt3cmtzcmN9L3Rvb2xzL2xsZAotCWZpCi0JIyBN b3ZlIGxsZGIgZmlsZXMgaW50byB0aGUgbGx2bSBzb3VyY2UuCi0JaWYgWyAiJF9sbGRiX2VuYWJs ZSIgPSAieWVzIiAtYSAtZCAke1hCUFNfQlVJTERESVJ9L2xsZGItJHt2ZXJzaW9ufS5zcmMgXTsg dGhlbgotCQltdiAke1hCUFNfQlVJTERESVJ9L2xsZGItJHt2ZXJzaW9ufS5zcmMgJHt3cmtzcmN9 L3Rvb2xzL2xsZGIKLQlmaQotCSMgTW92ZSBjb21waWxlci1ydCBmaWxlcyBpbnRvIHRoZSBsbHZt IHNvdXJjZS4KLQlpZiBbIC1kICR7WEJQU19CVUlMRERJUn0vY29tcGlsZXItcnQtJHt2ZXJzaW9u fS5zcmMgXTsgdGhlbgotCQltdiAke1hCUFNfQlVJTERESVJ9L2NvbXBpbGVyLXJ0LSR7dmVyc2lv bn0uc3JjICR7d3Jrc3JjfS9wcm9qZWN0cy9jb21waWxlci1ydAotCWZpCi0JY2FzZSAiJFhCUFNf VEFSR0VUX01BQ0hJTkUiIGluCi0JCSotbXVzbCkKLQkJCSMgRGlzYWJsZSBzYW5pdGl6ZXJzCi0J CQlzZWQgLWkgJ3Mvc2V0KENPTVBJTEVSX1JUX0hBU19TQU5JVElaRVJfQ09NTU9OIFRSVUUpL3Nl dChDT01QSUxFUl9SVF9IQVNfU0FOSVRJWkVSX0NPTU1PTiBGQUxTRSkvJyAke3dya3NyY30vcHJv amVjdHMvY29tcGlsZXItcnQvY21ha2UvY29uZmlnLWl4LmNtYWtlCi0JCQk7OwotCWVzYWMKLQog fQogCiBwcmVfY29uZmlndXJlKCkgewpAQCAtMTQxLDkgKzU4LDcgQEAgcHJlX2NvbmZpZ3VyZSgp IHsKIAkJCUNYWEZMQUdTPSIkQlVJTERfQ1hYRkxBR1MiIExERkxBR1M9IiRCVUlMRF9MREZMQUdT IiBcCiAJCQljbWFrZSAuLi8uLiAtRENNQUtFX0JVSUxEX1RZUEU9UmVsZWFzZQogCQltYWtlICR7 bWFrZWpvYnN9IC1DIHV0aWxzL1RhYmxlR2VuCi0JCW1ha2UgJHttYWtlam9ic30gLUMgdG9vbHMv Y2xhbmcvdXRpbHMvVGFibGVHZW4KIAkJY29uZmlndXJlX2FyZ3MrPSIgLURMTFZNX1RBQkxFR0VO PSR7d3Jrc3JjfS9idWlsZC9IT1NUL2Jpbi9sbHZtLXRibGdlbiIKLQkJY29uZmlndXJlX2FyZ3Mr PSIgLURDTEFOR19UQUJMRUdFTj0ke3dya3NyY30vYnVpbGQvSE9TVC9iaW4vY2xhbmctdGJsZ2Vu IgogCQljZCAuLi8uLgogCWZpCiAKQEAgLTE4NSwxMDMgKzEwMCw2IEBAIGRvX2luc3RhbGwoKSB7 CiAJZmkKIH0KIAotY2xhbmctYW5hbHl6ZXJfcGFja2FnZSgpIHsKLQlhcmNocz1ub2FyY2gKLQlw eWNvbXBpbGVfZGlycz0idXNyL3NoYXJlL3NjYW4tdmlldyIKLQlkZXBlbmRzPSJjbGFuZy0ke3Zl cnNpb259XyR7cmV2aXNpb259IHB5dGhvbjMiCi0Jc2hvcnRfZGVzYys9IiAtIEEgc291cmNlIGNv ZGUgYW5hbHlzaXMgZnJhbWV3b3JrIgotCWhvbWVwYWdlPSJodHRwczovL2NsYW5nLWFuYWx5emVy Lmxsdm0ub3JnLyIKLQlwa2dfaW5zdGFsbCgpIHsKLQkJdm1vdmUgdXNyL3NoYXJlL21hbi9tYW4x L3NjYW4tYnVpbGQuMQotCQl2bW92ZSAiL3Vzci9iaW4vc2Nhbi0qIgotCQl2bW92ZSAiL3Vzci9z aGFyZS9zY2FuLSoiCi0JCXZtb3ZlICIvdXNyL2xpYmV4ZWMvKmFuYWx5emVyIgotCX0KLX0KLQot Y2xhbmctdG9vbHMtZXh0cmFfcGFja2FnZSgpIHsKLQlkZXBlbmRzPSJjbGFuZy0ke3ZlcnNpb259 XyR7cmV2aXNpb259IHB5dGhvbjMiCi0Jc2hvcnRfZGVzYys9IiAtIEV4dHJhIENsYW5nIHRvb2xz IgotCWhvbWVwYWdlPSJodHRwczovL2NsYW5nLmxsdm0ub3JnL2V4dHJhLyIKLQlwa2dfaW5zdGFs bCgpIHsKLQkJdm1vdmUgdXNyL2Jpbi9jbGFuZy1hcHBseS1yZXBsYWNlbWVudHMKLQkJdm1vdmUg dXNyL2Jpbi9jbGFuZy1xdWVyeQotCQl2bW92ZSB1c3IvYmluL2NsYW5nLXJlbmFtZQotCQl2bW92 ZSB1c3IvYmluL2NsYW5nLXRpZHkKLQkJdm1vdmUgdXNyL2Jpbi9tb2R1bGFyaXplCi0JCXZtb3Zl ICJ1c3IvbGliL2xpYmNsYW5nQXBwbHlSZXBsYWNlbWVudHMqIgotCQl2bW92ZSAidXNyL2xpYi9s aWJjbGFuZ1F1ZXJ5KiIKLQkJdm1vdmUgInVzci9saWIvbGliY2xhbmdUaWR5KiIKLQkJdm1vdmUg InVzci9zaGFyZS9jbGFuZy8qdGlkeSoiCi0JfQotfQotCi1jbGFuZ19wYWNrYWdlKCkgewotCWxp YjMyZGlzYWJsZWQ9eWVzCi0JZGVwZW5kcz0ibGlic3RkYysrLWRldmVsIGxpYmdjYy1kZXZlbCBi aW51dGlscyIKLQljYXNlICIkWEJQU19UQVJHRVRfTUFDSElORSIgaW4KLQkJKi1tdXNsKSBkZXBl bmRzKz0iIG11c2wtZGV2ZWwiOzsKLQkJKikgZGVwZW5kcys9IiBnbGliYy1kZXZlbCI7OwotCWVz YWMKLQlzaG9ydF9kZXNjKz0iIC0gQyBsYW5ndWFnZSBmYW1pbHkgZnJvbnRlbmQiCi0JaG9tZXBh Z2U9Imh0dHBzOi8vY2xhbmcubGx2bS5vcmcvIgotCXBrZ19pbnN0YWxsKCkgewotCQl2bW92ZSB1 c3IvaW5jbHVkZS9jbGFuZwotCQl2bW92ZSB1c3IvaW5jbHVkZS9jbGFuZy1jCi0JCXZtb3ZlICJ1 c3IvYmluLypjbGFuZyoiCi0JCXZtb3ZlIHVzci9iaW4vYy1pbmRleC10ZXN0Ci0JCXZtb3ZlIHVz ci9saWIvY2xhbmcKLQkJdm1vdmUgdXNyL2xpYi9jbWFrZS9jbGFuZwotCQl2bW92ZSAidXNyL2xp Yi9saWJjbGFuZyoiCi0JCXZtb3ZlICJ1c3Ivc2hhcmUvY2xhbmciCi0JfQotfQotCi1sbGRfcGFj a2FnZSgpIHsKLQlsaWIzMmRpc2FibGVkPXllcwotCXNob3J0X2Rlc2MrPSIgLSBsaW5rZXIiCi0J aG9tZXBhZ2U9Imh0dHBzOi8vbGxkLmxsdm0ub3JnIgotCXBrZ19pbnN0YWxsKCkgewotCQl2bW92 ZSB1c3IvYmluL2xsZCoKLQkJdm1vdmUgdXNyL2Jpbi93YXNtLWxkCi0JCXZtb3ZlIHVzci9iaW4v bGQubGxkKgotCX0KLX0KLQotbGxkLWRldmVsX3BhY2thZ2UoKSB7Ci0JbGliMzJkaXNhYmxlZD15 ZXMKLQlzaG9ydF9kZXNjKz0iIC0gbGlua2VyIC0gZGV2ZWxvcG1lbnQgZmlsZXMiCi0JaG9tZXBh Z2U9Imh0dHBzOi8vbGxkLmxsdm0ub3JnIgotCXBrZ19pbnN0YWxsKCkgewotCQl2bW92ZSB1c3Iv aW5jbHVkZS9sbGQKLQkJdm1vdmUgInVzci9saWIvbGlibGxkKmEiCi0JfQotfQotCi1sbGRiX3Bh Y2thZ2UoKSB7Ci0JbGliMzJkaXNhYmxlZD15ZXMKLQlkZXBlbmRzKz0iIHB5dGhvbjMtc2l4Igot CXNob3J0X2Rlc2MrPSIgLSBMTERCIGRlYnVnZ2VyIgotCWhvbWVwYWdlPSJodHRwczovL2xsZGIu bGx2bS5vcmcvIgotCXBrZ19pbnN0YWxsKCkgewotCQl2bW92ZSB1c3IvYmluLypsbGRiKgotCQl2 bW92ZSB1c3IvbGliL2xpYmxsZGIqc28uKgotCQl2bWFuIHRvb2xzL2xsZGIvZG9jcy9sbGRiLjEK LQkJdm1vdmUgL3Vzci9saWIvcHl0aG9uKgotCQkjIERlcGVuZCBvbiBweXRob24zLXNpeCBpbnN0 ZWFkIG9mIGNvbmZsaWN0aW5nCi0JCXJtICR7UEtHREVTVERJUn0vdXNyL2xpYi9weXRob24zKi9z aXRlLXBhY2thZ2VzL3NpeC5weQotCX0KLX0KLQotbGxkYi1kZXZlbF9wYWNrYWdlKCkgewotCWRl cGVuZHM9ImxsZGI+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCi0Jc2hvcnRfZGVzYys9IiAtIExM REIgZGVidWdnZXIgLSBkZXZlbG9wbWVudCBmaWxlcyIKLQlwa2dfaW5zdGFsbCgpIHsKLQkJdm1v dmUgdXNyL2luY2x1ZGUvbGxkYgotCQl2bW92ZSAidXNyL2xpYi9saWJsbGRiKi5zbyIKLQl9Ci19 Ci0KIGxpYmxsdm05X3BhY2thZ2UoKSB7CiAJc2hvcnRfZGVzYys9IiAtIHJ1bnRpbWUgbGlicmFy eSIKIAlwa2dfaW5zdGFsbCgpIHsKCkZyb20gZjEzMzM4MjAyZGY3M2EzMWU0ZTQyYzExNDY0MDAz ZDM5ZDZiNDFiYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogcTY2IDxkYW5pZWxAb2N0 YWZvcmdlLm9yZz4KRGF0ZTogRnJpLCA4IE1heSAyMDIwIDA1OjA4OjU4ICswMjAwClN1YmplY3Q6 IFtQQVRDSCAwMi8yNF0gbGx2bTogdXBkYXRlIHRvIDEwLjAuMAoKLS0tCiBzcmNwa2dzL2xsdm0v dGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9sbHZtL3RlbXBsYXRlIGIvc3JjcGtncy9s bHZtL3RlbXBsYXRlCmluZGV4IGZhNjZiZjg0NDQ0Li45ODc4YmZjYWVkMiAxMDA2NDQKLS0tIGEv c3JjcGtncy9sbHZtL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbGx2bS90ZW1wbGF0ZQpAQCAtMSw5 ICsxLDkgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2xsdm0nCiBwa2duYW1lPWxsdm0KLXZlcnNp b249OS4wLjEKK3ZlcnNpb249MTAuMC4wCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXRhCi1k ZXBlbmRzPSJsbHZtOSIKK2RlcGVuZHM9Imxsdm0xMCIKIHJlcGxhY2VzPSJsbHZtOD49MCBsbHZt Nz49MCBsbHZtNi4wPj0wIGxsdm0zLjk+PTAiCiBzaG9ydF9kZXNjPSJMTFZNIG1ldGEgcGFja2Fn ZSIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCgpGcm9t IDY3ZTdhYTk2YTg1MDc4OWY5ZDAxNDAyMTRiMjgyZDE3MTRiOTMzZjkgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IHE2NiA8ZGFuaWVsQG9jdGFmb3JnZS5vcmc+CkRhdGU6IEZyaSwgOCBN YXkgMjAyMCAwNToxMTozMyArMDIwMApTdWJqZWN0OiBbUEFUQ0ggMDMvMjRdIHJ1c3Q6IHN3aXRj aCB0byBsbHZtOSBmb3Igbm93CgotLS0KIHNyY3BrZ3MvcnVzdC90ZW1wbGF0ZSB8IDQgKystLQog MSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL3J1c3QvdGVtcGxhdGUgYi9zcmNwa2dzL3J1c3QvdGVtcGxhdGUKaW5kZXgg ZTc0MjFjZjRlMDQuLjAyMTVlZWFmNmM1IDEwMDY0NAotLS0gYS9zcmNwa2dzL3J1c3QvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9ydXN0L3RlbXBsYXRlCkBAIC0xMiw3ICsxMiw3IEBAIF9jYXJnb19k aXN0X3ZlcnNpb249MC40MS4wCiAjIHVwbG9hZGVkIHRvIGh0dHBzOi8vYWxwaGEuZGUucmVwby52 b2lkbGludXgub3JnL2Rpc3RmaWxlcy8KIHdya3NyYz0icnVzdGMtJHt2ZXJzaW9ufS1zcmMiCiBo b3N0bWFrZWRlcGVuZHM9ImNtYWtlIGN1cmwgcGtnLWNvbmZpZyBweXRob24zIHRhciIKLW1ha2Vk ZXBlbmRzPSJsaWJmZmktZGV2ZWwgbmN1cnNlcy1kZXZlbCBsaWJ4bWwyLWRldmVsIHpsaWItZGV2 ZWwgbGx2bSIKK21ha2VkZXBlbmRzPSJsaWJmZmktZGV2ZWwgbmN1cnNlcy1kZXZlbCBsaWJ4bWwy LWRldmVsIHpsaWItZGV2ZWwgbGx2bTkiCiBkZXBlbmRzPSJydXN0LXN0ZCIKIHNob3J0X2Rlc2M9 IlNhZmUsIGNvbmN1cnJlbnQsIHByYWN0aWNhbCBzeXN0ZW1zIGxhbmd1YWdlIgogbWFpbnRhaW5l cj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKQEAgLTI4LDcgKzI4LDcgQEAg YnVpbGRfb3B0aW9ucz0ic3RhdGljX2xsdm0iCiBfYm9vdHN0cmFwX2Rpcj0ic3RhZ2UwLWJvb3Rz dHJhcCIKIAogaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCi0JaG9zdG1ha2VkZXBlbmRzKz0i IGNhcmdvIGxsdm0iCisJaG9zdG1ha2VkZXBlbmRzKz0iIGNhcmdvIGxsdm05IgogCSMgVGhlc2Ug YXJlIHJlcXVpcmVkIGZvciBidWlsZGluZyB0aGUgYnVpbGRob3N0J3Mgc3RhZ2UwLzEKIAlob3N0 bWFrZWRlcGVuZHMrPSIgbGliZmZpLWRldmVsIGxpYnhtbDItZGV2ZWwgbmN1cnNlcy1kZXZlbCB6 bGliLWRldmVsIgogZWxzZQoKRnJvbSBkMjAyMzUyM2RkOGE2MTU1YmQxZmYxNjU5OWM2MzkzYWQx MTVjODBkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBxNjYgPGRhbmllbEBvY3RhZm9y Z2Uub3JnPgpEYXRlOiBGcmksIDggTWF5IDIwMjAgMDY6MTM6MzUgKzAyMDAKU3ViamVjdDogW1BB VENIIDA0LzI0XSBtZXNhOiByZWJ1aWxkIGFnYWluc3QgbGx2bTEwCgotLS0KIHNyY3BrZ3MvbWVz YS9wYXRjaGVzL2Nsb3Zlci1wcGM2NC1jcHAxNC5wYXRjaCB8IDEzICsrKysrKysrKysrKysKIHNy Y3BrZ3MvbWVzYS90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIDIg ZmlsZXMgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKIGNyZWF0ZSBt b2RlIDEwMDY0NCBzcmNwa2dzL21lc2EvcGF0Y2hlcy9jbG92ZXItcHBjNjQtY3BwMTQucGF0Y2gK CmRpZmYgLS1naXQgYS9zcmNwa2dzL21lc2EvcGF0Y2hlcy9jbG92ZXItcHBjNjQtY3BwMTQucGF0 Y2ggYi9zcmNwa2dzL21lc2EvcGF0Y2hlcy9jbG92ZXItcHBjNjQtY3BwMTQucGF0Y2gKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmI3ZWVmNzY5NTlhCi0tLSAvZGV2L251 bGwKKysrIGIvc3JjcGtncy9tZXNhL3BhdGNoZXMvY2xvdmVyLXBwYzY0LWNwcDE0LnBhdGNoCkBA IC0wLDAgKzEsMTMgQEAKK0xMVk0xMCBoZWFkZXJzIG5lZWQgQysrMTQsIHNvIG92ZXJyaWRlIHRo ZSBvdmVycmlkZS4KKworLS0tIG1lc29uLmJ1aWxkCisrKysgbWVzb24uYnVpbGQKK0BAIC03MzAs NyArNzMwLDcgQEAgaWYgX29wZW5jbCAhPSAnZGlzYWJsZWQnCisgICAgICAgI2Vycm9yICJBbHRp VmVjIG5vdCBlbmFibGVkIgorICAgICAgICNlbmRpZicnJywKKyAgICAgICBuYW1lIDogJ0FsdGl2 ZWMnKQorLSAgICBjbG92ZXJfY3BwX3N0ZCArPSBbJ2NwcF9zdGQ9Z251KysxMSddCisrICAgIGNs b3Zlcl9jcHBfc3RkICs9IFsnY3BwX3N0ZD1nbnUrKzE0J10KKyAgIGVuZGlmCisgZWxzZQorICAg ZGVwX2NsYyA9IG51bGxfZGVwCmRpZmYgLS1naXQgYS9zcmNwa2dzL21lc2EvdGVtcGxhdGUgYi9z cmNwa2dzL21lc2EvdGVtcGxhdGUKaW5kZXggMGQ0OWYyYmFkZjQuLjNmOThmNDU0NzA5IDEwMDY0 NAotLS0gYS9zcmNwa2dzL21lc2EvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9tZXNhL3RlbXBsYXRl CkBAIC0xLDEzICsxLDEzIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdtZXNhJwogcGtnbmFtZT1t ZXNhCiB2ZXJzaW9uPTIwLjAuNgotcmV2aXNpb249MQorcmV2aXNpb249Mgogd3Jrc3JjPSJtZXNh LSR7dmVyc2lvbn0iCiBidWlsZF9zdHlsZT1tZXNvbgogY29uZmlndXJlX2FyZ3M9Ii1EZ2x2bmQ9 dHJ1ZSAtRHNoYXJlZC1nbGFwaT10cnVlIC1EZ2JtPXRydWUgLURlZ2w9dHJ1ZQogIC1Eb3NtZXNh PWdhbGxpdW0gLURnbGVzMT10cnVlIC1EZ2xlczI9dHJ1ZSAtRGdseD1kcmkgLURkcmkzPXRydWUK ICAtRGxtc2Vuc29ycz10cnVlIC1EcGxhdGZvcm1zPXgxMSxkcm0sJCh2b3B0X2lmIHdheWxhbmQg d2F5bGFuZCksc3VyZmFjZWxlc3MKLSAtRGxsdm09dHJ1ZSAtRGJfbHRvPWZhbHNlIgorIC1EbGx2 bT10cnVlIC1EYl9sdG89ZmFsc2UgLURjcHBfc3RkPWdudSsrMTQiCiBob3N0bWFrZWRlcGVuZHM9 ImdldHRleHQgZmxleCBsaWJ4bWwyLXB5dGhvbiBsbHZtIHBrZy1jb25maWcKICBweXRob24zLU1h a28gJCh2b3B0X2lmIHdheWxhbmQgJ3dheWxhbmQtcHJvdG9jb2xzIHdheWxhbmQtZGV2ZWwnKQog IGdsc2xhbmciCgpGcm9tIGZmZGJmNzlhNDY4YWFkMzQ4ZmViMTg3YTczMGMyNDljMzA5NGRiNmEg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHE2NiA8ZGFuaWVsQG9jdGFmb3JnZS5vcmc+ CkRhdGU6IEZyaSwgOCBNYXkgMjAyMCAwNjoxNDoxNSArMDIwMApTdWJqZWN0OiBbUEFUQ0ggMDUv MjRdIGxpYmNsYy1naXQ6IHJlYnVpbGQgd2l0aCBsbHZtMTAKCi0tLQogc3JjcGtncy9saWJjbGMt Z2l0L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRl bGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJjbGMtZ2l0L3RlbXBsYXRlIGIvc3Jj cGtncy9saWJjbGMtZ2l0L3RlbXBsYXRlCmluZGV4IDYyZTAxMGE3MTI4Li43NDhmZmU5OGZjOCAx MDA2NDQKLS0tIGEvc3JjcGtncy9saWJjbGMtZ2l0L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbGli Y2xjLWdpdC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2xp YmNsYy1naXQnCiBwa2duYW1lPWxpYmNsYy1naXQKIHZlcnNpb249MjAxODExMjcKLXJldmlzaW9u PTMKK3JldmlzaW9uPTQKIF9naXRfaGFzaD0xZWNiMTZkZDdkOGI4ZTkxNTEwMjdmYWFiOTk2ZjI3 YjJhYzUwOGUzCiB3cmtzcmM9ImxpYmNsYy0ke19naXRfaGFzaH0iCiBidWlsZF9zdHlsZT1jb25m aWd1cmUKCkZyb20gMGYyOThhNWRlZWEwOGY2MmVlYmQ2OWIyOTliZjcwZTYyZDJiOGEwMiBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogcTY2IDxkYW5pZWxAb2N0YWZvcmdlLm9yZz4KRGF0 ZTogRnJpLCA4IE1heSAyMDIwIDA2OjQ5OjA4ICswMjAwClN1YmplY3Q6IFtQQVRDSCAwNi8yNF0g cXQ1OiByZWJ1aWxkIGZvciBsbHZtMTAKCi0tLQogc3JjcGtncy9xdDUvdGVtcGxhdGUgfCAyICst CiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL3F0NS90ZW1wbGF0ZSBiL3NyY3BrZ3MvcXQ1L3RlbXBsYXRlCmluZGV4IDVm OTc2NmFlMmY5Li41ZmJlZWYxZjEzZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9xdDUvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9xdDUvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdxdDUnCiBwa2duYW1lPXF0NQogdmVyc2lvbj01LjE0LjIKLXJldmlzaW9uPTIKK3Jl dmlzaW9uPTMKIHdya3NyYz0icXQtZXZlcnl3aGVyZS1zcmMtJHt2ZXJzaW9ufSIKIGJ1aWxkX3N0 eWxlPW1ldGEKIGhvc3RtYWtlZGVwZW5kcz0iY21ha2UgY2xhbmcgZmxleCBnaXQgZ2xpYi1kZXZl bCBwa2ctY29uZmlnCgpGcm9tIDBjMDU3MTY1NTkzMWJjMzY3NTY5Y2ZlZjY5NWFjYjg4ZDE0NWQ2 NjMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHE2NiA8ZGFuaWVsQG9jdGFmb3JnZS5v cmc+CkRhdGU6IEZyaSwgOCBNYXkgMjAyMCAwNjo0OTozMyArMDIwMApTdWJqZWN0OiBbUEFUQ0gg MDcvMjRdIHF0Y3JlYXRvcjogcmVidWlsZCBmb3IgbGx2bTEwCgotLS0KIHNyY3BrZ3MvcXRjcmVh dG9yL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRl bGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdGNyZWF0b3IvdGVtcGxhdGUgYi9zcmNw a2dzL3F0Y3JlYXRvci90ZW1wbGF0ZQppbmRleCBmZDhhYzI3NjU0Ny4uYzc3MzNmNjllNWEgMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvcXRjcmVhdG9yL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcXRjcmVh dG9yL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncXRjcmVh dG9yJwogcGtnbmFtZT1xdGNyZWF0b3IKIHZlcnNpb249NC4xMi4wCi1yZXZpc2lvbj0xCityZXZp c2lvbj0yCiB3cmtzcmM9InF0LWNyZWF0b3Itb3BlbnNvdXJjZS1zcmMtJHt2ZXJzaW9ufSIKIGJ1 aWxkX3N0eWxlPXFtYWtlCiBtYWtlX2luc3RhbGxfYXJncz0iSU5TVEFMTF9ST09UPVwke0RFU1RE SVJ9L3VzciIKCkZyb20gMjg0OWIzMmRiNWM0M2UyOWZkODU4OWRmYTVjMDg1ZjVkMTUzNDY5MyBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogcTY2IDxkYW5pZWxAb2N0YWZvcmdlLm9yZz4K RGF0ZTogRnJpLCA4IE1heSAyMDIwIDA2OjQ5OjQ5ICswMjAwClN1YmplY3Q6IFtQQVRDSCAwOC8y NF0gZ25vbWUtYnVpbGRlcjogcmVidWlsZCBmb3IgbGx2bTEwCgotLS0KIHNyY3BrZ3MvZ25vbWUt YnVpbGRlci90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwg MSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtYnVpbGRlci90ZW1wbGF0 ZSBiL3NyY3BrZ3MvZ25vbWUtYnVpbGRlci90ZW1wbGF0ZQppbmRleCA5ZDcxNTA2NGExOS4uOTcw ZDA4ZjM0NjIgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtYnVpbGRlci90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL2dub21lLWJ1aWxkZXIvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdnbm9tZS1idWlsZGVyJwogcGtnbmFtZT1nbm9tZS1idWlsZGVyCiB2ZXJz aW9uPTMuMzQuMQotcmV2aXNpb249MworcmV2aXNpb249NAogYnVpbGRfc3R5bGU9bWVzb24KIGNv bmZpZ3VyZV9hcmdzPSItRHdpdGhfd2Via2l0PXRydWUgLUR3aXRoX3N5c3Byb2Y9dHJ1ZSAtRGhl bHA9dHJ1ZSIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBhcHBkYXRhLXRvb2xzIGRlc2t0 b3AtZmlsZS11dGlscyBmbGV4IGdvYmplY3QtaW50cm9zcGVjdGlvbgoKRnJvbSA0YTc0MjUxN2M1 YWVhZGU2MjBjNDYxNTI5MjI5ZGVlZWEwYWZkZjMyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiBxNjYgPGRhbmllbEBvY3RhZm9yZ2Uub3JnPgpEYXRlOiBGcmksIDggTWF5IDIwMjAgMDY6 NTA6MDggKzAyMDAKU3ViamVjdDogW1BBVENIIDA5LzI0XSBqdUNpKys6IHJlYnVpbGQgZm9yIGxs dm0xMAoKLS0tCiBzcmNwa2dzL2p1Q2krKy90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2Vk LCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvanVD aSsrL3RlbXBsYXRlIGIvc3JjcGtncy9qdUNpKysvdGVtcGxhdGUKaW5kZXggNzNmYTdkOGIyNjUu LjJlYjQ1YTIzNGIzIDEwMDY0NAotLS0gYS9zcmNwa2dzL2p1Q2krKy90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL2p1Q2krKy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ2p1Q2krKycKIHBrZ25hbWU9anVDaSsrCiB2ZXJzaW9uPTEuNS4wCi1yZXZpc2lvbj00City ZXZpc2lvbj01CiBfbGliY2xhbmdtbV9jb21taXQ9IjY4N2I5YzIzMWQ4NTA1MDRlYzUxNWFjYjlj Y2FiNzNmMjZjMzQwNjMiCiBfdGlueV9jb21taXQ9ImE2NzczMjc2ZWZkYmMzMjJmMWFiYjAxNTkz MDFmNTUwMjY0N2ViNTIiCiB3cmtzcmM9Imp1Y2lwcC12JHt2ZXJzaW9ufSIKCkZyb20gYmRiMDEz ZDlmM2M5MjJkNWQyYjI4OTlkNTNlMzEyMDcyMmYyYWNmYyBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogcTY2IDxkYW5pZWxAb2N0YWZvcmdlLm9yZz4KRGF0ZTogRnJpLCA4IE1heSAyMDIw IDA2OjUwOjUzICswMjAwClN1YmplY3Q6IFtQQVRDSCAxMC8yNF0ga2RldmVsb3A6IHJlYnVpbGQg Zm9yIGxsdm0xMAoKLS0tCiBzcmNwa2dzL2tkZXZlbG9wL3RlbXBsYXRlIHwgMiArLQogMSBmaWxl IGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9rZGV2ZWxvcC90ZW1wbGF0ZSBiL3NyY3BrZ3Mva2RldmVsb3AvdGVtcGxhdGUKaW5kZXgg NjRkZDAzNmU0NTYuLjE5OGNkNTQ2ZmIxIDEwMDY0NAotLS0gYS9zcmNwa2dzL2tkZXZlbG9wL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3Mva2RldmVsb3AvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdrZGV2ZWxvcCcKIHBrZ25hbWU9a2RldmVsb3AKIHZlcnNpb249 NS41LjAKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1aWxkX3N0eWxlPWNtYWtlCiBob3N0bWFr ZWRlcGVuZHM9ImV4dHJhLWNtYWtlLW1vZHVsZXMgcXQ1LXFtYWtlIHF0NS1ob3N0LXRvb2xzIHF0 NS10b29scwogIGtjbXV0aWxzIGtjb3JlYWRkb25zIGtkZXZlbG9wLXBnLXF0IHBsYXNtYS1mcmFt ZXdvcmsgZ2V0dGV4dCBsbHZtIHRhciB3aGljaCIKCkZyb20gMWU4Y2FjMTgyZDIyODEzODQyMjFj NDNkY2M3NWQ2OWNlNzY4MTNmZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogUmVuYXRv IEFndWlhciA8cmVuYXRvQHJlbmF0b2FndWlhci5uZXQ+CkRhdGU6IFRodSwgNyBNYXkgMjAyMCAy Mzo0MzozMiAtMDcwMApTdWJqZWN0OiBbUEFUQ0ggMTEvMjRdIHJkZWR1cDogb3JwaGFuLCByZWJ1 aWxkIGZvciBsbHZtMTAKCi0tLQogc3JjcGtncy9yZGVkdXAvdGVtcGxhdGUgfCA0ICsrLS0KIDEg ZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9yZGVkdXAvdGVtcGxhdGUgYi9zcmNwa2dzL3JkZWR1cC90ZW1wbGF0ZQppbmRl eCAxNGFiYWI2YTg1YS4uOTRjYjUyM2ZhYjIgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcmRlZHVwL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvcmRlZHVwL3RlbXBsYXRlCkBAIC0xLDEzICsxLDEzIEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdyZGVkdXAnCiBwa2duYW1lPXJkZWR1cAogdmVyc2lvbj0zLjEu MQotcmV2aXNpb249MworcmV2aXNpb249NAogd3Jrc3JjPXJkZWR1cC1yZGVkdXAtdiR7dmVyc2lv bn0KIGJ1aWxkX3N0eWxlPWNhcmdvCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgY2xhbmci CiBtYWtlZGVwZW5kcz0ibGlicmVzc2wtZGV2ZWwgbGlibHptYS1kZXZlbCBsaWJzb2RpdW0tZGV2 ZWwiCiBzaG9ydF9kZXNjPSJEYXRhIGRlZHVwbGljYXRpb24gZW5naW5lIgotbWFpbnRhaW5lcj0i UmVuYXRvIEFndWlhciA8cmVuYXRvQHJlbmFnLm1lPiIKK21haW50YWluZXI9Ik9ycGhhbmVkIDxv cnBoYW5Adm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJNUEwtMi4wIgogaG9tZXBhZ2U9Imh0dHBz Oi8vZ2l0aHViLmNvbS9kcGMvcmRlZHVwIgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20v ZHBjL3JkZWR1cC9hcmNoaXZlL3JkZWR1cC12JHt2ZXJzaW9ufS50YXIuZ3oiCgpGcm9tIDgxYWEw OGY1NWMwNTQ3YTQ3OTBhMGZlYjUwZmI5MDhmZmQxOWMyYTEgTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCkZyb206IHE2NiA8ZGFuaWVsQG9jdGFmb3JnZS5vcmc+CkRhdGU6IEZyaSwgOCBNYXkgMjAy MCAxODowMjozOCArMDIwMApTdWJqZWN0OiBbUEFUQ0ggMTIvMjRdIGJwZnRyYWNlOiByZWJ1aWxk IGFnYWluc3QgbGx2bTEwCgotLS0KIHNyY3BrZ3MvYnBmdHJhY2UvdGVtcGxhdGUgfCA1ICstLS0t CiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0t Z2l0IGEvc3JjcGtncy9icGZ0cmFjZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvYnBmdHJhY2UvdGVtcGxh dGUKaW5kZXggNTk2OTNmY2VkZGIuLjlhZTE3NWJhZDhjIDEwMDY0NAotLS0gYS9zcmNwa2dzL2Jw ZnRyYWNlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvYnBmdHJhY2UvdGVtcGxhdGUKQEAgLTIsNiAr Miw3IEBACiBwa2duYW1lPWJwZnRyYWNlCiB2ZXJzaW9uPTAuMTAuMAogcmV2aXNpb249MQorYXJj aHM9Ing4Nl82NCogYWFyY2g2NCogcHBjNjQqIgogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3Vy ZV9hcmdzPSItREJVSUxEX1RFU1RJTkc9T0ZGIiAgIyBuZWVkcyByb290IHRvIHJ1bgogaG9zdG1h a2VkZXBlbmRzPSJwa2ctY29uZmlnIGZsZXgiCkBAIC0xMywxMCArMTQsNiBAQCBob21lcGFnZT0i aHR0cHM6Ly9naXRodWIuY29tL2lvdmlzb3IvYnBmdHJhY2UvIgogZGlzdGZpbGVzPSJodHRwczov L2dpdGh1Yi5jb20vaW92aXNvci9icGZ0cmFjZS9hcmNoaXZlL3Yke3ZlcnNpb259LnRhci5neiIK IGNoZWNrc3VtPTUwZWE4MGMwZTMzN2M0YWFhMjYwOTExZTAxM2I5MmFlMDliZGQ1YTA2MmIyM2Vi NzQ4MjkwNDA5YmMyODQ0ZGIKIAotaWYgWyAiJFhCUFNfVEFSR0VUX1dPUkRTSVpFIiAhPSA2NCBd OyB0aGVuCi0JYnJva2VuPSJPbmx5IDY0IGJpdCB0YXJnZXRzIGFyZSBzdXBwb3J0ZWQuICR7WEJQ U19UQVJHRVRfTUFDSElORX0gaXMgJHtYQlBTX1RBUkdFVF9XT1JEU0laRX0gYml0LiIKLWZpCi0K IHBvc3RfaW5zdGFsbCgpIHsKIAkjIGNsYXNoZXMgd2l0aCBiY2MtdG9vbHMKIAlybSAtcmYgJHtE RVNURElSfS91c3Ivc2hhcmUvbWFuCgpGcm9tIDc5NzkxNGY4ZjIzZjU3ZTg2NzU2Yzk4NDgxZTA5 ZTdjMDE1ODQwMDEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHE2NiA8ZGFuaWVsQG9j dGFmb3JnZS5vcmc+CkRhdGU6IEZyaSwgOCBNYXkgMjAyMCAxODowMjo1MyArMDIwMApTdWJqZWN0 OiBbUEFUQ0ggMTMvMjRdIHJ0YWdzOiByZWJ1aWxkIGZvciBsbHZtMTAKCi0tLQogc3JjcGtncy9y dGFncy90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBk ZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcnRhZ3MvdGVtcGxhdGUgYi9zcmNwa2dz L3J0YWdzL3RlbXBsYXRlCmluZGV4IGUxODA2YzNmOTI0Li5kYzdlZTVlZDllOSAxMDA2NDQKLS0t IGEvc3JjcGtncy9ydGFncy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3J0YWdzL3RlbXBsYXRlCkBA IC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncnRhZ3MnCiBwa2duYW1lPXJ0YWdz CiB2ZXJzaW9uPTIuMzgKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWNtYWtl CiAjIERvbid0IHJ1biB0ZXN0cyBpbiBkb19pbnN0YWxsLCBwbGVhc2UuCiBjb25maWd1cmVfYXJn cz0iLURTS0lQX0NURVNUPVRSVUUiCgpGcm9tIGEzMDU4NGI2NmM3YmExNGM1ZDQ0ZjEzNGE3MDM5 ZGViYzRkNmY1YjQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHE2NiA8ZGFuaWVsQG9j dGFmb3JnZS5vcmc+CkRhdGU6IEZyaSwgOCBNYXkgMjAyMCAxODowMzowOCArMDIwMApTdWJqZWN0 OiBbUEFUQ0ggMTQvMjRdIHNoaWJva2VuMjogcmVidWlsZCBmb3IgbGx2bTEwCgotLS0KIHNyY3Br Z3Mvc2hpYm9rZW4yL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9u KCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zaGlib2tlbjIvdGVtcGxh dGUgYi9zcmNwa2dzL3NoaWJva2VuMi90ZW1wbGF0ZQppbmRleCBhNGNlNTdlMDFmZS4uN2IyMTc0 YWE2NmIgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvc2hpYm9rZW4yL3RlbXBsYXRlCisrKyBiL3NyY3Br Z3Mvc2hpYm9rZW4yL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAnc2hpYm9rZW4yJwogcGtnbmFtZT1zaGlib2tlbjIKIHZlcnNpb249NS4xNC4xCi1yZXZpc2lv bj0xCityZXZpc2lvbj0yCiBfcGtnbmFtZT0icHlzaWRlLXNldHVwLW9wZW5zb3VyY2Utc3JjLSR7 dmVyc2lvbn0iCiB3cmtzcmM9IiRfcGtnbmFtZSIKIGNvbmZpZ3VyZV9hcmdzPSItRFVTRV9QWVRI T05fVkVSU0lPTj0zIC1EQ01BS0VfSU5TVEFMTF9QUkVGSVg9L3VzcgoKRnJvbSA0M2Y2MzNlYzVl NGM2NDEzMzhmZGU0N2NlNGQ1ZTRkOTA1NDU1NDY0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiBxNjYgPGRhbmllbEBvY3RhZm9yZ2Uub3JnPgpEYXRlOiBGcmksIDggTWF5IDIwMjAgMTg6 MTI6NDIgKzAyMDAKU3ViamVjdDogW1BBVENIIDE1LzI0XSBjb2RlbGl0ZTogcmVidWlsZCBmb3Ig bGx2bTEwCgotLS0KIHNyY3BrZ3MvY29kZWxpdGUvdGVtcGxhdGUgfCA3ICsrKystLS0KIDEgZmls ZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv c3JjcGtncy9jb2RlbGl0ZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvY29kZWxpdGUvdGVtcGxhdGUKaW5k ZXggMGRiNDZhMDkxZDkuLmEyYTA5ZDc5ZmExIDEwMDY0NAotLS0gYS9zcmNwa2dzL2NvZGVsaXRl L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvY29kZWxpdGUvdGVtcGxhdGUKQEAgLTEsMTIgKzEsMTMg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2NvZGVsaXRlJwogcGtnbmFtZT1jb2RlbGl0ZQogdmVy c2lvbj0xMy4wCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCithcmNocz0iaTY4NiogeDg2XzY0KiBw cGM2NGxlKiIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURXSVRIX1BDSD0w CiAgJCh2b3B0X2lmIHNmdHAgLURFTkFCTEVfU0ZUUD0xKQogICQodm9wdF9pZiBsbGRiIC1ERU5B QkxFX0xMREI9MSkiCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgY2xhbmciCitob3N0bWFr ZWRlcGVuZHM9InBrZy1jb25maWcgY2xhbmcgd2hpY2giCiBtYWtlZGVwZW5kcz0iZ3RrKzMtZGV2 ZWwgd3hXaWRnZXRzLWd0azMtZGV2ZWwgc3FsaXRlLWRldmVsCiAgJCh2b3B0X2lmIGxsZGIgbGxk Yi1kZXZlbCkgJCh2b3B0X2lmIGh1bnNwZWxsIGh1bnNwZWxsLWRldmVsKQogICQodm9wdF9pZiBt eXNxbCBsaWJtYXJpYWRiY2xpZW50LWRldmVsKSAkKHZvcHRfaWYgc2Z0cCBsaWJzc2gtZGV2ZWwp IgpAQCAtMTYsOSArMTcsOSBAQCBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9 Imh0dHA6Ly93d3cuY29kZWxpdGUub3JnIgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20v ZXJhbmlmLyR7cGtnbmFtZX0vYXJjaGl2ZS8ke3ZlcnNpb259LnRhci5neiIKIGNoZWNrc3VtPWYy NjUzZmE0MmQ2MjE0OTk5NzE4MjM2OTk4Y2IyMjNlNmRlMDBhNDk4YzBjZmRlNzk1ZTkwMWJlNjkz ZmI5YWMKK25vY3Jvc3M9eWVzCiBweXRob25fdmVyc2lvbj0yICN1bnZlcmlmaWVkCiAKLWFyY2hz PSJpNjg2KiB4ODZfNjQqIHBwYzY0bGUqIgogYnVpbGRfb3B0aW9ucz0iaHVuc3BlbGwgbGxkYiBt eXNxbCBzZnRwIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJodW5zcGVsbCBsbGRiIHNmdHAiCiBk ZXNjX29wdGlvbl9odW5zcGVsbD0iRW5hYmxlIFNwZWxsQ2hlY2sgcGx1Z2luIgoKRnJvbSA2MWIx ZTY5ZmJjYjNiZDAxNjNkNDFjZTVjMzBhMWFkZDUwMWUzYzY4IE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiBxNjYgPGRhbmllbEBvY3RhZm9yZ2Uub3JnPgpEYXRlOiBGcmksIDggTWF5IDIw MjAgMTk6NDY6NTkgKzAyMDAKU3ViamVjdDogW1BBVENIIDE2LzI0XSBjY2xzOiB1cGRhdGUgdG8g MC4yMDE5MDgyMy42CgotLS0KIHNyY3BrZ3MvYmNjL3RlbXBsYXRlICB8IDIgKy0KIHNyY3BrZ3Mv Y2Nscy90ZW1wbGF0ZSB8IDQgKystLQogMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyks IDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9iY2MvdGVtcGxhdGUgYi9zcmNw a2dzL2JjYy90ZW1wbGF0ZQppbmRleCBjOWExY2FhZGZjMy4uNzlhZWNmYTQzZjggMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvYmNjL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvYmNjL3RlbXBsYXRlCkBAIC0x LDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnYmNjJwogcGtnbmFtZT1iY2MKIHZlcnNp b249MC4xMy4wCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiB3cmtzcmM9ImJjYyIKIGJ1aWxkX3N0 eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURSRVZJU0lPTj0ke3ZlcnNpb259IgpkaWZmIC0t Z2l0IGEvc3JjcGtncy9jY2xzL3RlbXBsYXRlIGIvc3JjcGtncy9jY2xzL3RlbXBsYXRlCmluZGV4 IGM0YmNhYmZiYzY1Li5iZWJmYTBmNGM2MSAxMDA2NDQKLS0tIGEvc3JjcGtncy9jY2xzL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvY2Nscy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ2NjbHMnCiBwa2duYW1lPWNjbHMKLXZlcnNpb249MC4yMDE5MDgyMy41Cit2 ZXJzaW9uPTAuMjAxOTA4MjMuNgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGhvc3Rt YWtlZGVwZW5kcz0iY2xhbmctdG9vbHMtZXh0cmEiCkBAIC0xMCw3ICsxMCw3IEBAIG1haW50YWlu ZXI9Ik5hdGhhbiBPd2VucyA8bmRvd2VuczA0QGdtYWlsLmNvbT4iCiBsaWNlbnNlPSJBcGFjaGUt Mi4wIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNvbS9NYXNrUmF5L2NjbHMiCiBkaXN0Zmls ZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9NYXNrUmF5L2NjbHMvYXJjaGl2ZS8ke3ZlcnNpb259LnRh ci5neiIKLWNoZWNrc3VtPTZmMzlmYTVjZTc5YzE2ODI5NzM4MTFjZTI0MDk3MTg3MTBiZmVmNjAw OGY5NGY5NjI3NzM5M2U2ODQ2YmQ3NmMKK2NoZWNrc3VtPTgzZGQ0NTEyMGU5Njc0MzE5ZjkxZTQz NzkwMTM4MzFlMTI0YzA4NThlMDUwYmJjMzUyMWUzZjhhZWJlNWM5NWIKIG5vY3Jvc3M9IkNsYW5n IGNhbm5vdCBiZSBpbnN0YWxsZWQgYXMgbWFrZWRlcCIKIAogaWYgWyAiJFhCUFNfVEFSR0VUX05P X0FUT01JQzgiIF07IHRoZW4KCkZyb20gMWFhYWUwOTZiZjM4ZThjNjg0YzZiZmI4MTcxZGQ2ZjNj ZDY2ZTY4NSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogcTY2IDxkYW5pZWxAb2N0YWZv cmdlLm9yZz4KRGF0ZTogRnJpLCA4IE1heSAyMDIwIDE5OjUzOjM1ICswMjAwClN1YmplY3Q6IFtQ QVRDSCAxNy8yNF0gY2xhenk6IHJlYnVpbGQgYWdhaW5zdCBsbHZtMTAKCi0tLQogc3JjcGtncy9j bGF6eS9wYXRjaGVzL2xsdm0xMC5wYXRjaCB8IDcyICsrKysrKysrKysrKysrKysrKysrKysrKysr KysrKwogc3JjcGtncy9jbGF6eS90ZW1wbGF0ZSAgICAgICAgICAgICB8ICAyICstCiAyIGZpbGVz IGNoYW5nZWQsIDczIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKIGNyZWF0ZSBtb2RlIDEw MDY0NCBzcmNwa2dzL2NsYXp5L3BhdGNoZXMvbGx2bTEwLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9jbGF6eS9wYXRjaGVzL2xsdm0xMC5wYXRjaCBiL3NyY3BrZ3MvY2xhenkvcGF0Y2hlcy9s bHZtMTAucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjI4OWRl YWFiYmU0Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9jbGF6eS9wYXRjaGVzL2xsdm0xMC5w YXRjaApAQCAtMCwwICsxLDcyIEBACitGcm9tIGRmNDFiZDI5NDMzOTM3MTExZWRjYTM2NTRhN2Jl YjExZWM3NjUwMjkgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBKb2hhbm5lcyBaaWVn ZW5iYWxnIDxKb2hhbm5lcy5aaWVnZW5iYWxnQHR1LWRyZXNkZW4uZGU+CitEYXRlOiBGcmksIDI3 IE1hciAyMDIwIDE0OjE4OjMyICswMTAwCitTdWJqZWN0OiBbUEFUQ0hdIEZpeCBidWlsZCBpc3N1 ZXMgdXNpbmcgbGx2bSAxMC4wLjAKKworLS0tCisgQ01ha2VMaXN0cy50eHQgICAgICAgICAgICAg ICAgICAgIHwgIDIgKy0KKyBzcmMvQ2xhenlTdGFuZGFsb25lTWFpbi5jcHAgICAgICAgfCAxMCAr KysrKysrKysrCisgc3JjL2NoZWNrcy9sZXZlbDAvcXN0cmluZy1yZWYuY3BwIHwgIDQgKysrKwor IDMgZmlsZXMgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQorCitkaWZm IC0tZ2l0IGEvQ01ha2VMaXN0cy50eHQgYi9DTWFrZUxpc3RzLnR4dAoraW5kZXggZjE0NjNjZmUu LmEzMDgxM2Y4IDEwMDY0NAorLS0tIENNYWtlTGlzdHMudHh0CisrKysgQ01ha2VMaXN0cy50eHQK K0BAIC01Myw3ICs1Myw3IEBAIGlmKE1TVkMpCisgICAjIGRpc2FibGUgdHJpZ2dlci1oYXBweSB3 YXJuaW5ncyBmcm9tIENsYW5nL0xMVk0gaGVhZGVycworICAgc2V0KENNQUtFX0NYWF9GTEFHUyAi JHtDTUFLRV9DWFhfRkxBR1N9IC93ZDQyNjcgL3dkNDI0NCAvd2Q0MjkxIC93ZDQ4MDAgL3dkNDE0 MSAvd2Q0MTQ2IC93ZDQyNTEiKQorIGVsc2VpZihDTUFLRV9DT01QSUxFUl9JU19HTlVDWFggT1Ig Q01BS0VfQ1hYX0NPTVBJTEVSX0lEIE1BVENIRVMgIkNsYW5nIikKKy0gIHNldChDTUFLRV9DWFhf RkxBR1MgIiR7Q01BS0VfQ1hYX0ZMQUdTfSAtc3RkPWMrKzExIC1mbm8tY29tbW9uIC1Xb3Zlcmxv YWRlZC12aXJ0dWFsIC1XY2FzdC1xdWFsIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1wZWRhbnRpYyAt V25vLWxvbmctbG9uZyAtV2FsbCAtVyAtV25vLXVudXNlZC1wYXJhbWV0ZXIgLVd3cml0ZS1zdHJp bmdzIC1mbm8tZXhjZXB0aW9ucyAtZm5vLXJ0dGkiKQorKyAgc2V0KENNQUtFX0NYWF9GTEFHUyAi JHtDTUFLRV9DWFhfRkxBR1N9IC1zdGQ9YysrMTQgLWZuby1jb21tb24gLVdvdmVybG9hZGVkLXZp cnR1YWwgLVdjYXN0LXF1YWwgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXBlZGFudGljIC1Xbm8tbG9u Zy1sb25nIC1XYWxsIC1XIC1Xbm8tdW51c2VkLXBhcmFtZXRlciAtV3dyaXRlLXN0cmluZ3MgLWZu by1leGNlcHRpb25zIC1mbm8tcnR0aSIpCisgZW5kaWYoKQorIAorIHNldChDTUFLRV9NT0RVTEVf TElOS0VSX0ZMQUdTICIke0NNQUtFX01PRFVMRV9MSU5LRVJfRkxBR1N9IC1XbCwtZmxhdF9uYW1l c3BhY2UgLVdsLC11bmRlZmluZWQgLVdsLHN1cHByZXNzIikKK2RpZmYgLS1naXQgYS9zcmMvQ2xh enlTdGFuZGFsb25lTWFpbi5jcHAgYi9zcmMvQ2xhenlTdGFuZGFsb25lTWFpbi5jcHAKK2luZGV4 IGFhZGExODk1Li42YmFhZTMyOSAxMDA2NDQKKy0tLSBzcmMvQ2xhenlTdGFuZGFsb25lTWFpbi5j cHAKKysrKyBzcmMvQ2xhenlTdGFuZGFsb25lTWFpbi5jcHAKK0BAIC05Myw3ICs5MywxMSBAQCBj bGFzcyBDbGF6eVRvb2xBY3Rpb25GYWN0b3J5CisgICAgIHsKKyAgICAgfQorIAorKyNpZiBMTFZN X1ZFUlNJT05fTUFKT1IgPj0gMTAKKysgICAgc3RkOjp1bmlxdWVfcHRyPEZyb250ZW5kQWN0aW9u PiBjcmVhdGUoKSBvdmVycmlkZQorKyNlbHNlCisgICAgIEZyb250ZW5kQWN0aW9uICpjcmVhdGUo KSBvdmVycmlkZQorKyNlbmRpZgorICAgICB7CisgICAgICAgICBDbGF6eUNvbnRleHQ6OkNsYXp5 T3B0aW9ucyBvcHRpb25zID0gQ2xhenlDb250ZXh0OjpDbGF6eU9wdGlvbl9Ob25lOworIAorQEAg LTExNiw5ICsxMjAsMTUgQEAgY2xhc3MgQ2xhenlUb29sQWN0aW9uRmFjdG9yeQorICAgICAgICAg ICAgIG9wdGlvbnMgfD0gQ2xhenlDb250ZXh0OjpDbGF6eU9wdGlvbl9JZ25vcmVJbmNsdWRlZEZp bGVzOworIAorICAgICAgICAgLy8gVE9ETzogV2UgbmVlZCB0byBhZ3JlZ2F0ZSB0aGUgZml4ZXMg d2l0aCBwcmV2aW91cyBydW4KKysjaWYgTExWTV9WRVJTSU9OX01BSk9SID49IDEwCisrICAgICAg ICByZXR1cm4gc3RkOjptYWtlX3VuaXF1ZTxDbGF6eVN0YW5kYWxvbmVBU1RBY3Rpb24+KHNfY2hl Y2tzLmdldFZhbHVlKCksIHNfaGVhZGVyRmlsdGVyLmdldFZhbHVlKCksCisrICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNfaWdub3JlRGly cy5nZXRWYWx1ZSgpLCBzX2V4cG9ydEZpeGVzLmdldFZhbHVlKCksCisrICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1fcGF0aHMsIG9wdGlv bnMpOworKyNlbHNlCisgICAgICAgICByZXR1cm4gbmV3IENsYXp5U3RhbmRhbG9uZUFTVEFjdGlv bihzX2NoZWNrcy5nZXRWYWx1ZSgpLCBzX2hlYWRlckZpbHRlci5nZXRWYWx1ZSgpLAorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc19pZ25vcmVEaXJzLmdldFZh bHVlKCksIHNfZXhwb3J0Rml4ZXMuZ2V0VmFsdWUoKSwKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIG1fcGF0aHMsIG9wdGlvbnMpOworKyNlbmRpZgorICAgICB9 CisgICAgIHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiBtX3BhdGhzOworIH07CitkaWZmIC0tZ2l0 IGEvc3JjL2NoZWNrcy9sZXZlbDAvcXN0cmluZy1yZWYuY3BwIGIvc3JjL2NoZWNrcy9sZXZlbDAv cXN0cmluZy1yZWYuY3BwCitpbmRleCBkMWQ4YTRlYS4uZWM5ZTg5MDEgMTAwNjQ0CistLS0gc3Jj L2NoZWNrcy9sZXZlbDAvcXN0cmluZy1yZWYuY3BwCisrKysgc3JjL2NoZWNrcy9sZXZlbDAvcXN0 cmluZy1yZWYuY3BwCitAQCAtMTE3LDcgKzExNywxMSBAQCBzdGF0aWMgYm9vbCBjb250YWluc0No aWxkKFN0bXQgKnMsIFN0bXQgKnRhcmdldCkKKyAgICAgICAgIHJldHVybiB0cnVlOworIAorICAg ICBpZiAoYXV0byBtdGUgPSBkeW5fY2FzdDxNYXRlcmlhbGl6ZVRlbXBvcmFyeUV4cHI+KHMpKSB7 CisrI2lmIExMVk1fVkVSU0lPTl9NQUpPUiA+PSAxMAorKyAgICAgICAgcmV0dXJuIGNvbnRhaW5z Q2hpbGQobXRlLT5nZXRTdWJFeHByKCksIHRhcmdldCk7CisrI2Vsc2UKKyAgICAgICAgIHJldHVy biBjb250YWluc0NoaWxkKG10ZS0+Z2V0VGVtcG9yYXJ5KCksIHRhcmdldCk7CisrI2VuZGlmCisg ICAgIH0gZWxzZSBpZiAoYXV0byBpY2UgPSBkeW5fY2FzdDxJbXBsaWNpdENhc3RFeHByPihzKSkg eworICAgICAgICAgcmV0dXJuIGNvbnRhaW5zQ2hpbGQoaWNlLT5nZXRTdWJFeHByKCksIHRhcmdl dCk7CisgICAgIH0gZWxzZSBpZiAoYXV0byBidGUgPSBkeW5fY2FzdDxDWFhCaW5kVGVtcG9yYXJ5 RXhwcj4ocykpIHsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY2xhenkvdGVtcGxhdGUgYi9zcmNwa2dz L2NsYXp5L3RlbXBsYXRlCmluZGV4IGY3Zjc5MDM5NWU2Li5kOTg0NmQ1YjQxZSAxMDA2NDQKLS0t IGEvc3JjcGtncy9jbGF6eS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2NsYXp5L3RlbXBsYXRlCkBA IC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnY2xhenknCiBwa2duYW1lPWNsYXp5 CiB2ZXJzaW9uPTEuNgotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UK IGhvc3RtYWtlZGVwZW5kcz0icHl0aG9uIgogbWFrZWRlcGVuZHM9ImNsYW5nIGxsdm0iCgpGcm9t IDM2NGQxYWU3Y2IwYzEzNGQxZTUxYWU2M2MzNDY0MjQ0NWUyYjVmYTYgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IHE2NiA8ZGFuaWVsQG9jdGFmb3JnZS5vcmc+CkRhdGU6IEZyaSwgOCBN YXkgMjAyMCAyMDowNToyMiArMDIwMApTdWJqZWN0OiBbUEFUQ0ggMTgvMjRdIGxsdm0tbGlidW53 aW5kOiB1cGRhdGUgdG8gMTAuMC4wCgotLS0KIHNyY3BrZ3MvbGx2bS1saWJ1bndpbmQvdGVtcGxh dGUgfCAxMCArKysrKy0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA1IGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGx2bS1saWJ1bndpbmQvdGVtcGxhdGUg Yi9zcmNwa2dzL2xsdm0tbGlidW53aW5kL3RlbXBsYXRlCmluZGV4IGM1ZGQyZGE2NzFlLi42ZTIw YTc5MWU2NSAxMDA2NDQKLS0tIGEvc3JjcGtncy9sbHZtLWxpYnVud2luZC90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL2xsdm0tbGlidW53aW5kL3RlbXBsYXRlCkBAIC0xLDE4ICsxLDE4IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdsbHZtLWxpYnVud2luZCcKIHBrZ25hbWU9bGx2bS1saWJ1bndpbmQK LXZlcnNpb249OS4wLjAKK3ZlcnNpb249MTAuMC4wCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1j bWFrZQogd3Jrc3JjPSJsaWJ1bndpbmQtJHt2ZXJzaW9ufS5zcmMiCi1ob3N0bWFrZWRlcGVuZHM9 Imxsdm05IgotbWFrZWRlcGVuZHM9Imxsdm05IgoraG9zdG1ha2VkZXBlbmRzPSJsbHZtMTAiCitt YWtlZGVwZW5kcz0ibGx2bTEwIgogbWFrZV9idWlsZF9hcmdzPSJWRVJCT1NFPTEiCiBzaG9ydF9k ZXNjPSJMTFZNIHZlcnNpb24gb2YgbGlidW53aW5kIGxpYnJhcnkiCiBtYWludGFpbmVyPSJPcnBo YW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iTkNTQSwgTUlUIgogaG9tZXBh Z2U9Imh0dHBzOi8vbGx2bS5vcmciCi1kaXN0ZmlsZXM9Imh0dHBzOi8vd3d3Lmxsdm0ub3JnL3Jl bGVhc2VzLyR7dmVyc2lvbn0vbGlidW53aW5kLSR7dmVyc2lvbn0uc3JjLnRhci54eiIKLWNoZWNr c3VtPTk3NmE4ZDA5ZTE0MjRmYjg0MzIxMGVlY2VjMDBhNTA2Yjk1NmU2YzMxYWRkYTNiMGQxOTll OTQ1YmUwZDBkYjIKK2Rpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL2xsdm0vbGx2bS1wcm9q ZWN0L3JlbGVhc2VzL2Rvd25sb2FkL2xsdm1vcmctJHt2ZXJzaW9ufS9saWJ1bndpbmQtJHt2ZXJz aW9ufS5zcmMudGFyLnh6IgorY2hlY2tzdW09MDlkYzVlY2M0NzE0ODA5ZWNmNjI5MDhhZThmZTg2 MzVhYjQ3Njg4MDQ1NTI4NzAzNmEyNzMwOTY2ODMzYzYyNgogCiBwb3N0X2luc3RhbGwoKSB7CiAJ dm1rZGlyIHVzci9pbmNsdWRlCgpGcm9tIDljZjQ4NjIxZTg1NWNhYzEwZGMzM2RkMGYxNzlhNmVl MmYwMmM0OGEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHE2NiA8ZGFuaWVsQG9jdGFm b3JnZS5vcmc+CkRhdGU6IEZyaSwgOCBNYXkgMjAyMCAyMDoxMTo0MiArMDIwMApTdWJqZWN0OiBb UEFUQ0ggMTkvMjRdIGxpYmN4eGFiaTogdXBkYXRlIHRvIDEwLjAuMAoKLS0tCiBzcmNwa2dzL2xp YmN4eGFiaS90ZW1wbGF0ZSB8IDE0ICsrKysrKystLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNyBp bnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGliY3h4 YWJpL3RlbXBsYXRlIGIvc3JjcGtncy9saWJjeHhhYmkvdGVtcGxhdGUKaW5kZXggMDNiOTQyNGRl ZWUuLjk3OTkyYTc5ZmY4IDEwMDY0NAotLS0gYS9zcmNwa2dzL2xpYmN4eGFiaS90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2xpYmN4eGFiaS90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ2xpYmN4eGFiaScKIHBrZ25hbWU9bGliY3h4YWJpCi12ZXJzaW9uPTkuMC4w Cit2ZXJzaW9uPTEwLjAuMAogcmV2aXNpb249MQogd3Jrc3JjPSIke3BrZ25hbWV9LSR7dmVyc2lv bn0uc3JjIgogYnVpbGRfc3R5bGU9Y21ha2UKQEAgLTgsMTYgKzgsMTYgQEAgY29uZmlndXJlX2Fy Z3M9Ii1ETElCQ1hYQUJJX0xJQkNYWF9JTkNMVURFUz0uLi9saWJjeHgvaW5jbHVkZQogIC1ETElC Q1hYQUJJX1VTRV9MTFZNX1VOV0lOREVSPTEKICAtRExMVk1fREVGQVVMVF9UQVJHRVRfVFJJUExF PSR7WEJQU19DUk9TU19UUklQTEVUOi0kWEJQU19UUklQTEVUfSIKIG1ha2VfYnVpbGRfYXJncz0i VkVSQk9TRT0xIgotaG9zdG1ha2VkZXBlbmRzPSJsbHZtOSIKLW1ha2VkZXBlbmRzPSJsbHZtOSBs bHZtLWxpYnVud2luZC1kZXZlbCIKK2hvc3RtYWtlZGVwZW5kcz0ibGx2bTEwIgorbWFrZWRlcGVu ZHM9Imxsdm0xMCBsbHZtLWxpYnVud2luZC1kZXZlbCIKIHNob3J0X2Rlc2M9Ikxvdy1sZXZlbCBz dXBwb3J0IGZvciBsaWJjKysgc3RhbmRhcmQgbGlicmFyeSIKIG1haW50YWluZXI9Ik9ycGhhbmVk IDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJOQ1NBLCBNSVQiCiBob21lcGFnZT0i aHR0cHM6Ly9saWJjeHhhYmkubGx2bS5vcmciCi1kaXN0ZmlsZXM9Imh0dHBzOi8vd3d3Lmxsdm0u b3JnL3JlbGVhc2VzLyR7dmVyc2lvbn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnNyYy50YXIueHoK LSBodHRwczovL3d3dy5sbHZtLm9yZy9yZWxlYXNlcy8ke3ZlcnNpb259L2xpYmN4eC0ke3ZlcnNp b259LnNyYy50YXIueHoiCi1jaGVja3N1bT0iNjc1MDQxNzgzNTY1YzkwNmFjMmY3ZjhiMmJjNWM0 MGYxNGQ4NzFlY2ZhOGFkZTM0ODU1YWExOGRlOTU1MzBlOQotIDNjNDE2Mjk3MmI1ZDMyMDRiYTQ3 YWMzODRhYTQ1Njg1NWExN2I1ZTk3NDIyNzIzZDQ3NTgyNTFhY2YxZWQyOGMiCitkaXN0ZmlsZXM9 Imh0dHBzOi8vZ2l0aHViLmNvbS9sbHZtL2xsdm0tcHJvamVjdC9yZWxlYXNlcy9kb3dubG9hZC9s bHZtb3JnLSR7dmVyc2lvbn0vbGliY3h4YWJpLSR7dmVyc2lvbn0uc3JjLnRhci54egorIGh0dHBz Oi8vZ2l0aHViLmNvbS9sbHZtL2xsdm0tcHJvamVjdC9yZWxlYXNlcy9kb3dubG9hZC9sbHZtb3Jn LSR7dmVyc2lvbn0vbGliY3h4LSR7dmVyc2lvbn0uc3JjLnRhci54eiIKK2NoZWNrc3VtPSJlNzFi YWM3NWE4OGM5ZGRlNDU1YWQzZjJhMmI0NDliZjc0NWVhZmQ0MWQyZDg0MzIyNTNiMjk2NGUwY2Ex NGUxCisgMjcwZjhhM2YxNzZmMTk4MWIwZjZhYjhhYTU1NjcyMDk4ODg3MmVjMmI0OGVkM2I2MDVk MGNlZDhkMDkxNTZjNyIKIAogY2FzZSAiJFhCUFNfVEFSR0VUX01BQ0hJTkUiIGluCiAJYXJtdls2 N11sKQoKRnJvbSBlYjc0ODVhMzJmNGJhMjgzZWE4ZjgzMGZhMWIzZWIyMWNiOWE0OTVhIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBxNjYgPGRhbmllbEBvY3RhZm9yZ2Uub3JnPgpEYXRl OiBGcmksIDggTWF5IDIwMjAgMjA6MTE6NTAgKzAyMDAKU3ViamVjdDogW1BBVENIIDIwLzI0XSBs aWJjeHg6IHVwZGF0ZSB0byAxMC4wLjAKCi0tLQogc3JjcGtncy9saWJjeHgvdGVtcGxhdGUgfCA4 ICsrKystLS0tCiAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGliY3h4L3RlbXBsYXRlIGIvc3JjcGtncy9saWJjeHgv dGVtcGxhdGUKaW5kZXggNThhZjUzZTE0OWUuLmIzMmU1NmRmY2RmIDEwMDY0NAotLS0gYS9zcmNw a2dzL2xpYmN4eC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2xpYmN4eC90ZW1wbGF0ZQpAQCAtMSwy MSArMSwyMSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbGliY3h4JwogcGtnbmFtZT1saWJjeHgK LXZlcnNpb249OS4wLjAKK3ZlcnNpb249MTAuMC4wCiByZXZpc2lvbj0xCiB3cmtzcmM9IiR7cGtn bmFtZX0tJHt2ZXJzaW9ufS5zcmMiCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3Mr PSIgLURMSUJDWFhfQ1hYX0FCST1saWJjeHhhYmkgLURMSUJDWFhfRU5BQkxFX1NUQVRJQ19BQklf TElCUkFSWT1PTgogIC1ETElCQ1hYX0NYWF9BQklfTElCUkFSWV9QQVRIPSR7WEJQU19DUk9TU19C QVNFfS91c3IvbGliCiAgLURMSUJDWFhBQklfVVNFX0xMVk1fVU5XSU5ERVI9MSIKLWhvc3RtYWtl ZGVwZW5kcz0ibGx2bTkgcHl0aG9uMyIKK2hvc3RtYWtlZGVwZW5kcz0ibGx2bTEwIHB5dGhvbjMi CiBtYWtlZGVwZW5kcz0ibGliY3h4YWJpLWRldmVsIGxsdm0gbGx2bS1saWJ1bndpbmQtZGV2ZWwi CiBtYWtlX2J1aWxkX2FyZ3M9IlZFUkJPU0U9MSIKIHNob3J0X2Rlc2M9Ik5ldyBpbXBsZW1lbnRh dGlvbiBvZiB0aGUgQysrIHN0YW5kYXJkIGxpYnJhcnksIHRhcmdldGluZyBDKysxMSwgQysrMTQg YW5kIGFib3ZlIgogbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIK IGxpY2Vuc2U9Ik5DU0EsIE1JVCIKIGhvbWVwYWdlPSJodHRwczovL2xpYmN4eC5sbHZtLm9yZyIK LWRpc3RmaWxlcz0iaHR0cHM6Ly93d3cubGx2bS5vcmcvcmVsZWFzZXMvJHt2ZXJzaW9ufS8ke3Br Z25hbWV9LSR7dmVyc2lvbn0uc3JjLnRhci54eiIKLWNoZWNrc3VtPTNjNDE2Mjk3MmI1ZDMyMDRi YTQ3YWMzODRhYTQ1Njg1NWExN2I1ZTk3NDIyNzIzZDQ3NTgyNTFhY2YxZWQyOGMKK2Rpc3RmaWxl cz0iaHR0cHM6Ly9naXRodWIuY29tL2xsdm0vbGx2bS1wcm9qZWN0L3JlbGVhc2VzL2Rvd25sb2Fk L2xsdm1vcmctJHt2ZXJzaW9ufS9saWJjeHgtJHt2ZXJzaW9ufS5zcmMudGFyLnh6IgorY2hlY2tz dW09MjcwZjhhM2YxNzZmMTk4MWIwZjZhYjhhYTU1NjcyMDk4ODg3MmVjMmI0OGVkM2I2MDVkMGNl ZDhkMDkxNTZjNwogCiBjYXNlICIkWEJQU19UQVJHRVRfTUFDSElORSIgaW4KIAkqLW11c2wpIGNv bmZpZ3VyZV9hcmdzKz0iIC1ETElCQ1hYX0hBU19NVVNMX0xJQkM9WUVTIgoKRnJvbSAzNzUxZWRm Y2QxOGZlNTRkY2M3MjNkMzYxMWE2MzVkMmI4ZDkzNmY2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiBxNjYgPGRhbmllbEBvY3RhZm9yZ2Uub3JnPgpEYXRlOiBGcmksIDggTWF5IDIwMjAg MjA6MzE6MjAgKzAyMDAKU3ViamVjdDogW1BBVENIIDIxLzI0XSBpbmNsdWRlLXdoYXQteW91LXVz ZTogcmVidWlsZCBmb3IgbGx2bTEwCgotLS0KIC4uLi9pbmNsdWRlLXdoYXQteW91LXVzZS9wYXRj aGVzL2xsdm0xMC5wYXRjaCB8IDYxICsrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvaW5jbHVk ZS13aGF0LXlvdS11c2UvdGVtcGxhdGUgICAgICAgICB8ICAyICstCiAyIGZpbGVzIGNoYW5nZWQs IDYyIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNw a2dzL2luY2x1ZGUtd2hhdC15b3UtdXNlL3BhdGNoZXMvbGx2bTEwLnBhdGNoCgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9pbmNsdWRlLXdoYXQteW91LXVzZS9wYXRjaGVzL2xsdm0xMC5wYXRjaCBiL3Ny Y3BrZ3MvaW5jbHVkZS13aGF0LXlvdS11c2UvcGF0Y2hlcy9sbHZtMTAucGF0Y2gKbmV3IGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmM2ZTBhNWMxYjM5Ci0tLSAvZGV2L251bGwK KysrIGIvc3JjcGtncy9pbmNsdWRlLXdoYXQteW91LXVzZS9wYXRjaGVzL2xsdm0xMC5wYXRjaApA QCAtMCwwICsxLDYxIEBACistLS0gaXd5dV9kcml2ZXIuY2MKKysrKyBpd3l1X2RyaXZlci5jYwor QEAgLTIwNSwxMSArMjA1LDggQEAgQ29tcGlsZXJJbnN0YW5jZSogQ3JlYXRlQ29tcGlsZXJJbnN0 YW5jZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpIHsKKyAKKyAgIC8vIEluaXRpYWxpemUg YSBjb21waWxlciBpbnZvY2F0aW9uIG9iamVjdCBmcm9tIHRoZSBjbGFuZyAoLWNjMSkgYXJndW1l bnRzLgorICAgY29uc3QgQXJnU3RyaW5nTGlzdCAmY2NfYXJndW1lbnRzID0gY29tbWFuZC5nZXRB cmd1bWVudHMoKTsKKy0gIGNvbnN0IGNoYXIqKiBhcmdzX3N0YXJ0ID0gY29uc3RfY2FzdDxjb25z dCBjaGFyKio+KGNjX2FyZ3VtZW50cy5kYXRhKCkpOworLSAgY29uc3QgY2hhcioqIGFyZ3NfZW5k ID0gYXJnc19zdGFydCArIGNjX2FyZ3VtZW50cy5zaXplKCk7CisgICBzdGQ6OnNoYXJlZF9wdHI8 Q29tcGlsZXJJbnZvY2F0aW9uPiBpbnZvY2F0aW9uKG5ldyBDb21waWxlckludm9jYXRpb24pOwor LSAgQ29tcGlsZXJJbnZvY2F0aW9uOjpDcmVhdGVGcm9tQXJncygqaW52b2NhdGlvbiwKKy0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJnc19zdGFydCwgYXJnc19lbmQsIGRp YWdub3N0aWNzKTsKKysgIENvbXBpbGVySW52b2NhdGlvbjo6Q3JlYXRlRnJvbUFyZ3MoKmludm9j YXRpb24sIGNjX2FyZ3VtZW50cywgZGlhZ25vc3RpY3MpOworICAgaW52b2NhdGlvbi0+Z2V0RnJv bnRlbmRPcHRzKCkuRGlzYWJsZUZyZWUgPSBmYWxzZTsKKyAKKyAgIC8vIFVzZSBsaWJjKysgaGVh ZGVycyBidW5kbGVkIHdpdGggWGNvZGUuYXBwIG9uIG1hY09TLgorLS0tIGl3eXVfcHJlcHJvY2Vz c29yLmNjCisrKysgaXd5dV9wcmVwcm9jZXNzb3IuY2MKK0BAIC0zNCw2ICszNCw3IEBACisgI2lu Y2x1ZGUgImNsYW5nL0xleC9NYWNyb0luZm8uaCIKKyAKKyB1c2luZyBjbGFuZzo6RmlsZUVudHJ5 OworK3VzaW5nIGNsYW5nOjpGaWxlRW50cnlSZWY7CisgdXNpbmcgY2xhbmc6OkZpbGVJRDsKKyB1 c2luZyBjbGFuZzo6TWFjcm9EZWZpbml0aW9uOworIHVzaW5nIGNsYW5nOjpNYWNyb0RpcmVjdGl2 ZTsKK0BAIC02OTQsNyArNjk1LDcgQEAgdm9pZCBJd3l1UHJlcHJvY2Vzc29ySW5mbzo6RmlsZUNo YW5nZWQoU291cmNlTG9jYXRpb24gbG9jLAorIC8vIENhbGxlZCB3aGVuIHdlIHNlZSBhbiAjaW5j bHVkZSwgYnV0IGRlY2lkZSB3ZSBkb24ndCBuZWVkIHRvCisgLy8gYWN0dWFsbHkgcmVhZCBpdCBi ZWNhdXNlIGl0J3MgYWxyZWFkeSBiZWVuICNpbmNsdWRlZCAoYW5kIGlzCisgLy8gcHJvdGVjdGVk IGJ5IGEgaGVhZGVyIGd1YXJkKS4KKy12b2lkIEl3eXVQcmVwcm9jZXNzb3JJbmZvOjpGaWxlU2tp cHBlZChjb25zdCBGaWxlRW50cnkmIGZpbGUsCisrdm9pZCBJd3l1UHJlcHJvY2Vzc29ySW5mbzo6 RmlsZVNraXBwZWQoY29uc3QgRmlsZUVudHJ5UmVmJiBmaWxlLAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFRva2VuICZmaWxlbmFtZSwKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTcmNNZ3I6OkNoYXJhY3RlcmlzdGljS2luZCBm aWxlX3R5cGUpIHsKKyAgIENIRUNLXyhpbmNsdWRlX2ZpbGVuYW1lX2xvY18uaXNWYWxpZCgpICYm CitAQCAtNzA1LDExICs3MDYsMTEgQEAgdm9pZCBJd3l1UHJlcHJvY2Vzc29ySW5mbzo6RmlsZVNr aXBwZWQoY29uc3QgRmlsZUVudHJ5JiBmaWxlLAorICAgICAgIEdldEluc3RhbnRpYXRpb25Mb2Mo ZmlsZW5hbWUuZ2V0TG9jYXRpb24oKSk7CisgICBFUlJTWU0oR2V0RmlsZUVudHJ5KGluY2x1ZGVf bG9jKSkKKyAgICAgICA8PCAiWyAoI2luY2x1ZGUpICBdICIgPDwgaW5jbHVkZV9uYW1lX2FzX3dy aXR0ZW4KKy0gICAgICA8PCAiICgiIDw8IEdldEZpbGVQYXRoKCZmaWxlKSA8PCAiKVxuIjsKKysg ICAgICA8PCAiICgiIDw8IEdldEZpbGVQYXRoKCZmaWxlLmdldEZpbGVFbnRyeSgpKSA8PCAiKVxu IjsKKyAKKy0gIEFkZERpcmVjdEluY2x1ZGUoaW5jbHVkZV9sb2MsICZmaWxlLCBpbmNsdWRlX25h bWVfYXNfd3JpdHRlbik7CistICBpZiAoU2hvdWxkUmVwb3J0SVdZVVZpb2xhdGlvbnNGb3IoJmZp bGUpKSB7CistICAgIGZpbGVzX3RvX3JlcG9ydF9pd3l1X3Zpb2xhdGlvbnNfZm9yXy5pbnNlcnQo JmZpbGUpOworKyAgQWRkRGlyZWN0SW5jbHVkZShpbmNsdWRlX2xvYywgJmZpbGUuZ2V0RmlsZUVu dHJ5KCksIGluY2x1ZGVfbmFtZV9hc193cml0dGVuKTsKKysgIGlmIChTaG91bGRSZXBvcnRJV1lV VmlvbGF0aW9uc0ZvcigmZmlsZS5nZXRGaWxlRW50cnkoKSkpIHsKKysgICAgZmlsZXNfdG9fcmVw b3J0X2l3eXVfdmlvbGF0aW9uc19mb3JfLmluc2VydCgmZmlsZS5nZXRGaWxlRW50cnkoKSk7Cisg ICB9CisgfQorIAorLS0tIGl3eXVfcHJlcHJvY2Vzc29yLmgKKysrKyBpd3l1X3ByZXByb2Nlc3Nv ci5oCitAQCAtMjA0LDcgKzIwNCw3IEBAIGNsYXNzIEl3eXVQcmVwcm9jZXNzb3JJbmZvIDogcHVi bGljIGNsYW5nOjpQUENhbGxiYWNrcywKKyAgIHZvaWQgRmlsZUNoYW5nZWQoY2xhbmc6OlNvdXJj ZUxvY2F0aW9uIGxvYywgRmlsZUNoYW5nZVJlYXNvbiByZWFzb24sCisgICAgICAgICAgICAgICAg ICAgIGNsYW5nOjpTcmNNZ3I6OkNoYXJhY3RlcmlzdGljS2luZCBmaWxlX3R5cGUsCisgICAgICAg ICAgICAgICAgICAgIGNsYW5nOjpGaWxlSUQgZXhpdGluZ19mcm9tX2lkKSBvdmVycmlkZTsKKy0g IHZvaWQgRmlsZVNraXBwZWQoY29uc3QgY2xhbmc6OkZpbGVFbnRyeSYgZmlsZSwgY29uc3QgY2xh bmc6OlRva2VuICZmaWxlbmFtZSwKKysgIHZvaWQgRmlsZVNraXBwZWQoY29uc3QgY2xhbmc6OkZp bGVFbnRyeVJlZiYgZmlsZSwgY29uc3QgY2xhbmc6OlRva2VuICZmaWxlbmFtZSwKKyAgICAgICAg ICAgICAgICAgICAgY2xhbmc6OlNyY01ncjo6Q2hhcmFjdGVyaXN0aWNLaW5kIGZpbGVfdHlwZSkg b3ZlcnJpZGU7CisgICAvLyBGaWxlQ2hhbmdlZCBpcyBhY3R1YWxseSBhIG11bHRpLXBsZXhlciBm b3IgNCBkaWZmZXJlbnQgY2FsbGJhY2tzLgorICAgdm9pZCBGaWxlQ2hhbmdlZF9FbnRlckZpbGUo Y2xhbmc6OlNvdXJjZUxvY2F0aW9uIGZpbGVfYmVnaW5uaW5nKTsKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvaW5jbHVkZS13aGF0LXlvdS11c2UvdGVtcGxhdGUgYi9zcmNwa2dzL2luY2x1ZGUtd2hhdC15 b3UtdXNlL3RlbXBsYXRlCmluZGV4IGEzM2QwNzA5NWY0Li4xOGFkMWI4ODk2ZCAxMDA2NDQKLS0t IGEvc3JjcGtncy9pbmNsdWRlLXdoYXQteW91LXVzZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2lu Y2x1ZGUtd2hhdC15b3UtdXNlL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnaW5jbHVkZS13aGF0LXlvdS11c2UnCiBwa2duYW1lPWluY2x1ZGUtd2hhdC15b3Ut dXNlCiB2ZXJzaW9uPTAuMTMKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIHdya3NyYz0iJHtwa2du YW1lfSIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURJV1lVX0xMVk1fUk9P VF9QQVRIPSR7WEJQU19DUk9TU19CQVNFfS91c3IgIgoKRnJvbSBmN2E3YmFmYTIwZmUwNGE4ZjZj ZjU5NmMyOTY0OTA2N2IyYjc2OTRiIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBxNjYg PGRhbmllbEBvY3RhZm9yZ2Uub3JnPgpEYXRlOiBGcmksIDggTWF5IDIwMjAgMjA6MzI6MzggKzAy MDAKU3ViamVjdDogW1BBVENIIDIyLzI0XSBhZmw6IHJlYnVpbGQgZm9yIGxsdm0xMAoKLS0tCiBz cmNwa2dzL2FmbC90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigr KSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYWZsL3RlbXBsYXRlIGIvc3Jj cGtncy9hZmwvdGVtcGxhdGUKaW5kZXggNWRiYTI1NjJiMzcuLjk2YzM1YWExNDRhIDEwMDY0NAot LS0gYS9zcmNwa2dzL2FmbC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2FmbC90ZW1wbGF0ZQpAQCAt MSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2FmbCcKIHBrZ25hbWU9YWZsCiB2ZXJz aW9uPTIuNTZiCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiAjIHg4NiBvbmx5IGN1cnJlbnRseQog YXJjaHM9Imk2ODYqIHg4Nl82NCoiCiB3cmtzcmM9IkFGTC0ke3ZlcnNpb259IgoKRnJvbSAwM2M3 ZmNlOGUwMzY5Y2U2OWMzMTVlMmM4ZDhlMDRmYmRkMGFhNDJhIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiBxNjYgPGRhbmllbEBvY3RhZm9yZ2Uub3JnPgpEYXRlOiBGcmksIDggTWF5IDIw MjAgMjA6MzI6NDkgKzAyMDAKU3ViamVjdDogW1BBVENIIDIzLzI0XSBiZWlnbmV0OiByZWJ1aWxk IGZvciBsbHZtMTAKCi0tLQogLi4uL3BhdGNoZXMve2xsdm02LnBhdGNoID0+IGxsdm0wNi5wYXRj aH0gICAgIHwgICAwCiAuLi4vcGF0Y2hlcy97bGx2bTgucGF0Y2ggPT4gbGx2bTA4LnBhdGNofSAg ICAgfCAgIDAKIC4uLi9wYXRjaGVzL3tsbHZtOS5wYXRjaCA9PiBsbHZtMDkucGF0Y2h9ICAgICB8 ICAgMAogc3JjcGtncy9iZWlnbmV0L3BhdGNoZXMvbGx2bTEwLnBhdGNoICAgICAgICAgIHwgMzQ3 ICsrKysrKysrKysrKysrKysrKwogc3JjcGtncy9iZWlnbmV0L3RlbXBsYXRlICAgICAgICAgICAg ICAgICAgICAgIHwgICA0ICstCiA1IGZpbGVzIGNoYW5nZWQsIDM0OSBpbnNlcnRpb25zKCspLCAy IGRlbGV0aW9ucygtKQogcmVuYW1lIHNyY3BrZ3MvYmVpZ25ldC9wYXRjaGVzL3tsbHZtNi5wYXRj aCA9PiBsbHZtMDYucGF0Y2h9ICgxMDAlKQogcmVuYW1lIHNyY3BrZ3MvYmVpZ25ldC9wYXRjaGVz L3tsbHZtOC5wYXRjaCA9PiBsbHZtMDgucGF0Y2h9ICgxMDAlKQogcmVuYW1lIHNyY3BrZ3MvYmVp Z25ldC9wYXRjaGVzL3tsbHZtOS5wYXRjaCA9PiBsbHZtMDkucGF0Y2h9ICgxMDAlKQogY3JlYXRl IG1vZGUgMTAwNjQ0IHNyY3BrZ3MvYmVpZ25ldC9wYXRjaGVzL2xsdm0xMC5wYXRjaAoKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvYmVpZ25ldC9wYXRjaGVzL2xsdm02LnBhdGNoIGIvc3JjcGtncy9iZWln bmV0L3BhdGNoZXMvbGx2bTA2LnBhdGNoCnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJv bSBzcmNwa2dzL2JlaWduZXQvcGF0Y2hlcy9sbHZtNi5wYXRjaApyZW5hbWUgdG8gc3JjcGtncy9i ZWlnbmV0L3BhdGNoZXMvbGx2bTA2LnBhdGNoCmRpZmYgLS1naXQgYS9zcmNwa2dzL2JlaWduZXQv cGF0Y2hlcy9sbHZtOC5wYXRjaCBiL3NyY3BrZ3MvYmVpZ25ldC9wYXRjaGVzL2xsdm0wOC5wYXRj aApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gc3JjcGtncy9iZWlnbmV0L3BhdGNo ZXMvbGx2bTgucGF0Y2gKcmVuYW1lIHRvIHNyY3BrZ3MvYmVpZ25ldC9wYXRjaGVzL2xsdm0wOC5w YXRjaApkaWZmIC0tZ2l0IGEvc3JjcGtncy9iZWlnbmV0L3BhdGNoZXMvbGx2bTkucGF0Y2ggYi9z cmNwa2dzL2JlaWduZXQvcGF0Y2hlcy9sbHZtMDkucGF0Y2gKc2ltaWxhcml0eSBpbmRleCAxMDAl CnJlbmFtZSBmcm9tIHNyY3BrZ3MvYmVpZ25ldC9wYXRjaGVzL2xsdm05LnBhdGNoCnJlbmFtZSB0 byBzcmNwa2dzL2JlaWduZXQvcGF0Y2hlcy9sbHZtMDkucGF0Y2gKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvYmVpZ25ldC9wYXRjaGVzL2xsdm0xMC5wYXRjaCBiL3NyY3BrZ3MvYmVpZ25ldC9wYXRjaGVz L2xsdm0xMC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uOWE2 Y2M1YThlOGYKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2JlaWduZXQvcGF0Y2hlcy9sbHZt MTAucGF0Y2gKQEAgLTAsMCArMSwzNDcgQEAKK2RpZmYgLS1naXQgQ01ha2UvRmluZExMVk0uY21h a2UgQ01ha2UvRmluZExMVk0uY21ha2UKK2luZGV4IDBhNTllNDcuLjZlOTA5MjMgMTAwNjQ0Cist LS0gQ01ha2UvRmluZExMVk0uY21ha2UKKysrKyBDTWFrZS9GaW5kTExWTS5jbWFrZQorQEAgLTEw NCwyOCArMTA0LDE2IEBAIHN0cmluZyhSRUdFWCBSRVBMQUNFICIgKlxuIiAiIiBMTFZNX1NZU1RF TV9MSUJTICR7TExWTV9TWVNURU1fTElCU19PUklHfSkKKyBlbmRpZiAoTExWTV9TWVNURU1fTElC U19PUklHKQorIGVuZGlmIChMTFZNX1ZFUlNJT05fTk9ET1QgVkVSU0lPTl9HUkVBVEVSIDM0KQor IAorKyNzb21ldGhpbmcgaGFybWxlc3MgYmVjYXVzZSB3aGl0ZXNwYWNlIGF0IHN0YXJ0IGlzIGFu IGVycm9yCisrc2V0KENMQU5HX0xJQlJBUklFUyAiLWxkbCIpCisgbWFjcm8oYWRkX29uZV9saWIg bmFtZSkKKyAgIEZJTkRfTElCUkFSWShDTEFOR19MSUIKKyAgICAgTkFNRVMgJHtuYW1lfQorICAg ICBQQVRIUyAke0xMVk1fTElCUkFSWV9ESVJ9IE5PX0RFRkFVTFRfUEFUSCkKKy0gIHNldChDTEFO R19MSUJSQVJJRVMgJHtDTEFOR19MSUJSQVJJRVN9ICR7Q0xBTkdfTElCfSkKKysgIHNldChDTEFO R19MSUJSQVJJRVMgIiR7Q0xBTkdfTElCUkFSSUVTfSAke0NMQU5HX0xJQn0iKQorKyAgbWVzc2Fn ZShTVEFUVVMgImNsYW5nbGlicyBuYW1lICR7bmFtZX0gdGhpcyAke0NMQU5HX0xJQn0gYWxsICR7 Q0xBTkdfTElCUkFSSUVTfSAiKQorIAl1bnNldChDTEFOR19MSUIgQ0FDSEUpCisgZW5kbWFjcm8o KQorIAorICNBc3N1bWUgY2xhbmcgbGliIHBhdGggc2FtZSBhcyBsbHZtIGxpYiBwYXRoCistYWRk X29uZV9saWIoImNsYW5nQ29kZUdlbiIpCistYWRkX29uZV9saWIoImNsYW5nRnJvbnRlbmQiKQor LWFkZF9vbmVfbGliKCJjbGFuZ1NlcmlhbGl6YXRpb24iKQorLWFkZF9vbmVfbGliKCJjbGFuZ0Ry aXZlciIpCistYWRkX29uZV9saWIoImNsYW5nU2VtYSIpCistYWRkX29uZV9saWIoImNsYW5nU3Rh dGljQW5hbHl6ZXJGcm9udGVuZCIpCistYWRkX29uZV9saWIoImNsYW5nU3RhdGljQW5hbHl6ZXJD aGVja2VycyIpCistYWRkX29uZV9saWIoImNsYW5nU3RhdGljQW5hbHl6ZXJDb3JlIikKKy1hZGRf b25lX2xpYigiY2xhbmdBbmFseXNpcyIpCistYWRkX29uZV9saWIoImNsYW5nRWRpdCIpCistYWRk X29uZV9saWIoImNsYW5nQVNUIikKKy1hZGRfb25lX2xpYigiY2xhbmdBU1RNYXRjaGVycyIpCist YWRkX29uZV9saWIoImNsYW5nUGFyc2UiKQorLWFkZF9vbmVfbGliKCJjbGFuZ1NlbWEiKQorLWFk ZF9vbmVfbGliKCJjbGFuZ0xleCIpCistYWRkX29uZV9saWIoImNsYW5nQmFzaWMiKQorK2FkZF9v bmVfbGliKCJjbGFuZy1jcHAiKQorZGlmZiAtLWdpdCBDTWFrZUxpc3RzLnR4dCBDTWFrZUxpc3Rz LnR4dAoraW5kZXggYzExYWNiYi4uMDhmNDI3ZCAxMDA2NDQKKy0tLSBDTWFrZUxpc3RzLnR4dAor KysrIENNYWtlTGlzdHMudHh0CitAQCAtNzksNyArNzksNyBAQCBlbHNlaWYgKENPTVBJTEVSIFNU UkVRVUFMICJDTEFORyIpCisgZWxzZWlmIChDT01QSUxFUiBTVFJFUVVBTCAiSUNDIikKKyAgIHNl dCAoQ01BS0VfQ19DWFhfRkxBR1MgIiR7Q01BS0VfQ19DWFhfRkxBR1N9ICAtd2QyOTI4IC1XYWxs IC1mUElDIC1mc3RyaWN0LWFsaWFzaW5nIC1mcC1tb2RlbCBmYXN0IC1tc3NlNC4xIC1XbCwtRSIp CisgZW5kaWYgKCkKKy1zZXQgKENNQUtFX0NYWF9GTEFHUyAiJHtDTUFLRV9DWFhfRkxBR1N9ICR7 Q01BS0VfQ19DWFhfRkxBR1N9IC1zdGQ9YysrMHggLVduby1pbnZhbGlkLW9mZnNldG9mIikKKytz ZXQgKENNQUtFX0NYWF9GTEFHUyAiJHtDTUFLRV9DWFhfRkxBR1N9ICR7Q01BS0VfQ19DWFhfRkxB R1N9IC1Xbm8taW52YWxpZC1vZmZzZXRvZiIpCisgc2V0IChDTUFLRV9DX0ZMQUdTICIke0NNQUtF X0NfRkxBR1N9ICR7Q01BS0VfQ19DWFhfRkxBR1N9IikKKyBzZXQgKENNQUtFX0NYWF9GTEFHU19E RUJVRyAgICAgICAgICAiLU8wIC1nIC1ER0JFX0RFQlVHPTEiKQorIHNldCAoQ01BS0VfQ1hYX0ZM QUdTX1JFTFdJVEhERUJJTkZPICItTzIgLWcgLURHQkVfREVCVUc9MSIpCitkaWZmIC0tZ2l0IGJh Y2tlbmQvc3JjL2JhY2tlbmQvcHJvZ3JhbS5jcHAgYmFja2VuZC9zcmMvYmFja2VuZC9wcm9ncmFt LmNwcAoraW5kZXggYjM2ZjdiNC4uZTY2NjAzMSAxMDA2NDQKKy0tLSBiYWNrZW5kL3NyYy9iYWNr ZW5kL3Byb2dyYW0uY3BwCisrKysgYmFja2VuZC9zcmMvYmFja2VuZC9wcm9ncmFtLmNwcAorQEAg LTY5NCw5ICs2OTQsOSBAQCBuYW1lc3BhY2UgZ2JlIHsKKyAjZW5kaWYKKyAgICAgICAgICAgICAg ICAgKTsKKyAKKysgICAgbGx2bTo6Y2w6OlJlc2V0QWxsT3B0aW9uT2NjdXJyZW5jZXMoKTsKKyAg ICAgY2xhbmc6OkNvbXBpbGVySW52b2NhdGlvbjo6Q3JlYXRlRnJvbUFyZ3MoKkNJLAorLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmYXJnc1swXSwKKy0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmFyZ3NbMF0gKyBhcmdz LnNpemUoKSwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Y2xhbmc6OkFycmF5UmVmPGNvbnN0IGNoYXIqPihhcmdzKSwKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgRGlhZ3MpOworICAgICAvLyBDcmVhdGUgdGhlIGNv bXBpbGVyIGluc3RhbmNlCisgICAgIGNsYW5nOjpDb21waWxlckluc3RhbmNlIENsYW5nOworQEAg LTEyNDIsOCArMTI0Miw3IEBAIEVYVEVORF9RVU9URToKKyAgICAgICAvLyBDcmVhdGUgdGhlIGNv bXBpbGVyIGludm9jYXRpb24KKyAgICAgICBzdGQ6OnVuaXF1ZV9wdHI8Y2xhbmc6OkNvbXBpbGVy SW52b2NhdGlvbj4gQ0kobmV3IGNsYW5nOjpDb21waWxlckludm9jYXRpb24pOworICAgICAgIHJl dHVybiBjbGFuZzo6Q29tcGlsZXJJbnZvY2F0aW9uOjpDcmVhdGVGcm9tQXJncygqQ0ksCistICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZhcmdz WzBdLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAmYXJnc1swXSArIGFyZ3Muc2l6ZSgpLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFuZzo6QXJyYXlSZWY8Y29uc3QgY2hhcio+ KGFyZ3MpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBEaWFncyk7CisgICAgIH0KKyAjZW5kaWYKK2RpZmYgLS1naXQgYmFja2VuZC9zcmMv bGx2bS9sbHZtX2dlbl9iYWNrZW5kLmNwcCBiYWNrZW5kL3NyYy9sbHZtL2xsdm1fZ2VuX2JhY2tl bmQuY3BwCitpbmRleCBjNmZjMzBkLi44MjQ0MWQ4IDEwMDY0NAorLS0tIGJhY2tlbmQvc3JjL2xs dm0vbGx2bV9nZW5fYmFja2VuZC5jcHAKKysrKyBiYWNrZW5kL3NyYy9sbHZtL2xsdm1fZ2VuX2Jh Y2tlbmQuY3BwCitAQCAtNTc1LDEwICs1NzUsMTIgQEAgbmFtZXNwYWNlIGdiZQorICAgICAgICAg aGFzX2Vycm9ycyhmYWxzZSksCisgICAgICAgICBsZWdhY3lNb2RlKHRydWUpCisgICAgIHsKKysj aWYgTExWTV9WRVJTSU9OX01BSk9SIDwgMTAKKyAjaWYgTExWTV9WRVJTSU9OX01BSk9SICogMTAg KyBMTFZNX1ZFUlNJT05fTUlOT1IgPj0gMzcKKyAgICAgICBpbml0aWFsaXplTG9vcEluZm9XcmFw cGVyUGFzc1Bhc3MoKlBhc3NSZWdpc3RyeTo6Z2V0UGFzc1JlZ2lzdHJ5KCkpOworICNlbHNlCisg ICAgICAgaW5pdGlhbGl6ZUxvb3BJbmZvUGFzcygqUGFzc1JlZ2lzdHJ5OjpnZXRQYXNzUmVnaXN0 cnkoKSk7CisrI2VuZGlmCisgI2VuZGlmCisgICAgICAgcGFzcyA9IFBBU1NfRU1JVF9SRUdJU1RF UlM7CisgICAgIH0KK2RpZmYgLS1naXQgYmFja2VuZC9zcmMvbGx2bS9sbHZtX2dlbl9iYWNrZW5k LmhwcCBiYWNrZW5kL3NyYy9sbHZtL2xsdm1fZ2VuX2JhY2tlbmQuaHBwCitpbmRleCBiNDcxNWIx Li44ZTc0ZjdhIDEwMDY0NAorLS0tIGJhY2tlbmQvc3JjL2xsdm0vbGx2bV9nZW5fYmFja2VuZC5o cHAKKysrKyBiYWNrZW5kL3NyYy9sbHZtL2xsdm1fZ2VuX2JhY2tlbmQuaHBwCitAQCAtMTMwLDEw ICsxMzAsMTAgQEAgbmFtZXNwYWNlIGdiZQorICAgbGx2bTo6RnVuY3Rpb25QYXNzICpjcmVhdGVH ZW5QYXNzKGlyOjpVbml0ICZ1bml0KTsKKyAKKyAgIC8qISBSZW1vdmUgdGhlIEdFUCBpbnN0cnVj dGlvbnMgKi8KKy0gIGxsdm06OkJhc2ljQmxvY2tQYXNzICpjcmVhdGVSZW1vdmVHRVBQYXNzKGNv bnN0IGlyOjpVbml0ICZ1bml0KTsKKysgIGxsdm06OkZ1bmN0aW9uUGFzcyAqY3JlYXRlUmVtb3Zl R0VQUGFzcyhjb25zdCBpcjo6VW5pdCAmdW5pdCk7CisgCisgICAvKiEgTWVyZ2UgbG9hZC9zdG9y ZSBpZiBwb3NzaWJsZSAqLworLSAgbGx2bTo6QmFzaWNCbG9ja1Bhc3MgKmNyZWF0ZUxvYWRTdG9y ZU9wdGltaXphdGlvblBhc3MoKTsKKysgIGxsdm06OkZ1bmN0aW9uUGFzcyAqY3JlYXRlTG9hZFN0 b3JlT3B0aW1pemF0aW9uUGFzcygpOworIAorICAgLyohIFNjYWxhcml6ZSBhbGwgdmVjdG9yIG9w IGluc3RydWN0aW9ucyAqLworICAgbGx2bTo6RnVuY3Rpb25QYXNzKiBjcmVhdGVTY2FsYXJpemVQ YXNzKCk7CitAQCAtMTQxLDcgKzE0MSw3IEBAIG5hbWVzcGFjZSBnYmUKKyAgIGxsdm06Ok1vZHVs ZVBhc3MqIGNyZWF0ZUJhcnJpZXJOb2R1cFBhc3MoYm9vbCk7CisgCisgICAvKiEgQ29udmVydCB0 aGUgSW50cmluc2ljIGNhbGwgdG8gZ2VuIGZ1bmN0aW9uICovCistICBsbHZtOjpCYXNpY0Jsb2Nr UGFzcyAqY3JlYXRlSW50cmluc2ljTG93ZXJpbmdQYXNzKCk7CisrICBsbHZtOjpGdW5jdGlvblBh c3MgKmNyZWF0ZUludHJpbnNpY0xvd2VyaW5nUGFzcygpOworIAorICAgLyohIFBhc3NlciB0aGUg cHJpbnRmIGZ1bmN0aW9uIGNhbGwuICovCisgICBsbHZtOjpGdW5jdGlvblBhc3MqIGNyZWF0ZVBy aW50ZlBhcnNlclBhc3MoaXI6OlVuaXQgJnVuaXQpOworZGlmZiAtLWdpdCBiYWNrZW5kL3NyYy9s bHZtL2xsdm1faW50cmluc2ljX2xvd2VyaW5nLmNwcCBiYWNrZW5kL3NyYy9sbHZtL2xsdm1faW50 cmluc2ljX2xvd2VyaW5nLmNwcAoraW5kZXggOTRmMGNlNi4uYjU1MzllOSAxMDA2NDQKKy0tLSBi YWNrZW5kL3NyYy9sbHZtL2xsdm1faW50cmluc2ljX2xvd2VyaW5nLmNwcAorKysrIGJhY2tlbmQv c3JjL2xsdm0vbGx2bV9pbnRyaW5zaWNfbG93ZXJpbmcuY3BwCitAQCAtMjksMTIgKzI5LDEyIEBA CisgdXNpbmcgbmFtZXNwYWNlIGxsdm07CisgCisgbmFtZXNwYWNlIGdiZSB7CistICAgIGNsYXNz IEluc3RyaW5zaWNMb3dlcmluZyA6IHB1YmxpYyBCYXNpY0Jsb2NrUGFzcworKyAgICBjbGFzcyBJ bnN0cmluc2ljTG93ZXJpbmcgOiBwdWJsaWMgRnVuY3Rpb25QYXNzCisgICAgIHsKKyAgICAgcHVi bGljOgorICAgICAgIHN0YXRpYyBjaGFyIElEOworICAgICAgIEluc3RyaW5zaWNMb3dlcmluZygp IDoKKy0gICAgICAgIEJhc2ljQmxvY2tQYXNzKElEKSB7fQorKyAgICAgICAgRnVuY3Rpb25QYXNz KElEKSB7fQorIAorICAgICAgIHZvaWQgZ2V0QW5hbHlzaXNVc2FnZShBbmFseXNpc1VzYWdlICZB VSkgY29uc3QgeworIAorQEAgLTkzLDkgKzkzLDkgQEAgbmFtZXNwYWNlIGdiZSB7CisgICAgICAg ICBDSS0+ZXJhc2VGcm9tUGFyZW50KCk7CisgICAgICAgICByZXR1cm4gTmV3Q0k7CisgICAgICAg fQorLSAgICAgIHZpcnR1YWwgYm9vbCBydW5PbkJhc2ljQmxvY2soQmFzaWNCbG9jayAmQkIpCisr ICAgICAgdmlydHVhbCBib29sIHJ1bk9uRnVuY3Rpb24oRnVuY3Rpb24gJkYpCisgICAgICAgewor LSAgICAgICAgYm9vbCBjaGFuZ2VkQmxvY2sgPSBmYWxzZTsKKysgICAgICAgIGZvciAoQmFzaWNC bG9jayAmQkIgOiBGKSB7CisgICAgICAgICBNb2R1bGUgKk0gPSBCQi5nZXRQYXJlbnQoKS0+Z2V0 UGFyZW50KCk7CisgCisgICAgICAgICBEYXRhTGF5b3V0IFREKE0pOworQEAgLTE1OSwxMyArMTU5 LDE0IEBAIG5hbWVzcGFjZSBnYmUgeworICAgICAgICAgICAgIH0KKyAgICAgICAgICAgfQorICAg ICAgICAgfQorLSAgICAgICAgcmV0dXJuIGNoYW5nZWRCbG9jazsKKysgICAgICAgIH0KKysgICAg ICAgIHJldHVybiB0cnVlOworICAgICAgIH0KKyAgICAgfTsKKyAKKyAgICAgY2hhciBJbnN0cmlu c2ljTG93ZXJpbmc6OklEID0gMDsKKyAKKy0gICAgQmFzaWNCbG9ja1Bhc3MgKmNyZWF0ZUludHJp bnNpY0xvd2VyaW5nUGFzcygpIHsKKysgICAgRnVuY3Rpb25QYXNzICpjcmVhdGVJbnRyaW5zaWNM b3dlcmluZ1Bhc3MoKSB7CisgICAgICAgcmV0dXJuIG5ldyBJbnN0cmluc2ljTG93ZXJpbmcoKTsK KyAgICAgfQorIH0gLy8gZW5kIG5hbWVzcGFjZQorZGlmZiAtLWdpdCBiYWNrZW5kL3NyYy9sbHZt L2xsdm1fbG9hZHN0b3JlX29wdGltaXphdGlvbi5jcHAgYmFja2VuZC9zcmMvbGx2bS9sbHZtX2xv YWRzdG9yZV9vcHRpbWl6YXRpb24uY3BwCitpbmRleCA1YWEzOGJlLi5lMzE0MzAyIDEwMDY0NAor LS0tIGJhY2tlbmQvc3JjL2xsdm0vbGx2bV9sb2Fkc3RvcmVfb3B0aW1pemF0aW9uLmNwcAorKysr IGJhY2tlbmQvc3JjL2xsdm0vbGx2bV9sb2Fkc3RvcmVfb3B0aW1pemF0aW9uLmNwcAorQEAgLTI2 LDEzICsyNiwxMyBAQAorIAorIHVzaW5nIG5hbWVzcGFjZSBsbHZtOworIG5hbWVzcGFjZSBnYmUg eworLSAgY2xhc3MgR2VuTG9hZFN0b3JlT3B0aW1pemF0aW9uIDogcHVibGljIEJhc2ljQmxvY2tQ YXNzIHsKKysgIGNsYXNzIEdlbkxvYWRTdG9yZU9wdGltaXphdGlvbiA6IHB1YmxpYyBGdW5jdGlv blBhc3MgeworIAorICAgcHVibGljOgorICAgICBzdGF0aWMgY2hhciBJRDsKKyAgICAgU2NhbGFy RXZvbHV0aW9uICpTRTsKKyAgICAgY29uc3QgRGF0YUxheW91dCAqVEQ7CistICAgIEdlbkxvYWRT dG9yZU9wdGltaXphdGlvbigpIDogQmFzaWNCbG9ja1Bhc3MoSUQpIHt9CisrICAgIEdlbkxvYWRT dG9yZU9wdGltaXphdGlvbigpIDogRnVuY3Rpb25QYXNzKElEKSB7fQorIAorICAgICB2b2lkIGdl dEFuYWx5c2lzVXNhZ2UoQW5hbHlzaXNVc2FnZSAmQVUpIGNvbnN0IHsKKyAjaWYgTExWTV9WRVJT SU9OX01BSk9SICogMTAgKyBMTFZNX1ZFUlNJT05fTUlOT1IgPj0gMzgKK0BAIC00NSw3ICs0NSw5 IEBAIG5hbWVzcGFjZSBnYmUgeworICAgICAgIEFVLnNldFByZXNlcnZlc0NGRygpOworICAgICB9 CisgCistICAgIHZpcnR1YWwgYm9vbCBydW5PbkJhc2ljQmxvY2soQmFzaWNCbG9jayAmQkIpIHsK KysgICAgdmlydHVhbCBib29sIHJ1bk9uRnVuY3Rpb24oRnVuY3Rpb24gJkYpIHsKKysgICAgICAg IGJvb2wgY2hhbmdlZEFueUJsb2NrID0gZmFsc2U7CisrICAgICAgICBmb3IgKEJhc2ljQmxvY2sg JkJCIDogRikgeworICNpZiBMTFZNX1ZFUlNJT05fTUFKT1IgKiAxMCArIExMVk1fVkVSU0lPTl9N SU5PUiA+PSAzOAorICAgICAgIFNFID0gJmdldEFuYWx5c2lzPFNjYWxhckV2b2x1dGlvbldyYXBw ZXJQYXNzPigpLmdldFNFKCk7CisgI2Vsc2UKK0BAIC01OSw3ICs2MSw5IEBAIG5hbWVzcGFjZSBn YmUgeworICAgICAgICNlbHNlCisgICAgICAgICBURCA9IGdldEFuYWx5c2lzSWZBdmFpbGFibGU8 RGF0YUxheW91dD4oKTsKKyAgICAgICAjZW5kaWYKKy0gICAgICByZXR1cm4gb3B0aW1pemVMb2Fk U3RvcmUoQkIpOworKyAgICAgICAgICAgY2hhbmdlZEFueUJsb2NrID0gb3B0aW1pemVMb2FkU3Rv cmUoQkIpIHwgY2hhbmdlZEFueUJsb2NrOworKyAgICAgICAgfQorKyAgICAgICAgcmV0dXJuIGNo YW5nZWRBbnlCbG9jazsKKyAgICAgfQorICAgICBUeXBlICAgICpnZXRWYWx1ZVR5cGUoVmFsdWUg Kmluc24pOworICAgICBWYWx1ZSAgICpnZXRQb2ludGVyT3BlcmFuZChWYWx1ZSAqSSk7CitAQCAt MTQ4LDcgKzE1Miw3IEBAIG5hbWVzcGFjZSBnYmUgeworICAgICAgIHZhbHVlcy5wdXNoX2JhY2so bWVyZ2VkW2ldKTsKKyAgICAgfQorICAgICBMb2FkSW5zdCAqbGQgPSBjYXN0PExvYWRJbnN0Piht ZXJnZWRbMF0pOworLSAgICB1bnNpZ25lZCBhbGlnbiA9IGxkLT5nZXRBbGlnbm1lbnQoKTsKKysg ICAgTWF5YmVBbGlnbiBhbGlnbiA9IGxkLT5nZXRBbGlnbigpOworICAgICB1bnNpZ25lZCBhZGRy U3BhY2UgPSBsZC0+Z2V0UG9pbnRlckFkZHJlc3NTcGFjZSgpOworICAgICAvLyBpbnNlcnQgYmVm b3JlIGZpcnN0IGxvYWQKKyAgICAgQnVpbGRlci5TZXRJbnNlcnRQb2ludChsZCk7CitAQCAtMjMx LDcgKzIzNSw3IEBAIG5hbWVzcGFjZSBnYmUgeworIAorICAgICB1bnNpZ25lZCBhZGRyU3BhY2Ug PSBzdC0+Z2V0UG9pbnRlckFkZHJlc3NTcGFjZSgpOworIAorLSAgICB1bnNpZ25lZCBhbGlnbiA9 IHN0LT5nZXRBbGlnbm1lbnQoKTsKKysgICAgTWF5YmVBbGlnbiBhbGlnbiA9IHN0LT5nZXRBbGln bigpOworICAgICAvLyBpbnNlcnQgYmVmb3JlIHRoZSBsYXN0IHN0b3JlCisgICAgIEJ1aWxkZXIu U2V0SW5zZXJ0UG9pbnQobWVyZ2VkW3NpemUtMV0pOworIAorQEAgLTMyNSw3ICszMjksNyBAQCBu YW1lc3BhY2UgZ2JlIHsKKyAgICAgcmV0dXJuIGNoYW5nZWQ7CisgICB9CisgCistICBCYXNpY0Js b2NrUGFzcyAqY3JlYXRlTG9hZFN0b3JlT3B0aW1pemF0aW9uUGFzcygpIHsKKysgIEZ1bmN0aW9u UGFzcyAqY3JlYXRlTG9hZFN0b3JlT3B0aW1pemF0aW9uUGFzcygpIHsKKyAgICAgcmV0dXJuIG5l dyBHZW5Mb2FkU3RvcmVPcHRpbWl6YXRpb24oKTsKKyAgIH0KKyB9OworZGlmZiAtLWdpdCBiYWNr ZW5kL3NyYy9sbHZtL2xsdm1fcGFzc2VzLmNwcCBiYWNrZW5kL3NyYy9sbHZtL2xsdm1fcGFzc2Vz LmNwcAoraW5kZXggMTA3NTJhMy4uYjhmMjI4MiAxMDA2NDQKKy0tLSBiYWNrZW5kL3NyYy9sbHZt L2xsdm1fcGFzc2VzLmNwcAorKysrIGJhY2tlbmQvc3JjL2xsdm0vbGx2bV9wYXNzZXMuY3BwCitA QCAtMzcsNyArMzcsNyBAQAorICNpbmNsdWRlICJzeXMvbWFwLmhwcCIKKyAKKyB1c2luZyBuYW1l c3BhY2UgbGx2bTsKKy0KKyt0ZW1wbGF0ZSBjbGFzcyBjZmc6OlVwZGF0ZTxCYXNpY0Jsb2NrICo+ OworIG5hbWVzcGFjZSBnYmUKKyB7CisgICBib29sIGlzS2VybmVsRnVuY3Rpb24oY29uc3QgbGx2 bTo6RnVuY3Rpb24gJkYpIHsKK0BAIC0yMTksMTMgKzIxOSwxMyBAQCBuYW1lc3BhY2UgZ2JlCisg ICAgIHJldHVybiBvZmZzZXQ7CisgICB9CisgCistICBjbGFzcyBHZW5SZW1vdmVHRVBQYXNzcyA6 IHB1YmxpYyBCYXNpY0Jsb2NrUGFzcworKyAgY2xhc3MgR2VuUmVtb3ZlR0VQUGFzc3MgOiBwdWJs aWMgRnVuY3Rpb25QYXNzCisgICB7CisgCisgICAgcHVibGljOgorICAgICBzdGF0aWMgY2hhciBJ RDsKKyAgICAgR2VuUmVtb3ZlR0VQUGFzc3MoY29uc3QgaXI6OlVuaXQgJnVuaXQpIDoKKy0gICAg ICBCYXNpY0Jsb2NrUGFzcyhJRCksCisrICAgICAgRnVuY3Rpb25QYXNzKElEKSwKKyAgICAgICB1 bml0KHVuaXQpIHt9CisgICAgIGNvbnN0IGlyOjpVbml0ICZ1bml0OworICAgICB2b2lkIGdldEFu YWx5c2lzVXNhZ2UoQW5hbHlzaXNVc2FnZSAmQVUpIGNvbnN0IHsKK0BAIC0yNDIsMTYgKzI0Miwx OCBAQCBuYW1lc3BhY2UgZ2JlCisgCisgICAgIGJvb2wgc2ltcGxpZnlHRVBJbnN0cnVjdGlvbnMo R2V0RWxlbWVudFB0ckluc3QqIEdFUEluc3QpOworIAorLSAgICB2aXJ0dWFsIGJvb2wgcnVuT25C YXNpY0Jsb2NrKEJhc2ljQmxvY2sgJkJCKQorKyAgICB2aXJ0dWFsIGJvb2wgcnVuT25GdW5jdGlv bihGdW5jdGlvbiAmRikKKyAgICAgeworLSAgICAgIGJvb2wgY2hhbmdlZEJsb2NrID0gZmFsc2U7 CisrICAgICAgYm9vbCBjaGFuZ2VkQW55QmxvY2sgPSBmYWxzZTsKKysgICAgICAgIGZvciAoQmFz aWNCbG9jayAmQkIgOiBGKSB7CisgICAgICAgaXBsaXN0PEluc3RydWN0aW9uPjo6aXRlcmF0b3Ig SSA9IEJCLmdldEluc3RMaXN0KCkuYmVnaW4oKTsKKyAgICAgICBmb3IgKGF1dG8gbmV4dEkgPSBJ LCBFID0gLS1CQi5nZXRJbnN0TGlzdCgpLmVuZCgpOyBJICE9IEU7IEkgPSBuZXh0SSkgeworICAg ICAgICAgaXBsaXN0PEluc3RydWN0aW9uPjo6aXRlcmF0b3IgSSA9IG5leHRJKys7CisgICAgICAg ICBpZihHZXRFbGVtZW50UHRySW5zdCogZ2VwID0gZHluX2Nhc3Q8R2V0RWxlbWVudFB0ckluc3Q+ KCYqSSkpCistICAgICAgICAgIGNoYW5nZWRCbG9jayA9IChzaW1wbGlmeUdFUEluc3RydWN0aW9u cyhnZXApIHx8IGNoYW5nZWRCbG9jayk7CisrICAgICAgICAgIGNoYW5nZWRBbnlCbG9jayA9IChz aW1wbGlmeUdFUEluc3RydWN0aW9ucyhnZXApIHwgY2hhbmdlZEFueUJsb2NrKTsKKyAgICAgICB9 CistICAgICAgcmV0dXJuIGNoYW5nZWRCbG9jazsKKysgICAgICAgIH0KKysgICAgICByZXR1cm4g Y2hhbmdlZEFueUJsb2NrOworICAgICB9CisgICB9OworIAorQEAgLTM2Nyw3ICszNjksNyBAQCBu YW1lc3BhY2UgZ2JlCisgICAgIHJldHVybiB0cnVlOworICAgfQorIAorLSAgQmFzaWNCbG9ja1Bh c3MgKmNyZWF0ZVJlbW92ZUdFUFBhc3MoY29uc3QgaXI6OlVuaXQgJnVuaXQpIHsKKysgIEZ1bmN0 aW9uUGFzcyAqY3JlYXRlUmVtb3ZlR0VQUGFzcyhjb25zdCBpcjo6VW5pdCAmdW5pdCkgeworICAg ICByZXR1cm4gbmV3IEdlblJlbW92ZUdFUFBhc3NzKHVuaXQpOworICAgfQorIH0gLyogbmFtZXNw YWNlIGdiZSAqLworZGlmZiAtLWdpdCBiYWNrZW5kL3NyYy9sbHZtL2xsdm1fc2FtcGxlcl9maXgu Y3BwIGJhY2tlbmQvc3JjL2xsdm0vbGx2bV9zYW1wbGVyX2ZpeC5jcHAKK2luZGV4IDJhMDk3Yzgu Ljg2M2JlNmQgMTAwNjQ0CistLS0gYmFja2VuZC9zcmMvbGx2bS9sbHZtX3NhbXBsZXJfZml4LmNw cAorKysrIGJhY2tlbmQvc3JjL2xsdm0vbGx2bV9zYW1wbGVyX2ZpeC5jcHAKK0BAIC0zMywxMCAr MzMsMTIgQEAgbmFtZXNwYWNlIGdiZSB7CisgICBjbGFzcyBTYW1wbGVyRml4IDogcHVibGljIEZ1 bmN0aW9uUGFzcyB7CisgICBwdWJsaWM6CisgICAgIFNhbXBsZXJGaXgoKSA6IEZ1bmN0aW9uUGFz cyhJRCkgeworKyNpZiBMTFZNX1ZFUlNJT05fTUFKT1IgPCAxMAorICNpZiBMTFZNX1ZFUlNJT05f TUFKT1IgKiAxMCArIExMVk1fVkVSU0lPTl9NSU5PUiA+PSAzNQorICAgICAgIGluaXRpYWxpemVE b21pbmF0b3JUcmVlV3JhcHBlclBhc3NQYXNzKCpQYXNzUmVnaXN0cnk6OmdldFBhc3NSZWdpc3Ry eSgpKTsKKyAjZWxzZQorICAgICAgIGluaXRpYWxpemVEb21pbmF0b3JUcmVlUGFzcygqUGFzc1Jl Z2lzdHJ5OjpnZXRQYXNzUmVnaXN0cnkoKSk7CisrI2VuZGlmCisgI2VuZGlmCisgICAgIH0KKyAK K2RpZmYgLS1naXQgYmFja2VuZC9zcmMvbGx2bS9sbHZtX3NjYWxhcml6ZS5jcHAgYmFja2VuZC9z cmMvbGx2bS9sbHZtX3NjYWxhcml6ZS5jcHAKK2luZGV4IGU5YTJhNjYuLmU5ZDJlZTQgMTAwNjQ0 CistLS0gYmFja2VuZC9zcmMvbGx2bS9sbHZtX3NjYWxhcml6ZS5jcHAKKysrKyBiYWNrZW5kL3Ny Yy9sbHZtL2xsdm1fc2NhbGFyaXplLmNwcAorQEAgLTk2LDEwICs5NiwxMiBAQCBuYW1lc3BhY2Ug Z2JlIHsKKyAKKyAgICAgU2NhbGFyaXplKCkgOiBGdW5jdGlvblBhc3MoSUQpCisgICAgIHsKKysj aWYgTExWTV9WRVJTSU9OX01BSk9SIDwgMTAKKyAjaWYgTExWTV9WRVJTSU9OX01BSk9SICogMTAg KyBMTFZNX1ZFUlNJT05fTUlOT1IgPj0gMzUKKyAgICAgICBpbml0aWFsaXplRG9taW5hdG9yVHJl ZVdyYXBwZXJQYXNzUGFzcygqUGFzc1JlZ2lzdHJ5OjpnZXRQYXNzUmVnaXN0cnkoKSk7CisgI2Vs c2UKKyAgICAgICBpbml0aWFsaXplRG9taW5hdG9yVHJlZVBhc3MoKlBhc3NSZWdpc3RyeTo6Z2V0 UGFzc1JlZ2lzdHJ5KCkpOworKyNlbmRpZgorICNlbmRpZgorICAgICB9CisgCitkaWZmIC0tZ2l0 IHV0ZXN0cy9DTWFrZUxpc3RzLnR4dCB1dGVzdHMvQ01ha2VMaXN0cy50eHQKK2luZGV4IDMwMGQ4 N2EuLjY0MTc5YzcgMTAwNjQ0CistLS0gdXRlc3RzL0NNYWtlTGlzdHMudHh0CisrKysgdXRlc3Rz L0NNYWtlTGlzdHMudHh0CitAQCAtMjYsOCArMjYsOCBAQCBpZiAoTk9UIE5PVF9CVUlMRF9TVEFO RF9BTE9ORV9VVEVTVCkKKyAgICMgVGhyZWFkcworICAgRmluZF9QYWNrYWdlKFRocmVhZHMpCisg CistICBzZXQgKENNQUtFX0NYWF9GTEFHUyAiJHtDTUFLRV9DWFhfRkxBR1N9ICR7Q01BS0VfQ19D WFhfRkxBR1N9IC1zdGQ9YysrMHggLVduby1pbnZhbGlkLW9mZnNldG9mIikKKy0gIHNldCAoQ01B S0VfQ19GTEFHUyAiJHtDTUFLRV9DX0ZMQUdTfSAke0NNQUtFX0NfQ1hYX0ZMQUdTfSIpCisrICBz ZXQgKENNQUtFX0NYWF9GTEFHUyAiJHtDTUFLRV9DWFhfRkxBR1N9ICR7Q01BS0VfQ19DWFhfRkxB R1N9IC1Xbm8taW52YWxpZC1vZmZzZXRvZiAtZmZsb2F0LXN0b3JlIC1mbm8tc3RyaWN0LWFsaWFz aW5nIikKKysgIHNldCAoQ01BS0VfQ19GTEFHUyAiJHtDTUFLRV9DX0ZMQUdTfSAke0NNQUtFX0Nf Q1hYX0ZMQUdTfSAtZmZsb2F0LXN0b3JlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIikgI2NvbXBpbGVy X3tkZWdyZWVzLHJhZGlhbnMsZnVuY3Rpb25fYXJndW1lbnQyfSB1c2UgZXF1YWxpdHkgY29tcGFy aXNvbiBvZiBmbG9hdHMsIGNvbXBpbGVyX2xvbmdfYml0Y2FzdCB1c2VzIGFsaWFzaW5nCisgICBz ZXQgKENNQUtFX0NYWF9GTEFHU19ERUJVRyAgICAgICAgICAiLU8wIC1nIC1ER0JFX0RFQlVHPTEi KQorICAgc2V0IChDTUFLRV9DWFhfRkxBR1NfUkVMV0lUSERFQklORk8gIi1PMiAtZyAtREdCRV9E RUJVRz0xIikKKyAgIHNldCAoQ01BS0VfQ1hYX0ZMQUdTX01JTlNJWkVSRUwgICAgICItT3MgLURO REVCVUcgLURHQkVfREVCVUc9MCIpCmRpZmYgLS1naXQgYS9zcmNwa2dzL2JlaWduZXQvdGVtcGxh dGUgYi9zcmNwa2dzL2JlaWduZXQvdGVtcGxhdGUKaW5kZXggYzEzMjMzNWRhMzcuLjEzMGFhNTdk NzkwIDEwMDY0NAotLS0gYS9zcmNwa2dzL2JlaWduZXQvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9i ZWlnbmV0L3RlbXBsYXRlCkBAIC0xLDggKzEsOCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnYmVp Z25ldCcKIHBrZ25hbWU9YmVpZ25ldAogdmVyc2lvbj0xLjMuMgotcmV2aXNpb249NgotYXJjaHM9 Imk2ODYqIHg4Nl82NCoiCityZXZpc2lvbj03CisjYXJjaHM9Imk2ODYqIHg4Nl82NCoiCiB3cmtz cmM9IkJlaWduZXQtJHt2ZXJzaW9ufS1Tb3VyY2UiCiBidWlsZF9zdHlsZT1jbWFrZQogaG9zdG1h a2VkZXBlbmRzPSJjbGFuZyBsbHZtIHBrZy1jb25maWciCgpGcm9tIDI2NTMyZmVhNGE5NDkyYzNl M2ZiNzM1NjRiMzg3M2RmMzQwNjIyYjMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHE2 NiA8ZGFuaWVsQG9jdGFmb3JnZS5vcmc+CkRhdGU6IEZyaSwgOCBNYXkgMjAyMCAyMDozMzoxNyAr MDIwMApTdWJqZWN0OiBbUEFUQ0ggMjQvMjRdIGlzcGM6IHVwZGF0ZSB0byAxLjEzLjAsIGxpbWl0 IHRvIHg4Nl82NAoKW2NpIHNraXBdCi0tLQogc3JjcGtncy9pc3BjL3RlbXBsYXRlIHwgMjQgKysr KysrKysrKysrKysrKystLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMTcgaW5zZXJ0aW9ucygrKSwg NyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2lzcGMvdGVtcGxhdGUgYi9zcmNw a2dzL2lzcGMvdGVtcGxhdGUKaW5kZXggOTk4ZDgwMjhjYWMuLmI5MTYwZDU2NjRhIDEwMDY0NAot LS0gYS9zcmNwa2dzL2lzcGMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9pc3BjL3RlbXBsYXRlCkBA IC0xLDIxICsxLDMxIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdpc3BjJwogcGtnbmFtZT1pc3Bj Ci12ZXJzaW9uPTEuMTIuMAotcmV2aXNpb249MgotYXJjaHM9Imk2ODYgeDg2XzY0IgordmVyc2lv bj0xLjEzLjAKK3JldmlzaW9uPTEKK2FyY2hzPSJ4ODZfNjQiCiBidWlsZF9zdHlsZT1jbWFrZQor Y29uZmlndXJlX2FyZ3M9Ii1ESVNQQ19OT19EVU1QUz1PTiAtREFSTV9FTkFCTEVEPU9GRiIKIGhv c3RtYWtlZGVwZW5kcz0iY2xhbmcgcHl0aG9uMyBtNCBiaXNvbiBmbGV4IGxsdm0iCi1jb25maWd1 cmVfYXJncz0iLURJU1BDX05PX0RVTVBTPXllcyIKIG1ha2VkZXBlbmRzPSJuY3Vyc2VzLWRldmVs IHpsaWItZGV2ZWwiCi1zaG9ydF9kZXNjPSJBIGNvbXBpbGVyIGZvciBoaWdoLXBlcmZvcm1hbmNl IFNJTUQgcHJvZ3JhbW1pbmcgb24gdGhlIENQVSIKK3Nob3J0X2Rlc2M9IkNvbXBpbGVyIGZvciBo aWdoLXBlcmZvcm1hbmNlIFNJTUQgcHJvZ3JhbW1pbmcgb24gdGhlIENQVSIKIG1haW50YWluZXI9 IkFuZHJlYSBCcmFuY2FsZW9uaSA8YWJjQHBvbXBlbC5tZT4iCi1saWNlbnNlPSJCU0QiCitsaWNl bnNlPSJCU0QtMy1DbGF1c2UiCiBob21lcGFnZT0iaHR0cHM6Ly9pc3BjLmdpdGh1Yi5pbyIKIGRp c3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL2lzcGMvaXNwYy9hcmNoaXZlL3Yke3ZlcnNpb259 LnRhci5neiIKK2NoZWNrc3VtPWNjNzRjNGM0OTBkZGY0ZTBhNjNmMDE5NDhlYzhkNmViNTc1ZDg1 YWI1OTMyZDMwY2E0YWQwMWMwZThmMDc5Y2UKIHBhdGNoX2FyZ3M9Ii1wMSIKLWNoZWNrc3VtPTll YmMyOWFkY2RmNDc3NjU5YjQ1MTU1ZDBmOTFlNjExMjBhMTIwODRlNDIxMTNkMGU5ZjRjZTVjZmRm YmRjYWIKK25vY3Jvc3M9eWVzCiBub3BpZT15ZXMKIAorIyBoYWNrIHRvIG1ha2UgLW0zMiB3b3Jr IHNvIGl0IGNhbiBidWlsZCAzMi1iaXQgdGFyZ2V0CitjYXNlICIkWEJQU19UQVJHRVRfTUFDSElO RSIgaW4KKwl4ODZfNjQpIGhvc3RtYWtlZGVwZW5kcys9IiBnY2MtbXVsdGlsaWIiOzsKK2VzYWMK KwogcHJlX2J1aWxkKCkgewogCXNlZCAtaSAnL3RpbmZvL2QnIENNYWtlTGlzdHMudHh0CiB9CisK K3Bvc3RfaW5zdGFsbCgpIHsKKwl2bGljZW5zZSBMSUNFTlNFLnR4dAorfQo= --===============8035426537350543882==--