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 10486 invoked from network); 28 Jul 2020 20:29:36 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 28 Jul 2020 20:29:36 -0000 Content-Type: multipart/mixed; boundary="===============6005391164728078819==" 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: Tue, 28 Jul 2020 22:29:36 +0200 List-Id: Message-ID: <20200728202936.a_OCVcTTc7maVF27G9ZD3WzQIAe7fUY8b0DELkXZvcM@z> GitHub notification mails are now in MIME to allow UTF8. --===============6005391164728078819== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgcmllbiBhZ2FpbnN0IG1hc3RlciBv biB0aGUgdm9pZC1wYWNrYWdlcyByZXBvc2l0b3J5CgpodHRwczovL2dpdGh1Yi5jb20vcmllbi92 b2lkLXBhY2thZ2VzIG5ldy9teXNxbC04Cmh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3Zv aWQtcGFja2FnZXMvcHVsbC8yMzYxNwoKTmV3IHBhY2thZ2U6IG15c3FsOC04LjAuMjEKTm90IHll dCBmaW5pc2hlZC4gQ3VycmVudGx5IHVzaW5nIHBhdGNoZXMgZnJvbSBbZ2VudG9vXShodHRwczov L2Rldi5nZW50b28ub3JnL353aGlzc2kvZGlzdC9teXNxbC8pLgoKQSBwYXRjaCBmaWxlIGZyb20g aHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9wdWxsLzIzNjE3LnBh dGNoIGlzIGF0dGFjaGVk --===============6005391164728078819== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-new/mysql-8-23617.patch" RnJvbSAwNzE0YWM1NzA2NWMwYTNhYWU4NTg0ZmFhMTJiNDg3MWI2MjcyNjFhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBSaWVuIE1hZXJ0ZW5zIDxyaWVuLm1hZXJ0ZW5zQHBvc3Rlby5i ZT4KRGF0ZTogRnJpLCAxNyBKdWwgMjAyMCAxNjo0MDowNyArMDIwMApTdWJqZWN0OiBbUEFUQ0hd IE5ldyBwYWNrYWdlOiBteXNxbDgtOC4wLjIxCgotLS0KIHNyY3BrZ3MvbGlibXlzcWxjbGllbnQ4 ICAgICAgICAgICAgICAgICAgICAgICB8ICAgMSArCiBzcmNwa2dzL2xpYm15c3FsY2xpZW50OC1k ZXZlbCAgICAgICAgICAgICAgICAgfCAgIDEgKwogc3JjcGtncy9teXNxbDgtY2xpZW50ICAgICAg ICAgICAgICAgICAgICAgICAgIHwgICAxICsKIHNyY3BrZ3MvbXlzcWw4L0lOU1RBTEwgICAgICAg ICAgICAgICAgICAgICAgICB8ICAgOSArCiBzcmNwa2dzL215c3FsOC9maWxlcy9teS5jbmYgICAg ICAgICAgICAgICAgICAgfCAgNDQgKysrCiBzcmNwa2dzL215c3FsOC9maWxlcy9teXNxbGQvbG9n L3J1biAgICAgICAgICAgfCAgIDIgKwogc3JjcGtncy9teXNxbDgvZmlsZXMvbXlzcWxkL3J1biAg ICAgICAgICAgICAgIHwgICA0ICsKIC4uLi9wYXRjaGVzLzAwMDItY21ha2UtUmVtb3ZlLVdlcnJv ci5wYXRjaCAgICB8ICAzMCArKwogLi4uLzAwMDQtdGVzdHMtZml4LWdyYW50X3VzZXJfbG9jay10 ZXN0LnBhdGNoIHwgIDkyICsrKysrCiAuLi4vcGF0Y2hlcy8wMDA1LUFkZC1MaWJyZVNTTC1zdXBw b3J0LnBhdGNoICAgfCAzNTYgKysrKysrKysrKysrKysrKysrCiBzcmNwa2dzL215c3FsOC90ZW1w bGF0ZSAgICAgICAgICAgICAgICAgICAgICAgfCAxNTUgKysrKysrKysKIHNyY3BrZ3MvbXlzcWw4 L3VwZGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArCiAxMiBmaWxlcyBjaGFuZ2Vk LCA2OTcgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbGlibXlzcWxj bGllbnQ4CiBjcmVhdGUgbW9kZSAxMjAwMDAgc3JjcGtncy9saWJteXNxbGNsaWVudDgtZGV2ZWwK IGNyZWF0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL215c3FsOC1jbGllbnQKIGNyZWF0ZSBtb2RlIDEw MDY0NCBzcmNwa2dzL215c3FsOC9JTlNUQUxMCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9t eXNxbDgvZmlsZXMvbXkuY25mCiBjcmVhdGUgbW9kZSAxMDA3NTUgc3JjcGtncy9teXNxbDgvZmls ZXMvbXlzcWxkL2xvZy9ydW4KIGNyZWF0ZSBtb2RlIDEwMDc1NSBzcmNwa2dzL215c3FsOC9maWxl cy9teXNxbGQvcnVuCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9teXNxbDgvcGF0Y2hlcy8w MDAyLWNtYWtlLVJlbW92ZS1XZXJyb3IucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dz L215c3FsOC9wYXRjaGVzLzAwMDQtdGVzdHMtZml4LWdyYW50X3VzZXJfbG9jay10ZXN0LnBhdGNo CiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9teXNxbDgvcGF0Y2hlcy8wMDA1LUFkZC1MaWJy ZVNTTC1zdXBwb3J0LnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9teXNxbDgvdGVt cGxhdGUKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL215c3FsOC91cGRhdGUKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2xpYm15c3FsY2xpZW50OCBiL3NyY3BrZ3MvbGlibXlzcWxjbGllbnQ4Cm5l dyBmaWxlIG1vZGUgMTIwMDAwCmluZGV4IDAwMDAwMDAwMDAwLi45YTE3ZTkxYjY5NAotLS0gL2Rl di9udWxsCisrKyBiL3NyY3BrZ3MvbGlibXlzcWxjbGllbnQ4CkBAIC0wLDAgKzEgQEAKK215c3Fs OApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGlibXlz cWxjbGllbnQ4LWRldmVsIGIvc3JjcGtncy9saWJteXNxbGNsaWVudDgtZGV2ZWwKbmV3IGZpbGUg bW9kZSAxMjAwMDAKaW5kZXggMDAwMDAwMDAwMDAuLjlhMTdlOTFiNjk0Ci0tLSAvZGV2L251bGwK KysrIGIvc3JjcGtncy9saWJteXNxbGNsaWVudDgtZGV2ZWwKQEAgLTAsMCArMSBAQAorbXlzcWw4 ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9teXNxbDgt Y2xpZW50IGIvc3JjcGtncy9teXNxbDgtY2xpZW50Cm5ldyBmaWxlIG1vZGUgMTIwMDAwCmluZGV4 IDAwMDAwMDAwMDAwLi45YTE3ZTkxYjY5NAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbXlz cWw4LWNsaWVudApAQCAtMCwwICsxIEBACitteXNxbDgKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm aWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL215c3FsOC9JTlNUQUxMIGIvc3JjcGtncy9teXNxbDgv SU5TVEFMTApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uYWZlNjA1ZTEx N2MKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL215c3FsOC9JTlNUQUxMCkBAIC0wLDAgKzEs OSBAQAorIyAqLSotc2hlbGwtKi0qCisjCitjYXNlICR7QUNUSU9OfSBpbgorcG9zdCkKKwlpbnN0 YWxsIC1kbTA3MDAgdmFyL2xpYi9teXNxbAorCWJpbi9teXNxbGQgLS11c2VyPW15c3FsIC0taW5p dGlhbGl6ZSAtLWRhdGFkaXI9L3Zhci9saWIvbXlzcWwKKwljaG93biAtUiBteXNxbDpteXNxbCB2 YXIvbGliL215c3FsCisJOzsKK2VzYWMKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXlzcWw4L2ZpbGVz L215LmNuZiBiL3NyY3BrZ3MvbXlzcWw4L2ZpbGVzL215LmNuZgpuZXcgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAwMDAwMDAwMDAwMC4uY2Q4NzlmOGMwZmMKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNw a2dzL215c3FsOC9maWxlcy9teS5jbmYKQEAgLTAsMCArMSw0NCBAQAorIyBNeVNRTCBjb25maWd1 cmF0aW9uIGZpbGUgZm9yIGNsaWVudCBhbmQgc2VydmVyIGJhc2VkIG9uIHRoZSBHZW50b28KKyMg Y29uZmlndXJhdGlvbnMuCisKKyMgVGhlIGZvbGxvd2luZyBvcHRpb25zIHdpbGwgYmUgcGFzc2Vk IHRvIGFsbCBNeVNRTCBjbGllbnRzCitbY2xpZW50XQorcG9ydAkJCQk9IDMzMDYKK3NvY2tldAkJ CQk9IC9ydW4vbXlzcWxkL215c3FsZC5zb2NrCisKKyMgSGVyZSBmb2xsb3dzIGVudHJpZXMgZm9y IHNvbWUgc3BlY2lmaWMgcHJvZ3JhbXMKKworIyBUaGUgTXlTUUwgc2VydmVyCitbbXlzcWxkXQor cG9ydAkJPSAzMzA2Citzb2NrZXQJCT0gL3J1bi9teXNxbGQvbXlzcWxkLnNvY2sKK2RhdGFkaXIJ CT0gL3Zhci9saWIvbXlzcWwKK3NraXAtZXh0ZXJuYWwtbG9ja2luZworCisjIFNpbmNlIE15U1FM IDggdGhlIGRlZmF1bHQgYXV0aGVudGljYXRpb24gcGx1Z2luIHN3aXRjaGVkIGZyb20KKyMgJ215 c3FsX25hdGl2ZV9wYXNzd29yZCcgdG8gdGhlIG1vcmUgc2VjdXJlICdjYWNoaW5nX3NoYTJfcGFz c3dvcmQnLgorIyBVbmNvbW1lbnQgdGhlIG5leHQgbGluZSBpZiB5b3UgZXhwZXJpZW5jZSBpc3N1 ZXMgd2l0aCBjbGllbnQgbGlicmFyaWVzLgorIworI2xvb3NlLWRlZmF1bHQtYXV0aGVudGljYXRp b24tcGx1Z2luID0gbXlzcWxfbmF0aXZlX3Bhc3N3b3JkCisKKyMgRG9uJ3QgbGlzdGVuIG9uIGEg VENQL0lQIHBvcnQgYXQgYWxsLiBUaGlzIGNhbiBiZSBhIHNlY3VyaXR5IGVuaGFuY2VtZW50LAor IyBpZiBhbGwgcHJvY2Vzc2VzIHRoYXQgbmVlZCB0byBjb25uZWN0IHRvIG15c3FsZCBydW4gb24g dGhlIHNhbWUgaG9zdC4KKyMgQWxsIGludGVyYWN0aW9uIHdpdGggbXlzcWxkIG11c3QgYmUgbWFk ZSB2aWEgVW5peCBzb2NrZXRzIG9yIG5hbWVkIHBpcGVzLgorIyBOb3RlIHRoYXQgdXNpbmcgdGhp cyBvcHRpb24gd2l0aG91dCBlbmFibGluZyBuYW1lZCBwaXBlcyBvbiBXaW5kb3dzCisjICh2aWEg dGhlICJlbmFibGUtbmFtZWQtcGlwZSIgb3B0aW9uKSB3aWxsIHJlbmRlciBteXNxbGQgdXNlbGVz cyEKKyMgCitza2lwLW5ldHdvcmtpbmcKKworbG9nLWJpbgorIyByZXF1aXJlZCB1bmlxdWUgaWQg YmV0d2VlbiAxIGFuZCAyXjMyIC0gMQorIyBkZWZhdWx0cyB0byAxIGlmIG1hc3Rlci1ob3N0IGlz IG5vdCBzZXQKKyMgYnV0IHdpbGwgbm90IGZ1bmN0aW9uIGFzIGEgbWFzdGVyIGlmIG9taXR0ZWQK K3NlcnZlci1pZAk9IDEKKworW215c3FsZHVtcF0KK3F1aWNrCittYXhfYWxsb3dlZF9wYWNrZXQg PSAxNk0KKworW215c3FsXQorIyBSZW1vdmUgdGhlIG5leHQgY29tbWVudCBjaGFyYWN0ZXIgaWYg eW91IGFyZSBub3QgZmFtaWxpYXIgd2l0aCBTUUwKKyNzYWZlLXVwZGF0ZXMKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvbXlzcWw4L2ZpbGVzL215c3FsZC9sb2cvcnVuIGIvc3JjcGtncy9teXNxbDgvZmls ZXMvbXlzcWxkL2xvZy9ydW4KbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMDAwMDAu LmIzNmM0ZGFmYTQwCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9teXNxbDgvZmlsZXMvbXlz cWxkL2xvZy9ydW4KQEAgLTAsMCArMSwyIEBACisjIS9iaW4vc2gKK2V4ZWMgbG9nZ2VyIC1wIGRh ZW1vbi5ub3RpY2UKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXlzcWw4L2ZpbGVzL215c3FsZC9ydW4g Yi9zcmNwa2dzL215c3FsOC9maWxlcy9teXNxbGQvcnVuCm5ldyBmaWxlIG1vZGUgMTAwNzU1Cmlu ZGV4IDAwMDAwMDAwMDAwLi5iYzE2YTA3ODgzZQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mv bXlzcWw4L2ZpbGVzL215c3FsZC9ydW4KQEAgLTAsMCArMSw0IEBACisjIS9iaW4vc2gKK1sgISAt ZCAvcnVuL215c3FsZCBdICYmIG1rZGlyIC1wIC9ydW4vbXlzcWxkCitjaG93biBteXNxbDpteXNx bCAvcnVuL215c3FsZAorZXhlYyBjaHBzdCAtdSBteXNxbDpteXNxbCBteXNxbGQgLS11c2VyPW15 c3FsIDI+JjEKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXlzcWw4L3BhdGNoZXMvMDAwMi1jbWFrZS1S ZW1vdmUtV2Vycm9yLnBhdGNoIGIvc3JjcGtncy9teXNxbDgvcGF0Y2hlcy8wMDAyLWNtYWtlLVJl bW92ZS1XZXJyb3IucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAu LjRhNTJiZWJlZjJmCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9teXNxbDgvcGF0Y2hlcy8w MDAyLWNtYWtlLVJlbW92ZS1XZXJyb3IucGF0Y2gKQEAgLTAsMCArMSwzMCBAQAorRnJvbSAxYzA2 NmY1ZWEwMTA5OTRjNzkwMTEzYmY2Y2Y0YTUyMDIyN2E5ZTA2IE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQorRnJvbTogVGhvbWFzIERldXRzY2htYW5uIDx3aGlzc2lAZ2VudG9vLm9yZz4KK0RhdGU6 IFRodSwgMzAgQXByIDIwMjAgMTk6NTk6MjYgKzAyMDAKK1N1YmplY3Q6IFtQQVRDSCAyLzVdIGNt YWtlOiBSZW1vdmUgLVdlcnJvcgorCitTaWduZWQtb2ZmLWJ5OiBUaG9tYXMgRGV1dHNjaG1hbm4g PHdoaXNzaUBnZW50b28ub3JnPgorLS0tCisgY21ha2UvbWFpbnRhaW5lci5jbWFrZSB8IDYgLS0t LS0tCisgMSBmaWxlIGNoYW5nZWQsIDYgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgY21ha2Uv bWFpbnRhaW5lci5jbWFrZSBjbWFrZS9tYWludGFpbmVyLmNtYWtlCitpbmRleCA2YWEzYWM4NjYu LmIyZjYzYmRhYSAxMDA2NDQKKy0tLSBjbWFrZS9tYWludGFpbmVyLmNtYWtlCisrKysgY21ha2Uv bWFpbnRhaW5lci5jbWFrZQorQEAgLTE1NywxMiArMTU3LDYgQEAgSUYoTVlfQ09NUElMRVJfSVNf Q0xBTkcpCisgICAjIC1XemVyby1hcy1udWxsLXBvaW50ZXItY29uc3RhbnQKKyBFTkRJRigpCisg CistIyBUdXJuIG9uIFdlcnJvciAod2FybmluZyA9PiBlcnJvcikgd2hlbiB1c2luZyBtYWludGFp bmVyIG1vZGUuCistSUYoTVlTUUxfTUFJTlRBSU5FUl9NT0RFKQorLSAgU1RSSU5HX0FQUEVORChN WV9DX1dBUk5JTkdfRkxBR1MgICAiIC1XZXJyb3IiKQorLSAgU1RSSU5HX0FQUEVORChNWV9DWFhf V0FSTklOR19GTEFHUyAiIC1XZXJyb3IiKQorLUVORElGKCkKKy0KKyAjIFNldCB3YXJuaW5nIGZs YWdzIGZvciBnY2MvZysrL2NsYW5nL2NsYW5nKysKKyBJRihNWV9DT01QSUxFUl9JU19HTlVfT1Jf Q0xBTkcpCisgICBTVFJJTkdfQVBQRU5EKENNQUtFX0NfRkxBR1MgICAiICR7TVlfQ19XQVJOSU5H X0ZMQUdTfSIpCistLSAKKzIuMjcuMAorCmRpZmYgLS1naXQgYS9zcmNwa2dzL215c3FsOC9wYXRj aGVzLzAwMDQtdGVzdHMtZml4LWdyYW50X3VzZXJfbG9jay10ZXN0LnBhdGNoIGIvc3JjcGtncy9t eXNxbDgvcGF0Y2hlcy8wMDA0LXRlc3RzLWZpeC1ncmFudF91c2VyX2xvY2stdGVzdC5wYXRjaApu ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uM2JkMWJjNWE0MDIKLS0tIC9k ZXYvbnVsbAorKysgYi9zcmNwa2dzL215c3FsOC9wYXRjaGVzLzAwMDQtdGVzdHMtZml4LWdyYW50 X3VzZXJfbG9jay10ZXN0LnBhdGNoCkBAIC0wLDAgKzEsOTIgQEAKK0Zyb20gMzg0MjdiNTNmZmMz NGY0NjU1MzRiY2IxY2JjNTZmYzhmMmMwN2Q4ZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zy b206IFRob21hcyBEZXV0c2NobWFubiA8d2hpc3NpQGdlbnRvby5vcmc+CitEYXRlOiBUaHUsIDMw IEFwciAyMDIwIDIwOjAxOjIwICswMjAwCitTdWJqZWN0OiBbUEFUQ0ggNC81XSB0ZXN0czogZml4 IGdyYW50X3VzZXJfbG9jayB0ZXN0CisKK1NpZ25lZC1vZmYtYnk6IFRob21hcyBEZXV0c2NobWFu biA8d2hpc3NpQGdlbnRvby5vcmc+CistLS0KKyBteXNxbC10ZXN0L3IvZ3JhbnRfdXNlcl9sb2Nr LnJlc3VsdCB8ICA0ICsrLS0KKyBteXNxbC10ZXN0L3QvZ3JhbnRfdXNlcl9sb2NrLnRlc3QgICB8 IDEyICsrKysrKy0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCA4IGRl bGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IG15c3FsLXRlc3Qvci9ncmFudF91c2VyX2xvY2sucmVz dWx0IG15c3FsLXRlc3Qvci9ncmFudF91c2VyX2xvY2sucmVzdWx0CitpbmRleCA1NGFhZGRmYjgu LjljOTUzODBmMSAxMDA2NDQKKy0tLSBteXNxbC10ZXN0L3IvZ3JhbnRfdXNlcl9sb2NrLnJlc3Vs dAorKysrIG15c3FsLXRlc3Qvci9ncmFudF91c2VyX2xvY2sucmVzdWx0CitAQCAtOTgsMTMgKzk4 LDEzIEBAIENVUlJFTlRfVVNFUigpCisgRFJPUCBVU0VSICcnQGxvY2FsaG9zdDsKKyAjIENyZWF0 ZSBhbm9ueW1vdXMgdXNlciAtIExPQ0sKKyBDUkVBVEUgVVNFUiAnJ0Bsb2NhbGhvc3QgSURFTlRJ RklFRCBCWSAncGFzcycgQUNDT1VOVCBMT0NLOworLWNvbm5lY3QobG9jYWxob3N0LCxwYXNzLHRl c3QsTUFTVEVSX1BPUlQsTUFTVEVSX1NPQ0tFVCk7CisrY29ubmVjdChsb2NhbGhvc3QsICxwYXNz LHRlc3QsTUFTVEVSX1BPUlQsTUFTVEVSX1NPQ0tFVCk7CisgRVJST1IgSFkwMDA6IEFjY2VzcyBk ZW5pZWQgZm9yIHVzZXIgJyhudWxsKSdAJ2xvY2FsaG9zdCcuIEFjY291bnQgaXMgbG9ja2VkLgor IERST1AgVVNFUiAnJ0Bsb2NhbGhvc3Q7CisgIyBEaXNhYmxpbmcgYW5vbnltb3VzIHVzZXIKKyBD UkVBVEUgVVNFUiAnJ0Bsb2NhbGhvc3QgSURFTlRJRklFRCBCWSAncGFzcyc7CisgQUxURVIgVVNF UiAnJ0Bsb2NhbGhvc3QgQUNDT1VOVCBMT0NLOworLWNvbm5lY3QobG9jYWxob3N0LCxwYXNzLHRl c3QsTUFTVEVSX1BPUlQsTUFTVEVSX1NPQ0tFVCk7CisrY29ubmVjdChsb2NhbGhvc3QsICxwYXNz LHRlc3QsTUFTVEVSX1BPUlQsTUFTVEVSX1NPQ0tFVCk7CisgRVJST1IgSFkwMDA6IEFjY2VzcyBk ZW5pZWQgZm9yIHVzZXIgJyhudWxsKSdAJ2xvY2FsaG9zdCcuIEFjY291bnQgaXMgbG9ja2VkLgor IERST1AgVVNFUiAnJ0Bsb2NhbGhvc3Q7CisgIyBFbmFibGluZyBhbm9ueW1vdXMgdXNlcgorZGlm ZiAtLWdpdCBteXNxbC10ZXN0L3QvZ3JhbnRfdXNlcl9sb2NrLnRlc3QgbXlzcWwtdGVzdC90L2dy YW50X3VzZXJfbG9jay50ZXN0CitpbmRleCBjODY3YmQ1M2QuLjAzZjg3N2RlZiAxMDA2NDQKKy0t LSBteXNxbC10ZXN0L3QvZ3JhbnRfdXNlcl9sb2NrLnRlc3QKKysrKyBteXNxbC10ZXN0L3QvZ3Jh bnRfdXNlcl9sb2NrLnRlc3QKK0BAIC0xMTIsNyArMTEyLDcgQEAgRFJPUCBVU0VSIHVubG9ja2Vk X3VzZXIyQGxvY2FsaG9zdDsKKyAtLWVjaG8gIyBDcmVhdGUgYW5vbnltb3VzIHVzZXIKKyBjb25u ZWN0aW9uIGRlZmF1bHQ7CisgQ1JFQVRFIFVTRVIgJydAbG9jYWxob3N0IElERU5USUZJRUQgQlkg J3Bhc3MnOworLWNvbm5lY3QoYW5vbnltb3VzX3VzZXJfY29uLCBsb2NhbGhvc3QsICcnLCBwYXNz KTsKKytjb25uZWN0KGFub255bW91c191c2VyX2NvbiwgbG9jYWxob3N0LCAnICcsIHBhc3MpOwor IFNFTEVDVCBDVVJSRU5UX1VTRVIoKTsKKyBkaXNjb25uZWN0IGFub255bW91c191c2VyX2NvbjsK KyBjb25uZWN0aW9uIGRlZmF1bHQ7CitAQCAtMTIxLDcgKzEyMSw3IEBAIERST1AgVVNFUiAnJ0Bs b2NhbGhvc3Q7CisgLS1lY2hvICMgQ3JlYXRlIGFub255bW91cyB1c2VyIC0gZXhwbGljaXQgVU5M T0NLCisgY29ubmVjdGlvbiBkZWZhdWx0OworIENSRUFURSBVU0VSICcnQGxvY2FsaG9zdCBJREVO VElGSUVEIEJZICdwYXNzJyBBQ0NPVU5UIFVOTE9DSzsKKy1jb25uZWN0KGFub255bW91c191c2Vy X2NvbiwgbG9jYWxob3N0LCAnJywgcGFzcyk7CisrY29ubmVjdChhbm9ueW1vdXNfdXNlcl9jb24s IGxvY2FsaG9zdCwgJyAnLCBwYXNzKTsKKyBTRUxFQ1QgQ1VSUkVOVF9VU0VSKCk7CisgZGlzY29u bmVjdCBhbm9ueW1vdXNfdXNlcl9jb247CisgY29ubmVjdGlvbiBkZWZhdWx0OworQEAgLTEzMiw3 ICsxMzIsNyBAQCBjb25uZWN0aW9uIGRlZmF1bHQ7CisgQ1JFQVRFIFVTRVIgJydAbG9jYWxob3N0 IElERU5USUZJRUQgQlkgJ3Bhc3MnIEFDQ09VTlQgTE9DSzsKKyAtLXJlcGxhY2VfcmVzdWx0ICRN QVNURVJfTVlTT0NLIE1BU1RFUl9TT0NLRVQgJE1BU1RFUl9NWVBPUlQgTUFTVEVSX1BPUlQKKyAt LWVycm9yIEVSX0FDQ09VTlRfSEFTX0JFRU5fTE9DS0VECistY29ubmVjdChhbm9ueW1vdXNfdXNl cl9jb24sIGxvY2FsaG9zdCwgJycsIHBhc3MpOworK2Nvbm5lY3QoYW5vbnltb3VzX3VzZXJfY29u LCBsb2NhbGhvc3QsICcgJywgcGFzcyk7CisgY29ubmVjdGlvbiBkZWZhdWx0OworIERST1AgVVNF UiAnJ0Bsb2NhbGhvc3Q7CisgCitAQCAtMTQyLDcgKzE0Miw3IEBAIENSRUFURSBVU0VSICcnQGxv Y2FsaG9zdCBJREVOVElGSUVEIEJZICdwYXNzJzsKKyBBTFRFUiBVU0VSICcnQGxvY2FsaG9zdCBB Q0NPVU5UIExPQ0s7CisgLS1yZXBsYWNlX3Jlc3VsdCAkTUFTVEVSX01ZU09DSyBNQVNURVJfU09D S0VUICRNQVNURVJfTVlQT1JUIE1BU1RFUl9QT1JUCisgLS1lcnJvciBFUl9BQ0NPVU5UX0hBU19C RUVOX0xPQ0tFRAorLWNvbm5lY3QoYW5vbnltb3VzX3VzZXJfY29uLCBsb2NhbGhvc3QsICcnLCBw YXNzKTsKKytjb25uZWN0KGFub255bW91c191c2VyX2NvbiwgbG9jYWxob3N0LCAnICcsIHBhc3Mp OworIGNvbm5lY3Rpb24gZGVmYXVsdDsKKyBEUk9QIFVTRVIgJydAbG9jYWxob3N0OworIAorQEAg LTE1MCw3ICsxNTAsNyBAQCBEUk9QIFVTRVIgJydAbG9jYWxob3N0OworIGNvbm5lY3Rpb24gZGVm YXVsdDsKKyBDUkVBVEUgVVNFUiAnJ0Bsb2NhbGhvc3QgSURFTlRJRklFRCBCWSAncGFzcycgQUND T1VOVCBMT0NLOworIEFMVEVSIFVTRVIgJydAbG9jYWxob3N0IEFDQ09VTlQgVU5MT0NLOworLWNv bm5lY3QoYW5vbnltb3VzX3VzZXJfY29uLCBsb2NhbGhvc3QsICcnLCBwYXNzKTsKKytjb25uZWN0 KGFub255bW91c191c2VyX2NvbiwgbG9jYWxob3N0LCAnICcsIHBhc3MpOworIFNFTEVDVCBDVVJS RU5UX1VTRVIoKTsKKyBkaXNjb25uZWN0IGFub255bW91c191c2VyX2NvbjsKKyBjb25uZWN0aW9u IGRlZmF1bHQ7CitAQCAtMTcwLDcgKzE3MCw3IEBAIGNvbm5lY3Rpb24gZGVmYXVsdDsKKyBDUkVB VEUgdXNlciAnJ0Bsb2NhbGhvc3QgSURFTlRJRklFRCBCWSAncGFzcyc7CisgQ1JFQVRFIFVTRVIg J3VubG9ja2VkX3VzZXInQGxvY2FsaG9zdCBJREVOVElGSUVEIEJZICdwYXNzJzsKKyAKKy1jb25u ZWN0KGFub255bW91c191c2VyX2NvbiwgbG9jYWxob3N0LCAnJywgcGFzcyk7CisrY29ubmVjdChh bm9ueW1vdXNfdXNlcl9jb24sIGxvY2FsaG9zdCwgJyAnLCBwYXNzKTsKKyAtLWVycm9yIEVSX1RB QkxFQUNDRVNTX0RFTklFRF9FUlJPUgorIFVQREFURSBteXNxbC51c2VyIFNFVCBhY2NvdW50X2xv Y2tlZD0nWScKKyAgIFdIRVJFIHVzZXI9J3VubG9ja2VkX3VzZXInIGFuZCBob3N0ID0gJ2xvY2Fs aG9zdCc7CistLSAKKzIuMjcuMAorCmRpZmYgLS1naXQgYS9zcmNwa2dzL215c3FsOC9wYXRjaGVz LzAwMDUtQWRkLUxpYnJlU1NMLXN1cHBvcnQucGF0Y2ggYi9zcmNwa2dzL215c3FsOC9wYXRjaGVz LzAwMDUtQWRkLUxpYnJlU1NMLXN1cHBvcnQucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggMDAwMDAwMDAwMDAuLmUyYTk0NDAzMjNkCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9t eXNxbDgvcGF0Y2hlcy8wMDA1LUFkZC1MaWJyZVNTTC1zdXBwb3J0LnBhdGNoCkBAIC0wLDAgKzEs MzU2IEBACitGcm9tIDRhYWRmZjdiMDhmNmE2OTE2MGE0NGMxNzQyZDVhMTJmYjVhYmMwNTkgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBUaG9tYXMgRGV1dHNjaG1hbm4gPHdoaXNzaUBn ZW50b28ub3JnPgorRGF0ZTogVGh1LCAzMCBBcHIgMjAyMCAyMDowMTo0OCArMDIwMAorU3ViamVj dDogW1BBVENIIDUvNV0gQWRkIExpYnJlU1NMIHN1cHBvcnQKKworU2lnbmVkLW9mZi1ieTogVGhv bWFzIERldXRzY2htYW5uIDx3aGlzc2lAZ2VudG9vLm9yZz4KKy0tLQorIGNtYWtlL3NzbC5jbWFr ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA1ICsrKy0tCisgbXlzeXMvbXlfbWQ1 LmNjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDIgKysKKyAuLi4vYmluZGluZ3Mv eGNvbS94Y29tL3hjb21fc3NsX3RyYW5zcG9ydC5jYyAgfCAgNiArKysrKy0KKyBwbHVnaW4veC9j bGllbnQveGNvbm5lY3Rpb25faW1wbC5jYyAgICAgICAgICAgfCAgNCArKysrCisgcm91dGVyL3Ny Yy9odHRwL3NyYy90bHNfY2xpZW50X2NvbnRleHQuY2MgICAgIHwgIDIgKy0KKyByb3V0ZXIvc3Jj L2h0dHAvc3JjL3Rsc19jb250ZXh0LmNjICAgICAgICAgICAgfCAgOSArKysrKystLQorIHJvdXRl ci9zcmMvaHR0cC9zcmMvdGxzX3NlcnZlcl9jb250ZXh0LmNjICAgICB8ICAzICsrLQorIHNxbC1j b21tb24vY2xpZW50LmNjICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyICsrCisgc3FsL215 c3FsZC5jYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKysrLQorIHNxbC9z eXNfdmFycy5jYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDIxICsrKysrKysrKysr KysrKysrLS0KKyB2aW8vdmlvc3NsLmNjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg fCAgOCArKystLS0tCisgdmlvL3Zpb3NzbGZhY3Rvcmllcy5jYyAgICAgICAgICAgICAgICAgICAg ICAgIHwgIDIgKysKKyAxMiBmaWxlcyBjaGFuZ2VkLCA1NCBpbnNlcnRpb25zKCspLCAxNCBkZWxl dGlvbnMoLSkKKworZGlmZiAtLWdpdCBjbWFrZS9zc2wuY21ha2UgY21ha2Uvc3NsLmNtYWtlCitp bmRleCA1MmZlYWRlYWEuLjNiODMzMjY5NSAxMDA2NDQKKy0tLSBjbWFrZS9zc2wuY21ha2UKKysr KyBjbWFrZS9zc2wuY21ha2UKK0BAIC0yMjIsMTMgKzIyMiwxNCBAQCBNQUNSTyAoTVlTUUxfQ0hF Q0tfU1NMKQorICAgICAgICAgT1BFTlNTTF9GSVhfVkVSU0lPTiAiJHtPUEVOU1NMX1ZFUlNJT05f TlVNQkVSfSIKKyAgICAgICAgICkKKyAgICAgRU5ESUYoKQorLSAgICBJRigiJHtPUEVOU1NMX01B Sk9SX1ZFUlNJT059LiR7T1BFTlNTTF9NSU5PUl9WRVJTSU9OfS4ke09QRU5TU0xfRklYX1ZFUlNJ T059IiBWRVJTSU9OX0dSRUFURVIgIjEuMS4wIikKKysgICAgQ0hFQ0tfU1lNQk9MX0VYSVNUUyhU TFMxXzNfVkVSU0lPTiAib3BlbnNzbC90bHMxLmgiIEhBVkVfVExTMV8zX1ZFUlNJT04pCisrICAg IElGKEhBVkVfVExTMV8zX1ZFUlNJT04pCisgICAgICAgIEFERF9ERUZJTklUSU9OUygtREhBVkVf VExTdjEzKQorICAgICBFTkRJRigpCisgICAgIElGKE9QRU5TU0xfSU5DTFVERV9ESVIgQU5ECisg ICAgICAgIE9QRU5TU0xfTElCUkFSWSAgIEFORAorICAgICAgICBDUllQVE9fTElCUkFSWSAgICAg IEFORAorLSAgICAgICBPUEVOU1NMX01BSk9SX1ZFUlNJT04gU1RSRVFVQUwgIjEiCisrICAgICAg IE9QRU5TU0xfTUFKT1JfVkVSU0lPTiBWRVJTSU9OX0dSRUFURVJfRVFVQUwgIjEiCisgICAgICAg KQorICAgICAgIFNFVChPUEVOU1NMX0ZPVU5EIFRSVUUpCisgICAgICAgRklORF9QUk9HUkFNKE9Q RU5TU0xfRVhFQ1VUQUJMRSBvcGVuc3NsCitkaWZmIC0tZ2l0IG15c3lzL215X21kNS5jYyBteXN5 cy9teV9tZDUuY2MKK2luZGV4IGRlYTk5N2IyNS4uNTMxNjk2MzI5IDEwMDY0NAorLS0tIG15c3lz L215X21kNS5jYworKysrIG15c3lzL215X21kNS5jYworQEAgLTU2LDcgKzU2LDkgQEAgc3RhdGlj IHZvaWQgbXlfbWQ1X2hhc2godW5zaWduZWQgY2hhciAqZGlnZXN0LCB1bnNpZ25lZCBjb25zdCBj aGFyICpidWYsCisgaW50IGNvbXB1dGVfbWQ1X2hhc2goY2hhciAqZGlnZXN0LCBjb25zdCBjaGFy ICpidWYsIGludCBsZW4pIHsKKyAgIGludCByZXR2YWwgPSAwOworICAgaW50IGZpcHNfbW9kZSA9 IDA7CisrI2lmbmRlZiBMSUJSRVNTTF9WRVJTSU9OX05VTUJFUgorICAgZmlwc19tb2RlID0gRklQ U19tb2RlKCk7CisrI2VuZGlmCisgICAvKiBJZiBmaXBzIG1vZGUgaXMgT04vU1RSSUNUIHJlc3Ry aWN0ZWQgbWV0aG9kIGNhbGxzIHdpbGwgcmVzdWx0IGludG8gYWJvcnQsCisgICAgKiBza2lwcGlu ZyBjYWxsLiAqLworICAgaWYgKGZpcHNfbW9kZSA9PSAwKSB7CitkaWZmIC0tZ2l0IHBsdWdpbi9n cm91cF9yZXBsaWNhdGlvbi9saWJteXNxbGdjcy9zcmMvYmluZGluZ3MveGNvbS94Y29tL3hjb21f c3NsX3RyYW5zcG9ydC5jYyBwbHVnaW4vZ3JvdXBfcmVwbGljYXRpb24vbGlibXlzcWxnY3Mvc3Jj L2JpbmRpbmdzL3hjb20veGNvbS94Y29tX3NzbF90cmFuc3BvcnQuY2MKK2luZGV4IDhiZjYzY2Ux NC4uMDJmOTFiNDRlIDEwMDY0NAorLS0tIHBsdWdpbi9ncm91cF9yZXBsaWNhdGlvbi9saWJteXNx bGdjcy9zcmMvYmluZGluZ3MveGNvbS94Y29tL3hjb21fc3NsX3RyYW5zcG9ydC5jYworKysrIHBs dWdpbi9ncm91cF9yZXBsaWNhdGlvbi9saWJteXNxbGdjcy9zcmMvYmluZGluZ3MveGNvbS94Y29t L3hjb21fc3NsX3RyYW5zcG9ydC5jYworQEAgLTMyNSw2ICszMjUsNyBAQCBlcnJvcjoKKyAgIHJl dHVybiAxOworIH0KKyAKKysjaWZuZGVmIExJQlJFU1NMX1ZFUlNJT05fTlVNQkVSCisgI2RlZmlu ZSBPUEVOU1NMX0VSUk9SX0xFTkdUSCA1MTIKKyBzdGF0aWMgaW50IGNvbmZpZ3VyZV9zc2xfZmlw c19tb2RlKGNvbnN0IHVpbnQgZmlwc19tb2RlKSB7CisgICBpbnQgcmMgPSAtMTsKK0BAIC0zNDgs NiArMzQ5LDcgQEAgc3RhdGljIGludCBjb25maWd1cmVfc3NsX2ZpcHNfbW9kZShjb25zdCB1aW50 IGZpcHNfbW9kZSkgeworIEVYSVQ6CisgICByZXR1cm4gcmM7CisgfQorKyNlbmRpZgorIAorIHN0 YXRpYyBpbnQgY29uZmlndXJlX3NzbF9jYShTU0xfQ1RYICpzc2xfY3R4LCBjb25zdCBjaGFyICpj YV9maWxlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpjYV9wYXRo KSB7CitAQCAtNTQ0LDEwICs1NDYsMTIgQEAgaW50IHhjb21faW5pdF9zc2woY29uc3QgY2hhciAq c2VydmVyX2tleV9maWxlLCBjb25zdCBjaGFyICpzZXJ2ZXJfY2VydF9maWxlLAorICAgaW50IHZl cmlmeV9zZXJ2ZXIgPSBTU0xfVkVSSUZZX05PTkU7CisgICBpbnQgdmVyaWZ5X2NsaWVudCA9IFNT TF9WRVJJRllfTk9ORTsKKyAKKysjaWZuZGVmIExJQlJFU1NMX1ZFUlNJT05fTlVNQkVSCisgICBp ZiAoY29uZmlndXJlX3NzbF9maXBzX21vZGUoc3NsX2ZpcHNfbW9kZSkgIT0gMSkgeworICAgICBH X0VSUk9SKCJFcnJvciBzZXR0aW5nIHRoZSBzc2wgZmlwcyBtb2RlIik7CisgICAgIGdvdG8gZXJy b3I7CisgICB9CisrI2VuZGlmCisgCisgICBTU0xfbGlicmFyeV9pbml0KCk7CisgICBTU0xfbG9h ZF9lcnJvcl9zdHJpbmdzKCk7CitAQCAtNjExLDcgKzYxNSw3IEBAIGVycm9yOgorIHZvaWQgeGNv bV9jbGVhbnVwX3NzbCgpIHsKKyAgIGlmICgheGNvbV91c2Vfc3NsKCkpIHJldHVybjsKKyAKKy0j aWYgT1BFTlNTTF9WRVJTSU9OX05VTUJFUiA8IDB4MTAxMDAwMDBMCisrI2lmIE9QRU5TU0xfVkVS U0lPTl9OVU1CRVIgPCAweDEwMTAwMDAwTCB8fCBkZWZpbmVkKExJQlJFU1NMX1ZFUlNJT05fTlVN QkVSKQorICAgRVJSX3JlbW92ZV90aHJlYWRfc3RhdGUoMCk7CisgI2VuZGlmIC8qIE9QRU5TU0xf VkVSU0lPTl9OVU1CRVIgPCAweDEwMTAwMDAwTCAqLworIH0KK2RpZmYgLS1naXQgcGx1Z2luL3gv Y2xpZW50L3hjb25uZWN0aW9uX2ltcGwuY2MgcGx1Z2luL3gvY2xpZW50L3hjb25uZWN0aW9uX2lt cGwuY2MKK2luZGV4IDEzYmM2Nzk0ZS4uNTIyMzE2OWRiIDEwMDY0NAorLS0tIHBsdWdpbi94L2Ns aWVudC94Y29ubmVjdGlvbl9pbXBsLmNjCisrKysgcGx1Z2luL3gvY2xpZW50L3hjb25uZWN0aW9u X2ltcGwuY2MKK0BAIC00OTgsNiArNDk4LDcgQEAgWEVycm9yIENvbm5lY3Rpb25faW1wbDo6Z2V0 X3NzbF9lcnJvcihjb25zdCBpbnQgZXJyb3JfaWQpIHsKKyAgIHJldHVybiBYRXJyb3IoQ1JfU1NM X0NPTk5FQ1RJT05fRVJST1IsIGJ1ZmZlcik7CisgfQorIAorKyNpZm5kZWYgTElCUkVTU0xfVkVS U0lPTl9OVU1CRVIKKyAvKioKKyAgIFNldCBmaXBzIG1vZGUgaW4gb3BlbnNzbCBsaWJyYXJ5LAor ICAgV2hlbiB3ZSBzZXQgZmlwcyBtb2RlIE9OL1NUUklDVCwgaXQgd2lsbCBwZXJmb3JtIGZvbGxv d2luZyBvcGVyYXRpb25zOgorQEAgLTUzNyw2ICs1MzgsNyBAQCBpbnQgc2V0X2ZpcHNfbW9kZShj b25zdCB1aW50MzJfdCBmaXBzX21vZGUsCisgRVhJVDoKKyAgIHJldHVybiByYzsKKyB9CisrI2Vu ZGlmCisgCisgWEVycm9yIENvbm5lY3Rpb25faW1wbDo6YWN0aXZhdGVfdGxzKCkgeworICAgaWYg KG51bGxwdHIgPT0gbV92aW8pIHJldHVybiBnZXRfc29ja2V0X2Vycm9yKFNPQ0tFVF9FQ09OTlJF U0VUKTsKK0BAIC01NDcsMTIgKzU0OSwxNCBAQCBYRXJyb3IgQ29ubmVjdGlvbl9pbXBsOjphY3Rp dmF0ZV90bHMoKSB7CisgICBpZiAoIW1fY29udGV4dC0+bV9zc2xfY29uZmlnLmlzX2NvbmZpZ3Vy ZWQoKSkKKyAgICAgcmV0dXJuIFhFcnJvcntDUl9TU0xfQ09OTkVDVElPTl9FUlJPUiwgRVJfVEVY VF9UTFNfTk9UX0NPTkZJR1VSQVRFRCwgdHJ1ZX07CisgCisrI2lmbmRlZiBMSUJSRVNTTF9WRVJT SU9OX05VTUJFUgorICAgY2hhciBlcnJfc3RyaW5nW09QRU5TU0xfRVJST1JfTEVOR1RIXSA9IHsn XDAnfTsKKyAgIGlmIChzZXRfZmlwc19tb2RlKAorICAgICAgICAgICBzdGF0aWNfY2FzdDx1aW50 MzJfdD4obV9jb250ZXh0LT5tX3NzbF9jb25maWcubV9zc2xfZmlwc19tb2RlKSwKKyAgICAgICAg ICAgZXJyX3N0cmluZykgIT0gMSkgeworICAgICByZXR1cm4gWEVycm9ye0NSX1NTTF9DT05ORUNU SU9OX0VSUk9SLCBlcnJfc3RyaW5nLCB0cnVlfTsKKyAgIH0KKysjZW5kaWYKKyAgIGF1dG8gc3Ns X2N0eF9mbGFncyA9IHByb2Nlc3NfdGxzX3ZlcnNpb24oCisgICAgICAgZGV0YWlsczo6bnVsbF93 aGVuX2VtcHR5KG1fY29udGV4dC0+bV9zc2xfY29uZmlnLm1fdGxzX3ZlcnNpb24pKTsKKyAKK2Rp ZmYgLS1naXQgcm91dGVyL3NyYy9odHRwL3NyYy90bHNfY2xpZW50X2NvbnRleHQuY2Mgcm91dGVy L3NyYy9odHRwL3NyYy90bHNfY2xpZW50X2NvbnRleHQuY2MKK2luZGV4IDI5N2NlZWUzMC4uN2Mx MTU3Mjg5IDEwMDY0NAorLS0tIHJvdXRlci9zcmMvaHR0cC9zcmMvdGxzX2NsaWVudF9jb250ZXh0 LmNjCisrKysgcm91dGVyL3NyYy9odHRwL3NyYy90bHNfY2xpZW50X2NvbnRleHQuY2MKK0BAIC01 NCw3ICs1NCw3IEBAIHZvaWQgVGxzQ2xpZW50Q29udGV4dDo6dmVyaWZ5KFRsc1ZlcmlmeSB2ZXJp ZnkpIHsKKyAKKyB2b2lkIFRsc0NsaWVudENvbnRleHQ6OmNpcGhlcl9zdWl0ZXMoY29uc3Qgc3Rk OjpzdHJpbmcgJmNpcGhlcnMpIHsKKyAvLyBUTFN2MS4zIGNpcGhlcnMgYXJlIGNvbnRyb2xsZWQg dmlhIFNTTF9DVFhfc2V0X2NpcGhlcnN1aXRlcygpCistI2lmIE9QRU5TU0xfVkVSU0lPTl9OVU1C RVIgPj0gUk9VVEVSX09QRU5TU0xfVkVSU0lPTigxLCAxLCAxKQorKyNpZmRlZiBUTFMxXzNfVkVS U0lPTgorICAgaWYgKDEgIT0gU1NMX0NUWF9zZXRfY2lwaGVyc3VpdGVzKHNzbF9jdHhfLmdldCgp LCBjaXBoZXJzLmNfc3RyKCkpKSB7CisgICAgIHRocm93IFRsc0Vycm9yKCJzZXQtY2lwaGVyLXN1 aXRlcyIpOworICAgfQorZGlmZiAtLWdpdCByb3V0ZXIvc3JjL2h0dHAvc3JjL3Rsc19jb250ZXh0 LmNjIHJvdXRlci9zcmMvaHR0cC9zcmMvdGxzX2NvbnRleHQuY2MKK2luZGV4IDYwZWQ3ZTZjYS4u Mzg4ZWY4ZjI4IDEwMDY0NAorLS0tIHJvdXRlci9zcmMvaHR0cC9zcmMvdGxzX2NvbnRleHQuY2MK KysrKyByb3V0ZXIvc3JjL2h0dHAvc3JjL3Rsc19jb250ZXh0LmNjCitAQCAtOTEsNyArOTEsNyBA QCBzdGF0aWMgaW50IG8xMXhfdmVyc2lvbihUbHNWZXJzaW9uIHZlcnNpb24pIHsKKyAgICAgICBy ZXR1cm4gVExTMV8xX1ZFUlNJT047CisgICAgIGNhc2UgVGxzVmVyc2lvbjo6VExTXzFfMjoKKyAg ICAgICByZXR1cm4gVExTMV8yX1ZFUlNJT047CistI2lmIE9QRU5TU0xfVkVSU0lPTl9OVU1CRVIg Pj0gUk9VVEVSX09QRU5TU0xfVkVSU0lPTigxLCAxLCAxKQorKyNpZmRlZiBUTFMxXzNfVkVSU0lP TgorICAgICBjYXNlIFRsc1ZlcnNpb246OlRMU18xXzM6CisgICAgICAgcmV0dXJuIFRMUzFfM19W RVJTSU9OOworICNlbmRpZgorQEAgLTEyMCw5ICsxMjAsMTEgQEAgdm9pZCBUbHNDb250ZXh0Ojp2 ZXJzaW9uX3JhbmdlKFRsc1ZlcnNpb24gbWluX3ZlcnNpb24sIFRsc1ZlcnNpb24gbWF4X3ZlcnNp b24pIHsKKyAgIHN3aXRjaCAobWluX3ZlcnNpb24pIHsKKyAgICAgZGVmYXVsdDoKKyAgICAgICAv LyB1bmtub3duLCBsZWF2ZSBhbGwgZGlzYWJsZWQKKysjaWZkZWYgVExTMV8zX1ZFUlNJT04KKyAg ICAgICAvLyBmYWxsdGhyb3VnaAorICAgICBjYXNlIFRsc1ZlcnNpb246OlRMU18xXzM6CisgICAg ICAgb3B0cyB8PSBTU0xfT1BfTk9fVExTdjFfMjsKKysjZW5kaWYKKyAgICAgICAvLyBmYWxsdGhy b3VnaAorICAgICBjYXNlIFRsc1ZlcnNpb246OlRMU18xXzI6CisgICAgICAgb3B0cyB8PSBTU0xf T1BfTk9fVExTdjFfMTsKK0BAIC0xNzAsOCArMTcyLDEwIEBAIFRsc1ZlcnNpb24gVGxzQ29udGV4 dDo6bWluX3ZlcnNpb24oKSBjb25zdCB7CisgICAgICAgcmV0dXJuIFRsc1ZlcnNpb246OlRMU18x XzE7CisgICAgIGNhc2UgVExTMV8yX1ZFUlNJT046CisgICAgICAgcmV0dXJuIFRsc1ZlcnNpb246 OlRMU18xXzI7CisrI2lmZGVmIFRMUzFfM19WRVJTSU9OCisgICAgIGNhc2UgVExTMV8zX1ZFUlNJ T046CisgICAgICAgcmV0dXJuIFRsc1ZlcnNpb246OlRMU18xXzM7CisrI2VuZGlmCisgICAgIGNh c2UgMDoKKyAgICAgICByZXR1cm4gVGxzVmVyc2lvbjo6QVVUTzsKKyAgICAgZGVmYXVsdDoKK0BA IC0yMzAsNyArMjM0LDggQEAgVGxzQ29udGV4dDo6SW5mb0NhbGxiYWNrIFRsc0NvbnRleHQ6Omlu Zm9fY2FsbGJhY2soKSBjb25zdCB7CisgfQorIAorIGludCBUbHNDb250ZXh0OjpzZWN1cml0eV9s ZXZlbCgpIGNvbnN0IHsKKy0jaWYgT1BFTlNTTF9WRVJTSU9OX05VTUJFUiA+PSBST1VURVJfT1BF TlNTTF9WRVJTSU9OKDEsIDEsIDApCisrI2lmIE9QRU5TU0xfVkVSU0lPTl9OVU1CRVIgPj0gUk9V VEVSX09QRU5TU0xfVkVSU0lPTigxLCAxLCAwKSAmJiBcCisrICAgICFkZWZpbmVkKExJQlJFU1NM X1ZFUlNJT05fTlVNQkVSKQorICAgcmV0dXJuIFNTTF9DVFhfZ2V0X3NlY3VyaXR5X2xldmVsKHNz bF9jdHhfLmdldCgpKTsKKyAjZWxzZQorICAgcmV0dXJuIDA7CitkaWZmIC0tZ2l0IHJvdXRlci9z cmMvaHR0cC9zcmMvdGxzX3NlcnZlcl9jb250ZXh0LmNjIHJvdXRlci9zcmMvaHR0cC9zcmMvdGxz X3NlcnZlcl9jb250ZXh0LmNjCitpbmRleCAwZjQ0NzI0MTkuLjcwN2Q3ZGU4NiAxMDA2NDQKKy0t LSByb3V0ZXIvc3JjL2h0dHAvc3JjL3Rsc19zZXJ2ZXJfY29udGV4dC5jYworKysrIHJvdXRlci9z cmMvaHR0cC9zcmMvdGxzX3NlcnZlcl9jb250ZXh0LmNjCitAQCAtMTY3LDcgKzE2Nyw4IEBAIHZv aWQgVGxzU2VydmVyQ29udGV4dDo6aW5pdF90bXBfZGgoY29uc3Qgc3RkOjpzdHJpbmcgJmRoX3Bh cmFtcykgeworICAgICB9CisgCisgICB9IGVsc2UgeworLSNpZiBPUEVOU1NMX1ZFUlNJT05fTlVN QkVSID49IFJPVVRFUl9PUEVOU1NMX1ZFUlNJT04oMSwgMSwgMCkKKysjaWYgT1BFTlNTTF9WRVJT SU9OX05VTUJFUiA+PSBST1VURVJfT1BFTlNTTF9WRVJTSU9OKDEsIDEsIDApICYmIFwKKysgICAg IWRlZmluZWQoTElCUkVTU0xfVkVSU0lPTl9OVU1CRVIpCisgICAgIGRoMjA0OC5yZXNldChESF9n ZXRfMjA0OF8yNTYoKSk7CisgI2Vsc2UKKyAgICAgLyoKK2RpZmYgLS1naXQgc3FsLWNvbW1vbi9j bGllbnQuY2Mgc3FsLWNvbW1vbi9jbGllbnQuY2MKK2luZGV4IGZmYjEzNmI1Yi4uOGEwYzdiODM0 IDEwMDY0NAorLS0tIHNxbC1jb21tb24vY2xpZW50LmNjCisrKysgc3FsLWNvbW1vbi9jbGllbnQu Y2MKK0BAIC03NzY2LDYgKzc3NjYsNyBAQCBpbnQgU1REQ0FMTCBteXNxbF9vcHRpb25zKE1ZU1FM ICpteXNxbCwgZW51bSBteXNxbF9vcHRpb24gb3B0aW9uLAorICAgICAgICAgcmV0dXJuIDE7Cisg ICAgICAgYnJlYWs7CisgICAgIGNhc2UgTVlTUUxfT1BUX1NTTF9GSVBTX01PREU6IHsKKysjaWYg IWRlZmluZWQoTElCUkVTU0xfVkVSU0lPTl9OVU1CRVIpCisgICAgICAgY2hhciBzc2xfZXJyX3N0 cmluZ1tPUEVOU1NMX0VSUk9SX0xFTkdUSF0gPSB7J1wwJ307CisgICAgICAgRU5TVVJFX0VYVEVO U0lPTlNfUFJFU0VOVCgmbXlzcWwtPm9wdGlvbnMpOworICAgICAgIG15c3FsLT5vcHRpb25zLmV4 dGVuc2lvbi0+c3NsX2ZpcHNfbW9kZSA9ICpzdGF0aWNfY2FzdDxjb25zdCB1aW50ICo+KGFyZyk7 CitAQCAtNzc3Nyw2ICs3Nzc4LDcgQEAgaW50IFNURENBTEwgbXlzcWxfb3B0aW9ucyhNWVNRTCAq bXlzcWwsIGVudW0gbXlzcWxfb3B0aW9uIG9wdGlvbiwKKyAgICAgICAgICAgICAiU2V0IEZpcHMg bW9kZSBPTi9TVFJJQ1QgZmFpbGVkLCBkZXRhaWw6ICclcycuIiwgc3NsX2Vycl9zdHJpbmcpOwor ICAgICAgICAgcmV0dXJuIDE7CisgICAgICAgfQorKyNlbmRpZgorICAgICB9IGJyZWFrOworICAg ICBjYXNlIE1ZU1FMX09QVF9TU0xfTU9ERToKKyAgICAgICBFTlNVUkVfRVhURU5TSU9OU19QUkVT RU5UKCZteXNxbC0+b3B0aW9ucyk7CitkaWZmIC0tZ2l0IHNxbC9teXNxbGQuY2Mgc3FsL215c3Fs ZC5jYworaW5kZXggNjgyZThkNWFlLi45NmE5MjJkN2EgMTAwNjQ0CistLS0gc3FsL215c3FsZC5j YworKysrIHNxbC9teXNxbGQuY2MKK0BAIC01MTA5LDcgKzUxMDksNyBAQCBzdGF0aWMgaW50IGlu aXRfdGhyZWFkX2Vudmlyb25tZW50KCkgeworIAorIHN0YXRpYyBQU0lfbWVtb3J5X2tleSBrZXlf bWVtb3J5X29wZW5zc2wgPSBQU0lfTk9UX0lOU1RSVU1FTlRFRDsKKyAKKy0jaWYgT1BFTlNTTF9W RVJTSU9OX05VTUJFUiA8IDB4MTAxMDAwMDBMCisrI2lmIE9QRU5TU0xfVkVSU0lPTl9OVU1CRVIg PCAweDEwMTAwMDAwTCB8fCBkZWZpbmVkKExJQlJFU1NMX1ZFUlNJT05fTlVNQkVSKQorICNkZWZp bmUgRklMRV9MSU5FX0FSR1MKKyAjZWxzZQorICNkZWZpbmUgRklMRV9MSU5FX0FSR1MgLCBjb25z dCBjaGFyICosIGludAorQEAgLTUxNDMsMTIgKzUxNDMsMTQgQEAgc3RhdGljIHZvaWQgaW5pdF9z c2woKSB7CisgfQorIAorIHN0YXRpYyBpbnQgaW5pdF9zc2xfY29tbXVuaWNhdGlvbigpIHsKKysj aWZuZGVmIExJQlJFU1NMX1ZFUlNJT05fTlVNQkVSCisgICBjaGFyIHNzbF9lcnJfc3RyaW5nW09Q RU5TU0xfRVJST1JfTEVOR1RIXSA9IHsnXDAnfTsKKyAgIGludCByZXRfZmlwc19tb2RlID0gc2V0 X2ZpcHNfbW9kZShvcHRfc3NsX2ZpcHNfbW9kZSwgc3NsX2Vycl9zdHJpbmcpOworICAgaWYgKHJl dF9maXBzX21vZGUgIT0gMSkgeworICAgICBMb2dFcnIoRVJST1JfTEVWRUwsIEVSX1NTTF9GSVBT X01PREVfRVJST1IsIHNzbF9lcnJfc3RyaW5nKTsKKyAgICAgcmV0dXJuIDE7CisgICB9CisrI2Vu ZGlmCisgICBpZiAoVExTX2NoYW5uZWw6OnNpbmdsZXRvbl9pbml0KCZteXNxbF9tYWluLCBteXNx bF9tYWluX2NoYW5uZWwsIG9wdF91c2Vfc3NsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAmc2VydmVyX21haW5fY2FsbGJhY2ssIG9wdF9pbml0aWFsaXplKSkKKyAgICAgcmV0 dXJuIDE7CitkaWZmIC0tZ2l0IHNxbC9zeXNfdmFycy5jYyBzcWwvc3lzX3ZhcnMuY2MKK2luZGV4 IDViMWE4MmQyZi4uNGUyZGZmODY1IDEwMDY0NAorLS0tIHNxbC9zeXNfdmFycy5jYworKysrIHNx bC9zeXNfdmFycy5jYworQEAgLTQ0NzQsNiArNDQ3NCw3IEBAIHN0YXRpYyBTeXNfdmFyX3Vsb25n IFN5c19tYXhfZXhlY3V0aW9uX3RpbWUoCisgICAgIEhJTlRfVVBEQVRFQUJMRSBTRVNTSU9OX1ZB UihtYXhfZXhlY3V0aW9uX3RpbWUpLCBDTURfTElORShSRVFVSVJFRF9BUkcpLAorICAgICBWQUxJ RF9SQU5HRSgwLCBVTE9OR19NQVgpLCBERUZBVUxUKDApLCBCTE9DS19TSVpFKDEpKTsKKyAKKysj aWZuZGVmIExJQlJFU1NMX1ZFUlNJT05fTlVNQkVSCisgc3RhdGljIGJvb2wgdXBkYXRlX2ZpcHNf bW9kZShzeXNfdmFyICosIFRIRCAqLCBlbnVtX3Zhcl90eXBlKSB7CisgICBjaGFyIHNzbF9lcnJf c3RyaW5nW09QRU5TU0xfRVJST1JfTEVOR1RIXSA9IHsnXDAnfTsKKyAgIGlmIChzZXRfZmlwc19t b2RlKG9wdF9zc2xfZmlwc19tb2RlLCBzc2xfZXJyX3N0cmluZykgIT0gMSkgeworQEAgLTQ0ODQs MTUgKzQ0ODUsMzEgQEAgc3RhdGljIGJvb2wgdXBkYXRlX2ZpcHNfbW9kZShzeXNfdmFyICosIFRI RCAqLCBlbnVtX3Zhcl90eXBlKSB7CisgICAgIHJldHVybiBmYWxzZTsKKyAgIH0KKyB9CisrI2Vu ZGlmCisrCisrI2lmIGRlZmluZWQoTElCUkVTU0xfVkVSU0lPTl9OVU1CRVIpCisrc3RhdGljIGNv bnN0IGNoYXIgKnNzbF9maXBzX21vZGVfbmFtZXNbXSA9IHsiT0ZGIiwgMH07CisrI2Vsc2UKKytz dGF0aWMgY29uc3QgY2hhciAqc3NsX2ZpcHNfbW9kZV9uYW1lc1tdID0geyJPRkYiLCAiT04iLCAi U1RSSUNUIiwgMH07CisrI2VuZGlmCisgCistc3RhdGljIGNvbnN0IGNoYXIgKnNzbF9maXBzX21v ZGVfbmFtZXNbXSA9IHsiT0ZGIiwgIk9OIiwgIlNUUklDVCIsIG51bGxwdHJ9OworIHN0YXRpYyBT eXNfdmFyX2VudW0gU3lzX3NzbF9maXBzX21vZGUoCisgICAgICJzc2xfZmlwc19tb2RlIiwKKyAg ICAgIlNTTCBGSVBTIG1vZGUgKGFwcGxpZXMgb25seSBmb3IgT3BlblNTTCk7ICIKKysjaWZuZGVm IExJQlJFU1NMX1ZFUlNJT05fTlVNQkVSCisgICAgICJwZXJtaXR0ZWQgdmFsdWVzIGFyZTogT0ZG LCBPTiwgU1RSSUNUIiwKKysjZWxzZQorKyAgICAicGVybWl0dGVkIHZhbHVlcyBhcmU6IE9GRiIs CisrI2VuZGlmCisgICAgIEdMT0JBTF9WQVIob3B0X3NzbF9maXBzX21vZGUpLCBDTURfTElORShS RVFVSVJFRF9BUkcsIE9QVF9TU0xfRklQU19NT0RFKSwKKyAgICAgc3NsX2ZpcHNfbW9kZV9uYW1l cywgREVGQVVMVCgwKSwgTk9fTVVURVhfR1VBUkQsIE5PVF9JTl9CSU5MT0csCistICAgIE9OX0NI RUNLKG51bGxwdHIpLCBPTl9VUERBVEUodXBkYXRlX2ZpcHNfbW9kZSksIG51bGxwdHIpOworKyAg ICBPTl9DSEVDSyhOVUxMKSwKKysjaWZuZGVmIExJQlJFU1NMX1ZFUlNJT05fTlVNQkVSCisrICAg IE9OX1VQREFURSh1cGRhdGVfZmlwc19tb2RlKSwKKysjZWxzZQorKyAgICBPTl9VUERBVEUoTlVM TCksCisrI2VuZGlmCisrICAgIE5VTEwpOworIAorIHN0YXRpYyBTeXNfdmFyX2Jvb2wgU3lzX2F1 dG9fZ2VuZXJhdGVfY2VydHMoCisgICAgICJhdXRvX2dlbmVyYXRlX2NlcnRzIiwKK2RpZmYgLS1n aXQgdmlvL3Zpb3NzbC5jYyB2aW8vdmlvc3NsLmNjCitpbmRleCAwZTk1OTQ3NDEuLjNhNTg5YzY0 YiAxMDA2NDQKKy0tLSB2aW8vdmlvc3NsLmNjCisrKysgdmlvL3Zpb3NzbC5jYworQEAgLTQ1LDcg KzQ1LDcgQEAKKyAgIEJJT19zZXRfY2FsbGJhY2tfZXggd2FzIGFkZGVkIGluIG9wZW5TU0wgMS4x LjEKKyAgIEZvciBvbGRlciBvcGVuU1NMLCB1c2UgdGhlIGRlcHJlY2F0ZWQgQklPX3NldF9jYWxs YmFjay4KKyAqLworLSNpZiBPUEVOU1NMX1ZFUlNJT05fTlVNQkVSID49IDB4MTAxMDEwMDBMCisr I2lmIE9QRU5TU0xfVkVSU0lPTl9OVU1CRVIgPj0gMHgxMDEwMTAwMEwgJiYgIWRlZmluZWQoTElC UkVTU0xfVkVSU0lPTl9OVU1CRVIpCisgI2RlZmluZSBIQVZFX0JJT19TRVRfQ0FMTEJBQ0tfRVgK KyAjZW5kaWYKKyAKK0BAIC02MzQsOCArNjM0LDggQEAgc3RhdGljIGludCBzc2xfZG8oc3RydWN0 IHN0X1Zpb1NTTEZkICpwdHIsIFZpbyAqdmlvLCBsb25nIHRpbWVvdXQsCisgCisgI2lmICFkZWZp bmVkKERCVUdfT0ZGKQorICAgICB7CistICAgICAgU1RBQ0tfT0YoU1NMX0NPTVApICpzc2xfY29t cF9tZXRob2RzID0gbnVsbHB0cjsKKy0gICAgICBzc2xfY29tcF9tZXRob2RzID0gU1NMX0NPTVBf Z2V0X2NvbXByZXNzaW9uX21ldGhvZHMoKTsKKysgICAgICBTVEFDS19PRihTU0xfQ09NUCkgKnNz bF9jb21wX21ldGhvZHMgPSBOVUxMOworKyAgICAgIHNzbF9jb21wX21ldGhvZHMgPSAoU1RBQ0tf T0YoU1NMX0NPTVApICopU1NMX0NPTVBfZ2V0X2NvbXByZXNzaW9uX21ldGhvZHMoKTsKKyAgICAg ICBuID0gc2tfU1NMX0NPTVBfbnVtKHNzbF9jb21wX21ldGhvZHMpOworICAgICAgIERCVUdfUFJJ TlQoImluZm8iLCAoIkF2YWlsYWJsZSBjb21wcmVzc2lvbiBtZXRob2RzOlxuIikpOworICAgICAg IGlmIChuID09IDApCitAQCAtNjQzLDcgKzY0Myw3IEBAIHN0YXRpYyBpbnQgc3NsX2RvKHN0cnVj dCBzdF9WaW9TU0xGZCAqcHRyLCBWaW8gKnZpbywgbG9uZyB0aW1lb3V0LAorICAgICAgIGVsc2UK KyAgICAgICAgIGZvciAoaiA9IDA7IGogPCBuOyBqKyspIHsKKyAgICAgICAgICAgU1NMX0NPTVAg KmMgPSBza19TU0xfQ09NUF92YWx1ZShzc2xfY29tcF9tZXRob2RzLCBqKTsKKy0jaWYgT1BFTlNT TF9WRVJTSU9OX05VTUJFUiA8IDB4MTAxMDAwMDBMCisrI2lmIE9QRU5TU0xfVkVSU0lPTl9OVU1C RVIgPCAweDEwMTAwMDAwTCB8fCBkZWZpbmVkKExJQlJFU1NMX1ZFUlNJT05fTlVNQkVSKQorICAg ICAgICAgICBEQlVHX1BSSU5UKCJpbmZvIiwgKCIgICVkOiAlc1xuIiwgYy0+aWQsIGMtPm5hbWUp KTsKKyAjZWxzZSAgLyogT1BFTlNTTF9WRVJTSU9OX05VTUJFUiA8IDB4MTAxMDAwMDBMICovCisg ICAgICAgICAgIERCVUdfUFJJTlQoImluZm8iLAorZGlmZiAtLWdpdCB2aW8vdmlvc3NsZmFjdG9y aWVzLmNjIHZpby92aW9zc2xmYWN0b3JpZXMuY2MKK2luZGV4IDZjMDQwMjljYy4uZjI3MjIxNDYz IDEwMDY0NAorLS0tIHZpby92aW9zc2xmYWN0b3JpZXMuY2MKKysrKyB2aW8vdmlvc3NsZmFjdG9y aWVzLmNjCitAQCAtNDczLDYgKzQ3Myw3IEBAIHZvaWQgc3NsX3N0YXJ0KCkgeworICAgfQorIH0K KyAKKysjaWZuZGVmIExJQlJFU1NMX1ZFUlNJT05fTlVNQkVSCisgLyoqCisgICBTZXQgZmlwcyBt b2RlIGluIG9wZW5zc2wgbGlicmFyeSwKKyAgIFdoZW4gd2Ugc2V0IGZpcHMgbW9kZSBPTi9TVFJJ Q1QsIGl0IHdpbGwgcGVyZm9ybSBmb2xsb3dpbmcgb3BlcmF0aW9uczoKK0BAIC01MjYsNiArNTI3 LDcgQEAgRVhJVDoKKyAgIEByZXR1cm5zIG9wZW5zc2wgY3VycmVudCBmaXBzIG1vZGUKKyAqLwor IHVpbnQgZ2V0X2ZpcHNfbW9kZSgpIHsgcmV0dXJuIEZJUFNfbW9kZSgpOyB9CisrI2VuZGlmCisg CisgbG9uZyBwcm9jZXNzX3Rsc192ZXJzaW9uKGNvbnN0IGNoYXIgKnRsc192ZXJzaW9uKSB7Cisg ICBjb25zdCBjaGFyICpzZXBhcmF0b3IgPSAiLCI7CistLSAKKzIuMjcuMAorCmRpZmYgLS1naXQg YS9zcmNwa2dzL215c3FsOC90ZW1wbGF0ZSBiL3NyY3BrZ3MvbXlzcWw4L3RlbXBsYXRlCm5ldyBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi4wOTc3ZTU4YWFlZgotLS0gL2Rldi9u dWxsCisrKyBiL3NyY3BrZ3MvbXlzcWw4L3RlbXBsYXRlCkBAIC0wLDAgKzEsMTU1IEBACisjIFRl bXBsYXRlIGZpbGUgZm9yICdteXNxbDgnCitwa2duYW1lPW15c3FsOAordmVyc2lvbj04LjAuMjEK K3JldmlzaW9uPTEKK3dya3NyYz0ibXlzcWwtJHt2ZXJzaW9ufSIKK2J1aWxkX3N0eWxlPWNtYWtl Citjb25maWd1cmVfYXJncz0iLURJTlNUQUxMX0lORk9ESVI9c2hhcmUvbXlzcWwvZG9jcworCS1E SU5TVEFMTF9NQU5ESVI9c2hhcmUvbWFuCisJLURJTlNUQUxMX1BMVUdJTkRJUj1saWIvbXlzcWwv cGx1Z2luCisJLURJTlNUQUxMX1NDUklQVERJUj1iaW4KKwktRElOU1RBTExfSU5DTFVERURJUj1p bmNsdWRlL215c3FsCisJLURJTlNUQUxMX0RPQ1JFQURNRURJUj1zaGFyZS9teXNxbAorCS1ESU5T VEFMTF9TVVBQT1JURklMRVNESVI9c2hhcmUvbXlzcWwKKwktRElOU1RBTExfTVlTUUxTSEFSRURJ Uj1zaGFyZS9teXNxbAorCS1ESU5TVEFMTF9ET0NESVI9c2hhcmUvbXlzcWwvZG9jcworCS1ESU5T VEFMTF9TSEFSRURJUj1zaGFyZS9teXNxbAorCS1EU1lTQ09ORkRJUj0vZXRjL215c3FsCisJLURN WVNRTF9EQVRBRElSPS92YXIvbGliL215c3FsCisJLURNWVNRTF9VTklYX0FERFI9L3J1bi9teXNx bGQvbXlzcWxkLnNvY2sKKwktRERFRkFVTFRfQ0hBUlNFVD11dGY4bWI0ICAgICAgICAgICAgICAg IyBkZWZhdWx0CisJLURERUZBVUxUX0NPTExBVElPTj11dGY4bWI0XzA5MDBfYWlfY2kgICMgZGVm YXVsdAorCS1ERU5BQkxFRF9MT0NBTF9JTkZJTEU9T04KKwktRFdJVEhfWkxJQj1zeXN0ZW0KKwkt RFdJVEhfWlNURD1zeXN0ZW0KKwktRFdJVEhfTFo0PXN5c3RlbQorCS1EV0lUSF9MWk1BPXN5c3Rl bQorCS1EV0lUSF9TU0w9c3lzdGVtCisJLURXSVRIX0xJQldSQVA9T0ZGCisJLURXSVRIT1VUX0VY QU1QTEVfU1RPUkFHRV9FTkdJTkU9MQorCS1EV0lUSE9VVF9BUkNISVZFX1NUT1JBR0VfRU5HSU5F PTEKKwktRFdJVEhPVVRfQkxBQ0tIT0xFX1NUT1JBR0VfRU5HSU5FPTEKKwktRFdJVEhPVVRfRkVE RVJBVEVEX1NUT1JBR0VfRU5HSU5FPTEKKwktRFdJVEhPVVRfTkRCX1NUT1JBR0VfRU5HSU5FPTEK KyIKK2hvc3RtYWtlZGVwZW5kcz0icGVybCBiaXNvbiBuY3Vyc2VzLWRldmVsIgorbWFrZWRlcGVu ZHM9InpsaWItZGV2ZWwgbGlienN0ZC1kZXZlbCBsaWJsejQtZGV2ZWwgbGlibHptYS1kZXZlbCBs aWJyZXNzbC1kZXZlbAorcmVhZGxpbmUtZGV2ZWwgYm9vc3QtZGV2ZWwiCitkZXBlbmRzPSJteXNx bDgtY2xpZW50IgorcHJvdmlkZXM9Im15c3FsLSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCityZXBs YWNlcz0ibXlzcWw+PTAiCitjb25mX2ZpbGVzPSIvZXRjL215c3FsL215LmNuZiIKK3Nob3J0X2Rl c2M9IldvcmxkJ3MgbW9zdCBwb3B1bGFyIG9wZW4gc291cmNlIGRhdGFiYXNlIgorbWFpbnRhaW5l cj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIKK2xpY2Vuc2U9IkdQTC0yLjAtb25s eSIKK2hvbWVwYWdlPSJodHRwczovL3d3dy5teXNxbC5jb20vcHJvZHVjdHMvY29tbXVuaXR5LyIK K2Rpc3RmaWxlcz0iaHR0cDovL2Rldi5teXNxbC5jb20vZ2V0L0Rvd25sb2Fkcy9NeVNRTC0ke3Zl cnNpb24lLip9L215c3FsLSR7dmVyc2lvbn0udGFyLmd6IgorY2hlY2tzdW09YWQ1NjUzNWVlZTAz OTQzYWRlZWY1ZjE4OGUxZGY3YTM5NzI5YTc1NTdkOGIyMTc5YjFhZmZkOTk0Yjk5MDAzNAorc3lz dGVtX2FjY291bnRzPSJteXNxbCIKK215c3FsX2hvbWVkaXI9Ii92YXIvbGliL215c3FsIgorbGli MzJkaXNhYmxlZD15ZXMKKworQ0ZMQUdTPSItRF9fU1REQ19JU09fMTA2NDZfXyIKK2lmIFsgIiRD Uk9TU19CVUlMRCIgXTsgdGhlbgorCWNvbmZpZ3VyZV9hcmdzKz0iIC1ESEFWRV9MTFZNX0xJQkNQ UF9FWElUQ09ERT0xIgorCWNvbmZpZ3VyZV9hcmdzKz0iIC1ESEFWRV9MTFZNX0xJQkNQUF9FWElU Q09ERV9fVFJZUlVOX09VVFBVVD0wIgorZmkKKworcHJlX2NvbmZpZ3VyZSgpIHsKKwkjIGxpYnJl c3NsIG1ham9yIGRldGVjdGlvbi4KKwlzZWQgLWkgJy9PUEVOU1NMX01BSk9SX1ZFUlNJT04vcy8x LzIvJyBjbWFrZS9zc2wuY21ha2UKKwkjc2VkIC1pICdzL3N5c1wvcG9sbFwuaC9wb2xsLmgvJyBp bmNsdWRlL215X25ldC5oCisKKwkjIFdlIG5lZWQgc29tZSBob3N0IGJpbmFyaWVzIGJlZm9yZSBz dGFydGluZyBjcm9zcyBjb21waWxhdGlvbi4KKwlpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4K KwkJQ0M9IENYWD0gQ1BQPSBMRD0gQVI9IEFTPSBSQU5MSUI9IENGTEFHUz0gQ1hYRkxBR1M9IExE RkxBR1M9IGNtYWtlIC4KKwkJbWFrZSBjb21wX2VyciBjb21wX3NxbCBnZW5fbGV4X2hhc2ggZ2Vu X2xleF90b2tlbgorCQlta2RpciAtcCBiaW4uaG9zdC97ZXh0cmEsc2NyaXB0cyxzcWx9CisJCWNw IGV4dHJhL2NvbXBfZXJyIGJpbi5ob3N0L2V4dHJhCisJCWNwIHNjcmlwdHMvY29tcF9zcWwgYmlu Lmhvc3Qvc2NyaXB0cworCQljcCBzcWwvZ2VuX2xleF9oYXNoIGJpbi5ob3N0L3NxbAorCQljcCBz cWwvZ2VuX2xleF90b2tlbiBiaW4uaG9zdC9zcWwKKwkJbWFrZSBjbGVhbgorCQkjIFJlbW92ZSB0 aGUgcnVsZXMgZm9yIHRoZSBob3N0IGJpbmFyaWVzIHRvIG5vdAorCQkjIGhhdmUgdGhlbSBvdmVy d3JpdHRlbiB3aXRoIHRhcmdldCBiaW5hcmllcworCQlybSBDTWFrZUNhY2hlLnR4dAorCQl2c2Vk IC1pICR7d3Jrc3JjfS9zY3JpcHRzL0NNYWtlTGlzdHMudHh0IFwKKwkJCS1lICIvQUREX0VYRUNV VEFCTEUoY29tcF9zcWwvZCIKKwkJdnNlZCAtaSAke3dya3NyY30vc3FsL0NNYWtlTGlzdHMudHh0 IFwKKwkJCS1lICIvQUREX0VYRUNVVEFCTEUoZ2VuX2xleF9oYXNoL2QiIFwKKwkJCS1lICIvQURE X0VYRUNVVEFCTEUoZ2VuX2xleF90b2tlbi9kIiBcCisJCQktZSAiL0FERF9ERVBFTkRFTkNJRVMo Z2VuX2xleF90b2tlbi9kIgorCWZpCit9CisKK3ByZV9idWlsZCgpIHsKKwlpZiBbICIkQ1JPU1Nf QlVJTEQiIF07IHRoZW4KKwkJbWtkaXIgLXAgJHt3cmtzcmN9L2J1aWxkCisJCWNwIC1hICR7d3Jr c3JjfS9iaW4uaG9zdC8qICR7d3Jrc3JjfS9idWlsZAorCQlta2RpciAtcCAke3dya3NyY30vYnVp bGQvbGlibXlzcWxkCisJCWNwICR7d3Jrc3JjfS9iaW4uaG9zdC9zcWwvZ2VuX2xleF90b2tlbiAk e3dya3NyY30vYnVpbGQvbGlibXlzcWxkCisJCWV4cG9ydCBQQVRIPSR7UEFUSH06JHt3cmtzcmN9 L2J1aWxkL2V4dHJhOiR7d3Jrc3JjfS9idWlsZC9zY3JpcHRzOiR7d3Jrc3JjfS9idWlsZC9zcWwK KwlmaQorfQorCitwb3N0X2luc3RhbGwoKSB7CisJIyBSZW1vdmUgdW5uZWVkZWQgc3R1ZmYuCisJ cm0gLXJmICR7REVTVERJUn0vdXNyL3tzcWwtYmVuY2gsbXlzcWwtdGVzdCxkYXRhfQorCXJtIC1m ICR7REVTVERJUn0vdXNyL3NoYXJlL21hbi9tYW4xL215c3FsLXRlc3QtcnVuLnBsLjEKKworCSMg Q29uZmlndXJhdGlvbiBmaWxlLgorCXZpbnN0YWxsICR7RklMRVNESVJ9L215LmNuZiA2NDAgZXRj L215c3FsCisKKwkjIHJ1bml0IHNlcnZpY2UKKwl2c3YgbXlzcWxkCit9CisKK2xpYm15c3FsY2xp ZW50OF9wYWNrYWdlKCkgeworCXNob3J0X2Rlc2MrPSIgLSBjbGllbnQgbGlicmFyeSIKKwlwcm92 aWRlcz0ibGlibXlzcWxjbGllbnQtJHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlyZXBsYWNlcz0i bGlibXlzcWxjbGllbnQ+PTAiCisJcGtnX2luc3RhbGwoKSB7CisJCXZtb3ZlICJ1c3IvbGliL2xp Ym15c3FsY2xpZW50Ki5zby4qIgorCX0KK30KKworbGlibXlzcWxjbGllbnQ4LWRldmVsX3BhY2th Z2UoKSB7CisJZGVwZW5kcz0ibGlibXlzcWxjbGllbnQ4Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259 IgorCXByb3ZpZGVzPSJsaWJteXNxbGNsaWVudC1kZXZlbC0ke3ZlcnNpb259XyR7cmV2aXNpb259 IgorCXJlcGxhY2VzPSJsaWJteXNxbGNsaWVudC1kZXZlbD49MCIKKwlzaG9ydF9kZXNjKz0iIC0g ZGV2ZWxvcG1lbnQgZmlsZXMiCisJcGtnX2luc3RhbGwoKSB7CisJCXZtb3ZlIHVzci9iaW4vbXlz cWxfY29uZmlnCisJCXZtb3ZlIHVzci9zaGFyZS9tYW4vbWFuMS9teXNxbF9jb25maWcuMQorCQl2 bW92ZSB1c3IvaW5jbHVkZQorCQl2bW92ZSAidXNyL2xpYi8qLmEiCisJCXZtb3ZlICJ1c3IvbGli Lyouc28iCisJfQorfQorCitteXNxbDgtY2xpZW50X3BhY2thZ2UoKSB7CisJZGVwZW5kcz0icGVy bCIKKwlwcm92aWRlcz0ibXlzcWwtY2xpZW50LSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCisJcmVw bGFjZXM9Im15c3FsLWNsaWVudD49MCIKKwlzaG9ydF9kZXNjKz0iIC0gZGF0YWJhc2UgY2xpZW50 IGJpbmFyaWVzIgorCXBrZ19pbnN0YWxsKCkgeworCQlmb3IgZiBpbiBpbm5vY2hlY2tzdW0gaW5u b3RvcCBteWlzYW1fZnRkdW1wIG15c3FsIG15c3FsX2NsaWVudF90ZXN0IFwKKwkJCW15c3FsX2Ns aWVudF90ZXN0X2VtYmVkZGVkIG15c3FsZHVtcHNsb3cgbXlzcWxiaW5sb2cgXAorCQkJbXlzcWxf ZmluZF9yb3dzIG15c3FsX2ZpeF9leHRlbnNpb25zIG15c3FsX3dhaXRwaWQgbXlzcWxhY2Nlc3Mg XAorCQkJbXlzcWxhZG1pbiBteXNxbGFuYWx5emUgbXlzcWxidWcgbXlzcWxjaGVjayBteXNxbGR1 bXAgXAorCQkJbXlzcWxpbXBvcnQgbXlzcWxvcHRpbWl6ZSBteXNxbHJlcGFpciBteXNxbHJlcG9y dCBteXNxbHNob3cgXAorCQkJbXlzcWxzbGFwIG15c3FsdGVzdF9lbWJlZGRlZCBteXNxbG1hbmFn ZXIgbXlzcWx0ZXN0IFwKKwkJCW15c3FsaG90Y29weSBteXNxbF91cGdyYWRlIG15c3FsX3phcDsg ZG8KKwkJCWlmIFsgLWYgJHtERVNURElSfS91c3IvYmluLyR7Zn0gXTsgdGhlbgorCQkJCXZtb3Zl IHVzci9iaW4vJHtmfQorCQkJZWxpZiBbIC1mICR7REVTVERJUn0vdXNyL3NiaW4vJHtmfSBdOyB0 aGVuCisJCQkJdm1vdmUgdXNyL3NiaW4vJHtmfQorCQkJZmkKKwkJCWlmIFsgLWYgJHtERVNURElS fS91c3Ivc2hhcmUvbWFuL21hbjEvJHtmfS4xIF07IHRoZW4KKwkJCQl2bW92ZSB1c3Ivc2hhcmUv bWFuL21hbjEvJHtmfS4xCisJCQllbGlmIFsgLWYgJHtERVNURElSfS91c3Ivc2hhcmUvbWFuL21h bjgvJHtmfS44IF07IHRoZW4KKwkJCQl2bW92ZSB1c3Ivc2hhcmUvbWFuL21hbjgvJHtmfS44CisJ CQlmaQorCQlkb25lCisJfQorfQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9teXNxbDgvdXBkYXRlIGIv c3JjcGtncy9teXNxbDgvdXBkYXRlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw MDAwLi5kYTgwNzk3Y2Y0YQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbXlzcWw4L3VwZGF0 ZQpAQCAtMCwwICsxLDIgQEAKK3NpdGU9J2h0dHA6Ly9kZXYubXlzcWwuY29tL2Rvd25sb2Fkcy9t eXNxbC8nCitwYXR0ZXJuPSdNeVNRTCBDb21tdW5pdHkgU2VydmVyIFxLW1xkLl0rJwo= --===============6005391164728078819==--