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 28765 invoked from network); 15 Aug 2022 17:26:33 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 15 Aug 2022 17:26:33 -0000 Content-Type: multipart/mixed; boundary="===============7177579974726752279==" 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 19:26:33 +0200 List-Id: Message-ID: <20220815172633.WsuqYESFIDZfeseNKfy4jUL8AQeHoMuU0zkGeU0rj3M@z> GitHub notification mails are now in MIME to allow UTF8. --===============7177579974726752279== 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== --===============7177579974726752279== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-7zip-37940.patch" RnJvbSBmMjIyYTZkMTFjNzA3OGI5ZjgwMDZmOGIwMzkwNDcwOTJjZjRhNWVmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBSb2JlcnRvIFJpY2NpIDxyaWNjaUBkaXNyb290Lm9yZz4KRGF0 ZTogU2F0LCA5IEp1bCAyMDIyIDEyOjA1OjIyICswMjAwClN1YmplY3Q6IFtQQVRDSF0gTmV3IHBh Y2thZ2U6IDd6aXAtMjIuMDEKCi0tLQogc3JjcGtncy83emlwLXVucmFyICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHwgICAxICsKIHNyY3BrZ3MvN3ppcC9maWxlcy83enouMSAgICAgICAgICAg ICAgICAgICAgICB8IDIxNSArKysrKysrKysrKysKIHNyY3BrZ3MvN3ppcC9wN3ppcC11bnJhci5J TlNUQUxMLm1zZyAgICAgICAgICB8ICAgNSArCiBzcmNwa2dzLzd6aXAvcGF0Y2hlcy9idWlsZF9m bGFncy5wYXRjaCAgICAgICAgfCAgMzAgKysKIHNyY3BrZ3MvN3ppcC90ZW1wbGF0ZSAgICAgICAg ICAgICAgICAgICAgICAgICB8ICA3OCArKysrKwogc3JjcGtncy83emlwL3VwZGF0ZSAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgICAyICsKIHNyY3BrZ3MvcDd6aXAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB8ICAgMSArCiBzcmNwa2dzL3A3emlwLXVucmFyICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgIDIgKy0KIHNyY3BrZ3MvcDd6aXAvcGF0Y2hlcy8yMC1DVkUtMjAx OC01OTk2LnBhdGNoICB8IDIyMSAtLS0tLS0tLS0tLS0tCiBzcmNwa2dzL3A3emlwL3BhdGNoZXMv MzAtQ1ZFLTIwMTgtMTAxMTUucGF0Y2ggfCAzMTEgLS0tLS0tLS0tLS0tLS0tLS0tCiBzcmNwa2dz L3A3emlwL3BhdGNoZXMvQ1ZFLTIwMTYtOTI5Ni5wYXRjaCAgICAgfCAgMTIgLQogc3JjcGtncy9w N3ppcC9wYXRjaGVzL0NWRS0yMDE3LTE3OTY5LnBhdGNoICAgIHwgIDI2IC0tCiBzcmNwa2dzL3A3 emlwL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAgICAgfCAgNDcgLS0tCiBzcmNwa2dzL3A3 emlwL3VwZGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEgLQogMTQgZmlsZXMgY2hh bmdlZCwgMzMzIGluc2VydGlvbnMoKyksIDYxOSBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEy 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 ZW1wbGF0ZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjhmY2Q0OGI1 NTYxNAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvN3ppcC90ZW1wbGF0ZQpAQCAtMCwwICsx LDc4IEBACisjIFRlbXBsYXRlIGZpbGUgZm9yICc3emlwJworcGtnbmFtZT03emlwCit2ZXJzaW9u PTIyLjAxCityZXZpc2lvbj0xCitjcmVhdGVfd3Jrc3JjPXllcworc2hvcnRfZGVzYz0iRmlsZSBh cmNoaXZlciB3aXRoIGEgaGlnaCBjb21wcmVzc2lvbiByYXRpbyIKK21haW50YWluZXI9IlJvYmVy dG8gUmljY2kgPHJpY2NpQGRpc3Jvb3Qub3JnPiIKK2xpY2Vuc2U9IkxHUEwtMi4xLW9yLWxhdGVy LCBCU0QtMy1DbGF1c2UiCitob21lcGFnZT0iaHR0cHM6Ly93d3cuNy16aXAub3JnIgorY2hhbmdl bG9nPSJodHRwczovL3d3dy43LXppcC5vcmcvaGlzdG9yeS50eHQiCitkaXN0ZmlsZXM9Imh0dHBz Oi8vd3d3LjctemlwLm9yZy9hLzd6JHt2ZXJzaW9uLy8uL30tc3JjLnRhci54eiIKK2NoZWNrc3Vt PTM5MzA5ODczMGM3MDA0MjM5MmFmODA4OTE3ZTc2NTk0NWRjMjQzN2RlZTdhYWUzY2ZjYzQ5NjZl YjkyMGZiYzUKK2FsdGVybmF0aXZlcz0iCisgN3o6N3o6L3Vzci9iaW4vN3otZnJlZQorIDd6Ojd6 YTovdXNyL2Jpbi83ei1mcmVlCisgN3o6N3pyOi91c3IvYmluLzd6LWZyZWUKKyA3ejo3ei4xOi91 c3Ivc2hhcmUvbWFuL21hbjEvN3otZnJlZS4xIgorCitpZiBbICIkWEJQU19UQVJHRVRfTElCQyIg PSBtdXNsIF07IHRoZW4KKwkjIG1pc3NpbmcgcHRocmVhZF9hdHRyX3NldGFmZmluaXR5X25wKCkK KwlDRkxBR1MrPSItRF83WklQX0FGRklOSVRZX0RJU0FCTEUiCisJQ1hYRkxBR1MrPSItRF83WklQ X0FGRklOSVRZX0RJU0FCTEUiCitmaQorCitkb19idWlsZCgpIHsKKwljZCAiJHdya3NyYyIvQ1BQ Lzd6aXAvQnVuZGxlcy9BbG9uZTIKKworCWNhc2UgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiBpbgor CWFhcmNoNjQqKSBfN3pfbWFrZWZpbGU9Ii4uLy4uL2NtcGxfZ2NjX2FybTY0Lm1hayI7OworCSop ICAgICAgICBfN3pfbWFrZWZpbGU9Ii4uLy4uL2NtcGxfZ2NjLm1hayI7OworCWVzYWMKKworCWZv ciBvcHRzIGluICJPPWIvbm9yYXIgRElTQUJMRV9SQVJfQ09NUFJFU1M9MSIgTz1iL3JhcjsgZG8K KwkJbWFrZSAiJG1ha2Vqb2JzIiAtZiAiJF83el9tYWtlZmlsZSIgXAorCQkJQ0M9IiRDQyIgQ1hY PSIkQ1hYIiBYQlBTX0NGTEFHUz0iJENGTEFHUyIgXAorCQkJWEJQU19DWFhGTEFHUz0iJENYWEZM QUdTIiBYQlBTX0xERkxBR1M9IiRMREZMQUdTIiBcCisJCQkkb3B0cworCWRvbmUKK30KKworZG9f aW5zdGFsbCgpIHsKKwl2YmluICIke3dya3NyY30vQ1BQLzd6aXAvQnVuZGxlcy9BbG9uZTIvYi9u b3Jhci83enoiICI3ei1mcmVlIgorCXZsaWNlbnNlICIke3dya3NyY30vRE9DL0xpY2Vuc2UudHh0 IgorCSMgaHR0cHM6Ly9jZ2l0LmZyZWVic2Qub3JnL3BvcnRzL3BsYWluL2FyY2hpdmVycy83LXpp cC9maWxlcy83enouMQorCXZtYW4gIiR7RklMRVNESVJ9Lzd6ei4xIiAiN3otZnJlZS4xIgorfQor Cis3emlwLXVucmFyX3BhY2thZ2UoKSB7CisJbGljZW5zZSs9IiwgY3VzdG9tOmZyZWV3YXJlIgor CXJlcG9zaXRvcnk9bm9uZnJlZQorCXNob3J0X2Rlc2MrPSIgLSBSQVIgc3VwcG9ydCIKKwlhbHRl cm5hdGl2ZXM9IgorCSA3ejo3ejovdXNyL2Jpbi83ei11bnJhcgorCSA3ejo3emE6L3Vzci9iaW4v N3otdW5yYXIKKwkgN3o6N3pyOi91c3IvYmluLzd6LXVucmFyCisJIDd6Ojd6LjE6L3Vzci9zaGFy ZS9tYW4vbWFuMS83ei11bnJhci4xIgorCisJcGtnX2luc3RhbGwoKSB7CisJCXZiaW4gIiR7d3Jr c3JjfS9DUFAvN3ppcC9CdW5kbGVzL0Fsb25lMi9iL3Jhci83enoiICI3ei11bnJhciIKKwkJdmxp Y2Vuc2UgIiR7d3Jrc3JjfS9ET0MvTGljZW5zZS50eHQiCisJCXZtYW4gIiR7RklMRVNESVJ9Lzd6 ei4xIiAiN3otdW5yYXIuMSIKKwl9Cit9CisKK3A3emlwX3BhY2thZ2UoKSB7CisJYnVpbGRfc3R5 bGU9bWV0YQorCWRlcGVuZHM9N3ppcAorCXNob3J0X2Rlc2M9IkNvbW1hbmQtbGluZSB2ZXJzaW9u IG9mIHRoZSA3emlwIGNvbXByZXNzZWQgZmlsZSBhcmNoaXZlIgorCXNob3J0X2Rlc2MrPSIgKHRy YW5zaXRpb25hbCBkdW1teSBwYWNrYWdlKSIKK30KKworcDd6aXAtdW5yYXJfcGFja2FnZSgpIHsK KwlidWlsZF9zdHlsZT1tZXRhCisJcmVwb3NpdG9yeT1ub25mcmVlCisJZGVwZW5kcz03emlwLXVu cmFyCisJc2hvcnRfZGVzYz0iQ29tbWFuZC1saW5lIHZlcnNpb24gb2YgdGhlIDd6aXAgY29tcHJl c3NlZCBmaWxlIGFyY2hpdmUgLSBSQVIgc3VwcG9ydCIKKwlzaG9ydF9kZXNjKz0iICh0cmFuc2l0 aW9uYWwgZHVtbXkgcGFja2FnZSkiCit9CmRpZmYgLS1naXQgYS9zcmNwa2dzLzd6aXAvdXBkYXRl IGIvc3JjcGtncy83emlwL3VwZGF0ZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw MDAwMDAuLjU0NjNmMTQ4ZTRmOAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvN3ppcC91cGRh dGUKQEAgLTAsMCArMSwyIEBACitzaXRlPSdodHRwczovLzctemlwLm9yZy9kb3dubG9hZC5odG1s JworcGF0dGVybj0nRG93bmxvYWQgNy1aaXAgXEtbXGQuXSsnCmRpZmYgLS1naXQgYS9zcmNwa2dz L3A3emlwIGIvc3JjcGtncy9wN3ppcApuZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAw MDAwMDAuLjI4NDMxMjU5NWE0YwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvcDd6aXAKQEAg LTAsMCArMSBAQAorN3ppcApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvcDd6aXAtdW5yYXIgYi9zcmNwa2dzL3A3emlwLXVucmFyCmluZGV4IGJmNTM0OWVl NjY2Ni4uMjg0MzEyNTk1YTRjIDEyMDAwMAotLS0gYS9zcmNwa2dzL3A3emlwLXVucmFyCisrKyBi L3NyY3BrZ3MvcDd6aXAtdW5yYXIKQEAgLTEgKzEgQEAKLXA3emlwClwgTm8gbmV3bGluZSBhdCBl bmQgb2YgZmlsZQorN3ppcApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvcDd6aXAvcGF0Y2hlcy8yMC1DVkUtMjAxOC01OTk2LnBhdGNoIGIvc3JjcGtncy9w N3ppcC9wYXRjaGVzLzIwLUNWRS0yMDE4LTU5OTYucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDY3MzNiZmY5MTg5NS4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvcDd6aXAv cGF0Y2hlcy8yMC1DVkUtMjAxOC01OTk2LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMjIxICsw LDAgQEAKLUZyb206IFJvYmVydCBMdWJlcmRhIDxyb2JlcnRAZGViaWFuLm9yZz4KLURhdGU6IFN1 biwgMjggSmFuIDIwMTggMjM6NDc6NDAgKzAxMDAKLVN1YmplY3Q6IENWRS0yMDE4LTU5OTYKLQot SG9wZWZ1bGx5IGZpeCBNZW1vcnkgQ29ycnVwdGlvbnMgdmlhIFJBUiBQUE1kIChDVkUtMjAxOC01 OTk2KSBieQotYXBwbHlpbmcgYSBmZXcgY2hhbmdlcyBmcm9tIDdaaXAgMTguMDAtYmV0YS4KLQot QnVnLURlYmlhbjogaHR0cHM6Ly9idWdzLmRlYmlhbi5vcmcvIzg4ODMxNAotLS0tCi0gQ1BQLzd6 aXAvQ29tcHJlc3MvUmFyMURlY29kZXIuY3BwIHwgMTMgKysrKysrKysrLS0tLQotIENQUC83emlw L0NvbXByZXNzL1JhcjFEZWNvZGVyLmggICB8ICAxICsKLSBDUFAvN3ppcC9Db21wcmVzcy9SYXIy RGVjb2Rlci5jcHAgfCAxMCArKysrKysrKystCi0gQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMkRlY29k ZXIuaCAgIHwgIDEgKwotIENQUC83emlwL0NvbXByZXNzL1JhcjNEZWNvZGVyLmNwcCB8IDIzICsr KysrKysrKysrKysrKysrKysrLS0tCi0gQ1BQLzd6aXAvQ29tcHJlc3MvUmFyM0RlY29kZXIuaCAg IHwgIDIgKysKLSA2IGZpbGVzIGNoYW5nZWQsIDQyIGluc2VydGlvbnMoKyksIDggZGVsZXRpb25z KC0pCi0KLWRpZmYgLS1naXQgYS9DUFAvN3ppcC9Db21wcmVzcy9SYXIxRGVjb2Rlci5jcHAgYi9D UFAvN3ppcC9Db21wcmVzcy9SYXIxRGVjb2Rlci5jcHAKLWluZGV4IDFhYWVkY2MuLjY4MDMwYzcg MTAwNjQ0Ci0tLS0gYS9DUFAvN3ppcC9Db21wcmVzcy9SYXIxRGVjb2Rlci5jcHAKLSsrKyBiL0NQ UC83emlwL0NvbXByZXNzL1JhcjFEZWNvZGVyLmNwcAotQEAgLTI5LDcgKzI5LDcgQEAgcHVibGlj OgotIH07Ci0gKi8KLSAKLS1DRGVjb2Rlcjo6Q0RlY29kZXIoKTogbV9Jc1NvbGlkKGZhbHNlKSB7 IH0KLStDRGVjb2Rlcjo6Q0RlY29kZXIoKTogbV9Jc1NvbGlkKGZhbHNlKSwgX2Vycm9yTW9kZShm YWxzZSkgeyB9Ci0gCi0gdm9pZCBDRGVjb2Rlcjo6SW5pdFN0cnVjdHVyZXMoKQotIHsKLUBAIC00 MDYsOSArNDA2LDE0IEBAIEhSRVNVTFQgQ0RlY29kZXI6OkNvZGVSZWFsKElTZXF1ZW50aWFsSW5T dHJlYW0gKmluU3RyZWFtLCBJU2VxdWVudGlhbE91dFN0cmVhbSAqCi0gICBJbml0RGF0YSgpOwot ICAgaWYgKCFtX0lzU29saWQpCi0gICB7Ci0rICAgIF9lcnJvck1vZGUgPSBmYWxzZTsKLSAgICAg SW5pdFN0cnVjdHVyZXMoKTsKLSAgICAgSW5pdEh1ZmYoKTsKLSAgIH0KLSsKLSsgIGlmIChfZXJy b3JNb2RlKQotKyAgICByZXR1cm4gU19GQUxTRTsKLSsKLSAgIGlmIChtX1VucGFja1NpemUgPiAw KQotICAgewotICAgICBHZXRGbGFnc0J1ZigpOwotQEAgLTQ3Nyw5ICs0ODIsOSBAQCBTVERNRVRI T0RJTVAgQ0RlY29kZXI6OkNvZGUoSVNlcXVlbnRpYWxJblN0cmVhbSAqaW5TdHJlYW0sIElTZXF1 ZW50aWFsT3V0U3RyZWFtCi0gICAgIGNvbnN0IFVJbnQ2NCAqaW5TaXplLCBjb25zdCBVSW50NjQg Km91dFNpemUsIElDb21wcmVzc1Byb2dyZXNzSW5mbyAqcHJvZ3Jlc3MpCi0gewotICAgdHJ5IHsg cmV0dXJuIENvZGVSZWFsKGluU3RyZWFtLCBvdXRTdHJlYW0sIGluU2l6ZSwgb3V0U2l6ZSwgcHJv Z3Jlc3MpOyB9Ci0tICBjYXRjaChjb25zdCBDSW5CdWZmZXJFeGNlcHRpb24gJmUpIHsgcmV0dXJu IGUuRXJyb3JDb2RlOyB9Ci0tICBjYXRjaChjb25zdCBDTHpPdXRXaW5kb3dFeGNlcHRpb24gJmUp IHsgcmV0dXJuIGUuRXJyb3JDb2RlOyB9Ci0tICBjYXRjaCguLi4pIHsgcmV0dXJuIFNfRkFMU0U7 IH0KLSsgIGNhdGNoKGNvbnN0IENJbkJ1ZmZlckV4Y2VwdGlvbiAmZSkgeyBfZXJyb3JNb2RlID0g dHJ1ZTsgcmV0dXJuIGUuRXJyb3JDb2RlOyB9Ci0rICBjYXRjaChjb25zdCBDTHpPdXRXaW5kb3dF eGNlcHRpb24gJmUpIHsgX2Vycm9yTW9kZSA9IHRydWU7IHJldHVybiBlLkVycm9yQ29kZTsgfQot KyAgY2F0Y2goLi4uKSB7IF9lcnJvck1vZGUgPSB0cnVlOyByZXR1cm4gU19GQUxTRTsgfQotIH0K LSAKLSBTVERNRVRIT0RJTVAgQ0RlY29kZXI6OlNldERlY29kZXJQcm9wZXJ0aWVzMihjb25zdCBC eXRlICpkYXRhLCBVSW50MzIgc2l6ZSkKLWRpZmYgLS1naXQgYS9DUFAvN3ppcC9Db21wcmVzcy9S YXIxRGVjb2Rlci5oIGIvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMURlY29kZXIuaAotaW5kZXggNjMw ZjA4OS4uMDFiNjA2YiAxMDA2NDQKLS0tLSBhL0NQUC83emlwL0NvbXByZXNzL1JhcjFEZWNvZGVy LmgKLSsrKyBiL0NQUC83emlwL0NvbXByZXNzL1JhcjFEZWNvZGVyLmgKLUBAIC0zOSw2ICszOSw3 IEBAIHB1YmxpYzoKLSAKLSAgIEludDY0IG1fVW5wYWNrU2l6ZTsKLSAgIGJvb2wgbV9Jc1NvbGlk OwotKyAgYm9vbCBfZXJyb3JNb2RlOwotIAotICAgVUludDMyIFJlYWRCaXRzKGludCBudW1CaXRz KTsKLSAgIEhSRVNVTFQgQ29weUJsb2NrKFVJbnQzMiBkaXN0YW5jZSwgVUludDMyIGxlbik7Ci1k aWZmIC0tZ2l0IGEvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMkRlY29kZXIuY3BwIGIvQ1BQLzd6aXAv Q29tcHJlc3MvUmFyMkRlY29kZXIuY3BwCi1pbmRleCBiM2YyYjRiLi4wNTgwYzhkIDEwMDY0NAot LS0tIGEvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMkRlY29kZXIuY3BwCi0rKysgYi9DUFAvN3ppcC9D b21wcmVzcy9SYXIyRGVjb2Rlci5jcHAKLUBAIC04MCw3ICs4MCw4IEBAIHN0YXRpYyBjb25zdCBV SW50MzIga0hpc3RvcnlTaXplID0gMSA8PCAyMDsKLSBzdGF0aWMgY29uc3QgVUludDMyIGtXaW5k b3dSZXNlcnZTaXplID0gKDEgPDwgMjIpICsgMjU2OwotIAotIENEZWNvZGVyOjpDRGVjb2Rlcigp OgotLSAgbV9Jc1NvbGlkKGZhbHNlKQotKyAgbV9Jc1NvbGlkKGZhbHNlKSwKLSsgIG1fVGFibGVz T0soZmFsc2UpCi0gewotIH0KLSAKLUBAIC0xMDAsNiArMTAxLDggQEAgVUludDMyIENEZWNvZGVy OjpSZWFkQml0cyh1bnNpZ25lZCBudW1CaXRzKSB7IHJldHVybiBtX0luQml0U3RyZWFtLlJlYWRC aXRzKG51bUIKLSAKLSBib29sIENEZWNvZGVyOjpSZWFkVGFibGVzKHZvaWQpCi0gewotKyAgbV9U YWJsZXNPSyA9IGZhbHNlOwotKwotICAgQnl0ZSBsZXZlbExldmVsc1trTGV2ZWxUYWJsZVNpemVd OwotICAgQnl0ZSBuZXdMZXZlbHNba01heFRhYmxlU2l6ZV07Ci0gICBtX0F1ZGlvTW9kZSA9IChS ZWFkQml0cygxKSA9PSAxKTsKLUBAIC0xNzAsNiArMTczLDggQEAgYm9vbCBDRGVjb2Rlcjo6UmVh ZFRhYmxlcyh2b2lkKQotICAgfQotICAgCi0gICBtZW1jcHkobV9MYXN0TGV2ZWxzLCBuZXdMZXZl bHMsIGtNYXhUYWJsZVNpemUpOwotKyAgbV9UYWJsZXNPSyA9IHRydWU7Ci0rCi0gICByZXR1cm4g dHJ1ZTsKLSB9Ci0gCi1AQCAtMzQ0LDYgKzM0OSw5IEBAIEhSRVNVTFQgQ0RlY29kZXI6OkNvZGVS ZWFsKElTZXF1ZW50aWFsSW5TdHJlYW0gKmluU3RyZWFtLCBJU2VxdWVudGlhbE91dFN0cmVhbSAq Ci0gICAgICAgcmV0dXJuIFNfRkFMU0U7Ci0gICB9Ci0gCi0rICBpZiAoIW1fVGFibGVzT0spCi0r ICAgIHJldHVybiBTX0ZBTFNFOwotKwotICAgVUludDY0IHN0YXJ0UG9zID0gbV9PdXRXaW5kb3dT dHJlYW0uR2V0UHJvY2Vzc2VkU2l6ZSgpOwotICAgd2hpbGUgKHBvcyA8IHVuUGFja1NpemUpCi0g ICB7Ci1kaWZmIC0tZ2l0IGEvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMkRlY29kZXIuaCBiL0NQUC83 emlwL0NvbXByZXNzL1JhcjJEZWNvZGVyLmgKLWluZGV4IDNhMDUzNWMuLjBlOTAwNWYgMTAwNjQ0 Ci0tLS0gYS9DUFAvN3ppcC9Db21wcmVzcy9SYXIyRGVjb2Rlci5oCi0rKysgYi9DUFAvN3ppcC9D b21wcmVzcy9SYXIyRGVjb2Rlci5oCi1AQCAtMTM5LDYgKzEzOSw3IEBAIGNsYXNzIENEZWNvZGVy IDoKLSAKLSAgIFVJbnQ2NCBtX1BhY2tTaXplOwotICAgYm9vbCBtX0lzU29saWQ7Ci0rICBib29s IG1fVGFibGVzT0s7Ci0gCi0gICB2b2lkIEluaXRTdHJ1Y3R1cmVzKCk7Ci0gICBVSW50MzIgUmVh ZEJpdHModW5zaWduZWQgbnVtQml0cyk7Ci1kaWZmIC0tZ2l0IGEvQ1BQLzd6aXAvQ29tcHJlc3Mv UmFyM0RlY29kZXIuY3BwIGIvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyM0RlY29kZXIuY3BwCi1pbmRl eCAzYmYyNTEzLi42Y2I4YTZhIDEwMDY0NAotLS0tIGEvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyM0Rl Y29kZXIuY3BwCi0rKysgYi9DUFAvN3ppcC9Db21wcmVzcy9SYXIzRGVjb2Rlci5jcHAKLUBAIC05 Miw3ICs5Miw4IEBAIENEZWNvZGVyOjpDRGVjb2RlcigpOgotICAgX3dyaXR0ZW5GaWxlU2l6ZSgw KSwKLSAgIF92bURhdGEoMCksCi0gICBfdm1Db2RlKDApLAotLSAgbV9Jc1NvbGlkKGZhbHNlKQot KyAgbV9Jc1NvbGlkKGZhbHNlKSwKLSsgIF9lcnJvck1vZGUoZmFsc2UpCi0gewotICAgUHBtZDdf Q29uc3RydWN0KCZfcHBtZCk7Ci0gfQotQEAgLTU0NSw2ICs1NDYsOSBAQCBIUkVTVUxUIENEZWNv ZGVyOjpSZWFkVGFibGVzKGJvb2wgJmtlZXBEZWNvbXByZXNzaW5nKQotICAgICByZXR1cm4gSW5p dFBQTSgpOwotICAgfQotIAotKyAgVGFibGVzUmVhZCA9IGZhbHNlOwotKyAgVGFibGVzT0sgPSBm YWxzZTsKLSsKLSAgIF9sek1vZGUgPSB0cnVlOwotICAgUHJldkFsaWduQml0cyA9IDA7Ci0gICBQ cmV2QWxpZ25Db3VudCA9IDA7Ci1AQCAtNjA2LDYgKzYxMCw5IEBAIEhSRVNVTFQgQ0RlY29kZXI6 OlJlYWRUYWJsZXMoYm9vbCAma2VlcERlY29tcHJlc3NpbmcpCi0gICAgICAgfQotICAgICB9Ci0g ICB9Ci0rICBpZiAoSW5wdXRFb2ZFcnJvcigpKQotKyAgICByZXR1cm4gU19GQUxTRTsKLSsKLSAg IFRhYmxlc1JlYWQgPSB0cnVlOwotIAotICAgLy8gb3JpZ2luYWwgY29kZSBoYXMgY2hlY2sgaGVy ZToKLUBAIC02MjMsNiArNjMwLDkgQEAgSFJFU1VMVCBDRGVjb2Rlcjo6UmVhZFRhYmxlcyhib29s ICZrZWVwRGVjb21wcmVzc2luZykKLSAgIFJJRihtX0xlbkRlY29kZXIuQnVpbGQoJm5ld0xldmVs c1trTWFpblRhYmxlU2l6ZSArIGtEaXN0VGFibGVTaXplICsga0FsaWduVGFibGVTaXplXSkpOwot IAotICAgbWVtY3B5KG1fTGFzdExldmVscywgbmV3TGV2ZWxzLCBrVGFibGVzU2l6ZXNTdW0pOwot KwotKyAgVGFibGVzT0sgPSB0cnVlOwotKwotICAgcmV0dXJuIFNfT0s7Ci0gfQotIAotQEAgLTgy NCw3ICs4MzQsMTIgQEAgSFJFU1VMVCBDRGVjb2Rlcjo6Q29kZVJlYWwoSUNvbXByZXNzUHJvZ3Jl c3NJbmZvICpwcm9ncmVzcykKLSAgICAgUHBtRXNjQ2hhciA9IDI7Ci0gICAgIFBwbUVycm9yID0g dHJ1ZTsKLSAgICAgSW5pdEZpbHRlcnMoKTsKLSsgICAgX2Vycm9yTW9kZSA9IGZhbHNlOwotICAg fQotKwotKyAgaWYgKF9lcnJvck1vZGUpCi0rICAgIHJldHVybiBTX0ZBTFNFOwotKwotICAgaWYg KCFtX0lzU29saWQgfHwgIVRhYmxlc1JlYWQpCi0gICB7Ci0gICAgIGJvb2wga2VlcERlY29tcHJl c3Npbmc7Ci1AQCAtODM4LDYgKzg1Myw4IEBAIEhSRVNVTFQgQ0RlY29kZXI6OkNvZGVSZWFsKElD b21wcmVzc1Byb2dyZXNzSW5mbyAqcHJvZ3Jlc3MpCi0gICAgIGJvb2wga2VlcERlY29tcHJlc3Np bmc7Ci0gICAgIGlmIChfbHpNb2RlKQotICAgICB7Ci0rICAgICAgaWYgKCFUYWJsZXNPSykKLSsg ICAgICAgIHJldHVybiBTX0ZBTFNFOwotICAgICAgIFJJTk9LKERlY29kZUxaKGtlZXBEZWNvbXBy ZXNzaW5nKSkKLSAgICAgfQotICAgICBlbHNlCi1AQCAtOTAxLDggKzkxOCw4IEBAIFNURE1FVEhP RElNUCBDRGVjb2Rlcjo6Q29kZShJU2VxdWVudGlhbEluU3RyZWFtICppblN0cmVhbSwgSVNlcXVl bnRpYWxPdXRTdHJlYW0KLSAgICAgX3VucGFja1NpemUgPSBvdXRTaXplID8gKm91dFNpemUgOiAo VUludDY0KShJbnQ2NCktMTsKLSAgICAgcmV0dXJuIENvZGVSZWFsKHByb2dyZXNzKTsKLSAgIH0K LS0gIGNhdGNoKGNvbnN0IENJbkJ1ZmZlckV4Y2VwdGlvbiAmZSkgIHsgcmV0dXJuIGUuRXJyb3JD b2RlOyB9Ci0tICBjYXRjaCguLi4pIHsgcmV0dXJuIFNfRkFMU0U7IH0KLSsgIGNhdGNoKGNvbnN0 IENJbkJ1ZmZlckV4Y2VwdGlvbiAmZSkgIHsgX2Vycm9yTW9kZSA9IHRydWU7IHJldHVybiBlLkVy cm9yQ29kZTsgfQotKyAgY2F0Y2goLi4uKSB7IF9lcnJvck1vZGUgPSB0cnVlOyByZXR1cm4gU19G QUxTRTsgfQotICAgLy8gQ05ld0V4Y2VwdGlvbiBpcyBwb3NzaWJsZSBoZXJlLiBCdXQgcHJvYmFi bHkgQ05ld0V4Y2VwdGlvbiBpcyBjYXVzZWQKLSAgIC8vIGJ5IGVycm9yIGluIGRhdGEgc3RyZWFt LgotIH0KLWRpZmYgLS1naXQgYS9DUFAvN3ppcC9Db21wcmVzcy9SYXIzRGVjb2Rlci5oIGIvQ1BQ Lzd6aXAvQ29tcHJlc3MvUmFyM0RlY29kZXIuaAotaW5kZXggYzEzMGNlYy4uMmY3MmQ3ZCAxMDA2 NDQKLS0tLSBhL0NQUC83emlwL0NvbXByZXNzL1JhcjNEZWNvZGVyLmgKLSsrKyBiL0NQUC83emlw L0NvbXByZXNzL1JhcjNEZWNvZGVyLmgKLUBAIC0xOTIsNiArMTkyLDcgQEAgY2xhc3MgQ0RlY29k ZXI6Ci0gICBVSW50MzIgX2xhc3RGaWx0ZXI7Ci0gCi0gICBib29sIG1fSXNTb2xpZDsKLSsgIGJv b2wgX2Vycm9yTW9kZTsKLSAKLSAgIGJvb2wgX2x6TW9kZTsKLSAgIGJvb2wgX3Vuc3VwcG9ydGVk RmlsdGVyOwotQEAgLTIwMCw2ICsyMDEsNyBAQCBjbGFzcyBDRGVjb2RlcjoKLSAgIFVJbnQzMiBQ cmV2QWxpZ25Db3VudDsKLSAKLSAgIGJvb2wgVGFibGVzUmVhZDsKLSsgIGJvb2wgVGFibGVzT0s7 Ci0gCi0gICBDUHBtZDcgX3BwbWQ7Ci0gICBpbnQgUHBtRXNjQ2hhcjsKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvcDd6aXAvcGF0Y2hlcy8zMC1DVkUtMjAxOC0xMDExNS5wYXRjaCBiL3NyY3BrZ3MvcDd6 aXAvcGF0Y2hlcy8zMC1DVkUtMjAxOC0xMDExNS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2 NDQKaW5kZXggN2Q5YzRiZjgxZjAwLi4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9wN3ppcC9w YXRjaGVzLzMwLUNWRS0yMDE4LTEwMTE1LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMzExICsw LDAgQEAKLUZyb206IFJvYmVydCBMdWJlcmRhIDxyb2JlcnRAZGViaWFuLm9yZz4KLURhdGU6IFR1 ZSwgMjkgTWF5IDIwMTggMjM6NTk6MDkgKzAyMDAKLVN1YmplY3Q6IEZpeCBDVkUtMjAxOC0xMDEx NQotCi1BcHBseSAicGF0Y2giIHRha2VuIGZyb20gaHR0cHM6Ly9sYW5kYXZlLmlvL2ZpbGVzL3Bh dGNoXzd6aXBfQ1ZFLTIwMTgtMTAxMTUudHh0Ci0KLQotQnVncy1EZWJpYW46IGh0dHBzOi8vYnVn cy5kZWJpYW4ub3JnLzg5NzY3NAotLS0tCi0gQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMURlY29kZXIu Y3BwIHwgMTYgKysrKysrKysrKystLS0tLQotIENQUC83emlwL0NvbXByZXNzL1JhcjFEZWNvZGVy LmggICB8ICAzICsrLQotIENQUC83emlwL0NvbXByZXNzL1JhcjJEZWNvZGVyLmNwcCB8IDE3ICsr KysrKysrKysrKystLS0tCi0gQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMkRlY29kZXIuaCAgIHwgIDMg KystCi0gQ1BQLzd6aXAvQ29tcHJlc3MvUmFyM0RlY29kZXIuY3BwIHwgMTkgKysrKysrKysrKysr KysrLS0tLQotIENQUC83emlwL0NvbXByZXNzL1JhcjNEZWNvZGVyLmggICB8ICAzICsrLQotIENQ UC83emlwL0NvbXByZXNzL1JhcjVEZWNvZGVyLmNwcCB8ICA4ICsrKysrKysrCi0gQ1BQLzd6aXAv Q29tcHJlc3MvUmFyNURlY29kZXIuaCAgIHwgIDEgKwotIDggZmlsZXMgY2hhbmdlZCwgNTQgaW5z ZXJ0aW9ucygrKSwgMTYgZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1naXQgYS9DUFAvN3ppcC9Db21w cmVzcy9SYXIxRGVjb2Rlci5jcHAgYi9DUFAvN3ppcC9Db21wcmVzcy9SYXIxRGVjb2Rlci5jcHAK LWluZGV4IDY4MDMwYzcuLjhjODkwYzggMTAwNjQ0Ci0tLS0gYS9DUFAvN3ppcC9Db21wcmVzcy9S YXIxRGVjb2Rlci5jcHAKLSsrKyBiL0NQUC83emlwL0NvbXByZXNzL1JhcjFEZWNvZGVyLmNwcAot QEAgLTI5LDcgKzI5LDcgQEAgcHVibGljOgotIH07Ci0gKi8KLSAKLS1DRGVjb2Rlcjo6Q0RlY29k ZXIoKTogbV9Jc1NvbGlkKGZhbHNlKSwgX2Vycm9yTW9kZShmYWxzZSkgeyB9Ci0rQ0RlY29kZXI6 OkNEZWNvZGVyKCk6IF9pc1NvbGlkKGZhbHNlKSwgX3NvbGlkQWxsb3dlZChmYWxzZSksIF9lcnJv ck1vZGUoZmFsc2UpIHsgfQotIAotIHZvaWQgQ0RlY29kZXI6OkluaXRTdHJ1Y3R1cmVzKCkKLSB7 Ci1AQCAtMzQ1LDcgKzM0NSw3IEBAIHZvaWQgQ0RlY29kZXI6OkdldEZsYWdzQnVmKCkKLSAKLSB2 b2lkIENEZWNvZGVyOjpJbml0RGF0YSgpCi0gewotLSAgaWYgKCFtX0lzU29saWQpCi0rICBpZiAo IV9pc1NvbGlkKQotICAgewotICAgICBBdnJQbGNCID0gQXZyTG4xID0gQXZyTG4yID0gQXZyTG4z ID0gTnVtSHVmID0gQnVmNjAgPSAwOwotICAgICBBdnJQbGMgPSAweDM1MDA7Ci1AQCAtMzkxLDYg KzM5MSwxMSBAQCBIUkVTVUxUIENEZWNvZGVyOjpDb2RlUmVhbChJU2VxdWVudGlhbEluU3RyZWFt ICppblN0cmVhbSwgSVNlcXVlbnRpYWxPdXRTdHJlYW0gKgotICAgaWYgKGluU2l6ZSA9PSBOVUxM IHx8IG91dFNpemUgPT0gTlVMTCkKLSAgICAgcmV0dXJuIEVfSU5WQUxJREFSRzsKLSAKLSsgIGlm IChfaXNTb2xpZCAmJiAhX3NvbGlkQWxsb3dlZCkKLSsgICAgcmV0dXJuIFNfRkFMU0U7Ci0rCi0r ICBfc29saWRBbGxvd2VkID0gZmFsc2U7Ci0rCi0gICBpZiAoIW1fT3V0V2luZG93U3RyZWFtLkNy ZWF0ZShrSGlzdG9yeVNpemUpKQotICAgICByZXR1cm4gRV9PVVRPRk1FTU9SWTsKLSAgIGlmICgh bV9JbkJpdFN0cmVhbS5DcmVhdGUoMSA8PCAyMCkpCi1AQCAtMzk4LDEzICs0MDMsMTMgQEAgSFJF U1VMVCBDRGVjb2Rlcjo6Q29kZVJlYWwoSVNlcXVlbnRpYWxJblN0cmVhbSAqaW5TdHJlYW0sIElT ZXF1ZW50aWFsT3V0U3RyZWFtICoKLSAKLSAgIG1fVW5wYWNrU2l6ZSA9IChJbnQ2NCkqb3V0U2l6 ZTsKLSAgIG1fT3V0V2luZG93U3RyZWFtLlNldFN0cmVhbShvdXRTdHJlYW0pOwotLSAgbV9PdXRX aW5kb3dTdHJlYW0uSW5pdChtX0lzU29saWQpOwotKyAgbV9PdXRXaW5kb3dTdHJlYW0uSW5pdChf aXNTb2xpZCk7Ci0gICBtX0luQml0U3RyZWFtLlNldFN0cmVhbShpblN0cmVhbSk7Ci0gICBtX0lu Qml0U3RyZWFtLkluaXQoKTsKLSAKLSAgIC8vIENDb2RlclJlbGVhc2VyIGNvZGVyUmVsZWFzZXIo dGhpcyk7Ci0gICBJbml0RGF0YSgpOwotLSAgaWYgKCFtX0lzU29saWQpCi0rICBpZiAoIV9pc1Nv bGlkKQotICAgewotICAgICBfZXJyb3JNb2RlID0gZmFsc2U7Ci0gICAgIEluaXRTdHJ1Y3R1cmVz KCk7Ci1AQCAtNDc1LDYgKzQ4MCw3IEBAIEhSRVNVTFQgQ0RlY29kZXI6OkNvZGVSZWFsKElTZXF1 ZW50aWFsSW5TdHJlYW0gKmluU3RyZWFtLCBJU2VxdWVudGlhbE91dFN0cmVhbSAqCi0gICB9Ci0g ICBpZiAobV9VbnBhY2tTaXplIDwgMCkKLSAgICAgcmV0dXJuIFNfRkFMU0U7Ci0rICBfc29saWRB bGxvd2VkID0gdHJ1ZTsKLSAgIHJldHVybiBtX091dFdpbmRvd1N0cmVhbS5GbHVzaCgpOwotIH0K LSAKLUBAIC00OTEsNyArNDk3LDcgQEAgU1RETUVUSE9ESU1QIENEZWNvZGVyOjpTZXREZWNvZGVy UHJvcGVydGllczIoY29uc3QgQnl0ZSAqZGF0YSwgVUludDMyIHNpemUpCi0gewotICAgaWYgKHNp emUgPCAxKQotICAgICByZXR1cm4gRV9JTlZBTElEQVJHOwotLSAgbV9Jc1NvbGlkID0gKChkYXRh WzBdICYgMSkgIT0gMCk7Ci0rICBfaXNTb2xpZCA9ICgoZGF0YVswXSAmIDEpICE9IDApOwotICAg cmV0dXJuIFNfT0s7Ci0gfQotIAotZGlmZiAtLWdpdCBhL0NQUC83emlwL0NvbXByZXNzL1JhcjFE ZWNvZGVyLmggYi9DUFAvN3ppcC9Db21wcmVzcy9SYXIxRGVjb2Rlci5oCi1pbmRleCAwMWI2MDZi Li44YWJiM2EzIDEwMDY0NAotLS0tIGEvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMURlY29kZXIuaAot KysrIGIvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMURlY29kZXIuaAotQEAgLTM4LDcgKzM4LDggQEAg cHVibGljOgotICAgVUludDMyIExhc3RMZW5ndGg7Ci0gCi0gICBJbnQ2NCBtX1VucGFja1NpemU7 Ci0tICBib29sIG1fSXNTb2xpZDsKLSsgIGJvb2wgX2lzU29saWQ7Ci0rICBib29sIF9zb2xpZEFs bG93ZWQ7Ci0gICBib29sIF9lcnJvck1vZGU7Ci0gCi0gICBVSW50MzIgUmVhZEJpdHMoaW50IG51 bUJpdHMpOwotZGlmZiAtLWdpdCBhL0NQUC83emlwL0NvbXByZXNzL1JhcjJEZWNvZGVyLmNwcCBi L0NQUC83emlwL0NvbXByZXNzL1JhcjJEZWNvZGVyLmNwcAotaW5kZXggMDU4MGM4ZC4uYmU4ZDg0 MiAxMDA2NDQKLS0tLSBhL0NQUC83emlwL0NvbXByZXNzL1JhcjJEZWNvZGVyLmNwcAotKysrIGIv Q1BQLzd6aXAvQ29tcHJlc3MvUmFyMkRlY29kZXIuY3BwCi1AQCAtODAsNyArODAsOCBAQCBzdGF0 aWMgY29uc3QgVUludDMyIGtIaXN0b3J5U2l6ZSA9IDEgPDwgMjA7Ci0gc3RhdGljIGNvbnN0IFVJ bnQzMiBrV2luZG93UmVzZXJ2U2l6ZSA9ICgxIDw8IDIyKSArIDI1NjsKLSAKLSBDRGVjb2Rlcjo6 Q0RlY29kZXIoKToKLS0gIG1fSXNTb2xpZChmYWxzZSksCi0rICBfaXNTb2xpZChmYWxzZSksCi0r ICBfc29saWRBbGxvd2VkKGZhbHNlKSwKLSAgIG1fVGFibGVzT0soZmFsc2UpCi0gewotIH0KLUBA IC0zMjAsNiArMzIxLDEwIEBAIEhSRVNVTFQgQ0RlY29kZXI6OkNvZGVSZWFsKElTZXF1ZW50aWFs SW5TdHJlYW0gKmluU3RyZWFtLCBJU2VxdWVudGlhbE91dFN0cmVhbSAqCi0gICBpZiAoaW5TaXpl ID09IE5VTEwgfHwgb3V0U2l6ZSA9PSBOVUxMKQotICAgICByZXR1cm4gRV9JTlZBTElEQVJHOwot IAotKyAgaWYgKF9pc1NvbGlkICYmICFfc29saWRBbGxvd2VkKQotKyAgICByZXR1cm4gU19GQUxT RTsKLSsgIF9zb2xpZEFsbG93ZWQgPSBmYWxzZTsKLSsKLSAgIGlmICghbV9PdXRXaW5kb3dTdHJl YW0uQ3JlYXRlKGtIaXN0b3J5U2l6ZSkpCi0gICAgIHJldHVybiBFX09VVE9GTUVNT1JZOwotICAg aWYgKCFtX0luQml0U3RyZWFtLkNyZWF0ZSgxIDw8IDIwKSkKLUBAIC0zMzAsMTIgKzMzNSwxMiBA QCBIUkVTVUxUIENEZWNvZGVyOjpDb2RlUmVhbChJU2VxdWVudGlhbEluU3RyZWFtICppblN0cmVh bSwgSVNlcXVlbnRpYWxPdXRTdHJlYW0gKgotICAgVUludDY0IHBvcyA9IDAsIHVuUGFja1NpemUg PSAqb3V0U2l6ZTsKLSAgIAotICAgbV9PdXRXaW5kb3dTdHJlYW0uU2V0U3RyZWFtKG91dFN0cmVh bSk7Ci0tICBtX091dFdpbmRvd1N0cmVhbS5Jbml0KG1fSXNTb2xpZCk7Ci0rICBtX091dFdpbmRv d1N0cmVhbS5Jbml0KF9pc1NvbGlkKTsKLSAgIG1fSW5CaXRTdHJlYW0uU2V0U3RyZWFtKGluU3Ry ZWFtKTsKLSAgIG1fSW5CaXRTdHJlYW0uSW5pdCgpOwotIAotICAgLy8gQ0NvZGVyUmVsZWFzZXIg Y29kZXJSZWxlYXNlcih0aGlzKTsKLS0gIGlmICghbV9Jc1NvbGlkKQotKyAgaWYgKCFfaXNTb2xp ZCkKLSAgIHsKLSAgICAgSW5pdFN0cnVjdHVyZXMoKTsKLSAgICAgaWYgKHVuUGFja1NpemUgPT0g MCkKLUBAIC0zNDMsNiArMzQ4LDcgQEAgSFJFU1VMVCBDRGVjb2Rlcjo6Q29kZVJlYWwoSVNlcXVl bnRpYWxJblN0cmVhbSAqaW5TdHJlYW0sIElTZXF1ZW50aWFsT3V0U3RyZWFtICoKLSAgICAgICBp ZiAobV9JbkJpdFN0cmVhbS5HZXRQcm9jZXNzZWRTaXplKCkgKyAyIDw9IG1fUGFja1NpemUpIC8v IHRlc3QgaXQ6IHByb2JhYmx5IGluY29ycmVjdDsKLSAgICAgICAgIGlmICghUmVhZFRhYmxlcygp KQotICAgICAgICAgICByZXR1cm4gU19GQUxTRTsKLSsgICAgICBfc29saWRBbGxvd2VkID0gdHJ1 ZTsKLSAgICAgICByZXR1cm4gU19PSzsKLSAgICAgfQotICAgICBpZiAoIVJlYWRUYWJsZXMoKSkK LUBAIC0zODYsNiArMzkyLDkgQEAgSFJFU1VMVCBDRGVjb2Rlcjo6Q29kZVJlYWwoSVNlcXVlbnRp YWxJblN0cmVhbSAqaW5TdHJlYW0sIElTZXF1ZW50aWFsT3V0U3RyZWFtICoKLSAKLSAgIGlmICgh UmVhZExhc3RUYWJsZXMoKSkKLSAgICAgcmV0dXJuIFNfRkFMU0U7Ci0rCi0rICBfc29saWRBbGxv d2VkID0gdHJ1ZTsKLSsKLSAgIHJldHVybiBtX091dFdpbmRvd1N0cmVhbS5GbHVzaCgpOwotIH0K LSAKLUBAIC00MDIsNyArNDExLDcgQEAgU1RETUVUSE9ESU1QIENEZWNvZGVyOjpTZXREZWNvZGVy UHJvcGVydGllczIoY29uc3QgQnl0ZSAqZGF0YSwgVUludDMyIHNpemUpCi0gewotICAgaWYgKHNp emUgPCAxKQotICAgICByZXR1cm4gRV9JTlZBTElEQVJHOwotLSAgbV9Jc1NvbGlkID0gKChkYXRh WzBdICYgMSkgIT0gMCk7Ci0rICBfaXNTb2xpZCA9ICgoZGF0YVswXSAmIDEpICE9IDApOwotICAg cmV0dXJuIFNfT0s7Ci0gfQotIAotZGlmZiAtLWdpdCBhL0NQUC83emlwL0NvbXByZXNzL1JhcjJE ZWNvZGVyLmggYi9DUFAvN3ppcC9Db21wcmVzcy9SYXIyRGVjb2Rlci5oCi1pbmRleCAwZTkwMDVm Li4zNzBiY2UyIDEwMDY0NAotLS0tIGEvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMkRlY29kZXIuaAot KysrIGIvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMkRlY29kZXIuaAotQEAgLTEzOCw3ICsxMzgsOCBA QCBjbGFzcyBDRGVjb2RlciA6Ci0gICBCeXRlIG1fTGFzdExldmVsc1trTWF4VGFibGVTaXplXTsK LSAKLSAgIFVJbnQ2NCBtX1BhY2tTaXplOwotLSAgYm9vbCBtX0lzU29saWQ7Ci0rICBib29sIF9p c1NvbGlkOwotKyAgYm9vbCBfc29saWRBbGxvd2VkOwotICAgYm9vbCBtX1RhYmxlc09LOwotIAot ICAgdm9pZCBJbml0U3RydWN0dXJlcygpOwotZGlmZiAtLWdpdCBhL0NQUC83emlwL0NvbXByZXNz L1JhcjNEZWNvZGVyLmNwcCBiL0NQUC83emlwL0NvbXByZXNzL1JhcjNEZWNvZGVyLmNwcAotaW5k ZXggNmNiOGE2YS4uN2I4NTgzMyAxMDA2NDQKLS0tLSBhL0NQUC83emlwL0NvbXByZXNzL1JhcjNE ZWNvZGVyLmNwcAotKysrIGIvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyM0RlY29kZXIuY3BwCi1AQCAt OTIsNyArOTIsOCBAQCBDRGVjb2Rlcjo6Q0RlY29kZXIoKToKLSAgIF93cml0dGVuRmlsZVNpemUo MCksCi0gICBfdm1EYXRhKDApLAotICAgX3ZtQ29kZSgwKSwKLS0gIG1fSXNTb2xpZChmYWxzZSks Ci0rICBfaXNTb2xpZChmYWxzZSksCi0rICBfc29saWRBbGxvd2VkKGZhbHNlKSwKLSAgIF9lcnJv ck1vZGUoZmFsc2UpCi0gewotICAgUHBtZDdfQ29uc3RydWN0KCZfcHBtZCk7Ci1AQCAtODIxLDcg KzgyMiw3IEBAIEhSRVNVTFQgQ0RlY29kZXI6OkNvZGVSZWFsKElDb21wcmVzc1Byb2dyZXNzSW5m byAqcHJvZ3Jlc3MpCi0gewotICAgX3dyaXR0ZW5GaWxlU2l6ZSA9IDA7Ci0gICBfdW5zdXBwb3J0 ZWRGaWx0ZXIgPSBmYWxzZTsKLS0gIGlmICghbV9Jc1NvbGlkKQotKyAgaWYgKCFfaXNTb2xpZCkK LSAgIHsKLSAgICAgX2x6U2l6ZSA9IDA7Ci0gICAgIF93aW5Qb3MgPSAwOwotQEAgLTg0MCwxMiAr ODQxLDE1IEBAIEhSRVNVTFQgQ0RlY29kZXI6OkNvZGVSZWFsKElDb21wcmVzc1Byb2dyZXNzSW5m byAqcHJvZ3Jlc3MpCi0gICBpZiAoX2Vycm9yTW9kZSkKLSAgICAgcmV0dXJuIFNfRkFMU0U7Ci0g Ci0tICBpZiAoIW1fSXNTb2xpZCB8fCAhVGFibGVzUmVhZCkKLSsgIGlmICghX2lzU29saWQgfHwg IVRhYmxlc1JlYWQpCi0gICB7Ci0gICAgIGJvb2wga2VlcERlY29tcHJlc3Npbmc7Ci0gICAgIFJJ Tk9LKFJlYWRUYWJsZXMoa2VlcERlY29tcHJlc3NpbmcpKTsKLSAgICAgaWYgKCFrZWVwRGVjb21w cmVzc2luZykKLSsgICAgewotKyAgICAgIF9zb2xpZEFsbG93ZWQgPSB0cnVlOwotICAgICAgIHJl dHVybiBTX09LOwotKyAgICB9Ci0gICB9Ci0gCi0gICBmb3IgKDs7KQotQEAgLTg3MCw2ICs4NzQs OSBAQCBIUkVTVUxUIENEZWNvZGVyOjpDb2RlUmVhbChJQ29tcHJlc3NQcm9ncmVzc0luZm8gKnBy b2dyZXNzKQotICAgICBpZiAoIWtlZXBEZWNvbXByZXNzaW5nKQotICAgICAgIGJyZWFrOwotICAg fQotKwotKyAgX3NvbGlkQWxsb3dlZCA9IHRydWU7Ci0rCi0gICBSSU5PSyhXcml0ZUJ1ZigpKTsK LSAgIFVJbnQ2NCBwYWNrU2l6ZSA9IG1fSW5CaXRTdHJlYW0uQml0RGVjb2Rlci5HZXRQcm9jZXNz ZWRTaXplKCk7Ci0gICBSSU5PSyhwcm9ncmVzcy0+U2V0UmF0aW9JbmZvKCZwYWNrU2l6ZSwgJl93 cml0dGVuRmlsZVNpemUpKTsKLUBAIC04OTAsNiArODk3LDEwIEBAIFNURE1FVEhPRElNUCBDRGVj b2Rlcjo6Q29kZShJU2VxdWVudGlhbEluU3RyZWFtICppblN0cmVhbSwgSVNlcXVlbnRpYWxPdXRT dHJlYW0KLSAgICAgaWYgKCFpblNpemUpCi0gICAgICAgcmV0dXJuIEVfSU5WQUxJREFSRzsKLSAK LSsgICAgaWYgKF9pc1NvbGlkICYmICFfc29saWRBbGxvd2VkKQotKyAgICAgIHJldHVybiBTX0ZB TFNFOwotKyAgICBfc29saWRBbGxvd2VkID0gZmFsc2U7Ci0rCi0gICAgIGlmICghX3ZtRGF0YSkK LSAgICAgewotICAgICAgIF92bURhdGEgPSAoQnl0ZSAqKTo6TWlkQWxsb2Moa1ZtRGF0YVNpemVN YXggKyBrVm1Db2RlU2l6ZU1heCk7Ci1AQCAtOTI4LDcgKzkzOSw3IEBAIFNURE1FVEhPRElNUCBD RGVjb2Rlcjo6U2V0RGVjb2RlclByb3BlcnRpZXMyKGNvbnN0IEJ5dGUgKmRhdGEsIFVJbnQzMiBz aXplKQotIHsKLSAgIGlmIChzaXplIDwgMSkKLSAgICAgcmV0dXJuIEVfSU5WQUxJREFSRzsKLS0g IG1fSXNTb2xpZCA9ICgoZGF0YVswXSAmIDEpICE9IDApOwotKyAgX2lzU29saWQgPSAoKGRhdGFb MF0gJiAxKSAhPSAwKTsKLSAgIHJldHVybiBTX09LOwotIH0KLSAKLWRpZmYgLS1naXQgYS9DUFAv N3ppcC9Db21wcmVzcy9SYXIzRGVjb2Rlci5oIGIvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyM0RlY29k ZXIuaAotaW5kZXggMmY3MmQ3ZC4uMzJjODk0MyAxMDA2NDQKLS0tLSBhL0NQUC83emlwL0NvbXBy ZXNzL1JhcjNEZWNvZGVyLmgKLSsrKyBiL0NQUC83emlwL0NvbXByZXNzL1JhcjNEZWNvZGVyLmgK LUBAIC0xOTEsNyArMTkxLDggQEAgY2xhc3MgQ0RlY29kZXI6Ci0gICBDUmVjb3JkVmVjdG9yPENU ZW1wRmlsdGVyICo+ICBfdGVtcEZpbHRlcnM7Ci0gICBVSW50MzIgX2xhc3RGaWx0ZXI7Ci0gCi0t ICBib29sIG1fSXNTb2xpZDsKLSsgIGJvb2wgX2lzU29saWQ7Ci0rICBib29sIF9zb2xpZEFsbG93 ZWQ7Ci0gICBib29sIF9lcnJvck1vZGU7Ci0gCi0gICBib29sIF9sek1vZGU7Ci1kaWZmIC0tZ2l0 IGEvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyNURlY29kZXIuY3BwIGIvQ1BQLzd6aXAvQ29tcHJlc3Mv UmFyNURlY29kZXIuY3BwCi1pbmRleCBkYzg4MzBmLi5hODI2ZDVhIDEwMDY0NAotLS0tIGEvQ1BQ Lzd6aXAvQ29tcHJlc3MvUmFyNURlY29kZXIuY3BwCi0rKysgYi9DUFAvN3ppcC9Db21wcmVzcy9S YXI1RGVjb2Rlci5jcHAKLUBAIC03Miw2ICs3Miw3IEBAIENEZWNvZGVyOjpDRGVjb2RlcigpOgot ICAgICBfd3JpdHRlbkZpbGVTaXplKDApLAotICAgICBfZGljdFNpemVMb2coMCksCi0gICAgIF9p c1NvbGlkKGZhbHNlKSwKLSsgICAgX3NvbGlkQWxsb3dlZChmYWxzZSksCi0gICAgIF93YXNJbml0 KGZhbHNlKSwKLSAgICAgX2lucHV0QnVmKE5VTEwpCi0gewotQEAgLTgwMSw3ICs4MDIsMTAgQEAg SFJFU1VMVCBDRGVjb2Rlcjo6Q29kZVJlYWwoKQotICAgKi8KLSAKLSAgIGlmIChyZXMgPT0gU19P SykKLSsgIHsKLSsgICAgX3NvbGlkQWxsb3dlZCA9IHRydWU7Ci0gICAgIHJlcyA9IHJlczI7Ci0r ICB9Ci0gICAgICAKLSAgIGlmIChyZXMgPT0gU19PSyAmJiBfdW5wYWNrU2l6ZV9EZWZpbmVkICYm IF93cml0dGVuRmlsZVNpemUgIT0gX3VucGFja1NpemUpCi0gICAgIHJldHVybiBTX0ZBTFNFOwot QEAgLTgyMSw2ICs4MjUsMTAgQEAgU1RETUVUSE9ESU1QIENEZWNvZGVyOjpDb2RlKElTZXF1ZW50 aWFsSW5TdHJlYW0gKmluU3RyZWFtLCBJU2VxdWVudGlhbE91dFN0cmVhbQotIHsKLSAgIHRyeQot ICAgewotKyAgICBpZiAoX2lzU29saWQgJiYgIV9zb2xpZEFsbG93ZWQpCi0rICAgICAgcmV0dXJu IFNfRkFMU0U7Ci0rICAgIF9zb2xpZEFsbG93ZWQgPSBmYWxzZTsKLSsKLSAgICAgaWYgKF9kaWN0 U2l6ZUxvZyA+PSBzaXplb2Yoc2l6ZV90KSAqIDgpCi0gICAgICAgcmV0dXJuIEVfTk9USU1QTDsK LSAKLWRpZmYgLS1naXQgYS9DUFAvN3ppcC9Db21wcmVzcy9SYXI1RGVjb2Rlci5oIGIvQ1BQLzd6 aXAvQ29tcHJlc3MvUmFyNURlY29kZXIuaAotaW5kZXggYjBhNGRkMS4uM2RiNTAxOCAxMDA2NDQK LS0tLSBhL0NQUC83emlwL0NvbXByZXNzL1JhcjVEZWNvZGVyLmgKLSsrKyBiL0NQUC83emlwL0Nv bXByZXNzL1JhcjVEZWNvZGVyLmgKLUBAIC0yNzEsNiArMjcxLDcgQEAgY2xhc3MgQ0RlY29kZXI6 Ci0gICBCeXRlIF9kaWN0U2l6ZUxvZzsKLSAgIGJvb2wgX3RhYmxlV2FzRmlsbGVkOwotICAgYm9v bCBfaXNTb2xpZDsKLSsgIGJvb2wgX3NvbGlkQWxsb3dlZDsKLSAgIGJvb2wgX3dhc0luaXQ7Ci0g Ci0gICBVSW50MzIgX3JlcHNba051bVJlcHNdOwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9wN3ppcC9w YXRjaGVzL0NWRS0yMDE2LTkyOTYucGF0Y2ggYi9zcmNwa2dzL3A3emlwL3BhdGNoZXMvQ1ZFLTIw MTYtOTI5Ni5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZmJiYjMzNzczN2U1 Li4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9wN3ppcC9wYXRjaGVzL0NWRS0yMDE2LTkyOTYu cGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwxMiArMCwwIEBACi0tLS0gYS9DUFAvN3ppcC9BcmNo aXZlLzd6Lzd6SW4uY3BwCVN1biBOb3YgMjAgMDk6Mjk6NDEgMjAxNgotKysrIGIvQ1BQLzd6aXAv QXJjaGl2ZS83ei83ekluLmNwcAlTdW4gTm92IDIwIDA5OjMxOjIyIDIwMTYKLUBAIC0xMDk3LDcg KzEwOTcsOCBAQCBIUkVTVUxUIENJbkFyY2hpdmU6OlJlYWRBbmREZWNvZGVQYWNrZWRTdHJlYW1z KAotICAgICAgIGlmIChDcmNDYWxjKGRhdGEsIHVucGFja1NpemUpICE9IGZvbGRlcnMuRm9sZGVy Q1JDcy5WYWxzW2ldKQotICAgICAgICAgVGhyb3dJbmNvcnJlY3QoKTsKLSAgIH0KLS0gIEhlYWRl cnNTaXplICs9IGZvbGRlcnMuUGFja1Bvc2l0aW9uc1tmb2xkZXJzLk51bVBhY2tTdHJlYW1zXTsK LSsgIGlmIChmb2xkZXJzLlBhY2tQb3NpdGlvbnMpCi0rICAgICAgSGVhZGVyc1NpemUgKz0gZm9s ZGVycy5QYWNrUG9zaXRpb25zW2ZvbGRlcnMuTnVtUGFja1N0cmVhbXNdOwotICAgcmV0dXJuIFNf T0s7Ci0gfQotIApkaWZmIC0tZ2l0IGEvc3JjcGtncy9wN3ppcC9wYXRjaGVzL0NWRS0yMDE3LTE3 OTY5LnBhdGNoIGIvc3JjcGtncy9wN3ppcC9wYXRjaGVzL0NWRS0yMDE3LTE3OTY5LnBhdGNoCmRl bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5YTgyMGFmNzMwNjcuLjAwMDAwMDAwMDAwMAot LS0gYS9zcmNwa2dzL3A3emlwL3BhdGNoZXMvQ1ZFLTIwMTctMTc5NjkucGF0Y2gKKysrIC9kZXYv bnVsbApAQCAtMSwyNiArMCwwIEBACi1Gcm9tOiA9P3V0Zi04P3E/QW50b2luZV9CZWF1cHI9QzM9 QTk/PSA8YW5hcmNhdEBkZWJpYW4ub3JnPgotRGF0ZTogU3VuLCAyOCBKYW4gMjAxOCAyMToxOTo1 MCArMDEwMAotU3ViamVjdDogYmFja3BvcnQgb2YgdGhlIENWRS0yMDE3LTE3OTY5IGZpeCBmcm9t IDd6aXAgMTguMDAtYmV0YQotCi0tLS0KLSBDUFAvN3ppcC9Db21wcmVzcy9TaHJpbmtEZWNvZGVy LmNwcCB8IDcgKysrKysrLQotIDEgZmlsZSBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDEgZGVs ZXRpb24oLSkKLQotZGlmZiAtLWdpdCBhL0NQUC83emlwL0NvbXByZXNzL1Nocmlua0RlY29kZXIu Y3BwIGIvQ1BQLzd6aXAvQ29tcHJlc3MvU2hyaW5rRGVjb2Rlci5jcHAKLWluZGV4IDgwYjdlNjcu LjRhY2RjZTUgMTAwNjQ0Ci0tLS0gYS9DUFAvN3ppcC9Db21wcmVzcy9TaHJpbmtEZWNvZGVyLmNw cAotKysrIGIvQ1BQLzd6aXAvQ29tcHJlc3MvU2hyaW5rRGVjb2Rlci5jcHAKLUBAIC0xMjEsNyAr MTIxLDEyIEBAIEhSRVNVTFQgQ0RlY29kZXI6OkNvZGVSZWFsKElTZXF1ZW50aWFsSW5TdHJlYW0g KmluU3RyZWFtLCBJU2VxdWVudGlhbE91dFN0cmVhbSAqCi0gICAgIHsKLSAgICAgICBfc3RhY2tb aSsrXSA9IF9zdWZmaXhlc1tjdXJdOwotICAgICAgIGN1ciA9IF9wYXJlbnRzW2N1cl07Ci0tICAg IH0KLSsgICAgICBpZiAoaSA+PSBrTnVtSXRlbXMpCi0rICAgICAgICBicmVhazsKLSsgICAgIH0K LSsKLSsgICAgaWYgKGkgPj0ga051bUl0ZW1zKQotKyAgICAgIGJyZWFrOwotICAgICAKLSAgICAg X3N0YWNrW2krK10gPSAoQnl0ZSljdXI7Ci0gICAgIGxhc3RDaGFyMiA9IChCeXRlKWN1cjsKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvcDd6aXAvdGVtcGxhdGUgYi9zcmNwa2dzL3A3emlwL3RlbXBsYXRl CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2NDJlMjRhZGFmNTIuLjAwMDAwMDAwMDAw MAotLS0gYS9zcmNwa2dzL3A3emlwL3RlbXBsYXRlCisrKyAvZGV2L251bGwKQEAgLTEsNDcgKzAs MCBAQAotIyBUZW1wbGF0ZSBmaWxlIGZvciAncDd6aXAnCi1wa2duYW1lPXA3emlwCi12ZXJzaW9u PTE2LjAyCi1yZXZpc2lvbj01Ci13cmtzcmM9IiR7cGtnbmFtZX1fJHt2ZXJzaW9ufSIKLWhvc3Rt YWtlZGVwZW5kcz0ieWFzbSBuYXNtIgotc2hvcnRfZGVzYz0iQ29tbWFuZC1saW5lIHZlcnNpb24g b2YgdGhlIDd6aXAgY29tcHJlc3NlZCBmaWxlIGFyY2hpdmUiCi1tYWludGFpbmVyPSJPcnBoYW5l ZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+IgotbGljZW5zZT0iTEdQTC0yLjEtb3ItbGF0ZXIiCi1o b21lcGFnZT0iaHR0cDovL3A3emlwLnNvdXJjZWZvcmdlLm5ldC8iCi1kaXN0ZmlsZXM9IiR7U09V UkNFRk9SR0VfU0lURX0vJHtwa2duYW1lfS8ke3BrZ25hbWV9XyR7dmVyc2lvbn1fc3JjX2FsbC50 YXIuYnoyIgotY2hlY2tzdW09NWViMjBhYzBlMjk0NGY2Y2I5YzJkNTFkZDZjNDUxODk0MWMxODUz NDdkNDA4OWVhODkwODdmZmRkNmUyMzQxZgotCi1DWFhGTEFHUz0iLVduby1uYXJyb3dpbmciCi0K LWRvX2NvbmZpZ3VyZSgpIHsKLQljYXNlICIkWEJQU19UQVJHRVRfTUFDSElORSIgaW4KLQkJaTY4 NiopIGNwIG1ha2VmaWxlLmxpbnV4X3g4Nl9hc21fZ2NjXzQuWCBtYWtlZmlsZS5tYWNoaW5lOzsK LQkJeDg2XzY0KikgY3AgbWFrZWZpbGUubGludXhfYW1kNjRfYXNtIG1ha2VmaWxlLm1hY2hpbmU7 OwotCQkqKSBjcCBtYWtlZmlsZS5saW51eF9hbnlfY3B1X2djY180LlggbWFrZWZpbGUubWFjaGlu ZTs7Ci0JZXNhYwotCXNlZCAtZSAicyxnKyssJHtDWFh9LCIgLWkgbWFrZWZpbGUubWFjaGluZQot CXNlZCAtZSAicyxnY2MsJHtDQ30sIiAtaSBtYWtlZmlsZS5tYWNoaW5lCi19Ci1kb19idWlsZCgp IHsKLQltYWtlIGFsbDMgT1BURkxBR1M9IiRDWFhGTEFHUyIgJHttYWtlam9ic30KLX0KLWRvX2lu c3RhbGwoKSB7Ci0JbWFrZSBpbnN0YWxsIERFU1RfRElSPSIke0RFU1RESVJ9IiBERVNUX0hPTUU9 Ii91c3IiIFwKLQkJREVTVF9NQU49Ii91c3Ivc2hhcmUvbWFuIiBcCi0JCURFU1RfU0hBUkVfRE9D PSIvdXNyL3NoYXJlL2RvYy8ke3BrZ25hbWV9IgotCWZpbmQgJHtERVNURElSfS91c3Ivc2hhcmUv ZG9jLyRwa2duYW1lIC10eXBlIGQgLWV4ZWMgY2htb2QgNzU1IHt9IFw7Ci0JbWtkaXIgLXAgJHtE RVNURElSfS91c3Ivc2hhcmUvbGljZW5zZXMvcDd6aXAvCi0JbXYgJHtERVNURElSfS91c3Ivc2hh cmUvZG9jL3A3emlwL0RPQy9jb3B5aW5nLnR4dCBcCi0JICAgJHtERVNURElSfS91c3Ivc2hhcmUv bGljZW5zZXMvcDd6aXAvTElDRU5TRQotfQotCi1wN3ppcC11bnJhcl9wYWNrYWdlKCkgewotCXNo b3J0X2Rlc2MrPSIgLSBSQVIgc3VwcG9ydCIKLQlsaWNlbnNlPSJjdXN0b206ZnJlZXdhcmUiCi0J ZGVwZW5kcz0iJHtzb3VyY2Vwa2d9LSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCi0JcmVwb3NpdG9y eT1ub25mcmVlCi0JcGtnX2luc3RhbGwoKSB7Ci0JCXZtb3ZlIHVzci9saWIvcDd6aXAvQ29kZWNz L1Jhci5zbwotCQl2bGljZW5zZSBET0MvdW5SYXJMaWNlbnNlLnR4dCBMSUNFTlNFCi0JfQotfQpk aWZmIC0tZ2l0IGEvc3JjcGtncy9wN3ppcC91cGRhdGUgYi9zcmNwa2dzL3A3emlwL3VwZGF0ZQpk ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODRlZDQ2ZDc0YTFhLi4wMDAwMDAwMDAwMDAK LS0tIGEvc3JjcGtncy9wN3ppcC91cGRhdGUKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi1w YXR0ZXJuPSdwN3ppcF9cS1suXGRdKycK --===============7177579974726752279==--