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=-0.9 required=5.0 tests=ALL_TRUSTED,URIBL_SBL_A autolearn=no autolearn_force=no version=3.4.4 Received: (qmail 15165 invoked from network); 29 Jul 2020 12:23:38 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 29 Jul 2020 12:23:38 -0000 Content-Type: multipart/mixed; boundary="===============5716544994900427249==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_New_package=3A_mysql8-8=2E0=2E21?= To: ml@inbox.vuxu.org From: rien Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Wed, 29 Jul 2020 14:23:35 +0200 List-Id: Message-ID: <20200729122335.B__cTRRIHW9Dh5lyInR7rpTVMogHuhzEaHOHNva7NT0@z> GitHub notification mails are now in MIME to allow UTF8. --===============5716544994900427249== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgcmllbiBhZ2FpbnN0IG1hc3RlciBv biB0aGUgdm9pZC1wYWNrYWdlcyByZXBvc2l0b3J5CgpodHRwczovL2dpdGh1Yi5jb20vcmllbi92 b2lkLXBhY2thZ2VzIG5ldy9teXNxbC04Cmh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3Zv aWQtcGFja2FnZXMvcHVsbC8yMzYxNwoKTmV3IHBhY2thZ2U6IG15c3FsOC04LjAuMjEKVGhpcyBQ UiBhZGRzIHRoZSBNeVNRTCBkYXRhYmFzZSB2ZXJzaW9uIDguDQoNCiMjIyMgTW90aXZhdGlvbg0K DQpUaGUgb3RoZXIgYG15c3FsYCBwYWNrYWdlIGlzIHN0aWxsIHZlcnNpb24gNS42LCBidXQgdGhl IHJlYXNvbiBJIGNyZWF0ZWQgYSBuZXcgcGFja2FnZSBpcyBiZWNhdXNlIHRoZSB1cGdyYWRlIHdv dWxkIGJyZWFrIG1vc3QgZGF0YWJhc2VzIHNpbmNlIE15U1FMIG9ubHkgaGFzIGJhY2t3YXJkcyBj b21wYXRpYmlsaXR5IGZvciBvbmUgbWFqb3IgdmVyc2lvbi4gSW5zdGVhZCBvZiBjcmVhdGluZyBh IGxvdCBvZiBmcnVzdHJhdGlvbiBJIHRvb2sgdGhlIHBhdGggdm9pZCBoYXMgYWxyZWFkeSB0YWtl biB3aXRoIHBvc3RncmVzcWwgKGUuZy4gY3JlYXRpbmcgdGhlIGBwb3N0Z3Jlc3FsMTJgIHBhY2th Z2UgbmV4dCB0byBgcG9zdGdyZXNxbGApLg0KDQojIyMjIExpYnJlU1NMIHN1cHBvcnQNCg0KTXlT UUwgZG9lcyBub3Qgc3VwcG9ydCBsaWJyZXNzbCBieSBkZWZhdWx0LCBidXQgSSd2ZSB1c2VkIHNv bWUgcGF0Y2hlcyBmcm9tIFtnZW50b29dKGh0dHBzOi8vZGV2LmdlbnRvby5vcmcvfndoaXNzaS9k aXN0L215c3FsLykgKHdpdGggcGVybWlzc2lvbiBvZiBAV2hpc3NpKS4gVGhleSBhbHNvIG1haW50 YWluIGEgcmVwb3NpdG9yeSB3aXRoIHdvcmtpbmcgY2hhbmdlcyBvdmVyIGF0IGh0dHBzOi8vZ2l0 aHViLmNvbS9XaGlzc2kvZ2VudG9vLW15c3FsLg0KDQojIyMjIENyb3NzIGNvbXBpbGluZw0KDQpJ IGdhdmUgdXAgY3Jvc3MgY29tcGlsaW5nIHRoaXMgcGFja2FnZSBiZWNhdXNlIEkndmUgYWxyZWFk eSBzcGVudCBxdWl0ZSBzb21lIHRpbWUgZ2V0dGluZyB0aGlzIGNvbXBpbGUgb24geDg2LiBTb3Jy eS4NCg0KRHVyaW5nIGNvbmZpZ3VyYXRpb24gaXQgdHJpZXMgdG8gZGV0ZWN0IGxpYnJhcnkgdmVy c2lvbnMgYnkgY29tcGlsaW5nIGFuZCBydW5uaW5nIHNtYWxsIGJpbmFyaWVzLCBidXQgdGhpcyB3 b24ndCB3b3JrIHdoZW4gY3Jvc3MgY29tcGlsaW5nLiBJJ3ZlIHRyaWVkIHNldHRpbmcgYGJ1aWxk X2hlbHBlcj1xZW11YCBidXQgaXQgZGllcyB3aXRob3V0IGVycm9yIG1lc3NhZ2UsIGp1c3QgZXJy b3IgY29kZSAyLiBBdCB0aGF0IHBvaW50IGkgZ2F2ZSB1cCBiZWNhdXNlIGJ1aWxkaW5nIHRoaXMg cGFja2FnZSB0YWtlcyBhZ2VzLg0KDQojIyMjIEluaXRpYWxpemF0aW9uDQoNCkkndmUgdHJpZWQg dG8gcmVwbGljYXRlIHRoZSBiZWhhdmlvciBvZiB0aGUgb3JpZ2luYWwgYG15c3FsYCBwYWNrYWdl IGFzIGNsb3NlIGFzIHBvc3NpYmxlLiBUaGUgYElOU1RBTExgIHNjcmlwdCBpbml0aWFsaXplcyB0 aGUgZGF0YSBkaXJlY3RvcnkgYW5kIHNldHMgYW4gZW1wdHkgcm9vdCBwYXNzd29yZC4gSXQgYWxz byBlY2hvJ3MgYSBtZXNzYWdlIHRlbGxpbmcgdGhlIHVzZXIgdGhleSBzaG91bGQgcnVuIGBteXNx bF9zZWN1cmVfaW5zdGFsbGF0aW9uYCBpbiBvcmRlciB0byBzZXQgYSByb290IHBhc3N3b3JkIGFu ZCB0byByZW1vdmUgdGVzdCBkYXRhYmFzZXMgYW5kIGFub255bW91cyB1c2Vycy4NCg0KVGhlIGdp dmVuIGNvbmZpZ3VyYXRpb24gb25seSBhbGxvd3MgY29ubmVjdGlvbnMgZnJvbSBsb2NhbGhvc3Qs IHNvIHRoZSBzZWN1cml0eSByaXNrIGlzIGF0IGEgbWluaW11bSBoZXJlLiBIb3dldmVyLCBpZiBk ZXNpcmVkIEkgY2FuIGxldCB0aGUgaW5pdGlhbGl6YXRpb24gc3RlcCBnZW5lcmF0ZSBhIHJhbmRv bSByb290IHBhc3N3b3JkLgoKQSBwYXRjaCBmaWxlIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL3Zv aWQtbGludXgvdm9pZC1wYWNrYWdlcy9wdWxsLzIzNjE3LnBhdGNoIGlzIGF0dGFjaGVk --===============5716544994900427249== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-new/mysql-8-23617.patch" RnJvbSA5MzYzZDQyZjY2YzhmZWU2NDljYmQ3NDBjMWE5MGFhOGE0ZTg1ZjgyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBSaWVuIE1hZXJ0ZW5zIDxyaWVuLm1hZXJ0ZW5zQHBvc3Rlby5i ZT4KRGF0ZTogRnJpLCAxNyBKdWwgMjAyMCAxNjo0MDowNyArMDIwMApTdWJqZWN0OiBbUEFUQ0hd IFtjaSBza2lwXSBOZXcgcGFja2FnZTogbXlzcWw4LTguMC4yMQoKLS0tCiBzcmNwa2dzL2xpYm15 c3FsY2xpZW50OCAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEgKwogc3JjcGtncy9saWJteXNx bGNsaWVudDgtZGV2ZWwgICAgICAgICAgICAgICAgIHwgICAxICsKIHNyY3BrZ3MvbXlzcWw4LWNs aWVudCAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMSArCiBzcmNwa2dzL215c3FsOC9JTlNU QUxMICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTIgKwogc3JjcGtncy9teXNxbDgvZmlsZXMv bXkuY25mICAgICAgICAgICAgICAgICAgIHwgIDM3ICsrCiBzcmNwa2dzL215c3FsOC9maWxlcy9t eXNxbGQvbG9nL3J1biAgICAgICAgICAgfCAgIDIgKwogc3JjcGtncy9teXNxbDgvZmlsZXMvbXlz cWxkL3J1biAgICAgICAgICAgICAgIHwgICA0ICsKIC4uLi9wYXRjaGVzLzAwMDItY21ha2UtUmVt b3ZlLVdlcnJvci5wYXRjaCAgICB8ICAzMCArKwogLi4uLzAwMDQtdGVzdHMtZml4LWdyYW50X3Vz ZXJfbG9jay10ZXN0LnBhdGNoIHwgIDkyICsrKysrCiAuLi4vcGF0Y2hlcy8wMDA1LUFkZC1MaWJy ZVNTTC1zdXBwb3J0LnBhdGNoICAgfCAzNTYgKysrKysrKysrKysrKysrKysrCiBzcmNwa2dzL215 c3FsOC90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgICAgfCAxMTcgKysrKysrCiBzcmNwa2dz L215c3FsOC91cGRhdGUgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDIgKwogMTIgZmlsZXMg Y2hhbmdlZCwgNjU1IGluc2VydGlvbnMoKykKIGNyZWF0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL2xp Ym15c3FsY2xpZW50OAogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbGlibXlzcWxjbGllbnQ4 LWRldmVsCiBjcmVhdGUgbW9kZSAxMjAwMDAgc3JjcGtncy9teXNxbDgtY2xpZW50CiBjcmVhdGUg bW9kZSAxMDA2NDQgc3JjcGtncy9teXNxbDgvSU5TVEFMTAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNy Y3BrZ3MvbXlzcWw4L2ZpbGVzL215LmNuZgogY3JlYXRlIG1vZGUgMTAwNzU1IHNyY3BrZ3MvbXlz cWw4L2ZpbGVzL215c3FsZC9sb2cvcnVuCiBjcmVhdGUgbW9kZSAxMDA3NTUgc3JjcGtncy9teXNx bDgvZmlsZXMvbXlzcWxkL3J1bgogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbXlzcWw4L3Bh dGNoZXMvMDAwMi1jbWFrZS1SZW1vdmUtV2Vycm9yLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQg c3JjcGtncy9teXNxbDgvcGF0Y2hlcy8wMDA0LXRlc3RzLWZpeC1ncmFudF91c2VyX2xvY2stdGVz dC5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbXlzcWw4L3BhdGNoZXMvMDAwNS1B ZGQtTGlicmVTU0wtc3VwcG9ydC5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbXlz cWw4L3RlbXBsYXRlCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9teXNxbDgvdXBkYXRlCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9saWJteXNxbGNsaWVudDggYi9zcmNwa2dzL2xpYm15c3FsY2xp ZW50OApuZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAwMC4uOWExN2U5MWI2OTQK LS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2xpYm15c3FsY2xpZW50OApAQCAtMCwwICsxIEBA CitteXNxbDgKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dz L2xpYm15c3FsY2xpZW50OC1kZXZlbCBiL3NyY3BrZ3MvbGlibXlzcWxjbGllbnQ4LWRldmVsCm5l dyBmaWxlIG1vZGUgMTIwMDAwCmluZGV4IDAwMDAwMDAwMDAwLi45YTE3ZTkxYjY5NAotLS0gL2Rl di9udWxsCisrKyBiL3NyY3BrZ3MvbGlibXlzcWxjbGllbnQ4LWRldmVsCkBAIC0wLDAgKzEgQEAK K215c3FsOApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv bXlzcWw4LWNsaWVudCBiL3NyY3BrZ3MvbXlzcWw4LWNsaWVudApuZXcgZmlsZSBtb2RlIDEyMDAw MAppbmRleCAwMDAwMDAwMDAwMC4uOWExN2U5MWI2OTQKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNw a2dzL215c3FsOC1jbGllbnQKQEAgLTAsMCArMSBAQAorbXlzcWw4ClwgTm8gbmV3bGluZSBhdCBl bmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9teXNxbDgvSU5TVEFMTCBiL3NyY3BrZ3Mv bXlzcWw4L0lOU1RBTEwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmI4 OWFjNWNiODMxCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9teXNxbDgvSU5TVEFMTApAQCAt MCwwICsxLDEyIEBACisjICotKi1zaGVsbC0qLSoKKyMKK2Nhc2UgJHtBQ1RJT059IGluCitwb3N0 KQorCWluc3RhbGwgLWRtMDcwMCB2YXIvbGliL215c3FsCisJYmluL215c3FsZCAtLXVzZXI9bXlz cWwgLS1pbml0aWFsaXplLWluc2VjdXJlIC0tZGF0YWRpcj0vdmFyL2xpYi9teXNxbAorCWNob3du IC1SIG15c3FsOm15c3FsIHZhci9saWIvbXlzcWwKKwllY2hvICJZb3VyIE15U1FMIHBhc3N3b3Jk IGlzIGVtcHR5LiIKKwllY2hvICJQbGVhc2Ugc2VjdXJlIHlvdXIgZGF0YWJhc2UgYnkgcnVubmlu ZyIKKwllY2hvICIjIG15c3FsX3NlY3VyZV9kYXRhYmFzZSIKKwk7OworZXNhYwpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9teXNxbDgvZmlsZXMvbXkuY25mIGIvc3JjcGtncy9teXNxbDgvZmlsZXMvbXku Y25mCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5lNjIzYzkyNDlhYgot LS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbXlzcWw4L2ZpbGVzL215LmNuZgpAQCAtMCwwICsx LDM3IEBACisjIE15U1FMIGNvbmZpZ3VyYXRpb24gZmlsZSBmb3IgY2xpZW50IGFuZCBzZXJ2ZXIg YmFzZWQgb24gdGhlIEdlbnRvbworIyBjb25maWd1cmF0aW9ucy4KKworIyBUaGUgZm9sbG93aW5n IG9wdGlvbnMgd2lsbCBiZSBwYXNzZWQgdG8gYWxsIE15U1FMIGNsaWVudHMKK1tjbGllbnRdCitw b3J0CQkJCT0gMzMwNgorc29ja2V0CQkJCT0gL3J1bi9teXNxbGQvbXlzcWxkLnNvY2sKKworIyBI ZXJlIGZvbGxvd3MgZW50cmllcyBmb3Igc29tZSBzcGVjaWZpYyBwcm9ncmFtcworCisjIFRoZSBN eVNRTCBzZXJ2ZXIKK1tteXNxbGRdCitwb3J0CQk9IDMzMDYKK2JpbmQJCT0gMTI3LjAuMC4xCitz b2NrZXQJCT0gL3J1bi9teXNxbGQvbXlzcWxkLnNvY2sKK2RhdGFkaXIJCT0gL3Zhci9saWIvbXlz cWwKK3NraXAtZXh0ZXJuYWwtbG9ja2luZworCisjIFNpbmNlIE15U1FMIDggdGhlIGRlZmF1bHQg YXV0aGVudGljYXRpb24gcGx1Z2luIHN3aXRjaGVkIGZyb20KKyMgJ215c3FsX25hdGl2ZV9wYXNz d29yZCcgdG8gdGhlIG1vcmUgc2VjdXJlICdjYWNoaW5nX3NoYTJfcGFzc3dvcmQnLgorIyBVbmNv bW1lbnQgdGhlIG5leHQgbGluZSBpZiB5b3UgZXhwZXJpZW5jZSBpc3N1ZXMgd2l0aCBjbGllbnQg bGlicmFyaWVzLgorIworI2xvb3NlLWRlZmF1bHQtYXV0aGVudGljYXRpb24tcGx1Z2luID0gbXlz cWxfbmF0aXZlX3Bhc3N3b3JkCisKK2xvZy1iaW4KKyMgcmVxdWlyZWQgdW5pcXVlIGlkIGJldHdl ZW4gMSBhbmQgMl4zMiAtIDEKKyMgZGVmYXVsdHMgdG8gMSBpZiBtYXN0ZXItaG9zdCBpcyBub3Qg c2V0CisjIGJ1dCB3aWxsIG5vdCBmdW5jdGlvbiBhcyBhIG1hc3RlciBpZiBvbWl0dGVkCitzZXJ2 ZXItaWQJPSAxCisKK1tteXNxbGR1bXBdCitxdWljaworbWF4X2FsbG93ZWRfcGFja2V0ID0gMTZN CisKK1tteXNxbF0KKyMgUmVtb3ZlIHRoZSBuZXh0IGNvbW1lbnQgY2hhcmFjdGVyIGlmIHlvdSBh cmUgbm90IGZhbWlsaWFyIHdpdGggU1FMCisjc2FmZS11cGRhdGVzCmRpZmYgLS1naXQgYS9zcmNw a2dzL215c3FsOC9maWxlcy9teXNxbGQvbG9nL3J1biBiL3NyY3BrZ3MvbXlzcWw4L2ZpbGVzL215 c3FsZC9sb2cvcnVuCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAwMDAwLi5iMzZj NGRhZmE0MAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbXlzcWw4L2ZpbGVzL215c3FsZC9s b2cvcnVuCkBAIC0wLDAgKzEsMiBAQAorIyEvYmluL3NoCitleGVjIGxvZ2dlciAtcCBkYWVtb24u bm90aWNlCmRpZmYgLS1naXQgYS9zcmNwa2dzL215c3FsOC9maWxlcy9teXNxbGQvcnVuIGIvc3Jj cGtncy9teXNxbDgvZmlsZXMvbXlzcWxkL3J1bgpuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAw MDAwMDAwMDAwMC4uYmMxNmEwNzg4M2UKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL215c3Fs OC9maWxlcy9teXNxbGQvcnVuCkBAIC0wLDAgKzEsNCBAQAorIyEvYmluL3NoCitbICEgLWQgL3J1 bi9teXNxbGQgXSAmJiBta2RpciAtcCAvcnVuL215c3FsZAorY2hvd24gbXlzcWw6bXlzcWwgL3J1 bi9teXNxbGQKK2V4ZWMgY2hwc3QgLXUgbXlzcWw6bXlzcWwgbXlzcWxkIC0tdXNlcj1teXNxbCAy PiYxCmRpZmYgLS1naXQgYS9zcmNwa2dzL215c3FsOC9wYXRjaGVzLzAwMDItY21ha2UtUmVtb3Zl LVdlcnJvci5wYXRjaCBiL3NyY3BrZ3MvbXlzcWw4L3BhdGNoZXMvMDAwMi1jbWFrZS1SZW1vdmUt V2Vycm9yLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi40YTUy YmViZWYyZgotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbXlzcWw4L3BhdGNoZXMvMDAwMi1j bWFrZS1SZW1vdmUtV2Vycm9yLnBhdGNoCkBAIC0wLDAgKzEsMzAgQEAKK0Zyb20gMWMwNjZmNWVh MDEwOTk0Yzc5MDExM2JmNmNmNGE1MjAyMjdhOWUwNiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK K0Zyb206IFRob21hcyBEZXV0c2NobWFubiA8d2hpc3NpQGdlbnRvby5vcmc+CitEYXRlOiBUaHUs IDMwIEFwciAyMDIwIDE5OjU5OjI2ICswMjAwCitTdWJqZWN0OiBbUEFUQ0ggMi81XSBjbWFrZTog UmVtb3ZlIC1XZXJyb3IKKworU2lnbmVkLW9mZi1ieTogVGhvbWFzIERldXRzY2htYW5uIDx3aGlz c2lAZ2VudG9vLm9yZz4KKy0tLQorIGNtYWtlL21haW50YWluZXIuY21ha2UgfCA2IC0tLS0tLQor IDEgZmlsZSBjaGFuZ2VkLCA2IGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGNtYWtlL21haW50 YWluZXIuY21ha2UgY21ha2UvbWFpbnRhaW5lci5jbWFrZQoraW5kZXggNmFhM2FjODY2Li5iMmY2 M2JkYWEgMTAwNjQ0CistLS0gY21ha2UvbWFpbnRhaW5lci5jbWFrZQorKysrIGNtYWtlL21haW50 YWluZXIuY21ha2UKK0BAIC0xNTcsMTIgKzE1Nyw2IEBAIElGKE1ZX0NPTVBJTEVSX0lTX0NMQU5H KQorICAgIyAtV3plcm8tYXMtbnVsbC1wb2ludGVyLWNvbnN0YW50CisgRU5ESUYoKQorIAorLSMg VHVybiBvbiBXZXJyb3IgKHdhcm5pbmcgPT4gZXJyb3IpIHdoZW4gdXNpbmcgbWFpbnRhaW5lciBt b2RlLgorLUlGKE1ZU1FMX01BSU5UQUlORVJfTU9ERSkKKy0gIFNUUklOR19BUFBFTkQoTVlfQ19X QVJOSU5HX0ZMQUdTICAgIiAtV2Vycm9yIikKKy0gIFNUUklOR19BUFBFTkQoTVlfQ1hYX1dBUk5J TkdfRkxBR1MgIiAtV2Vycm9yIikKKy1FTkRJRigpCistCisgIyBTZXQgd2FybmluZyBmbGFncyBm b3IgZ2NjL2crKy9jbGFuZy9jbGFuZysrCisgSUYoTVlfQ09NUElMRVJfSVNfR05VX09SX0NMQU5H KQorICAgU1RSSU5HX0FQUEVORChDTUFLRV9DX0ZMQUdTICAgIiAke01ZX0NfV0FSTklOR19GTEFH U30iKQorLS0gCisyLjI3LjAKKwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9teXNxbDgvcGF0Y2hlcy8w MDA0LXRlc3RzLWZpeC1ncmFudF91c2VyX2xvY2stdGVzdC5wYXRjaCBiL3NyY3BrZ3MvbXlzcWw4 L3BhdGNoZXMvMDAwNC10ZXN0cy1maXgtZ3JhbnRfdXNlcl9sb2NrLXRlc3QucGF0Y2gKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjNiZDFiYzVhNDAyCi0tLSAvZGV2L251 bGwKKysrIGIvc3JjcGtncy9teXNxbDgvcGF0Y2hlcy8wMDA0LXRlc3RzLWZpeC1ncmFudF91c2Vy X2xvY2stdGVzdC5wYXRjaApAQCAtMCwwICsxLDkyIEBACitGcm9tIDM4NDI3YjUzZmZjMzRmNDY1 NTM0YmNiMWNiYzU2ZmM4ZjJjMDdkOGQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBU aG9tYXMgRGV1dHNjaG1hbm4gPHdoaXNzaUBnZW50b28ub3JnPgorRGF0ZTogVGh1LCAzMCBBcHIg MjAyMCAyMDowMToyMCArMDIwMAorU3ViamVjdDogW1BBVENIIDQvNV0gdGVzdHM6IGZpeCBncmFu dF91c2VyX2xvY2sgdGVzdAorCitTaWduZWQtb2ZmLWJ5OiBUaG9tYXMgRGV1dHNjaG1hbm4gPHdo aXNzaUBnZW50b28ub3JnPgorLS0tCisgbXlzcWwtdGVzdC9yL2dyYW50X3VzZXJfbG9jay5yZXN1 bHQgfCAgNCArKy0tCisgbXlzcWwtdGVzdC90L2dyYW50X3VzZXJfbG9jay50ZXN0ICAgfCAxMiAr KysrKystLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlv bnMoLSkKKworZGlmZiAtLWdpdCBteXNxbC10ZXN0L3IvZ3JhbnRfdXNlcl9sb2NrLnJlc3VsdCBt eXNxbC10ZXN0L3IvZ3JhbnRfdXNlcl9sb2NrLnJlc3VsdAoraW5kZXggNTRhYWRkZmI4Li45Yzk1 MzgwZjEgMTAwNjQ0CistLS0gbXlzcWwtdGVzdC9yL2dyYW50X3VzZXJfbG9jay5yZXN1bHQKKysr KyBteXNxbC10ZXN0L3IvZ3JhbnRfdXNlcl9sb2NrLnJlc3VsdAorQEAgLTk4LDEzICs5OCwxMyBA QCBDVVJSRU5UX1VTRVIoKQorIERST1AgVVNFUiAnJ0Bsb2NhbGhvc3Q7CisgIyBDcmVhdGUgYW5v bnltb3VzIHVzZXIgLSBMT0NLCisgQ1JFQVRFIFVTRVIgJydAbG9jYWxob3N0IElERU5USUZJRUQg QlkgJ3Bhc3MnIEFDQ09VTlQgTE9DSzsKKy1jb25uZWN0KGxvY2FsaG9zdCwscGFzcyx0ZXN0LE1B U1RFUl9QT1JULE1BU1RFUl9TT0NLRVQpOworK2Nvbm5lY3QobG9jYWxob3N0LCAscGFzcyx0ZXN0 LE1BU1RFUl9QT1JULE1BU1RFUl9TT0NLRVQpOworIEVSUk9SIEhZMDAwOiBBY2Nlc3MgZGVuaWVk IGZvciB1c2VyICcobnVsbCknQCdsb2NhbGhvc3QnLiBBY2NvdW50IGlzIGxvY2tlZC4KKyBEUk9Q IFVTRVIgJydAbG9jYWxob3N0OworICMgRGlzYWJsaW5nIGFub255bW91cyB1c2VyCisgQ1JFQVRF IFVTRVIgJydAbG9jYWxob3N0IElERU5USUZJRUQgQlkgJ3Bhc3MnOworIEFMVEVSIFVTRVIgJydA bG9jYWxob3N0IEFDQ09VTlQgTE9DSzsKKy1jb25uZWN0KGxvY2FsaG9zdCwscGFzcyx0ZXN0LE1B U1RFUl9QT1JULE1BU1RFUl9TT0NLRVQpOworK2Nvbm5lY3QobG9jYWxob3N0LCAscGFzcyx0ZXN0 LE1BU1RFUl9QT1JULE1BU1RFUl9TT0NLRVQpOworIEVSUk9SIEhZMDAwOiBBY2Nlc3MgZGVuaWVk IGZvciB1c2VyICcobnVsbCknQCdsb2NhbGhvc3QnLiBBY2NvdW50IGlzIGxvY2tlZC4KKyBEUk9Q IFVTRVIgJydAbG9jYWxob3N0OworICMgRW5hYmxpbmcgYW5vbnltb3VzIHVzZXIKK2RpZmYgLS1n aXQgbXlzcWwtdGVzdC90L2dyYW50X3VzZXJfbG9jay50ZXN0IG15c3FsLXRlc3QvdC9ncmFudF91 c2VyX2xvY2sudGVzdAoraW5kZXggYzg2N2JkNTNkLi4wM2Y4NzdkZWYgMTAwNjQ0CistLS0gbXlz cWwtdGVzdC90L2dyYW50X3VzZXJfbG9jay50ZXN0CisrKysgbXlzcWwtdGVzdC90L2dyYW50X3Vz ZXJfbG9jay50ZXN0CitAQCAtMTEyLDcgKzExMiw3IEBAIERST1AgVVNFUiB1bmxvY2tlZF91c2Vy MkBsb2NhbGhvc3Q7CisgLS1lY2hvICMgQ3JlYXRlIGFub255bW91cyB1c2VyCisgY29ubmVjdGlv biBkZWZhdWx0OworIENSRUFURSBVU0VSICcnQGxvY2FsaG9zdCBJREVOVElGSUVEIEJZICdwYXNz JzsKKy1jb25uZWN0KGFub255bW91c191c2VyX2NvbiwgbG9jYWxob3N0LCAnJywgcGFzcyk7Cisr Y29ubmVjdChhbm9ueW1vdXNfdXNlcl9jb24sIGxvY2FsaG9zdCwgJyAnLCBwYXNzKTsKKyBTRUxF Q1QgQ1VSUkVOVF9VU0VSKCk7CisgZGlzY29ubmVjdCBhbm9ueW1vdXNfdXNlcl9jb247CisgY29u bmVjdGlvbiBkZWZhdWx0OworQEAgLTEyMSw3ICsxMjEsNyBAQCBEUk9QIFVTRVIgJydAbG9jYWxo b3N0OworIC0tZWNobyAjIENyZWF0ZSBhbm9ueW1vdXMgdXNlciAtIGV4cGxpY2l0IFVOTE9DSwor IGNvbm5lY3Rpb24gZGVmYXVsdDsKKyBDUkVBVEUgVVNFUiAnJ0Bsb2NhbGhvc3QgSURFTlRJRklF RCBCWSAncGFzcycgQUNDT1VOVCBVTkxPQ0s7CistY29ubmVjdChhbm9ueW1vdXNfdXNlcl9jb24s IGxvY2FsaG9zdCwgJycsIHBhc3MpOworK2Nvbm5lY3QoYW5vbnltb3VzX3VzZXJfY29uLCBsb2Nh bGhvc3QsICcgJywgcGFzcyk7CisgU0VMRUNUIENVUlJFTlRfVVNFUigpOworIGRpc2Nvbm5lY3Qg YW5vbnltb3VzX3VzZXJfY29uOworIGNvbm5lY3Rpb24gZGVmYXVsdDsKK0BAIC0xMzIsNyArMTMy LDcgQEAgY29ubmVjdGlvbiBkZWZhdWx0OworIENSRUFURSBVU0VSICcnQGxvY2FsaG9zdCBJREVO VElGSUVEIEJZICdwYXNzJyBBQ0NPVU5UIExPQ0s7CisgLS1yZXBsYWNlX3Jlc3VsdCAkTUFTVEVS X01ZU09DSyBNQVNURVJfU09DS0VUICRNQVNURVJfTVlQT1JUIE1BU1RFUl9QT1JUCisgLS1lcnJv ciBFUl9BQ0NPVU5UX0hBU19CRUVOX0xPQ0tFRAorLWNvbm5lY3QoYW5vbnltb3VzX3VzZXJfY29u LCBsb2NhbGhvc3QsICcnLCBwYXNzKTsKKytjb25uZWN0KGFub255bW91c191c2VyX2NvbiwgbG9j YWxob3N0LCAnICcsIHBhc3MpOworIGNvbm5lY3Rpb24gZGVmYXVsdDsKKyBEUk9QIFVTRVIgJydA bG9jYWxob3N0OworIAorQEAgLTE0Miw3ICsxNDIsNyBAQCBDUkVBVEUgVVNFUiAnJ0Bsb2NhbGhv c3QgSURFTlRJRklFRCBCWSAncGFzcyc7CisgQUxURVIgVVNFUiAnJ0Bsb2NhbGhvc3QgQUNDT1VO VCBMT0NLOworIC0tcmVwbGFjZV9yZXN1bHQgJE1BU1RFUl9NWVNPQ0sgTUFTVEVSX1NPQ0tFVCAk TUFTVEVSX01ZUE9SVCBNQVNURVJfUE9SVAorIC0tZXJyb3IgRVJfQUNDT1VOVF9IQVNfQkVFTl9M T0NLRUQKKy1jb25uZWN0KGFub255bW91c191c2VyX2NvbiwgbG9jYWxob3N0LCAnJywgcGFzcyk7 CisrY29ubmVjdChhbm9ueW1vdXNfdXNlcl9jb24sIGxvY2FsaG9zdCwgJyAnLCBwYXNzKTsKKyBj b25uZWN0aW9uIGRlZmF1bHQ7CisgRFJPUCBVU0VSICcnQGxvY2FsaG9zdDsKKyAKK0BAIC0xNTAs NyArMTUwLDcgQEAgRFJPUCBVU0VSICcnQGxvY2FsaG9zdDsKKyBjb25uZWN0aW9uIGRlZmF1bHQ7 CisgQ1JFQVRFIFVTRVIgJydAbG9jYWxob3N0IElERU5USUZJRUQgQlkgJ3Bhc3MnIEFDQ09VTlQg TE9DSzsKKyBBTFRFUiBVU0VSICcnQGxvY2FsaG9zdCBBQ0NPVU5UIFVOTE9DSzsKKy1jb25uZWN0 KGFub255bW91c191c2VyX2NvbiwgbG9jYWxob3N0LCAnJywgcGFzcyk7CisrY29ubmVjdChhbm9u eW1vdXNfdXNlcl9jb24sIGxvY2FsaG9zdCwgJyAnLCBwYXNzKTsKKyBTRUxFQ1QgQ1VSUkVOVF9V U0VSKCk7CisgZGlzY29ubmVjdCBhbm9ueW1vdXNfdXNlcl9jb247CisgY29ubmVjdGlvbiBkZWZh dWx0OworQEAgLTE3MCw3ICsxNzAsNyBAQCBjb25uZWN0aW9uIGRlZmF1bHQ7CisgQ1JFQVRFIHVz ZXIgJydAbG9jYWxob3N0IElERU5USUZJRUQgQlkgJ3Bhc3MnOworIENSRUFURSBVU0VSICd1bmxv Y2tlZF91c2VyJ0Bsb2NhbGhvc3QgSURFTlRJRklFRCBCWSAncGFzcyc7CisgCistY29ubmVjdChh bm9ueW1vdXNfdXNlcl9jb24sIGxvY2FsaG9zdCwgJycsIHBhc3MpOworK2Nvbm5lY3QoYW5vbnlt b3VzX3VzZXJfY29uLCBsb2NhbGhvc3QsICcgJywgcGFzcyk7CisgLS1lcnJvciBFUl9UQUJMRUFD Q0VTU19ERU5JRURfRVJST1IKKyBVUERBVEUgbXlzcWwudXNlciBTRVQgYWNjb3VudF9sb2NrZWQ9 J1knCisgICBXSEVSRSB1c2VyPSd1bmxvY2tlZF91c2VyJyBhbmQgaG9zdCA9ICdsb2NhbGhvc3Qn OworLS0gCisyLjI3LjAKKwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9teXNxbDgvcGF0Y2hlcy8wMDA1 LUFkZC1MaWJyZVNTTC1zdXBwb3J0LnBhdGNoIGIvc3JjcGtncy9teXNxbDgvcGF0Y2hlcy8wMDA1 LUFkZC1MaWJyZVNTTC1zdXBwb3J0LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw MDAwMDAwMDAwLi5lMmE5NDQwMzIzZAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbXlzcWw4 L3BhdGNoZXMvMDAwNS1BZGQtTGlicmVTU0wtc3VwcG9ydC5wYXRjaApAQCAtMCwwICsxLDM1NiBA QAorRnJvbSA0YWFkZmY3YjA4ZjZhNjkxNjBhNDRjMTc0MmQ1YTEyZmI1YWJjMDU5IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQorRnJvbTogVGhvbWFzIERldXRzY2htYW5uIDx3aGlzc2lAZ2VudG9v Lm9yZz4KK0RhdGU6IFRodSwgMzAgQXByIDIwMjAgMjA6MDE6NDggKzAyMDAKK1N1YmplY3Q6IFtQ QVRDSCA1LzVdIEFkZCBMaWJyZVNTTCBzdXBwb3J0CisKK1NpZ25lZC1vZmYtYnk6IFRob21hcyBE ZXV0c2NobWFubiA8d2hpc3NpQGdlbnRvby5vcmc+CistLS0KKyBjbWFrZS9zc2wuY21ha2UgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNSArKystLQorIG15c3lzL215X21kNS5jYyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyICsrCisgLi4uL2JpbmRpbmdzL3hjb20v eGNvbS94Y29tX3NzbF90cmFuc3BvcnQuY2MgIHwgIDYgKysrKystCisgcGx1Z2luL3gvY2xpZW50 L3hjb25uZWN0aW9uX2ltcGwuY2MgICAgICAgICAgIHwgIDQgKysrKworIHJvdXRlci9zcmMvaHR0 cC9zcmMvdGxzX2NsaWVudF9jb250ZXh0LmNjICAgICB8ICAyICstCisgcm91dGVyL3NyYy9odHRw L3NyYy90bHNfY29udGV4dC5jYyAgICAgICAgICAgIHwgIDkgKysrKysrLS0KKyByb3V0ZXIvc3Jj L2h0dHAvc3JjL3Rsc19zZXJ2ZXJfY29udGV4dC5jYyAgICAgfCAgMyArKy0KKyBzcWwtY29tbW9u L2NsaWVudC5jYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMiArKworIHNxbC9teXNxbGQu Y2MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsrKy0KKyBzcWwvc3lzX3Zh cnMuY2MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAyMSArKysrKysrKysrKysrKysr Ky0tCisgdmlvL3Zpb3NzbC5jYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDgg KysrLS0tLQorIHZpby92aW9zc2xmYWN0b3JpZXMuY2MgICAgICAgICAgICAgICAgICAgICAgICB8 ICAyICsrCisgMTIgZmlsZXMgY2hhbmdlZCwgNTQgaW5zZXJ0aW9ucygrKSwgMTQgZGVsZXRpb25z KC0pCisKK2RpZmYgLS1naXQgY21ha2Uvc3NsLmNtYWtlIGNtYWtlL3NzbC5jbWFrZQoraW5kZXgg NTJmZWFkZWFhLi4zYjgzMzI2OTUgMTAwNjQ0CistLS0gY21ha2Uvc3NsLmNtYWtlCisrKysgY21h a2Uvc3NsLmNtYWtlCitAQCAtMjIyLDEzICsyMjIsMTQgQEAgTUFDUk8gKE1ZU1FMX0NIRUNLX1NT TCkKKyAgICAgICAgIE9QRU5TU0xfRklYX1ZFUlNJT04gIiR7T1BFTlNTTF9WRVJTSU9OX05VTUJF Un0iCisgICAgICAgICApCisgICAgIEVORElGKCkKKy0gICAgSUYoIiR7T1BFTlNTTF9NQUpPUl9W RVJTSU9OfS4ke09QRU5TU0xfTUlOT1JfVkVSU0lPTn0uJHtPUEVOU1NMX0ZJWF9WRVJTSU9OfSIg VkVSU0lPTl9HUkVBVEVSICIxLjEuMCIpCisrICAgIENIRUNLX1NZTUJPTF9FWElTVFMoVExTMV8z X1ZFUlNJT04gIm9wZW5zc2wvdGxzMS5oIiBIQVZFX1RMUzFfM19WRVJTSU9OKQorKyAgICBJRihI QVZFX1RMUzFfM19WRVJTSU9OKQorICAgICAgICBBRERfREVGSU5JVElPTlMoLURIQVZFX1RMU3Yx MykKKyAgICAgRU5ESUYoKQorICAgICBJRihPUEVOU1NMX0lOQ0xVREVfRElSIEFORAorICAgICAg ICBPUEVOU1NMX0xJQlJBUlkgICBBTkQKKyAgICAgICAgQ1JZUFRPX0xJQlJBUlkgICAgICBBTkQK Ky0gICAgICAgT1BFTlNTTF9NQUpPUl9WRVJTSU9OIFNUUkVRVUFMICIxIgorKyAgICAgICBPUEVO U1NMX01BSk9SX1ZFUlNJT04gVkVSU0lPTl9HUkVBVEVSX0VRVUFMICIxIgorICAgICAgICkKKyAg ICAgICBTRVQoT1BFTlNTTF9GT1VORCBUUlVFKQorICAgICAgIEZJTkRfUFJPR1JBTShPUEVOU1NM X0VYRUNVVEFCTEUgb3BlbnNzbAorZGlmZiAtLWdpdCBteXN5cy9teV9tZDUuY2MgbXlzeXMvbXlf bWQ1LmNjCitpbmRleCBkZWE5OTdiMjUuLjUzMTY5NjMyOSAxMDA2NDQKKy0tLSBteXN5cy9teV9t ZDUuY2MKKysrKyBteXN5cy9teV9tZDUuY2MKK0BAIC01Niw3ICs1Niw5IEBAIHN0YXRpYyB2b2lk IG15X21kNV9oYXNoKHVuc2lnbmVkIGNoYXIgKmRpZ2VzdCwgdW5zaWduZWQgY29uc3QgY2hhciAq YnVmLAorIGludCBjb21wdXRlX21kNV9oYXNoKGNoYXIgKmRpZ2VzdCwgY29uc3QgY2hhciAqYnVm LCBpbnQgbGVuKSB7CisgICBpbnQgcmV0dmFsID0gMDsKKyAgIGludCBmaXBzX21vZGUgPSAwOwor KyNpZm5kZWYgTElCUkVTU0xfVkVSU0lPTl9OVU1CRVIKKyAgIGZpcHNfbW9kZSA9IEZJUFNfbW9k ZSgpOworKyNlbmRpZgorICAgLyogSWYgZmlwcyBtb2RlIGlzIE9OL1NUUklDVCByZXN0cmljdGVk IG1ldGhvZCBjYWxscyB3aWxsIHJlc3VsdCBpbnRvIGFib3J0LAorICAgICogc2tpcHBpbmcgY2Fs bC4gKi8KKyAgIGlmIChmaXBzX21vZGUgPT0gMCkgeworZGlmZiAtLWdpdCBwbHVnaW4vZ3JvdXBf cmVwbGljYXRpb24vbGlibXlzcWxnY3Mvc3JjL2JpbmRpbmdzL3hjb20veGNvbS94Y29tX3NzbF90 cmFuc3BvcnQuY2MgcGx1Z2luL2dyb3VwX3JlcGxpY2F0aW9uL2xpYm15c3FsZ2NzL3NyYy9iaW5k aW5ncy94Y29tL3hjb20veGNvbV9zc2xfdHJhbnNwb3J0LmNjCitpbmRleCA4YmY2M2NlMTQuLjAy ZjkxYjQ0ZSAxMDA2NDQKKy0tLSBwbHVnaW4vZ3JvdXBfcmVwbGljYXRpb24vbGlibXlzcWxnY3Mv c3JjL2JpbmRpbmdzL3hjb20veGNvbS94Y29tX3NzbF90cmFuc3BvcnQuY2MKKysrKyBwbHVnaW4v Z3JvdXBfcmVwbGljYXRpb24vbGlibXlzcWxnY3Mvc3JjL2JpbmRpbmdzL3hjb20veGNvbS94Y29t X3NzbF90cmFuc3BvcnQuY2MKK0BAIC0zMjUsNiArMzI1LDcgQEAgZXJyb3I6CisgICByZXR1cm4g MTsKKyB9CisgCisrI2lmbmRlZiBMSUJSRVNTTF9WRVJTSU9OX05VTUJFUgorICNkZWZpbmUgT1BF TlNTTF9FUlJPUl9MRU5HVEggNTEyCisgc3RhdGljIGludCBjb25maWd1cmVfc3NsX2ZpcHNfbW9k ZShjb25zdCB1aW50IGZpcHNfbW9kZSkgeworICAgaW50IHJjID0gLTE7CitAQCAtMzQ4LDYgKzM0 OSw3IEBAIHN0YXRpYyBpbnQgY29uZmlndXJlX3NzbF9maXBzX21vZGUoY29uc3QgdWludCBmaXBz X21vZGUpIHsKKyBFWElUOgorICAgcmV0dXJuIHJjOworIH0KKysjZW5kaWYKKyAKKyBzdGF0aWMg aW50IGNvbmZpZ3VyZV9zc2xfY2EoU1NMX0NUWCAqc3NsX2N0eCwgY29uc3QgY2hhciAqY2FfZmls ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqY2FfcGF0aCkgewor QEAgLTU0NCwxMCArNTQ2LDEyIEBAIGludCB4Y29tX2luaXRfc3NsKGNvbnN0IGNoYXIgKnNlcnZl cl9rZXlfZmlsZSwgY29uc3QgY2hhciAqc2VydmVyX2NlcnRfZmlsZSwKKyAgIGludCB2ZXJpZnlf c2VydmVyID0gU1NMX1ZFUklGWV9OT05FOworICAgaW50IHZlcmlmeV9jbGllbnQgPSBTU0xfVkVS SUZZX05PTkU7CisgCisrI2lmbmRlZiBMSUJSRVNTTF9WRVJTSU9OX05VTUJFUgorICAgaWYgKGNv bmZpZ3VyZV9zc2xfZmlwc19tb2RlKHNzbF9maXBzX21vZGUpICE9IDEpIHsKKyAgICAgR19FUlJP UigiRXJyb3Igc2V0dGluZyB0aGUgc3NsIGZpcHMgbW9kZSIpOworICAgICBnb3RvIGVycm9yOwor ICAgfQorKyNlbmRpZgorIAorICAgU1NMX2xpYnJhcnlfaW5pdCgpOworICAgU1NMX2xvYWRfZXJy b3Jfc3RyaW5ncygpOworQEAgLTYxMSw3ICs2MTUsNyBAQCBlcnJvcjoKKyB2b2lkIHhjb21fY2xl YW51cF9zc2woKSB7CisgICBpZiAoIXhjb21fdXNlX3NzbCgpKSByZXR1cm47CisgCistI2lmIE9Q RU5TU0xfVkVSU0lPTl9OVU1CRVIgPCAweDEwMTAwMDAwTAorKyNpZiBPUEVOU1NMX1ZFUlNJT05f TlVNQkVSIDwgMHgxMDEwMDAwMEwgfHwgZGVmaW5lZChMSUJSRVNTTF9WRVJTSU9OX05VTUJFUikK KyAgIEVSUl9yZW1vdmVfdGhyZWFkX3N0YXRlKDApOworICNlbmRpZiAvKiBPUEVOU1NMX1ZFUlNJ T05fTlVNQkVSIDwgMHgxMDEwMDAwMEwgKi8KKyB9CitkaWZmIC0tZ2l0IHBsdWdpbi94L2NsaWVu dC94Y29ubmVjdGlvbl9pbXBsLmNjIHBsdWdpbi94L2NsaWVudC94Y29ubmVjdGlvbl9pbXBsLmNj CitpbmRleCAxM2JjNjc5NGUuLjUyMjMxNjlkYiAxMDA2NDQKKy0tLSBwbHVnaW4veC9jbGllbnQv eGNvbm5lY3Rpb25faW1wbC5jYworKysrIHBsdWdpbi94L2NsaWVudC94Y29ubmVjdGlvbl9pbXBs LmNjCitAQCAtNDk4LDYgKzQ5OCw3IEBAIFhFcnJvciBDb25uZWN0aW9uX2ltcGw6OmdldF9zc2xf ZXJyb3IoY29uc3QgaW50IGVycm9yX2lkKSB7CisgICByZXR1cm4gWEVycm9yKENSX1NTTF9DT05O RUNUSU9OX0VSUk9SLCBidWZmZXIpOworIH0KKyAKKysjaWZuZGVmIExJQlJFU1NMX1ZFUlNJT05f TlVNQkVSCisgLyoqCisgICBTZXQgZmlwcyBtb2RlIGluIG9wZW5zc2wgbGlicmFyeSwKKyAgIFdo ZW4gd2Ugc2V0IGZpcHMgbW9kZSBPTi9TVFJJQ1QsIGl0IHdpbGwgcGVyZm9ybSBmb2xsb3dpbmcg b3BlcmF0aW9uczoKK0BAIC01MzcsNiArNTM4LDcgQEAgaW50IHNldF9maXBzX21vZGUoY29uc3Qg dWludDMyX3QgZmlwc19tb2RlLAorIEVYSVQ6CisgICByZXR1cm4gcmM7CisgfQorKyNlbmRpZgor IAorIFhFcnJvciBDb25uZWN0aW9uX2ltcGw6OmFjdGl2YXRlX3RscygpIHsKKyAgIGlmIChudWxs cHRyID09IG1fdmlvKSByZXR1cm4gZ2V0X3NvY2tldF9lcnJvcihTT0NLRVRfRUNPTk5SRVNFVCk7 CitAQCAtNTQ3LDEyICs1NDksMTQgQEAgWEVycm9yIENvbm5lY3Rpb25faW1wbDo6YWN0aXZhdGVf dGxzKCkgeworICAgaWYgKCFtX2NvbnRleHQtPm1fc3NsX2NvbmZpZy5pc19jb25maWd1cmVkKCkp CisgICAgIHJldHVybiBYRXJyb3J7Q1JfU1NMX0NPTk5FQ1RJT05fRVJST1IsIEVSX1RFWFRfVExT X05PVF9DT05GSUdVUkFURUQsIHRydWV9OworIAorKyNpZm5kZWYgTElCUkVTU0xfVkVSU0lPTl9O VU1CRVIKKyAgIGNoYXIgZXJyX3N0cmluZ1tPUEVOU1NMX0VSUk9SX0xFTkdUSF0gPSB7J1wwJ307 CisgICBpZiAoc2V0X2ZpcHNfbW9kZSgKKyAgICAgICAgICAgc3RhdGljX2Nhc3Q8dWludDMyX3Q+ KG1fY29udGV4dC0+bV9zc2xfY29uZmlnLm1fc3NsX2ZpcHNfbW9kZSksCisgICAgICAgICAgIGVy cl9zdHJpbmcpICE9IDEpIHsKKyAgICAgcmV0dXJuIFhFcnJvcntDUl9TU0xfQ09OTkVDVElPTl9F UlJPUiwgZXJyX3N0cmluZywgdHJ1ZX07CisgICB9CisrI2VuZGlmCisgICBhdXRvIHNzbF9jdHhf ZmxhZ3MgPSBwcm9jZXNzX3Rsc192ZXJzaW9uKAorICAgICAgIGRldGFpbHM6Om51bGxfd2hlbl9l bXB0eShtX2NvbnRleHQtPm1fc3NsX2NvbmZpZy5tX3Rsc192ZXJzaW9uKSk7CisgCitkaWZmIC0t Z2l0IHJvdXRlci9zcmMvaHR0cC9zcmMvdGxzX2NsaWVudF9jb250ZXh0LmNjIHJvdXRlci9zcmMv aHR0cC9zcmMvdGxzX2NsaWVudF9jb250ZXh0LmNjCitpbmRleCAyOTdjZWVlMzAuLjdjMTE1NzI4 OSAxMDA2NDQKKy0tLSByb3V0ZXIvc3JjL2h0dHAvc3JjL3Rsc19jbGllbnRfY29udGV4dC5jYwor KysrIHJvdXRlci9zcmMvaHR0cC9zcmMvdGxzX2NsaWVudF9jb250ZXh0LmNjCitAQCAtNTQsNyAr NTQsNyBAQCB2b2lkIFRsc0NsaWVudENvbnRleHQ6OnZlcmlmeShUbHNWZXJpZnkgdmVyaWZ5KSB7 CisgCisgdm9pZCBUbHNDbGllbnRDb250ZXh0OjpjaXBoZXJfc3VpdGVzKGNvbnN0IHN0ZDo6c3Ry aW5nICZjaXBoZXJzKSB7CisgLy8gVExTdjEuMyBjaXBoZXJzIGFyZSBjb250cm9sbGVkIHZpYSBT U0xfQ1RYX3NldF9jaXBoZXJzdWl0ZXMoKQorLSNpZiBPUEVOU1NMX1ZFUlNJT05fTlVNQkVSID49 IFJPVVRFUl9PUEVOU1NMX1ZFUlNJT04oMSwgMSwgMSkKKysjaWZkZWYgVExTMV8zX1ZFUlNJT04K KyAgIGlmICgxICE9IFNTTF9DVFhfc2V0X2NpcGhlcnN1aXRlcyhzc2xfY3R4Xy5nZXQoKSwgY2lw aGVycy5jX3N0cigpKSkgeworICAgICB0aHJvdyBUbHNFcnJvcigic2V0LWNpcGhlci1zdWl0ZXMi KTsKKyAgIH0KK2RpZmYgLS1naXQgcm91dGVyL3NyYy9odHRwL3NyYy90bHNfY29udGV4dC5jYyBy b3V0ZXIvc3JjL2h0dHAvc3JjL3Rsc19jb250ZXh0LmNjCitpbmRleCA2MGVkN2U2Y2EuLjM4OGVm OGYyOCAxMDA2NDQKKy0tLSByb3V0ZXIvc3JjL2h0dHAvc3JjL3Rsc19jb250ZXh0LmNjCisrKysg cm91dGVyL3NyYy9odHRwL3NyYy90bHNfY29udGV4dC5jYworQEAgLTkxLDcgKzkxLDcgQEAgc3Rh dGljIGludCBvMTF4X3ZlcnNpb24oVGxzVmVyc2lvbiB2ZXJzaW9uKSB7CisgICAgICAgcmV0dXJu IFRMUzFfMV9WRVJTSU9OOworICAgICBjYXNlIFRsc1ZlcnNpb246OlRMU18xXzI6CisgICAgICAg cmV0dXJuIFRMUzFfMl9WRVJTSU9OOworLSNpZiBPUEVOU1NMX1ZFUlNJT05fTlVNQkVSID49IFJP VVRFUl9PUEVOU1NMX1ZFUlNJT04oMSwgMSwgMSkKKysjaWZkZWYgVExTMV8zX1ZFUlNJT04KKyAg ICAgY2FzZSBUbHNWZXJzaW9uOjpUTFNfMV8zOgorICAgICAgIHJldHVybiBUTFMxXzNfVkVSU0lP TjsKKyAjZW5kaWYKK0BAIC0xMjAsOSArMTIwLDExIEBAIHZvaWQgVGxzQ29udGV4dDo6dmVyc2lv bl9yYW5nZShUbHNWZXJzaW9uIG1pbl92ZXJzaW9uLCBUbHNWZXJzaW9uIG1heF92ZXJzaW9uKSB7 CisgICBzd2l0Y2ggKG1pbl92ZXJzaW9uKSB7CisgICAgIGRlZmF1bHQ6CisgICAgICAgLy8gdW5r bm93biwgbGVhdmUgYWxsIGRpc2FibGVkCisrI2lmZGVmIFRMUzFfM19WRVJTSU9OCisgICAgICAg Ly8gZmFsbHRocm91Z2gKKyAgICAgY2FzZSBUbHNWZXJzaW9uOjpUTFNfMV8zOgorICAgICAgIG9w dHMgfD0gU1NMX09QX05PX1RMU3YxXzI7CisrI2VuZGlmCisgICAgICAgLy8gZmFsbHRocm91Z2gK KyAgICAgY2FzZSBUbHNWZXJzaW9uOjpUTFNfMV8yOgorICAgICAgIG9wdHMgfD0gU1NMX09QX05P X1RMU3YxXzE7CitAQCAtMTcwLDggKzE3MiwxMCBAQCBUbHNWZXJzaW9uIFRsc0NvbnRleHQ6Om1p bl92ZXJzaW9uKCkgY29uc3QgeworICAgICAgIHJldHVybiBUbHNWZXJzaW9uOjpUTFNfMV8xOwor ICAgICBjYXNlIFRMUzFfMl9WRVJTSU9OOgorICAgICAgIHJldHVybiBUbHNWZXJzaW9uOjpUTFNf MV8yOworKyNpZmRlZiBUTFMxXzNfVkVSU0lPTgorICAgICBjYXNlIFRMUzFfM19WRVJTSU9OOgor ICAgICAgIHJldHVybiBUbHNWZXJzaW9uOjpUTFNfMV8zOworKyNlbmRpZgorICAgICBjYXNlIDA6 CisgICAgICAgcmV0dXJuIFRsc1ZlcnNpb246OkFVVE87CisgICAgIGRlZmF1bHQ6CitAQCAtMjMw LDcgKzIzNCw4IEBAIFRsc0NvbnRleHQ6OkluZm9DYWxsYmFjayBUbHNDb250ZXh0OjppbmZvX2Nh bGxiYWNrKCkgY29uc3QgeworIH0KKyAKKyBpbnQgVGxzQ29udGV4dDo6c2VjdXJpdHlfbGV2ZWwo KSBjb25zdCB7CistI2lmIE9QRU5TU0xfVkVSU0lPTl9OVU1CRVIgPj0gUk9VVEVSX09QRU5TU0xf VkVSU0lPTigxLCAxLCAwKQorKyNpZiBPUEVOU1NMX1ZFUlNJT05fTlVNQkVSID49IFJPVVRFUl9P UEVOU1NMX1ZFUlNJT04oMSwgMSwgMCkgJiYgXAorKyAgICAhZGVmaW5lZChMSUJSRVNTTF9WRVJT SU9OX05VTUJFUikKKyAgIHJldHVybiBTU0xfQ1RYX2dldF9zZWN1cml0eV9sZXZlbChzc2xfY3R4 Xy5nZXQoKSk7CisgI2Vsc2UKKyAgIHJldHVybiAwOworZGlmZiAtLWdpdCByb3V0ZXIvc3JjL2h0 dHAvc3JjL3Rsc19zZXJ2ZXJfY29udGV4dC5jYyByb3V0ZXIvc3JjL2h0dHAvc3JjL3Rsc19zZXJ2 ZXJfY29udGV4dC5jYworaW5kZXggMGY0NDcyNDE5Li43MDdkN2RlODYgMTAwNjQ0CistLS0gcm91 dGVyL3NyYy9odHRwL3NyYy90bHNfc2VydmVyX2NvbnRleHQuY2MKKysrKyByb3V0ZXIvc3JjL2h0 dHAvc3JjL3Rsc19zZXJ2ZXJfY29udGV4dC5jYworQEAgLTE2Nyw3ICsxNjcsOCBAQCB2b2lkIFRs c1NlcnZlckNvbnRleHQ6OmluaXRfdG1wX2RoKGNvbnN0IHN0ZDo6c3RyaW5nICZkaF9wYXJhbXMp IHsKKyAgICAgfQorIAorICAgfSBlbHNlIHsKKy0jaWYgT1BFTlNTTF9WRVJTSU9OX05VTUJFUiA+ PSBST1VURVJfT1BFTlNTTF9WRVJTSU9OKDEsIDEsIDApCisrI2lmIE9QRU5TU0xfVkVSU0lPTl9O VU1CRVIgPj0gUk9VVEVSX09QRU5TU0xfVkVSU0lPTigxLCAxLCAwKSAmJiBcCisrICAgICFkZWZp bmVkKExJQlJFU1NMX1ZFUlNJT05fTlVNQkVSKQorICAgICBkaDIwNDgucmVzZXQoREhfZ2V0XzIw NDhfMjU2KCkpOworICNlbHNlCisgICAgIC8qCitkaWZmIC0tZ2l0IHNxbC1jb21tb24vY2xpZW50 LmNjIHNxbC1jb21tb24vY2xpZW50LmNjCitpbmRleCBmZmIxMzZiNWIuLjhhMGM3YjgzNCAxMDA2 NDQKKy0tLSBzcWwtY29tbW9uL2NsaWVudC5jYworKysrIHNxbC1jb21tb24vY2xpZW50LmNjCitA QCAtNzc2Niw2ICs3NzY2LDcgQEAgaW50IFNURENBTEwgbXlzcWxfb3B0aW9ucyhNWVNRTCAqbXlz cWwsIGVudW0gbXlzcWxfb3B0aW9uIG9wdGlvbiwKKyAgICAgICAgIHJldHVybiAxOworICAgICAg IGJyZWFrOworICAgICBjYXNlIE1ZU1FMX09QVF9TU0xfRklQU19NT0RFOiB7CisrI2lmICFkZWZp bmVkKExJQlJFU1NMX1ZFUlNJT05fTlVNQkVSKQorICAgICAgIGNoYXIgc3NsX2Vycl9zdHJpbmdb T1BFTlNTTF9FUlJPUl9MRU5HVEhdID0geydcMCd9OworICAgICAgIEVOU1VSRV9FWFRFTlNJT05T X1BSRVNFTlQoJm15c3FsLT5vcHRpb25zKTsKKyAgICAgICBteXNxbC0+b3B0aW9ucy5leHRlbnNp b24tPnNzbF9maXBzX21vZGUgPSAqc3RhdGljX2Nhc3Q8Y29uc3QgdWludCAqPihhcmcpOworQEAg LTc3NzcsNiArNzc3OCw3IEBAIGludCBTVERDQUxMIG15c3FsX29wdGlvbnMoTVlTUUwgKm15c3Fs LCBlbnVtIG15c3FsX29wdGlvbiBvcHRpb24sCisgICAgICAgICAgICAgIlNldCBGaXBzIG1vZGUg T04vU1RSSUNUIGZhaWxlZCwgZGV0YWlsOiAnJXMnLiIsIHNzbF9lcnJfc3RyaW5nKTsKKyAgICAg ICAgIHJldHVybiAxOworICAgICAgIH0KKysjZW5kaWYKKyAgICAgfSBicmVhazsKKyAgICAgY2Fz ZSBNWVNRTF9PUFRfU1NMX01PREU6CisgICAgICAgRU5TVVJFX0VYVEVOU0lPTlNfUFJFU0VOVCgm bXlzcWwtPm9wdGlvbnMpOworZGlmZiAtLWdpdCBzcWwvbXlzcWxkLmNjIHNxbC9teXNxbGQuY2MK K2luZGV4IDY4MmU4ZDVhZS4uOTZhOTIyZDdhIDEwMDY0NAorLS0tIHNxbC9teXNxbGQuY2MKKysr KyBzcWwvbXlzcWxkLmNjCitAQCAtNTEwOSw3ICs1MTA5LDcgQEAgc3RhdGljIGludCBpbml0X3Ro cmVhZF9lbnZpcm9ubWVudCgpIHsKKyAKKyBzdGF0aWMgUFNJX21lbW9yeV9rZXkga2V5X21lbW9y eV9vcGVuc3NsID0gUFNJX05PVF9JTlNUUlVNRU5URUQ7CisgCistI2lmIE9QRU5TU0xfVkVSU0lP Tl9OVU1CRVIgPCAweDEwMTAwMDAwTAorKyNpZiBPUEVOU1NMX1ZFUlNJT05fTlVNQkVSIDwgMHgx MDEwMDAwMEwgfHwgZGVmaW5lZChMSUJSRVNTTF9WRVJTSU9OX05VTUJFUikKKyAjZGVmaW5lIEZJ TEVfTElORV9BUkdTCisgI2Vsc2UKKyAjZGVmaW5lIEZJTEVfTElORV9BUkdTICwgY29uc3QgY2hh ciAqLCBpbnQKK0BAIC01MTQzLDEyICs1MTQzLDE0IEBAIHN0YXRpYyB2b2lkIGluaXRfc3NsKCkg eworIH0KKyAKKyBzdGF0aWMgaW50IGluaXRfc3NsX2NvbW11bmljYXRpb24oKSB7CisrI2lmbmRl ZiBMSUJSRVNTTF9WRVJTSU9OX05VTUJFUgorICAgY2hhciBzc2xfZXJyX3N0cmluZ1tPUEVOU1NM X0VSUk9SX0xFTkdUSF0gPSB7J1wwJ307CisgICBpbnQgcmV0X2ZpcHNfbW9kZSA9IHNldF9maXBz X21vZGUob3B0X3NzbF9maXBzX21vZGUsIHNzbF9lcnJfc3RyaW5nKTsKKyAgIGlmIChyZXRfZmlw c19tb2RlICE9IDEpIHsKKyAgICAgTG9nRXJyKEVSUk9SX0xFVkVMLCBFUl9TU0xfRklQU19NT0RF X0VSUk9SLCBzc2xfZXJyX3N0cmluZyk7CisgICAgIHJldHVybiAxOworICAgfQorKyNlbmRpZgor ICAgaWYgKFRMU19jaGFubmVsOjpzaW5nbGV0b25faW5pdCgmbXlzcWxfbWFpbiwgbXlzcWxfbWFp bl9jaGFubmVsLCBvcHRfdXNlX3NzbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgJnNlcnZlcl9tYWluX2NhbGxiYWNrLCBvcHRfaW5pdGlhbGl6ZSkpCisgICAgIHJldHVybiAx OworZGlmZiAtLWdpdCBzcWwvc3lzX3ZhcnMuY2Mgc3FsL3N5c192YXJzLmNjCitpbmRleCA1YjFh ODJkMmYuLjRlMmRmZjg2NSAxMDA2NDQKKy0tLSBzcWwvc3lzX3ZhcnMuY2MKKysrKyBzcWwvc3lz X3ZhcnMuY2MKK0BAIC00NDc0LDYgKzQ0NzQsNyBAQCBzdGF0aWMgU3lzX3Zhcl91bG9uZyBTeXNf bWF4X2V4ZWN1dGlvbl90aW1lKAorICAgICBISU5UX1VQREFURUFCTEUgU0VTU0lPTl9WQVIobWF4 X2V4ZWN1dGlvbl90aW1lKSwgQ01EX0xJTkUoUkVRVUlSRURfQVJHKSwKKyAgICAgVkFMSURfUkFO R0UoMCwgVUxPTkdfTUFYKSwgREVGQVVMVCgwKSwgQkxPQ0tfU0laRSgxKSk7CisgCisrI2lmbmRl ZiBMSUJSRVNTTF9WRVJTSU9OX05VTUJFUgorIHN0YXRpYyBib29sIHVwZGF0ZV9maXBzX21vZGUo c3lzX3ZhciAqLCBUSEQgKiwgZW51bV92YXJfdHlwZSkgeworICAgY2hhciBzc2xfZXJyX3N0cmlu Z1tPUEVOU1NMX0VSUk9SX0xFTkdUSF0gPSB7J1wwJ307CisgICBpZiAoc2V0X2ZpcHNfbW9kZShv cHRfc3NsX2ZpcHNfbW9kZSwgc3NsX2Vycl9zdHJpbmcpICE9IDEpIHsKK0BAIC00NDg0LDE1ICs0 NDg1LDMxIEBAIHN0YXRpYyBib29sIHVwZGF0ZV9maXBzX21vZGUoc3lzX3ZhciAqLCBUSEQgKiwg ZW51bV92YXJfdHlwZSkgeworICAgICByZXR1cm4gZmFsc2U7CisgICB9CisgfQorKyNlbmRpZgor KworKyNpZiBkZWZpbmVkKExJQlJFU1NMX1ZFUlNJT05fTlVNQkVSKQorK3N0YXRpYyBjb25zdCBj aGFyICpzc2xfZmlwc19tb2RlX25hbWVzW10gPSB7Ik9GRiIsIDB9OworKyNlbHNlCisrc3RhdGlj IGNvbnN0IGNoYXIgKnNzbF9maXBzX21vZGVfbmFtZXNbXSA9IHsiT0ZGIiwgIk9OIiwgIlNUUklD VCIsIDB9OworKyNlbmRpZgorIAorLXN0YXRpYyBjb25zdCBjaGFyICpzc2xfZmlwc19tb2RlX25h bWVzW10gPSB7Ik9GRiIsICJPTiIsICJTVFJJQ1QiLCBudWxscHRyfTsKKyBzdGF0aWMgU3lzX3Zh cl9lbnVtIFN5c19zc2xfZmlwc19tb2RlKAorICAgICAic3NsX2ZpcHNfbW9kZSIsCisgICAgICJT U0wgRklQUyBtb2RlIChhcHBsaWVzIG9ubHkgZm9yIE9wZW5TU0wpOyAiCisrI2lmbmRlZiBMSUJS RVNTTF9WRVJTSU9OX05VTUJFUgorICAgICAicGVybWl0dGVkIHZhbHVlcyBhcmU6IE9GRiwgT04s IFNUUklDVCIsCisrI2Vsc2UKKysgICAgInBlcm1pdHRlZCB2YWx1ZXMgYXJlOiBPRkYiLAorKyNl bmRpZgorICAgICBHTE9CQUxfVkFSKG9wdF9zc2xfZmlwc19tb2RlKSwgQ01EX0xJTkUoUkVRVUlS RURfQVJHLCBPUFRfU1NMX0ZJUFNfTU9ERSksCisgICAgIHNzbF9maXBzX21vZGVfbmFtZXMsIERF RkFVTFQoMCksIE5PX01VVEVYX0dVQVJELCBOT1RfSU5fQklOTE9HLAorLSAgICBPTl9DSEVDSyhu dWxscHRyKSwgT05fVVBEQVRFKHVwZGF0ZV9maXBzX21vZGUpLCBudWxscHRyKTsKKysgICAgT05f Q0hFQ0soTlVMTCksCisrI2lmbmRlZiBMSUJSRVNTTF9WRVJTSU9OX05VTUJFUgorKyAgICBPTl9V UERBVEUodXBkYXRlX2ZpcHNfbW9kZSksCisrI2Vsc2UKKysgICAgT05fVVBEQVRFKE5VTEwpLAor KyNlbmRpZgorKyAgICBOVUxMKTsKKyAKKyBzdGF0aWMgU3lzX3Zhcl9ib29sIFN5c19hdXRvX2dl bmVyYXRlX2NlcnRzKAorICAgICAiYXV0b19nZW5lcmF0ZV9jZXJ0cyIsCitkaWZmIC0tZ2l0IHZp by92aW9zc2wuY2MgdmlvL3Zpb3NzbC5jYworaW5kZXggMGU5NTk0NzQxLi4zYTU4OWM2NGIgMTAw NjQ0CistLS0gdmlvL3Zpb3NzbC5jYworKysrIHZpby92aW9zc2wuY2MKK0BAIC00NSw3ICs0NSw3 IEBACisgICBCSU9fc2V0X2NhbGxiYWNrX2V4IHdhcyBhZGRlZCBpbiBvcGVuU1NMIDEuMS4xCisg ICBGb3Igb2xkZXIgb3BlblNTTCwgdXNlIHRoZSBkZXByZWNhdGVkIEJJT19zZXRfY2FsbGJhY2su CisgKi8KKy0jaWYgT1BFTlNTTF9WRVJTSU9OX05VTUJFUiA+PSAweDEwMTAxMDAwTAorKyNpZiBP UEVOU1NMX1ZFUlNJT05fTlVNQkVSID49IDB4MTAxMDEwMDBMICYmICFkZWZpbmVkKExJQlJFU1NM X1ZFUlNJT05fTlVNQkVSKQorICNkZWZpbmUgSEFWRV9CSU9fU0VUX0NBTExCQUNLX0VYCisgI2Vu ZGlmCisgCitAQCAtNjM0LDggKzYzNCw4IEBAIHN0YXRpYyBpbnQgc3NsX2RvKHN0cnVjdCBzdF9W aW9TU0xGZCAqcHRyLCBWaW8gKnZpbywgbG9uZyB0aW1lb3V0LAorIAorICNpZiAhZGVmaW5lZChE QlVHX09GRikKKyAgICAgeworLSAgICAgIFNUQUNLX09GKFNTTF9DT01QKSAqc3NsX2NvbXBfbWV0 aG9kcyA9IG51bGxwdHI7CistICAgICAgc3NsX2NvbXBfbWV0aG9kcyA9IFNTTF9DT01QX2dldF9j b21wcmVzc2lvbl9tZXRob2RzKCk7CisrICAgICAgU1RBQ0tfT0YoU1NMX0NPTVApICpzc2xfY29t cF9tZXRob2RzID0gTlVMTDsKKysgICAgICBzc2xfY29tcF9tZXRob2RzID0gKFNUQUNLX09GKFNT TF9DT01QKSAqKVNTTF9DT01QX2dldF9jb21wcmVzc2lvbl9tZXRob2RzKCk7CisgICAgICAgbiA9 IHNrX1NTTF9DT01QX251bShzc2xfY29tcF9tZXRob2RzKTsKKyAgICAgICBEQlVHX1BSSU5UKCJp bmZvIiwgKCJBdmFpbGFibGUgY29tcHJlc3Npb24gbWV0aG9kczpcbiIpKTsKKyAgICAgICBpZiAo biA9PSAwKQorQEAgLTY0Myw3ICs2NDMsNyBAQCBzdGF0aWMgaW50IHNzbF9kbyhzdHJ1Y3Qgc3Rf VmlvU1NMRmQgKnB0ciwgVmlvICp2aW8sIGxvbmcgdGltZW91dCwKKyAgICAgICBlbHNlCisgICAg ICAgICBmb3IgKGogPSAwOyBqIDwgbjsgaisrKSB7CisgICAgICAgICAgIFNTTF9DT01QICpjID0g c2tfU1NMX0NPTVBfdmFsdWUoc3NsX2NvbXBfbWV0aG9kcywgaik7CistI2lmIE9QRU5TU0xfVkVS U0lPTl9OVU1CRVIgPCAweDEwMTAwMDAwTAorKyNpZiBPUEVOU1NMX1ZFUlNJT05fTlVNQkVSIDwg MHgxMDEwMDAwMEwgfHwgZGVmaW5lZChMSUJSRVNTTF9WRVJTSU9OX05VTUJFUikKKyAgICAgICAg ICAgREJVR19QUklOVCgiaW5mbyIsICgiICAlZDogJXNcbiIsIGMtPmlkLCBjLT5uYW1lKSk7Cisg I2Vsc2UgIC8qIE9QRU5TU0xfVkVSU0lPTl9OVU1CRVIgPCAweDEwMTAwMDAwTCAqLworICAgICAg ICAgICBEQlVHX1BSSU5UKCJpbmZvIiwKK2RpZmYgLS1naXQgdmlvL3Zpb3NzbGZhY3Rvcmllcy5j YyB2aW8vdmlvc3NsZmFjdG9yaWVzLmNjCitpbmRleCA2YzA0MDI5Y2MuLmYyNzIyMTQ2MyAxMDA2 NDQKKy0tLSB2aW8vdmlvc3NsZmFjdG9yaWVzLmNjCisrKysgdmlvL3Zpb3NzbGZhY3Rvcmllcy5j YworQEAgLTQ3Myw2ICs0NzMsNyBAQCB2b2lkIHNzbF9zdGFydCgpIHsKKyAgIH0KKyB9CisgCisr I2lmbmRlZiBMSUJSRVNTTF9WRVJTSU9OX05VTUJFUgorIC8qKgorICAgU2V0IGZpcHMgbW9kZSBp biBvcGVuc3NsIGxpYnJhcnksCisgICBXaGVuIHdlIHNldCBmaXBzIG1vZGUgT04vU1RSSUNULCBp dCB3aWxsIHBlcmZvcm0gZm9sbG93aW5nIG9wZXJhdGlvbnM6CitAQCAtNTI2LDYgKzUyNyw3IEBA IEVYSVQ6CisgICBAcmV0dXJucyBvcGVuc3NsIGN1cnJlbnQgZmlwcyBtb2RlCisgKi8KKyB1aW50 IGdldF9maXBzX21vZGUoKSB7IHJldHVybiBGSVBTX21vZGUoKTsgfQorKyNlbmRpZgorIAorIGxv bmcgcHJvY2Vzc190bHNfdmVyc2lvbihjb25zdCBjaGFyICp0bHNfdmVyc2lvbikgeworICAgY29u c3QgY2hhciAqc2VwYXJhdG9yID0gIiwiOworLS0gCisyLjI3LjAKKwpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9teXNxbDgvdGVtcGxhdGUgYi9zcmNwa2dzL215c3FsOC90ZW1wbGF0ZQpuZXcgZmlsZSBt b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uNWJjMzA0ZDg2ZTcKLS0tIC9kZXYvbnVsbAor KysgYi9zcmNwa2dzL215c3FsOC90ZW1wbGF0ZQpAQCAtMCwwICsxLDExNyBAQAorIyBUZW1wbGF0 ZSBmaWxlIGZvciAnbXlzcWw4JworcGtnbmFtZT1teXNxbDgKK3ZlcnNpb249OC4wLjIxCityZXZp c2lvbj0xCit3cmtzcmM9Im15c3FsLSR7dmVyc2lvbn0iCitidWlsZF9zdHlsZT1jbWFrZQorYnVp bGRfaGVscGVyPXFlbXUKK2NvbmZpZ3VyZV9hcmdzPSIKKwktRElOU1RBTExfSU5GT0RJUj1zaGFy ZS9teXNxbC9kb2NzCisJLURJTlNUQUxMX01BTkRJUj1zaGFyZS9tYW4KKwktRElOU1RBTExfUExV R0lORElSPWxpYi9teXNxbC9wbHVnaW4KKwktRElOU1RBTExfU0NSSVBURElSPWJpbgorCS1ESU5T VEFMTF9JTkNMVURFRElSPWluY2x1ZGUvbXlzcWwKKwktRElOU1RBTExfRE9DUkVBRE1FRElSPXNo YXJlL215c3FsCisJLURJTlNUQUxMX1NVUFBPUlRGSUxFU0RJUj1zaGFyZS9teXNxbAorCS1ESU5T VEFMTF9NWVNRTFNIQVJFRElSPXNoYXJlL215c3FsCisJLURJTlNUQUxMX0RPQ0RJUj1zaGFyZS9t eXNxbC9kb2NzCisJLURJTlNUQUxMX1NIQVJFRElSPXNoYXJlL215c3FsCisJLURTWVNDT05GRElS PS9ldGMvbXlzcWwKKwktRE1ZU1FMX0RBVEFESVI9L3Zhci9saWIvbXlzcWwKKwktRE1ZU1FMX1VO SVhfQUREUj0vcnVuL215c3FsZC9teXNxbGQuc29jaworCS1EREVGQVVMVF9DSEFSU0VUPXV0Zjht YjQgICAgICAgICAgICAgICAjIGRlZmF1bHQKKwktRERFRkFVTFRfQ09MTEFUSU9OPXV0ZjhtYjRf MDkwMF9haV9jaSAgIyBkZWZhdWx0CisJLURFTkFCTEVEX0xPQ0FMX0lORklMRT1PTgorCS1EV0lU SF9aTElCPXN5c3RlbQorCS1EV0lUSF9aU1REPXN5c3RlbQorCS1EV0lUSF9MWjQ9c3lzdGVtCisJ LURXSVRIX0xaTUE9c3lzdGVtCisJLURXSVRIX1NTTD1zeXN0ZW0KKwktRFdJVEhfU1NMPXN5c3Rl bQorCS1EV0lUSF9MSUJXUkFQPU9GRgorCS1EV0lUSE9VVF9FWEFNUExFX1NUT1JBR0VfRU5HSU5F PTEKKwktRFdJVEhPVVRfQVJDSElWRV9TVE9SQUdFX0VOR0lORT0xCisJLURXSVRIT1VUX0JMQUNL SE9MRV9TVE9SQUdFX0VOR0lORT0xCisJLURXSVRIT1VUX0ZFREVSQVRFRF9TVE9SQUdFX0VOR0lO RT0xCisJLURXSVRIT1VUX05EQl9TVE9SQUdFX0VOR0lORT0xCisiCitob3N0bWFrZWRlcGVuZHM9 InBlcmwgYmlzb24gbmN1cnNlcy1kZXZlbCIKK21ha2VkZXBlbmRzPSJ6bGliLWRldmVsIGxpYnpz dGQtZGV2ZWwgbGlibHo0LWRldmVsIGxpYmx6bWEtZGV2ZWwgbGlicmVzc2wtZGV2ZWwKK3JlYWRs aW5lLWRldmVsIGJvb3N0LWRldmVsIGxpYmV2ZW50LWRldmVsIgorZGVwZW5kcz0ibXlzcWw4LWNs aWVudCIKK2NvbmZfZmlsZXM9Ii9ldGMvbXlzcWwvbXkuY25mIgorc2hvcnRfZGVzYz0iV29ybGQn cyBtb3N0IHBvcHVsYXIgb3BlbiBzb3VyY2UgZGF0YWJhc2UiCittYWludGFpbmVyPSJSaWVuIE1h ZXJ0ZW5zIDxyaWVuLm1hZXJ0ZW5zQHBvc3Rlby5iZT4iCitsaWNlbnNlPSJHUEwtMi4wLW9ubHki Citob21lcGFnZT0iaHR0cHM6Ly93d3cubXlzcWwuY29tL3Byb2R1Y3RzL2NvbW11bml0eS8iCitk aXN0ZmlsZXM9Imh0dHA6Ly9kZXYubXlzcWwuY29tL2dldC9Eb3dubG9hZHMvTXlTUUwtJHt2ZXJz aW9uJS4qfS9teXNxbC0ke3ZlcnNpb259LnRhci5neiIKK2NoZWNrc3VtPWFkNTY1MzVlZWUwMzk0 M2FkZWVmNWYxODhlMWRmN2EzOTcyOWE3NTU3ZDhiMjE3OWIxYWZmZDk5NGI5OTAwMzQKK3JlcGxh Y2VzPSJteXNxbD49MCIKK3Byb3ZpZGVzPSJteXNxbC0ke3ZlcnNpb259XyR7cmV2aXNpb259Igor c3lzdGVtX2FjY291bnRzPSJteXNxbCIKK215c3FsX2hvbWVkaXI9Ii92YXIvbGliL215c3FsIgor bGliMzJkaXNhYmxlZD15ZXMKK25vY3Jvc3M9ImNyb3NzIGNvbXBpbGluZyBzaG91bGQgYmUgcG9z c2libGUgYnV0IEkgZ2F2ZSB1cCIKKworCitwb3N0X2luc3RhbGwoKSB7CisJIyBSZW1vdmUgdW5u ZWVkZWQgc3R1ZmYuCisJcm0gLXJmICR7REVTVERJUn0vdXNyL3tzcWwtYmVuY2gsbXlzcWwtdGVz dCxkYXRhfQorCXJtIC1mICR7REVTVERJUn0vdXNyL3NoYXJlL21hbi9tYW4xL215c3FsLXRlc3Qt cnVuLnBsLjEKKworCSMgQ29uZmlndXJhdGlvbiBmaWxlLgorCXZpbnN0YWxsICR7RklMRVNESVJ9 L215LmNuZiA2NDQgZXRjL215c3FsCisKKwkjIHJ1bml0IHNlcnZpY2UKKwl2c3YgbXlzcWxkCit9 CisKK2xpYm15c3FsY2xpZW50OF9wYWNrYWdlKCkgeworCXNob3J0X2Rlc2MrPSIgLSBjbGllbnQg bGlicmFyeSIKKwlwcm92aWRlcz0ibGlibXlzcWxjbGllbnQtJHt2ZXJzaW9ufV8ke3JldmlzaW9u fSIKKwlyZXBsYWNlcz0ibGlibXlzcWxjbGllbnQ+PTAiCisJcGtnX2luc3RhbGwoKSB7CisJCXZt b3ZlICJ1c3IvbGliL2xpYm15c3FsY2xpZW50Ki5zby4qIgorCX0KK30KKworbGlibXlzcWxjbGll bnQ4LWRldmVsX3BhY2thZ2UoKSB7CisJZGVwZW5kcz0ibGlibXlzcWxjbGllbnQ4Pj0ke3ZlcnNp b259XyR7cmV2aXNpb259IgorCXByb3ZpZGVzPSJsaWJteXNxbGNsaWVudC1kZXZlbC0ke3ZlcnNp b259XyR7cmV2aXNpb259IgorCXJlcGxhY2VzPSJsaWJteXNxbGNsaWVudC1kZXZlbD49MCIKKwlz aG9ydF9kZXNjKz0iIC0gZGV2ZWxvcG1lbnQgZmlsZXMiCisJcGtnX2luc3RhbGwoKSB7CisJCXZt b3ZlIHVzci9iaW4vbXlzcWxfY29uZmlnCisJCXZtb3ZlIHVzci9zaGFyZS9tYW4vbWFuMS9teXNx bF9jb25maWcuMQorCQl2bW92ZSB1c3IvaW5jbHVkZQorCQl2bW92ZSAidXNyL2xpYi8qLmEiCisJ CXZtb3ZlICJ1c3IvbGliLyouc28iCisJfQorfQorCitteXNxbDgtY2xpZW50X3BhY2thZ2UoKSB7 CisJZGVwZW5kcz0icGVybCIKKwlwcm92aWRlcz0ibXlzcWwtY2xpZW50LSR7dmVyc2lvbn1fJHty ZXZpc2lvbn0iCisJcmVwbGFjZXM9Im15c3FsLWNsaWVudD49MCIKKwlzaG9ydF9kZXNjKz0iIC0g ZGF0YWJhc2UgY2xpZW50IGJpbmFyaWVzIgorCXBrZ19pbnN0YWxsKCkgeworCQlmb3IgZiBpbiBp bm5vY2hlY2tzdW0gaW5ub3RvcCBteWlzYW1fZnRkdW1wIG15c3FsIG15c3FsX2NsaWVudF90ZXN0 IFwKKwkJCW15c3FsX2NsaWVudF90ZXN0X2VtYmVkZGVkIG15c3FsZHVtcHNsb3cgbXlzcWxiaW5s b2cgXAorCQkJbXlzcWxfZmluZF9yb3dzIG15c3FsX2ZpeF9leHRlbnNpb25zIG15c3FsX3dhaXRw aWQgbXlzcWxhY2Nlc3MgXAorCQkJbXlzcWxhZG1pbiBteXNxbGFuYWx5emUgbXlzcWxidWcgbXlz cWxjaGVjayBteXNxbGR1bXAgXAorCQkJbXlzcWxpbXBvcnQgbXlzcWxvcHRpbWl6ZSBteXNxbHJl cGFpciBteXNxbHJlcG9ydCBteXNxbHNob3cgXAorCQkJbXlzcWxzbGFwIG15c3FsdGVzdF9lbWJl ZGRlZCBteXNxbG1hbmFnZXIgbXlzcWx0ZXN0IFwKKwkJCW15c3FsaG90Y29weSBteXNxbF91cGdy YWRlIG15c3FsX3phcDsgZG8KKwkJCWlmIFsgLWYgJHtERVNURElSfS91c3IvYmluLyR7Zn0gXTsg dGhlbgorCQkJCXZtb3ZlIHVzci9iaW4vJHtmfQorCQkJZWxpZiBbIC1mICR7REVTVERJUn0vdXNy L3NiaW4vJHtmfSBdOyB0aGVuCisJCQkJdm1vdmUgdXNyL3NiaW4vJHtmfQorCQkJZmkKKwkJCWlm IFsgLWYgJHtERVNURElSfS91c3Ivc2hhcmUvbWFuL21hbjEvJHtmfS4xIF07IHRoZW4KKwkJCQl2 bW92ZSB1c3Ivc2hhcmUvbWFuL21hbjEvJHtmfS4xCisJCQllbGlmIFsgLWYgJHtERVNURElSfS91 c3Ivc2hhcmUvbWFuL21hbjgvJHtmfS44IF07IHRoZW4KKwkJCQl2bW92ZSB1c3Ivc2hhcmUvbWFu L21hbjgvJHtmfS44CisJCQlmaQorCQlkb25lCisJfQorfQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9t eXNxbDgvdXBkYXRlIGIvc3JjcGtncy9teXNxbDgvdXBkYXRlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IDAwMDAwMDAwMDAwLi5kYTgwNzk3Y2Y0YQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3Br Z3MvbXlzcWw4L3VwZGF0ZQpAQCAtMCwwICsxLDIgQEAKK3NpdGU9J2h0dHA6Ly9kZXYubXlzcWwu Y29tL2Rvd25sb2Fkcy9teXNxbC8nCitwYXR0ZXJuPSdNeVNRTCBDb21tdW5pdHkgU2VydmVyIFxL W1xkLl0rJwo= --===============5716544994900427249==--