From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 7486 invoked from network); 3 Dec 2022 22:30:52 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 3 Dec 2022 22:30:52 -0000 Content-Type: multipart/mixed; boundary="===============2391845093752491977==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_New_package=3A_7zip-22=2E01?= To: ml@inbox.vuxu.org From: r-ricci Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Sat, 03 Dec 2022 23:30:51 +0100 List-Id: Message-ID: <20221203223051.8SEGp4plCH3DRwiASwz8iEF5-jbyAZBopSxOho3gK4E@z> GitHub notification mails are now in MIME to allow UTF8. --===============2391845093752491977== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgci1yaWNjaSBhZ2FpbnN0IG1hc3Rl ciBvbiB0aGUgdm9pZC1wYWNrYWdlcyByZXBvc2l0b3J5CgpodHRwczovL2dpdGh1Yi5jb20vci1y aWNjaS92b2lkLXBhY2thZ2VzIDd6aXAKaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9p ZC1wYWNrYWdlcy9wdWxsLzM3OTQwCgpOZXcgcGFja2FnZTogN3ppcC0yMi4wMQo8IS0tIFVuY29t bWVudCByZWxldmFudCBzZWN0aW9ucyBhbmQgZGVsZXRlIG9wdGlvbnMgd2hpY2ggYXJlIG5vdCBh cHBsaWNhYmxlIC0tPg0KDQojIyMjIFRlc3RpbmcgdGhlIGNoYW5nZXMNCi0gSSB0ZXN0ZWQgdGhl IGNoYW5nZXMgaW4gdGhpcyBQUjogKipZRVMqKg0KDQo8IS0tDQojIyMjIE5ldyBwYWNrYWdlDQot IFRoaXMgbmV3IHBhY2thZ2UgY29uZm9ybXMgdG8gdGhlIFtxdWFsaXR5IHJlcXVpcmVtZW50c10o aHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9ibG9iL21hc3Rlci9N YW51YWwubWQjcXVhbGl0eS1yZXF1aXJlbWVudHMpOiAqKllFUyoqfCoqTk8qKg0KLS0+DQoNCjwh LS0gTm90ZTogSWYgdGhlIGJ1aWxkIGlzIGxpa2VseSB0byB0YWtlIG1vcmUgdGhhbiAyIGhvdXJz LCBwbGVhc2UgYWRkIGNpIHNraXAgdGFnIGFzIGRlc2NyaWJlZCBpbg0KaHR0cHM6Ly9naXRodWIu Y29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9ibG9iL21hc3Rlci9DT05UUklCVVRJTkcubWQj Y29udGludW91cy1pbnRlZ3JhdGlvbg0KYW5kIHRlc3QgYXQgbGVhc3Qgb25lIG5hdGl2ZSBidWls ZCBhbmQsIGlmIHN1cHBvcnRlZCwgYXQgbGVhc3Qgb25lIGNyb3NzIGJ1aWxkLg0KSWdub3JlIHRo aXMgc2VjdGlvbiBpZiB0aGlzIFBSIGlzIG5vdCBza2lwcGluZyBDSS4NCi0tPg0KPCEtLQ0KIyMj IyBMb2NhbCBidWlsZCB0ZXN0aW5nDQotIEkgYnVpbHQgdGhpcyBQUiBsb2NhbGx5IGZvciBteSBu YXRpdmUgYXJjaGl0ZWN0dXJlLCAoQVJDSC1MSUJDKQ0KLSBJIGJ1aWx0IHRoaXMgUFIgbG9jYWxs eSBmb3IgdGhlc2UgYXJjaGl0ZWN0dXJlcyAoaWYgc3VwcG9ydGVkLiBtYXJrIGNyb3NzYnVpbGRz KToNCiAgLSBhYXJjaDY0LW11c2wNCiAgLSBhcm12N2wNCiAgLSBhcm12NmwtbXVzbA0KLS0+DQoN CkkgZG9uJ3QgdGhpbmsgdGhlcmUncyBhbnkgcmVhc29uIHRvIHNoaXAgdGhlIGZ1bGwgYW5kIHRo ZSByZWR1Y2VkIHZlcnNpb25zIGluIHRoZSBzYW1lIHBhY2thZ2UsIHNvIEkganVzdCBjb21waWxl IHRoZSBmdWxsIG9uZSBhbmQgY3JlYXRlIHN5bWxpbmtzIGZvciBjb21wYXRpYmlsaXR5Lg0KDQoj IyMjIFRPRE86DQoNCi0gW3hdIGZpeCBtdXNsDQotIFsgXSB+YnVpbGQgd2l0aCBhc3NlbWJseSB3 aGVyZSBwb3NzaWJsZTogb24gaTY4NiBhbmQgeDg2XzY0KiBpdCByZXF1aXJlcyBgYXNtY2Agb3Ig YGp3YXNtYC9gdWFzbWAgYXNzZW1ibGVycywgbm9uZSBvZiB3aGljaCBhcmUgcGFja2FnZWR+DQot IFt4XSBidWlsZCBhIHZlcnNpb24gd2l0aCBSQVIgc3VwcG9ydCAobm9uZnJlZSByZXBvKQ0KLSBb eF0gdXNlIG91ciBjb21waWxlIGFuZCBsaW5rIGZsYWdzDQotIFt4XSB0ZXN0IHBhY2thZ2VzIHRo YXQgZGVwZW5kIG9uIGBwN3ppcGAgYXQgYnVpbGQvY2hlY2sgdGltZTogU0xBREUsIFo4MEV4cGxv cmVyLCBhcmssIGNicDJtYWtlLiAoSSBqdXN0IHRlc3RlZCB0aGF0IHRoZXkgc3RpbGwgYnVpbGQp DQotIHRlc3QgcGFja2FnZXMgdGhhdCBkZXBlbmQgb24gYHA3emlwYCBhdCBydW4gdGltZToNCiAg ICAtIFsgXSBsdXRyaXMNCiAgICAtIFsgXSBtdWx0aWJvb3R1c2INCiAgICAtIFsgXSBwbGF5b25s aW51eA0KDQpjbG9zZXMgIzM3ODc1CgpBIHBhdGNoIGZpbGUgZnJvbSBodHRwczovL2dpdGh1Yi5j b20vdm9pZC1saW51eC92b2lkLXBhY2thZ2VzL3B1bGwvMzc5NDAucGF0Y2ggaXMgYXR0YWNoZWQ= --===============2391845093752491977== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-7zip-37940.patch" RnJvbSAzMzUxODIzYWI0NDgxYjI1M2NmMmYwNmY5NTVlOTRiZWMyOGQ4Njg5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBSb2JlcnRvIFJpY2NpIDxyaWNjaUBkaXNyb290Lm9yZz4KRGF0 ZTogTW9uLCAyOSBBdWcgMjAyMiAxOTowMToxNyArMDIwMApTdWJqZWN0OiBbUEFUQ0hdIE5ldyBw YWNrYWdlOiA3emlwLTIyLjAxCgotLS0KIHNyY3BrZ3MvN3ppcC11bnJhciAgICAgICAgICAgICAg ICAgICAgICAgICAgICB8ICAgMSArCiBzcmNwa2dzLzd6aXAvcDd6aXAtdW5yYXIuSU5TVEFMTC5t c2cgICAgICAgICAgfCAgIDUgKwogc3JjcGtncy83emlwL3BhdGNoZXMvYnVpbGRfZmxhZ3MucGF0 Y2ggICAgICAgIHwgIDU2ICsrKysKIHNyY3BrZ3MvN3ppcC90ZW1wbGF0ZSAgICAgICAgICAgICAg ICAgICAgICAgICB8ICA3MyArKysrCiBzcmNwa2dzLzd6aXAvdXBkYXRlICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAgIDIgKwogc3JjcGtncy9wN3ppcCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHwgICAxICsKIHNyY3BrZ3MvcDd6aXAtdW5yYXIgICAgICAgICAgICAgICAgICAg ICAgICAgICB8ICAgMiArLQogc3JjcGtncy9wN3ppcC9wYXRjaGVzLzIwLUNWRS0yMDE4LTU5OTYu cGF0Y2ggIHwgMjIxIC0tLS0tLS0tLS0tLS0KIHNyY3BrZ3MvcDd6aXAvcGF0Y2hlcy8zMC1DVkUt MjAxOC0xMDExNS5wYXRjaCB8IDMxMSAtLS0tLS0tLS0tLS0tLS0tLS0KIHNyY3BrZ3MvcDd6aXAv cGF0Y2hlcy9DVkUtMjAxNi05Mjk2LnBhdGNoICAgICB8ICAxMiAtCiBzcmNwa2dzL3A3emlwL3Bh dGNoZXMvQ1ZFLTIwMTctMTc5NjkucGF0Y2ggICAgfCAgMjYgLS0KIHNyY3BrZ3MvcDd6aXAvdGVt cGxhdGUgICAgICAgICAgICAgICAgICAgICAgICB8ICA0NiAtLS0KIHNyY3BrZ3MvcDd6aXAvdXBk YXRlICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMSAtCiAxMyBmaWxlcyBjaGFuZ2VkLCAx MzkgaW5zZXJ0aW9ucygrKSwgNjE4IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTIwMDAwIHNy Y3BrZ3MvN3ppcC11bnJhcgogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvN3ppcC9wN3ppcC11 bnJhci5JTlNUQUxMLm1zZwogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvN3ppcC9wYXRjaGVz L2J1aWxkX2ZsYWdzLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy83emlwL3RlbXBs YXRlCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy83emlwL3VwZGF0ZQogY3JlYXRlIG1vZGUg MTIwMDAwIHNyY3BrZ3MvcDd6aXAKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3A3emlwL3Bh dGNoZXMvMjAtQ1ZFLTIwMTgtNTk5Ni5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mv cDd6aXAvcGF0Y2hlcy8zMC1DVkUtMjAxOC0xMDExNS5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0 IHNyY3BrZ3MvcDd6aXAvcGF0Y2hlcy9DVkUtMjAxNi05Mjk2LnBhdGNoCiBkZWxldGUgbW9kZSAx MDA2NDQgc3JjcGtncy9wN3ppcC9wYXRjaGVzL0NWRS0yMDE3LTE3OTY5LnBhdGNoCiBkZWxldGUg bW9kZSAxMDA2NDQgc3JjcGtncy9wN3ppcC90ZW1wbGF0ZQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNy Y3BrZ3MvcDd6aXAvdXBkYXRlCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy83emlwLXVucmFyIGIvc3Jj cGtncy83emlwLXVucmFyCm5ldyBmaWxlIG1vZGUgMTIwMDAwCmluZGV4IDAwMDAwMDAwMDAwMC4u Mjg0MzEyNTk1YTRjCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy83emlwLXVucmFyCkBAIC0w LDAgKzEgQEAKKzd6aXAKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9z cmNwa2dzLzd6aXAvcDd6aXAtdW5yYXIuSU5TVEFMTC5tc2cgYi9zcmNwa2dzLzd6aXAvcDd6aXAt dW5yYXIuSU5TVEFMTC5tc2cKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw Li43NzVmOTQzYzBhNTYKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzLzd6aXAvcDd6aXAtdW5y YXIuSU5TVEFMTC5tc2cKQEAgLTAsMCArMSw1IEBACitUaGUgcDd6aXAtdW5yYXIgcGFja2FnZSBo YXMgYmVlbiByZXBsYWNlZCBieSA3emlwLXVucmFyLgorVG8gdXNlIHRoZSBSQVItZW5hYmxlZCB2 ZXJzaW9uIG9mIGA3emAsIG1ha2Ugc3VyZSB0aGUgZGVzaXJlZAorYWx0ZXJuYXRpdmUgaXMgY29u ZmlndXJlZDoKKworCSMgeGJwcy1hbHRlcm5hdGl2ZXMgLXMgN3ppcC11bnJhcgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy83emlwL3BhdGNoZXMvYnVpbGRfZmxhZ3MucGF0Y2ggYi9zcmNwa2dzLzd6aXAv cGF0Y2hlcy9idWlsZF9mbGFncy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw MDAwMDAwMDAuLmYzNmRkNTc5MTY4MAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvN3ppcC9w YXRjaGVzL2J1aWxkX2ZsYWdzLnBhdGNoCkBAIC0wLDAgKzEsNTYgQEAKK2FkYXB0ZWQgZnJvbSBo dHRwczovL3NvdXJjZXMuZGViaWFuLm9yZy9wYXRjaGVzLzd6aXAvMjIuMDErZGZzZy00LzAwMDEt QWNjZXB0LURlYmlhbi1idWlsZC1mbGFncy5wYXRjaC8KK2FuZCBodHRwczovL2dpdGxhYi5hbHBp bmVsaW51eC5vcmcvYWxwaW5lL2Fwb3J0cy8tL3Jhdy8yOTFhMmI2MWQ2ZTYxM2ZiZTNlZDA1N2Mx ZjJlZTQxZmQyYWVhOWFjL2NvbW11bml0eS83emlwLzctemlwLWZsYWdzLnBhdGNoCistLS0gYS9D UFAvN3ppcC83emlwX2djYy5tYWsKKysrKyBiL0NQUC83emlwLzd6aXBfZ2NjLm1haworQEAgLTE4 LDEzICsxOCwxMyBAQAorIA0KKyANCisgaWZuZXEgKCQoQ0MpLCB4bGMpDQorLUNGTEFHU19XQVJO X1dBTEwgPSAtV2FsbCAtV2Vycm9yIC1XZXh0cmENCisrQ0ZMQUdTX1dBUk5fV0FMTCA9IC1XYWxs IC1XZXh0cmENCisgZW5kaWYNCisgDQorICMgZm9yIG9iamVjdCBmaWxlDQorIENGTEFHU19CQVNF X0xJU1QgPSAtYw0KKyAjIENGTEFHU19CQVNFX0xJU1QgPSAtUw0KKy1DRkxBR1NfQkFTRSA9IC1P MiAkKENGTEFHU19CQVNFX0xJU1QpICQoQ0ZMQUdTX1dBUk5fV0FMTCkgJChDRkxBR1NfV0FSTikg XA0KKytDRkxBR1NfQkFTRSA9ICQoQ0ZMQUdTX0JBU0VfTElTVCkgJChDRkxBR1NfV0FSTl9XQUxM KSAkKENGTEFHU19XQVJOKSBcDQorICAtRE5ERUJVRyAtRF9SRUVOVFJBTlQgLURfRklMRV9PRkZT RVRfQklUUz02NCAtRF9MQVJHRUZJTEVfU09VUkNFIFwNCisgIC1mUElDDQorIA0KK0BAIC04Miw3 ICs4Miw3IEBACisgDQorIGVsc2UNCisgDQorLUxERkxBR1MgPSAkKExERkxBR1NfU1RBVElDKQ0K KytMREZMQUdTID0gJChWT0lEX0xERkxBR1MpICQoTERGTEFHU19TVEFUSUMpDQorICMgLXMgaXMg bm90IHJlcXVpcmVkIGZvciBjbGFuZywgZG8gd2UgbmVlZCBpdCBmb3IgR0dDID8/Pw0KKyAjIC1z DQorIA0KK0BAIC0xMzgsNyArMTM4LDcgQEAKKyANCisgDQorIA0KKy1DRkxBR1MgPSAkKE1ZX0FS Q0hfMikgJChMT0NBTF9GTEFHUykgJChDRkxBR1NfQkFTRTIpICQoQ0ZMQUdTX0JBU0UpICQoQ0Nf U0hBUkVEKSAtbyAkQA0KKytDRkxBR1MgPSAkKFZPSURfQ0ZMQUdTKSAkKFZPSURfQ1BQRkxBR1Mp ICQoTVlfQVJDSF8yKSAkKExPQ0FMX0ZMQUdTKSAkKENGTEFHU19CQVNFMikgJChDRkxBR1NfQkFT RSkgJChDQ19TSEFSRUQpIC1vICRADQorIA0KKyANCisgaWZkZWYgSVNfTUlOR1cNCitAQCAtMTc5 LDcgKzE3OSw3IEBACisgIy1Xbm8taW52YWxpZC1vZmZzZXRvZg0KKyAjLVduby1yZW9yZGVyDQor IA0KKy1DWFhGTEFHUyA9ICQoTVlfQVJDSF8yKSAkKExPQ0FMX0ZMQUdTKSAkKENYWEZMQUdTX0JB U0UyKSAkKENGTEFHU19CQVNFKSAkKENYWEZMQUdTX0VYVFJBKSAkKENDX1NIQVJFRCkgLW8gJEAg JChDWFhfV0FSTl9GTEFHUykNCisrQ1hYRkxBR1MgPSAkKFZPSURfQ1hYRkxBR1MpICQoVk9JRF9D UFBGTEFHUykgJChNWV9BUkNIXzIpICQoTE9DQUxfRkxBR1MpICQoQ1hYRkxBR1NfQkFTRTIpICQo Q0ZMQUdTX0JBU0UpICQoQ1hYRkxBR1NfRVhUUkEpICQoQ0NfU0hBUkVEKSAtbyAkQCAkKENYWF9X QVJOX0ZMQUdTKQ0KKyANCisgU1RBVElDX1RBUkdFVD0NCisgaWZkZWYgQ09NUExfU1RBVElDDQor QEAgLTE5Miw3ICsxOTIsNyBAQAorICQoTyk6DQorIAkkKE1ZX01LRElSKSAkKE8pDQorIA0KKy1M RkxBR1NfQUxMID0gLXMgJChNWV9BUkNIXzIpICQoTERGTEFHUykgJChMRF9hcmNoKSAkKE9CSlMp ICQoTVlfTElCUykgJChMSUIyKQ0KKytMRkxBR1NfQUxMID0gJChNWV9BUkNIXzIpICQoTERGTEFH UykgJChMRF9hcmNoKSAkKE9CSlMpICQoTVlfTElCUykgJChMSUIyKQ0KKyAkKFBST0dQQVRIKTog JChPQkpTKQ0KKyAJJChDWFgpIC1vICQoUFJPR1BBVEgpICQoTEZMQUdTX0FMTCkNCisgDQpkaWZm IC0tZ2l0IGEvc3JjcGtncy83emlwL3RlbXBsYXRlIGIvc3JjcGtncy83emlwL3RlbXBsYXRlCm5l dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uMGIyMDkxMzJlYzdjCi0tLSAv ZGV2L251bGwKKysrIGIvc3JjcGtncy83emlwL3RlbXBsYXRlCkBAIC0wLDAgKzEsNzMgQEAKKyMg VGVtcGxhdGUgZmlsZSBmb3IgJzd6aXAnCitwa2duYW1lPTd6aXAKK3ZlcnNpb249MjIuMDEKK3Jl dmlzaW9uPTEKK3Nob3J0X2Rlc2M9IkZpbGUgYXJjaGl2ZXIgd2l0aCBhIGhpZ2ggY29tcHJlc3Np b24gcmF0aW8iCittYWludGFpbmVyPSJSb2JlcnRvIFJpY2NpIDxyaWNjaUBkaXNyb290Lm9yZz4i CitsaWNlbnNlPSJMR1BMLTIuMS1vci1sYXRlciwgQlNELTMtQ2xhdXNlIgoraG9tZXBhZ2U9Imh0 dHBzOi8vd3d3LjctemlwLm9yZyIKK2NoYW5nZWxvZz0iaHR0cHM6Ly93d3cuNy16aXAub3JnL2hp c3RvcnkudHh0IgorZGlzdGZpbGVzPSJodHRwczovL3d3dy43LXppcC5vcmcvYS83eiR7dmVyc2lv bi8vLi99LXNyYy50YXIueHoiCitjaGVja3N1bT0zOTMwOTg3MzBjNzAwNDIzOTJhZjgwODkxN2U3 NjU5NDVkYzI0MzdkZWU3YWFlM2NmY2M0OTY2ZWI5MjBmYmM1CithbHRlcm5hdGl2ZXM9IgorIDd6 Ojd6Oi91c3IvYmluLzd6aXAKKyA3ejo3emE6L3Vzci9iaW4vN3ppcAorIDd6Ojd6cjovdXNyL2Jp bi83emlwIgorCitpZiBbICIkWEJQU19UQVJHRVRfTElCQyIgPSBtdXNsIF07IHRoZW4KKwkjIG1p c3NpbmcgcHRocmVhZF9hdHRyX3NldGFmZmluaXR5X25wKCkKKwlDRkxBR1MrPSItRF83WklQX0FG RklOSVRZX0RJU0FCTEUiCisJQ1hYRkxBR1MrPSItRF83WklQX0FGRklOSVRZX0RJU0FCTEUiCitm aQorCitkb19idWlsZCgpIHsKKwljZCAiJHdya3NyYyIvQ1BQLzd6aXAvQnVuZGxlcy9BbG9uZTIK KworCWNhc2UgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiBpbgorCWFhcmNoNjQqKSBfN3pfbWFrZWZp bGU9Ii4uLy4uL2NtcGxfZ2NjX2FybTY0Lm1hayI7OworCSopICAgICAgICBfN3pfbWFrZWZpbGU9 Ii4uLy4uL2NtcGxfZ2NjLm1hayI7OworCWVzYWMKKworCWZvciBvcHRzIGluICJPPWIvbm9yYXIg RElTQUJMRV9SQVJfQ09NUFJFU1M9MSIgIk89Yi9yYXIiOyBkbworCQltYWtlICIkbWFrZWpvYnMi IC1mICIkXzd6X21ha2VmaWxlIiBcCisJCQlDQz0iJENDIiBDWFg9IiRDWFgiIFwKKwkJCVZPSURf Q0ZMQUdTPSIkQ0ZMQUdTIiBWT0lEX0NYWEZMQUdTPSIkQ1hYRkxBR1MiIFwKKwkJCVZPSURfTERG TEFHUz0iJExERkxBR1MiIFZPSURfQ1BQRkxBR1M9IiRDUFBGTEFHUyIgXAorCQkJJG9wdHMKKwlk b25lCit9CisKK2RvX2luc3RhbGwoKSB7CisJdmJpbiAiJHt3cmtzcmN9L0NQUC83emlwL0J1bmRs ZXMvQWxvbmUyL2Ivbm9yYXIvN3p6IiAiN3ppcCIKKwl2bGljZW5zZSAiJHt3cmtzcmN9L0RPQy9M aWNlbnNlLnR4dCIKK30KKworN3ppcC11bnJhcl9wYWNrYWdlKCkgeworCWxpY2Vuc2UrPSIsIGN1 c3RvbTpmcmVld2FyZSIKKwlyZXBvc2l0b3J5PW5vbmZyZWUKKwlzaG9ydF9kZXNjKz0iIC0gUkFS IHN1cHBvcnQiCisJYWx0ZXJuYXRpdmVzPSIKKwkgN3o6N3o6L3Vzci9iaW4vN3ppcC11bnJhcgor CSA3ejo3emE6L3Vzci9iaW4vN3ppcC11bnJhcgorCSA3ejo3enI6L3Vzci9iaW4vN3ppcC11bnJh ciIKKworCXBrZ19pbnN0YWxsKCkgeworCQl2YmluICIke3dya3NyY30vQ1BQLzd6aXAvQnVuZGxl cy9BbG9uZTIvYi9yYXIvN3p6IiAiN3ppcC11bnJhciIKKwkJdmxpY2Vuc2UgIiR7d3Jrc3JjfS9E T0MvTGljZW5zZS50eHQiCisJfQorfQorCitwN3ppcF9wYWNrYWdlKCkgeworCWJ1aWxkX3N0eWxl PW1ldGEKKwlkZXBlbmRzPTd6aXAKKwlzaG9ydF9kZXNjPSJDb21tYW5kLWxpbmUgdmVyc2lvbiBv ZiB0aGUgN3ppcCBjb21wcmVzc2VkIGZpbGUgYXJjaGl2ZSIKKwlzaG9ydF9kZXNjKz0iICh0cmFu c2l0aW9uYWwgZHVtbXkgcGFja2FnZSkiCit9CisKK3A3emlwLXVucmFyX3BhY2thZ2UoKSB7CisJ YnVpbGRfc3R5bGU9bWV0YQorCXJlcG9zaXRvcnk9bm9uZnJlZQorCWRlcGVuZHM9N3ppcC11bnJh cgorCXNob3J0X2Rlc2M9IkNvbW1hbmQtbGluZSB2ZXJzaW9uIG9mIHRoZSA3emlwIGNvbXByZXNz ZWQgZmlsZSBhcmNoaXZlIC0gUkFSIHN1cHBvcnQiCisJc2hvcnRfZGVzYys9IiAodHJhbnNpdGlv bmFsIGR1bW15IHBhY2thZ2UpIgorfQpkaWZmIC0tZ2l0IGEvc3JjcGtncy83emlwL3VwZGF0ZSBi L3NyY3BrZ3MvN3ppcC91cGRhdGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw MDAwLi41NDYzZjE0OGU0ZjgKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzLzd6aXAvdXBkYXRl CkBAIC0wLDAgKzEsMiBAQAorc2l0ZT0naHR0cHM6Ly83LXppcC5vcmcvZG93bmxvYWQuaHRtbCcK K3BhdHRlcm49J0Rvd25sb2FkIDctWmlwIFxLW1xkLl0rJwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9w N3ppcCBiL3NyY3BrZ3MvcDd6aXAKbmV3IGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggMDAwMDAwMDAw MDAwLi4yODQzMTI1OTVhNGMKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3A3emlwCkBAIC0w LDAgKzEgQEAKKzd6aXAKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9z cmNwa2dzL3A3emlwLXVucmFyIGIvc3JjcGtncy9wN3ppcC11bnJhcgppbmRleCBiZjUzNDllZTY2 NjYuLjI4NDMxMjU5NWE0YyAxMjAwMDAKLS0tIGEvc3JjcGtncy9wN3ppcC11bnJhcgorKysgYi9z cmNwa2dzL3A3emlwLXVucmFyCkBAIC0xICsxIEBACi1wN3ppcApcIE5vIG5ld2xpbmUgYXQgZW5k IG9mIGZpbGUKKzd6aXAKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9z cmNwa2dzL3A3emlwL3BhdGNoZXMvMjAtQ1ZFLTIwMTgtNTk5Ni5wYXRjaCBiL3NyY3BrZ3MvcDd6 aXAvcGF0Y2hlcy8yMC1DVkUtMjAxOC01OTk2LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCA2NzMzYmZmOTE4OTUuLjAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3A3emlwL3Bh dGNoZXMvMjAtQ1ZFLTIwMTgtNTk5Ni5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDIyMSArMCww IEBACi1Gcm9tOiBSb2JlcnQgTHViZXJkYSA8cm9iZXJ0QGRlYmlhbi5vcmc+Ci1EYXRlOiBTdW4s IDI4IEphbiAyMDE4IDIzOjQ3OjQwICswMTAwCi1TdWJqZWN0OiBDVkUtMjAxOC01OTk2Ci0KLUhv cGVmdWxseSBmaXggTWVtb3J5IENvcnJ1cHRpb25zIHZpYSBSQVIgUFBNZCAoQ1ZFLTIwMTgtNTk5 NikgYnkKLWFwcGx5aW5nIGEgZmV3IGNoYW5nZXMgZnJvbSA3WmlwIDE4LjAwLWJldGEuCi0KLUJ1 Zy1EZWJpYW46IGh0dHBzOi8vYnVncy5kZWJpYW4ub3JnLyM4ODgzMTQKLS0tLQotIENQUC83emlw L0NvbXByZXNzL1JhcjFEZWNvZGVyLmNwcCB8IDEzICsrKysrKysrKy0tLS0KLSBDUFAvN3ppcC9D b21wcmVzcy9SYXIxRGVjb2Rlci5oICAgfCAgMSArCi0gQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMkRl Y29kZXIuY3BwIHwgMTAgKysrKysrKysrLQotIENQUC83emlwL0NvbXByZXNzL1JhcjJEZWNvZGVy LmggICB8ICAxICsKLSBDUFAvN3ppcC9Db21wcmVzcy9SYXIzRGVjb2Rlci5jcHAgfCAyMyArKysr KysrKysrKysrKysrKysrKy0tLQotIENQUC83emlwL0NvbXByZXNzL1JhcjNEZWNvZGVyLmggICB8 ICAyICsrCi0gNiBmaWxlcyBjaGFuZ2VkLCA0MiBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygt KQotCi1kaWZmIC0tZ2l0IGEvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMURlY29kZXIuY3BwIGIvQ1BQ Lzd6aXAvQ29tcHJlc3MvUmFyMURlY29kZXIuY3BwCi1pbmRleCAxYWFlZGNjLi42ODAzMGM3IDEw MDY0NAotLS0tIGEvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMURlY29kZXIuY3BwCi0rKysgYi9DUFAv N3ppcC9Db21wcmVzcy9SYXIxRGVjb2Rlci5jcHAKLUBAIC0yOSw3ICsyOSw3IEBAIHB1YmxpYzoK LSB9OwotICovCi0gCi0tQ0RlY29kZXI6OkNEZWNvZGVyKCk6IG1fSXNTb2xpZChmYWxzZSkgeyB9 Ci0rQ0RlY29kZXI6OkNEZWNvZGVyKCk6IG1fSXNTb2xpZChmYWxzZSksIF9lcnJvck1vZGUoZmFs c2UpIHsgfQotIAotIHZvaWQgQ0RlY29kZXI6OkluaXRTdHJ1Y3R1cmVzKCkKLSB7Ci1AQCAtNDA2 LDkgKzQwNiwxNCBAQCBIUkVTVUxUIENEZWNvZGVyOjpDb2RlUmVhbChJU2VxdWVudGlhbEluU3Ry ZWFtICppblN0cmVhbSwgSVNlcXVlbnRpYWxPdXRTdHJlYW0gKgotICAgSW5pdERhdGEoKTsKLSAg IGlmICghbV9Jc1NvbGlkKQotICAgewotKyAgICBfZXJyb3JNb2RlID0gZmFsc2U7Ci0gICAgIElu aXRTdHJ1Y3R1cmVzKCk7Ci0gICAgIEluaXRIdWZmKCk7Ci0gICB9Ci0rCi0rICBpZiAoX2Vycm9y TW9kZSkKLSsgICAgcmV0dXJuIFNfRkFMU0U7Ci0rCi0gICBpZiAobV9VbnBhY2tTaXplID4gMCkK LSAgIHsKLSAgICAgR2V0RmxhZ3NCdWYoKTsKLUBAIC00NzcsOSArNDgyLDkgQEAgU1RETUVUSE9E SU1QIENEZWNvZGVyOjpDb2RlKElTZXF1ZW50aWFsSW5TdHJlYW0gKmluU3RyZWFtLCBJU2VxdWVu dGlhbE91dFN0cmVhbQotICAgICBjb25zdCBVSW50NjQgKmluU2l6ZSwgY29uc3QgVUludDY0ICpv dXRTaXplLCBJQ29tcHJlc3NQcm9ncmVzc0luZm8gKnByb2dyZXNzKQotIHsKLSAgIHRyeSB7IHJl dHVybiBDb2RlUmVhbChpblN0cmVhbSwgb3V0U3RyZWFtLCBpblNpemUsIG91dFNpemUsIHByb2dy ZXNzKTsgfQotLSAgY2F0Y2goY29uc3QgQ0luQnVmZmVyRXhjZXB0aW9uICZlKSB7IHJldHVybiBl LkVycm9yQ29kZTsgfQotLSAgY2F0Y2goY29uc3QgQ0x6T3V0V2luZG93RXhjZXB0aW9uICZlKSB7 IHJldHVybiBlLkVycm9yQ29kZTsgfQotLSAgY2F0Y2goLi4uKSB7IHJldHVybiBTX0ZBTFNFOyB9 Ci0rICBjYXRjaChjb25zdCBDSW5CdWZmZXJFeGNlcHRpb24gJmUpIHsgX2Vycm9yTW9kZSA9IHRy dWU7IHJldHVybiBlLkVycm9yQ29kZTsgfQotKyAgY2F0Y2goY29uc3QgQ0x6T3V0V2luZG93RXhj ZXB0aW9uICZlKSB7IF9lcnJvck1vZGUgPSB0cnVlOyByZXR1cm4gZS5FcnJvckNvZGU7IH0KLSsg IGNhdGNoKC4uLikgeyBfZXJyb3JNb2RlID0gdHJ1ZTsgcmV0dXJuIFNfRkFMU0U7IH0KLSB9Ci0g Ci0gU1RETUVUSE9ESU1QIENEZWNvZGVyOjpTZXREZWNvZGVyUHJvcGVydGllczIoY29uc3QgQnl0 ZSAqZGF0YSwgVUludDMyIHNpemUpCi1kaWZmIC0tZ2l0IGEvQ1BQLzd6aXAvQ29tcHJlc3MvUmFy MURlY29kZXIuaCBiL0NQUC83emlwL0NvbXByZXNzL1JhcjFEZWNvZGVyLmgKLWluZGV4IDYzMGYw ODkuLjAxYjYwNmIgMTAwNjQ0Ci0tLS0gYS9DUFAvN3ppcC9Db21wcmVzcy9SYXIxRGVjb2Rlci5o Ci0rKysgYi9DUFAvN3ppcC9Db21wcmVzcy9SYXIxRGVjb2Rlci5oCi1AQCAtMzksNiArMzksNyBA QCBwdWJsaWM6Ci0gCi0gICBJbnQ2NCBtX1VucGFja1NpemU7Ci0gICBib29sIG1fSXNTb2xpZDsK LSsgIGJvb2wgX2Vycm9yTW9kZTsKLSAKLSAgIFVJbnQzMiBSZWFkQml0cyhpbnQgbnVtQml0cyk7 Ci0gICBIUkVTVUxUIENvcHlCbG9jayhVSW50MzIgZGlzdGFuY2UsIFVJbnQzMiBsZW4pOwotZGlm ZiAtLWdpdCBhL0NQUC83emlwL0NvbXByZXNzL1JhcjJEZWNvZGVyLmNwcCBiL0NQUC83emlwL0Nv bXByZXNzL1JhcjJEZWNvZGVyLmNwcAotaW5kZXggYjNmMmI0Yi4uMDU4MGM4ZCAxMDA2NDQKLS0t LSBhL0NQUC83emlwL0NvbXByZXNzL1JhcjJEZWNvZGVyLmNwcAotKysrIGIvQ1BQLzd6aXAvQ29t cHJlc3MvUmFyMkRlY29kZXIuY3BwCi1AQCAtODAsNyArODAsOCBAQCBzdGF0aWMgY29uc3QgVUlu dDMyIGtIaXN0b3J5U2l6ZSA9IDEgPDwgMjA7Ci0gc3RhdGljIGNvbnN0IFVJbnQzMiBrV2luZG93 UmVzZXJ2U2l6ZSA9ICgxIDw8IDIyKSArIDI1NjsKLSAKLSBDRGVjb2Rlcjo6Q0RlY29kZXIoKToK LS0gIG1fSXNTb2xpZChmYWxzZSkKLSsgIG1fSXNTb2xpZChmYWxzZSksCi0rICBtX1RhYmxlc09L KGZhbHNlKQotIHsKLSB9Ci0gCi1AQCAtMTAwLDYgKzEwMSw4IEBAIFVJbnQzMiBDRGVjb2Rlcjo6 UmVhZEJpdHModW5zaWduZWQgbnVtQml0cykgeyByZXR1cm4gbV9JbkJpdFN0cmVhbS5SZWFkQml0 cyhudW1CCi0gCi0gYm9vbCBDRGVjb2Rlcjo6UmVhZFRhYmxlcyh2b2lkKQotIHsKLSsgIG1fVGFi bGVzT0sgPSBmYWxzZTsKLSsKLSAgIEJ5dGUgbGV2ZWxMZXZlbHNba0xldmVsVGFibGVTaXplXTsK LSAgIEJ5dGUgbmV3TGV2ZWxzW2tNYXhUYWJsZVNpemVdOwotICAgbV9BdWRpb01vZGUgPSAoUmVh ZEJpdHMoMSkgPT0gMSk7Ci1AQCAtMTcwLDYgKzE3Myw4IEBAIGJvb2wgQ0RlY29kZXI6OlJlYWRU YWJsZXModm9pZCkKLSAgIH0KLSAgIAotICAgbWVtY3B5KG1fTGFzdExldmVscywgbmV3TGV2ZWxz LCBrTWF4VGFibGVTaXplKTsKLSsgIG1fVGFibGVzT0sgPSB0cnVlOwotKwotICAgcmV0dXJuIHRy dWU7Ci0gfQotIAotQEAgLTM0NCw2ICszNDksOSBAQCBIUkVTVUxUIENEZWNvZGVyOjpDb2RlUmVh bChJU2VxdWVudGlhbEluU3RyZWFtICppblN0cmVhbSwgSVNlcXVlbnRpYWxPdXRTdHJlYW0gKgot ICAgICAgIHJldHVybiBTX0ZBTFNFOwotICAgfQotIAotKyAgaWYgKCFtX1RhYmxlc09LKQotKyAg ICByZXR1cm4gU19GQUxTRTsKLSsKLSAgIFVJbnQ2NCBzdGFydFBvcyA9IG1fT3V0V2luZG93U3Ry ZWFtLkdldFByb2Nlc3NlZFNpemUoKTsKLSAgIHdoaWxlIChwb3MgPCB1blBhY2tTaXplKQotICAg ewotZGlmZiAtLWdpdCBhL0NQUC83emlwL0NvbXByZXNzL1JhcjJEZWNvZGVyLmggYi9DUFAvN3pp cC9Db21wcmVzcy9SYXIyRGVjb2Rlci5oCi1pbmRleCAzYTA1MzVjLi4wZTkwMDVmIDEwMDY0NAot LS0tIGEvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMkRlY29kZXIuaAotKysrIGIvQ1BQLzd6aXAvQ29t cHJlc3MvUmFyMkRlY29kZXIuaAotQEAgLTEzOSw2ICsxMzksNyBAQCBjbGFzcyBDRGVjb2RlciA6 Ci0gCi0gICBVSW50NjQgbV9QYWNrU2l6ZTsKLSAgIGJvb2wgbV9Jc1NvbGlkOwotKyAgYm9vbCBt X1RhYmxlc09LOwotIAotICAgdm9pZCBJbml0U3RydWN0dXJlcygpOwotICAgVUludDMyIFJlYWRC aXRzKHVuc2lnbmVkIG51bUJpdHMpOwotZGlmZiAtLWdpdCBhL0NQUC83emlwL0NvbXByZXNzL1Jh cjNEZWNvZGVyLmNwcCBiL0NQUC83emlwL0NvbXByZXNzL1JhcjNEZWNvZGVyLmNwcAotaW5kZXgg M2JmMjUxMy4uNmNiOGE2YSAxMDA2NDQKLS0tLSBhL0NQUC83emlwL0NvbXByZXNzL1JhcjNEZWNv ZGVyLmNwcAotKysrIGIvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyM0RlY29kZXIuY3BwCi1AQCAtOTIs NyArOTIsOCBAQCBDRGVjb2Rlcjo6Q0RlY29kZXIoKToKLSAgIF93cml0dGVuRmlsZVNpemUoMCks Ci0gICBfdm1EYXRhKDApLAotICAgX3ZtQ29kZSgwKSwKLS0gIG1fSXNTb2xpZChmYWxzZSkKLSsg IG1fSXNTb2xpZChmYWxzZSksCi0rICBfZXJyb3JNb2RlKGZhbHNlKQotIHsKLSAgIFBwbWQ3X0Nv bnN0cnVjdCgmX3BwbWQpOwotIH0KLUBAIC01NDUsNiArNTQ2LDkgQEAgSFJFU1VMVCBDRGVjb2Rl cjo6UmVhZFRhYmxlcyhib29sICZrZWVwRGVjb21wcmVzc2luZykKLSAgICAgcmV0dXJuIEluaXRQ UE0oKTsKLSAgIH0KLSAKLSsgIFRhYmxlc1JlYWQgPSBmYWxzZTsKLSsgIFRhYmxlc09LID0gZmFs c2U7Ci0rCi0gICBfbHpNb2RlID0gdHJ1ZTsKLSAgIFByZXZBbGlnbkJpdHMgPSAwOwotICAgUHJl dkFsaWduQ291bnQgPSAwOwotQEAgLTYwNiw2ICs2MTAsOSBAQCBIUkVTVUxUIENEZWNvZGVyOjpS ZWFkVGFibGVzKGJvb2wgJmtlZXBEZWNvbXByZXNzaW5nKQotICAgICAgIH0KLSAgICAgfQotICAg fQotKyAgaWYgKElucHV0RW9mRXJyb3IoKSkKLSsgICAgcmV0dXJuIFNfRkFMU0U7Ci0rCi0gICBU YWJsZXNSZWFkID0gdHJ1ZTsKLSAKLSAgIC8vIG9yaWdpbmFsIGNvZGUgaGFzIGNoZWNrIGhlcmU6 Ci1AQCAtNjIzLDYgKzYzMCw5IEBAIEhSRVNVTFQgQ0RlY29kZXI6OlJlYWRUYWJsZXMoYm9vbCAm a2VlcERlY29tcHJlc3NpbmcpCi0gICBSSUYobV9MZW5EZWNvZGVyLkJ1aWxkKCZuZXdMZXZlbHNb a01haW5UYWJsZVNpemUgKyBrRGlzdFRhYmxlU2l6ZSArIGtBbGlnblRhYmxlU2l6ZV0pKTsKLSAK LSAgIG1lbWNweShtX0xhc3RMZXZlbHMsIG5ld0xldmVscywga1RhYmxlc1NpemVzU3VtKTsKLSsK LSsgIFRhYmxlc09LID0gdHJ1ZTsKLSsKLSAgIHJldHVybiBTX09LOwotIH0KLSAKLUBAIC04MjQs NyArODM0LDEyIEBAIEhSRVNVTFQgQ0RlY29kZXI6OkNvZGVSZWFsKElDb21wcmVzc1Byb2dyZXNz SW5mbyAqcHJvZ3Jlc3MpCi0gICAgIFBwbUVzY0NoYXIgPSAyOwotICAgICBQcG1FcnJvciA9IHRy dWU7Ci0gICAgIEluaXRGaWx0ZXJzKCk7Ci0rICAgIF9lcnJvck1vZGUgPSBmYWxzZTsKLSAgIH0K LSsKLSsgIGlmIChfZXJyb3JNb2RlKQotKyAgICByZXR1cm4gU19GQUxTRTsKLSsKLSAgIGlmICgh bV9Jc1NvbGlkIHx8ICFUYWJsZXNSZWFkKQotICAgewotICAgICBib29sIGtlZXBEZWNvbXByZXNz aW5nOwotQEAgLTgzOCw2ICs4NTMsOCBAQCBIUkVTVUxUIENEZWNvZGVyOjpDb2RlUmVhbChJQ29t cHJlc3NQcm9ncmVzc0luZm8gKnByb2dyZXNzKQotICAgICBib29sIGtlZXBEZWNvbXByZXNzaW5n OwotICAgICBpZiAoX2x6TW9kZSkKLSAgICAgewotKyAgICAgIGlmICghVGFibGVzT0spCi0rICAg ICAgICByZXR1cm4gU19GQUxTRTsKLSAgICAgICBSSU5PSyhEZWNvZGVMWihrZWVwRGVjb21wcmVz c2luZykpCi0gICAgIH0KLSAgICAgZWxzZQotQEAgLTkwMSw4ICs5MTgsOCBAQCBTVERNRVRIT0RJ TVAgQ0RlY29kZXI6OkNvZGUoSVNlcXVlbnRpYWxJblN0cmVhbSAqaW5TdHJlYW0sIElTZXF1ZW50 aWFsT3V0U3RyZWFtCi0gICAgIF91bnBhY2tTaXplID0gb3V0U2l6ZSA/ICpvdXRTaXplIDogKFVJ bnQ2NCkoSW50NjQpLTE7Ci0gICAgIHJldHVybiBDb2RlUmVhbChwcm9ncmVzcyk7Ci0gICB9Ci0t ICBjYXRjaChjb25zdCBDSW5CdWZmZXJFeGNlcHRpb24gJmUpICB7IHJldHVybiBlLkVycm9yQ29k ZTsgfQotLSAgY2F0Y2goLi4uKSB7IHJldHVybiBTX0ZBTFNFOyB9Ci0rICBjYXRjaChjb25zdCBD SW5CdWZmZXJFeGNlcHRpb24gJmUpICB7IF9lcnJvck1vZGUgPSB0cnVlOyByZXR1cm4gZS5FcnJv ckNvZGU7IH0KLSsgIGNhdGNoKC4uLikgeyBfZXJyb3JNb2RlID0gdHJ1ZTsgcmV0dXJuIFNfRkFM U0U7IH0KLSAgIC8vIENOZXdFeGNlcHRpb24gaXMgcG9zc2libGUgaGVyZS4gQnV0IHByb2JhYmx5 IENOZXdFeGNlcHRpb24gaXMgY2F1c2VkCi0gICAvLyBieSBlcnJvciBpbiBkYXRhIHN0cmVhbS4K LSB9Ci1kaWZmIC0tZ2l0IGEvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyM0RlY29kZXIuaCBiL0NQUC83 emlwL0NvbXByZXNzL1JhcjNEZWNvZGVyLmgKLWluZGV4IGMxMzBjZWMuLjJmNzJkN2QgMTAwNjQ0 Ci0tLS0gYS9DUFAvN3ppcC9Db21wcmVzcy9SYXIzRGVjb2Rlci5oCi0rKysgYi9DUFAvN3ppcC9D b21wcmVzcy9SYXIzRGVjb2Rlci5oCi1AQCAtMTkyLDYgKzE5Miw3IEBAIGNsYXNzIENEZWNvZGVy OgotICAgVUludDMyIF9sYXN0RmlsdGVyOwotIAotICAgYm9vbCBtX0lzU29saWQ7Ci0rICBib29s IF9lcnJvck1vZGU7Ci0gCi0gICBib29sIF9sek1vZGU7Ci0gICBib29sIF91bnN1cHBvcnRlZEZp bHRlcjsKLUBAIC0yMDAsNiArMjAxLDcgQEAgY2xhc3MgQ0RlY29kZXI6Ci0gICBVSW50MzIgUHJl dkFsaWduQ291bnQ7Ci0gCi0gICBib29sIFRhYmxlc1JlYWQ7Ci0rICBib29sIFRhYmxlc09LOwot IAotICAgQ1BwbWQ3IF9wcG1kOwotICAgaW50IFBwbUVzY0NoYXI7CmRpZmYgLS1naXQgYS9zcmNw a2dzL3A3emlwL3BhdGNoZXMvMzAtQ1ZFLTIwMTgtMTAxMTUucGF0Y2ggYi9zcmNwa2dzL3A3emlw L3BhdGNoZXMvMzAtQ1ZFLTIwMTgtMTAxMTUucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IDdkOWM0YmY4MWYwMC4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvcDd6aXAvcGF0 Y2hlcy8zMC1DVkUtMjAxOC0xMDExNS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDMxMSArMCww IEBACi1Gcm9tOiBSb2JlcnQgTHViZXJkYSA8cm9iZXJ0QGRlYmlhbi5vcmc+Ci1EYXRlOiBUdWUs IDI5IE1heSAyMDE4IDIzOjU5OjA5ICswMjAwCi1TdWJqZWN0OiBGaXggQ1ZFLTIwMTgtMTAxMTUK LQotQXBwbHkgInBhdGNoIiB0YWtlbiBmcm9tIGh0dHBzOi8vbGFuZGF2ZS5pby9maWxlcy9wYXRj aF83emlwX0NWRS0yMDE4LTEwMTE1LnR4dAotCi0KLUJ1Z3MtRGViaWFuOiBodHRwczovL2J1Z3Mu ZGViaWFuLm9yZy84OTc2NzQKLS0tLQotIENQUC83emlwL0NvbXByZXNzL1JhcjFEZWNvZGVyLmNw cCB8IDE2ICsrKysrKysrKysrLS0tLS0KLSBDUFAvN3ppcC9Db21wcmVzcy9SYXIxRGVjb2Rlci5o ICAgfCAgMyArKy0KLSBDUFAvN3ppcC9Db21wcmVzcy9SYXIyRGVjb2Rlci5jcHAgfCAxNyArKysr KysrKysrKysrLS0tLQotIENQUC83emlwL0NvbXByZXNzL1JhcjJEZWNvZGVyLmggICB8ICAzICsr LQotIENQUC83emlwL0NvbXByZXNzL1JhcjNEZWNvZGVyLmNwcCB8IDE5ICsrKysrKysrKysrKysr Ky0tLS0KLSBDUFAvN3ppcC9Db21wcmVzcy9SYXIzRGVjb2Rlci5oICAgfCAgMyArKy0KLSBDUFAv N3ppcC9Db21wcmVzcy9SYXI1RGVjb2Rlci5jcHAgfCAgOCArKysrKysrKwotIENQUC83emlwL0Nv bXByZXNzL1JhcjVEZWNvZGVyLmggICB8ICAxICsKLSA4IGZpbGVzIGNoYW5nZWQsIDU0IGluc2Vy dGlvbnMoKyksIDE2IGRlbGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0IGEvQ1BQLzd6aXAvQ29tcHJl c3MvUmFyMURlY29kZXIuY3BwIGIvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMURlY29kZXIuY3BwCi1p bmRleCA2ODAzMGM3Li44Yzg5MGM4IDEwMDY0NAotLS0tIGEvQ1BQLzd6aXAvQ29tcHJlc3MvUmFy MURlY29kZXIuY3BwCi0rKysgYi9DUFAvN3ppcC9Db21wcmVzcy9SYXIxRGVjb2Rlci5jcHAKLUBA IC0yOSw3ICsyOSw3IEBAIHB1YmxpYzoKLSB9OwotICovCi0gCi0tQ0RlY29kZXI6OkNEZWNvZGVy KCk6IG1fSXNTb2xpZChmYWxzZSksIF9lcnJvck1vZGUoZmFsc2UpIHsgfQotK0NEZWNvZGVyOjpD RGVjb2RlcigpOiBfaXNTb2xpZChmYWxzZSksIF9zb2xpZEFsbG93ZWQoZmFsc2UpLCBfZXJyb3JN b2RlKGZhbHNlKSB7IH0KLSAKLSB2b2lkIENEZWNvZGVyOjpJbml0U3RydWN0dXJlcygpCi0gewot QEAgLTM0NSw3ICszNDUsNyBAQCB2b2lkIENEZWNvZGVyOjpHZXRGbGFnc0J1ZigpCi0gCi0gdm9p ZCBDRGVjb2Rlcjo6SW5pdERhdGEoKQotIHsKLS0gIGlmICghbV9Jc1NvbGlkKQotKyAgaWYgKCFf aXNTb2xpZCkKLSAgIHsKLSAgICAgQXZyUGxjQiA9IEF2ckxuMSA9IEF2ckxuMiA9IEF2ckxuMyA9 IE51bUh1ZiA9IEJ1ZjYwID0gMDsKLSAgICAgQXZyUGxjID0gMHgzNTAwOwotQEAgLTM5MSw2ICsz OTEsMTEgQEAgSFJFU1VMVCBDRGVjb2Rlcjo6Q29kZVJlYWwoSVNlcXVlbnRpYWxJblN0cmVhbSAq aW5TdHJlYW0sIElTZXF1ZW50aWFsT3V0U3RyZWFtICoKLSAgIGlmIChpblNpemUgPT0gTlVMTCB8 fCBvdXRTaXplID09IE5VTEwpCi0gICAgIHJldHVybiBFX0lOVkFMSURBUkc7Ci0gCi0rICBpZiAo X2lzU29saWQgJiYgIV9zb2xpZEFsbG93ZWQpCi0rICAgIHJldHVybiBTX0ZBTFNFOwotKwotKyAg X3NvbGlkQWxsb3dlZCA9IGZhbHNlOwotKwotICAgaWYgKCFtX091dFdpbmRvd1N0cmVhbS5DcmVh dGUoa0hpc3RvcnlTaXplKSkKLSAgICAgcmV0dXJuIEVfT1VUT0ZNRU1PUlk7Ci0gICBpZiAoIW1f SW5CaXRTdHJlYW0uQ3JlYXRlKDEgPDwgMjApKQotQEAgLTM5OCwxMyArNDAzLDEzIEBAIEhSRVNV TFQgQ0RlY29kZXI6OkNvZGVSZWFsKElTZXF1ZW50aWFsSW5TdHJlYW0gKmluU3RyZWFtLCBJU2Vx dWVudGlhbE91dFN0cmVhbSAqCi0gCi0gICBtX1VucGFja1NpemUgPSAoSW50NjQpKm91dFNpemU7 Ci0gICBtX091dFdpbmRvd1N0cmVhbS5TZXRTdHJlYW0ob3V0U3RyZWFtKTsKLS0gIG1fT3V0V2lu ZG93U3RyZWFtLkluaXQobV9Jc1NvbGlkKTsKLSsgIG1fT3V0V2luZG93U3RyZWFtLkluaXQoX2lz U29saWQpOwotICAgbV9JbkJpdFN0cmVhbS5TZXRTdHJlYW0oaW5TdHJlYW0pOwotICAgbV9JbkJp dFN0cmVhbS5Jbml0KCk7Ci0gCi0gICAvLyBDQ29kZXJSZWxlYXNlciBjb2RlclJlbGVhc2VyKHRo aXMpOwotICAgSW5pdERhdGEoKTsKLS0gIGlmICghbV9Jc1NvbGlkKQotKyAgaWYgKCFfaXNTb2xp ZCkKLSAgIHsKLSAgICAgX2Vycm9yTW9kZSA9IGZhbHNlOwotICAgICBJbml0U3RydWN0dXJlcygp OwotQEAgLTQ3NSw2ICs0ODAsNyBAQCBIUkVTVUxUIENEZWNvZGVyOjpDb2RlUmVhbChJU2VxdWVu dGlhbEluU3RyZWFtICppblN0cmVhbSwgSVNlcXVlbnRpYWxPdXRTdHJlYW0gKgotICAgfQotICAg aWYgKG1fVW5wYWNrU2l6ZSA8IDApCi0gICAgIHJldHVybiBTX0ZBTFNFOwotKyAgX3NvbGlkQWxs b3dlZCA9IHRydWU7Ci0gICByZXR1cm4gbV9PdXRXaW5kb3dTdHJlYW0uRmx1c2goKTsKLSB9Ci0g Ci1AQCAtNDkxLDcgKzQ5Nyw3IEBAIFNURE1FVEhPRElNUCBDRGVjb2Rlcjo6U2V0RGVjb2RlclBy b3BlcnRpZXMyKGNvbnN0IEJ5dGUgKmRhdGEsIFVJbnQzMiBzaXplKQotIHsKLSAgIGlmIChzaXpl IDwgMSkKLSAgICAgcmV0dXJuIEVfSU5WQUxJREFSRzsKLS0gIG1fSXNTb2xpZCA9ICgoZGF0YVsw XSAmIDEpICE9IDApOwotKyAgX2lzU29saWQgPSAoKGRhdGFbMF0gJiAxKSAhPSAwKTsKLSAgIHJl dHVybiBTX09LOwotIH0KLSAKLWRpZmYgLS1naXQgYS9DUFAvN3ppcC9Db21wcmVzcy9SYXIxRGVj b2Rlci5oIGIvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMURlY29kZXIuaAotaW5kZXggMDFiNjA2Yi4u OGFiYjNhMyAxMDA2NDQKLS0tLSBhL0NQUC83emlwL0NvbXByZXNzL1JhcjFEZWNvZGVyLmgKLSsr KyBiL0NQUC83emlwL0NvbXByZXNzL1JhcjFEZWNvZGVyLmgKLUBAIC0zOCw3ICszOCw4IEBAIHB1 YmxpYzoKLSAgIFVJbnQzMiBMYXN0TGVuZ3RoOwotIAotICAgSW50NjQgbV9VbnBhY2tTaXplOwot LSAgYm9vbCBtX0lzU29saWQ7Ci0rICBib29sIF9pc1NvbGlkOwotKyAgYm9vbCBfc29saWRBbGxv d2VkOwotICAgYm9vbCBfZXJyb3JNb2RlOwotIAotICAgVUludDMyIFJlYWRCaXRzKGludCBudW1C aXRzKTsKLWRpZmYgLS1naXQgYS9DUFAvN3ppcC9Db21wcmVzcy9SYXIyRGVjb2Rlci5jcHAgYi9D UFAvN3ppcC9Db21wcmVzcy9SYXIyRGVjb2Rlci5jcHAKLWluZGV4IDA1ODBjOGQuLmJlOGQ4NDIg MTAwNjQ0Ci0tLS0gYS9DUFAvN3ppcC9Db21wcmVzcy9SYXIyRGVjb2Rlci5jcHAKLSsrKyBiL0NQ UC83emlwL0NvbXByZXNzL1JhcjJEZWNvZGVyLmNwcAotQEAgLTgwLDcgKzgwLDggQEAgc3RhdGlj IGNvbnN0IFVJbnQzMiBrSGlzdG9yeVNpemUgPSAxIDw8IDIwOwotIHN0YXRpYyBjb25zdCBVSW50 MzIga1dpbmRvd1Jlc2VydlNpemUgPSAoMSA8PCAyMikgKyAyNTY7Ci0gCi0gQ0RlY29kZXI6OkNE ZWNvZGVyKCk6Ci0tICBtX0lzU29saWQoZmFsc2UpLAotKyAgX2lzU29saWQoZmFsc2UpLAotKyAg X3NvbGlkQWxsb3dlZChmYWxzZSksCi0gICBtX1RhYmxlc09LKGZhbHNlKQotIHsKLSB9Ci1AQCAt MzIwLDYgKzMyMSwxMCBAQCBIUkVTVUxUIENEZWNvZGVyOjpDb2RlUmVhbChJU2VxdWVudGlhbElu U3RyZWFtICppblN0cmVhbSwgSVNlcXVlbnRpYWxPdXRTdHJlYW0gKgotICAgaWYgKGluU2l6ZSA9 PSBOVUxMIHx8IG91dFNpemUgPT0gTlVMTCkKLSAgICAgcmV0dXJuIEVfSU5WQUxJREFSRzsKLSAK LSsgIGlmIChfaXNTb2xpZCAmJiAhX3NvbGlkQWxsb3dlZCkKLSsgICAgcmV0dXJuIFNfRkFMU0U7 Ci0rICBfc29saWRBbGxvd2VkID0gZmFsc2U7Ci0rCi0gICBpZiAoIW1fT3V0V2luZG93U3RyZWFt LkNyZWF0ZShrSGlzdG9yeVNpemUpKQotICAgICByZXR1cm4gRV9PVVRPRk1FTU9SWTsKLSAgIGlm ICghbV9JbkJpdFN0cmVhbS5DcmVhdGUoMSA8PCAyMCkpCi1AQCAtMzMwLDEyICszMzUsMTIgQEAg SFJFU1VMVCBDRGVjb2Rlcjo6Q29kZVJlYWwoSVNlcXVlbnRpYWxJblN0cmVhbSAqaW5TdHJlYW0s IElTZXF1ZW50aWFsT3V0U3RyZWFtICoKLSAgIFVJbnQ2NCBwb3MgPSAwLCB1blBhY2tTaXplID0g Km91dFNpemU7Ci0gICAKLSAgIG1fT3V0V2luZG93U3RyZWFtLlNldFN0cmVhbShvdXRTdHJlYW0p OwotLSAgbV9PdXRXaW5kb3dTdHJlYW0uSW5pdChtX0lzU29saWQpOwotKyAgbV9PdXRXaW5kb3dT dHJlYW0uSW5pdChfaXNTb2xpZCk7Ci0gICBtX0luQml0U3RyZWFtLlNldFN0cmVhbShpblN0cmVh bSk7Ci0gICBtX0luQml0U3RyZWFtLkluaXQoKTsKLSAKLSAgIC8vIENDb2RlclJlbGVhc2VyIGNv ZGVyUmVsZWFzZXIodGhpcyk7Ci0tICBpZiAoIW1fSXNTb2xpZCkKLSsgIGlmICghX2lzU29saWQp Ci0gICB7Ci0gICAgIEluaXRTdHJ1Y3R1cmVzKCk7Ci0gICAgIGlmICh1blBhY2tTaXplID09IDAp Ci1AQCAtMzQzLDYgKzM0OCw3IEBAIEhSRVNVTFQgQ0RlY29kZXI6OkNvZGVSZWFsKElTZXF1ZW50 aWFsSW5TdHJlYW0gKmluU3RyZWFtLCBJU2VxdWVudGlhbE91dFN0cmVhbSAqCi0gICAgICAgaWYg KG1fSW5CaXRTdHJlYW0uR2V0UHJvY2Vzc2VkU2l6ZSgpICsgMiA8PSBtX1BhY2tTaXplKSAvLyB0 ZXN0IGl0OiBwcm9iYWJseSBpbmNvcnJlY3Q7Ci0gICAgICAgICBpZiAoIVJlYWRUYWJsZXMoKSkK LSAgICAgICAgICAgcmV0dXJuIFNfRkFMU0U7Ci0rICAgICAgX3NvbGlkQWxsb3dlZCA9IHRydWU7 Ci0gICAgICAgcmV0dXJuIFNfT0s7Ci0gICAgIH0KLSAgICAgaWYgKCFSZWFkVGFibGVzKCkpCi1A QCAtMzg2LDYgKzM5Miw5IEBAIEhSRVNVTFQgQ0RlY29kZXI6OkNvZGVSZWFsKElTZXF1ZW50aWFs SW5TdHJlYW0gKmluU3RyZWFtLCBJU2VxdWVudGlhbE91dFN0cmVhbSAqCi0gCi0gICBpZiAoIVJl YWRMYXN0VGFibGVzKCkpCi0gICAgIHJldHVybiBTX0ZBTFNFOwotKwotKyAgX3NvbGlkQWxsb3dl ZCA9IHRydWU7Ci0rCi0gICByZXR1cm4gbV9PdXRXaW5kb3dTdHJlYW0uRmx1c2goKTsKLSB9Ci0g Ci1AQCAtNDAyLDcgKzQxMSw3IEBAIFNURE1FVEhPRElNUCBDRGVjb2Rlcjo6U2V0RGVjb2RlclBy b3BlcnRpZXMyKGNvbnN0IEJ5dGUgKmRhdGEsIFVJbnQzMiBzaXplKQotIHsKLSAgIGlmIChzaXpl IDwgMSkKLSAgICAgcmV0dXJuIEVfSU5WQUxJREFSRzsKLS0gIG1fSXNTb2xpZCA9ICgoZGF0YVsw XSAmIDEpICE9IDApOwotKyAgX2lzU29saWQgPSAoKGRhdGFbMF0gJiAxKSAhPSAwKTsKLSAgIHJl dHVybiBTX09LOwotIH0KLSAKLWRpZmYgLS1naXQgYS9DUFAvN3ppcC9Db21wcmVzcy9SYXIyRGVj b2Rlci5oIGIvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMkRlY29kZXIuaAotaW5kZXggMGU5MDA1Zi4u MzcwYmNlMiAxMDA2NDQKLS0tLSBhL0NQUC83emlwL0NvbXByZXNzL1JhcjJEZWNvZGVyLmgKLSsr KyBiL0NQUC83emlwL0NvbXByZXNzL1JhcjJEZWNvZGVyLmgKLUBAIC0xMzgsNyArMTM4LDggQEAg Y2xhc3MgQ0RlY29kZXIgOgotICAgQnl0ZSBtX0xhc3RMZXZlbHNba01heFRhYmxlU2l6ZV07Ci0g Ci0gICBVSW50NjQgbV9QYWNrU2l6ZTsKLS0gIGJvb2wgbV9Jc1NvbGlkOwotKyAgYm9vbCBfaXNT b2xpZDsKLSsgIGJvb2wgX3NvbGlkQWxsb3dlZDsKLSAgIGJvb2wgbV9UYWJsZXNPSzsKLSAKLSAg IHZvaWQgSW5pdFN0cnVjdHVyZXMoKTsKLWRpZmYgLS1naXQgYS9DUFAvN3ppcC9Db21wcmVzcy9S YXIzRGVjb2Rlci5jcHAgYi9DUFAvN3ppcC9Db21wcmVzcy9SYXIzRGVjb2Rlci5jcHAKLWluZGV4 IDZjYjhhNmEuLjdiODU4MzMgMTAwNjQ0Ci0tLS0gYS9DUFAvN3ppcC9Db21wcmVzcy9SYXIzRGVj b2Rlci5jcHAKLSsrKyBiL0NQUC83emlwL0NvbXByZXNzL1JhcjNEZWNvZGVyLmNwcAotQEAgLTky LDcgKzkyLDggQEAgQ0RlY29kZXI6OkNEZWNvZGVyKCk6Ci0gICBfd3JpdHRlbkZpbGVTaXplKDAp LAotICAgX3ZtRGF0YSgwKSwKLSAgIF92bUNvZGUoMCksCi0tICBtX0lzU29saWQoZmFsc2UpLAot KyAgX2lzU29saWQoZmFsc2UpLAotKyAgX3NvbGlkQWxsb3dlZChmYWxzZSksCi0gICBfZXJyb3JN b2RlKGZhbHNlKQotIHsKLSAgIFBwbWQ3X0NvbnN0cnVjdCgmX3BwbWQpOwotQEAgLTgyMSw3ICs4 MjIsNyBAQCBIUkVTVUxUIENEZWNvZGVyOjpDb2RlUmVhbChJQ29tcHJlc3NQcm9ncmVzc0luZm8g KnByb2dyZXNzKQotIHsKLSAgIF93cml0dGVuRmlsZVNpemUgPSAwOwotICAgX3Vuc3VwcG9ydGVk RmlsdGVyID0gZmFsc2U7Ci0tICBpZiAoIW1fSXNTb2xpZCkKLSsgIGlmICghX2lzU29saWQpCi0g ICB7Ci0gICAgIF9selNpemUgPSAwOwotICAgICBfd2luUG9zID0gMDsKLUBAIC04NDAsMTIgKzg0 MSwxNSBAQCBIUkVTVUxUIENEZWNvZGVyOjpDb2RlUmVhbChJQ29tcHJlc3NQcm9ncmVzc0luZm8g KnByb2dyZXNzKQotICAgaWYgKF9lcnJvck1vZGUpCi0gICAgIHJldHVybiBTX0ZBTFNFOwotIAot LSAgaWYgKCFtX0lzU29saWQgfHwgIVRhYmxlc1JlYWQpCi0rICBpZiAoIV9pc1NvbGlkIHx8ICFU YWJsZXNSZWFkKQotICAgewotICAgICBib29sIGtlZXBEZWNvbXByZXNzaW5nOwotICAgICBSSU5P SyhSZWFkVGFibGVzKGtlZXBEZWNvbXByZXNzaW5nKSk7Ci0gICAgIGlmICgha2VlcERlY29tcHJl c3NpbmcpCi0rICAgIHsKLSsgICAgICBfc29saWRBbGxvd2VkID0gdHJ1ZTsKLSAgICAgICByZXR1 cm4gU19PSzsKLSsgICAgfQotICAgfQotIAotICAgZm9yICg7OykKLUBAIC04NzAsNiArODc0LDkg QEAgSFJFU1VMVCBDRGVjb2Rlcjo6Q29kZVJlYWwoSUNvbXByZXNzUHJvZ3Jlc3NJbmZvICpwcm9n cmVzcykKLSAgICAgaWYgKCFrZWVwRGVjb21wcmVzc2luZykKLSAgICAgICBicmVhazsKLSAgIH0K LSsKLSsgIF9zb2xpZEFsbG93ZWQgPSB0cnVlOwotKwotICAgUklOT0soV3JpdGVCdWYoKSk7Ci0g ICBVSW50NjQgcGFja1NpemUgPSBtX0luQml0U3RyZWFtLkJpdERlY29kZXIuR2V0UHJvY2Vzc2Vk U2l6ZSgpOwotICAgUklOT0socHJvZ3Jlc3MtPlNldFJhdGlvSW5mbygmcGFja1NpemUsICZfd3Jp dHRlbkZpbGVTaXplKSk7Ci1AQCAtODkwLDYgKzg5NywxMCBAQCBTVERNRVRIT0RJTVAgQ0RlY29k ZXI6OkNvZGUoSVNlcXVlbnRpYWxJblN0cmVhbSAqaW5TdHJlYW0sIElTZXF1ZW50aWFsT3V0U3Ry ZWFtCi0gICAgIGlmICghaW5TaXplKQotICAgICAgIHJldHVybiBFX0lOVkFMSURBUkc7Ci0gCi0r ICAgIGlmIChfaXNTb2xpZCAmJiAhX3NvbGlkQWxsb3dlZCkKLSsgICAgICByZXR1cm4gU19GQUxT RTsKLSsgICAgX3NvbGlkQWxsb3dlZCA9IGZhbHNlOwotKwotICAgICBpZiAoIV92bURhdGEpCi0g ICAgIHsKLSAgICAgICBfdm1EYXRhID0gKEJ5dGUgKik6Ok1pZEFsbG9jKGtWbURhdGFTaXplTWF4 ICsga1ZtQ29kZVNpemVNYXgpOwotQEAgLTkyOCw3ICs5MzksNyBAQCBTVERNRVRIT0RJTVAgQ0Rl Y29kZXI6OlNldERlY29kZXJQcm9wZXJ0aWVzMihjb25zdCBCeXRlICpkYXRhLCBVSW50MzIgc2l6 ZSkKLSB7Ci0gICBpZiAoc2l6ZSA8IDEpCi0gICAgIHJldHVybiBFX0lOVkFMSURBUkc7Ci0tICBt X0lzU29saWQgPSAoKGRhdGFbMF0gJiAxKSAhPSAwKTsKLSsgIF9pc1NvbGlkID0gKChkYXRhWzBd ICYgMSkgIT0gMCk7Ci0gICByZXR1cm4gU19PSzsKLSB9Ci0gCi1kaWZmIC0tZ2l0IGEvQ1BQLzd6 aXAvQ29tcHJlc3MvUmFyM0RlY29kZXIuaCBiL0NQUC83emlwL0NvbXByZXNzL1JhcjNEZWNvZGVy LmgKLWluZGV4IDJmNzJkN2QuLjMyYzg5NDMgMTAwNjQ0Ci0tLS0gYS9DUFAvN3ppcC9Db21wcmVz cy9SYXIzRGVjb2Rlci5oCi0rKysgYi9DUFAvN3ppcC9Db21wcmVzcy9SYXIzRGVjb2Rlci5oCi1A QCAtMTkxLDcgKzE5MSw4IEBAIGNsYXNzIENEZWNvZGVyOgotICAgQ1JlY29yZFZlY3RvcjxDVGVt cEZpbHRlciAqPiAgX3RlbXBGaWx0ZXJzOwotICAgVUludDMyIF9sYXN0RmlsdGVyOwotIAotLSAg Ym9vbCBtX0lzU29saWQ7Ci0rICBib29sIF9pc1NvbGlkOwotKyAgYm9vbCBfc29saWRBbGxvd2Vk OwotICAgYm9vbCBfZXJyb3JNb2RlOwotIAotICAgYm9vbCBfbHpNb2RlOwotZGlmZiAtLWdpdCBh L0NQUC83emlwL0NvbXByZXNzL1JhcjVEZWNvZGVyLmNwcCBiL0NQUC83emlwL0NvbXByZXNzL1Jh cjVEZWNvZGVyLmNwcAotaW5kZXggZGM4ODMwZi4uYTgyNmQ1YSAxMDA2NDQKLS0tLSBhL0NQUC83 emlwL0NvbXByZXNzL1JhcjVEZWNvZGVyLmNwcAotKysrIGIvQ1BQLzd6aXAvQ29tcHJlc3MvUmFy NURlY29kZXIuY3BwCi1AQCAtNzIsNiArNzIsNyBAQCBDRGVjb2Rlcjo6Q0RlY29kZXIoKToKLSAg ICAgX3dyaXR0ZW5GaWxlU2l6ZSgwKSwKLSAgICAgX2RpY3RTaXplTG9nKDApLAotICAgICBfaXNT b2xpZChmYWxzZSksCi0rICAgIF9zb2xpZEFsbG93ZWQoZmFsc2UpLAotICAgICBfd2FzSW5pdChm YWxzZSksCi0gICAgIF9pbnB1dEJ1ZihOVUxMKQotIHsKLUBAIC04MDEsNyArODAyLDEwIEBAIEhS RVNVTFQgQ0RlY29kZXI6OkNvZGVSZWFsKCkKLSAgICovCi0gCi0gICBpZiAocmVzID09IFNfT0sp Ci0rICB7Ci0rICAgIF9zb2xpZEFsbG93ZWQgPSB0cnVlOwotICAgICByZXMgPSByZXMyOwotKyAg fQotICAgICAgCi0gICBpZiAocmVzID09IFNfT0sgJiYgX3VucGFja1NpemVfRGVmaW5lZCAmJiBf d3JpdHRlbkZpbGVTaXplICE9IF91bnBhY2tTaXplKQotICAgICByZXR1cm4gU19GQUxTRTsKLUBA IC04MjEsNiArODI1LDEwIEBAIFNURE1FVEhPRElNUCBDRGVjb2Rlcjo6Q29kZShJU2VxdWVudGlh bEluU3RyZWFtICppblN0cmVhbSwgSVNlcXVlbnRpYWxPdXRTdHJlYW0KLSB7Ci0gICB0cnkKLSAg IHsKLSsgICAgaWYgKF9pc1NvbGlkICYmICFfc29saWRBbGxvd2VkKQotKyAgICAgIHJldHVybiBT X0ZBTFNFOwotKyAgICBfc29saWRBbGxvd2VkID0gZmFsc2U7Ci0rCi0gICAgIGlmIChfZGljdFNp emVMb2cgPj0gc2l6ZW9mKHNpemVfdCkgKiA4KQotICAgICAgIHJldHVybiBFX05PVElNUEw7Ci0g Ci1kaWZmIC0tZ2l0IGEvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyNURlY29kZXIuaCBiL0NQUC83emlw L0NvbXByZXNzL1JhcjVEZWNvZGVyLmgKLWluZGV4IGIwYTRkZDEuLjNkYjUwMTggMTAwNjQ0Ci0t LS0gYS9DUFAvN3ppcC9Db21wcmVzcy9SYXI1RGVjb2Rlci5oCi0rKysgYi9DUFAvN3ppcC9Db21w cmVzcy9SYXI1RGVjb2Rlci5oCi1AQCAtMjcxLDYgKzI3MSw3IEBAIGNsYXNzIENEZWNvZGVyOgot ICAgQnl0ZSBfZGljdFNpemVMb2c7Ci0gICBib29sIF90YWJsZVdhc0ZpbGxlZDsKLSAgIGJvb2wg X2lzU29saWQ7Ci0rICBib29sIF9zb2xpZEFsbG93ZWQ7Ci0gICBib29sIF93YXNJbml0OwotIAot ICAgVUludDMyIF9yZXBzW2tOdW1SZXBzXTsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcDd6aXAvcGF0 Y2hlcy9DVkUtMjAxNi05Mjk2LnBhdGNoIGIvc3JjcGtncy9wN3ppcC9wYXRjaGVzL0NWRS0yMDE2 LTkyOTYucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZiYmIzMzc3MzdlNS4u MDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvcDd6aXAvcGF0Y2hlcy9DVkUtMjAxNi05Mjk2LnBh dGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotLS0tIGEvQ1BQLzd6aXAvQXJjaGl2 ZS83ei83ekluLmNwcAlTdW4gTm92IDIwIDA5OjI5OjQxIDIwMTYKLSsrKyBiL0NQUC83emlwL0Fy Y2hpdmUvN3ovN3pJbi5jcHAJU3VuIE5vdiAyMCAwOTozMToyMiAyMDE2Ci1AQCAtMTA5Nyw3ICsx MDk3LDggQEAgSFJFU1VMVCBDSW5BcmNoaXZlOjpSZWFkQW5kRGVjb2RlUGFja2VkU3RyZWFtcygK LSAgICAgICBpZiAoQ3JjQ2FsYyhkYXRhLCB1bnBhY2tTaXplKSAhPSBmb2xkZXJzLkZvbGRlckNS Q3MuVmFsc1tpXSkKLSAgICAgICAgIFRocm93SW5jb3JyZWN0KCk7Ci0gICB9Ci0tICBIZWFkZXJz U2l6ZSArPSBmb2xkZXJzLlBhY2tQb3NpdGlvbnNbZm9sZGVycy5OdW1QYWNrU3RyZWFtc107Ci0r ICBpZiAoZm9sZGVycy5QYWNrUG9zaXRpb25zKQotKyAgICAgIEhlYWRlcnNTaXplICs9IGZvbGRl cnMuUGFja1Bvc2l0aW9uc1tmb2xkZXJzLk51bVBhY2tTdHJlYW1zXTsKLSAgIHJldHVybiBTX09L OwotIH0KLSAKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcDd6aXAvcGF0Y2hlcy9DVkUtMjAxNy0xNzk2 OS5wYXRjaCBiL3NyY3BrZ3MvcDd6aXAvcGF0Y2hlcy9DVkUtMjAxNy0xNzk2OS5wYXRjaApkZWxl dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOWE4MjBhZjczMDY3Li4wMDAwMDAwMDAwMDAKLS0t IGEvc3JjcGtncy9wN3ppcC9wYXRjaGVzL0NWRS0yMDE3LTE3OTY5LnBhdGNoCisrKyAvZGV2L251 bGwKQEAgLTEsMjYgKzAsMCBAQAotRnJvbTogPT91dGYtOD9xP0FudG9pbmVfQmVhdXByPUMzPUE5 Pz0gPGFuYXJjYXRAZGViaWFuLm9yZz4KLURhdGU6IFN1biwgMjggSmFuIDIwMTggMjE6MTk6NTAg KzAxMDAKLVN1YmplY3Q6IGJhY2twb3J0IG9mIHRoZSBDVkUtMjAxNy0xNzk2OSBmaXggZnJvbSA3 emlwIDE4LjAwLWJldGEKLQotLS0tCi0gQ1BQLzd6aXAvQ29tcHJlc3MvU2hyaW5rRGVjb2Rlci5j cHAgfCA3ICsrKysrKy0KLSAxIGZpbGUgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAxIGRlbGV0 aW9uKC0pCi0KLWRpZmYgLS1naXQgYS9DUFAvN3ppcC9Db21wcmVzcy9TaHJpbmtEZWNvZGVyLmNw cCBiL0NQUC83emlwL0NvbXByZXNzL1Nocmlua0RlY29kZXIuY3BwCi1pbmRleCA4MGI3ZTY3Li40 YWNkY2U1IDEwMDY0NAotLS0tIGEvQ1BQLzd6aXAvQ29tcHJlc3MvU2hyaW5rRGVjb2Rlci5jcHAK LSsrKyBiL0NQUC83emlwL0NvbXByZXNzL1Nocmlua0RlY29kZXIuY3BwCi1AQCAtMTIxLDcgKzEy MSwxMiBAQCBIUkVTVUxUIENEZWNvZGVyOjpDb2RlUmVhbChJU2VxdWVudGlhbEluU3RyZWFtICpp blN0cmVhbSwgSVNlcXVlbnRpYWxPdXRTdHJlYW0gKgotICAgICB7Ci0gICAgICAgX3N0YWNrW2kr K10gPSBfc3VmZml4ZXNbY3VyXTsKLSAgICAgICBjdXIgPSBfcGFyZW50c1tjdXJdOwotLSAgICB9 Ci0rICAgICAgaWYgKGkgPj0ga051bUl0ZW1zKQotKyAgICAgICAgYnJlYWs7Ci0rICAgICB9Ci0r Ci0rICAgIGlmIChpID49IGtOdW1JdGVtcykKLSsgICAgICBicmVhazsKLSAgICAgCi0gICAgIF9z dGFja1tpKytdID0gKEJ5dGUpY3VyOwotICAgICBsYXN0Q2hhcjIgPSAoQnl0ZSljdXI7CmRpZmYg LS1naXQgYS9zcmNwa2dzL3A3emlwL3RlbXBsYXRlIGIvc3JjcGtncy9wN3ppcC90ZW1wbGF0ZQpk ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZmRjYmRmZTUxMzYyLi4wMDAwMDAwMDAwMDAK LS0tIGEvc3JjcGtncy9wN3ppcC90ZW1wbGF0ZQorKysgL2Rldi9udWxsCkBAIC0xLDQ2ICswLDAg QEAKLSMgVGVtcGxhdGUgZmlsZSBmb3IgJ3A3emlwJwotcGtnbmFtZT1wN3ppcAotdmVyc2lvbj0x Ni4wMgotcmV2aXNpb249NQotaG9zdG1ha2VkZXBlbmRzPSJ5YXNtIG5hc20iCi1zaG9ydF9kZXNj PSJDb21tYW5kLWxpbmUgdmVyc2lvbiBvZiB0aGUgN3ppcCBjb21wcmVzc2VkIGZpbGUgYXJjaGl2 ZSIKLW1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCi1saWNlbnNl PSJMR1BMLTIuMS1vci1sYXRlciIKLWhvbWVwYWdlPSJodHRwOi8vcDd6aXAuc291cmNlZm9yZ2Uu bmV0LyIKLWRpc3RmaWxlcz0iJHtTT1VSQ0VGT1JHRV9TSVRFfS8ke3BrZ25hbWV9LyR7cGtnbmFt ZX1fJHt2ZXJzaW9ufV9zcmNfYWxsLnRhci5iejIiCi1jaGVja3N1bT01ZWIyMGFjMGUyOTQ0ZjZj YjljMmQ1MWRkNmM0NTE4OTQxYzE4NTM0N2Q0MDg5ZWE4OTA4N2ZmZGQ2ZTIzNDFmCi0KLUNYWEZM QUdTPSItV25vLW5hcnJvd2luZyAtc3RkPWMrKzExIgotCi1kb19jb25maWd1cmUoKSB7Ci0JY2Fz ZSAiJFhCUFNfVEFSR0VUX01BQ0hJTkUiIGluCi0JCWk2ODYqKSBjcCBtYWtlZmlsZS5saW51eF94 ODZfYXNtX2djY180LlggbWFrZWZpbGUubWFjaGluZTs7Ci0JCXg4Nl82NCopIGNwIG1ha2VmaWxl LmxpbnV4X2FtZDY0X2FzbSBtYWtlZmlsZS5tYWNoaW5lOzsKLQkJKikgY3AgbWFrZWZpbGUubGlu dXhfYW55X2NwdV9nY2NfNC5YIG1ha2VmaWxlLm1hY2hpbmU7OwotCWVzYWMKLQlzZWQgLWUgInMs ZysrLCR7Q1hYfSwiIC1pIG1ha2VmaWxlLm1hY2hpbmUKLQlzZWQgLWUgInMsZ2NjLCR7Q0N9LCIg LWkgbWFrZWZpbGUubWFjaGluZQotfQotZG9fYnVpbGQoKSB7Ci0JbWFrZSBhbGwzIE9QVEZMQUdT PSIkQ1hYRkxBR1MiICR7bWFrZWpvYnN9Ci19Ci1kb19pbnN0YWxsKCkgewotCW1ha2UgaW5zdGFs bCBERVNUX0RJUj0iJHtERVNURElSfSIgREVTVF9IT01FPSIvdXNyIiBcCi0JCURFU1RfTUFOPSIv dXNyL3NoYXJlL21hbiIgXAotCQlERVNUX1NIQVJFX0RPQz0iL3Vzci9zaGFyZS9kb2MvJHtwa2du YW1lfSIKLQlmaW5kICR7REVTVERJUn0vdXNyL3NoYXJlL2RvYy8kcGtnbmFtZSAtdHlwZSBkIC1l eGVjIGNobW9kIDc1NSB7fSBcOwotCW1rZGlyIC1wICR7REVTVERJUn0vdXNyL3NoYXJlL2xpY2Vu c2VzL3A3emlwLwotCW12ICR7REVTVERJUn0vdXNyL3NoYXJlL2RvYy9wN3ppcC9ET0MvY29weWlu Zy50eHQgXAotCSAgICR7REVTVERJUn0vdXNyL3NoYXJlL2xpY2Vuc2VzL3A3emlwL0xJQ0VOU0UK LX0KLQotcDd6aXAtdW5yYXJfcGFja2FnZSgpIHsKLQlzaG9ydF9kZXNjKz0iIC0gUkFSIHN1cHBv cnQiCi0JbGljZW5zZT0iY3VzdG9tOmZyZWV3YXJlIgotCWRlcGVuZHM9IiR7c291cmNlcGtnfS0k e3ZlcnNpb259XyR7cmV2aXNpb259IgotCXJlcG9zaXRvcnk9bm9uZnJlZQotCXBrZ19pbnN0YWxs KCkgewotCQl2bW92ZSB1c3IvbGliL3A3emlwL0NvZGVjcy9SYXIuc28KLQkJdmxpY2Vuc2UgRE9D L3VuUmFyTGljZW5zZS50eHQgTElDRU5TRQotCX0KLX0KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcDd6 aXAvdXBkYXRlIGIvc3JjcGtncy9wN3ppcC91cGRhdGUKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IDg0ZWQ0NmQ3NGExYS4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvcDd6aXAvdXBk YXRlCisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotcGF0dGVybj0ncDd6aXBfXEtbLlxkXSsn Cg== --===============2391845093752491977==--