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, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 23956 invoked from network); 15 Aug 2022 16:50:06 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 15 Aug 2022 16:50:06 -0000 Content-Type: multipart/mixed; boundary="===============6726457901827332264==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_New_package=3A_7zip-22=2E00?= To: ml@inbox.vuxu.org From: r-ricci Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Mon, 15 Aug 2022 18:50:06 +0200 List-Id: Message-ID: <20220815165006.ojRoI_cgzm63Gy-q-kYeYmNuj9-mu3_QIFrhasP3z-c@z> GitHub notification mails are now in MIME to allow UTF8. --===============6726457901827332264== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgci1yaWNjaSBhZ2FpbnN0IG1hc3Rl ciBvbiB0aGUgdm9pZC1wYWNrYWdlcyByZXBvc2l0b3J5CgpodHRwczovL2dpdGh1Yi5jb20vci1y aWNjaS92b2lkLXBhY2thZ2VzIDd6aXAKaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9p ZC1wYWNrYWdlcy9wdWxsLzM3OTQwCgpOZXcgcGFja2FnZTogN3ppcC0yMi4wMAo8IS0tIFVuY29t bWVudCByZWxldmFudCBzZWN0aW9ucyBhbmQgZGVsZXRlIG9wdGlvbnMgd2hpY2ggYXJlIG5vdCBh cHBsaWNhYmxlIC0tPg0KDQojIyMjIFRlc3RpbmcgdGhlIGNoYW5nZXMNCi0gSSB0ZXN0ZWQgdGhl IGNoYW5nZXMgaW4gdGhpcyBQUjogKipicmllZmx5KioNCg0KPCEtLQ0KIyMjIyBOZXcgcGFja2Fn ZQ0KLSBUaGlzIG5ldyBwYWNrYWdlIGNvbmZvcm1zIHRvIHRoZSBbcXVhbGl0eSByZXF1aXJlbWVu dHNdKGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvYmxvYi9tYXN0 ZXIvTWFudWFsLm1kI3F1YWxpdHktcmVxdWlyZW1lbnRzKTogKipZRVMqKnwqKk5PKioNCi0tPg0K DQo8IS0tIE5vdGU6IElmIHRoZSBidWlsZCBpcyBsaWtlbHkgdG8gdGFrZSBtb3JlIHRoYW4gMiBo b3VycywgcGxlYXNlIGFkZCBjaSBza2lwIHRhZyBhcyBkZXNjcmliZWQgaW4NCmh0dHBzOi8vZ2l0 aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvYmxvYi9tYXN0ZXIvQ09OVFJJQlVUSU5H Lm1kI2NvbnRpbnVvdXMtaW50ZWdyYXRpb24NCmFuZCB0ZXN0IGF0IGxlYXN0IG9uZSBuYXRpdmUg YnVpbGQgYW5kLCBpZiBzdXBwb3J0ZWQsIGF0IGxlYXN0IG9uZSBjcm9zcyBidWlsZC4NCklnbm9y ZSB0aGlzIHNlY3Rpb24gaWYgdGhpcyBQUiBpcyBub3Qgc2tpcHBpbmcgQ0kuDQotLT4NCjwhLS0N CiMjIyMgTG9jYWwgYnVpbGQgdGVzdGluZw0KLSBJIGJ1aWx0IHRoaXMgUFIgbG9jYWxseSBmb3Ig bXkgbmF0aXZlIGFyY2hpdGVjdHVyZSwgKEFSQ0gtTElCQykNCi0gSSBidWlsdCB0aGlzIFBSIGxv Y2FsbHkgZm9yIHRoZXNlIGFyY2hpdGVjdHVyZXMgKGlmIHN1cHBvcnRlZC4gbWFyayBjcm9zc2J1 aWxkcyk6DQogIC0gYWFyY2g2NC1tdXNsDQogIC0gYXJtdjdsDQogIC0gYXJtdjZsLW11c2wNCi0t Pg0KDQpJIGRvbid0IHRoaW5rIHRoZXJlJ3MgYW55IHJlYXNvbiB0byBzaGlwIHRoZSBmdWxsIGFu ZCB0aGUgcmVkdWNlZCB2ZXJzaW9ucyBpbiB0aGUgc2FtZSBwYWNrYWdlLCBzbyBJIGp1c3QgY29t cGlsZSB0aGUgZnVsbCBvbmUgYW5kIGNyZWF0ZSBzeW1saW5rcyBmb3IgY29tcGF0aWJpbGl0eS4N Cg0KIyMjIyBUT0RPOg0KDQotIFt4XSBmaXggbXVzbA0KLSBbIF0gYnVpbGQgd2l0aCBhc3NlbWJs eSB3aGVyZSBwb3NzaWJsZTogb24gaTY4NiBhbmQgeDg2XzY0KiBpdCByZXF1aXJlcyBgYXNtY2Ag b3IgYGp3YXNtYC9gdWFzbWAgYXNzZW1ibGVycywgbm9uZSBvZiB3aGljaCBhcmUgcGFja2FnZWQN Ci0gW3hdIGJ1aWxkIGEgdmVyc2lvbiB3aXRoIFJBUiBzdXBwb3J0IChub25mcmVlIHJlcG8pDQot IFt4XSB1c2Ugb3VyIGNvbXBpbGUgYW5kIGxpbmsgZmxhZ3MNCi0gdGVzdCBwYWNrYWdlcyB0aGF0 IGRlcGVuZCBvbiBgcDd6aXBgIGF0IHJ1bnRpbWUgb3IgYnVpbGQgdGltZToNCiAgICAtIFsgXSBq dWxpYQ0KICAgIC0gWyBdIGx1dHJpcw0KICAgIC0gWyBdIG11bHRpYm9vdHVzYg0KICAgIC0gWyBd IHBsYXlvbmxpbnV4DQogICAgLSBbIF0gU0xBREUNCiAgICAtIFsgXSBaODBFeHBsb3Jlcg0KICAg IC0gWyBdIGFyaw0KICAgIC0gWyBdIGNicDJtYWtlDQoNCmNsb3NlcyAjMzc4NzUKCkEgcGF0Y2gg ZmlsZSBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvcHVs bC8zNzk0MC5wYXRjaCBpcyBhdHRhY2hlZA== --===============6726457901827332264== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-7zip-37940.patch" RnJvbSA1NjE0ZDg0ZDQxZDc5YjBhN2FiODQzMTJjZWI3ODllZDM5NGMwZWFmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBSb2JlcnRvIFJpY2NpIDxyaWNjaUBkaXNyb290Lm9yZz4KRGF0 ZTogU2F0LCA5IEp1bCAyMDIyIDEyOjA1OjIyICswMjAwClN1YmplY3Q6IFtQQVRDSF0gTmV3IHBh Y2thZ2U6IDd6aXAtMjIuMDEKCi0tLQogc3JjcGtncy83emlwLXVucmFyICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHwgICAxICsKIHNyY3BrZ3MvN3ppcC9maWxlcy83enouMSAgICAgICAgICAg ICAgICAgICAgICB8IDIxNSArKysrKysrKysrKysKIHNyY3BrZ3MvN3ppcC9wN3ppcC11bnJhci5J TlNUQUxMLm1zZyAgICAgICAgICB8ICAgNSArCiBzcmNwa2dzLzd6aXAvcGF0Y2hlcy9idWlsZF9m bGFncy5wYXRjaCAgICAgICAgfCAgMzAgKysKIHNyY3BrZ3MvN3ppcC90ZW1wbGF0ZSAgICAgICAg ICAgICAgICAgICAgICAgICB8ICA4NiArKysrKwogc3JjcGtncy83emlwL3VwZGF0ZSAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgICAyICsKIHNyY3BrZ3MvcDd6aXAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB8ICAgMSArCiBzcmNwa2dzL3A3emlwLXVucmFyICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgIDIgKy0KIHNyY3BrZ3MvcDd6aXAvcGF0Y2hlcy8yMC1DVkUtMjAx OC01OTk2LnBhdGNoICB8IDIyMSAtLS0tLS0tLS0tLS0tCiBzcmNwa2dzL3A3emlwL3BhdGNoZXMv MzAtQ1ZFLTIwMTgtMTAxMTUucGF0Y2ggfCAzMTEgLS0tLS0tLS0tLS0tLS0tLS0tCiBzcmNwa2dz L3A3emlwL3BhdGNoZXMvQ1ZFLTIwMTYtOTI5Ni5wYXRjaCAgICAgfCAgMTIgLQogc3JjcGtncy9w N3ppcC9wYXRjaGVzL0NWRS0yMDE3LTE3OTY5LnBhdGNoICAgIHwgIDI2IC0tCiBzcmNwa2dzL3A3 emlwL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAgICAgfCAgNDcgLS0tCiBzcmNwa2dzL3A3 emlwL3VwZGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEgLQogMTQgZmlsZXMgY2hh bmdlZCwgMzQxIGluc2VydGlvbnMoKyksIDYxOSBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEy MDAwMCBzcmNwa2dzLzd6aXAtdW5yYXIKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzLzd6aXAv ZmlsZXMvN3p6LjEKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzLzd6aXAvcDd6aXAtdW5yYXIu SU5TVEFMTC5tc2cKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzLzd6aXAvcGF0Y2hlcy9idWls ZF9mbGFncy5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvN3ppcC90ZW1wbGF0ZQog Y3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvN3ppcC91cGRhdGUKIGNyZWF0ZSBtb2RlIDEyMDAw MCBzcmNwa2dzL3A3emlwCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9wN3ppcC9wYXRjaGVz LzIwLUNWRS0yMDE4LTU5OTYucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3A3emlw L3BhdGNoZXMvMzAtQ1ZFLTIwMTgtMTAxMTUucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNw a2dzL3A3emlwL3BhdGNoZXMvQ1ZFLTIwMTYtOTI5Ni5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0 IHNyY3BrZ3MvcDd6aXAvcGF0Y2hlcy9DVkUtMjAxNy0xNzk2OS5wYXRjaAogZGVsZXRlIG1vZGUg MTAwNjQ0IHNyY3BrZ3MvcDd6aXAvdGVtcGxhdGUKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dz L3A3emlwL3VwZGF0ZQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvN3ppcC11bnJhciBiL3NyY3BrZ3Mv N3ppcC11bnJhcgpuZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAwMDAuLjI4NDMx MjU5NWE0YwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvN3ppcC11bnJhcgpAQCAtMCwwICsx IEBACis3emlwClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtn cy83emlwL2ZpbGVzLzd6ei4xIGIvc3JjcGtncy83emlwL2ZpbGVzLzd6ei4xCm5ldyBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uMmUxNTliZDk0YmI0Ci0tLSAvZGV2L251bGwK KysrIGIvc3JjcGtncy83emlwL2ZpbGVzLzd6ei4xCkBAIC0wLDAgKzEsMjE1IEBACisuVEggN1pa ICIxIiAiRmVicnVhcnkgMTQsIDIwMjIiCisuU0ggTkFNRQorN3p6IFwtIFN0YW5kYWxvbmUgY29u c29sZSB2ZXJzaW9uIG9mIHRoZSA3LVppcCBmaWxlIGFyY2hpdmVyCisuU0ggU1lOT1BTSVMKKy5C IDd6egorLlwiIFxmSVwsPGNvbW1hbmQ+IFwvW1xmSVwsPHN3aXRjaD5cLy4uLl0gXGZJXCw8YXJj aGl2ZV9uYW1lPiBcL1tcZklcLDxmaWxlX25hbWVzPlwvLi4uXSBbXGZJXCxAbGlzdF9maWxlXC9d CisuQlIgPGNvbW1hbmQ+CisuQlIgWzxzd2l0Y2g+Li4uXQorLkJSIDxhcmNoaXZlX25hbWU+Cisu QlIgWzxmaWxlX25hbWVzPl0KKy5CUiBbQGxpc3RmaWxlXQorLlNIIERFU0NSSVBUSU9OCis3XC1a aXAgaXMgYSBmaWxlIGFyY2hpdmVyIHdpdGggYSBoaWdoIGNvbXByZXNzaW9uIHJhdGlvLiBTdXBw b3J0ZWQgZm9ybWF0czoKKy5JUAorUGFja2luZyBhbmQgdW5wYWNraW5nOiA3eiwgWFosIEJaSVAy LCBHWklQLCBUQVIsIFpJUCBhbmQgV0lNLgorLklQCitVbnBhY2tpbmcgb25seTogQVIsIEFSSiwg Q0FCLCBDSE0sIENQSU8sIENyYW1GUywgRE1HLCBFWFQsIEZBVCwgR1BULCBIRlMsIElIRVgsIElT TywgTFpILCBMWk1BLCBNQlIsIE1TSSwgTlNJUywgTlRGUywgUUNPVzIsIFJBUiwgUlBNLCBTcXVh c2hGUywgVURGLCBVRUZJLCBWREksIFZIRCwgVkhEWCwgVk1ESywgV0lNLCBYQVIgYW5kIFouCisu U0ggQ29tbWFuZHMKKy5UUAorLkJSIGEKK0FkZCBmaWxlcyB0byBhcmNoaXZlCisuVFAKKy5CUiBi CitCZW5jaG1hcmsKKy5UUAorLkJSIGQKK0RlbGV0ZSBmaWxlcyBmcm9tIGFyY2hpdmUKKy5UUAor LkJSIGUKK0V4dHJhY3QgZmlsZXMgZnJvbSBhcmNoaXZlICh3aXRob3V0IHVzaW5nIGRpcmVjdG9y eSBuYW1lcykKKy5UUAorLkJSIGgKK0NhbGN1bGF0ZSBoYXNoIHZhbHVlcyBmb3IgZmlsZXMKKy5U UAorLkJSIGkKK1Nob3cgaW5mb3JtYXRpb24gYWJvdXQgc3VwcG9ydGVkIGZvcm1hdHMKKy5UUAor LkJSIGwKK0xpc3QgY29udGVudHMgb2YgYXJjaGl2ZQorLlRQCisuQlIgcm4KK1JlbmFtZSBmaWxl cyBpbiBhcmNoaXZlCisuVFAKKy5CUiB0CitUZXN0IGludGVncml0eSBvZiBhcmNoaXZlCisuVFAK Ky5CUiB1CitVcGRhdGUgZmlsZXMgdG8gYXJjaGl2ZQorLlRQCisuQlIgeAorRXh0cmFjdCBmaWxl cyB3aXRoIGZ1bGwgcGF0aHMKKy5TSCBTd2l0Y2hlcworLlRQCisuQlIgXC1cLQorU3RvcCBzd2l0 Y2hlcyBhbmQgQGxpc3RmaWxlIHBhcnNpbmcKKy5UUAorLkJSIFwtYWlbcltcLXwwXV17QGxpc3Rm aWxlfCF3aWxkY2FyZH0KK0luY2x1ZGUgYXJjaGl2ZXMKKy5UUAorLkJSIFwtYXhbcltcLXwwXV17 QGxpc3RmaWxlfCF3aWxkY2FyZH0KK0V4Y2x1ZGUgYXJjaGl2ZXMKKy5UUAorLkJSIFwtYW97YXxz fHR8dX0KK1NldCBPdmVyd3JpdGUgbW9kZQorLlRQCisuQlIgXC1hbgorRGlzYWJsZSBhcmNoaXZl X25hbWUgZmllbGQKKy5UUAorLkJSIFwtYmJbMFwtM10KK1NldCBvdXRwdXQgbG9nIGxldmVsCisu VFAKKy5CUiBcLWJkCitEaXNhYmxlIHByb2dyZXNzIGluZGljYXRvcgorLlRQCisuQlIgXC1ic3tv fGV8cH17MHwxfDJ9CitTZXQgb3V0cHV0IHN0cmVhbSBmb3Igb3V0cHV0L2Vycm9yL3Byb2dyZXNz IGxpbmUKKy5UUAorLkJSIFwtYnQKK3Nob3cgZXhlY3V0aW9uIHRpbWUgc3RhdGlzdGljcworLlRQ CisuQlIgXC1pW3JbXC18MF1de0BsaXN0ZmlsZXwhd2lsZGNhcmR9CitJbmNsdWRlIGZpbGVuYW1l cworLlRQCisuQlIgXC1te1BhcmFtZXRlcnN9CitTZXQgY29tcHJlc3Npb24gTWV0aG9kCisuVFAK Ky5CUiBcLW1tdFtOXQorU2V0IG51bWJlciBvZiBDUFUgdGhyZWFkcworLlRQCisuQlIgXC1teFtO XQorU2V0IGNvbXByZXNzaW9uIGxldmVsOiBcLW14MSAoZmFzdGVzdCkgLi4uIFwtbXg5ICh1bHRy YSkKKy5UUAorLkJSIFwtb3tEaXJlY3Rvcnl9CitTZXQgT3V0cHV0IGRpcmVjdG9yeQorLlRQCisu QlIgXC1we1Bhc3N3b3JkfQorU2V0IFBhc3N3b3JkCisuVFAKKy5CUiBcLXJbXC18MF0KK1JlY3Vy c2Ugc3ViZGlyZWN0b3JpZXMgZm9yIG5hbWUgc2VhcmNoCisuVFAKKy5CUiBcLXNhe2F8ZXxzfQor U2V0IEFyY2hpdmUgbmFtZSBtb2RlCisuVFAKKy5CUiBcLXNjY3tVVEZcLTh8V0lOfERPU30KK1Nl dCBjaGFyc2V0IGZvciBmb3IgY29uc29sZSBpbnB1dC9vdXRwdXQKKy5UUAorLkJSIFwtc2Nze1VU RlwtOHxVVEZcLTE2TEV8VVRGXC0xNkJFfFdJTnxET1N8e2lkfX0KK1NldCBjaGFyc2V0IGZvciBs aXN0IGZpbGVzCisuVFAKKy5CUiBcLXNjcmNbQ1JDMzJ8Q1JDNjR8U0hBMXxTSEEyNTZ8Kl0KK1Nl dCBoYXNoIGZ1bmN0aW9uIGZvciB4LCBlLCBoIGNvbW1hbmRzCisuVFAKKy5CUiBcLXNkZWwKK0Rl bGV0ZSBmaWxlcyBhZnRlciBjb21wcmVzc2lvbgorLlRQCisuQlIgXC1zZW1sWy5dCitTZW5kIGFy Y2hpdmUgYnkgZW1haWwKKy5UUAorLkJSIFwtc2Z4W3tuYW1lfV0KK0NyZWF0ZSBTRlggYXJjaGl2 ZQorLlRQCisuQlIgXC1zaVt7bmFtZX1dCitSZWFkIGRhdGEgZnJvbSBzdGRpbgorLlRQCisuQlIg XC1zbHAKK1NldCBMYXJnZSBQYWdlcyBtb2RlCisuVFAKKy5CUiBcLXNsdAorU2hvdyB0ZWNobmlj YWwgaW5mb3JtYXRpb24gZm9yIGwgKExpc3QpIGNvbW1hbmQKKy5UUAorLkJSIFwtc25oCitTdG9y ZSBoYXJkIGxpbmtzIGFzIGxpbmtzCisuVFAKKy5CUiBcLXNubAorU3RvcmUgc3ltYm9saWMgbGlu a3MgYXMgbGlua3MKKy5UUAorLkJSIFwtc25pCitTdG9yZSBOVCBzZWN1cml0eSBpbmZvcm1hdGlv bgorLlRQCisuQlIgXC1zbnNbXC1dCitTdG9yZSBOVEZTIGFsdGVybmF0ZSBzdHJlYW1zCisuVFAK Ky5CUiBcLXNvCitXcml0ZSBkYXRhIHRvIHN0ZG91dAorLlRQCisuQlIgXC1zcGQKK0Rpc2FibGUg d2lsZGNhcmQgbWF0Y2hpbmcgZm9yIGZpbGUgbmFtZXMKKy5UUAorLkJSIFwtc3BlCitFbGltaW5h dGUgZHVwbGljYXRpb24gb2Ygcm9vdCBmb2xkZXIgZm9yIGV4dHJhY3QgY29tbWFuZAorLlRQCisu QlIgXC1zcGYKK1VzZSBmdWxseSBxdWFsaWZpZWQgZmlsZSBwYXRocworLlRQCisuQlIgXC1zc2Nb XC1dCitTZXQgc2Vuc2l0aXZlIGNhc2UgbW9kZQorLlRQCisuQlIgXC1zc2UKK1N0b3AgYXJjaGl2 ZSBjcmVhdGluZywgaWYgaXQgY2FuJ3Qgb3BlbiBzb21lIGlucHV0IGZpbGUKKy5UUAorLkJSIFwt c3NwCitEbyBub3QgY2hhbmdlIExhc3QgQWNjZXNzIFRpbWUgb2Ygc291cmNlIGZpbGVzIHdoaWxl IGFyY2hpdmluZworLlRQCisuQlIgXC1zc3cKK0NvbXByZXNzIHNoYXJlZCBmaWxlcworLlRQCisu QlIgXC1zdGwKK1NldCBhcmNoaXZlIHRpbWVzdGFtcCBmcm9tIHRoZSBtb3N0IHJlY2VudGx5IG1v ZGlmaWVkIGZpbGUKKy5UUAorLkJSIFwtc3Rte0hleE1hc2t9CitTZXQgQ1BVIHRocmVhZCBhZmZp bml0eSBtYXNrIChoZXhhZGVjaW1hbCBudW1iZXIpCisuVFAKKy5CUiBcLXN0eHtUeXBlfQorRXhj bHVkZSBhcmNoaXZlIHR5cGUKKy5UUAorLkJSIFwtdHtUeXBlfQorU2V0IHR5cGUgb2YgYXJjaGl2 ZQorLlRQCisuQlIgXC11W1wtXVtwI11bcSNdW3IjXVt4I11beSNdW3ojXVshbmV3QXJjaGl2ZU5h bWVdCitVcGRhdGUgb3B0aW9ucworLlRQCisuQlIgXC12e1NpemV9W2J8a3xtfGddCitDcmVhdGUg dm9sdW1lcworLlRQCisuQlIgXC13W3twYXRofV0KK1NldCB3b3JraW5nIGRpcmVjdG9yeS4gRW1w dHkgcGF0aCBtZWFucyBhIHRlbXBvcmFyeSBkaXJlY3RvcnkKKy5UUAorLkJSIFwteFtyW1wtfDBd XXtAbGlzdGZpbGV8IXdpbGRjYXJkfQorRXhjbHVkZSBmaWxlbmFtZXMKKy5UUAorLkJSIFwteQor QXNzdW1lIFllcyBvbiBhbGwgcXVlcmllcworLlNIIExpc3RmaWxlCitZb3UgY2FuIHN1cHBseSBv bmUgb3IgbW9yZSBmaWxlbmFtZXMgb3Igd2lsZGNhcmRzIGZvciBzcGVjaWFsIGxpc3QgZmlsZXMg KGZpbGVzIGNvbnRhaW5pbmcgbGlzdHMgb2YgZmlsZXMpLiBUaGUgZmlsZW5hbWVzIGluIHN1Y2gg bGlzdCBmaWxlIG11c3QgYmUgc2VwYXJhdGVkIGJ5IG5ldyBsaW5lIHN5bWJvbChzKS4gRm9yIGxp c3QgZmlsZXMsIDdcLVppcCB1c2VzIFVURlwtOCBlbmNvZGluZyBieSBkZWZhdWx0LiBZb3UgY2Fu IGNoYW5nZSBlbmNvZGluZyB1c2luZworLkJSIFwtc2NzCitzd2l0Y2guIE11bHRpcGxlIGxpc3Qg ZmlsZXMgYXJlIHN1cHBvcnRlZC4KKy5QUAorRm9yIGV4YW1wbGUsIGlmIHRoZSBmaWxlICJsaXN0 ZmlsZS50eHQiIGNvbnRhaW5zIHRoZSBmb2xsb3dpbmc6CisuSVAKK015IHByb2dyYW1zXFwqLmNw cAorLmJyCitTcmNcXCouY3BwCisuUFAKK3RoZW4gdGhlIGNvbW1hbmQKKy5JUAorLkIgN3ogYSBc LXR6aXAgYXJjaGl2ZS56aXAgQGxpc3RmaWxlLnR4dAorLlBQCithZGRzIHRvIHRoZSBhcmNoaXZl ICJhcmNoaXZlLnppcCIgYWxsICIqLmNwcCIgZmlsZXMgZnJvbSBkaXJlY3RvcmllcyAiTXkgcHJv Z3JhbXMiIGFuZCAiU3JjIi4KKy5TSCAiU0VFIEFMU08iCisuQlIgeHogKDEpCisuYnIKK0ZyZXF1 ZW50bHkgQXNrZWQgUXVlc3Rpb25zOiA8aHR0cHM6Ly93d3cuNy16aXAub3JnL2ZhcS5odG1sPgor LmJyCitSZWNvdmVyIGNvcnJ1cHRlZCA3eiBhcmNoaXZlOiA8aHR0cHM6Ly93d3cuNy16aXAub3Jn L3JlY292ZXIuaHRtbD4KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvN3ppcC9wN3ppcC11bnJhci5JTlNU QUxMLm1zZyBiL3NyY3BrZ3MvN3ppcC9wN3ppcC11bnJhci5JTlNUQUxMLm1zZwpuZXcgZmlsZSBt b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjc3NWY5NDNjMGE1NgotLS0gL2Rldi9udWxs CisrKyBiL3NyY3BrZ3MvN3ppcC9wN3ppcC11bnJhci5JTlNUQUxMLm1zZwpAQCAtMCwwICsxLDUg QEAKK1RoZSBwN3ppcC11bnJhciBwYWNrYWdlIGhhcyBiZWVuIHJlcGxhY2VkIGJ5IDd6aXAtdW5y YXIuCitUbyB1c2UgdGhlIFJBUi1lbmFibGVkIHZlcnNpb24gb2YgYDd6YCwgbWFrZSBzdXJlIHRo ZSBkZXNpcmVkCithbHRlcm5hdGl2ZSBpcyBjb25maWd1cmVkOgorCisJIyB4YnBzLWFsdGVybmF0 aXZlcyAtcyA3emlwLXVucmFyCmRpZmYgLS1naXQgYS9zcmNwa2dzLzd6aXAvcGF0Y2hlcy9idWls ZF9mbGFncy5wYXRjaCBiL3NyY3BrZ3MvN3ppcC9wYXRjaGVzL2J1aWxkX2ZsYWdzLnBhdGNoCm5l dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uNGY3OTFmZjYzZGRmCi0tLSAv ZGV2L251bGwKKysrIGIvc3JjcGtncy83emlwL3BhdGNoZXMvYnVpbGRfZmxhZ3MucGF0Y2gKQEAg LTAsMCArMSwzMCBAQAorYXBwZW5kIChkb24ndCBwcmVmaXgpIHhicHMgYnVpbGQgZmxhZ3MgYW5k IGRvbid0IHN0cmlwIHRoZSBleGVjdXRhYmxlCistLS0gYS9DUFAvN3ppcC83emlwX2djYy5tYWsK KysrKyBiL0NQUC83emlwLzd6aXBfZ2NjLm1haworQEAgLTEyNiw3ICsxMjYsNyBAQCBlbmRpZgor IA0KKyANCisgDQorLUNGTEFHUyA9ICQoTVlfQVJDSF8yKSAkKExPQ0FMX0ZMQUdTKSAkKENGTEFH U19CQVNFMikgJChDRkxBR1NfQkFTRSkgJChDQ19TSEFSRUQpIC1vICRADQorK0NGTEFHUyA9ICQo TVlfQVJDSF8yKSAkKExPQ0FMX0ZMQUdTKSAkKENGTEFHU19CQVNFMikgJChDRkxBR1NfQkFTRSkg JChDQ19TSEFSRUQpICQoWEJQU19DRkxBR1MpIC1vICRADQorIA0KKyANCisgaWZkZWYgSVNfTUlO R1cNCitAQCAtMTU0LDcgKzE1NCw3IEBAIENYWF9XQVJOX0ZMQUdTID0KKyAjLVduby1pbnZhbGlk LW9mZnNldG9mDQorICMtV25vLXJlb3JkZXINCisgDQorLUNYWEZMQUdTID0gJChNWV9BUkNIXzIp ICQoTE9DQUxfRkxBR1MpICQoQ1hYRkxBR1NfQkFTRTIpICQoQ0ZMQUdTX0JBU0UpICQoQ1hYRkxB R1NfRVhUUkEpICQoQ0NfU0hBUkVEKSAtbyAkQCAkKENYWF9XQVJOX0ZMQUdTKQ0KKytDWFhGTEFH UyA9ICQoTVlfQVJDSF8yKSAkKExPQ0FMX0ZMQUdTKSAkKENYWEZMQUdTX0JBU0UyKSAkKENGTEFH U19CQVNFKSAkKENYWEZMQUdTX0VYVFJBKSAkKENDX1NIQVJFRCkgLW8gJEAgJChDWFhfV0FSTl9G TEFHUykgJChYQlBTX0NYWEZMQUdTKQ0KKyANCisgU1RBVElDX1RBUkdFVD0NCisgaWZkZWYgQ09N UExfU1RBVElDDQorQEAgLTE2Nyw3ICsxNjcsNyBAQCBhbGw6ICQoTykgJChQUk9HUEFUSCkgJChT VEFUSUNfVEFSR0VUKQorICQoTyk6DQorIAkkKE1ZX01LRElSKSAkKE8pDQorIA0KKy1MRkxBR1Nf QUxMID0gLXMgJChNWV9BUkNIXzIpICQoTERGTEFHUykgJChMRF9hcmNoKSAkKE9CSlMpICQoTVlf TElCUykgJChMSUIyKQ0KKytMRkxBR1NfQUxMID0gJChNWV9BUkNIXzIpICQoTERGTEFHUykgJChM RF9hcmNoKSAkKE9CSlMpICQoTVlfTElCUykgJChMSUIyKSAkKFhCUFNfTERGTEFHUykNCisgJChQ Uk9HUEFUSCk6ICQoT0JKUykNCisgCSQoQ1hYKSAtbyAkKFBST0dQQVRIKSAkKExGTEFHU19BTEwp DQorIA0KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvN3ppcC90ZW1wbGF0ZSBiL3NyY3BrZ3MvN3ppcC90 ZW1wbGF0ZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjU0MzAyMzQy YmU4MAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvN3ppcC90ZW1wbGF0ZQpAQCAtMCwwICsx LDg2IEBACisjIFRlbXBsYXRlIGZpbGUgZm9yICc3emlwJworcGtnbmFtZT03emlwCit2ZXJzaW9u PTIyLjAxCityZXZpc2lvbj0xCitjcmVhdGVfd3Jrc3JjPXllcworc2hvcnRfZGVzYz0iRmlsZSBh cmNoaXZlciB3aXRoIGEgaGlnaCBjb21wcmVzc2lvbiByYXRpbyIKK21haW50YWluZXI9IlJvYmVy dG8gUmljY2kgPHJpY2NpQGRpc3Jvb3Qub3JnPiIKK2xpY2Vuc2U9IkxHUEwtMi4xLW9yLWxhdGVy LCBCU0QtMy1DbGF1c2UiCitob21lcGFnZT0iaHR0cHM6Ly93d3cuNy16aXAub3JnIgorY2hhbmdl bG9nPSJodHRwczovL3d3dy43LXppcC5vcmcvaGlzdG9yeS50eHQiCitkaXN0ZmlsZXM9Imh0dHBz Oi8vd3d3LjctemlwLm9yZy9hLzd6JHt2ZXJzaW9uLy8uL30tc3JjLnRhci54eiIKK2NoZWNrc3Vt PTM5MzA5ODczMGM3MDA0MjM5MmFmODA4OTE3ZTc2NTk0NWRjMjQzN2RlZTdhYWUzY2ZjYzQ5NjZl YjkyMGZiYzUKK2FsdGVybmF0aXZlcz0iCisgN3o6N3o6L3Vzci9iaW4vN3otZnJlZQorIDd6Ojd6 YTovdXNyL2Jpbi83ei1mcmVlCisgN3o6N3pyOi91c3IvYmluLzd6LWZyZWUKKyA3ejo3ei4xOi91 c3Ivc2hhcmUvbWFuL21hbjEvN3otZnJlZS4xIgorCitpZiBbICIkWEJQU19UQVJHRVRfTElCQyIg PSBtdXNsIF07IHRoZW4KKwkjIG1pc3NpbmcgcHRocmVhZF9hdHRyX3NldGFmZmluaXR5X25wKCkK KwlDRkxBR1MrPSItRF83WklQX0FGRklOSVRZX0RJU0FCTEUiCisJQ1hYRkxBR1MrPSItRF83WklQ X0FGRklOSVRZX0RJU0FCTEUiCitmaQorCitkb19idWlsZCgpIHsKKwljZCAiJHdya3NyYyIvQ1BQ Lzd6aXAvQnVuZGxlcy9BbG9uZTIKKworCWNhc2UgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiBpbgor CWFhcmNoNjQqKSBfN3pfbWFrZWZpbGU9Ii4uLy4uL2NtcGxfZ2NjX2FybTY0Lm1hayI7OworCSop ICAgICAgICBfN3pfbWFrZWZpbGU9Ii4uLy4uL2NtcGxfZ2NjLm1hayI7OworCWVzYWMKKworCWZv ciBvcHRzIGluICJPPWIvbm9yYXIgRElTQUJMRV9SQVJfQ09NUFJFU1M9MSIgTz1iL3JhcjsgZG8K KwkJbWFrZSAiJG1ha2Vqb2JzIiAtZiAiJF83el9tYWtlZmlsZSIgXAorCQkJQ0M9IiRDQyIgQ1hY PSIkQ1hYIiBYQlBTX0NGTEFHUz0iJENGTEFHUyIgXAorCQkJWEJQU19DWFhGTEFHUz0iJENYWEZM QUdTIiBYQlBTX0xERkxBR1M9IiRMREZMQUdTIiBcCisJCQkkb3B0cworCWRvbmUKK30KKworXzd6 X2luc3RhbGwoKSB7CisJYmluZGlyPSIkMSIKKwlkZXN0PSIkMiIKKwlzdWZmaXg9IiQzIgorCisJ dmJpbiAiJHt3cmtzcmN9L0NQUC83emlwL0J1bmRsZXMvQWxvbmUyLyR7YmluZGlyfS83enoiICI3 ei0ke3N1ZmZpeH0iCisKKwl2bGljZW5zZSAiJHt3cmtzcmN9L0RPQy9MaWNlbnNlLnR4dCIKKwor CSMgaHR0cHM6Ly9jZ2l0LmZyZWVic2Qub3JnL3BvcnRzL3BsYWluL2FyY2hpdmVycy83LXppcC9m aWxlcy83enouMQorCXZtYW4gIiR7RklMRVNESVJ9Lzd6ei4xIiAiN3otJHtzdWZmaXh9LjEiCit9 CisKK2RvX2luc3RhbGwoKSB7CisJXzd6X2luc3RhbGwgYi9ub3JhciAiJERFU1RESVIiIGZyZWUK K30KKworN3ppcC11bnJhcl9wYWNrYWdlKCkgeworCWxpY2Vuc2UrPSIsIGN1c3RvbTpmcmVld2Fy ZSIKKwlyZXBvc2l0b3J5PW5vbmZyZWUKKwlzaG9ydF9kZXNjKz0iIC0gUkFSIHN1cHBvcnQiCisJ YWx0ZXJuYXRpdmVzPSIKKwkgN3o6N3o6L3Vzci9iaW4vN3otdW5yYXIKKwkgN3o6N3phOi91c3Iv YmluLzd6LXVucmFyCisJIDd6Ojd6cjovdXNyL2Jpbi83ei11bnJhcgorCSA3ejo3ei4xOi91c3Iv c2hhcmUvbWFuL21hbjEvN3otdW5yYXIuMSIKKworCXBrZ19pbnN0YWxsKCkgeworCQlfN3pfaW5z dGFsbCBiL3JhciAiJFBLR0RFU1RESVIiIHVucmFyCisJfQorfQorCitwN3ppcF9wYWNrYWdlKCkg eworCWJ1aWxkX3N0eWxlPW1ldGEKKwlkZXBlbmRzPTd6aXAKKwlzaG9ydF9kZXNjPSJDb21tYW5k LWxpbmUgdmVyc2lvbiBvZiB0aGUgN3ppcCBjb21wcmVzc2VkIGZpbGUgYXJjaGl2ZSIKKwlzaG9y dF9kZXNjKz0iICh0cmFuc2l0aW9uYWwgZHVtbXkgcGFja2FnZSkiCit9CisKK3A3emlwLXVucmFy X3BhY2thZ2UoKSB7CisJYnVpbGRfc3R5bGU9bWV0YQorCXJlcG9zaXRvcnk9bm9uZnJlZQorCWRl cGVuZHM9N3ppcC11bnJhcgorCXNob3J0X2Rlc2M9IkNvbW1hbmQtbGluZSB2ZXJzaW9uIG9mIHRo ZSA3emlwIGNvbXByZXNzZWQgZmlsZSBhcmNoaXZlIC0gUkFSIHN1cHBvcnQiCisJc2hvcnRfZGVz Yys9IiAodHJhbnNpdGlvbmFsIGR1bW15IHBhY2thZ2UpIgorfQpkaWZmIC0tZ2l0IGEvc3JjcGtn cy83emlwL3VwZGF0ZSBiL3NyY3BrZ3MvN3ppcC91cGRhdGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggMDAwMDAwMDAwMDAwLi41NDYzZjE0OGU0ZjgKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNw a2dzLzd6aXAvdXBkYXRlCkBAIC0wLDAgKzEsMiBAQAorc2l0ZT0naHR0cHM6Ly83LXppcC5vcmcv ZG93bmxvYWQuaHRtbCcKK3BhdHRlcm49J0Rvd25sb2FkIDctWmlwIFxLW1xkLl0rJwpkaWZmIC0t Z2l0IGEvc3JjcGtncy9wN3ppcCBiL3NyY3BrZ3MvcDd6aXAKbmV3IGZpbGUgbW9kZSAxMjAwMDAK aW5kZXggMDAwMDAwMDAwMDAwLi4yODQzMTI1OTVhNGMKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNw a2dzL3A3emlwCkBAIC0wLDAgKzEgQEAKKzd6aXAKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxl CmRpZmYgLS1naXQgYS9zcmNwa2dzL3A3emlwLXVucmFyIGIvc3JjcGtncy9wN3ppcC11bnJhcgpp bmRleCBiZjUzNDllZTY2NjYuLjI4NDMxMjU5NWE0YyAxMjAwMDAKLS0tIGEvc3JjcGtncy9wN3pp cC11bnJhcgorKysgYi9zcmNwa2dzL3A3emlwLXVucmFyCkBAIC0xICsxIEBACi1wN3ppcApcIE5v IG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKKzd6aXAKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxl CmRpZmYgLS1naXQgYS9zcmNwa2dzL3A3emlwL3BhdGNoZXMvMjAtQ1ZFLTIwMTgtNTk5Ni5wYXRj aCBiL3NyY3BrZ3MvcDd6aXAvcGF0Y2hlcy8yMC1DVkUtMjAxOC01OTk2LnBhdGNoCmRlbGV0ZWQg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2NzMzYmZmOTE4OTUuLjAwMDAwMDAwMDAwMAotLS0gYS9z cmNwa2dzL3A3emlwL3BhdGNoZXMvMjAtQ1ZFLTIwMTgtNTk5Ni5wYXRjaAorKysgL2Rldi9udWxs CkBAIC0xLDIyMSArMCwwIEBACi1Gcm9tOiBSb2JlcnQgTHViZXJkYSA8cm9iZXJ0QGRlYmlhbi5v cmc+Ci1EYXRlOiBTdW4sIDI4IEphbiAyMDE4IDIzOjQ3OjQwICswMTAwCi1TdWJqZWN0OiBDVkUt MjAxOC01OTk2Ci0KLUhvcGVmdWxseSBmaXggTWVtb3J5IENvcnJ1cHRpb25zIHZpYSBSQVIgUFBN ZCAoQ1ZFLTIwMTgtNTk5NikgYnkKLWFwcGx5aW5nIGEgZmV3IGNoYW5nZXMgZnJvbSA3WmlwIDE4 LjAwLWJldGEuCi0KLUJ1Zy1EZWJpYW46IGh0dHBzOi8vYnVncy5kZWJpYW4ub3JnLyM4ODgzMTQK LS0tLQotIENQUC83emlwL0NvbXByZXNzL1JhcjFEZWNvZGVyLmNwcCB8IDEzICsrKysrKysrKy0t LS0KLSBDUFAvN3ppcC9Db21wcmVzcy9SYXIxRGVjb2Rlci5oICAgfCAgMSArCi0gQ1BQLzd6aXAv Q29tcHJlc3MvUmFyMkRlY29kZXIuY3BwIHwgMTAgKysrKysrKysrLQotIENQUC83emlwL0NvbXBy ZXNzL1JhcjJEZWNvZGVyLmggICB8ICAxICsKLSBDUFAvN3ppcC9Db21wcmVzcy9SYXIzRGVjb2Rl ci5jcHAgfCAyMyArKysrKysrKysrKysrKysrKysrKy0tLQotIENQUC83emlwL0NvbXByZXNzL1Jh cjNEZWNvZGVyLmggICB8ICAyICsrCi0gNiBmaWxlcyBjaGFuZ2VkLCA0MiBpbnNlcnRpb25zKCsp LCA4IGRlbGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0IGEvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMURl Y29kZXIuY3BwIGIvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMURlY29kZXIuY3BwCi1pbmRleCAxYWFl ZGNjLi42ODAzMGM3IDEwMDY0NAotLS0tIGEvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMURlY29kZXIu Y3BwCi0rKysgYi9DUFAvN3ppcC9Db21wcmVzcy9SYXIxRGVjb2Rlci5jcHAKLUBAIC0yOSw3ICsy OSw3IEBAIHB1YmxpYzoKLSB9OwotICovCi0gCi0tQ0RlY29kZXI6OkNEZWNvZGVyKCk6IG1fSXNT b2xpZChmYWxzZSkgeyB9Ci0rQ0RlY29kZXI6OkNEZWNvZGVyKCk6IG1fSXNTb2xpZChmYWxzZSks IF9lcnJvck1vZGUoZmFsc2UpIHsgfQotIAotIHZvaWQgQ0RlY29kZXI6OkluaXRTdHJ1Y3R1cmVz KCkKLSB7Ci1AQCAtNDA2LDkgKzQwNiwxNCBAQCBIUkVTVUxUIENEZWNvZGVyOjpDb2RlUmVhbChJ U2VxdWVudGlhbEluU3RyZWFtICppblN0cmVhbSwgSVNlcXVlbnRpYWxPdXRTdHJlYW0gKgotICAg SW5pdERhdGEoKTsKLSAgIGlmICghbV9Jc1NvbGlkKQotICAgewotKyAgICBfZXJyb3JNb2RlID0g ZmFsc2U7Ci0gICAgIEluaXRTdHJ1Y3R1cmVzKCk7Ci0gICAgIEluaXRIdWZmKCk7Ci0gICB9Ci0r Ci0rICBpZiAoX2Vycm9yTW9kZSkKLSsgICAgcmV0dXJuIFNfRkFMU0U7Ci0rCi0gICBpZiAobV9V bnBhY2tTaXplID4gMCkKLSAgIHsKLSAgICAgR2V0RmxhZ3NCdWYoKTsKLUBAIC00NzcsOSArNDgy LDkgQEAgU1RETUVUSE9ESU1QIENEZWNvZGVyOjpDb2RlKElTZXF1ZW50aWFsSW5TdHJlYW0gKmlu U3RyZWFtLCBJU2VxdWVudGlhbE91dFN0cmVhbQotICAgICBjb25zdCBVSW50NjQgKmluU2l6ZSwg Y29uc3QgVUludDY0ICpvdXRTaXplLCBJQ29tcHJlc3NQcm9ncmVzc0luZm8gKnByb2dyZXNzKQot IHsKLSAgIHRyeSB7IHJldHVybiBDb2RlUmVhbChpblN0cmVhbSwgb3V0U3RyZWFtLCBpblNpemUs IG91dFNpemUsIHByb2dyZXNzKTsgfQotLSAgY2F0Y2goY29uc3QgQ0luQnVmZmVyRXhjZXB0aW9u ICZlKSB7IHJldHVybiBlLkVycm9yQ29kZTsgfQotLSAgY2F0Y2goY29uc3QgQ0x6T3V0V2luZG93 RXhjZXB0aW9uICZlKSB7IHJldHVybiBlLkVycm9yQ29kZTsgfQotLSAgY2F0Y2goLi4uKSB7IHJl dHVybiBTX0ZBTFNFOyB9Ci0rICBjYXRjaChjb25zdCBDSW5CdWZmZXJFeGNlcHRpb24gJmUpIHsg X2Vycm9yTW9kZSA9IHRydWU7IHJldHVybiBlLkVycm9yQ29kZTsgfQotKyAgY2F0Y2goY29uc3Qg Q0x6T3V0V2luZG93RXhjZXB0aW9uICZlKSB7IF9lcnJvck1vZGUgPSB0cnVlOyByZXR1cm4gZS5F cnJvckNvZGU7IH0KLSsgIGNhdGNoKC4uLikgeyBfZXJyb3JNb2RlID0gdHJ1ZTsgcmV0dXJuIFNf RkFMU0U7IH0KLSB9Ci0gCi0gU1RETUVUSE9ESU1QIENEZWNvZGVyOjpTZXREZWNvZGVyUHJvcGVy dGllczIoY29uc3QgQnl0ZSAqZGF0YSwgVUludDMyIHNpemUpCi1kaWZmIC0tZ2l0IGEvQ1BQLzd6 aXAvQ29tcHJlc3MvUmFyMURlY29kZXIuaCBiL0NQUC83emlwL0NvbXByZXNzL1JhcjFEZWNvZGVy LmgKLWluZGV4IDYzMGYwODkuLjAxYjYwNmIgMTAwNjQ0Ci0tLS0gYS9DUFAvN3ppcC9Db21wcmVz cy9SYXIxRGVjb2Rlci5oCi0rKysgYi9DUFAvN3ppcC9Db21wcmVzcy9SYXIxRGVjb2Rlci5oCi1A QCAtMzksNiArMzksNyBAQCBwdWJsaWM6Ci0gCi0gICBJbnQ2NCBtX1VucGFja1NpemU7Ci0gICBi b29sIG1fSXNTb2xpZDsKLSsgIGJvb2wgX2Vycm9yTW9kZTsKLSAKLSAgIFVJbnQzMiBSZWFkQml0 cyhpbnQgbnVtQml0cyk7Ci0gICBIUkVTVUxUIENvcHlCbG9jayhVSW50MzIgZGlzdGFuY2UsIFVJ bnQzMiBsZW4pOwotZGlmZiAtLWdpdCBhL0NQUC83emlwL0NvbXByZXNzL1JhcjJEZWNvZGVyLmNw cCBiL0NQUC83emlwL0NvbXByZXNzL1JhcjJEZWNvZGVyLmNwcAotaW5kZXggYjNmMmI0Yi4uMDU4 MGM4ZCAxMDA2NDQKLS0tLSBhL0NQUC83emlwL0NvbXByZXNzL1JhcjJEZWNvZGVyLmNwcAotKysr IGIvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMkRlY29kZXIuY3BwCi1AQCAtODAsNyArODAsOCBAQCBz dGF0aWMgY29uc3QgVUludDMyIGtIaXN0b3J5U2l6ZSA9IDEgPDwgMjA7Ci0gc3RhdGljIGNvbnN0 IFVJbnQzMiBrV2luZG93UmVzZXJ2U2l6ZSA9ICgxIDw8IDIyKSArIDI1NjsKLSAKLSBDRGVjb2Rl cjo6Q0RlY29kZXIoKToKLS0gIG1fSXNTb2xpZChmYWxzZSkKLSsgIG1fSXNTb2xpZChmYWxzZSks Ci0rICBtX1RhYmxlc09LKGZhbHNlKQotIHsKLSB9Ci0gCi1AQCAtMTAwLDYgKzEwMSw4IEBAIFVJ bnQzMiBDRGVjb2Rlcjo6UmVhZEJpdHModW5zaWduZWQgbnVtQml0cykgeyByZXR1cm4gbV9JbkJp dFN0cmVhbS5SZWFkQml0cyhudW1CCi0gCi0gYm9vbCBDRGVjb2Rlcjo6UmVhZFRhYmxlcyh2b2lk KQotIHsKLSsgIG1fVGFibGVzT0sgPSBmYWxzZTsKLSsKLSAgIEJ5dGUgbGV2ZWxMZXZlbHNba0xl dmVsVGFibGVTaXplXTsKLSAgIEJ5dGUgbmV3TGV2ZWxzW2tNYXhUYWJsZVNpemVdOwotICAgbV9B dWRpb01vZGUgPSAoUmVhZEJpdHMoMSkgPT0gMSk7Ci1AQCAtMTcwLDYgKzE3Myw4IEBAIGJvb2wg Q0RlY29kZXI6OlJlYWRUYWJsZXModm9pZCkKLSAgIH0KLSAgIAotICAgbWVtY3B5KG1fTGFzdExl dmVscywgbmV3TGV2ZWxzLCBrTWF4VGFibGVTaXplKTsKLSsgIG1fVGFibGVzT0sgPSB0cnVlOwot KwotICAgcmV0dXJuIHRydWU7Ci0gfQotIAotQEAgLTM0NCw2ICszNDksOSBAQCBIUkVTVUxUIENE ZWNvZGVyOjpDb2RlUmVhbChJU2VxdWVudGlhbEluU3RyZWFtICppblN0cmVhbSwgSVNlcXVlbnRp YWxPdXRTdHJlYW0gKgotICAgICAgIHJldHVybiBTX0ZBTFNFOwotICAgfQotIAotKyAgaWYgKCFt X1RhYmxlc09LKQotKyAgICByZXR1cm4gU19GQUxTRTsKLSsKLSAgIFVJbnQ2NCBzdGFydFBvcyA9 IG1fT3V0V2luZG93U3RyZWFtLkdldFByb2Nlc3NlZFNpemUoKTsKLSAgIHdoaWxlIChwb3MgPCB1 blBhY2tTaXplKQotICAgewotZGlmZiAtLWdpdCBhL0NQUC83emlwL0NvbXByZXNzL1JhcjJEZWNv ZGVyLmggYi9DUFAvN3ppcC9Db21wcmVzcy9SYXIyRGVjb2Rlci5oCi1pbmRleCAzYTA1MzVjLi4w ZTkwMDVmIDEwMDY0NAotLS0tIGEvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMkRlY29kZXIuaAotKysr IGIvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMkRlY29kZXIuaAotQEAgLTEzOSw2ICsxMzksNyBAQCBj bGFzcyBDRGVjb2RlciA6Ci0gCi0gICBVSW50NjQgbV9QYWNrU2l6ZTsKLSAgIGJvb2wgbV9Jc1Nv bGlkOwotKyAgYm9vbCBtX1RhYmxlc09LOwotIAotICAgdm9pZCBJbml0U3RydWN0dXJlcygpOwot ICAgVUludDMyIFJlYWRCaXRzKHVuc2lnbmVkIG51bUJpdHMpOwotZGlmZiAtLWdpdCBhL0NQUC83 emlwL0NvbXByZXNzL1JhcjNEZWNvZGVyLmNwcCBiL0NQUC83emlwL0NvbXByZXNzL1JhcjNEZWNv ZGVyLmNwcAotaW5kZXggM2JmMjUxMy4uNmNiOGE2YSAxMDA2NDQKLS0tLSBhL0NQUC83emlwL0Nv bXByZXNzL1JhcjNEZWNvZGVyLmNwcAotKysrIGIvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyM0RlY29k ZXIuY3BwCi1AQCAtOTIsNyArOTIsOCBAQCBDRGVjb2Rlcjo6Q0RlY29kZXIoKToKLSAgIF93cml0 dGVuRmlsZVNpemUoMCksCi0gICBfdm1EYXRhKDApLAotICAgX3ZtQ29kZSgwKSwKLS0gIG1fSXNT b2xpZChmYWxzZSkKLSsgIG1fSXNTb2xpZChmYWxzZSksCi0rICBfZXJyb3JNb2RlKGZhbHNlKQot IHsKLSAgIFBwbWQ3X0NvbnN0cnVjdCgmX3BwbWQpOwotIH0KLUBAIC01NDUsNiArNTQ2LDkgQEAg SFJFU1VMVCBDRGVjb2Rlcjo6UmVhZFRhYmxlcyhib29sICZrZWVwRGVjb21wcmVzc2luZykKLSAg ICAgcmV0dXJuIEluaXRQUE0oKTsKLSAgIH0KLSAKLSsgIFRhYmxlc1JlYWQgPSBmYWxzZTsKLSsg IFRhYmxlc09LID0gZmFsc2U7Ci0rCi0gICBfbHpNb2RlID0gdHJ1ZTsKLSAgIFByZXZBbGlnbkJp dHMgPSAwOwotICAgUHJldkFsaWduQ291bnQgPSAwOwotQEAgLTYwNiw2ICs2MTAsOSBAQCBIUkVT VUxUIENEZWNvZGVyOjpSZWFkVGFibGVzKGJvb2wgJmtlZXBEZWNvbXByZXNzaW5nKQotICAgICAg IH0KLSAgICAgfQotICAgfQotKyAgaWYgKElucHV0RW9mRXJyb3IoKSkKLSsgICAgcmV0dXJuIFNf RkFMU0U7Ci0rCi0gICBUYWJsZXNSZWFkID0gdHJ1ZTsKLSAKLSAgIC8vIG9yaWdpbmFsIGNvZGUg aGFzIGNoZWNrIGhlcmU6Ci1AQCAtNjIzLDYgKzYzMCw5IEBAIEhSRVNVTFQgQ0RlY29kZXI6OlJl YWRUYWJsZXMoYm9vbCAma2VlcERlY29tcHJlc3NpbmcpCi0gICBSSUYobV9MZW5EZWNvZGVyLkJ1 aWxkKCZuZXdMZXZlbHNba01haW5UYWJsZVNpemUgKyBrRGlzdFRhYmxlU2l6ZSArIGtBbGlnblRh YmxlU2l6ZV0pKTsKLSAKLSAgIG1lbWNweShtX0xhc3RMZXZlbHMsIG5ld0xldmVscywga1RhYmxl c1NpemVzU3VtKTsKLSsKLSsgIFRhYmxlc09LID0gdHJ1ZTsKLSsKLSAgIHJldHVybiBTX09LOwot IH0KLSAKLUBAIC04MjQsNyArODM0LDEyIEBAIEhSRVNVTFQgQ0RlY29kZXI6OkNvZGVSZWFsKElD b21wcmVzc1Byb2dyZXNzSW5mbyAqcHJvZ3Jlc3MpCi0gICAgIFBwbUVzY0NoYXIgPSAyOwotICAg ICBQcG1FcnJvciA9IHRydWU7Ci0gICAgIEluaXRGaWx0ZXJzKCk7Ci0rICAgIF9lcnJvck1vZGUg PSBmYWxzZTsKLSAgIH0KLSsKLSsgIGlmIChfZXJyb3JNb2RlKQotKyAgICByZXR1cm4gU19GQUxT RTsKLSsKLSAgIGlmICghbV9Jc1NvbGlkIHx8ICFUYWJsZXNSZWFkKQotICAgewotICAgICBib29s IGtlZXBEZWNvbXByZXNzaW5nOwotQEAgLTgzOCw2ICs4NTMsOCBAQCBIUkVTVUxUIENEZWNvZGVy OjpDb2RlUmVhbChJQ29tcHJlc3NQcm9ncmVzc0luZm8gKnByb2dyZXNzKQotICAgICBib29sIGtl ZXBEZWNvbXByZXNzaW5nOwotICAgICBpZiAoX2x6TW9kZSkKLSAgICAgewotKyAgICAgIGlmICgh VGFibGVzT0spCi0rICAgICAgICByZXR1cm4gU19GQUxTRTsKLSAgICAgICBSSU5PSyhEZWNvZGVM WihrZWVwRGVjb21wcmVzc2luZykpCi0gICAgIH0KLSAgICAgZWxzZQotQEAgLTkwMSw4ICs5MTgs OCBAQCBTVERNRVRIT0RJTVAgQ0RlY29kZXI6OkNvZGUoSVNlcXVlbnRpYWxJblN0cmVhbSAqaW5T dHJlYW0sIElTZXF1ZW50aWFsT3V0U3RyZWFtCi0gICAgIF91bnBhY2tTaXplID0gb3V0U2l6ZSA/ ICpvdXRTaXplIDogKFVJbnQ2NCkoSW50NjQpLTE7Ci0gICAgIHJldHVybiBDb2RlUmVhbChwcm9n cmVzcyk7Ci0gICB9Ci0tICBjYXRjaChjb25zdCBDSW5CdWZmZXJFeGNlcHRpb24gJmUpICB7IHJl dHVybiBlLkVycm9yQ29kZTsgfQotLSAgY2F0Y2goLi4uKSB7IHJldHVybiBTX0ZBTFNFOyB9Ci0r ICBjYXRjaChjb25zdCBDSW5CdWZmZXJFeGNlcHRpb24gJmUpICB7IF9lcnJvck1vZGUgPSB0cnVl OyByZXR1cm4gZS5FcnJvckNvZGU7IH0KLSsgIGNhdGNoKC4uLikgeyBfZXJyb3JNb2RlID0gdHJ1 ZTsgcmV0dXJuIFNfRkFMU0U7IH0KLSAgIC8vIENOZXdFeGNlcHRpb24gaXMgcG9zc2libGUgaGVy ZS4gQnV0IHByb2JhYmx5IENOZXdFeGNlcHRpb24gaXMgY2F1c2VkCi0gICAvLyBieSBlcnJvciBp biBkYXRhIHN0cmVhbS4KLSB9Ci1kaWZmIC0tZ2l0IGEvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyM0Rl Y29kZXIuaCBiL0NQUC83emlwL0NvbXByZXNzL1JhcjNEZWNvZGVyLmgKLWluZGV4IGMxMzBjZWMu LjJmNzJkN2QgMTAwNjQ0Ci0tLS0gYS9DUFAvN3ppcC9Db21wcmVzcy9SYXIzRGVjb2Rlci5oCi0r KysgYi9DUFAvN3ppcC9Db21wcmVzcy9SYXIzRGVjb2Rlci5oCi1AQCAtMTkyLDYgKzE5Miw3IEBA IGNsYXNzIENEZWNvZGVyOgotICAgVUludDMyIF9sYXN0RmlsdGVyOwotIAotICAgYm9vbCBtX0lz U29saWQ7Ci0rICBib29sIF9lcnJvck1vZGU7Ci0gCi0gICBib29sIF9sek1vZGU7Ci0gICBib29s IF91bnN1cHBvcnRlZEZpbHRlcjsKLUBAIC0yMDAsNiArMjAxLDcgQEAgY2xhc3MgQ0RlY29kZXI6 Ci0gICBVSW50MzIgUHJldkFsaWduQ291bnQ7Ci0gCi0gICBib29sIFRhYmxlc1JlYWQ7Ci0rICBi b29sIFRhYmxlc09LOwotIAotICAgQ1BwbWQ3IF9wcG1kOwotICAgaW50IFBwbUVzY0NoYXI7CmRp ZmYgLS1naXQgYS9zcmNwa2dzL3A3emlwL3BhdGNoZXMvMzAtQ1ZFLTIwMTgtMTAxMTUucGF0Y2gg Yi9zcmNwa2dzL3A3emlwL3BhdGNoZXMvMzAtQ1ZFLTIwMTgtMTAxMTUucGF0Y2gKZGVsZXRlZCBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDdkOWM0YmY4MWYwMC4uMDAwMDAwMDAwMDAwCi0tLSBhL3Ny Y3BrZ3MvcDd6aXAvcGF0Y2hlcy8zMC1DVkUtMjAxOC0xMDExNS5wYXRjaAorKysgL2Rldi9udWxs CkBAIC0xLDMxMSArMCwwIEBACi1Gcm9tOiBSb2JlcnQgTHViZXJkYSA8cm9iZXJ0QGRlYmlhbi5v cmc+Ci1EYXRlOiBUdWUsIDI5IE1heSAyMDE4IDIzOjU5OjA5ICswMjAwCi1TdWJqZWN0OiBGaXgg Q1ZFLTIwMTgtMTAxMTUKLQotQXBwbHkgInBhdGNoIiB0YWtlbiBmcm9tIGh0dHBzOi8vbGFuZGF2 ZS5pby9maWxlcy9wYXRjaF83emlwX0NWRS0yMDE4LTEwMTE1LnR4dAotCi0KLUJ1Z3MtRGViaWFu OiBodHRwczovL2J1Z3MuZGViaWFuLm9yZy84OTc2NzQKLS0tLQotIENQUC83emlwL0NvbXByZXNz L1JhcjFEZWNvZGVyLmNwcCB8IDE2ICsrKysrKysrKysrLS0tLS0KLSBDUFAvN3ppcC9Db21wcmVz cy9SYXIxRGVjb2Rlci5oICAgfCAgMyArKy0KLSBDUFAvN3ppcC9Db21wcmVzcy9SYXIyRGVjb2Rl ci5jcHAgfCAxNyArKysrKysrKysrKysrLS0tLQotIENQUC83emlwL0NvbXByZXNzL1JhcjJEZWNv ZGVyLmggICB8ICAzICsrLQotIENQUC83emlwL0NvbXByZXNzL1JhcjNEZWNvZGVyLmNwcCB8IDE5 ICsrKysrKysrKysrKysrKy0tLS0KLSBDUFAvN3ppcC9Db21wcmVzcy9SYXIzRGVjb2Rlci5oICAg fCAgMyArKy0KLSBDUFAvN3ppcC9Db21wcmVzcy9SYXI1RGVjb2Rlci5jcHAgfCAgOCArKysrKysr KwotIENQUC83emlwL0NvbXByZXNzL1JhcjVEZWNvZGVyLmggICB8ICAxICsKLSA4IGZpbGVzIGNo YW5nZWQsIDU0IGluc2VydGlvbnMoKyksIDE2IGRlbGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0IGEv Q1BQLzd6aXAvQ29tcHJlc3MvUmFyMURlY29kZXIuY3BwIGIvQ1BQLzd6aXAvQ29tcHJlc3MvUmFy MURlY29kZXIuY3BwCi1pbmRleCA2ODAzMGM3Li44Yzg5MGM4IDEwMDY0NAotLS0tIGEvQ1BQLzd6 aXAvQ29tcHJlc3MvUmFyMURlY29kZXIuY3BwCi0rKysgYi9DUFAvN3ppcC9Db21wcmVzcy9SYXIx RGVjb2Rlci5jcHAKLUBAIC0yOSw3ICsyOSw3IEBAIHB1YmxpYzoKLSB9OwotICovCi0gCi0tQ0Rl Y29kZXI6OkNEZWNvZGVyKCk6IG1fSXNTb2xpZChmYWxzZSksIF9lcnJvck1vZGUoZmFsc2UpIHsg fQotK0NEZWNvZGVyOjpDRGVjb2RlcigpOiBfaXNTb2xpZChmYWxzZSksIF9zb2xpZEFsbG93ZWQo ZmFsc2UpLCBfZXJyb3JNb2RlKGZhbHNlKSB7IH0KLSAKLSB2b2lkIENEZWNvZGVyOjpJbml0U3Ry dWN0dXJlcygpCi0gewotQEAgLTM0NSw3ICszNDUsNyBAQCB2b2lkIENEZWNvZGVyOjpHZXRGbGFn c0J1ZigpCi0gCi0gdm9pZCBDRGVjb2Rlcjo6SW5pdERhdGEoKQotIHsKLS0gIGlmICghbV9Jc1Nv bGlkKQotKyAgaWYgKCFfaXNTb2xpZCkKLSAgIHsKLSAgICAgQXZyUGxjQiA9IEF2ckxuMSA9IEF2 ckxuMiA9IEF2ckxuMyA9IE51bUh1ZiA9IEJ1ZjYwID0gMDsKLSAgICAgQXZyUGxjID0gMHgzNTAw OwotQEAgLTM5MSw2ICszOTEsMTEgQEAgSFJFU1VMVCBDRGVjb2Rlcjo6Q29kZVJlYWwoSVNlcXVl bnRpYWxJblN0cmVhbSAqaW5TdHJlYW0sIElTZXF1ZW50aWFsT3V0U3RyZWFtICoKLSAgIGlmIChp blNpemUgPT0gTlVMTCB8fCBvdXRTaXplID09IE5VTEwpCi0gICAgIHJldHVybiBFX0lOVkFMSURB Ukc7Ci0gCi0rICBpZiAoX2lzU29saWQgJiYgIV9zb2xpZEFsbG93ZWQpCi0rICAgIHJldHVybiBT X0ZBTFNFOwotKwotKyAgX3NvbGlkQWxsb3dlZCA9IGZhbHNlOwotKwotICAgaWYgKCFtX091dFdp bmRvd1N0cmVhbS5DcmVhdGUoa0hpc3RvcnlTaXplKSkKLSAgICAgcmV0dXJuIEVfT1VUT0ZNRU1P Ulk7Ci0gICBpZiAoIW1fSW5CaXRTdHJlYW0uQ3JlYXRlKDEgPDwgMjApKQotQEAgLTM5OCwxMyAr NDAzLDEzIEBAIEhSRVNVTFQgQ0RlY29kZXI6OkNvZGVSZWFsKElTZXF1ZW50aWFsSW5TdHJlYW0g KmluU3RyZWFtLCBJU2VxdWVudGlhbE91dFN0cmVhbSAqCi0gCi0gICBtX1VucGFja1NpemUgPSAo SW50NjQpKm91dFNpemU7Ci0gICBtX091dFdpbmRvd1N0cmVhbS5TZXRTdHJlYW0ob3V0U3RyZWFt KTsKLS0gIG1fT3V0V2luZG93U3RyZWFtLkluaXQobV9Jc1NvbGlkKTsKLSsgIG1fT3V0V2luZG93 U3RyZWFtLkluaXQoX2lzU29saWQpOwotICAgbV9JbkJpdFN0cmVhbS5TZXRTdHJlYW0oaW5TdHJl YW0pOwotICAgbV9JbkJpdFN0cmVhbS5Jbml0KCk7Ci0gCi0gICAvLyBDQ29kZXJSZWxlYXNlciBj b2RlclJlbGVhc2VyKHRoaXMpOwotICAgSW5pdERhdGEoKTsKLS0gIGlmICghbV9Jc1NvbGlkKQot KyAgaWYgKCFfaXNTb2xpZCkKLSAgIHsKLSAgICAgX2Vycm9yTW9kZSA9IGZhbHNlOwotICAgICBJ bml0U3RydWN0dXJlcygpOwotQEAgLTQ3NSw2ICs0ODAsNyBAQCBIUkVTVUxUIENEZWNvZGVyOjpD b2RlUmVhbChJU2VxdWVudGlhbEluU3RyZWFtICppblN0cmVhbSwgSVNlcXVlbnRpYWxPdXRTdHJl YW0gKgotICAgfQotICAgaWYgKG1fVW5wYWNrU2l6ZSA8IDApCi0gICAgIHJldHVybiBTX0ZBTFNF OwotKyAgX3NvbGlkQWxsb3dlZCA9IHRydWU7Ci0gICByZXR1cm4gbV9PdXRXaW5kb3dTdHJlYW0u Rmx1c2goKTsKLSB9Ci0gCi1AQCAtNDkxLDcgKzQ5Nyw3IEBAIFNURE1FVEhPRElNUCBDRGVjb2Rl cjo6U2V0RGVjb2RlclByb3BlcnRpZXMyKGNvbnN0IEJ5dGUgKmRhdGEsIFVJbnQzMiBzaXplKQot IHsKLSAgIGlmIChzaXplIDwgMSkKLSAgICAgcmV0dXJuIEVfSU5WQUxJREFSRzsKLS0gIG1fSXNT b2xpZCA9ICgoZGF0YVswXSAmIDEpICE9IDApOwotKyAgX2lzU29saWQgPSAoKGRhdGFbMF0gJiAx KSAhPSAwKTsKLSAgIHJldHVybiBTX09LOwotIH0KLSAKLWRpZmYgLS1naXQgYS9DUFAvN3ppcC9D b21wcmVzcy9SYXIxRGVjb2Rlci5oIGIvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMURlY29kZXIuaAot aW5kZXggMDFiNjA2Yi4uOGFiYjNhMyAxMDA2NDQKLS0tLSBhL0NQUC83emlwL0NvbXByZXNzL1Jh cjFEZWNvZGVyLmgKLSsrKyBiL0NQUC83emlwL0NvbXByZXNzL1JhcjFEZWNvZGVyLmgKLUBAIC0z OCw3ICszOCw4IEBAIHB1YmxpYzoKLSAgIFVJbnQzMiBMYXN0TGVuZ3RoOwotIAotICAgSW50NjQg bV9VbnBhY2tTaXplOwotLSAgYm9vbCBtX0lzU29saWQ7Ci0rICBib29sIF9pc1NvbGlkOwotKyAg Ym9vbCBfc29saWRBbGxvd2VkOwotICAgYm9vbCBfZXJyb3JNb2RlOwotIAotICAgVUludDMyIFJl YWRCaXRzKGludCBudW1CaXRzKTsKLWRpZmYgLS1naXQgYS9DUFAvN3ppcC9Db21wcmVzcy9SYXIy RGVjb2Rlci5jcHAgYi9DUFAvN3ppcC9Db21wcmVzcy9SYXIyRGVjb2Rlci5jcHAKLWluZGV4IDA1 ODBjOGQuLmJlOGQ4NDIgMTAwNjQ0Ci0tLS0gYS9DUFAvN3ppcC9Db21wcmVzcy9SYXIyRGVjb2Rl ci5jcHAKLSsrKyBiL0NQUC83emlwL0NvbXByZXNzL1JhcjJEZWNvZGVyLmNwcAotQEAgLTgwLDcg KzgwLDggQEAgc3RhdGljIGNvbnN0IFVJbnQzMiBrSGlzdG9yeVNpemUgPSAxIDw8IDIwOwotIHN0 YXRpYyBjb25zdCBVSW50MzIga1dpbmRvd1Jlc2VydlNpemUgPSAoMSA8PCAyMikgKyAyNTY7Ci0g Ci0gQ0RlY29kZXI6OkNEZWNvZGVyKCk6Ci0tICBtX0lzU29saWQoZmFsc2UpLAotKyAgX2lzU29s aWQoZmFsc2UpLAotKyAgX3NvbGlkQWxsb3dlZChmYWxzZSksCi0gICBtX1RhYmxlc09LKGZhbHNl KQotIHsKLSB9Ci1AQCAtMzIwLDYgKzMyMSwxMCBAQCBIUkVTVUxUIENEZWNvZGVyOjpDb2RlUmVh bChJU2VxdWVudGlhbEluU3RyZWFtICppblN0cmVhbSwgSVNlcXVlbnRpYWxPdXRTdHJlYW0gKgot ICAgaWYgKGluU2l6ZSA9PSBOVUxMIHx8IG91dFNpemUgPT0gTlVMTCkKLSAgICAgcmV0dXJuIEVf SU5WQUxJREFSRzsKLSAKLSsgIGlmIChfaXNTb2xpZCAmJiAhX3NvbGlkQWxsb3dlZCkKLSsgICAg cmV0dXJuIFNfRkFMU0U7Ci0rICBfc29saWRBbGxvd2VkID0gZmFsc2U7Ci0rCi0gICBpZiAoIW1f T3V0V2luZG93U3RyZWFtLkNyZWF0ZShrSGlzdG9yeVNpemUpKQotICAgICByZXR1cm4gRV9PVVRP Rk1FTU9SWTsKLSAgIGlmICghbV9JbkJpdFN0cmVhbS5DcmVhdGUoMSA8PCAyMCkpCi1AQCAtMzMw LDEyICszMzUsMTIgQEAgSFJFU1VMVCBDRGVjb2Rlcjo6Q29kZVJlYWwoSVNlcXVlbnRpYWxJblN0 cmVhbSAqaW5TdHJlYW0sIElTZXF1ZW50aWFsT3V0U3RyZWFtICoKLSAgIFVJbnQ2NCBwb3MgPSAw LCB1blBhY2tTaXplID0gKm91dFNpemU7Ci0gICAKLSAgIG1fT3V0V2luZG93U3RyZWFtLlNldFN0 cmVhbShvdXRTdHJlYW0pOwotLSAgbV9PdXRXaW5kb3dTdHJlYW0uSW5pdChtX0lzU29saWQpOwot KyAgbV9PdXRXaW5kb3dTdHJlYW0uSW5pdChfaXNTb2xpZCk7Ci0gICBtX0luQml0U3RyZWFtLlNl dFN0cmVhbShpblN0cmVhbSk7Ci0gICBtX0luQml0U3RyZWFtLkluaXQoKTsKLSAKLSAgIC8vIEND b2RlclJlbGVhc2VyIGNvZGVyUmVsZWFzZXIodGhpcyk7Ci0tICBpZiAoIW1fSXNTb2xpZCkKLSsg IGlmICghX2lzU29saWQpCi0gICB7Ci0gICAgIEluaXRTdHJ1Y3R1cmVzKCk7Ci0gICAgIGlmICh1 blBhY2tTaXplID09IDApCi1AQCAtMzQzLDYgKzM0OCw3IEBAIEhSRVNVTFQgQ0RlY29kZXI6OkNv ZGVSZWFsKElTZXF1ZW50aWFsSW5TdHJlYW0gKmluU3RyZWFtLCBJU2VxdWVudGlhbE91dFN0cmVh bSAqCi0gICAgICAgaWYgKG1fSW5CaXRTdHJlYW0uR2V0UHJvY2Vzc2VkU2l6ZSgpICsgMiA8PSBt X1BhY2tTaXplKSAvLyB0ZXN0IGl0OiBwcm9iYWJseSBpbmNvcnJlY3Q7Ci0gICAgICAgICBpZiAo IVJlYWRUYWJsZXMoKSkKLSAgICAgICAgICAgcmV0dXJuIFNfRkFMU0U7Ci0rICAgICAgX3NvbGlk QWxsb3dlZCA9IHRydWU7Ci0gICAgICAgcmV0dXJuIFNfT0s7Ci0gICAgIH0KLSAgICAgaWYgKCFS ZWFkVGFibGVzKCkpCi1AQCAtMzg2LDYgKzM5Miw5IEBAIEhSRVNVTFQgQ0RlY29kZXI6OkNvZGVS ZWFsKElTZXF1ZW50aWFsSW5TdHJlYW0gKmluU3RyZWFtLCBJU2VxdWVudGlhbE91dFN0cmVhbSAq Ci0gCi0gICBpZiAoIVJlYWRMYXN0VGFibGVzKCkpCi0gICAgIHJldHVybiBTX0ZBTFNFOwotKwot KyAgX3NvbGlkQWxsb3dlZCA9IHRydWU7Ci0rCi0gICByZXR1cm4gbV9PdXRXaW5kb3dTdHJlYW0u Rmx1c2goKTsKLSB9Ci0gCi1AQCAtNDAyLDcgKzQxMSw3IEBAIFNURE1FVEhPRElNUCBDRGVjb2Rl cjo6U2V0RGVjb2RlclByb3BlcnRpZXMyKGNvbnN0IEJ5dGUgKmRhdGEsIFVJbnQzMiBzaXplKQot IHsKLSAgIGlmIChzaXplIDwgMSkKLSAgICAgcmV0dXJuIEVfSU5WQUxJREFSRzsKLS0gIG1fSXNT b2xpZCA9ICgoZGF0YVswXSAmIDEpICE9IDApOwotKyAgX2lzU29saWQgPSAoKGRhdGFbMF0gJiAx KSAhPSAwKTsKLSAgIHJldHVybiBTX09LOwotIH0KLSAKLWRpZmYgLS1naXQgYS9DUFAvN3ppcC9D b21wcmVzcy9SYXIyRGVjb2Rlci5oIGIvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMkRlY29kZXIuaAot aW5kZXggMGU5MDA1Zi4uMzcwYmNlMiAxMDA2NDQKLS0tLSBhL0NQUC83emlwL0NvbXByZXNzL1Jh cjJEZWNvZGVyLmgKLSsrKyBiL0NQUC83emlwL0NvbXByZXNzL1JhcjJEZWNvZGVyLmgKLUBAIC0x MzgsNyArMTM4LDggQEAgY2xhc3MgQ0RlY29kZXIgOgotICAgQnl0ZSBtX0xhc3RMZXZlbHNba01h eFRhYmxlU2l6ZV07Ci0gCi0gICBVSW50NjQgbV9QYWNrU2l6ZTsKLS0gIGJvb2wgbV9Jc1NvbGlk OwotKyAgYm9vbCBfaXNTb2xpZDsKLSsgIGJvb2wgX3NvbGlkQWxsb3dlZDsKLSAgIGJvb2wgbV9U YWJsZXNPSzsKLSAKLSAgIHZvaWQgSW5pdFN0cnVjdHVyZXMoKTsKLWRpZmYgLS1naXQgYS9DUFAv N3ppcC9Db21wcmVzcy9SYXIzRGVjb2Rlci5jcHAgYi9DUFAvN3ppcC9Db21wcmVzcy9SYXIzRGVj b2Rlci5jcHAKLWluZGV4IDZjYjhhNmEuLjdiODU4MzMgMTAwNjQ0Ci0tLS0gYS9DUFAvN3ppcC9D b21wcmVzcy9SYXIzRGVjb2Rlci5jcHAKLSsrKyBiL0NQUC83emlwL0NvbXByZXNzL1JhcjNEZWNv ZGVyLmNwcAotQEAgLTkyLDcgKzkyLDggQEAgQ0RlY29kZXI6OkNEZWNvZGVyKCk6Ci0gICBfd3Jp dHRlbkZpbGVTaXplKDApLAotICAgX3ZtRGF0YSgwKSwKLSAgIF92bUNvZGUoMCksCi0tICBtX0lz U29saWQoZmFsc2UpLAotKyAgX2lzU29saWQoZmFsc2UpLAotKyAgX3NvbGlkQWxsb3dlZChmYWxz ZSksCi0gICBfZXJyb3JNb2RlKGZhbHNlKQotIHsKLSAgIFBwbWQ3X0NvbnN0cnVjdCgmX3BwbWQp OwotQEAgLTgyMSw3ICs4MjIsNyBAQCBIUkVTVUxUIENEZWNvZGVyOjpDb2RlUmVhbChJQ29tcHJl c3NQcm9ncmVzc0luZm8gKnByb2dyZXNzKQotIHsKLSAgIF93cml0dGVuRmlsZVNpemUgPSAwOwot ICAgX3Vuc3VwcG9ydGVkRmlsdGVyID0gZmFsc2U7Ci0tICBpZiAoIW1fSXNTb2xpZCkKLSsgIGlm ICghX2lzU29saWQpCi0gICB7Ci0gICAgIF9selNpemUgPSAwOwotICAgICBfd2luUG9zID0gMDsK LUBAIC04NDAsMTIgKzg0MSwxNSBAQCBIUkVTVUxUIENEZWNvZGVyOjpDb2RlUmVhbChJQ29tcHJl c3NQcm9ncmVzc0luZm8gKnByb2dyZXNzKQotICAgaWYgKF9lcnJvck1vZGUpCi0gICAgIHJldHVy biBTX0ZBTFNFOwotIAotLSAgaWYgKCFtX0lzU29saWQgfHwgIVRhYmxlc1JlYWQpCi0rICBpZiAo IV9pc1NvbGlkIHx8ICFUYWJsZXNSZWFkKQotICAgewotICAgICBib29sIGtlZXBEZWNvbXByZXNz aW5nOwotICAgICBSSU5PSyhSZWFkVGFibGVzKGtlZXBEZWNvbXByZXNzaW5nKSk7Ci0gICAgIGlm ICgha2VlcERlY29tcHJlc3NpbmcpCi0rICAgIHsKLSsgICAgICBfc29saWRBbGxvd2VkID0gdHJ1 ZTsKLSAgICAgICByZXR1cm4gU19PSzsKLSsgICAgfQotICAgfQotIAotICAgZm9yICg7OykKLUBA IC04NzAsNiArODc0LDkgQEAgSFJFU1VMVCBDRGVjb2Rlcjo6Q29kZVJlYWwoSUNvbXByZXNzUHJv Z3Jlc3NJbmZvICpwcm9ncmVzcykKLSAgICAgaWYgKCFrZWVwRGVjb21wcmVzc2luZykKLSAgICAg ICBicmVhazsKLSAgIH0KLSsKLSsgIF9zb2xpZEFsbG93ZWQgPSB0cnVlOwotKwotICAgUklOT0so V3JpdGVCdWYoKSk7Ci0gICBVSW50NjQgcGFja1NpemUgPSBtX0luQml0U3RyZWFtLkJpdERlY29k ZXIuR2V0UHJvY2Vzc2VkU2l6ZSgpOwotICAgUklOT0socHJvZ3Jlc3MtPlNldFJhdGlvSW5mbygm cGFja1NpemUsICZfd3JpdHRlbkZpbGVTaXplKSk7Ci1AQCAtODkwLDYgKzg5NywxMCBAQCBTVERN RVRIT0RJTVAgQ0RlY29kZXI6OkNvZGUoSVNlcXVlbnRpYWxJblN0cmVhbSAqaW5TdHJlYW0sIElT ZXF1ZW50aWFsT3V0U3RyZWFtCi0gICAgIGlmICghaW5TaXplKQotICAgICAgIHJldHVybiBFX0lO VkFMSURBUkc7Ci0gCi0rICAgIGlmIChfaXNTb2xpZCAmJiAhX3NvbGlkQWxsb3dlZCkKLSsgICAg ICByZXR1cm4gU19GQUxTRTsKLSsgICAgX3NvbGlkQWxsb3dlZCA9IGZhbHNlOwotKwotICAgICBp ZiAoIV92bURhdGEpCi0gICAgIHsKLSAgICAgICBfdm1EYXRhID0gKEJ5dGUgKik6Ok1pZEFsbG9j KGtWbURhdGFTaXplTWF4ICsga1ZtQ29kZVNpemVNYXgpOwotQEAgLTkyOCw3ICs5MzksNyBAQCBT VERNRVRIT0RJTVAgQ0RlY29kZXI6OlNldERlY29kZXJQcm9wZXJ0aWVzMihjb25zdCBCeXRlICpk YXRhLCBVSW50MzIgc2l6ZSkKLSB7Ci0gICBpZiAoc2l6ZSA8IDEpCi0gICAgIHJldHVybiBFX0lO VkFMSURBUkc7Ci0tICBtX0lzU29saWQgPSAoKGRhdGFbMF0gJiAxKSAhPSAwKTsKLSsgIF9pc1Nv bGlkID0gKChkYXRhWzBdICYgMSkgIT0gMCk7Ci0gICByZXR1cm4gU19PSzsKLSB9Ci0gCi1kaWZm IC0tZ2l0IGEvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyM0RlY29kZXIuaCBiL0NQUC83emlwL0NvbXBy ZXNzL1JhcjNEZWNvZGVyLmgKLWluZGV4IDJmNzJkN2QuLjMyYzg5NDMgMTAwNjQ0Ci0tLS0gYS9D UFAvN3ppcC9Db21wcmVzcy9SYXIzRGVjb2Rlci5oCi0rKysgYi9DUFAvN3ppcC9Db21wcmVzcy9S YXIzRGVjb2Rlci5oCi1AQCAtMTkxLDcgKzE5MSw4IEBAIGNsYXNzIENEZWNvZGVyOgotICAgQ1Jl Y29yZFZlY3RvcjxDVGVtcEZpbHRlciAqPiAgX3RlbXBGaWx0ZXJzOwotICAgVUludDMyIF9sYXN0 RmlsdGVyOwotIAotLSAgYm9vbCBtX0lzU29saWQ7Ci0rICBib29sIF9pc1NvbGlkOwotKyAgYm9v bCBfc29saWRBbGxvd2VkOwotICAgYm9vbCBfZXJyb3JNb2RlOwotIAotICAgYm9vbCBfbHpNb2Rl OwotZGlmZiAtLWdpdCBhL0NQUC83emlwL0NvbXByZXNzL1JhcjVEZWNvZGVyLmNwcCBiL0NQUC83 emlwL0NvbXByZXNzL1JhcjVEZWNvZGVyLmNwcAotaW5kZXggZGM4ODMwZi4uYTgyNmQ1YSAxMDA2 NDQKLS0tLSBhL0NQUC83emlwL0NvbXByZXNzL1JhcjVEZWNvZGVyLmNwcAotKysrIGIvQ1BQLzd6 aXAvQ29tcHJlc3MvUmFyNURlY29kZXIuY3BwCi1AQCAtNzIsNiArNzIsNyBAQCBDRGVjb2Rlcjo6 Q0RlY29kZXIoKToKLSAgICAgX3dyaXR0ZW5GaWxlU2l6ZSgwKSwKLSAgICAgX2RpY3RTaXplTG9n KDApLAotICAgICBfaXNTb2xpZChmYWxzZSksCi0rICAgIF9zb2xpZEFsbG93ZWQoZmFsc2UpLAot ICAgICBfd2FzSW5pdChmYWxzZSksCi0gICAgIF9pbnB1dEJ1ZihOVUxMKQotIHsKLUBAIC04MDEs NyArODAyLDEwIEBAIEhSRVNVTFQgQ0RlY29kZXI6OkNvZGVSZWFsKCkKLSAgICovCi0gCi0gICBp ZiAocmVzID09IFNfT0spCi0rICB7Ci0rICAgIF9zb2xpZEFsbG93ZWQgPSB0cnVlOwotICAgICBy ZXMgPSByZXMyOwotKyAgfQotICAgICAgCi0gICBpZiAocmVzID09IFNfT0sgJiYgX3VucGFja1Np emVfRGVmaW5lZCAmJiBfd3JpdHRlbkZpbGVTaXplICE9IF91bnBhY2tTaXplKQotICAgICByZXR1 cm4gU19GQUxTRTsKLUBAIC04MjEsNiArODI1LDEwIEBAIFNURE1FVEhPRElNUCBDRGVjb2Rlcjo6 Q29kZShJU2VxdWVudGlhbEluU3RyZWFtICppblN0cmVhbSwgSVNlcXVlbnRpYWxPdXRTdHJlYW0K LSB7Ci0gICB0cnkKLSAgIHsKLSsgICAgaWYgKF9pc1NvbGlkICYmICFfc29saWRBbGxvd2VkKQot KyAgICAgIHJldHVybiBTX0ZBTFNFOwotKyAgICBfc29saWRBbGxvd2VkID0gZmFsc2U7Ci0rCi0g ICAgIGlmIChfZGljdFNpemVMb2cgPj0gc2l6ZW9mKHNpemVfdCkgKiA4KQotICAgICAgIHJldHVy biBFX05PVElNUEw7Ci0gCi1kaWZmIC0tZ2l0IGEvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyNURlY29k ZXIuaCBiL0NQUC83emlwL0NvbXByZXNzL1JhcjVEZWNvZGVyLmgKLWluZGV4IGIwYTRkZDEuLjNk YjUwMTggMTAwNjQ0Ci0tLS0gYS9DUFAvN3ppcC9Db21wcmVzcy9SYXI1RGVjb2Rlci5oCi0rKysg Yi9DUFAvN3ppcC9Db21wcmVzcy9SYXI1RGVjb2Rlci5oCi1AQCAtMjcxLDYgKzI3MSw3IEBAIGNs YXNzIENEZWNvZGVyOgotICAgQnl0ZSBfZGljdFNpemVMb2c7Ci0gICBib29sIF90YWJsZVdhc0Zp bGxlZDsKLSAgIGJvb2wgX2lzU29saWQ7Ci0rICBib29sIF9zb2xpZEFsbG93ZWQ7Ci0gICBib29s IF93YXNJbml0OwotIAotICAgVUludDMyIF9yZXBzW2tOdW1SZXBzXTsKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvcDd6aXAvcGF0Y2hlcy9DVkUtMjAxNi05Mjk2LnBhdGNoIGIvc3JjcGtncy9wN3ppcC9w YXRjaGVzL0NWRS0yMDE2LTkyOTYucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IGZiYmIzMzc3MzdlNS4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvcDd6aXAvcGF0Y2hlcy9D VkUtMjAxNi05Mjk2LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotLS0tIGEv Q1BQLzd6aXAvQXJjaGl2ZS83ei83ekluLmNwcAlTdW4gTm92IDIwIDA5OjI5OjQxIDIwMTYKLSsr KyBiL0NQUC83emlwL0FyY2hpdmUvN3ovN3pJbi5jcHAJU3VuIE5vdiAyMCAwOTozMToyMiAyMDE2 Ci1AQCAtMTA5Nyw3ICsxMDk3LDggQEAgSFJFU1VMVCBDSW5BcmNoaXZlOjpSZWFkQW5kRGVjb2Rl UGFja2VkU3RyZWFtcygKLSAgICAgICBpZiAoQ3JjQ2FsYyhkYXRhLCB1bnBhY2tTaXplKSAhPSBm b2xkZXJzLkZvbGRlckNSQ3MuVmFsc1tpXSkKLSAgICAgICAgIFRocm93SW5jb3JyZWN0KCk7Ci0g ICB9Ci0tICBIZWFkZXJzU2l6ZSArPSBmb2xkZXJzLlBhY2tQb3NpdGlvbnNbZm9sZGVycy5OdW1Q YWNrU3RyZWFtc107Ci0rICBpZiAoZm9sZGVycy5QYWNrUG9zaXRpb25zKQotKyAgICAgIEhlYWRl cnNTaXplICs9IGZvbGRlcnMuUGFja1Bvc2l0aW9uc1tmb2xkZXJzLk51bVBhY2tTdHJlYW1zXTsK LSAgIHJldHVybiBTX09LOwotIH0KLSAKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcDd6aXAvcGF0Y2hl cy9DVkUtMjAxNy0xNzk2OS5wYXRjaCBiL3NyY3BrZ3MvcDd6aXAvcGF0Y2hlcy9DVkUtMjAxNy0x Nzk2OS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOWE4MjBhZjczMDY3Li4w MDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9wN3ppcC9wYXRjaGVzL0NWRS0yMDE3LTE3OTY5LnBh dGNoCisrKyAvZGV2L251bGwKQEAgLTEsMjYgKzAsMCBAQAotRnJvbTogPT91dGYtOD9xP0FudG9p bmVfQmVhdXByPUMzPUE5Pz0gPGFuYXJjYXRAZGViaWFuLm9yZz4KLURhdGU6IFN1biwgMjggSmFu IDIwMTggMjE6MTk6NTAgKzAxMDAKLVN1YmplY3Q6IGJhY2twb3J0IG9mIHRoZSBDVkUtMjAxNy0x Nzk2OSBmaXggZnJvbSA3emlwIDE4LjAwLWJldGEKLQotLS0tCi0gQ1BQLzd6aXAvQ29tcHJlc3Mv U2hyaW5rRGVjb2Rlci5jcHAgfCA3ICsrKysrKy0KLSAxIGZpbGUgY2hhbmdlZCwgNiBpbnNlcnRp b25zKCspLCAxIGRlbGV0aW9uKC0pCi0KLWRpZmYgLS1naXQgYS9DUFAvN3ppcC9Db21wcmVzcy9T aHJpbmtEZWNvZGVyLmNwcCBiL0NQUC83emlwL0NvbXByZXNzL1Nocmlua0RlY29kZXIuY3BwCi1p bmRleCA4MGI3ZTY3Li40YWNkY2U1IDEwMDY0NAotLS0tIGEvQ1BQLzd6aXAvQ29tcHJlc3MvU2hy aW5rRGVjb2Rlci5jcHAKLSsrKyBiL0NQUC83emlwL0NvbXByZXNzL1Nocmlua0RlY29kZXIuY3Bw Ci1AQCAtMTIxLDcgKzEyMSwxMiBAQCBIUkVTVUxUIENEZWNvZGVyOjpDb2RlUmVhbChJU2VxdWVu dGlhbEluU3RyZWFtICppblN0cmVhbSwgSVNlcXVlbnRpYWxPdXRTdHJlYW0gKgotICAgICB7Ci0g ICAgICAgX3N0YWNrW2krK10gPSBfc3VmZml4ZXNbY3VyXTsKLSAgICAgICBjdXIgPSBfcGFyZW50 c1tjdXJdOwotLSAgICB9Ci0rICAgICAgaWYgKGkgPj0ga051bUl0ZW1zKQotKyAgICAgICAgYnJl YWs7Ci0rICAgICB9Ci0rCi0rICAgIGlmIChpID49IGtOdW1JdGVtcykKLSsgICAgICBicmVhazsK LSAgICAgCi0gICAgIF9zdGFja1tpKytdID0gKEJ5dGUpY3VyOwotICAgICBsYXN0Q2hhcjIgPSAo Qnl0ZSljdXI7CmRpZmYgLS1naXQgYS9zcmNwa2dzL3A3emlwL3RlbXBsYXRlIGIvc3JjcGtncy9w N3ppcC90ZW1wbGF0ZQpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjQyZTI0YWRhZjUy Li4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9wN3ppcC90ZW1wbGF0ZQorKysgL2Rldi9udWxs CkBAIC0xLDQ3ICswLDAgQEAKLSMgVGVtcGxhdGUgZmlsZSBmb3IgJ3A3emlwJwotcGtnbmFtZT1w N3ppcAotdmVyc2lvbj0xNi4wMgotcmV2aXNpb249NQotd3Jrc3JjPSIke3BrZ25hbWV9XyR7dmVy c2lvbn0iCi1ob3N0bWFrZWRlcGVuZHM9Inlhc20gbmFzbSIKLXNob3J0X2Rlc2M9IkNvbW1hbmQt bGluZSB2ZXJzaW9uIG9mIHRoZSA3emlwIGNvbXByZXNzZWQgZmlsZSBhcmNoaXZlIgotbWFpbnRh aW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIKLWxpY2Vuc2U9IkxHUEwtMi4x LW9yLWxhdGVyIgotaG9tZXBhZ2U9Imh0dHA6Ly9wN3ppcC5zb3VyY2Vmb3JnZS5uZXQvIgotZGlz dGZpbGVzPSIke1NPVVJDRUZPUkdFX1NJVEV9LyR7cGtnbmFtZX0vJHtwa2duYW1lfV8ke3ZlcnNp b259X3NyY19hbGwudGFyLmJ6MiIKLWNoZWNrc3VtPTVlYjIwYWMwZTI5NDRmNmNiOWMyZDUxZGQ2 YzQ1MTg5NDFjMTg1MzQ3ZDQwODllYTg5MDg3ZmZkZDZlMjM0MWYKLQotQ1hYRkxBR1M9Ii1Xbm8t bmFycm93aW5nIgotCi1kb19jb25maWd1cmUoKSB7Ci0JY2FzZSAiJFhCUFNfVEFSR0VUX01BQ0hJ TkUiIGluCi0JCWk2ODYqKSBjcCBtYWtlZmlsZS5saW51eF94ODZfYXNtX2djY180LlggbWFrZWZp bGUubWFjaGluZTs7Ci0JCXg4Nl82NCopIGNwIG1ha2VmaWxlLmxpbnV4X2FtZDY0X2FzbSBtYWtl ZmlsZS5tYWNoaW5lOzsKLQkJKikgY3AgbWFrZWZpbGUubGludXhfYW55X2NwdV9nY2NfNC5YIG1h a2VmaWxlLm1hY2hpbmU7OwotCWVzYWMKLQlzZWQgLWUgInMsZysrLCR7Q1hYfSwiIC1pIG1ha2Vm aWxlLm1hY2hpbmUKLQlzZWQgLWUgInMsZ2NjLCR7Q0N9LCIgLWkgbWFrZWZpbGUubWFjaGluZQot fQotZG9fYnVpbGQoKSB7Ci0JbWFrZSBhbGwzIE9QVEZMQUdTPSIkQ1hYRkxBR1MiICR7bWFrZWpv YnN9Ci19Ci1kb19pbnN0YWxsKCkgewotCW1ha2UgaW5zdGFsbCBERVNUX0RJUj0iJHtERVNURElS fSIgREVTVF9IT01FPSIvdXNyIiBcCi0JCURFU1RfTUFOPSIvdXNyL3NoYXJlL21hbiIgXAotCQlE RVNUX1NIQVJFX0RPQz0iL3Vzci9zaGFyZS9kb2MvJHtwa2duYW1lfSIKLQlmaW5kICR7REVTVERJ Un0vdXNyL3NoYXJlL2RvYy8kcGtnbmFtZSAtdHlwZSBkIC1leGVjIGNobW9kIDc1NSB7fSBcOwot CW1rZGlyIC1wICR7REVTVERJUn0vdXNyL3NoYXJlL2xpY2Vuc2VzL3A3emlwLwotCW12ICR7REVT VERJUn0vdXNyL3NoYXJlL2RvYy9wN3ppcC9ET0MvY29weWluZy50eHQgXAotCSAgICR7REVTVERJ Un0vdXNyL3NoYXJlL2xpY2Vuc2VzL3A3emlwL0xJQ0VOU0UKLX0KLQotcDd6aXAtdW5yYXJfcGFj a2FnZSgpIHsKLQlzaG9ydF9kZXNjKz0iIC0gUkFSIHN1cHBvcnQiCi0JbGljZW5zZT0iY3VzdG9t OmZyZWV3YXJlIgotCWRlcGVuZHM9IiR7c291cmNlcGtnfS0ke3ZlcnNpb259XyR7cmV2aXNpb259 IgotCXJlcG9zaXRvcnk9bm9uZnJlZQotCXBrZ19pbnN0YWxsKCkgewotCQl2bW92ZSB1c3IvbGli L3A3emlwL0NvZGVjcy9SYXIuc28KLQkJdmxpY2Vuc2UgRE9DL3VuUmFyTGljZW5zZS50eHQgTElD RU5TRQotCX0KLX0KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcDd6aXAvdXBkYXRlIGIvc3JjcGtncy9w N3ppcC91cGRhdGUKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg0ZWQ0NmQ3NGExYS4u MDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvcDd6aXAvdXBkYXRlCisrKyAvZGV2L251bGwKQEAg LTEgKzAsMCBAQAotcGF0dGVybj0ncDd6aXBfXEtbLlxkXSsnCg== --===============6726457901827332264==--