From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 28965 invoked from network); 17 Dec 2022 08:56:20 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 17 Dec 2022 08:56:20 -0000 Content-Type: multipart/mixed; boundary="===============8698195337179017449==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_=5BWIP=5D_LLVM_15?= To: ml@inbox.vuxu.org From: tranzystorek-io Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Sat, 17 Dec 2022 09:56:20 +0100 List-Id: Message-ID: <20221217085620.2NMRAnDvuHv6L0_DWwcSx8CAAq5mrRx72lULVc6w9Iw@z> GitHub notification mails are now in MIME to allow UTF8. --===============8698195337179017449== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgdHJhbnp5c3RvcmVrLWlvIGFnYWlu c3QgbWFzdGVyIG9uIHRoZSB2b2lkLXBhY2thZ2VzIHJlcG9zaXRvcnkKCmh0dHBzOi8vZ2l0aHVi LmNvbS90cmFuenlzdG9yZWstaW8vdm9pZC1wYWNrYWdlcyBsbHZtMTUKaHR0cHM6Ly9naXRodWIu Y29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9wdWxsLzQwODIxCgpbV0lQXSBMTFZNIDE1Cltj aSBza2lwXQ0KDQpUT0RPOg0KDQotIFsgXSBBZGp1c3QgcGF0Y2hlcyBtYXJrZWQgYXMgYC5wYXRj aC5za2lwYA0KLSBbIF0gTWFrZSBsaWJvbXAgYSBzaGxpYiAoY2hhbmdlIHNvIGZpbGUgbmFtZSBh bmQgaW5zdGFsbCBhIHN5bWxpbmspDQotIFsgXSBBdm9pZCBjcmVhdGluZyB0cmlwbGV0IGRpcnMg dW5kZXIgL3Vzci8KCkEgcGF0Y2ggZmlsZSBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxp bnV4L3ZvaWQtcGFja2FnZXMvcHVsbC80MDgyMS5wYXRjaCBpcyBhdHRhY2hlZA== --===============8698195337179017449== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-llvm15-40821.patch" RnJvbSA0ZGM1OGU1ZThmZmM0NWJjMTc5ZjFhNzc4NjE4MDA1NzRhNjM1MzZiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXJjaW4gUHVjIDx0cmFuenlzdG9yZWsuaW9AcHJvdG9ubWFp bC5jb20+CkRhdGU6IFN1biwgMjcgTm92IDIwMjIgMjI6NTk6NDUgKzAxMDAKU3ViamVjdDogW1BB VENIXSBsbHZtOiB1cGRhdGUgdG8gMTUuMC42CgotLS0KIGNvbW1vbi9zaGxpYnMgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB8ICAgNyArLQogc3JjcGtncy9jbGFuZyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgICAyICstCiBzcmNwa2dzL2NsYW5nLWFuYWx5emVyICAg ICAgICAgICAgICAgICAgICAgICAgfCAgIDIgKy0KIHNyY3BrZ3MvY2xhbmctdG9vbHMtZXh0cmEg ICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQogc3JjcGtncy9saWJjbGFuZyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgICAyICstCiBzcmNwa2dzL2xpYmNsYW5nLWNwcCAgICAgICAg ICAgICAgICAgICAgICAgICAgfCAgIDIgKy0KIHNyY3BrZ3MvbGliY3h4ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB8ICAgMiArLQogc3JjcGtncy9saWJjeHgtZGV2ZWwgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgICAyICstCiBzcmNwa2dzL2xpYmN4eGFiaSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgIDIgKy0KIHNyY3BrZ3MvbGliY3h4YWJpLWRldmVsICAgICAgICAg ICAgICAgICAgICAgICB8ICAgMiArLQogc3JjcGtncy9saWJsbHZtMTUgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHwgICAxICsKIHNyY3BrZ3MvbGlib21wICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB8ICAgMiArLQogc3JjcGtncy9saWJvbXAtZGV2ZWwgICAgICAgICAgICAgICAg ICAgICAgICAgIHwgICAyICstCiBzcmNwa2dzL2xsZCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgfCAgIDIgKy0KIHNyY3BrZ3MvbGxkLWRldmVsICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB8ICAgMiArLQogc3JjcGtncy9sbGRiICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHwgICAyICstCiBzcmNwa2dzL2xsZGItZGV2ZWwgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfCAgIDIgKy0KIHNyY3BrZ3MvbGx2bS1saWJ1bndpbmQgICAgICAgICAgICAgICAgICAg ICAgICB8ICAgMiArLQogc3JjcGtncy9sbHZtLWxpYnVud2luZC1kZXZlbCAgICAgICAgICAgICAg ICAgIHwgICAyICstCiBzcmNwa2dzL2xsdm0vdGVtcGxhdGUgICAgICAgICAgICAgICAgICAgICAg ICAgfCAgIDYgKy0KIC4uLi9sbHZtMTUvZmlsZXMvbGx2bS1Db25maWctbGx2bS1jb25maWcuaCAg ICB8ICAgOSArCiAuLi5jbGFuZy0wMDEtZml4LXVud2luZC1jaGFpbi1pbmNsdXNpb24ucGF0Y2gg fCAgNDQgKysKIC4uLi9wYXRjaGVzL2NsYW5nLTAwMi1hZGQtbXVzbC10cmlwbGVzLnBhdGNoICB8 IDExMCArKysrKwogLi4uL2NsYW5nLTAwMy1wcGM2NC1keW5hbWljLWxpbmtlci1wYXRoLnBhdGNo IHwgIDEzICsKIC4uLi9wYXRjaGVzL2NsYW5nLTAwNC1wcGM2NC1tdXNsLWVsZnYyLnBhdGNoICB8 ICA0OCArKwogLi4uL2NvbXBpbGVyLXJ0LXNhbml0aXplci1wcGM2NC1tdXNsLnBhdGNoICAgIHwg IDM1ICsrCiAuLi4vY29tcGlsZXItcnQteHJheS1wcGM2NC1tdXNsLnBhdGNoLnNraXAgICAgfCAg NjIgKysrCiBzcmNwa2dzL2xsdm0xNS9wYXRjaGVzL2xpYmN4eC1tdXNsLnBhdGNoICAgICAgfCAg MjYgKysKIHNyY3BrZ3MvbGx2bTE1L3BhdGNoZXMvbGliY3h4LXBwYy5wYXRjaCAgICAgICB8ICAy MiArCiAuLi4vbGx2bTE1L3BhdGNoZXMvbGliY3h4LXNzcC1ub25zaGFyZWQucGF0Y2ggfCAgMTEg Kwogc3JjcGtncy9sbHZtMTUvcGF0Y2hlcy9saWJjeHhhYmktZGwucGF0Y2ggICAgIHwgIDI1ICsK IC4uLi9sbHZtMTUvcGF0Y2hlcy9saWJ1bndpbmQtcHBjMzIucGF0Y2guc2tpcCB8ICA2MyArKysK IHNyY3BrZ3MvbGx2bTE1L3BhdGNoZXMvbGxkYi1tdXNsLnBhdGNoICAgICAgICB8ICA0MCArKwog c3JjcGtncy9sbHZtMTUvcGF0Y2hlcy9sbHZtLTAwMS1tdXNsLnBhdGNoICAgIHwgIDU3ICsrKwog Li4uL3BhdGNoZXMvbGx2bS0wMDItbXVzbC1wcGM2NC1lbGZ2Mi5wYXRjaCAgIHwgIDMwICsrCiAu Li4vcGF0Y2hlcy9sbHZtLTAwMy1wcGMtc2VjdXJlcGx0LnBhdGNoICAgICAgfCAgMTEgKwogLi4u L3BhdGNoZXMvbGx2bS0wMDQtb3ZlcnJpZGUtb3B0LnBhdGNoICAgICAgIHwgIDE4ICsKIC4uLi9s bHZtMTUvcGF0Y2hlcy9sbHZtLTAwNS1wcGMtYmlncGljLnBhdGNoICB8ICAzNiArKwogLi4uL3Bh dGNoZXMvbGx2bS0wMDYtYWFyY2g2NC1tZl9leGVjLnBhdGNoICAgIHwgIDI1ICsKIHNyY3BrZ3Mv bGx2bTE1L3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAgICB8IDQzNCArKysrKysrKysrKysr KysrKysKIHNyY3BrZ3MvbGx2bTE1L3VwZGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICB8ICAg MyArCiA0MSBmaWxlcyBjaGFuZ2VkLCAxMTQ3IGluc2VydGlvbnMoKyksIDIzIGRlbGV0aW9ucygt KQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbGlibGx2bTE1CiBjcmVhdGUgbW9kZSAxMDA2 NDQgc3JjcGtncy9sbHZtMTUvZmlsZXMvbGx2bS1Db25maWctbGx2bS1jb25maWcuaAogY3JlYXRl IG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbGx2bTE1L3BhdGNoZXMvY2xhbmctMDAxLWZpeC11bndpbmQt Y2hhaW4taW5jbHVzaW9uLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9sbHZtMTUv cGF0Y2hlcy9jbGFuZy0wMDItYWRkLW11c2wtdHJpcGxlcy5wYXRjaAogY3JlYXRlIG1vZGUgMTAw NjQ0IHNyY3BrZ3MvbGx2bTE1L3BhdGNoZXMvY2xhbmctMDAzLXBwYzY0LWR5bmFtaWMtbGlua2Vy LXBhdGgucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2xsdm0xNS9wYXRjaGVzL2Ns YW5nLTAwNC1wcGM2NC1tdXNsLWVsZnYyLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtn cy9sbHZtMTUvcGF0Y2hlcy9jb21waWxlci1ydC1zYW5pdGl6ZXItcHBjNjQtbXVzbC5wYXRjaAog Y3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbGx2bTE1L3BhdGNoZXMvY29tcGlsZXItcnQteHJh eS1wcGM2NC1tdXNsLnBhdGNoLnNraXAKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2xsdm0x NS9wYXRjaGVzL2xpYmN4eC1tdXNsLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9s bHZtMTUvcGF0Y2hlcy9saWJjeHgtcHBjLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtn cy9sbHZtMTUvcGF0Y2hlcy9saWJjeHgtc3NwLW5vbnNoYXJlZC5wYXRjaAogY3JlYXRlIG1vZGUg MTAwNjQ0IHNyY3BrZ3MvbGx2bTE1L3BhdGNoZXMvbGliY3h4YWJpLWRsLnBhdGNoCiBjcmVhdGUg bW9kZSAxMDA2NDQgc3JjcGtncy9sbHZtMTUvcGF0Y2hlcy9saWJ1bndpbmQtcHBjMzIucGF0Y2gu c2tpcAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbGx2bTE1L3BhdGNoZXMvbGxkYi1tdXNs LnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9sbHZtMTUvcGF0Y2hlcy9sbHZtLTAw MS1tdXNsLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9sbHZtMTUvcGF0Y2hlcy9s bHZtLTAwMi1tdXNsLXBwYzY0LWVsZnYyLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtn cy9sbHZtMTUvcGF0Y2hlcy9sbHZtLTAwMy1wcGMtc2VjdXJlcGx0LnBhdGNoCiBjcmVhdGUgbW9k ZSAxMDA2NDQgc3JjcGtncy9sbHZtMTUvcGF0Y2hlcy9sbHZtLTAwNC1vdmVycmlkZS1vcHQucGF0 Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2xsdm0xNS9wYXRjaGVzL2xsdm0tMDA1LXBw Yy1iaWdwaWMucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2xsdm0xNS9wYXRjaGVz L2xsdm0tMDA2LWFhcmNoNjQtbWZfZXhlYy5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3Br Z3MvbGx2bTE1L3RlbXBsYXRlCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9sbHZtMTUvdXBk YXRlCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggYmE1 Yzg5ZWUzYmFkLi5mZTc5ZDQ3NmYxZGQgMTAwNjQ0Ci0tLSBhL2NvbW1vbi9zaGxpYnMKKysrIGIv Y29tbW9uL3NobGlicwpAQCAtOTgyLDExICs5ODIsMTIgQEAgbGlidWNoYXJkZXQuc28uMCB1Y2hh cmRldC0wLjAuNl8xCiBsaWJndGtzb3VyY2V2aWV3bW0tMy4wLnNvLjAgZ3Rrc291cmNldmlld21t LTMuMi4wXzEKIGxpYnlhamwuc28uMiB5YWpsLTIuMC4xXzEKIGxpYmNvbmZ1c2Uuc28uMiBjb25m dXNlLTMuMi4xXzEKLWxpYmxsZGIuc28uMTIgbGxkYi0xMi4wLjBfMQotbGliY2xhbmcuc28uMTIg bGliY2xhbmctMTIuMC4wXzEKLWxpYmNsYW5nLWNwcC5zby4xMiBsaWJjbGFuZy1jcHAtMTIuMC4w XzEKK2xpYmxsZGIuc28uMTUgbGxkYi0xNS4wLjVfMQorbGliY2xhbmcuc28uMTUgbGliY2xhbmct MTUuMC41XzEKK2xpYmNsYW5nLWNwcC5zby4xNSBsaWJjbGFuZy1jcHAtMTUuMC41XzEKIGxpYkxM Vk0tMTEuc28gbGlibGx2bTExLTExLjAuMF8xCiBsaWJMTFZNLTEyLnNvIGxpYmxsdm0xMi0xMi4w LjBfMQorbGliTExWTS0xNS5zbyBsaWJsbHZtMTUtMTUuMC41XzEKIGxpYmlzb2ZzLnNvLjYgbGli aXNvZnMtMC42LjI0XzEKIGxpYm1wYWNrLnNvLjAgbGlibXBhY2stMS4wLjVfMQogbGliR2VvSVAu c28uMSBsaWJnZW9pcC0xLjQuOF8xCmRpZmYgLS1naXQgYS9zcmNwa2dzL2NsYW5nIGIvc3JjcGtn cy9jbGFuZwppbmRleCBjZDYwZmQ3YTk4MWIuLmFkNTdhOTY5YjlmOSAxMjAwMDAKLS0tIGEvc3Jj cGtncy9jbGFuZworKysgYi9zcmNwa2dzL2NsYW5nCkBAIC0xICsxIEBACi1sbHZtMTIKXCBObyBu ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCitsbHZtMTUKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxl CmRpZmYgLS1naXQgYS9zcmNwa2dzL2NsYW5nLWFuYWx5emVyIGIvc3JjcGtncy9jbGFuZy1hbmFs eXplcgppbmRleCBjZDYwZmQ3YTk4MWIuLmFkNTdhOTY5YjlmOSAxMjAwMDAKLS0tIGEvc3JjcGtn cy9jbGFuZy1hbmFseXplcgorKysgYi9zcmNwa2dzL2NsYW5nLWFuYWx5emVyCkBAIC0xICsxIEBA Ci1sbHZtMTIKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCitsbHZtMTUKXCBObyBuZXdsaW5l IGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL2NsYW5nLXRvb2xzLWV4dHJhIGIv c3JjcGtncy9jbGFuZy10b29scy1leHRyYQppbmRleCBjZDYwZmQ3YTk4MWIuLmFkNTdhOTY5Yjlm OSAxMjAwMDAKLS0tIGEvc3JjcGtncy9jbGFuZy10b29scy1leHRyYQorKysgYi9zcmNwa2dzL2Ns YW5nLXRvb2xzLWV4dHJhCkBAIC0xICsxIEBACi1sbHZtMTIKXCBObyBuZXdsaW5lIGF0IGVuZCBv ZiBmaWxlCitsbHZtMTUKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9z cmNwa2dzL2xpYmNsYW5nIGIvc3JjcGtncy9saWJjbGFuZwppbmRleCBjZDYwZmQ3YTk4MWIuLmFk NTdhOTY5YjlmOSAxMjAwMDAKLS0tIGEvc3JjcGtncy9saWJjbGFuZworKysgYi9zcmNwa2dzL2xp YmNsYW5nCkBAIC0xICsxIEBACi1sbHZtMTIKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCits bHZtMTUKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xp YmNsYW5nLWNwcCBiL3NyY3BrZ3MvbGliY2xhbmctY3BwCmluZGV4IGNkNjBmZDdhOTgxYi4uYWQ1 N2E5NjliOWY5IDEyMDAwMAotLS0gYS9zcmNwa2dzL2xpYmNsYW5nLWNwcAorKysgYi9zcmNwa2dz L2xpYmNsYW5nLWNwcApAQCAtMSArMSBAQAotbGx2bTEyClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg ZmlsZQorbGx2bTE1ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9saWJjeHggYi9zcmNwa2dzL2xpYmN4eAppbmRleCBjZDYwZmQ3YTk4MWIuLmFkNTdhOTY5 YjlmOSAxMjAwMDAKLS0tIGEvc3JjcGtncy9saWJjeHgKKysrIGIvc3JjcGtncy9saWJjeHgKQEAg LTEgKzEgQEAKLWxsdm0xMgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKK2xsdm0xNQpcIE5v IG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGliY3h4LWRldmVs IGIvc3JjcGtncy9saWJjeHgtZGV2ZWwKaW5kZXggY2Q2MGZkN2E5ODFiLi5hZDU3YTk2OWI5Zjkg MTIwMDAwCi0tLSBhL3NyY3BrZ3MvbGliY3h4LWRldmVsCisrKyBiL3NyY3BrZ3MvbGliY3h4LWRl dmVsCkBAIC0xICsxIEBACi1sbHZtMTIKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCitsbHZt MTUKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYmN4 eGFiaSBiL3NyY3BrZ3MvbGliY3h4YWJpCmluZGV4IGNkNjBmZDdhOTgxYi4uYWQ1N2E5NjliOWY5 IDEyMDAwMAotLS0gYS9zcmNwa2dzL2xpYmN4eGFiaQorKysgYi9zcmNwa2dzL2xpYmN4eGFiaQpA QCAtMSArMSBAQAotbGx2bTEyClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorbGx2bTE1Clwg Tm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJjeHhhYmkt ZGV2ZWwgYi9zcmNwa2dzL2xpYmN4eGFiaS1kZXZlbAppbmRleCBjZDYwZmQ3YTk4MWIuLmFkNTdh OTY5YjlmOSAxMjAwMDAKLS0tIGEvc3JjcGtncy9saWJjeHhhYmktZGV2ZWwKKysrIGIvc3JjcGtn cy9saWJjeHhhYmktZGV2ZWwKQEAgLTEgKzEgQEAKLWxsdm0xMgpcIE5vIG5ld2xpbmUgYXQgZW5k IG9mIGZpbGUKK2xsdm0xNQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvbGlibGx2bTE1IGIvc3JjcGtncy9saWJsbHZtMTUKbmV3IGZpbGUgbW9kZSAxMjAw MDAKaW5kZXggMDAwMDAwMDAwMDAwLi5hZDU3YTk2OWI5ZjkKLS0tIC9kZXYvbnVsbAorKysgYi9z cmNwa2dzL2xpYmxsdm0xNQpAQCAtMCwwICsxIEBACitsbHZtMTUKXCBObyBuZXdsaW5lIGF0IGVu ZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYm9tcCBiL3NyY3BrZ3MvbGlib21wCmlu ZGV4IGNkNjBmZDdhOTgxYi4uYWQ1N2E5NjliOWY5IDEyMDAwMAotLS0gYS9zcmNwa2dzL2xpYm9t cAorKysgYi9zcmNwa2dzL2xpYm9tcApAQCAtMSArMSBAQAotbGx2bTEyClwgTm8gbmV3bGluZSBh dCBlbmQgb2YgZmlsZQorbGx2bTE1ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0t Z2l0IGEvc3JjcGtncy9saWJvbXAtZGV2ZWwgYi9zcmNwa2dzL2xpYm9tcC1kZXZlbAppbmRleCBj ZDYwZmQ3YTk4MWIuLmFkNTdhOTY5YjlmOSAxMjAwMDAKLS0tIGEvc3JjcGtncy9saWJvbXAtZGV2 ZWwKKysrIGIvc3JjcGtncy9saWJvbXAtZGV2ZWwKQEAgLTEgKzEgQEAKLWxsdm0xMgpcIE5vIG5l d2xpbmUgYXQgZW5kIG9mIGZpbGUKK2xsdm0xNQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGxkIGIvc3JjcGtncy9sbGQKaW5kZXggY2Q2MGZkN2E5ODFi Li5hZDU3YTk2OWI5ZjkgMTIwMDAwCi0tLSBhL3NyY3BrZ3MvbGxkCisrKyBiL3NyY3BrZ3MvbGxk CkBAIC0xICsxIEBACi1sbHZtMTIKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCitsbHZtMTUK XCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xsZC1kZXZl bCBiL3NyY3BrZ3MvbGxkLWRldmVsCmluZGV4IGNkNjBmZDdhOTgxYi4uYWQ1N2E5NjliOWY5IDEy MDAwMAotLS0gYS9zcmNwa2dzL2xsZC1kZXZlbAorKysgYi9zcmNwa2dzL2xsZC1kZXZlbApAQCAt MSArMSBAQAotbGx2bTEyClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorbGx2bTE1ClwgTm8g bmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9sbGRiIGIvc3JjcGtn cy9sbGRiCmluZGV4IGNkNjBmZDdhOTgxYi4uYWQ1N2E5NjliOWY5IDEyMDAwMAotLS0gYS9zcmNw a2dzL2xsZGIKKysrIGIvc3JjcGtncy9sbGRiCkBAIC0xICsxIEBACi1sbHZtMTIKXCBObyBuZXds aW5lIGF0IGVuZCBvZiBmaWxlCitsbHZtMTUKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRp ZmYgLS1naXQgYS9zcmNwa2dzL2xsZGItZGV2ZWwgYi9zcmNwa2dzL2xsZGItZGV2ZWwKaW5kZXgg Y2Q2MGZkN2E5ODFiLi5hZDU3YTk2OWI5ZjkgMTIwMDAwCi0tLSBhL3NyY3BrZ3MvbGxkYi1kZXZl bAorKysgYi9zcmNwa2dzL2xsZGItZGV2ZWwKQEAgLTEgKzEgQEAKLWxsdm0xMgpcIE5vIG5ld2xp bmUgYXQgZW5kIG9mIGZpbGUKK2xsdm0xNQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvbGx2bS1saWJ1bndpbmQgYi9zcmNwa2dzL2xsdm0tbGlidW53aW5k CmluZGV4IGNkNjBmZDdhOTgxYi4uYWQ1N2E5NjliOWY5IDEyMDAwMAotLS0gYS9zcmNwa2dzL2xs dm0tbGlidW53aW5kCisrKyBiL3NyY3BrZ3MvbGx2bS1saWJ1bndpbmQKQEAgLTEgKzEgQEAKLWxs dm0xMgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKK2xsdm0xNQpcIE5vIG5ld2xpbmUgYXQg ZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGx2bS1saWJ1bndpbmQtZGV2ZWwgYi9z cmNwa2dzL2xsdm0tbGlidW53aW5kLWRldmVsCmluZGV4IGNkNjBmZDdhOTgxYi4uYWQ1N2E5Njli OWY5IDEyMDAwMAotLS0gYS9zcmNwa2dzL2xsdm0tbGlidW53aW5kLWRldmVsCisrKyBiL3NyY3Br Z3MvbGx2bS1saWJ1bndpbmQtZGV2ZWwKQEAgLTEgKzEgQEAKLWxsdm0xMgpcIE5vIG5ld2xpbmUg YXQgZW5kIG9mIGZpbGUKK2xsdm0xNQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvbGx2bS90ZW1wbGF0ZSBiL3NyY3BrZ3MvbGx2bS90ZW1wbGF0ZQppbmRl eCBhOTJkYjZmOTRmOWYuLmQxNDQzMDA5MDE2MSAxMDA2NDQKLS0tIGEvc3JjcGtncy9sbHZtL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvbGx2bS90ZW1wbGF0ZQpAQCAtMSwxMCArMSwxMCBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAnbGx2bScKIHBrZ25hbWU9bGx2bQotdmVyc2lvbj0xMi4wLjAKK3Zl cnNpb249MTUuMC4wCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXRhCi1kZXBlbmRzPSJsbHZt MTIiCi1yZXBsYWNlcz0ibGx2bTExPj0wIGxsdm0xMD49MCBsbHZtOT49MCBsbHZtOD49MCBsbHZt Nz49MCBsbHZtNi4wPj0wIGxsdm0zLjk+PTAiCitkZXBlbmRzPSJsbHZtMTUiCityZXBsYWNlcz0i bGx2bTEyPj0wIGxsdm0xMT49MCBsbHZtMTA+PTAgbGx2bTk+PTAgbGx2bTg+PTAgbGx2bTc+PTAg bGx2bTYuMD49MCBsbHZtMy45Pj0wIgogc2hvcnRfZGVzYz0iTExWTSBtZXRhIHBhY2thZ2UiCiBt YWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0i UHVibGljIERvbWFpbiIKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGx2bTE1L2ZpbGVzL2xsdm0tQ29u ZmlnLWxsdm0tY29uZmlnLmggYi9zcmNwa2dzL2xsdm0xNS9maWxlcy9sbHZtLUNvbmZpZy1sbHZt LWNvbmZpZy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uMmZhMDhj OWJlNjk2Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9sbHZtMTUvZmlsZXMvbGx2bS1Db25m aWctbGx2bS1jb25maWcuaApAQCAtMCwwICsxLDkgQEAKKyNpbmNsdWRlIDxiaXRzL3dvcmRzaXpl Lmg+CisKKyNpZiBfX1dPUkRTSVpFID09IDMyCisjaW5jbHVkZSAibGx2bS1jb25maWctMzIuaCIK KyNlbGlmIF9fV09SRFNJWkUgPT0gNjQKKyNpbmNsdWRlICJsbHZtLWNvbmZpZy02NC5oIgorI2Vs c2UKKyNlcnJvciAiVW5rbm93biB3b3JkIHNpemUiCisjZW5kaWYKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvbGx2bTE1L3BhdGNoZXMvY2xhbmctMDAxLWZpeC11bndpbmQtY2hhaW4taW5jbHVzaW9uLnBh dGNoIGIvc3JjcGtncy9sbHZtMTUvcGF0Y2hlcy9jbGFuZy0wMDEtZml4LXVud2luZC1jaGFpbi1p bmNsdXNpb24ucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi5l NGVhYTc3ODNlN2EKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2xsdm0xNS9wYXRjaGVzL2Ns YW5nLTAwMS1maXgtdW53aW5kLWNoYWluLWluY2x1c2lvbi5wYXRjaApAQCAtMCwwICsxLDQ0IEBA CitGcm9tIDM1Mjk3NDE2OWYwZDJiNWRhM2Q1MzIxZjU4OGY1ZTNiNTk0MTMzMGUgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCitGcm9tOiBBbmRyZWEgQnJhbmNhbGVvbmkgPG1pd2F4ZUBnbWFpbC5j b20+CitEYXRlOiBUdWUsIDggU2VwIDIwMTUgMjI6MTQ6NTcgKzAyMDAKK1N1YmplY3Q6IFtQQVRD SCAyLzddIGZpeCB1bndpbmQgY2hhaW4gaW5jbHVzaW9uCisKKy0tLQorIGxpYi9IZWFkZXJzL3Vu d2luZC5oIHwgOSArKysrKy0tLS0KKyAxIGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA0 IGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvbGliL0hlYWRlcnMvdW53aW5kLmggYi9saWIv SGVhZGVycy91bndpbmQuaAoraW5kZXggMzAzZDc5Mi4uNDRlMTBjYyAxMDA2NDQKKy0tLSBhL2Ns YW5nL2xpYi9IZWFkZXJzL3Vud2luZC5oCisrKysgYi9jbGFuZy9saWIvSGVhZGVycy91bndpbmQu aAorQEAgLTksOSArOSw2IEBACisgCisgLyogU2VlICJEYXRhIERlZmluaXRpb25zIGZvciBsaWJn Y2NfcyIgaW4gdGhlIExpbnV4IFN0YW5kYXJkIEJhc2UuKi8KKyAKKy0jaWZuZGVmIF9fQ0xBTkdf VU5XSU5EX0gKKy0jZGVmaW5lIF9fQ0xBTkdfVU5XSU5EX0gKKy0KKyAjaWYgZGVmaW5lZChfX0FQ UExFX18pICYmIF9faGFzX2luY2x1ZGVfbmV4dCg8dW53aW5kLmg+KQorIC8qIERhcndpbiAoZnJv bSAxMS54IG9uKSBwcm92aWRlIGFuIHVud2luZC5oLiBJZiB0aGF0J3MgYXZhaWxhYmxlLAorICAq IHVzZSBpdC4gbGlidW53aW5kIHdyYXBzIHNvbWUgb2YgaXRzIGRlZmluaXRpb25zIGluICNpZmRl ZiBfR05VX1NPVVJDRSwKK0BAIC0zOSw2ICszNiw5IEBACisgIyBlbmRpZgorICNlbHNlCisgCisr I2lmbmRlZiBfX0NMQU5HX1VOV0lORF9ICisrI2RlZmluZSBfX0NMQU5HX1VOV0lORF9ICisrCisg I2luY2x1ZGUgPHN0ZGludC5oPgorIAorICNpZmRlZiBfX2NwbHVzcGx1cworQEAgLTMyMiw2ICsz MjIsNyBAQCBfVW53aW5kX1B0ciBfVW53aW5kX0dldFRleHRSZWxCYXNlKHN0cnVjdCBfVW53aW5k X0NvbnRleHQgKik7CisgfQorICNlbmRpZgorIAorKyNlbmRpZiAvKiBfX0NMQU5HX1VOV0lORF9I ICovCisrCisgI2VuZGlmCisgCistI2VuZGlmIC8qIF9fQ0xBTkdfVU5XSU5EX0ggKi8KKy0tIAor Mi41LjEKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGx2bTE1L3BhdGNoZXMvY2xhbmctMDAyLWFkZC1t dXNsLXRyaXBsZXMucGF0Y2ggYi9zcmNwa2dzL2xsdm0xNS9wYXRjaGVzL2NsYW5nLTAwMi1hZGQt bXVzbC10cmlwbGVzLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw MC4uMjU2ODhkNDBkYmMyCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9sbHZtMTUvcGF0Y2hl cy9jbGFuZy0wMDItYWRkLW11c2wtdHJpcGxlcy5wYXRjaApAQCAtMCwwICsxLDExMCBAQAorLS0t IGEvY2xhbmcvbGliL0RyaXZlci9Ub29sQ2hhaW5zL0dudS5jcHAKKysrKyBiL2NsYW5nL2xpYi9E cml2ZXIvVG9vbENoYWlucy9HbnUuY3BwCitAQCAtMjA4Niw3ICsyMDg2LDggQEAgdm9pZCBHZW5l cmljX0dDQzo6R0NDSW5zdGFsbGF0aW9uRGV0ZWN0b3I6OkFkZERlZmF1bHRHQ0NQcmVmaXhlcygK KyAgIHN0YXRpYyBjb25zdCBjaGFyICpjb25zdCBBUk1IRlRyaXBsZXNbXSA9IHsiYXJtLWxpbnV4 LWdudWVhYmloZiIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgImFybXY3aGwtcmVkaGF0LWxpbnV4LWdudWVhYmkiLAorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICJhcm12NmhsLXN1c2UtbGludXgtZ251ZWFiaSIsCist ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImFybXY3aGwtc3Vz ZS1saW51eC1nbnVlYWJpIn07CisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgImFybXY3aGwtc3VzZS1saW51eC1nbnVlYWJpIiwKKysgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYXJtdjdsLWxpbnV4LWdudWVhYmloZiJ9Owor ICAgc3RhdGljIGNvbnN0IGNoYXIgKmNvbnN0IEFSTWViTGliRGlyc1tdID0geyIvbGliIn07Cisg ICBzdGF0aWMgY29uc3QgY2hhciAqY29uc3QgQVJNZWJUcmlwbGVzW10gPSB7ImFybWViLWxpbnV4 LWdudWVhYmkiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICJhcm1lYi1saW51eC1hbmRyb2lkZWFiaSJ9OworQEAgLTIxNTMsOCArMjE1NCw3IEBAIHZvaWQg R2VuZXJpY19HQ0M6OkdDQ0luc3RhbGxhdGlvbkRldGVjdG9yOjpBZGREZWZhdWx0R0NDUHJlZml4 ZXMoCisgICAgICAgInBvd2VycGM2NC1zdXNlLWxpbnV4IiwgInBvd2VycGMtbW9udGF2aXN0YS1s aW51eHNwZSJ9OworICAgc3RhdGljIGNvbnN0IGNoYXIgKmNvbnN0IFBQQ0xFTGliRGlyc1tdID0g eyIvbGliMzIiLCAiL2xpYiJ9OworICAgc3RhdGljIGNvbnN0IGNoYXIgKmNvbnN0IFBQQ0xFVHJp cGxlc1tdID0geyJwb3dlcnBjbGUtbGludXgtZ251IiwKKy0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAicG93ZXJwY2xlLXVua25vd24tbGludXgtZ251IiwKKy0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicG93ZXJwY2xlLWxp bnV4LW11c2wifTsKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAicG93ZXJwY2xlLXVua25vd24tbGludXgtZ251In07CisgCisgICBzdGF0aWMgY29uc3QgY2hh ciAqY29uc3QgUFBDNjRMaWJEaXJzW10gPSB7Ii9saWI2NCIsICIvbGliIn07CisgICBzdGF0aWMg Y29uc3QgY2hhciAqY29uc3QgUFBDNjRUcmlwbGVzW10gPSB7CitAQCAtMjIzNSw2ICsyMjM1LDg3 IEBAIHZvaWQgR2VuZXJpY19HQ0M6OkdDQ0luc3RhbGxhdGlvbkRldGVjdG9yOjpBZGREZWZhdWx0 R0NDUHJlZml4ZXMoCisgICAgIHJldHVybjsKKyAgIH0KKyAKKysgIGlmIChUYXJnZXRUcmlwbGUu aXNNdXNsKCkpIHsKKysgICAgc3RhdGljIGNvbnN0IGNoYXIgKmNvbnN0IEFBcmNoNjRNdXNsVHJp cGxlc1tdID0geyJhYXJjaDY0LWxpbnV4LW11c2wifTsKKysgICAgc3RhdGljIGNvbnN0IGNoYXIg KmNvbnN0IEFSTUhGTXVzbFRyaXBsZXNbXSA9IHsKKysgICAgICAgICJhcm0tbGludXgtbXVzbGVh YmloZiIsICJhcm12N2wtbGludXgtbXVzbGVhYmloZiIKKysgICAgfTsKKysgICAgc3RhdGljIGNv bnN0IGNoYXIgKmNvbnN0IEFSTU11c2xUcmlwbGVzW10gPSB7ImFybS1saW51eC1tdXNsZWFiaSJ9 OworKyAgICBzdGF0aWMgY29uc3QgY2hhciAqY29uc3QgWDg2XzY0TXVzbFRyaXBsZXNbXSA9IHsi eDg2XzY0LWxpbnV4LW11c2wifTsKKysgICAgc3RhdGljIGNvbnN0IGNoYXIgKmNvbnN0IFg4Nk11 c2xUcmlwbGVzW10gPSB7Imk2ODYtbGludXgtbXVzbCJ9OworKyAgICBzdGF0aWMgY29uc3QgY2hh ciAqY29uc3QgTUlQU011c2xUcmlwbGVzW10gPSB7CisrICAgICAgICAibWlwcy1saW51eC1tdXNs IiwgIm1pcHNlbC1saW51eC1tdXNsIiwKKysgICAgICAgICJtaXBzZWwtbGludXgtbXVzbGhmIiwg Im1pcHMtbGludXgtbXVzbGhmIgorKyAgICB9OworKyAgICBzdGF0aWMgY29uc3QgY2hhciAqY29u c3QgUFBDTXVzbFRyaXBsZXNbXSA9IHsicG93ZXJwYy1saW51eC1tdXNsIn07CisrICAgIHN0YXRp YyBjb25zdCBjaGFyICpjb25zdCBQUENMRU11c2xUcmlwbGVzW10gPSB7InBvd2VycGNsZS1saW51 eC1tdXNsIn07CisrICAgIHN0YXRpYyBjb25zdCBjaGFyICpjb25zdCBQUEM2NE11c2xUcmlwbGVz W10gPSB7InBvd2VycGM2NC1saW51eC1tdXNsIn07CisrICAgIHN0YXRpYyBjb25zdCBjaGFyICpj b25zdCBQUEM2NExFTXVzbFRyaXBsZXNbXSA9IHsicG93ZXJwYzY0bGUtbGludXgtbXVzbCJ9Owor KworKyAgICBzd2l0Y2ggKFRhcmdldFRyaXBsZS5nZXRBcmNoKCkpIHsKKysgICAgY2FzZSBsbHZt OjpUcmlwbGU6OmFhcmNoNjQ6CisrICAgICAgTGliRGlycy5hcHBlbmQoYmVnaW4oQUFyY2g2NExp YkRpcnMpLCBlbmQoQUFyY2g2NExpYkRpcnMpKTsKKysgICAgICBUcmlwbGVBbGlhc2VzLmFwcGVu ZChiZWdpbihBQXJjaDY0TXVzbFRyaXBsZXMpLCBlbmQoQUFyY2g2NE11c2xUcmlwbGVzKSk7Cisr ICAgICAgQmlhcmNoTGliRGlycy5hcHBlbmQoYmVnaW4oQUFyY2g2NExpYkRpcnMpLCBlbmQoQUFy Y2g2NExpYkRpcnMpKTsKKysgICAgICBCaWFyY2hUcmlwbGVBbGlhc2VzLmFwcGVuZChiZWdpbihB QXJjaDY0TXVzbFRyaXBsZXMpLCBlbmQoQUFyY2g2NE11c2xUcmlwbGVzKSk7CisrICAgICAgYnJl YWs7CisrICAgIGNhc2UgbGx2bTo6VHJpcGxlOjphcm06CisrICAgICAgTGliRGlycy5hcHBlbmQo YmVnaW4oQVJNTGliRGlycyksIGVuZChBUk1MaWJEaXJzKSk7CisrICAgICAgaWYgKFRhcmdldFRy aXBsZS5nZXRFbnZpcm9ubWVudCgpID09IGxsdm06OlRyaXBsZTo6TXVzbEVBQklIRikgeworKyAg ICAgICAgVHJpcGxlQWxpYXNlcy5hcHBlbmQoYmVnaW4oQVJNSEZNdXNsVHJpcGxlcyksIGVuZChB Uk1IRk11c2xUcmlwbGVzKSk7CisrICAgICAgfSBlbHNlIHsKKysgICAgICAgIFRyaXBsZUFsaWFz ZXMuYXBwZW5kKGJlZ2luKEFSTU11c2xUcmlwbGVzKSwgZW5kKEFSTU11c2xUcmlwbGVzKSk7Cisr ICAgICAgfQorKyAgICAgIGJyZWFrOworKyAgICBjYXNlIGxsdm06OlRyaXBsZTo6eDg2XzY0Ogor KyAgICAgIExpYkRpcnMuYXBwZW5kKGJlZ2luKFg4Nl82NExpYkRpcnMpLCBlbmQoWDg2XzY0TGli RGlycykpOworKyAgICAgIFRyaXBsZUFsaWFzZXMuYXBwZW5kKGJlZ2luKFg4Nl82NE11c2xUcmlw bGVzKSwgZW5kKFg4Nl82NE11c2xUcmlwbGVzKSk7CisrICAgICAgQmlhcmNoTGliRGlycy5hcHBl bmQoYmVnaW4oWDg2TGliRGlycyksIGVuZChYODZMaWJEaXJzKSk7CisrICAgICAgQmlhcmNoVHJp cGxlQWxpYXNlcy5hcHBlbmQoYmVnaW4oWDg2TXVzbFRyaXBsZXMpLCBlbmQoWDg2TXVzbFRyaXBs ZXMpKTsKKysgICAgICBicmVhazsKKysgICAgY2FzZSBsbHZtOjpUcmlwbGU6Ong4NjoKKysgICAg ICBMaWJEaXJzLmFwcGVuZChiZWdpbihYODZMaWJEaXJzKSwgZW5kKFg4NkxpYkRpcnMpKTsKKysg ICAgICBUcmlwbGVBbGlhc2VzLmFwcGVuZChiZWdpbihYODZNdXNsVHJpcGxlcyksIGVuZChYODZN dXNsVHJpcGxlcykpOworKyAgICAgIEJpYXJjaExpYkRpcnMuYXBwZW5kKGJlZ2luKFg4Nl82NExp YkRpcnMpLCBlbmQoWDg2XzY0TGliRGlycykpOworKyAgICAgIEJpYXJjaFRyaXBsZUFsaWFzZXMu YXBwZW5kKGJlZ2luKFg4Nl82NE11c2xUcmlwbGVzKSwgZW5kKFg4Nl82NE11c2xUcmlwbGVzKSk7 CisrICAgICAgYnJlYWs7CisrICAgIGNhc2UgbGx2bTo6VHJpcGxlOjptaXBzOgorKyAgICAgIExp YkRpcnMuYXBwZW5kKGJlZ2luKE1JUFNMaWJEaXJzKSwgZW5kKE1JUFNMaWJEaXJzKSk7CisrICAg ICAgVHJpcGxlQWxpYXNlcy5hcHBlbmQoYmVnaW4oTUlQU011c2xUcmlwbGVzKSwgZW5kKE1JUFNN dXNsVHJpcGxlcykpOworKyAgICAgIGJyZWFrOworKyAgICBjYXNlIGxsdm06OlRyaXBsZTo6cHBj OgorKyAgICAgIExpYkRpcnMuYXBwZW5kKGJlZ2luKFBQQ0xpYkRpcnMpLCBlbmQoUFBDTGliRGly cykpOworKyAgICAgIFRyaXBsZUFsaWFzZXMuYXBwZW5kKGJlZ2luKFBQQ011c2xUcmlwbGVzKSwg ZW5kKFBQQ011c2xUcmlwbGVzKSk7CisrICAgICAgQmlhcmNoTGliRGlycy5hcHBlbmQoYmVnaW4o UFBDNjRMaWJEaXJzKSwgZW5kKFBQQzY0TGliRGlycykpOworKyAgICAgIEJpYXJjaFRyaXBsZUFs aWFzZXMuYXBwZW5kKGJlZ2luKFBQQzY0TXVzbFRyaXBsZXMpLCBlbmQoUFBDNjRNdXNsVHJpcGxl cykpOworKyAgICAgIGJyZWFrOworKyAgICBjYXNlIGxsdm06OlRyaXBsZTo6cHBjbGU6CisrICAg ICAgTGliRGlycy5hcHBlbmQoYmVnaW4oUFBDTEVMaWJEaXJzKSwgZW5kKFBQQ0xFTGliRGlycykp OworKyAgICAgIFRyaXBsZUFsaWFzZXMuYXBwZW5kKGJlZ2luKFBQQ0xFTXVzbFRyaXBsZXMpLCBl bmQoUFBDTEVNdXNsVHJpcGxlcykpOworKyAgICAgIEJpYXJjaExpYkRpcnMuYXBwZW5kKGJlZ2lu KFBQQzY0TEVMaWJEaXJzKSwgZW5kKFBQQzY0TEVMaWJEaXJzKSk7CisrICAgICAgQmlhcmNoVHJp cGxlQWxpYXNlcy5hcHBlbmQoYmVnaW4oUFBDNjRMRU11c2xUcmlwbGVzKSwgZW5kKFBQQzY0TEVN dXNsVHJpcGxlcykpOworKyAgICAgIGJyZWFrOworKyAgICBjYXNlIGxsdm06OlRyaXBsZTo6cHBj NjQ6CisrICAgICAgTGliRGlycy5hcHBlbmQoYmVnaW4oUFBDNjRMaWJEaXJzKSwgZW5kKFBQQzY0 TGliRGlycykpOworKyAgICAgIFRyaXBsZUFsaWFzZXMuYXBwZW5kKGJlZ2luKFBQQzY0TXVzbFRy aXBsZXMpLCBlbmQoUFBDNjRNdXNsVHJpcGxlcykpOworKyAgICAgIEJpYXJjaExpYkRpcnMuYXBw ZW5kKGJlZ2luKFBQQ0xpYkRpcnMpLCBlbmQoUFBDTGliRGlycykpOworKyAgICAgIEJpYXJjaFRy aXBsZUFsaWFzZXMuYXBwZW5kKGJlZ2luKFBQQ011c2xUcmlwbGVzKSwgZW5kKFBQQ011c2xUcmlw bGVzKSk7CisrICAgICAgYnJlYWs7CisrICAgIGNhc2UgbGx2bTo6VHJpcGxlOjpwcGM2NGxlOgor KyAgICAgIExpYkRpcnMuYXBwZW5kKGJlZ2luKFBQQzY0TEVMaWJEaXJzKSwgZW5kKFBQQzY0TEVM aWJEaXJzKSk7CisrICAgICAgVHJpcGxlQWxpYXNlcy5hcHBlbmQoYmVnaW4oUFBDNjRMRU11c2xU cmlwbGVzKSwgZW5kKFBQQzY0TEVNdXNsVHJpcGxlcykpOworKyAgICAgIEJpYXJjaExpYkRpcnMu YXBwZW5kKGJlZ2luKFBQQ0xFTGliRGlycyksIGVuZChQUENMRUxpYkRpcnMpKTsKKysgICAgICBC aWFyY2hUcmlwbGVBbGlhc2VzLmFwcGVuZChiZWdpbihQUENMRU11c2xUcmlwbGVzKSwgZW5kKFBQ Q0xFTXVzbFRyaXBsZXMpKTsKKysgICAgICBicmVhazsKKysgICAgZGVmYXVsdDoKKysgICAgICBi cmVhazsKKysgICAgfQorKyAgICBUcmlwbGVBbGlhc2VzLnB1c2hfYmFjayhUYXJnZXRUcmlwbGUu c3RyKCkpOworKyAgICBpZiAoVGFyZ2V0VHJpcGxlLnN0cigpICE9IEJpYXJjaFRyaXBsZS5zdHIo KSkKKysgICAgICBCaWFyY2hUcmlwbGVBbGlhc2VzLnB1c2hfYmFjayhCaWFyY2hUcmlwbGUuc3Ry KCkpOworKyAgICByZXR1cm47CisrICB9CisrCisgICAvLyBBbmRyb2lkIHRhcmdldHMgc2hvdWxk IG5vdCB1c2UgR05VL0xpbnV4IHRvb2xzIG9yIGxpYnJhcmllcy4KKyAgIGlmIChUYXJnZXRUcmlw bGUuaXNBbmRyb2lkKCkpIHsKKyAgICAgc3RhdGljIGNvbnN0IGNoYXIgKmNvbnN0IEFBcmNoNjRB bmRyb2lkVHJpcGxlc1tdID0gewpkaWZmIC0tZ2l0IGEvc3JjcGtncy9sbHZtMTUvcGF0Y2hlcy9j bGFuZy0wMDMtcHBjNjQtZHluYW1pYy1saW5rZXItcGF0aC5wYXRjaCBiL3NyY3BrZ3MvbGx2bTE1 L3BhdGNoZXMvY2xhbmctMDAzLXBwYzY0LWR5bmFtaWMtbGlua2VyLXBhdGgucGF0Y2gKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi40YWQ2NDEyZDFlNmMKLS0tIC9kZXYv bnVsbAorKysgYi9zcmNwa2dzL2xsdm0xNS9wYXRjaGVzL2NsYW5nLTAwMy1wcGM2NC1keW5hbWlj LWxpbmtlci1wYXRoLnBhdGNoCkBAIC0wLDAgKzEsMTMgQEAKKy0tLSBhL2NsYW5nL2xpYi9Ecml2 ZXIvVG9vbENoYWlucy9MaW51eC5jcHAKKysrKyBiL2NsYW5nL2xpYi9Ecml2ZXIvVG9vbENoYWlu cy9MaW51eC5jcHAKK0BAIC01MDQsMTAgKzUwNCw2IEBAIHN0ZDo6c3RyaW5nIExpbnV4OjpnZXRE eW5hbWljTGlua2VyKGNvbnN0IEFyZ0xpc3QgJkFyZ3MpIGNvbnN0IHsKKyAgICAgTG9hZGVyID0g ImxkLnNvLjEiOworICAgICBicmVhazsKKyAgIGNhc2UgbGx2bTo6VHJpcGxlOjpwcGM2NDoKKy0g ICAgTGliRGlyID0gImxpYjY0IjsKKy0gICAgTG9hZGVyID0KKy0gICAgICAgICh0b29sczo6cHBj OjpoYXNQUENBYmlBcmcoQXJncywgImVsZnYyIikpID8gImxkNjQuc28uMiIgOiAibGQ2NC5zby4x IjsKKy0gICAgYnJlYWs7CisgICBjYXNlIGxsdm06OlRyaXBsZTo6cHBjNjRsZToKKyAgICAgTGli RGlyID0gImxpYjY0IjsKKyAgICAgTG9hZGVyID0KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGx2bTE1 L3BhdGNoZXMvY2xhbmctMDA0LXBwYzY0LW11c2wtZWxmdjIucGF0Y2ggYi9zcmNwa2dzL2xsdm0x NS9wYXRjaGVzL2NsYW5nLTAwNC1wcGM2NC1tdXNsLWVsZnYyLnBhdGNoCm5ldyBmaWxlIG1vZGUg MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uMjFmYzgwMDNjNWYxCi0tLSAvZGV2L251bGwKKysr IGIvc3JjcGtncy9sbHZtMTUvcGF0Y2hlcy9jbGFuZy0wMDQtcHBjNjQtbXVzbC1lbGZ2Mi5wYXRj aApAQCAtMCwwICsxLDQ4IEBACistLS0gYS9jbGFuZy9saWIvQmFzaWMvVGFyZ2V0cy9QUEMuaAor KysrIGIvY2xhbmcvbGliL0Jhc2ljL1RhcmdldHMvUFBDLmgKK0BAIC00MTUsMTEgKzQxNSwxMCBA QCBwdWJsaWM6CisgICAgICAgTG9uZ0RvdWJsZUZvcm1hdCA9ICZsbHZtOjpBUEZsb2F0OjpJRUVF ZG91YmxlKCk7CisgICAgIH0gZWxzZSBpZiAoKFRyaXBsZS5nZXRBcmNoKCkgPT0gbGx2bTo6VHJp cGxlOjpwcGM2NGxlKSkgeworICAgICAgIERhdGFMYXlvdXQgPSAiZS1tOmUtaTY0OjY0LW4zMjo2 NCI7CistICAgICAgQUJJID0gImVsZnYyIjsKKyAgICAgfSBlbHNlIHsKKyAgICAgICBEYXRhTGF5 b3V0ID0gIkUtbTplLWk2NDo2NC1uMzI6NjQiOworLSAgICAgIEFCSSA9ICJlbGZ2MSI7CisgICAg IH0KKysgICAgQUJJID0gImVsZnYyIjsKKyAKKyAgICAgaWYgKFRyaXBsZS5pc09TRnJlZUJTRCgp IHx8IFRyaXBsZS5pc09TT3BlbkJTRCgpIHx8IFRyaXBsZS5pc011c2woKSkgeworICAgICAgIExv bmdEb3VibGVXaWR0aCA9IExvbmdEb3VibGVBbGlnbiA9IDY0OworLS0tIGEvY2xhbmcvbGliL0Nv ZGVHZW4vVGFyZ2V0SW5mby5jcHAKKysrKyBiL2NsYW5nL2xpYi9Db2RlR2VuL1RhcmdldEluZm8u Y3BwCitAQCAtMTA5MjcsOSArMTA5MjcsOSBAQCBjb25zdCBUYXJnZXRDb2RlR2VuSW5mbyAmQ29k ZUdlbk1vZHVsZTo6Z2V0VGFyZ2V0Q29kZUdlbkluZm8oKSB7CisgICAgICAgcmV0dXJuIFNldENH SW5mbyhuZXcgQUlYVGFyZ2V0Q29kZUdlbkluZm8oVHlwZXMsIC8qSXM2NEJpdCovIHRydWUpKTsK KyAKKyAgICAgaWYgKFRyaXBsZS5pc09TQmluRm9ybWF0RUxGKCkpIHsKKy0gICAgICBQUEM2NF9T VlI0X0FCSUluZm86OkFCSUtpbmQgS2luZCA9IFBQQzY0X1NWUjRfQUJJSW5mbzo6RUxGdjE7Cist ICAgICAgaWYgKGdldFRhcmdldCgpLmdldEFCSSgpID09ICJlbGZ2MiIpCistICAgICAgICBLaW5k ID0gUFBDNjRfU1ZSNF9BQklJbmZvOjpFTEZ2MjsKKysgICAgICBQUEM2NF9TVlI0X0FCSUluZm86 OkFCSUtpbmQgS2luZCA9IFBQQzY0X1NWUjRfQUJJSW5mbzo6RUxGdjI7CisrICAgICAgaWYgKGdl dFRhcmdldCgpLmdldEFCSSgpID09ICJlbGZ2MSIpCisrICAgICAgICBLaW5kID0gUFBDNjRfU1ZS NF9BQklJbmZvOjpFTEZ2MTsKKyAgICAgICBib29sIElzU29mdEZsb2F0ID0gQ29kZUdlbk9wdHMu RmxvYXRBQkkgPT0gInNvZnQiOworIAorICAgICAgIHJldHVybiBTZXRDR0luZm8oCistLS0gYS9j bGFuZy9saWIvRHJpdmVyL1Rvb2xDaGFpbnMvQ2xhbmcuY3BwCisrKysgYi9jbGFuZy9saWIvRHJp dmVyL1Rvb2xDaGFpbnMvQ2xhbmcuY3BwCitAQCAtMTkyMCwxNCArMTkyMCw3IEBAIHZvaWQgQ2xh bmc6OkFkZFBQQ1RhcmdldEFyZ3MoY29uc3QgQXJnTGlzdCAmQXJncywKKyAgIGNvbnN0IGxsdm06 OlRyaXBsZSAmVCA9IGdldFRvb2xDaGFpbigpLmdldFRyaXBsZSgpOworICAgaWYgKFQuaXNPU0Jp bkZvcm1hdEVMRigpKSB7CisgICAgIHN3aXRjaCAoZ2V0VG9vbENoYWluKCkuZ2V0QXJjaCgpKSB7 CistICAgIGNhc2UgbGx2bTo6VHJpcGxlOjpwcGM2NDogeworLSAgICAgIGlmICgoVC5pc09TRnJl ZUJTRCgpICYmIFQuZ2V0T1NNYWpvclZlcnNpb24oKSA+PSAxMykgfHwKKy0gICAgICAgICAgVC5p c09TT3BlbkJTRCgpIHx8IFQuaXNNdXNsKCkpCistICAgICAgICBBQklOYW1lID0gImVsZnYyIjsK Ky0gICAgICBlbHNlCistICAgICAgICBBQklOYW1lID0gImVsZnYxIjsKKy0gICAgICBicmVhazsK Ky0gICAgfQorKyAgICBjYXNlIGxsdm06OlRyaXBsZTo6cHBjNjQ6CisgICAgIGNhc2UgbGx2bTo6 VHJpcGxlOjpwcGM2NGxlOgorICAgICAgIEFCSU5hbWUgPSAiZWxmdjIiOworICAgICAgIGJyZWFr OwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9sbHZtMTUvcGF0Y2hlcy9jb21waWxlci1ydC1zYW5pdGl6 ZXItcHBjNjQtbXVzbC5wYXRjaCBiL3NyY3BrZ3MvbGx2bTE1L3BhdGNoZXMvY29tcGlsZXItcnQt c2FuaXRpemVyLXBwYzY0LW11c2wucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw MDAwMDAwMDAwLi4zNjBjZmMxYmE3ZjEKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2xsdm0x NS9wYXRjaGVzL2NvbXBpbGVyLXJ0LXNhbml0aXplci1wcGM2NC1tdXNsLnBhdGNoCkBAIC0wLDAg KzEsMzUgQEAKKy0tLSBhL2NvbXBpbGVyLXJ0L2xpYi9zYW5pdGl6ZXJfY29tbW9uL3Nhbml0aXpl cl9saW51eC5jcHAKKysrKyBiL2NvbXBpbGVyLXJ0L2xpYi9zYW5pdGl6ZXJfY29tbW9uL3Nhbml0 aXplcl9saW51eC5jcHAKK0BAIC03NCw2ICs3NCwxMCBAQAorICNpbmNsdWRlIDxzeXMvdXRzbmFt ZS5oPgorICNlbmRpZgorIAorKyNpZiBTQU5JVElaRVJfTElOVVggJiYgZGVmaW5lZChfX3Bvd2Vy cGNfXykKKysjaW5jbHVkZSA8YXNtL3B0cmFjZS5oPgorKyNlbmRpZgorKworICNpZiBTQU5JVEla RVJfTElOVVggJiYgIVNBTklUSVpFUl9BTkRST0lECisgI2luY2x1ZGUgPHN5cy9wZXJzb25hbGl0 eS5oPgorICNlbmRpZgorLS0tIGEvY29tcGlsZXItcnQvbGliL3Nhbml0aXplcl9jb21tb24vc2Fu aXRpemVyX3BsYXRmb3JtX2xpbWl0c19wb3NpeC5jcHAKKysrKyBiL2NvbXBpbGVyLXJ0L2xpYi9z YW5pdGl6ZXJfY29tbW9uL3Nhbml0aXplcl9wbGF0Zm9ybV9saW1pdHNfcG9zaXguY3BwCitAQCAt OTQsNyArOTQsNyBAQAorICMgaW5jbHVkZSA8dXRpbWUuaD4KKyAjIGluY2x1ZGUgPHN5cy9wdHJh Y2UuaD4KKyAjICAgIGlmIGRlZmluZWQoX19taXBzNjQpIHx8IGRlZmluZWQoX19hYXJjaDY0X18p IHx8IGRlZmluZWQoX19hcm1fXykgfHwgXAorLSAgICAgICAgZGVmaW5lZChfX2hleGFnb25fXykg fHwgU0FOSVRJWkVSX1JJU0NWNjQKKysgICAgICAgIGRlZmluZWQoX19oZXhhZ29uX18pIHx8IGRl ZmluZWQoX19wb3dlcnBjX18pIHx8IFNBTklUSVpFUl9SSVNDVjY0CisgIyAgICAgIGluY2x1ZGUg PGFzbS9wdHJhY2UuaD4KKyAjICAgICAgaWZkZWYgX19hcm1fXworIHR5cGVkZWYgc3RydWN0IHVz ZXJfZnByZWdzIGVsZl9mcHJlZ3NldF90OworLS0tIGEvY29tcGlsZXItcnQvbGliL3Nhbml0aXpl cl9jb21tb24vc2FuaXRpemVyX3N0b3B0aGV3b3JsZF9saW51eF9saWJjZGVwLmNwcAorKysrIGIv Y29tcGlsZXItcnQvbGliL3Nhbml0aXplcl9jb21tb24vc2FuaXRpemVyX3N0b3B0aGV3b3JsZF9s aW51eF9saWJjZGVwLmNwcAorQEAgLTMxLDcgKzMxLDcgQEAKKyAjaW5jbHVkZSA8c3lzL3R5cGVz Lmg+IC8vIGZvciBwaWRfdAorICNpbmNsdWRlIDxzeXMvdWlvLmg+IC8vIGZvciBpb3ZlYworICNp bmNsdWRlIDxlbGYuaD4gLy8gZm9yIE5UX1BSU1RBVFVTCistI2lmIChkZWZpbmVkKF9fYWFyY2g2 NF9fKSB8fCBTQU5JVElaRVJfUklTQ1Y2NCkgJiYgIVNBTklUSVpFUl9BTkRST0lECisrI2lmIChk ZWZpbmVkKF9fYWFyY2g2NF9fKSB8fCBkZWZpbmVkKF9fcG93ZXJwY19fKSB8fCBTQU5JVElaRVJf UklTQ1Y2NCkgJiYgIVNBTklUSVpFUl9BTkRST0lECisgLy8gR0xJQkMgMi4yMCsgc3lzL3VzZXIg ZG9lcyBub3QgaW5jbHVkZSBhc20vcHRyYWNlLmgKKyAjIGluY2x1ZGUgPGFzbS9wdHJhY2UuaD4K KyAjZW5kaWYKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGx2bTE1L3BhdGNoZXMvY29tcGlsZXItcnQt eHJheS1wcGM2NC1tdXNsLnBhdGNoLnNraXAgYi9zcmNwa2dzL2xsdm0xNS9wYXRjaGVzL2NvbXBp bGVyLXJ0LXhyYXktcHBjNjQtbXVzbC5wYXRjaC5za2lwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAwMDAwMC4uZDBiNjFjODBjODk3Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtn cy9sbHZtMTUvcGF0Y2hlcy9jb21waWxlci1ydC14cmF5LXBwYzY0LW11c2wucGF0Y2guc2tpcApA QCAtMCwwICsxLDYyIEBACistLS0gYS9jb21waWxlci1ydC9saWIveHJheS94cmF5X3Bvd2VycGM2 NC5pbmMKKysrKyBiL2NvbXBpbGVyLXJ0L2xpYi94cmF5L3hyYXlfcG93ZXJwYzY0LmluYworQEAg LTEyLDcgKzEyLDEzIEBACisgCisgI2luY2x1ZGUgPGNzdGRpbnQ+CisgI2luY2x1ZGUgPG11dGV4 PgorKyNpZmRlZiBfX0dMSUJDX18KKyAjaW5jbHVkZSA8c3lzL3BsYXRmb3JtL3BwYy5oPgorKyNl bHNlCisrI2luY2x1ZGUgPGNjdHlwZT4KKysjaW5jbHVkZSA8Y3N0cmluZz4KKysjaW5jbHVkZSA8 Y3N0ZGxpYj4KKysjZW5kaWYKKyAKKyAjaW5jbHVkZSAieHJheV9kZWZzLmgiCisgCitAQCAtMjAs MTMgKzI2LDQ1IEBAIG5hbWVzcGFjZSBfX3hyYXkgeworIAorIEFMV0FZU19JTkxJTkUgdWludDY0 X3QgcmVhZFRTQyh1aW50OF90ICZDUFUpIFhSQVlfTkVWRVJfSU5TVFJVTUVOVCB7CisgICBDUFUg PSAwOworKyNpZmRlZiBfX0dMSUJDX18KKyAgIHJldHVybiBfX3BwY19nZXRfdGltZWJhc2UoKTsK KysjZWxzZQorKyAgcmV0dXJuIF9fYnVpbHRpbl9wcGNfZ2V0X3RpbWViYXNlKCk7CisrI2VuZGlm CisgfQorIAorIGlubGluZSB1aW50NjRfdCBnZXRUU0NGcmVxdWVuY3koKSBYUkFZX05FVkVSX0lO U1RSVU1FTlQgeworICAgc3RhdGljIHN0ZDo6bXV0ZXggTTsKKyAgIHN0ZDo6bG9ja19ndWFyZDxz dGQ6Om11dGV4PiBHdWFyZChNKTsKKysjaWZkZWYgX19HTElCQ19fCisgICByZXR1cm4gX19wcGNf Z2V0X3RpbWViYXNlX2ZyZXEoKTsKKysjZWxzZQorKyAgLyogRklYTUU6IGEgbGVzcyBkaXJ0eSBp bXBsZW1lbnRhdGlvbj8gKi8KKysgIHN0YXRpYyB1aW50NjRfdCBiYXNlOworKyAgaWYgKCFiYXNl KSB7CisrICAgIEZJTEUgKmYgPSBmb3BlbigiL3Byb2MvY3B1aW5mbyIsICJyYiIpOworKyAgICBp ZiAoZikgeworKyAgICAgIHNzaXplX3QgbnI7CisrICAgICAgLyogdmlydHVhbGx5IGFsd2F5cyBi aWcgZW5vdWdoIHRvIGhvbGQgdGhlIGxpbmUgKi8KKysgICAgICBjaGFyIGJ1Zls1MTJdOworKyAg ICAgIHdoaWxlIChmZ2V0cyhidWYsIHNpemVvZihidWYpLCBmKSkgeworKyAgICAgICAgY2hhciAq cmV0ID0gc3Ryc3RyKGJ1ZiwgInRpbWViYXNlIik7CisrICAgICAgICBpZiAoIXJldCkgeworKyAg ICAgICAgICBjb250aW51ZTsKKysgICAgICAgIH0KKysgICAgICAgIHJldCArPSBzaXplb2YoInRp bWViYXNlIikgLSAxOworKyAgICAgICAgcmV0ID0gc3RyY2hyKHJldCwgJzonKTsKKysgICAgICAg IGlmICghcmV0KSB7CisrICAgICAgICAgIGNvbnRpbnVlOworKyAgICAgICAgfQorKyAgICAgICAg YmFzZSA9IHN0cnRvdWwocmV0ICsgMSwgbnVsbHB0ciwgMTApOworKyAgICAgICAgYnJlYWs7Cisr ICAgICAgfQorKyAgICAgIGZjbG9zZShmKTsKKysgICAgfQorKyAgfQorKyAgcmV0dXJuIGJhc2U7 CisrI2VuZGlmCisgfQorIAorIGlubGluZSBib29sIHByb2JlUmVxdWlyZWRDUFVGZWF0dXJlcygp IFhSQVlfTkVWRVJfSU5TVFJVTUVOVCB7CmRpZmYgLS1naXQgYS9zcmNwa2dzL2xsdm0xNS9wYXRj aGVzL2xpYmN4eC1tdXNsLnBhdGNoIGIvc3JjcGtncy9sbHZtMTUvcGF0Y2hlcy9saWJjeHgtbXVz bC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLmJiZDMxZmZj MmNiMQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbGx2bTE1L3BhdGNoZXMvbGliY3h4LW11 c2wucGF0Y2gKQEAgLTAsMCArMSwyNiBAQAorLS0tIGEvbGliY3h4L2luY2x1ZGUvbG9jYWxlCisr KysgYi9saWJjeHgvaW5jbHVkZS9sb2NhbGUKK0BAIC03NDIsNyArNzQyLDExIEBAIF9fbnVtX2dl dF9zaWduZWRfaW50ZWdyYWwoY29uc3QgY2hhciogX19hLCBjb25zdCBjaGFyKiBfX2FfZW5kLAor ICAgICAgICAgdHlwZW5hbWUgcmVtb3ZlX3JlZmVyZW5jZTxkZWNsdHlwZShlcnJubyk+Ojp0eXBl IF9fc2F2ZV9lcnJubyA9IGVycm5vOworICAgICAgICAgZXJybm8gPSAwOworICAgICAgICAgY2hh ciAqX19wMjsKKysjaWYgZGVmaW5lZChfX2xpbnV4X18pICYmICFkZWZpbmVkKF9fR0xJQkNfXykK KysgICAgICAgIGxvbmcgbG9uZyBfX2xsID0gc3RydG9sbChfX2EsICZfX3AyLCBfX2Jhc2UpOwor KyNlbHNlCisgICAgICAgICBsb25nIGxvbmcgX19sbCA9IHN0cnRvbGxfbChfX2EsICZfX3AyLCBf X2Jhc2UsIF9MSUJDUFBfR0VUX0NfTE9DQUxFKTsKKysjZW5kaWYKKyAgICAgICAgIHR5cGVuYW1l IHJlbW92ZV9yZWZlcmVuY2U8ZGVjbHR5cGUoZXJybm8pPjo6dHlwZSBfX2N1cnJlbnRfZXJybm8g PSBlcnJubzsKKyAgICAgICAgIGlmIChfX2N1cnJlbnRfZXJybm8gPT0gMCkKKyAgICAgICAgICAg ICBlcnJubyA9IF9fc2F2ZV9lcnJubzsKK0BAIC03ODIsNyArNzg2LDExIEBAIF9fbnVtX2dldF91 bnNpZ25lZF9pbnRlZ3JhbChjb25zdCBjaGFyKiBfX2EsIGNvbnN0IGNoYXIqIF9fYV9lbmQsCisg ICAgICAgICB0eXBlbmFtZSByZW1vdmVfcmVmZXJlbmNlPGRlY2x0eXBlKGVycm5vKT46OnR5cGUg X19zYXZlX2Vycm5vID0gZXJybm87CisgICAgICAgICBlcnJubyA9IDA7CisgICAgICAgICBjaGFy ICpfX3AyOworKyNpZiBkZWZpbmVkKF9fbGludXhfXykgJiYgIWRlZmluZWQoX19HTElCQ19fKQor KyAgICAgICAgdW5zaWduZWQgbG9uZyBsb25nIF9fbGwgPSBzdHJ0b3VsbChfX2EsICZfX3AyLCBf X2Jhc2UpOworKyNlbHNlCisgICAgICAgICB1bnNpZ25lZCBsb25nIGxvbmcgX19sbCA9IHN0cnRv dWxsX2woX19hLCAmX19wMiwgX19iYXNlLCBfTElCQ1BQX0dFVF9DX0xPQ0FMRSk7CisrI2VuZGlm CisgICAgICAgICB0eXBlbmFtZSByZW1vdmVfcmVmZXJlbmNlPGRlY2x0eXBlKGVycm5vKT46OnR5 cGUgX19jdXJyZW50X2Vycm5vID0gZXJybm87CisgICAgICAgICBpZiAoX19jdXJyZW50X2Vycm5v ID09IDApCisgICAgICAgICAgICAgZXJybm8gPSBfX3NhdmVfZXJybm87CmRpZmYgLS1naXQgYS9z cmNwa2dzL2xsdm0xNS9wYXRjaGVzL2xpYmN4eC1wcGMucGF0Y2ggYi9zcmNwa2dzL2xsdm0xNS9w YXRjaGVzL2xpYmN4eC1wcGMucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw MDAwMDAwLi43YTkyZjgwMDRlMWMKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2xsdm0xNS9w YXRjaGVzL2xpYmN4eC1wcGMucGF0Y2gKQEAgLTAsMCArMSwyMiBAQAorVGhpcyBlbnN1cmVzIGBp c19pZWM1NTlgIGlzIGRlZmluZWQgY29ycmVjdGx5IHVuZGVyIGFsbCBsb25nIGRvdWJsZSBBQklz LAoraW5jbHVkaW5nIG11c2wgYW5kIGl0cyA2NC1iaXQgbG9uZyBkb3VibGUuIEFsc28sIGBfX3Bw Y19fYCBvciBgX19wcGM2NF9fYAoraXMgbm90IGRlZmluZWQgb24gZ2NjLgorCistLS0gYS9saWJj eHgvaW5jbHVkZS9saW1pdHMKKysrKyBiL2xpYmN4eC9pbmNsdWRlL2xpbWl0cworQEAgLTQyNiw4 ICs0MjYsMTQgQEAgcHJvdGVjdGVkOgorICAgICBfTElCQ1BQX0lOTElORV9WSVNJQklMSVRZIHN0 YXRpYyBfTElCQ1BQX0NPTlNURVhQUiB0eXBlIHNpZ25hbGluZ19OYU4oKSBfTk9FWENFUFQge3Jl dHVybiBfX2J1aWx0aW5fbmFuc2woIiIpO30KKyAgICAgX0xJQkNQUF9JTkxJTkVfVklTSUJJTElU WSBzdGF0aWMgX0xJQkNQUF9DT05TVEVYUFIgdHlwZSBkZW5vcm1fbWluKCkgX05PRVhDRVBUIHty ZXR1cm4gX19MREJMX0RFTk9STV9NSU5fXzt9CisgCistI2lmIChkZWZpbmVkKF9fcHBjX18pIHx8 IGRlZmluZWQoX19wcGM2NF9fKSkKKysjaWYgZGVmaW5lZChfX3Bvd2VycGNfXykgfHwgZGVmaW5l ZChfX3Bvd2VycGM2NF9fKQorKyNpZiAoX19MREJMX01BWF9FWFBfXyA+IF9fREJMX01BWF9FWFBf XykgfHwgKF9fTERCTF9NQU5UX0RJR19fID09IF9fREJMX01BTlRfRElHX18pCisrICAgIC8qIElF RUUgNzU0IHF1YWRydXBsZSBvciBkb3VibGUgcHJlY2lzaW9uICovCisrICAgIHN0YXRpYyBfTElC Q1BQX0NPTlNURVhQUiBjb25zdCBib29sIGlzX2llYzU1OSA9IHRydWU7CisrI2Vsc2UKKysgICAg LyogMTI4LWJpdCBJQk0gZG91YmxlLWRvdWJsZSAqLworICAgICBzdGF0aWMgX0xJQkNQUF9DT05T VEVYUFIgY29uc3QgYm9vbCBpc19pZWM1NTkgPSBmYWxzZTsKKysjZW5kaWYKKyAjZWxzZQorICAg ICBzdGF0aWMgX0xJQkNQUF9DT05TVEVYUFIgY29uc3QgYm9vbCBpc19pZWM1NTkgPSB0cnVlOwor ICNlbmRpZgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9sbHZtMTUvcGF0Y2hlcy9saWJjeHgtc3NwLW5v bnNoYXJlZC5wYXRjaCBiL3NyY3BrZ3MvbGx2bTE1L3BhdGNoZXMvbGliY3h4LXNzcC1ub25zaGFy ZWQucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi43MDI5MmJl YjJmY2QKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2xsdm0xNS9wYXRjaGVzL2xpYmN4eC1z c3Atbm9uc2hhcmVkLnBhdGNoCkBAIC0wLDAgKzEsMTEgQEAKKy0tLSBhL2xpYmN4eC9DTWFrZUxp c3RzLnR4dAorKysrIGIvbGliY3h4L0NNYWtlTGlzdHMudHh0CitAQCAtNzY5LDYgKzc2OSw4IEBA IGZ1bmN0aW9uKGN4eF9saW5rX3N5c3RlbV9saWJyYXJpZXMgdGFyZ2V0KQorICAgICB0YXJnZXRf bGlua19saWJyYXJpZXMoJHt0YXJnZXR9IFBSSVZBVEUgYXRvbWljKQorICAgZW5kaWYoKQorIAor KyNzc3AgIHRhcmdldF9saW5rX2xpYnJhcmllcygke3RhcmdldH0gUFJJVkFURSBzc3Bfbm9uc2hh cmVkKQorKworICAgaWYgKE1JTkdXKQorICAgICB0YXJnZXRfbGlua19saWJyYXJpZXMoJHt0YXJn ZXR9IFBSSVZBVEUgIiR7TUlOR1dfTElCUkFSSUVTfSIpCisgICBlbmRpZigpCmRpZmYgLS1naXQg YS9zcmNwa2dzL2xsdm0xNS9wYXRjaGVzL2xpYmN4eGFiaS1kbC5wYXRjaCBiL3NyY3BrZ3MvbGx2 bTE1L3BhdGNoZXMvbGliY3h4YWJpLWRsLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IDAwMDAwMDAwMDAwMC4uM2ExNWY5ZGI4Yzk4Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9s bHZtMTUvcGF0Y2hlcy9saWJjeHhhYmktZGwucGF0Y2gKQEAgLTAsMCArMSwyNSBAQAorQWxzbyBs aW5rIHRvIC1sZGwgdG8gcHJldmVudCB1bmRlZmluZWQgcmVmZXJlbmNlcy4KKworLS0tIGEvbGli Y3h4YWJpL3NyYy9DTWFrZUxpc3RzLnR4dAorKysrIGIvbGliY3h4YWJpL3NyYy9DTWFrZUxpc3Rz LnR4dAorQEAgLTczLDYgKzczLDcgQEAKKyAgIGVuZGlmKCkKKyAKKyAgIGFkZF9saWJyYXJ5X2Zs YWdzX2lmKExJQkNYWEFCSV9IQVNfQ19MSUIgYykKKysgIGFkZF9saWJyYXJ5X2ZsYWdzX2lmKExJ QkNYWEFCSV9IQVNfQ19MSUIgZGwpCisgZW5kaWYoKQorIAorIGlmIChMSUJDWFhBQklfVVNFX0xM Vk1fVU5XSU5ERVIpCistLS0gYS9saWJjeHgvQ01ha2VMaXN0cy50eHQKKysrKyBiL2xpYmN4eC9D TWFrZUxpc3RzLnR4dAorQEAgLTc0NSw2ICs3NDUsMTAgQEAKKyAgICAgdGFyZ2V0X2xpbmtfbGli cmFyaWVzKCR7dGFyZ2V0fSBQUklWQVRFIG0pCisgICBlbmRpZigpCisgCisrICBpZiAoTElCQ1hY X0hBU19DX0xJQikKKysgICAgdGFyZ2V0X2xpbmtfbGlicmFyaWVzKCR7dGFyZ2V0fSBQUklWQVRF IGRsKQorKyAgZW5kaWYoKQorKworICAgaWYgKExJQkNYWF9IQVNfUlRfTElCKQorICAgICB0YXJn ZXRfbGlua19saWJyYXJpZXMoJHt0YXJnZXR9IFBSSVZBVEUgcnQpCisgICBlbmRpZigpCmRpZmYg LS1naXQgYS9zcmNwa2dzL2xsdm0xNS9wYXRjaGVzL2xpYnVud2luZC1wcGMzMi5wYXRjaC5za2lw IGIvc3JjcGtncy9sbHZtMTUvcGF0Y2hlcy9saWJ1bndpbmQtcHBjMzIucGF0Y2guc2tpcApuZXcg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjc0YWE3NTc2ZWNmOQotLS0gL2Rl di9udWxsCisrKyBiL3NyY3BrZ3MvbGx2bTE1L3BhdGNoZXMvbGlidW53aW5kLXBwYzMyLnBhdGNo LnNraXAKQEAgLTAsMCArMSw2MyBAQAorVGhpcyBmaXhlcyBidWlsZCBhdCBsZWFzdCB3aXRoIGdj Yzkgd2hpY2ggZG9lcyBub3QgZGVmaW5lIGBfX3BwY19fYC4KKworLS0tIGEvbGlidW53aW5kL2lu Y2x1ZGUvX19saWJ1bndpbmRfY29uZmlnLmgKKysrKyBiL2xpYnVud2luZC9pbmNsdWRlL19fbGli dW53aW5kX2NvbmZpZy5oCitAQCAtNDksNyArNDksNyBAQAorICMgIGRlZmluZSBfTElCVU5XSU5E X0NPTlRFWFRfU0laRSAxNjcKKyAjICBkZWZpbmUgX0xJQlVOV0lORF9DVVJTT1JfU0laRSAxNzkK KyAjICBkZWZpbmUgX0xJQlVOV0lORF9ISUdIRVNUX0RXQVJGX1JFR0lTVEVSIF9MSUJVTldJTkRf SElHSEVTVF9EV0FSRl9SRUdJU1RFUl9QUEM2NAorLSMgZWxpZiBkZWZpbmVkKF9fcHBjX18pCisr IyBlbGlmIGRlZmluZWQoX19wb3dlcnBjX18pCisgIyAgZGVmaW5lIF9MSUJVTldJTkRfVEFSR0VU X1BQQyAxCisgIyAgZGVmaW5lIF9MSUJVTldJTkRfQ09OVEVYVF9TSVpFIDExNworICMgIGRlZmlu ZSBfTElCVU5XSU5EX0NVUlNPUl9TSVpFIDEyNAorLS0tIGEvbGlidW53aW5kL3NyYy9VbndpbmRS ZWdpc3RlcnNSZXN0b3JlLlMKKysrKyBiL2xpYnVud2luZC9zcmMvVW53aW5kUmVnaXN0ZXJzUmVz dG9yZS5TCitAQCAtMzkyLDcgKzM5Miw3IEBAIExub3ZlYzoKKyAgIFBQQzY0X0xSKDMpCisgICBi Y3RyCisgCistI2VsaWYgZGVmaW5lZChfX3BwY19fKQorKyNlbGlmIGRlZmluZWQoX19wb3dlcnBj X18pCisgCisgREVGSU5FX0xJQlVOV0lORF9GVU5DVElPTihfWk45bGlidW53aW5kMTNSZWdpc3Rl cnNfcHBjNmp1bXB0b0V2KQorIC8vCistLS0gYS9saWJ1bndpbmQvc3JjL1Vud2luZFJlZ2lzdGVy c1NhdmUuUworKysrIGIvbGlidW53aW5kL3NyYy9VbndpbmRSZWdpc3RlcnNTYXZlLlMKK0BAIC01 NTQsNyArNTU0LDcgQEAgREVGSU5FX0xJQlVOV0lORF9GVU5DVElPTihfX3Vud19nZXRjb250ZXh0 KQorICAgYmxyCisgCisgCistI2VsaWYgZGVmaW5lZChfX3BwY19fKQorKyNlbGlmIGRlZmluZWQo X19wb3dlcnBjX18pCisgCisgLy8KKyAvLyBleHRlcm4gaW50IHVud19nZXRjb250ZXh0KHVud19j b250ZXh0X3QqIHRocmVhZF9zdGF0ZSkKKy0tLSBhL2xpYnVud2luZC9zcmMvY29uZmlnLmgKKysr KyBiL2xpYnVud2luZC9zcmMvY29uZmlnLmgKK0BAIC05NSwxMiArOTUsMTIgQEAKKyAjZGVmaW5l IF9MSUJVTldJTkRfQlVJTERfU0pMSl9BUElTCisgI2VuZGlmCisgCistI2lmIGRlZmluZWQoX19p Mzg2X18pIHx8IGRlZmluZWQoX194ODZfNjRfXykgfHwgZGVmaW5lZChfX3BwY19fKSB8fCBkZWZp bmVkKF9fcHBjNjRfXykgfHwgZGVmaW5lZChfX3Bvd2VycGM2NF9fKQorKyNpZiBkZWZpbmVkKF9f aTM4Nl9fKSB8fCBkZWZpbmVkKF9feDg2XzY0X18pIHx8IGRlZmluZWQoX19wb3dlcnBjX18pIHx8 IGRlZmluZWQoX19wb3dlcnBjNjRfXykKKyAjZGVmaW5lIF9MSUJVTldJTkRfU1VQUE9SVF9GUkFN RV9BUElTCisgI2VuZGlmCisgCisgI2lmIGRlZmluZWQoX19pMzg2X18pIHx8IGRlZmluZWQoX194 ODZfNjRfXykgfHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKy0gICAgZGVmaW5l ZChfX3BwY19fKSB8fCBkZWZpbmVkKF9fcHBjNjRfXykgfHwgZGVmaW5lZChfX3Bvd2VycGM2NF9f KSB8fCAgICAgICAgXAorKyAgICBkZWZpbmVkKF9fcG93ZXJwY19fKSB8fCBkZWZpbmVkKF9fcG93 ZXJwYzY0X18pIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICghZGVmaW5lZChf X0FQUExFX18pICYmIGRlZmluZWQoX19hcm1fXykpIHx8ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFwKKyAgICAgKGRlZmluZWQoX19hcm02NF9fKSB8fCBkZWZpbmVkKF9fYWFyY2g2NF9f KSkgfHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICBkZWZpbmVkKF9fbWlwc19f KQorLS0tIGEvbGlidW53aW5kL3NyYy9saWJ1bndpbmQuY3BwCisrKysgYi9saWJ1bndpbmQvc3Jj L2xpYnVud2luZC5jcHAKK0BAIC00Miw3ICs0Miw3IEBAIF9MSUJVTldJTkRfSElEREVOIGludCBf X3Vud19pbml0X2xvY2FsKHVud19jdXJzb3JfdCAqY3Vyc29yLAorICMgZGVmaW5lIFJFR0lTVEVS X0tJTkQgUmVnaXN0ZXJzX3g4Nl82NAorICNlbGlmIGRlZmluZWQoX19wb3dlcnBjNjRfXykKKyAj IGRlZmluZSBSRUdJU1RFUl9LSU5EIFJlZ2lzdGVyc19wcGM2NAorLSNlbGlmIGRlZmluZWQoX19w cGNfXykKKysjZWxpZiBkZWZpbmVkKF9fcG93ZXJwY19fKQorICMgZGVmaW5lIFJFR0lTVEVSX0tJ TkQgUmVnaXN0ZXJzX3BwYworICNlbGlmIGRlZmluZWQoX19hYXJjaDY0X18pCisgIyBkZWZpbmUg UkVHSVNURVJfS0lORCBSZWdpc3RlcnNfYXJtNjQKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGx2bTE1 L3BhdGNoZXMvbGxkYi1tdXNsLnBhdGNoIGIvc3JjcGtncy9sbHZtMTUvcGF0Y2hlcy9sbGRiLW11 c2wucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi4wMjZjNWUx ZTYxYmEKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2xsdm0xNS9wYXRjaGVzL2xsZGItbXVz bC5wYXRjaApAQCAtMCwwICsxLDQwIEBACistLS0gYS9sbGRiL3NvdXJjZS9QbHVnaW5zL1Byb2Nl c3MvTGludXgvUHJvY2ZzLmgKKysrKyBiL2xsZGIvc291cmNlL1BsdWdpbnMvUHJvY2Vzcy9MaW51 eC9Qcm9jZnMuaAorQEAgLTEwLDYgKzEwLDcgQEAKKyAvLyBzeXMvcHJvY2ZzLmggb24gQW5kcm9p ZC9MaW51eCBmb3IgYWxsIHN1cHBvcnRlZCBhcmNoaXRlY3R1cmVzLgorIAorICNpbmNsdWRlIDxz eXMvcHRyYWNlLmg+CisrI2luY2x1ZGUgPGFzbS9wdHJhY2UuaD4KKyAKKyAjaW5jbHVkZSAibGxk Yi9sbGRiLXR5cGVzLmgiCisgCitAQCAtMTcsMjMgKzE4LDEzIEBACisgCisgI2luY2x1ZGUgPHZl Y3Rvcj4KKyAKKy0jaWZkZWYgX19BTkRST0lEX18KKy0jaWYgZGVmaW5lZChfX2FybTY0X18pIHx8 IGRlZmluZWQoX19hYXJjaDY0X18pCistdHlwZWRlZiB1bnNpZ25lZCBsb25nIGVsZl9ncmVnX3Q7 CistdHlwZWRlZiBlbGZfZ3JlZ190CistICAgIGVsZl9ncmVnc2V0X3RbKHNpemVvZihzdHJ1Y3Qg dXNlcl9wdF9yZWdzKSAvIHNpemVvZihlbGZfZ3JlZ190KSldOworLXR5cGVkZWYgc3RydWN0IHVz ZXJfZnBzaW1kX3N0YXRlIGVsZl9mcHJlZ3NldF90OworLSNpZm5kZWYgTlRfRlBSRUdTRVQKKy0j ZGVmaW5lIE5UX0ZQUkVHU0VUIE5UX1BSRlBSRUcKKy0jZW5kaWYgLy8gTlRfRlBSRUdTRVQKKy0j ZWxpZiBkZWZpbmVkKF9fbWlwc19fKQorLSNpZm5kZWYgTlRfRlBSRUdTRVQKKy0jZGVmaW5lIE5U X0ZQUkVHU0VUIE5UX1BSRlBSRUcKKy0jZW5kaWYgLy8gTlRfRlBSRUdTRVQKKy0jZW5kaWYKKy0j ZWxzZSAvLyBfX0FORFJPSURfXworKyNpZiAhZGVmaW5lZChfX0dMSUJDX18pICYmIGRlZmluZWQo X19wb3dlcnBjX18pCisrI2RlZmluZSBwdF9yZWdzIG11c2xfcHRfcmVncworKyNpbmNsdWRlIDxz eXMvcHJvY2ZzLmg+CisrI3VuZGVmIHB0X3JlZ3MKKysjZWxzZQorICNpbmNsdWRlIDxzeXMvcHJv Y2ZzLmg+CistI2VuZGlmIC8vIF9fQU5EUk9JRF9fCisrI2VuZGlmCisgCisgbmFtZXNwYWNlIGxs ZGJfcHJpdmF0ZSB7CisgbmFtZXNwYWNlIHByb2Nlc3NfbGludXggewpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9sbHZtMTUvcGF0Y2hlcy9sbHZtLTAwMS1tdXNsLnBhdGNoIGIvc3JjcGtncy9sbHZtMTUv cGF0Y2hlcy9sbHZtLTAwMS1tdXNsLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw MDAwMDAwMDAwMC4uZjJhM2Y4ZDYyODEzCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9sbHZt MTUvcGF0Y2hlcy9sbHZtLTAwMS1tdXNsLnBhdGNoCkBAIC0wLDAgKzEsNTcgQEAKK0Zyb20gZmFj YTNmYmQxNWQwYzMxMDg0OTNjM2M1NGNkOTMxMzhlMDQ5YWM0MyBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKK0Zyb206IEFuZHJlYSBCcmFuY2FsZW9uaSA8bWl3YXhlQGdtYWlsLmNvbT4KK0RhdGU6 IFR1ZSwgOCBTZXAgMjAxNSAyMjowMzowMiArMDIwMAorU3ViamVjdDogW1BBVENIIDMvM10gbXVz bAorCistLS0KKyBpbmNsdWRlL2xsdm0vQW5hbHlzaXMvVGFyZ2V0TGlicmFyeUluZm8uaCB8IDkg KysrKysrKysrCisgbGliL1N1cHBvcnQvRHluYW1pY0xpYnJhcnkuY3BwICAgICAgICAgICAgfCAy ICstCisgbGliL1N1cHBvcnQvVW5peC9TaWduYWxzLmluYyAgICAgICAgICAgICAgfCA2ICsrKy0t LQorIHV0aWxzL3VuaXR0ZXN0L2dvb2dsZXRlc3Qvc3JjL2d0ZXN0LmNjICAgIHwgMSArCisgNSBm aWxlcyBjaGFuZ2VkLCAxNyBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitkaWZmIC0t Z2l0IGEvaW5jbHVkZS9sbHZtL0FuYWx5c2lzL1RhcmdldExpYnJhcnlJbmZvLmggYi9pbmNsdWRl L2xsdm0vQW5hbHlzaXMvVGFyZ2V0TGlicmFyeUluZm8uaAoraW5kZXggMzRhOGExZTMuLjEyMTRl Y2U1IDEwMDY0NAorLS0tIGEvbGx2bS9pbmNsdWRlL2xsdm0vQW5hbHlzaXMvVGFyZ2V0TGlicmFy eUluZm8uaAorKysrIGIvbGx2bS9pbmNsdWRlL2xsdm0vQW5hbHlzaXMvVGFyZ2V0TGlicmFyeUlu Zm8uaAorQEAgLTE4LDYgKzE4LDE1IEBACisgI2luY2x1ZGUgImxsdm0vSVIvUGFzc01hbmFnZXIu aCIKKyAjaW5jbHVkZSAibGx2bS9QYXNzLmgiCisgCisrI3VuZGVmIGZvcGVuNjQKKysjdW5kZWYg ZnNlZWtvNjQKKysjdW5kZWYgZnN0YXQ2NAorKyN1bmRlZiBmc3RhdHZmczY0CisrI3VuZGVmIGZ0 ZWxsbzY0CisrI3VuZGVmIGxzdGF0NjQKKysjdW5kZWYgc3RhdDY0CisrI3VuZGVmIHRtcGZpbGU2 NAorKworIG5hbWVzcGFjZSBsbHZtIHsKKyB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4gY2xhc3MgQXJy YXlSZWY7CisgY2xhc3MgVHJpcGxlOworZGlmZiAtLWdpdCBhL2xpYi9TdXBwb3J0L1VuaXgvRHlu YW1pY0xpYnJhcnkuaW5jIGIvbGliL1N1cHBvcnQvVW5peC9EeW5hbWljTGlicmFyeS5pbmMKK2lu ZGV4IGEyYTM3OTk2Li4yZjg2YzQ3MCAxMDA2NDQKKy0tLSBhL2xsdm0vbGliL1N1cHBvcnQvVW5p eC9EeW5hbWljTGlicmFyeS5pbmMKKysrKyBiL2xsdm0vbGliL1N1cHBvcnQvVW5peC9EeW5hbWlj TGlicmFyeS5pbmMKK0BAIC0xMDIsNyArMTAyLDcgQEAgc3RhdGljIHZvaWQgKkRvU2VhcmNoKGNv bnN0IGNoYXIqIFN5bWJvbE5hbWUpIHsKKyAKKyAvLyBUaGlzIG1hY3JvIHJldHVybnMgdGhlIGFk ZHJlc3Mgb2YgYSB3ZWxsLWtub3duLCBleHBsaWNpdCBzeW1ib2wKKyAjZGVmaW5lIEVYUExJQ0lU X1NZTUJPTChTWU0pIFwKKy0gICBpZiAoIXN0cmNtcChTeW1ib2xOYW1lLCAjU1lNKSkgcmV0dXJu ICZTWU0KKysgICBpZiAoIXN0cmNtcChTeW1ib2xOYW1lLCAjU1lNKSkgcmV0dXJuICh2b2lkICop JlNZTQorIAorIC8vIFVuZGVyIGdsaWJjIHdlIGhhdmUgYSB3ZWlyZCBzaXR1YXRpb24uIFRoZSBz dGRlcnIvb3V0L2luIHN5bWJvbHMgYXJlIGJvdGgKKyAvLyBtYWNyb3MgYW5kIGdsb2JhbCB2YXJp YWJsZXMgYmVjYXVzZSBvZiBzdGFuZGFyZHMgcmVxdWlyZW1lbnRzLiBTbywgd2UKK2RpZmYgLS1n aXQgYS91dGlscy91bml0dGVzdC9nb29nbGV0ZXN0L3NyYy9ndGVzdC5jYyBiL3V0aWxzL3VuaXR0 ZXN0L2dvb2dsZXRlc3Qvc3JjL2d0ZXN0LmNjCitpbmRleCBkODgyYWIyZS4uZjFmYjEyZDAgMTAw NjQ0CistLS0gYS9sbHZtL3V0aWxzL3VuaXR0ZXN0L2dvb2dsZXRlc3Qvc3JjL2d0ZXN0LmNjCisr KysgYi9sbHZtL3V0aWxzL3VuaXR0ZXN0L2dvb2dsZXRlc3Qvc3JjL2d0ZXN0LmNjCitAQCAtMTI4 LDYgKzEyOCw3IEBACisgCisgI2lmIEdURVNUX0NBTl9TVFJFQU1fUkVTVUxUU18KKyAjIGluY2x1 ZGUgPGFycGEvaW5ldC5oPiAgLy8gTk9MSU5UCisrIyBpbmNsdWRlIDxzeXMvc29ja2V0Lmg+ICAv LyBOT0xJTlQKKyAjIGluY2x1ZGUgPG5ldGRiLmg+ICAvLyBOT0xJTlQKKyAjIGluY2x1ZGUgPHN5 cy9zb2NrZXQuaD4gIC8vIE5PTElOVAorICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+ICAvLyBOT0xJ TlQKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGx2bTE1L3BhdGNoZXMvbGx2bS0wMDItbXVzbC1wcGM2 NC1lbGZ2Mi5wYXRjaCBiL3NyY3BrZ3MvbGx2bTE1L3BhdGNoZXMvbGx2bS0wMDItbXVzbC1wcGM2 NC1lbGZ2Mi5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjAw NzFkOTY0YmQzNwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbGx2bTE1L3BhdGNoZXMvbGx2 bS0wMDItbXVzbC1wcGM2NC1lbGZ2Mi5wYXRjaApAQCAtMCwwICsxLDMwIEBACitUaGlzIHBhdGNo ZXMgTExWTSB0byB1c2UgRUxGdjIgb24gcHBjNjQgdW5jb25kaXRpb25hbGx5IHVubGVzcyBvdmVy cmlkZGVuLiBXZQorbmVlZCB0aGlzIGJlY2F1c2UgdW5saWtlIG1vc3QgZGlzdHJvcyB3ZSB1c2Ug RUxGdjIgZm9yIGJvdGggZ2xpYmMgYW5kIG11c2wKK29uIGJpZyBlbmRpYW4gcHBjNjQuCisKK2Rp ZmYgLS1naXQgYS9saWIvVGFyZ2V0L1Bvd2VyUEMvUFBDVGFyZ2V0TWFjaGluZS5jcHAgYi9saWIv VGFyZ2V0L1Bvd2VyUEMvUFBDVGFyZ2V0TWFjaGluZS5jcHAKK2luZGV4IDA2MzQ4MzNlLi5iN2Ni YzJlNyAxMDA2NDQKKy0tLSBhL2xsdm0vbGliL1RhcmdldC9Qb3dlclBDL1BQQ1RhcmdldE1hY2hp bmUuY3BwCisrKysgYi9sbHZtL2xpYi9UYXJnZXQvUG93ZXJQQy9QUENUYXJnZXRNYWNoaW5lLmNw cAorQEAgLTIyMiw5ICsyMjIsOCBAQCBzdGF0aWMgUFBDVGFyZ2V0TWFjaGluZTo6UFBDQUJJIGNv bXB1dGVUYXJnZXRBQkkoY29uc3QgVHJpcGxlICZUVCwKKyAKKyAgIHN3aXRjaCAoVFQuZ2V0QXJj aCgpKSB7CisgICBjYXNlIFRyaXBsZTo6cHBjNjRsZToKKy0gICAgcmV0dXJuIFBQQ1RhcmdldE1h Y2hpbmU6OlBQQ19BQklfRUxGdjI7CisgICBjYXNlIFRyaXBsZTo6cHBjNjQ6CistICAgIHJldHVy biBQUENUYXJnZXRNYWNoaW5lOjpQUENfQUJJX0VMRnYxOworKyAgICByZXR1cm4gUFBDVGFyZ2V0 TWFjaGluZTo6UFBDX0FCSV9FTEZ2MjsKKyAgIGRlZmF1bHQ6CisgICAgIHJldHVybiBQUENUYXJn ZXRNYWNoaW5lOjpQUENfQUJJX1VOS05PV047CisgICB9CitkaWZmIC0tZ2l0IGEvdGVzdC9Db2Rl R2VuL1Bvd2VyUEMvcHBjNjQtZWxmLWFiaS5sbCBiL3Rlc3QvQ29kZUdlbi9Qb3dlclBDL3BwYzY0 LWVsZi1hYmkubGwKK2luZGV4IDhiMWNmNmI1Li4yOTZhMmFmYSAxMDA2NDQKKy0tLSBhL2xsdm0v dGVzdC9Db2RlR2VuL1Bvd2VyUEMvcHBjNjQtZWxmLWFiaS5sbAorKysrIGIvbGx2bS90ZXN0L0Nv ZGVHZW4vUG93ZXJQQy9wcGM2NC1lbGYtYWJpLmxsCitAQCAtMSw0ICsxLDUgQEAKKy07IFJVTjog bGxjIC12ZXJpZnktbWFjaGluZWluc3RycyAtbXRyaXBsZT1wb3dlcnBjNjQtdW5rbm93bi1saW51 eC1nbnUgPCAlcyB8IEZpbGVDaGVjayAlcyAtY2hlY2stcHJlZml4PUNIRUNLLUVMRnYxCisrOyBS VU46IGxsYyAtdmVyaWZ5LW1hY2hpbmVpbnN0cnMgLW10cmlwbGU9cG93ZXJwYzY0LXVua25vd24t bGludXgtZ251IDwgJXMgfCBGaWxlQ2hlY2sgJXMgLWNoZWNrLXByZWZpeD1DSEVDSy1FTEZ2Mgor KzsgUlVOOiBsbGMgLXZlcmlmeS1tYWNoaW5laW5zdHJzIC1tdHJpcGxlPXBvd2VycGM2NC11bmtu b3duLWxpbnV4LW11c2wgPCAlcyB8IEZpbGVDaGVjayAlcyAtY2hlY2stcHJlZml4PUNIRUNLLUVM RnYyCisgOyBSVU46IGxsYyAtdmVyaWZ5LW1hY2hpbmVpbnN0cnMgLW10cmlwbGU9cG93ZXJwYzY0 LXVua25vd24tbGludXgtZ251IC10YXJnZXQtYWJpIGVsZnYxIDwgJXMgfCBGaWxlQ2hlY2sgJXMg LWNoZWNrLXByZWZpeD1DSEVDSy1FTEZ2MQorIDsgUlVOOiBsbGMgLXZlcmlmeS1tYWNoaW5laW5z dHJzIC1tdHJpcGxlPXBvd2VycGM2NC11bmtub3duLWxpbnV4LWdudSAtdGFyZ2V0LWFiaSBlbGZ2 MiA8ICVzIHwgRmlsZUNoZWNrICVzIC1jaGVjay1wcmVmaXg9Q0hFQ0stRUxGdjIKKyA7IFJVTjog bGxjIC12ZXJpZnktbWFjaGluZWluc3RycyAtbXRyaXBsZT1wb3dlcnBjNjRsZS11bmtub3duLWxp bnV4LWdudSA8ICVzIHwgRmlsZUNoZWNrICVzIC1jaGVjay1wcmVmaXg9Q0hFQ0stRUxGdjIKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvbGx2bTE1L3BhdGNoZXMvbGx2bS0wMDMtcHBjLXNlY3VyZXBsdC5w YXRjaCBiL3NyY3BrZ3MvbGx2bTE1L3BhdGNoZXMvbGx2bS0wMDMtcHBjLXNlY3VyZXBsdC5wYXRj aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLmI1ZDE1OTc0Mzc1ZAot LS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbGx2bTE1L3BhdGNoZXMvbGx2bS0wMDMtcHBjLXNl Y3VyZXBsdC5wYXRjaApAQCAtMCwwICsxLDExIEBACistLS0gYS9sbHZtL2xpYi9UYXJnZXQvUG93 ZXJQQy9QUENTdWJ0YXJnZXQuY3BwCisrKysgYi9sbHZtL2xpYi9UYXJnZXQvUG93ZXJQQy9QUENT dWJ0YXJnZXQuY3BwCitAQCAtMTY1LDcgKzE2NSw3IEBAIHZvaWQgUFBDU3VidGFyZ2V0Ojppbml0 U3VidGFyZ2V0RmVhdHVyZXMoU3RyaW5nUmVmIENQVSwgU3RyaW5nUmVmIEZTKSB7CisgCisgICBp ZiAoKFRhcmdldFRyaXBsZS5pc09TRnJlZUJTRCgpICYmIFRhcmdldFRyaXBsZS5nZXRPU01ham9y VmVyc2lvbigpID49IDEzKSB8fAorICAgICAgIFRhcmdldFRyaXBsZS5pc09TTmV0QlNEKCkgfHwg VGFyZ2V0VHJpcGxlLmlzT1NPcGVuQlNEKCkgfHwKKy0gICAgICBUYXJnZXRUcmlwbGUuaXNNdXNs KCkpCisrICAgICAgaXNUYXJnZXRMaW51eCgpKQorICAgICBTZWN1cmVQbHQgPSB0cnVlOworIAor ICAgaWYgKEhhc1NQRSAmJiBJc1BQQzY0KQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9sbHZtMTUvcGF0 Y2hlcy9sbHZtLTAwNC1vdmVycmlkZS1vcHQucGF0Y2ggYi9zcmNwa2dzL2xsdm0xNS9wYXRjaGVz L2xsdm0tMDA0LW92ZXJyaWRlLW9wdC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwMDAwMDAuLjUxZDBlNGIzMWIzMgotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbGx2 bTE1L3BhdGNoZXMvbGx2bS0wMDQtb3ZlcnJpZGUtb3B0LnBhdGNoCkBAIC0wLDAgKzEsMTggQEAK K1RoaXMgYWxsb3dzIHVzIHRvIG92ZXJyaWRlIHRoZSBvcHRpbWl6YXRpb24gbGV2ZWwgYXMgbm90 IGFsbCBwbGF0Zm9ybXMgY2FuCitkZWFsIHdpdGggLU8zLgorCistLS0gYS9sbHZtL0NNYWtlTGlz dHMudHh0CisrKysgYi9sbHZtL0NNYWtlTGlzdHMudHh0CitAQCAtOTE4LDYgKzkxOCwxMiBAQCBp ZiggTUlOR1cgQU5EIE5PVCAiJHtDTUFLRV9DWFhfQ09NUElMRVJfSUR9IiBNQVRDSEVTICJDbGFu ZyIgKQorICAgbGx2bV9yZXBsYWNlX2NvbXBpbGVyX29wdGlvbihDTUFLRV9DWFhfRkxBR1NfUkVM RUFTRSAiLU8zIiAiLU8yIikKKyBlbmRpZigpCisgCisrc2V0KFZPSURfQ1hYX09QVF9GTEFHUyAi IiBDQUNIRSBTVFJJTkcgIk9wdGltaXphdGlvbiBsZXZlbCB0byB1c2UiKQorKworK2lmIChOT1Qg Vk9JRF9DWFhfT1BUX0ZMQUdTIFNUUkVRVUFMICIiKQorKyAgICBsbHZtX3JlcGxhY2VfY29tcGls ZXJfb3B0aW9uKENNQUtFX0NYWF9GTEFHU19SRUxFQVNFICItTzMiICIke1ZPSURfQ1hYX09QVF9G TEFHU30iKQorK2VuZGlmKCkKKysKKyAjIFB1dCB0aGlzIGJlZm9yZSB0YmxnZW4uIEVsc2Ugd2Ug aGF2ZSBhIGNpcmN1bGFyIGRlcGVuZGVuY2UuCisgYWRkX3N1YmRpcmVjdG9yeShsaWIvRGVtYW5n bGUpCisgYWRkX3N1YmRpcmVjdG9yeShsaWIvU3VwcG9ydCkKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv bGx2bTE1L3BhdGNoZXMvbGx2bS0wMDUtcHBjLWJpZ3BpYy5wYXRjaCBiL3NyY3BrZ3MvbGx2bTE1 L3BhdGNoZXMvbGx2bS0wMDUtcHBjLWJpZ3BpYy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAwMDAwMDAwMDAwMDAuLmQzMzI2ODdiOWQ5MgotLS0gL2Rldi9udWxsCisrKyBiL3NyY3Br Z3MvbGx2bTE1L3BhdGNoZXMvbGx2bS0wMDUtcHBjLWJpZ3BpYy5wYXRjaApAQCAtMCwwICsxLDM2 IEBACitGcm9tIGYzZGJkZDQ5YzA2YmZhZmMxZDYxMzgwOTRjZjQyODg5YzE0ZDM4YjYgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBTYW11ZWwgSG9sbGFuZCA8c2FtdWVsQHNob2xsYW5k Lm9yZz4KK0RhdGU6IFN1biwgMyBOb3YgMjAxOSAxMDo1NzoyNyAtMDYwMAorU3ViamVjdDogW1BB VENIXSBbTExWTV1bUG93ZXJQQ10gQXNzdW1lIEJpZ1BJQyBpZiBubyBQSUMgbGV2ZWwgaXMgc3Bl Y2lmaWVkCisKKy0tLQorIGxsdm0vbGliL1RhcmdldC9Qb3dlclBDL1BQQ0FzbVByaW50ZXIuY3Bw ICB8IDIgKy0KKyBsbHZtL2xpYi9UYXJnZXQvUG93ZXJQQy9QUENNQ0luc3RMb3dlci5jcHAgfCAy ICstCisgMiBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisK K2RpZmYgLS1naXQgYS9saWIvVGFyZ2V0L1Bvd2VyUEMvUFBDQXNtUHJpbnRlci5jcHAgYi9saWIv VGFyZ2V0L1Bvd2VyUEMvUFBDQXNtUHJpbnRlci5jcHAKK2luZGV4IGNjZTIxZjMyLi44N2NhNWY5 YiAxMDA2NDQKKy0tLSBhL2xsdm0vbGliL1RhcmdldC9Qb3dlclBDL1BQQ0FzbVByaW50ZXIuY3Bw CisrKysgYi9sbHZtL2xpYi9UYXJnZXQvUG93ZXJQQy9QUENBc21QcmludGVyLmNwcAorQEAgLTUy MCw3ICs1MjAsNyBAQCB2b2lkIFBQQ0FzbVByaW50ZXI6OkVtaXRUbHNDYWxsKGNvbnN0IE1hY2hp bmVJbnN0ciAqTUksCisgCisgICAvLyBBZGQgMzI3Njggb2Zmc2V0IHRvIHRoZSBzeW1ib2wgc28g d2UgZm9sbG93IHVwIHRoZSBsYXRlc3QgR09UL1BMVCBBQkkuCisgICBpZiAoS2luZCA9PSBNQ1N5 bWJvbFJlZkV4cHI6OlZLX1BMVCAmJiBTdWJ0YXJnZXQtPmlzU2VjdXJlUGx0KCkgJiYKKy0gICAg ICBNLT5nZXRQSUNMZXZlbCgpID09IFBJQ0xldmVsOjpCaWdQSUMpCisrICAgICAgTS0+Z2V0UElD TGV2ZWwoKSAhPSBQSUNMZXZlbDo6U21hbGxQSUMpCisgICAgIFRsc1JlZiA9IE1DQmluYXJ5RXhw cjo6Y3JlYXRlQWRkKAorICAgICAgICAgVGxzUmVmLCBNQ0NvbnN0YW50RXhwcjo6Y3JlYXRlKDMy NzY4LCBPdXRDb250ZXh0KSwgT3V0Q29udGV4dCk7CisgICBjb25zdCBNYWNoaW5lT3BlcmFuZCAm TU8gPSBNSS0+Z2V0T3BlcmFuZCgyKTsKK2RpZmYgLS1naXQgYS9saWIvVGFyZ2V0L1Bvd2VyUEMv UFBDTUNJbnN0TG93ZXIuY3BwIGIvbGliL1RhcmdldC9Qb3dlclBDL1BQQ01DSW5zdExvd2VyLmNw cAoraW5kZXggNWNjMTgwZDcuLmE1YjAyNTY1IDEwMDY0NAorLS0tIGEvbGx2bS9saWIvVGFyZ2V0 L1Bvd2VyUEMvUFBDTUNJbnN0TG93ZXIuY3BwCisrKysgYi9sbHZtL2xpYi9UYXJnZXQvUG93ZXJQ Qy9QUENNQ0luc3RMb3dlci5jcHAKK0BAIC0xMTcsNyArMTE3LDcgQEAgc3RhdGljIE1DT3BlcmFu ZCBHZXRTeW1ib2xSZWYoY29uc3QgTWFjaGluZU9wZXJhbmQgJk1PLCBjb25zdCBNQ1N5bWJvbCAq U3ltYm9sLAorICAgY29uc3QgTUNFeHByICpFeHByID0gTUNTeW1ib2xSZWZFeHByOjpjcmVhdGUo U3ltYm9sLCBSZWZLaW5kLCBDdHgpOworICAgLy8gSWYgLW1zZWN1cmUtcGx0IC1mUElDLCBhZGQg MzI3NjggdG8gc3ltYm9sLgorICAgaWYgKFN1YnRhcmdldC0+aXNTZWN1cmVQbHQoKSAmJiBUTS5p c1Bvc2l0aW9uSW5kZXBlbmRlbnQoKSAmJgorLSAgICAgIE0tPmdldFBJQ0xldmVsKCkgPT0gUElD TGV2ZWw6OkJpZ1BJQyAmJgorKyAgICAgIE0tPmdldFBJQ0xldmVsKCkgIT0gUElDTGV2ZWw6OlNt YWxsUElDICYmCisgICAgICAgTU8uZ2V0VGFyZ2V0RmxhZ3MoKSA9PSBQUENJSTo6TU9fUExUKQor ICAgICBFeHByID0KKyAgICAgICAgIE1DQmluYXJ5RXhwcjo6Y3JlYXRlQWRkKEV4cHIsIE1DQ29u c3RhbnRFeHByOjpjcmVhdGUoMzI3NjgsIEN0eCksIEN0eCk7CmRpZmYgLS1naXQgYS9zcmNwa2dz L2xsdm0xNS9wYXRjaGVzL2xsdm0tMDA2LWFhcmNoNjQtbWZfZXhlYy5wYXRjaCBiL3NyY3BrZ3Mv bGx2bTE1L3BhdGNoZXMvbGx2bS0wMDYtYWFyY2g2NC1tZl9leGVjLnBhdGNoCm5ldyBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uYTAwYWJkMjE2NjY1Ci0tLSAvZGV2L251bGwK KysrIGIvc3JjcGtncy9sbHZtMTUvcGF0Y2hlcy9sbHZtLTAwNi1hYXJjaDY0LW1mX2V4ZWMucGF0 Y2gKQEAgLTAsMCArMSwyNSBAQAorRml4IGZhaWx1cmVzIGluIEFsbG9jYXRpb25UZXN0cy9NYXBw ZWRNZW1vcnlUZXN0Liogb24gYWFyY2g2NDoKKworICAgIEZhaWxpbmcgVGVzdHMgKDgpOgorICAg ICAgICBMTFZNLVVuaXQgOjogU3VwcG9ydC8uL1N1cHBvcnRUZXN0cy9BbGxvY2F0aW9uVGVzdHMv TWFwcGVkTWVtb3J5VGVzdC5BbGxvY0FuZFJlbGVhc2UvMworICAgICAgICBMTFZNLVVuaXQgOjog U3VwcG9ydC8uL1N1cHBvcnRUZXN0cy9BbGxvY2F0aW9uVGVzdHMvTWFwcGVkTWVtb3J5VGVzdC5E dXBsaWNhdGVOZWFyLzMKKyAgICAgICAgTExWTS1Vbml0IDo6IFN1cHBvcnQvLi9TdXBwb3J0VGVz dHMvQWxsb2NhdGlvblRlc3RzL01hcHBlZE1lbW9yeVRlc3QuRW5hYmxlZFdyaXRlLzMKKyAgICAg ICAgTExWTS1Vbml0IDo6IFN1cHBvcnQvLi9TdXBwb3J0VGVzdHMvQWxsb2NhdGlvblRlc3RzL01h cHBlZE1lbW9yeVRlc3QuTXVsdGlwbGVBbGxvY0FuZFJlbGVhc2UvMworICAgICAgICBMTFZNLVVu aXQgOjogU3VwcG9ydC8uL1N1cHBvcnRUZXN0cy9BbGxvY2F0aW9uVGVzdHMvTWFwcGVkTWVtb3J5 VGVzdC5TdWNjZXNzaXZlTmVhci8zCisgICAgICAgIExMVk0tVW5pdCA6OiBTdXBwb3J0Ly4vU3Vw cG9ydFRlc3RzL0FsbG9jYXRpb25UZXN0cy9NYXBwZWRNZW1vcnlUZXN0LlVuYWxpZ25lZE5lYXIv MworICAgICAgICBMTFZNLVVuaXQgOjogU3VwcG9ydC8uL1N1cHBvcnRUZXN0cy9BbGxvY2F0aW9u VGVzdHMvTWFwcGVkTWVtb3J5VGVzdC5aZXJvTmVhci8zCisgICAgICAgIExMVk0tVW5pdCA6OiBT dXBwb3J0Ly4vU3VwcG9ydFRlc3RzL0FsbG9jYXRpb25UZXN0cy9NYXBwZWRNZW1vcnlUZXN0Llpl cm9TaXplTmVhci8zCisKK1Vwc3RyZWFtLUlzc3VlOiBodHRwczovL2J1Z3MubGx2bS5vcmcvc2hv d19idWcuY2dpP2lkPTE0Mjc4I2MxMAorCistLS0gYS9sbHZtL2xpYi9TdXBwb3J0L1VuaXgvTWVt b3J5LmluYworKysrIGIvbGx2bS9saWIvU3VwcG9ydC9Vbml4L01lbW9yeS5pbmMKK0BAIC01OCw3 ICs1OCw3IEBAIHN0YXRpYyBpbnQgZ2V0UG9zaXhQcm90ZWN0aW9uRmxhZ3ModW5zaWduZWQgRmxh Z3MpIHsKKyAgICAgcmV0dXJuIFBST1RfUkVBRCB8IFBST1RfV1JJVEUgfCBQUk9UX0VYRUM7Cisg ICBjYXNlIGxsdm06OnN5czo6TWVtb3J5OjpNRl9FWEVDOgorICNpZiAoZGVmaW5lZChfX0ZyZWVC U0RfXykgfHwgZGVmaW5lZChfX1BPV0VSUENfXykgfHwgZGVmaW5lZCAoX19wcGNfXykgfHwgXAor LSAgICAgZGVmaW5lZChfUE9XRVIpIHx8IGRlZmluZWQoX0FSQ0hfUFBDKSkKKysgICAgIGRlZmlu ZWQoX1BPV0VSKSB8fCBkZWZpbmVkKF9BUkNIX1BQQykgfHwgKGRlZmluZWQoX19saW51eF9fKSAm JiBkZWZpbmVkKF9fYWFyY2g2NF9fKSkpCisgICAgIC8vIE9uIFBvd2VyUEMsIGhhdmluZyBhbiBl eGVjdXRhYmxlIHBhZ2UgdGhhdCBoYXMgbm8gcmVhZCBwZXJtaXNzaW9uCisgICAgIC8vIGNhbiBo YXZlIHVuaW50ZW5kZWQgY29uc2VxdWVuY2VzLiAgVGhlIGZ1bmN0aW9uIEludmFsaWRhdGVJbnN0 cnVjdGlvbi0KKyAgICAgLy8gQ2FjaGUgdXNlcyBpbnN0cnVjdGlvbnMgZGNiZiBhbmQgaWNiaSwg Ym90aCBvZiB3aGljaCBhcmUgdHJlYXRlZCBieQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9sbHZtMTUv dGVtcGxhdGUgYi9zcmNwa2dzL2xsdm0xNS90ZW1wbGF0ZQpuZXcgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAwMDAwMDAwMDAwMDAuLjVlZDhiZTEzNjY2OAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3Br Z3MvbGx2bTE1L3RlbXBsYXRlCkBAIC0wLDAgKzEsNDM0IEBACisjIFRlbXBsYXRlIGZpbGUgZm9y ICdsbHZtMTUnCitwa2duYW1lPWxsdm0xNQordmVyc2lvbj0xNS4wLjYKK3JldmlzaW9uPTEKK2J1 aWxkX3dya3NyYz1sbHZtCitidWlsZF9zdHlsZT1jbWFrZQorY29uZmlndXJlX2FyZ3M9IgorIC1E Q01BS0VfQlVJTERfVFlQRT1SZWxlYXNlIC1Xbm8tZGV2CisgLURFTkFCTEVfTElOS0VSX0JVSUxE X0lEPVlFUworIC1ETExEQl9VU0VfU1lTVEVNX1NJWD1ZRVMKKyAtRExJQkNYWF9DWFhfQUJJPWxp YmN4eGFiaQorIC1ETElCQ1hYX0VOQUJMRV9TVEFUSUNfQUJJX0xJQlJBUlk9WUVTCisgLURMSUJD WFhBQklfVVNFX0xMVk1fVU5XSU5ERVI9WUVTCisgLURMSUJDWFhBQklfRU5BQkxFX1NUQVRJQ19V TldJTkRFUj1ZRVMKKyAtRExJQk9NUF9FTkFCTEVfU0hBUkVEPVlFUworIC1ETElCT01QX0lOU1RB TExfQUxJQVNFUz1OTworIC1ETExWTV9JTkNMVURFX0RPQ1M9WUVTCisgLURMTFZNX0JVSUxEX0RP Q1M9WUVTCisgLURMTFZNX0VOQUJMRV9TUEhJTlg9WUVTCisgLURTUEhJTlhfV0FSTklOR1NfQVNf RVJST1JTPU5PCisgLURMTFZNX0lOU1RBTExfVVRJTFM9WUVTCisgLURMTFZNX0JVSUxEX0xMVk1f RFlMSUI9WUVTCisgLURMTFZNX0xJTktfTExWTV9EWUxJQj1ZRVMKKyAtRExMVk1fRU5BQkxFX1JU VEk9WUVTCisgLURMTFZNX0VOQUJMRV9GRkk9WUVTCisgLURMTFZNX0JJTlVUSUxTX0lOQ0RJUj0v dXNyL2luY2x1ZGUiCitob3N0bWFrZWRlcGVuZHM9InBlcmwgcHl0aG9uMyB6bGliLWRldmVsIGxp YmZmaS1kZXZlbCBzd2lnIHB5dGhvbjMtU3BoaW54CisgcHl0aG9uMy1yZWNvbW1vbm1hcmsgcHl0 aG9uMy1zcGhpbngtYXV0b21vZGFwaSIKK21ha2VkZXBlbmRzPSJweXRob24zLWRldmVsIHpsaWIt ZGV2ZWwgZWxmdXRpbHMtZGV2ZWwgbGliZmZpLWRldmVsIGxpYmVkaXQtZGV2ZWwKKyBsaWJ4bWwy LWRldmVsIGJpbnV0aWxzLWRldmVsIGxpYmF0b21pYy1kZXZlbCIKK2RlcGVuZHM9ImxpYmxsdm0x NT49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKK3Nob3J0X2Rlc2M9IkxvdyBMZXZlbCBWaXJ0dWFs IE1hY2hpbmUiCittYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+Igor bGljZW5zZT0iQXBhY2hlLTIuMCIKK2hvbWVwYWdlPSJodHRwczovL3d3dy5sbHZtLm9yZyIKK2Rp c3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL2xsdm0vbGx2bS1wcm9qZWN0L3JlbGVhc2VzL2Rv d25sb2FkL2xsdm1vcmctJHt2ZXJzaW9ufS9sbHZtLXByb2plY3QtJHt2ZXJzaW9ufS5zcmMudGFy Lnh6IgorY2hlY2tzdW09OWQ1M2FkMDRkYzYwY2I3YjMwZTgxMGZhZjY0YzVhYjgxNTdkYWRlZjQ2 Yzg3NjZmNjdmMjg2MjM4MjU2ZmY5MgorbGliMzJkaXNhYmxlZD15ZXMKK3B5dGhvbl92ZXJzaW9u PTMKKworaWYgWyAiJFhCUFNfVEFSR0VUX0xJQkMiID0gIm11c2wiIF07IHRoZW4KKwljb25maWd1 cmVfYXJncys9IiAtRExJQkNYWF9IQVNfTVVTTF9MSUJDPVlFUyIKKwltYWtlZGVwZW5kcys9IiBs aWJleGVjaW5mby1kZXZlbCIKKwlkZXBlbmRzKz0iIGxpYmV4ZWNpbmZvLWRldmVsIgorZmkKKwor IyAib3BlcmFuZCBvdXQgb2YgcmFuZ2UiIGFzc2VtYmxlciBmYWlsdXJlcworY2FzZSAiJFhCUFNf VEFSR0VUX01BQ0hJTkUiIGluCisJcHBjNjQqKSA7OworCXBwYyopIGNvbmZpZ3VyZV9hcmdzKz0i IC1EQ0xBTkdfRU5BQkxFX0NMQU5HRD1PRkYiIDs7Citlc2FjCisKK19lbmFibGVkX3Byb2plY3Rz PSJjbGFuZztjbGFuZy10b29scy1leHRyYTtjb21waWxlci1ydDtsaWJjeHg7bGliY3h4YWJpO2xp YnVud2luZDtsbGQiCisKK19sbGRiX2VuYWJsZT15ZXMKK19saWJvbXBfZW5hYmxlPW5vCisKK2Nh c2UgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiBpbgorCXBwYzY0bGUqKSA7OworCXBwYyp8aTY4Niop IF9sbGRiX2VuYWJsZT1ubyA7OworZXNhYworCitjYXNlICIkWEJQU19UQVJHRVRfTUFDSElORSIg aW4KKwl4ODZfNjQqfGFhcmNoNjQqfHBwYzY0KikgX2xpYm9tcF9lbmFibGU9eWVzOzsKK2VzYWMK Kworc3VicGFja2FnZXM9ImNsYW5nLXRvb2xzLWV4dHJhIgorCisjIG11c3QgZ28gYmVmb3JlIGNs YW5nCitpZiBbICIkX2xpYm9tcF9lbmFibGUiID0gInllcyIgXTsgdGhlbgorCV9lbmFibGVkX3By b2plY3RzKz0iO29wZW5tcCIKKwlzdWJwYWNrYWdlcys9IiBsaWJvbXAgbGlib21wLWRldmVsIgor CSMgYmVjYXVzZSBvZiBjbWFrZSBub25zZW5zZSByZWZlcmVuY2luZyBsaWJvbXB0YXJnZXQuc28u KgorCWRlcGVuZHMrPSIgbGlib21wPj0ke3ZlcnNpb259XyR7cmV2aXNpb259IgorZmkKKworc3Vi cGFja2FnZXMrPSIgY2xhbmcgY2xhbmctYW5hbHl6ZXIgbGliY2xhbmcgbGliY2xhbmctY3BwCisg bGx2bS1saWJ1bndpbmQgbGx2bS1saWJ1bndpbmQtZGV2ZWwgbGliY3h4IGxpYmN4eC1kZXZlbAor IGxpYmN4eGFiaSBsaWJjeHhhYmktZGV2ZWwgbGlibGx2bTE1IgorCitpZiBbICIkX2xsZGJfZW5h YmxlIiA9ICJ5ZXMiIF07IHRoZW4KKwkjIFhYWCBmYWlscyB0byBjcm9zcyBjb21waWxlIGR1ZSB0 byBweXRob24KKwlfZW5hYmxlZF9wcm9qZWN0cys9IjtsbGRiIgorCXN1YnBhY2thZ2VzKz0iIGxs ZGIgbGxkYi1kZXZlbCIKK2ZpCisKK3N1YnBhY2thZ2VzKz0iIGxsZCBsbGQtZGV2ZWwiCisKK2Nv bmZpZ3VyZV9hcmdzKz0iIC1ETExWTV9FTkFCTEVfUFJPSkVDVFM9JHtfZW5hYmxlZF9wcm9qZWN0 c30iCisKK3Bvc3RfcGF0Y2goKSB7CisJaWYgWyAiJF9sbGRiX2VuYWJsZSIgPSAieWVzIiBdOyB0 aGVuCisJCWlmIFsgIiRYQlBTX1RBUkdFVF9MSUJDIiA9ICJtdXNsIiBdOyB0aGVuCisJCQl2c2Vk IC1pICdzfF9fcHRyYWNlX3JlcXVlc3R8aW50fGcnIFwKKwkJCQkke3dya3NyY30vbGxkYi9zb3Vy Y2UvUGx1Z2lucy9Qcm9jZXNzL0xpbnV4L05hdGl2ZVByb2Nlc3NMaW51eC5jcHAKKwkJZmkKKwkJ IyBkaXNhYmxlIGRvY3MgZm9yIGxsZGIgYXMgdGhleSBmYWlsIHRvIGdlbmVyYXRlCisJCXZzZWQg LWkgJy9hZGRfc3ViZGlyZWN0b3J5KGRvY3MpL2QnIFwKKwkJCSR7d3Jrc3JjfS9sbGRiL0NNYWtl TGlzdHMudHh0CisJZmkKKworCSMgdXBkYXRlIGNvbmZpZy5ndWVzcyBmb3IgYmV0dGVyIHBsYXRm b3JtIGRldGVjdGlvbgorCWNwICRYQlBTX0NPTU1PTkRJUi9lbnZpcm9ubWVudC9jb25maWd1cmUv YXV0b21ha2UvY29uZmlnLmd1ZXNzIFwKKwkJJHt3cmtzcmN9L2xsdm0vY21ha2UKKworCSMgZml4 IGxpbmtlciBmYWlsdXJlcyBvbiBzb21lIGFyY2hzCisJdnNlZCAtaSAncyxjaGVja19saWJyYXJ5 X2V4aXN0cyhnY2NfcyAuKixzZXQoTElCQ1hYQUJJX0hBU19HQ0NfU19MSUIgT04pLCcgXAorCQkk e3dya3NyY30vbGliY3h4YWJpL2NtYWtlL2NvbmZpZy1peC5jbWFrZQorCXZzZWQgLWkgJ3MsY2hl Y2tfbGlicmFyeV9leGlzdHMoZ2NjIC4qLHNldChMSUJDWFhBQklfSEFTX0dDQ19MSUIgT04pLCcg XAorCQkke3dya3NyY30vbGliY3h4YWJpL2NtYWtlL2NvbmZpZy1peC5jbWFrZQorCisJIyBuZWVk IGxpYnNzcF9ub25zaGFyZWQgb24gc29tZSBtdXNsIHBsYXRmb3JtcyAoYmVjYXVzZSBvZiBub2Rl ZmF1bHRsaWJzKQorCWNhc2UgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiBpbgorCQlwcGM2NCopIDs7 CisJCXBwYyotbXVzbHxpNjg2LW11c2x8bWlwcyotbXVzbCkKKwkJCXZzZWQgLWkgJ3MsXiMgU2V0 dXAgZmxhZ3MuJCxhZGRfbGlicmFyeV9mbGFncyhzc3Bfbm9uc2hhcmVkKSwnIFwKKwkJCQkke3dy a3NyY30vbGlidW53aW5kL3NyYy9DTWFrZUxpc3RzLnR4dAorCQkJdnNlZCAtaSAncyxeIyBTZXR1 cCBmbGFncy4kLGFkZF9saWJyYXJ5X2ZsYWdzKHNzcF9ub25zaGFyZWQpLCcgXAorCQkJCSR7d3Jr c3JjfS9saWJjeHhhYmkvc3JjL0NNYWtlTGlzdHMudHh0CisJCQl2c2VkIC1pICdzLCNzc3AsLCcg JHt3cmtzcmN9L2xpYmN4eC9DTWFrZUxpc3RzLnR4dAorCQkJOzsKKwllc2FjCisKKwljYXNlICIk WEJQU19UQVJHRVRfTUFDSElORSIgaW4KKwkJeDg2XzY0LW11c2wpICMgc29tZSBzYW5pdGl6ZXIg Y3VycmVudGx5IG9ubHkgb24geDg2XzY0IHN0dWZmIG5lZWRzIGJhY2t0cmFjZQorCQkJdnNlZCAt aSAncywjIFNldCBjb21tb24gbGluayBmbGFncy4sbGlzdChBUFBFTkQgU0FOSVRJWkVSX0NPTU1P Tl9MSU5LX0xJQlMgZXhlY2luZm8pLCcgXAorCQkJCSR7d3Jrc3JjfS9jb21waWxlci1ydC9DTWFr ZUxpc3RzLnR4dAorCQkJOzsKKwkJYXJtKi1tdXNsfGk2ODYtbXVzbCkgIyBzYW5pdGl6ZXIgY29k ZSBpcyBicm9rZW4gc2luY2UgaXQgZHVwbGljYXRlcyBzb21lIGxpYmMgYml0cworCQkJdnNlZCAt aSAncy9zZXQoQ09NUElMRVJfUlRfSEFTX1NBTklUSVpFUl9DT01NT04gVFJVRSkvc2V0KENPTVBJ TEVSX1JUX0hBU19TQU5JVElaRVJfQ09NTU9OIEZBTFNFKS8nIFwKKwkJCQkke3dya3NyY30vY29t cGlsZXItcnQvY21ha2UvY29uZmlnLWl4LmNtYWtlCisJCQk7OworCWVzYWMKK30KKworcHJlX2Nv bmZpZ3VyZSgpIHsKKwlsb2NhbCB0cmlwbGV0CisKKwkjIFZhc3RseSByZWR1Y2Ugc2l6ZSBvZiBk ZWJ1Z2dpbmcgc3ltYm9sczoKKwlDRkxBR1M9JHtDRkxBR1MvIC1nLyAtZzF9CisJQ1hYRkxBR1M9 JHtDWFhGTEFHUy8gLWcvIC1nMX0KKworCSMgc2luY2UgZ2NjOSwgdGhlIGJ1aWxkIGxpa2VzIHRv IGJsb3cgdXAgZm9yIHBwYzMyIGFwcGFyZW50bHkgYmVjYXVzZQorCSMgb2YgY2xhbmcgYmVpbmcg dG9vIGxhcmdlIGZvciBhIDI0LWJpdCByZWxhdGl2ZSBjYWxsIHRvIHRoZSBQTFQsIHNvCisJIyBv cHRpbWl6ZSBmb3Igc2l6ZSBpbnN0ZWFkCisJY2FzZSAiJFhCUFNfVEFSR0VUX01BQ0hJTkUiIGlu CisJCXBwYzY0KikgOzsKKwkJbWlwcyotbXVzbHxwcGMqKSBjb25maWd1cmVfYXJncys9IiAtRFZP SURfQ1hYX09QVF9GTEFHUz0tT3MiIDs7CisJZXNhYworCisJaWYgWyAiJENST1NTX0JVSUxEIiBd OyB0aGVuCisJCW1zZ19ub3JtYWwgIkJ1aWxkaW5nIGhvc3QgdGJsZ2VuXG4iCisJCW1rZGlyIC1w IGJ1aWxkL0hPU1QKKwkJY2QgYnVpbGQvSE9TVAorCQlDQz0iJEJVSUxEX0NDIiBDWFg9IiRCVUlM RF9DWFgiIENGTEFHUz0iJEJVSUxEX0NGTEFHUyIgXAorCQkJQ1hYRkxBR1M9IiRCVUlMRF9DWFhG TEFHUyIgTERGTEFHUz0iJEJVSUxEX0xERkxBR1MiIFwKKwkJCWNtYWtlIC4uLy4uIC1EQ01BS0Vf QlVJTERfVFlQRT1SZWxlYXNlIFwKKwkJCS1ETExWTV9FTkFCTEVfUFJPSkVDVFM9JHtfZW5hYmxl ZF9wcm9qZWN0c30KKwkJbWFrZSAke21ha2Vqb2JzfSAtQyB1dGlscy9UYWJsZUdlbgorCQltYWtl ICR7bWFrZWpvYnN9IC1DIHRvb2xzL2NsYW5nL3V0aWxzL1RhYmxlR2VuCisJCVsgIiRfbGxkYl9l bmFibGUiID0gInllcyIgXSAmJiBtYWtlICR7bWFrZWpvYnN9IC1DIHRvb2xzL2xsZGIvdXRpbHMv VGFibGVHZW4KKwkJY29uZmlndXJlX2FyZ3MrPSIgLURMTFZNX1RBQkxFR0VOPSR7d3Jrc3JjfS9s bHZtL2J1aWxkL0hPU1QvYmluL2xsdm0tdGJsZ2VuIgorCQljb25maWd1cmVfYXJncys9IiAtRENM QU5HX1RBQkxFR0VOPSR7d3Jrc3JjfS9sbHZtL2J1aWxkL0hPU1QvYmluL2NsYW5nLXRibGdlbiIK KwkJWyAiJF9sbGRiX2VuYWJsZSIgPSAieWVzIiBdICYmIGNvbmZpZ3VyZV9hcmdzKz0iIC1ETExE Ql9UQUJMRUdFTj0ke3dya3NyY30vbGx2bS9idWlsZC9IT1NUL2Jpbi9sbGRiLXRibGdlbiIKKwkJ Y2QgLi4vLi4KKwlmaQorCisJY2FzZSAiJFhCUFNfVEFSR0VUX01BQ0hJTkUiIGluCisJCWk2ODYq KSBfYXJjaD0iWDg2Ijs7CisJCXg4Nl82NCopIF9hcmNoPSJYODYiOzsKKwkJYXJtdjUqKSBfYXJj aD0iQXJtdjV0ZSI7OworCQlhcm12NiopIF9hcmNoPSJBcm12NiI7OworCQlhcm12NyopIF9hcmNo PSJBcm12NyI7OworCQlhYXJjaDY0KikgX2FyY2g9IkFBcmNoNjQiOzsKKwkJbWlwcyopIF9hcmNo PSJNaXBzIjs7CisJCXBwYyopIF9hcmNoPSJQb3dlclBDIjs7CisJCXJpc2N2NjQqKSBfYXJjaD0i UklTQ1Y2NCI7OworCWVzYWMKKworCXRyaXBsZXQ9JHtYQlBTX0NST1NTX1RSSVBMRVQ6LSRYQlBT X1RSSVBMRVR9CisKKwljb25maWd1cmVfYXJncys9IiAtRExMVk1fVEFSR0VUX0FSQ0g9JHtfYXJj aH0iCisJY29uZmlndXJlX2FyZ3MrPSIgLURMTFZNX0hPU1RfVFJJUExFPSR7dHJpcGxldH0iCisJ Y29uZmlndXJlX2FyZ3MrPSIgLURMTFZNX0RFRkFVTFRfVEFSR0VUX1RSSVBMRT0ke3RyaXBsZXR9 IgorfQorCitkb19pbnN0YWxsKCkgeworCWNkIGJ1aWxkCisJY21ha2UgLURDTUFLRV9JTlNUQUxM X1BSRUZJWD0ke0RFU1RESVJ9L3VzciAtUCBjbWFrZV9pbnN0YWxsLmNtYWtlCisKKwkjIFJlcXVp cmVkIGZvciBtdWx0aWxpYi4KKwlpZiBbICIkWEJQU19UQVJHRVRfTUFDSElORSIgPSAieDg2XzY0 IiBdOyB0aGVuCisJCWZvciBfaGVhZGVyIGluIGxsdm0tY29uZmlnOyBkbworCQkJbXYgJHtERVNU RElSfS91c3IvaW5jbHVkZS9sbHZtL0NvbmZpZy8ke19oZWFkZXJ9eywtNjR9LmgKKwkJCXZpbnN0 YWxsICR7RklMRVNESVJ9L2xsdm0tQ29uZmlnLSR7X2hlYWRlcn0uaCA2NDQgXAorCQkJCXVzci9p bmNsdWRlL2xsdm0vQ29uZmlnICR7X2hlYWRlcn0uaAorCQlkb25lCisJZmkKKworCSMgUmVtb3Zl IGxsdm0tY29uZmlnLWhvc3QgaW4gY3Jvc3MgYnVpbGRzLgorCWlmIFsgIiRDUk9TU19CVUlMRCIg XTsgdGhlbgorCQlybSAtZiAke0RFU1RESVJ9L3Vzci9iaW4vbGx2bS1jb25maWctaG9zdAorCWZp CisKKwkjIEluc3RhbGwgbGliY3h4YWJpIGhlYWRlcnMKKwl2aW5zdGFsbCAke3dya3NyY30vbGli Y3h4YWJpL2luY2x1ZGUvX19jeHhhYmlfY29uZmlnLmggNjQ0IHVzci9pbmNsdWRlCisJdmluc3Rh bGwgJHt3cmtzcmN9L2xpYmN4eGFiaS9pbmNsdWRlL2N4eGFiaS5oIDY0NCB1c3IvaW5jbHVkZQor CisJIyBJbnN0YWxsIGxpYnVud2luZCBoZWFkZXJzCisJdmluc3RhbGwgJHt3cmtzcmN9L2xpYnVu d2luZC9pbmNsdWRlL19fbGlidW53aW5kX2NvbmZpZy5oIDY0NCB1c3IvaW5jbHVkZQorCXZpbnN0 YWxsICR7d3Jrc3JjfS9saWJ1bndpbmQvaW5jbHVkZS9saWJ1bndpbmQuaCA2NDQgdXNyL2luY2x1 ZGUKKwl2aW5zdGFsbCAke3dya3NyY30vbGlidW53aW5kL2luY2x1ZGUvdW53aW5kLmggNjQ0IHVz ci9pbmNsdWRlCisJdmluc3RhbGwgJHt3cmtzcmN9L2xpYnVud2luZC9pbmNsdWRlL21hY2gtby9j b21wYWN0X3Vud2luZF9lbmNvZGluZy5oIFwKKwkJNjQ0IHVzci9pbmNsdWRlL21hY2gtbworfQor CitjbGFuZy1hbmFseXplcl9wYWNrYWdlKCkgeworCXB5Y29tcGlsZV9kaXJzPSJ1c3Ivc2hhcmUv c2Nhbi12aWV3IgorCWRlcGVuZHM9ImNsYW5nLSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0gcHl0aG9u MyBwZXJsIgorCXNob3J0X2Rlc2MrPSIgLSBBIHNvdXJjZSBjb2RlIGFuYWx5c2lzIGZyYW1ld29y ayIKKwlob21lcGFnZT0iaHR0cHM6Ly9jbGFuZy1hbmFseXplci5sbHZtLm9yZy8iCisJcGtnX2lu c3RhbGwoKSB7CisJCXZtb3ZlICJ1c3IvYmluL3NjYW4tKiIKKwkJdm1vdmUgInVzci9saWJleGVj LyphbmFseXplciIKKwkJdm1vdmUgInVzci9zaGFyZS9zY2FuLSoiCisJCXZtb3ZlIHVzci9zaGFy ZS9tYW4vbWFuMS9zY2FuLWJ1aWxkLjEKKwl9Cit9CisKK2NsYW5nLXRvb2xzLWV4dHJhX3BhY2th Z2UoKSB7CisJbGliMzJkaXNhYmxlZD15ZXMKKwlkZXBlbmRzPSJjbGFuZy0ke3ZlcnNpb259XyR7 cmV2aXNpb259IHB5dGhvbjMiCisJc2hvcnRfZGVzYys9IiAtIEV4dHJhIENsYW5nIHRvb2xzIgor CWhvbWVwYWdlPSJodHRwczovL2NsYW5nLmxsdm0ub3JnL2V4dHJhLyIKKwlwa2dfaW5zdGFsbCgp IHsKKwkJdm1vdmUgdXNyL2Jpbi9jbGFuZy1hcHBseS1yZXBsYWNlbWVudHMKKwkJdm1vdmUgdXNy L2Jpbi9jbGFuZy1kb2MKKwkJdm1vdmUgdXNyL2Jpbi9jbGFuZy1pbmNsdWRlLWZpeGVyCisJCXZt b3ZlIHVzci9iaW4vY2xhbmctcXVlcnkKKwkJdm1vdmUgdXNyL2Jpbi9jbGFuZy1yZW5hbWUKKwkJ dm1vdmUgdXNyL2Jpbi9jbGFuZy1yZW9yZGVyLWZpZWxkcworCQl2bW92ZSB1c3IvYmluL2NsYW5n LXRpZHkKKwkJdm1vdmUgdXNyL2Jpbi9jbGFuZ2QKKwkJdm1vdmUgdXNyL2Jpbi9kaWFndG9vbAor CQl2bW92ZSB1c3IvYmluL2ZpbmQtYWxsLXN5bWJvbHMKKwkJdm1vdmUgdXNyL2Jpbi9obWFwdG9v bAorCQl2bW92ZSB1c3IvYmluL21vZHVsYXJpemUKKwkJdm1vdmUgdXNyL2Jpbi9wcC10cmFjZQor CQl2bW92ZSB1c3IvYmluL3NhbmNvdgorCQl2bW92ZSB1c3IvaW5jbHVkZS9jbGFuZy10aWR5CisJ CXZtb3ZlICJ1c3IvbGliL2xpYmNsYW5nQXBwbHlSZXBsYWNlbWVudHMqIgorCQl2bW92ZSAidXNy L2xpYi9saWJjbGFuZ0RvYyoiCisJCXZtb3ZlICJ1c3IvbGliL2xpYmNsYW5nSW5jbHVkZUZpeGVy KiIKKwkJdm1vdmUgInVzci9saWIvbGliY2xhbmdSZW9yZGVyRmllbGRzKiIKKwkJdm1vdmUgInVz ci9saWIvbGliY2xhbmdRdWVyeSoiCisJCXZtb3ZlICJ1c3IvbGliL2xpYmNsYW5nVGlkeSoiCisJ CXZtb3ZlICJ1c3Ivc2hhcmUvY2xhbmcvKmluY2x1ZGUtZml4ZXIqIgorCQl2bW92ZSAidXNyL3No YXJlL2NsYW5nLypyZW5hbWUqIgorCQl2bW92ZSAidXNyL3NoYXJlL2NsYW5nLyp0aWR5KiIKKwkJ dm1vdmUgdXNyL3NoYXJlL2RvYy9MTFZNL2NsYW5nLXRvb2xzCisJCXZtb3ZlIHVzci9zaGFyZS9t YW4vbWFuMS9kaWFndG9vbC4xCisJCXZtb3ZlIHVzci9zaGFyZS9tYW4vbWFuMS9leHRyYWNsYW5n dG9vbHMuMQorCX0KK30KKworY2xhbmdfcGFja2FnZSgpIHsKKwlsaWIzMmRpc2FibGVkPXllcwor CWRlcGVuZHM9ImxpYnN0ZGMrKy1kZXZlbCBsaWJnY2MtZGV2ZWwgIGJpbnV0aWxzICR7WEJQU19U QVJHRVRfTElCQ30tZGV2ZWwKKwkgbGliY2xhbmctJHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlz aG9ydF9kZXNjKz0iIC0gQyBsYW5ndWFnZSBmYW1pbHkgZnJvbnRlbmQiCisJaG9tZXBhZ2U9Imh0 dHBzOi8vY2xhbmcubGx2bS5vcmcvIgorCXBrZ19pbnN0YWxsKCkgeworCQl2bW92ZSAidXNyL2Jp bi8qY2xhbmcqIgorCQl2bW92ZSB1c3IvYmluL2MtaW5kZXgtdGVzdAorCQl2bW92ZSB1c3IvaW5j bHVkZS9jbGFuZworCQl2bW92ZSB1c3IvaW5jbHVkZS9jbGFuZy1jCisJCXZtb3ZlIHVzci9saWIv Y2xhbmcKKwkJdm1vdmUgdXNyL2xpYi9jbWFrZS9jbGFuZworCQl2bW92ZSAidXNyL2xpYi9saWJj bGFuZyouYSIKKwkJdm1vdmUgInVzci9saWIvbGliY2xhbmcqLnNvIgorCQl2bW92ZSB1c3Ivc2hh cmUvY2xhbmcKKwkJdm1vdmUgdXNyL3NoYXJlL2RvYy9MTFZNL2NsYW5nCisJCXZtb3ZlIHVzci9z aGFyZS9tYW4vbWFuMS9jbGFuZy4xCisJfQorfQorCitsaWJjbGFuZ19wYWNrYWdlKCkgeworCXNo b3J0X2Rlc2MrPSIgLSBDIGZyb250ZW5kIHJ1bnRpbWUgbGlicmFyeSIKKwlwa2dfaW5zdGFsbCgp IHsKKwkJdm1vdmUgInVzci9saWIvbGliY2xhbmcuc28uKiIKKwl9Cit9CisKK2xpYmNsYW5nLWNw cF9wYWNrYWdlKCkgeworCXNob3J0X2Rlc2MrPSIgLSBDIGZyb250ZW5kIHJ1bnRpbWUgbGlicmFy eSAoQysrIGludGVyZmFjZSkiCisJcGtnX2luc3RhbGwoKSB7CisJCXZtb3ZlICJ1c3IvbGliL2xp YmNsYW5nLWNwcC5zby4qIgorCX0KK30KKworbGxkX3BhY2thZ2UoKSB7CisJbGliMzJkaXNhYmxl ZD15ZXMKKwlzaG9ydF9kZXNjKz0iIC0gbGlua2VyIgorCWhvbWVwYWdlPSJodHRwczovL2xsZC5s bHZtLm9yZyIKKwlwa2dfaW5zdGFsbCgpIHsKKwkJdm1vdmUgdXNyL2Jpbi9sZC5sbGQqCisJCXZt b3ZlIHVzci9iaW4vbGQ2NC5sbGQqCisJCXZtb3ZlIHVzci9iaW4vbGxkKgorCQl2bW92ZSB1c3Iv YmluL3dhc20tbGQKKwkJdm1vdmUgdXNyL3NoYXJlL2RvYy9MTFZNL2xsZAorCX0KK30KKworbGxk LWRldmVsX3BhY2thZ2UoKSB7CisJbGliMzJkaXNhYmxlZD15ZXMKKwlzaG9ydF9kZXNjKz0iIC0g bGlua2VyIC0gZGV2ZWxvcG1lbnQgZmlsZXMiCisJaG9tZXBhZ2U9Imh0dHBzOi8vbGxkLmxsdm0u b3JnIgorCWRlcGVuZHM9ImxsZD49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlwa2dfaW5zdGFs bCgpIHsKKwkJdm1vdmUgdXNyL2luY2x1ZGUvbGxkCisJCXZtb3ZlIHVzci9saWIvY21ha2UvbGxk CisJCXZtb3ZlICJ1c3IvbGliL2xpYmxsZCphIgorCX0KK30KKworbGxkYl9wYWNrYWdlKCkgewor CWxpYjMyZGlzYWJsZWQ9eWVzCisJZGVwZW5kcys9IiBweXRob24zLXNpeCIKKwlzaG9ydF9kZXNj Kz0iIC0gTExEQiBkZWJ1Z2dlciIKKwlob21lcGFnZT0iaHR0cHM6Ly9sbGRiLmxsdm0ub3JnLyIK Kwlwa2dfaW5zdGFsbCgpIHsKKwkJdm1vdmUgdXNyL2Jpbi8qbGxkYioKKwkJdm1vdmUgdXNyL2xp Yi9saWJsbGRiKnNvLioKKwkJdm1vdmUgL3Vzci9saWIvcHl0aG9uKgorCX0KK30KKworbGxkYi1k ZXZlbF9wYWNrYWdlKCkgeworCWxpYjMyZGlzYWJsZWQ9eWVzCisJZGVwZW5kcz0ibGxkYj49JHt2 ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlzaG9ydF9kZXNjKz0iIC0gTExEQiBkZWJ1Z2dlciAtIGRl dmVsb3BtZW50IGZpbGVzIgorCXBrZ19pbnN0YWxsKCkgeworCQl2bW92ZSB1c3IvaW5jbHVkZS9s bGRiCisJCXZtb3ZlICJ1c3IvbGliL2xpYmxsZGIqLnNvIgorCX0KK30KKworbGx2bS1saWJ1bndp bmRfcGFja2FnZSgpIHsKKwlzaG9ydF9kZXNjKz0iIC0gbGlidW53aW5kIgorCXBrZ19pbnN0YWxs KCkgeworCQl2bW92ZSAidXNyL2xpYi8ke1hCUFNfVFJJUExFVH0vbGlidW53aW5kLnNvLioiCisJ fQorfQorCitsbHZtLWxpYnVud2luZC1kZXZlbF9wYWNrYWdlKCkgeworCXNob3J0X2Rlc2MrPSIg LSBsaWJ1bndpbmQgLSBkZXZlbG9wbWVudCBmaWxlcyIKKwlkZXBlbmRzPSJsbHZtLWxpYnVud2lu ZD49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwljb25mbGljdHM9ImxpYnVud2luZC1kZXZlbD49 MCIKKwlwa2dfaW5zdGFsbCgpIHsKKwkJdm1vdmUgdXNyL2luY2x1ZGUvbWFjaC1vCisJCXZtb3Zl ICJ1c3IvaW5jbHVkZS8qdW53aW5kKiIKKwkJdm1vdmUgInVzci9saWIvJHtYQlBTX1RSSVBMRVR9 L2xpYnVud2luZC5hIgorCQl2bW92ZSAidXNyL2xpYi8ke1hCUFNfVFJJUExFVH0vbGlidW53aW5k LnNvIgorCQl2bW92ZSB1c3Ivc2hhcmUvZG9jL0xMVk0vbGlidW53aW5kCisJfQorfQorCitsaWJj eHhhYmlfcGFja2FnZSgpIHsKKwlzaG9ydF9kZXNjKz0iIC0gbG93IGxldmVsIHN1cHBvcnQgZm9y IGxpYmMrKyIKKwlwa2dfaW5zdGFsbCgpIHsKKwkJdm1vdmUgInVzci9saWIvJHtYQlBTX1RSSVBM RVR9L2xpYmMrK2FiaS5zby4qIgorCX0KK30KKworbGliY3h4YWJpLWRldmVsX3BhY2thZ2UoKSB7 CisJc2hvcnRfZGVzYys9IiAtIGxvdyBsZXZlbCBzdXBwb3J0IGZvciBsaWJjKysgLSBkZXZlbG9w bWVudCBmaWxlcyIKKwlkZXBlbmRzPSJsaWJjeHhhYmk+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0i CisJcGtnX2luc3RhbGwoKSB7CisJCXZtb3ZlICJ1c3IvaW5jbHVkZS8qY3h4YWJpKiIKKwkJdm1v dmUgInVzci9saWIvJHtYQlBTX1RSSVBMRVR9L2xpYmMrK2FiaS5zbyIKKwkJdm1vdmUgInVzci9s aWIvJHtYQlBTX1RSSVBMRVR9L2xpYmMrK2FiaS5hIgorCX0KK30KKworbGliY3h4X3BhY2thZ2Uo KSB7CisJc2hvcnRfZGVzYys9IiAtIEMrKyBzdGFuZGFyZCBsaWJyYXJ5IgorCXBrZ19pbnN0YWxs KCkgeworCQl2bW92ZSAidXNyL2xpYi8ke1hCUFNfVFJJUExFVH0vbGliYysrLnNvLioiCisJfQor fQorCitsaWJjeHgtZGV2ZWxfcGFja2FnZSgpIHsKKwlzaG9ydF9kZXNjKz0iIC0gQysrIHN0YW5k YXJkIGxpYnJhcnkgLSBkZXZlbG9wbWVudCBmaWxlcyIKKwlkZXBlbmRzPSJsaWJjeHg+PSR7dmVy c2lvbn1fJHtyZXZpc2lvbn0iCisJcGtnX2luc3RhbGwoKSB7CisJCXZtb3ZlIHVzci9pbmNsdWRl L2MrKworCQl2bW92ZSAidXNyL2xpYi8ke1hCUFNfVFJJUExFVH0vbGliYysrLnNvIgorCQl2bW92 ZSAidXNyL2xpYi8ke1hCUFNfVFJJUExFVH0vbGliYysrLmEiCisJCXZtb3ZlICJ1c3IvbGliLyR7 WEJQU19UUklQTEVUfS9saWJjKytleHBlcmltZW50YWwuYSIKKwkJdm1vdmUgdXNyL3NoYXJlL2Rv Yy9MTFZNL2xpYmN4eAorCX0KK30KKworbGlib21wX3BhY2thZ2UoKSB7CisJc2hvcnRfZGVzYys9 IiAtIENsYW5nIE9wZW5NUCBzdXBwb3J0IGxpYnJhcnkiCisJcGtnX2luc3RhbGwoKSB7CisJCXZt b3ZlIHVzci9saWIvbGliYXJjaGVyLnNvCisJCXZtb3ZlIHVzci9saWIvbGlib21wLnNvCisJCXZt b3ZlIHVzci9saWIvbGlib21wZC5zbworCQl2bW92ZSAidXNyL2xpYi9saWJvbXB0YXJnZXQucnRs Liouc28iCisJCXZtb3ZlICJ1c3IvbGliL2xpYm9tcCouc28uKiIKKwl9Cit9CisKK2xpYm9tcC1k ZXZlbF9wYWNrYWdlKCkgeworCXNob3J0X2Rlc2MrPSIgLSBDbGFuZyBPcGVuTVAgc3VwcG9ydCBs aWJyYXJ5IC0gZGV2ZWxvcG1lbnQgZmlsZXMiCisJZGVwZW5kcz0ibGlib21wPj0ke3ZlcnNpb259 XyR7cmV2aXNpb259IgorCXBrZ19pbnN0YWxsKCkgeworCQl2bW92ZSAidXNyL2luY2x1ZGUvb21w Ki5oIgorCQl2bW92ZSAidXNyL2xpYi9jbGFuZy8ke3ZlcnNpb259L2luY2x1ZGUvb21wKi5oIgor CQl2bW92ZSAidXNyL2xpYi9saWJhcmNoZXIqIgorCQl2bW92ZSAidXNyL2xpYi9saWJvbXAqLnNv IgorCQl2bW92ZSB1c3IvbGliL2NtYWtlL29wZW5tcAorCQl2bW92ZSB1c3Ivc2hhcmUvZG9jL0xM Vk0vb3Blbm1wCisJCXZtb3ZlIHVzci9zaGFyZS9tYW4vbWFuMS9sbHZtb3Blbm1wLjEKKwl9Cit9 CisKK2xpYmxsdm0xNV9wYWNrYWdlKCkgeworCXNob3J0X2Rlc2MrPSIgLSBydW50aW1lIGxpYnJh cnkiCisJcGtnX2luc3RhbGwoKSB7CisJCXZtb3ZlICJ1c3IvbGliL2xpYkxMVk0tKi5zbyoiCisJ fQorfQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9sbHZtMTUvdXBkYXRlIGIvc3JjcGtncy9sbHZtMTUv dXBkYXRlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uZTk1Y2YyNmIz NTg2Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9sbHZtMTUvdXBkYXRlCkBAIC0wLDAgKzEs MyBAQAorc2l0ZT0iaHR0cHM6Ly9naXRodWIuY29tL2xsdm0vbGx2bS1wcm9qZWN0L3JlbGVhc2Vz IgorcGF0dGVybj0ibGx2bW9yZy1cSyhcZCsuKXsyfVxkKygtcmNcZCspPyIKK2lnbm9yZT0iKi1y YyoiCg== --===============8698195337179017449==--