From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) 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.2 Received: from inbox.vuxu.org (localhost [IPv6:::1]) by inbox.vuxu.org (OpenSMTPD) with ESMTP id 85824d41 for ; Mon, 30 Dec 2019 16:11:15 +0000 (UTC) Content-Type: multipart/mixed; boundary="===============7654074189236657241==" MIME-Version: 1.0 Subject: Re: [PR PATCH] [Updated] New package: python3-language-server-0.31.4 To: ml@inbox.vuxu.org From: voidlinux-github@inbox.vuxu.org Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Mon, 30 Dec 2019 17:11:14 +0100 Message-ID: <20191230161114.gmd4l5PtWGft_bApPZQ7lbZSd3DXUPVkZGDrVKUMoBs@z> GitHub notification mails are now in MIME to allow UTF8. --===============7654074189236657241== MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgazRsZWcgYWdhaW5zdCBtYXN0ZXIg b24gdGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29tL2s0bGVn L3ZvaWQtcGFja2FnZXMgcHl0aG9uLWxhbmd1YWdlLXNlcnZlcgpodHRwczovL2dpdGh1Yi5jb20v dm9pZC1saW51eC92b2lkLXBhY2thZ2VzL3B1bGwvMTc4NjIKCk5ldyBwYWNrYWdlOiBweXRob24z LWxhbmd1YWdlLXNlcnZlci0wLjMxLjQKCgpBIHBhdGNoIGZpbGUgZnJvbSBodHRwczovL2dpdGh1 Yi5jb20vdm9pZC1saW51eC92b2lkLXBhY2thZ2VzL3B1bGwvMTc4NjIucGF0Y2ggaXMgYXR0YWNo ZWQ= --===============7654074189236657241== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-python-language-server-17862.patch" RnJvbSBhYzUyOWRjZTE5N2VjMzZmM2MxYzZjNWM4YTg1MjE3NWY2YWIxYjdmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBrNGxlZyA8ZDB4aUBpbmJveC5ydT4KRGF0ZTogTW9uLCAzMCBE ZWMgMjAxOSAxODo0NTowNyArMDMwMApTdWJqZWN0OiBbUEFUQ0ggMS81XSBweXRob24tamVkaTog dXBkYXRlIHRvIDAuMTUuMi4KCi0tLQogc3JjcGtncy9weXRob24tamVkaS90ZW1wbGF0ZSB8IDE5 ICsrKysrKysrLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDEx IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHl0aG9uLWplZGkvdGVtcGxhdGUg Yi9zcmNwa2dzL3B5dGhvbi1qZWRpL3RlbXBsYXRlCmluZGV4IGE5OTRmMGUyODYxLi5mNjA5ZmI0 NDY0ZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9weXRob24tamVkaS90ZW1wbGF0ZQorKysgYi9zcmNw a2dzL3B5dGhvbi1qZWRpL3RlbXBsYXRlCkBAIC0xLDIxICsxLDE5IEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdweXRob24tamVkaScKIHBrZ25hbWU9cHl0aG9uLWplZGkKLXZlcnNpb249MC4xNS4x Ci1yZXZpc2lvbj0yCit2ZXJzaW9uPTAuMTUuMgorcmV2aXNpb249MQogYXJjaHM9bm9hcmNoCi1f cGFyc292ZXI9MC41LjAKIHdya3NyYz0iamVkaS0ke3ZlcnNpb259IgogYnVpbGRfc3R5bGU9cHl0 aG9uLW1vZHVsZQotcHljb21waWxlX21vZHVsZT0iamVkaSIKIGhvc3RtYWtlZGVwZW5kcz0icHl0 aG9uLXNldHVwdG9vbHMgcHl0aG9uMy1zZXR1cHRvb2xzIgotZGVwZW5kcz0icHl0aG9uLXBhcnNv Pj0ke19wYXJzb3Zlcn0iCitkZXBlbmRzPSJweXRob24tcGFyc28iCiBjaGVja2RlcGVuZHM9InB5 dGhvbi1wYXJzbyBweXRob24zLXBhcnNvIHB5dGhvbi1weXRlc3QgcHl0aG9uMy1weXRlc3QiCi1z aG9ydF9kZXNjPSJBdXRvY29tcGxldGlvbi9zdGF0aWMgYW5hbHlzaXMgbGlicmFyeSBmb3IgUHl0 aG9uMiIKK3Nob3J0X2Rlc2M9IkF1dG9jb21wbGV0aW9uL3N0YXRpYyBhbmFseXNpcyBsaWJyYXJ5 IGZvciBQeXRob24gMiIKIG1haW50YWluZXI9IkFsZXNzaW8gU2VyZ2kgPGFsM2hleEBnbWFpbC5j b20+IgogbGljZW5zZT0iTUlUIgogaG9tZXBhZ2U9Imh0dHBzOi8vamVkaS5yZWFkdGhlZG9jcy5p by8iCiBkaXN0ZmlsZXM9IiR7UFlQSV9TSVRFfS9qL2plZGkvamVkaS0ke3ZlcnNpb259LnRhci5n eiIKLWNoZWNrc3VtPWJhODU5Yzc0ZmEzYzk2NmEyMmYyYWVlYmUxYjc0ZWUyN2UyYTQ2MmY1NmQz ZjVmN2NhNGE1OWFmNjFiZmU0MmUKK2NoZWNrc3VtPWU5MDk1MjcxMDRhOTAzNjA2ZGQ2M2JlYTZl OGU4ODg4MzNmMGVmMDg3MDU3ODI5Yjg5YTE4MzY0YTg1NmY4MDcKIAogcG9zdF9pbnN0YWxsKCkg ewogCXZsaWNlbnNlIExJQ0VOU0UudHh0CkBAIC0yMywxMSArMjEsMTAgQEAgcG9zdF9pbnN0YWxs KCkgewogCiBweXRob24zLWplZGlfcGFja2FnZSgpIHsKIAlhcmNocz1ub2FyY2gKLQlweWNvbXBp bGVfbW9kdWxlPSJqZWRpIgotCWRlcGVuZHM9InB5dGhvbjMtcGFyc28+PSR7X3BhcnNvdmVyfSIK LQlzaG9ydF9kZXNjPSIke3Nob3J0X2Rlc2MvUHl0aG9uMi9QeXRob24zfSIKKwlkZXBlbmRzPSJw eXRob24zLXBhcnNvIgorCXNob3J0X2Rlc2M9IiR7c2hvcnRfZGVzYy8yLzN9IgogCXBrZ19pbnN0 YWxsKCkgewotCQl2bW92ZSB1c3IvbGliL3B5dGhvbjMqCisJCXZtb3ZlICJ1c3IvbGliL3B5dGhv bjMqIgogCQl2bGljZW5zZSBMSUNFTlNFLnR4dAogCX0KIH0KCkZyb20gYTdmZTAyNDRiZjM3ODUz M2RkOWNmOTgxNmJiZTYwMjEzYTA5MWRjOCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog azRsZWcgPGQweGlAaW5ib3gucnU+CkRhdGU6IE1vbiwgMzAgRGVjIDIwMTkgMTg6NDc6MDggKzAz MDAKU3ViamVjdDogW1BBVENIIDIvNV0gcHl0aG9uLXBhcnNvOiB1cGRhdGUgdG8gMC41LjIuCgot LS0KIHNyY3BrZ3MvcHl0aG9uLXBhcnNvL3RlbXBsYXRlIHwgMTYgKysrKysrLS0tLS0tLS0tLQog MSBmaWxlIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCgpkaWZmIC0t Z2l0IGEvc3JjcGtncy9weXRob24tcGFyc28vdGVtcGxhdGUgYi9zcmNwa2dzL3B5dGhvbi1wYXJz by90ZW1wbGF0ZQppbmRleCAxOTU5YjQyNjIyYS4uZmI3MWFmNTQ5YTEgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvcHl0aG9uLXBhcnNvL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcHl0aG9uLXBhcnNvL3Rl bXBsYXRlCkBAIC0xLDE5ICsxLDE3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdweXRob24tcGFy c28nCiBwa2duYW1lPXB5dGhvbi1wYXJzbwotdmVyc2lvbj0wLjUuMQotcmV2aXNpb249MgordmVy c2lvbj0wLjUuMgorcmV2aXNpb249MQogYXJjaHM9bm9hcmNoCiB3cmtzcmM9InBhcnNvLSR7dmVy c2lvbn0iCiBidWlsZF9zdHlsZT1weXRob24tbW9kdWxlCi1weWNvbXBpbGVfbW9kdWxlPSJwYXJz byIKIGhvc3RtYWtlZGVwZW5kcz0icHl0aG9uLXNldHVwdG9vbHMgcHl0aG9uMy1zZXR1cHRvb2xz IgotZGVwZW5kcz0icHl0aG9uIgotc2hvcnRfZGVzYz0iUHl0aG9uIHBhcnNlciAoUHl0aG9uMiki CitzaG9ydF9kZXNjPSJQeXRob24gcGFyc2VyIChQeXRob24gMikiCiBtYWludGFpbmVyPSJBbGVz c2lvIFNlcmdpIDxhbDNoZXhAZ21haWwuY29tPiIKIGxpY2Vuc2U9Ik1JVCIKIGhvbWVwYWdlPSJo dHRwczovL2dpdGh1Yi5jb20vZGF2aWRoYWx0ZXIvcGFyc28iCiBkaXN0ZmlsZXM9IiR7UFlQSV9T SVRFfS9wL3BhcnNvL3BhcnNvLSR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09NjY2YjBlZTRh N2ExMjIwZjY1ZDM2NzYxN2YyY2QzZmZkZGZmM2UyMDVmM2YxNmEwMjg0ZGYzMGU3NzRjMmE5Ywor Y2hlY2tzdW09NTVjZjI1ZGYxYTM1ZmQ4OGI4Nzg3MTU4NzRkMmM0ZGMxYWQzZjBlZWJkMWUwMjY2 YTY3ZTFmNTVlZmNjZmJlMQogCiBwb3N0X2luc3RhbGwoKSB7CiAJdmxpY2Vuc2UgTElDRU5TRS50 eHQKQEAgLTIxLDExICsxOSw5IEBAIHBvc3RfaW5zdGFsbCgpIHsKIAogcHl0aG9uMy1wYXJzb19w YWNrYWdlKCkgewogCWFyY2hzPW5vYXJjaAotCWRlcGVuZHM9InB5dGhvbjMiCi0JcHljb21waWxl X21vZHVsZT0icGFyc28iCi0Jc2hvcnRfZGVzYz0iJHtzaG9ydF9kZXNjL1B5dGhvbjIvUHl0aG9u M30iCisJc2hvcnRfZGVzYz0iJHtzaG9ydF9kZXNjLzIvM30iCiAJcGtnX2luc3RhbGwoKSB7Ci0J CXZtb3ZlIHVzci9saWIvcHl0aG9uMyoKKwkJdm1vdmUgInVzci9saWIvcHl0aG9uMyoiCiAJCXZs aWNlbnNlIExJQ0VOU0UudHh0CiAJfQogfQoKRnJvbSA4MTUwMWRiYWU2Mjc2ZmM1NDY4ZTlhN2Nj NjU2NmJlYTEyMDk5NDRiIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBrNGxlZyA8ZDB4 aUBpbmJveC5ydT4KRGF0ZTogTW9uLCAzMCBEZWMgMjAxOSAxOToxMDoxMCArMDMwMApTdWJqZWN0 OiBbUEFUQ0ggMy81XSBOZXcgcGFja2FnZTogcHl0aG9uMy1sYW5ndWFnZS1zZXJ2ZXItMC4zMS40 LgoKLS0tCiBzcmNwa2dzL3B5dGhvbjMtbGFuZ3VhZ2Utc2VydmVyL3RlbXBsYXRlIHwgMjAgKysr KysrKysrKysrKysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCAyMCBpbnNlcnRpb25zKCspCiBjcmVh dGUgbW9kZSAxMDA2NDQgc3JjcGtncy9weXRob24zLWxhbmd1YWdlLXNlcnZlci90ZW1wbGF0ZQoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHl0aG9uMy1sYW5ndWFnZS1zZXJ2ZXIvdGVtcGxhdGUgYi9z cmNwa2dzL3B5dGhvbjMtbGFuZ3VhZ2Utc2VydmVyL3RlbXBsYXRlCm5ldyBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5kNWMxYWE3ZmZmMAotLS0gL2Rldi9udWxsCisrKyBiL3Ny Y3BrZ3MvcHl0aG9uMy1sYW5ndWFnZS1zZXJ2ZXIvdGVtcGxhdGUKQEAgLTAsMCArMSwyMCBAQAor IyBUZW1wbGF0ZSBmaWxlIGZvciAncHl0aG9uMy1sYW5ndWFnZS1zZXJ2ZXInCitwa2duYW1lPXB5 dGhvbjMtbGFuZ3VhZ2Utc2VydmVyCit2ZXJzaW9uPTAuMzEuNAorcmV2aXNpb249MQorYXJjaHM9 bm9hcmNoCit3cmtzcmM9IiR7cGtnbmFtZS8zfS0ke3ZlcnNpb259IgorYnVpbGRfc3R5bGU9cHl0 aG9uMy1tb2R1bGUKK2hvc3RtYWtlZGVwZW5kcz0icHl0aG9uMy1zZXR1cHRvb2xzIgorZGVwZW5k cz0icHl0aG9uMy1mdXR1cmUgcHl0aG9uMy1qZWRpIHB5dGhvbjMtcGx1Z2d5IHB5dGhvbjMtanNv bnJwYy1zZXJ2ZXIgcHl0aG9uMy11bHRyYWpzb24KKyBweXRob24zLXNldHVwdG9vbHMiCitzaG9y dF9kZXNjPSJQeXRob24gaW1wbGVtZW50YXRpb24gb2YgdGhlIExhbmd1YWdlIFNlcnZlciBQcm90 b2NvbCIKK21haW50YWluZXI9Ims0bGVnIDxkMHhpQGluYm94LnJ1PiIKK2xpY2Vuc2U9Ik1JVCIK K2hvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vcGFsYW50aXIvcHl0aG9uLWxhbmd1YWdlLXNl cnZlciIKK2Rpc3RmaWxlcz0iJHtQWVBJX1NJVEV9L3AvJHtwa2duYW1lLzN9LyR7cGtnbmFtZS8z fS0ke3ZlcnNpb259LnRhci5neiIKK2NoZWNrc3VtPTY4ZDFhNWVkMjA3MTRlNDVlZTQxNzM0OGFl NDZkZTQ1YWI0ZWQzMmM2YzAyYWQxNDdjYmI5ZDdlYTUyOTNhZGIKKworcG9zdF9pbnN0YWxsKCkg eworCXZsaWNlbnNlIExJQ0VOU0UKK30KCkZyb20gN2E5OWZmZTVkMTIzMzcyYWJiMmQwOWIzNjBi ZDU3MTAwZGM1ZmYxNiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogazRsZWcgPGQweGlA aW5ib3gucnU+CkRhdGU6IE1vbiwgMzAgRGVjIDIwMTkgMTk6MTA6MjYgKzAzMDAKU3ViamVjdDog W1BBVENIIDQvNV0gTmV3IHBhY2thZ2U6IHB5dGhvbjMtanNvbnJwYy1zZXJ2ZXItMC4zLjIuCgot LS0KIC4uLi9wYXRjaGVzL3B5dGhvbi0zLjgucGF0Y2ggICAgICAgICAgICAgICAgICB8IDYwICsr KysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvcHl0aG9uMy1qc29ucnBjLXNlcnZlci90ZW1wbGF0 ZSAgICAgICB8IDIwICsrKysrKysKIDIgZmlsZXMgY2hhbmdlZCwgODAgaW5zZXJ0aW9ucygrKQog Y3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcHl0aG9uMy1qc29ucnBjLXNlcnZlci9wYXRjaGVz L3B5dGhvbi0zLjgucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3B5dGhvbjMtanNv bnJwYy1zZXJ2ZXIvdGVtcGxhdGUKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3B5dGhvbjMtanNvbnJw Yy1zZXJ2ZXIvcGF0Y2hlcy9weXRob24tMy44LnBhdGNoIGIvc3JjcGtncy9weXRob24zLWpzb25y cGMtc2VydmVyL3BhdGNoZXMvcHl0aG9uLTMuOC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAwMDAwMDAwMDAwMC4uNjdkMTMwZWJjY2IKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dz L3B5dGhvbjMtanNvbnJwYy1zZXJ2ZXIvcGF0Y2hlcy9weXRob24tMy44LnBhdGNoCkBAIC0wLDAg KzEsNjAgQEAKK2RpZmYgLXVwcmIgcHl0aG9uLWpzb25ycGMtc2VydmVyLTAuMi4wLm9yaWcvcHls c19qc29ucnBjL2VuZHBvaW50LnB5IHB5dGhvbi1qc29ucnBjLXNlcnZlci0wLjIuMC9weWxzX2pz b25ycGMvZW5kcG9pbnQucHkKKy0tLSBweXRob24tanNvbnJwYy1zZXJ2ZXItMC4yLjAub3JpZy9w eWxzX2pzb25ycGMvZW5kcG9pbnQucHkJMjAxOS0wNi0yNyAxODo0MjoyMi4wMDAwMDAwMDAgKzAz MDAKKysrKyBweXRob24tanNvbnJwYy1zZXJ2ZXItMC4yLjAvcHlsc19qc29ucnBjL2VuZHBvaW50 LnB5CTIwMTktMTEtMDIgMjM6MjQ6NTkuNDA3ODUxMjA4ICswMjAwCitAQCAtOTgsNyArOTgsNyBA QCBjbGFzcyBFbmRwb2ludChvYmplY3QpOgorICAgICAgICAgICAgIG1lc3NhZ2UgKGRpY3QpOiBU aGUgSlNPTiBSUEMgbWVzc2FnZSBzZW50IGJ5IHRoZSBjbGllbnQKKyAgICAgICAgICIiIgorICAg ICAgICAgaWYgJ2pzb25ycGMnIG5vdCBpbiBtZXNzYWdlIG9yIG1lc3NhZ2VbJ2pzb25ycGMnXSAh PSBKU09OUlBDX1ZFUlNJT046CistICAgICAgICAgICAgbG9nLndhcm4oIlVua25vd24gbWVzc2Fn ZSB0eXBlICVzIiwgbWVzc2FnZSkKKysgICAgICAgICAgICBsb2cud2FybmluZygiVW5rbm93biBt ZXNzYWdlIHR5cGUgJXMiLCBtZXNzYWdlKQorICAgICAgICAgICAgIHJldHVybgorIAorICAgICAg ICAgaWYgJ2lkJyBub3QgaW4gbWVzc2FnZToKK0BAIC0xMzUsNyArMTM1LDcgQEAgY2xhc3MgRW5k cG9pbnQob2JqZWN0KToKKyAgICAgICAgIHRyeToKKyAgICAgICAgICAgICBoYW5kbGVyID0gc2Vs Zi5fZGlzcGF0Y2hlclttZXRob2RdCisgICAgICAgICBleGNlcHQgS2V5RXJyb3I6CistICAgICAg ICAgICAgbG9nLndhcm4oIklnbm9yaW5nIG5vdGlmaWNhdGlvbiBmb3IgdW5rbm93biBtZXRob2Qg JXMiLCBtZXRob2QpCisrICAgICAgICAgICAgbG9nLndhcm5pbmcoIklnbm9yaW5nIG5vdGlmaWNh dGlvbiBmb3IgdW5rbm93biBtZXRob2QgJXMiLCBtZXRob2QpCisgICAgICAgICAgICAgcmV0dXJu CisgCisgICAgICAgICB0cnk6CitAQCAtMTY1LDcgKzE2NSw3IEBAIGNsYXNzIEVuZHBvaW50KG9i amVjdCk6CisgICAgICAgICByZXF1ZXN0X2Z1dHVyZSA9IHNlbGYuX2NsaWVudF9yZXF1ZXN0X2Z1 dHVyZXMucG9wKG1zZ19pZCwgTm9uZSkKKyAKKyAgICAgICAgIGlmIG5vdCByZXF1ZXN0X2Z1dHVy ZToKKy0gICAgICAgICAgICBsb2cud2FybigiUmVjZWl2ZWQgY2FuY2VsIG5vdGlmaWNhdGlvbiBm b3IgdW5rbm93biBtZXNzYWdlIGlkICVzIiwgbXNnX2lkKQorKyAgICAgICAgICAgIGxvZy53YXJu aW5nKCJSZWNlaXZlZCBjYW5jZWwgbm90aWZpY2F0aW9uIGZvciB1bmtub3duIG1lc3NhZ2UgaWQg JXMiLCBtc2dfaWQpCisgICAgICAgICAgICAgcmV0dXJuCisgCisgICAgICAgICAjIFdpbGwgb25s eSB3b3JrIGlmIHRoZSByZXF1ZXN0IGhhc24ndCBzdGFydGVkIGV4ZWN1dGluZworQEAgLTIzMCwx MiArMjMwLDEzIEBAIGNsYXNzIEVuZHBvaW50KG9iamVjdCk6CisgICAgICAgICByZXF1ZXN0X2Z1 dHVyZSA9IHNlbGYuX3NlcnZlcl9yZXF1ZXN0X2Z1dHVyZXMucG9wKG1zZ19pZCwgTm9uZSkKKyAK KyAgICAgICAgIGlmIG5vdCByZXF1ZXN0X2Z1dHVyZToKKy0gICAgICAgICAgICBsb2cud2Fybigi UmVjZWl2ZWQgcmVzcG9uc2UgdG8gdW5rbm93biBtZXNzYWdlIGlkICVzIiwgbXNnX2lkKQorKyAg ICAgICAgICAgIGxvZy53YXJuaW5nKCJSZWNlaXZlZCByZXNwb25zZSB0byB1bmtub3duIG1lc3Nh Z2UgaWQgJXMiLCBtc2dfaWQpCisgICAgICAgICAgICAgcmV0dXJuCisgCisgICAgICAgICBpZiBl cnJvciBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICBsb2cuZGVidWcoIlJlY2VpdmVkIGVycm9y IHJlc3BvbnNlIHRvIG1lc3NhZ2UgJXM6ICVzIiwgbXNnX2lkLCBlcnJvcikKKyAgICAgICAgICAg ICByZXF1ZXN0X2Z1dHVyZS5zZXRfZXhjZXB0aW9uKEpzb25ScGNFeGNlcHRpb24uZnJvbV9kaWN0 KGVycm9yKSkKKysgICAgICAgICAgICByZXR1cm4KKyAKKyAgICAgICAgIGxvZy5kZWJ1ZygiUmVj ZWl2ZWQgcmVzdWx0IGZvciBtZXNzYWdlICVzOiAlcyIsIG1zZ19pZCwgcmVzdWx0KQorICAgICAg ICAgcmVxdWVzdF9mdXR1cmUuc2V0X3Jlc3VsdChyZXN1bHQpCitkaWZmIC11cHJiIHB5dGhvbi1q c29ucnBjLXNlcnZlci0wLjIuMC5vcmlnL3Rlc3QvdGVzdF9lbmRwb2ludC5weSBweXRob24tanNv bnJwYy1zZXJ2ZXItMC4yLjAvdGVzdC90ZXN0X2VuZHBvaW50LnB5CistLS0gcHl0aG9uLWpzb25y cGMtc2VydmVyLTAuMi4wLm9yaWcvdGVzdC90ZXN0X2VuZHBvaW50LnB5CTIwMTktMDYtMjcgMTg6 NDI6MjIuMDAwMDAwMDAwICswMzAwCisrKysgcHl0aG9uLWpzb25ycGMtc2VydmVyLTAuMi4wL3Rl c3QvdGVzdF9lbmRwb2ludC5weQkyMDE5LTExLTAyIDIzOjI0OjIxLjAzMzgzODcyOSArMDIwMAor QEAgLTExNSw5ICsxMTUsOSBAQCBkZWYgdGVzdF9yZXF1ZXN0X2NhbmNlbChlbmRwb2ludCwgY29u c3VtCisgICAgICAgICAncGFyYW1zJzogeydpZCc6IE1TR19JRH0KKyAgICAgfSkKKyAKKy0gICAg d2l0aCBweXRlc3QucmFpc2VzKGV4Y2VwdGlvbnMuSnNvblJwY0V4Y2VwdGlvbikgYXMgZXhjX2lu Zm86CisrICAgIHdpdGggcHl0ZXN0LnJhaXNlcygoZXhjZXB0aW9ucy5Kc29uUnBjRXhjZXB0aW9u LCBmdXR1cmVzLkNhbmNlbGxlZEVycm9yKSkgYXMgZXhjX2luZm86CisgICAgICAgICBhc3NlcnQg ZnV0dXJlLnJlc3VsdCh0aW1lb3V0PTIpCistICAgIGFzc2VydCBleGNfaW5mby50eXBlID09IGV4 Y2VwdGlvbnMuSnNvblJwY1JlcXVlc3RDYW5jZWxsZWQKKysgICAgYXNzZXJ0IGV4Y19pbmZvLnR5 cGUgaW4gKGV4Y2VwdGlvbnMuSnNvblJwY1JlcXVlc3RDYW5jZWxsZWQsIGZ1dHVyZXMuQ2FuY2Vs bGVkRXJyb3IpCisgCisgCisgZGVmIHRlc3RfY29uc3VtZV9ub3RpZmljYXRpb24oZW5kcG9pbnQs IGRpc3BhdGNoZXIpOgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9weXRob24zLWpzb25ycGMtc2VydmVy L3RlbXBsYXRlIGIvc3JjcGtncy9weXRob24zLWpzb25ycGMtc2VydmVyL3RlbXBsYXRlCm5ldyBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi44MGQ4ZWM2YjM5ZQotLS0gL2Rldi9u dWxsCisrKyBiL3NyY3BrZ3MvcHl0aG9uMy1qc29ucnBjLXNlcnZlci90ZW1wbGF0ZQpAQCAtMCww ICsxLDIwIEBACisjIFRlbXBsYXRlIGZpbGUgZm9yICdweXRob24zLWpzb25ycGMtc2VydmVyJwor cGtnbmFtZT1weXRob24zLWpzb25ycGMtc2VydmVyCit2ZXJzaW9uPTAuMy4yCityZXZpc2lvbj0x CithcmNocz1ub2FyY2gKK3dya3NyYz0iJHtwa2duYW1lLzN9LSR7dmVyc2lvbn0iCitidWlsZF9z dHlsZT1weXRob24zLW1vZHVsZQoraG9zdG1ha2VkZXBlbmRzPSJweXRob24zLXNldHVwdG9vbHMi CitkZXBlbmRzPSJweXRob24zLWZ1dHVyZSBweXRob24zLXVsdHJhanNvbiIKK3Nob3J0X2Rlc2M9 IlB5dGhvbiBsaWJyYXJ5IGltcGxlbWVudGluZyBhc3luY2hyb25vdXMgSlNPTiBSUEMgc2VydmVy IgorbWFpbnRhaW5lcj0iazRsZWcgPGQweGlAaW5ib3gucnU+IgorbGljZW5zZT0iTUlUIgoraG9t ZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNvbS9wYWxhbnRpci9weXRob24tanNvbnJwYy1zZXJ2ZXIi CitkaXN0ZmlsZXM9IiR7UFlQSV9TSVRFfS9wLyR7cGtnbmFtZS8zfS8ke3BrZ25hbWUvM30tJHt2 ZXJzaW9ufS50YXIuZ3oiCitjaGVja3N1bT0wNWJjZjI2ZWFjNGM5OGM5NmFmZWMyNjZhY2RmNTYz ZDhmNDU0ZTEyNjEyZGE5YTNmOWFhYmI2NmM0NmRhZjM1CitwYXRjaF9hcmdzPSItTnAxIgorCitw b3N0X2luc3RhbGwoKSB7CisJdmxpY2Vuc2UgTElDRU5TRQorfQoKRnJvbSBlZGNjOWYzNjBkZjcw NzIxMjAzZDZiNjliYTJkZTZkMTc5ZjNjNTBkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiBrNGxlZyA8ZDB4aUBpbmJveC5ydT4KRGF0ZTogTW9uLCAzMCBEZWMgMjAxOSAxOToxMDo0MCAr MDMwMApTdWJqZWN0OiBbUEFUQ0ggNS81XSBOZXcgcGFja2FnZTogcHl0aG9uMy11bHRyYWpzb24t MS4zNS4KCi0tLQogLi4uc3RhdGljLXRvLUMtZnVuY3Rpb25zLXdoZXJlLXBvc3NpYmxlLnBhdGNo IHwgNTk3ICsrKysrKysrKysrKysrKysrKwogLi4uL3BhdGNoZXMvbG93ZXItc3RhY2stdXNhZ2Uu cGF0Y2ggICAgICAgICAgIHwgIDE5ICsKIHNyY3BrZ3MvcHl0aG9uMy11bHRyYWpzb24vdGVtcGxh dGUgICAgICAgICAgICB8ICAxNSArCiAzIGZpbGVzIGNoYW5nZWQsIDYzMSBpbnNlcnRpb25zKCsp CiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9weXRob24zLXVsdHJhanNvbi9wYXRjaGVzL2Fk ZGVkLXN0YXRpYy10by1DLWZ1bmN0aW9ucy13aGVyZS1wb3NzaWJsZS5wYXRjaAogY3JlYXRlIG1v ZGUgMTAwNjQ0IHNyY3BrZ3MvcHl0aG9uMy11bHRyYWpzb24vcGF0Y2hlcy9sb3dlci1zdGFjay11 c2FnZS5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcHl0aG9uMy11bHRyYWpzb24v dGVtcGxhdGUKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3B5dGhvbjMtdWx0cmFqc29uL3BhdGNoZXMv YWRkZWQtc3RhdGljLXRvLUMtZnVuY3Rpb25zLXdoZXJlLXBvc3NpYmxlLnBhdGNoIGIvc3JjcGtn cy9weXRob24zLXVsdHJhanNvbi9wYXRjaGVzL2FkZGVkLXN0YXRpYy10by1DLWZ1bmN0aW9ucy13 aGVyZS1wb3NzaWJsZS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw MC4uMmUxOTdkZDJiOTkKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3B5dGhvbjMtdWx0cmFq c29uL3BhdGNoZXMvYWRkZWQtc3RhdGljLXRvLUMtZnVuY3Rpb25zLXdoZXJlLXBvc3NpYmxlLnBh dGNoCkBAIC0wLDAgKzEsNTk3IEBACitGcm9tIDZjZjZjN2ZmMjVjODgzMzQ5ZThlOWU1NDY4ZTYx NDk4MzU4ZTJlOTEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBXR0ggPHdnaEB0b3Js YW4ucnU+CitEYXRlOiBTYXQsIDI3IEF1ZyAyMDE2IDE3OjM0OjIyICswMzAwCitTdWJqZWN0OiBb UEFUQ0hdIGFkZGVkICJzdGF0aWMiIHRvIEMgZnVuY3Rpb25zLCB3aGVyZSBwb3NzaWJsZQorCisx LiBJdCByZWR1Y2VzIGNsdXR0ZXIgaW4gc3ltYm9sIHRhYmxlLgorMi4gSXQgZml4ZXMgaXNzdWVz IHdpdGggQzk5IGlubGluZSBzZW1hbnRpY3MgZm9yIGZ1bmN0aW9ucworICAgbWFya2VkIGFzIGlu bGluZSAoIzIzNywgIzE4MCwgIzIyMiksIHdoaWNoIG1hbmlmZXN0cworICAgd2hlbiBjb21waWxl ZCB3aXRoIEdDQz49NS4KKy0tLQorIGxpYi91bHRyYWpzb25kZWMuYyB8IDI0ICsrKysrKysrLS0t LS0tLS0KKyBsaWIvdWx0cmFqc29uZW5jLmMgfCAyNCArKysrKysrKy0tLS0tLS0tCisgcHl0aG9u L0pTT050b09iai5jIHwgMjQgKysrKysrKystLS0tLS0tLQorIHB5dGhvbi9vYmpUb0pTT04uYyB8 IDcyICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyA0IGZp bGVzIGNoYW5nZWQsIDcyIGluc2VydGlvbnMoKyksIDcyIGRlbGV0aW9ucygtKQorCitkaWZmIC0t Z2l0IGEvbGliL3VsdHJhanNvbmRlYy5jIGIvbGliL3VsdHJhanNvbmRlYy5jCitpbmRleCAyMWE3 MzJlLi4xOWVmYzYwIDEwMDY0NAorLS0tIGEvbGliL3VsdHJhanNvbmRlYy5jCisrKysgYi9saWIv dWx0cmFqc29uZGVjLmMKK0BAIC02Niw3ICs2Niw3IEBAIHN0cnVjdCBEZWNvZGVyU3RhdGUKKyAg IEpTT05PYmplY3REZWNvZGVyICpkZWM7CisgfTsKKyAKKy1KU09CSiBGQVNUQ0FMTF9NU1ZDIGRl Y29kZV9hbnkoIHN0cnVjdCBEZWNvZGVyU3RhdGUgKmRzKSBGQVNUQ0FMTF9BVFRSOworK3N0YXRp YyBKU09CSiBGQVNUQ0FMTF9NU1ZDIGRlY29kZV9hbnkoIHN0cnVjdCBEZWNvZGVyU3RhdGUgKmRz KSBGQVNUQ0FMTF9BVFRSOworIHR5cGVkZWYgSlNPQkogKCpQRk5fREVDT0RFUikoIHN0cnVjdCBE ZWNvZGVyU3RhdGUgKmRzKTsKKyAKKyBzdGF0aWMgSlNPQkogU2V0RXJyb3IoIHN0cnVjdCBEZWNv ZGVyU3RhdGUgKmRzLCBpbnQgb2Zmc2V0LCBjb25zdCBjaGFyICptZXNzYWdlKQorQEAgLTc2LDEz ICs3NiwxMyBAQCBzdGF0aWMgSlNPQkogU2V0RXJyb3IoIHN0cnVjdCBEZWNvZGVyU3RhdGUgKmRz LCBpbnQgb2Zmc2V0LCBjb25zdCBjaGFyICptZXNzYWdlKQorICAgcmV0dXJuIE5VTEw7CisgfQor IAorLWRvdWJsZSBjcmVhdGVEb3VibGUoZG91YmxlIGludE5lZywgZG91YmxlIGludFZhbHVlLCBk b3VibGUgZnJjVmFsdWUsIGludCBmcmNEZWNpbWFsQ291bnQpCisrc3RhdGljIGRvdWJsZSBjcmVh dGVEb3VibGUoZG91YmxlIGludE5lZywgZG91YmxlIGludFZhbHVlLCBkb3VibGUgZnJjVmFsdWUs IGludCBmcmNEZWNpbWFsQ291bnQpCisgeworICAgc3RhdGljIGNvbnN0IGRvdWJsZSBnX3BvdzEw W10gPSB7MS4wLCAwLjEsIDAuMDEsIDAuMDAxLCAwLjAwMDEsIDAuMDAwMDEsIDAuMDAwMDAxLDAu MDAwMDAwMSwgMC4wMDAwMDAwMSwgMC4wMDAwMDAwMDEsIDAuMDAwMDAwMDAwMSwgMC4wMDAwMDAw MDAwMSwgMC4wMDAwMDAwMDAwMDEsIDAuMDAwMDAwMDAwMDAwMSwgMC4wMDAwMDAwMDAwMDAwMSwg MC4wMDAwMDAwMDAwMDAwMDF9OworICAgcmV0dXJuIChpbnRWYWx1ZSArIChmcmNWYWx1ZSAqIGdf cG93MTBbZnJjRGVjaW1hbENvdW50XSkpICogaW50TmVnOworIH0KKyAKKy1GQVNUQ0FMTF9BVFRS IEpTT0JKIEZBU1RDQUxMX01TVkMgZGVjb2RlUHJlY2lzZUZsb2F0KHN0cnVjdCBEZWNvZGVyU3Rh dGUgKmRzKQorK3N0YXRpYyBGQVNUQ0FMTF9BVFRSIEpTT0JKIEZBU1RDQUxMX01TVkMgZGVjb2Rl UHJlY2lzZUZsb2F0KHN0cnVjdCBEZWNvZGVyU3RhdGUgKmRzKQorIHsKKyAgIGNoYXIgKmVuZDsK KyAgIGRvdWJsZSB2YWx1ZTsKK0BAIC05OSw3ICs5OSw3IEBAIEZBU1RDQUxMX0FUVFIgSlNPQkog RkFTVENBTExfTVNWQyBkZWNvZGVQcmVjaXNlRmxvYXQoc3RydWN0IERlY29kZXJTdGF0ZSAqZHMp CisgICByZXR1cm4gZHMtPmRlYy0+bmV3RG91YmxlKGRzLT5wcnYsIHZhbHVlKTsKKyB9CisgCist RkFTVENBTExfQVRUUiBKU09CSiBGQVNUQ0FMTF9NU1ZDIGRlY29kZV9udW1lcmljIChzdHJ1Y3Qg RGVjb2RlclN0YXRlICpkcykKKytzdGF0aWMgRkFTVENBTExfQVRUUiBKU09CSiBGQVNUQ0FMTF9N U1ZDIGRlY29kZV9udW1lcmljIChzdHJ1Y3QgRGVjb2RlclN0YXRlICpkcykKKyB7CisgICBpbnQg aW50TmVnID0gMTsKKyAgIGludCBtYW50U2l6ZSA9IDA7CitAQCAtMzA5LDcgKzMwOSw3IEBAIEZB U1RDQUxMX0FUVFIgSlNPQkogRkFTVENBTExfTVNWQyBkZWNvZGVfbnVtZXJpYyAoc3RydWN0IERl Y29kZXJTdGF0ZSAqZHMpCisgICByZXR1cm4gZHMtPmRlYy0+bmV3RG91YmxlIChkcy0+cHJ2LCBj cmVhdGVEb3VibGUoIChkb3VibGUpIGludE5lZywgKGRvdWJsZSkgaW50VmFsdWUgLCBmcmNWYWx1 ZSwgZGVjaW1hbENvdW50KSAqIHBvdygxMC4wLCBleHBWYWx1ZSAqIGV4cE5lZykpOworIH0KKyAK Ky1GQVNUQ0FMTF9BVFRSIEpTT0JKIEZBU1RDQUxMX01TVkMgZGVjb2RlX3RydWUgKCBzdHJ1Y3Qg RGVjb2RlclN0YXRlICpkcykKKytzdGF0aWMgRkFTVENBTExfQVRUUiBKU09CSiBGQVNUQ0FMTF9N U1ZDIGRlY29kZV90cnVlICggc3RydWN0IERlY29kZXJTdGF0ZSAqZHMpCisgeworICAgY2hhciAq b2Zmc2V0ID0gZHMtPnN0YXJ0OworICAgb2Zmc2V0ICsrOworQEAgLTMyOSw3ICszMjksNyBAQCBG QVNUQ0FMTF9BVFRSIEpTT0JKIEZBU1RDQUxMX01TVkMgZGVjb2RlX3RydWUgKCBzdHJ1Y3QgRGVj b2RlclN0YXRlICpkcykKKyAgIHJldHVybiBTZXRFcnJvcihkcywgLTEsICJVbmV4cGVjdGVkIGNo YXJhY3RlciBmb3VuZCB3aGVuIGRlY29kaW5nICd0cnVlJyIpOworIH0KKyAKKy1GQVNUQ0FMTF9B VFRSIEpTT0JKIEZBU1RDQUxMX01TVkMgZGVjb2RlX2ZhbHNlICggc3RydWN0IERlY29kZXJTdGF0 ZSAqZHMpCisrc3RhdGljIEZBU1RDQUxMX0FUVFIgSlNPQkogRkFTVENBTExfTVNWQyBkZWNvZGVf ZmFsc2UgKCBzdHJ1Y3QgRGVjb2RlclN0YXRlICpkcykKKyB7CisgICBjaGFyICpvZmZzZXQgPSBk cy0+c3RhcnQ7CisgICBvZmZzZXQgKys7CitAQCAtMzUxLDcgKzM1MSw3IEBAIEZBU1RDQUxMX0FU VFIgSlNPQkogRkFTVENBTExfTVNWQyBkZWNvZGVfZmFsc2UgKCBzdHJ1Y3QgRGVjb2RlclN0YXRl ICpkcykKKyAgIHJldHVybiBTZXRFcnJvcihkcywgLTEsICJVbmV4cGVjdGVkIGNoYXJhY3RlciBm b3VuZCB3aGVuIGRlY29kaW5nICdmYWxzZSciKTsKKyB9CisgCistRkFTVENBTExfQVRUUiBKU09C SiBGQVNUQ0FMTF9NU1ZDIGRlY29kZV9udWxsICggc3RydWN0IERlY29kZXJTdGF0ZSAqZHMpCisr c3RhdGljIEZBU1RDQUxMX0FUVFIgSlNPQkogRkFTVENBTExfTVNWQyBkZWNvZGVfbnVsbCAoIHN0 cnVjdCBEZWNvZGVyU3RhdGUgKmRzKQorIHsKKyAgIGNoYXIgKm9mZnNldCA9IGRzLT5zdGFydDsK KyAgIG9mZnNldCArKzsKK0BAIC0zNzEsNyArMzcxLDcgQEAgRkFTVENBTExfQVRUUiBKU09CSiBG QVNUQ0FMTF9NU1ZDIGRlY29kZV9udWxsICggc3RydWN0IERlY29kZXJTdGF0ZSAqZHMpCisgICBy ZXR1cm4gU2V0RXJyb3IoZHMsIC0xLCAiVW5leHBlY3RlZCBjaGFyYWN0ZXIgZm91bmQgd2hlbiBk ZWNvZGluZyAnbnVsbCciKTsKKyB9CisgCistRkFTVENBTExfQVRUUiB2b2lkIEZBU1RDQUxMX01T VkMgU2tpcFdoaXRlc3BhY2Uoc3RydWN0IERlY29kZXJTdGF0ZSAqZHMpCisrc3RhdGljIEZBU1RD QUxMX0FUVFIgdm9pZCBGQVNUQ0FMTF9NU1ZDIFNraXBXaGl0ZXNwYWNlKHN0cnVjdCBEZWNvZGVy U3RhdGUgKmRzKQorIHsKKyAgIGNoYXIgKm9mZnNldCA9IGRzLT5zdGFydDsKKyAKK0BAIC00MjIs NyArNDIyLDcgQEAgc3RhdGljIGNvbnN0IEpTVUlOVDggZ19kZWNvZGVyTG9va3VwWzI1Nl0gPQor ICAgLyogMHhmMCAqLyA0LCA0LCA0LCA0LCA0LCA0LCA0LCA0LCBEU19VVEZMRU5FUlJPUiwgRFNf VVRGTEVORVJST1IsIERTX1VURkxFTkVSUk9SLCBEU19VVEZMRU5FUlJPUiwgRFNfVVRGTEVORVJS T1IsIERTX1VURkxFTkVSUk9SLCBEU19VVEZMRU5FUlJPUiwgRFNfVVRGTEVORVJST1IsCisgfTsK KyAKKy1GQVNUQ0FMTF9BVFRSIEpTT0JKIEZBU1RDQUxMX01TVkMgZGVjb2RlX3N0cmluZyAoIHN0 cnVjdCBEZWNvZGVyU3RhdGUgKmRzKQorK3N0YXRpYyBGQVNUQ0FMTF9BVFRSIEpTT0JKIEZBU1RD QUxMX01TVkMgZGVjb2RlX3N0cmluZyAoIHN0cnVjdCBEZWNvZGVyU3RhdGUgKmRzKQorIHsKKyAg IEpTVVRGMTYgc3VyWzJdID0geyAwIH07CisgICBpbnQgaVN1ciA9IDA7CitAQCAtNjcyLDcgKzY3 Miw3IEBAIEZBU1RDQUxMX0FUVFIgSlNPQkogRkFTVENBTExfTVNWQyBkZWNvZGVfc3RyaW5nICgg c3RydWN0IERlY29kZXJTdGF0ZSAqZHMpCisgICB9CisgfQorIAorLUZBU1RDQUxMX0FUVFIgSlNP QkogRkFTVENBTExfTVNWQyBkZWNvZGVfYXJyYXkoc3RydWN0IERlY29kZXJTdGF0ZSAqZHMpCisr c3RhdGljIEZBU1RDQUxMX0FUVFIgSlNPQkogRkFTVENBTExfTVNWQyBkZWNvZGVfYXJyYXkoc3Ry dWN0IERlY29kZXJTdGF0ZSAqZHMpCisgeworICAgSlNPQkogaXRlbVZhbHVlOworICAgSlNPQkog bmV3T2JqOworQEAgLTczNiw3ICs3MzYsNyBAQCBGQVNUQ0FMTF9BVFRSIEpTT0JKIEZBU1RDQUxM X01TVkMgZGVjb2RlX2FycmF5KHN0cnVjdCBEZWNvZGVyU3RhdGUgKmRzKQorICAgfQorIH0KKyAK Ky1GQVNUQ0FMTF9BVFRSIEpTT0JKIEZBU1RDQUxMX01TVkMgZGVjb2RlX29iamVjdCggc3RydWN0 IERlY29kZXJTdGF0ZSAqZHMpCisrc3RhdGljIEZBU1RDQUxMX0FUVFIgSlNPQkogRkFTVENBTExf TVNWQyBkZWNvZGVfb2JqZWN0KCBzdHJ1Y3QgRGVjb2RlclN0YXRlICpkcykKKyB7CisgICBKU09C SiBpdGVtTmFtZTsKKyAgIEpTT0JKIGl0ZW1WYWx1ZTsKK0BAIC04MTksNyArODE5LDcgQEAgRkFT VENBTExfQVRUUiBKU09CSiBGQVNUQ0FMTF9NU1ZDIGRlY29kZV9vYmplY3QoIHN0cnVjdCBEZWNv ZGVyU3RhdGUgKmRzKQorICAgfQorIH0KKyAKKy1GQVNUQ0FMTF9BVFRSIEpTT0JKIEZBU1RDQUxM X01TVkMgZGVjb2RlX2FueShzdHJ1Y3QgRGVjb2RlclN0YXRlICpkcykKKytzdGF0aWMgRkFTVENB TExfQVRUUiBKU09CSiBGQVNUQ0FMTF9NU1ZDIGRlY29kZV9hbnkoc3RydWN0IERlY29kZXJTdGF0 ZSAqZHMpCisgeworICAgZm9yICg7OykKKyAgIHsKK2RpZmYgLS1naXQgYS9saWIvdWx0cmFqc29u ZW5jLmMgYi9saWIvdWx0cmFqc29uZW5jLmMKK2luZGV4IDZjMWIxMjAuLmYzMzAxNzEgMTAwNjQ0 CistLS0gYS9saWIvdWx0cmFqc29uZW5jLmMKKysrKyBiL2xpYi91bHRyYWpzb25lbmMuYworQEAg LTExMiw3ICsxMTIsNyBAQCBzdGF0aWMgdm9pZCBTZXRFcnJvciAoSlNPQkogb2JqLCBKU09OT2Jq ZWN0RW5jb2RlciAqZW5jLCBjb25zdCBjaGFyICptZXNzYWdlKQorIC8qCisgRklYTUU6IEtlZXAg dHJhY2sgb2YgaG93IGJpZyB0aGVzZSBnZXQgYWNyb3NzIHNldmVyYWwgZW5jb2RlciBjYWxscyBh bmQgdHJ5IHRvIG1ha2UgYW4gZXN0aW1hdGUKKyBUaGF0IHdheSB3ZSB3b24ndCBydW4gb3VyIGhl YWQgaW50byB0aGUgd2FsbCBlYWNoIGNhbGwgKi8KKy12b2lkIEJ1ZmZlcl9SZWFsbG9jIChKU09O T2JqZWN0RW5jb2RlciAqZW5jLCBzaXplX3QgY2JOZWVkZWQpCisrc3RhdGljIHZvaWQgQnVmZmVy X1JlYWxsb2MgKEpTT05PYmplY3RFbmNvZGVyICplbmMsIHNpemVfdCBjYk5lZWRlZCkKKyB7Cisg ICBzaXplX3QgY3VyU2l6ZSA9IGVuYy0+ZW5kIC0gZW5jLT5zdGFydDsKKyAgIHNpemVfdCBuZXdT aXplID0gY3VyU2l6ZSAqIDI7CitAQCAtMTQ4LDcgKzE0OCw3IEBAIHZvaWQgQnVmZmVyX1JlYWxs b2MgKEpTT05PYmplY3RFbmNvZGVyICplbmMsIHNpemVfdCBjYk5lZWRlZCkKKyAgIGVuYy0+ZW5k ID0gZW5jLT5zdGFydCArIG5ld1NpemU7CisgfQorIAorLUZBU1RDQUxMX0FUVFIgSU5MSU5FX1BS RUZJWCB2b2lkIEZBU1RDQUxMX01TVkMgQnVmZmVyX0FwcGVuZFNob3J0SGV4VW5jaGVja2VkIChj aGFyICpvdXRwdXRPZmZzZXQsIHVuc2lnbmVkIHNob3J0IHZhbHVlKQorK3N0YXRpYyBGQVNUQ0FM TF9BVFRSIElOTElORV9QUkVGSVggdm9pZCBGQVNUQ0FMTF9NU1ZDIEJ1ZmZlcl9BcHBlbmRTaG9y dEhleFVuY2hlY2tlZCAoY2hhciAqb3V0cHV0T2Zmc2V0LCB1bnNpZ25lZCBzaG9ydCB2YWx1ZSkK KyB7CisgICAqKG91dHB1dE9mZnNldCsrKSA9IGdfaGV4Q2hhcnNbKHZhbHVlICYgMHhmMDAwKSA+ PiAxMl07CisgICAqKG91dHB1dE9mZnNldCsrKSA9IGdfaGV4Q2hhcnNbKHZhbHVlICYgMHgwZjAw KSA+PiA4XTsKK0BAIC0xNTYsNyArMTU2LDcgQEAgRkFTVENBTExfQVRUUiBJTkxJTkVfUFJFRklY IHZvaWQgRkFTVENBTExfTVNWQyBCdWZmZXJfQXBwZW5kU2hvcnRIZXhVbmNoZWNrZWQgKGMKKyAg ICoob3V0cHV0T2Zmc2V0KyspID0gZ19oZXhDaGFyc1sodmFsdWUgJiAweDAwMGYpID4+IDBdOwor IH0KKyAKKy1pbnQgQnVmZmVyX0VzY2FwZVN0cmluZ1VudmFsaWRhdGVkIChKU09OT2JqZWN0RW5j b2RlciAqZW5jLCBjb25zdCBjaGFyICppbywgY29uc3QgY2hhciAqZW5kKQorK3N0YXRpYyBpbnQg QnVmZmVyX0VzY2FwZVN0cmluZ1VudmFsaWRhdGVkIChKU09OT2JqZWN0RW5jb2RlciAqZW5jLCBj b25zdCBjaGFyICppbywgY29uc3QgY2hhciAqZW5kKQorIHsKKyAgIGNoYXIgKm9mID0gKGNoYXIg KikgZW5jLT5vZmZzZXQ7CisgCitAQCAtMjYwLDcgKzI2MCw3IEBAIGludCBCdWZmZXJfRXNjYXBl U3RyaW5nVW52YWxpZGF0ZWQgKEpTT05PYmplY3RFbmNvZGVyICplbmMsIGNvbnN0IGNoYXIgKmlv LCBjb25zCisgICB9CisgfQorIAorLWludCBCdWZmZXJfRXNjYXBlU3RyaW5nVmFsaWRhdGVkIChK U09CSiBvYmosIEpTT05PYmplY3RFbmNvZGVyICplbmMsIGNvbnN0IGNoYXIgKmlvLCBjb25zdCBj aGFyICplbmQpCisrc3RhdGljIGludCBCdWZmZXJfRXNjYXBlU3RyaW5nVmFsaWRhdGVkIChKU09C SiBvYmosIEpTT05PYmplY3RFbmNvZGVyICplbmMsIGNvbnN0IGNoYXIgKmlvLCBjb25zdCBjaGFy ICplbmQpCisgeworICAgSlNVVEYzMiB1Y3M7CisgICBjaGFyICpvZiA9IChjaGFyICopIGVuYy0+ b2Zmc2V0OworQEAgLTQ5OCwxOSArNDk4LDE5IEBAIGludCBCdWZmZXJfRXNjYXBlU3RyaW5nVmFs aWRhdGVkIChKU09CSiBvYmosIEpTT05PYmplY3RFbmNvZGVyICplbmMsIGNvbnN0IGNoYXIKKyAj ZGVmaW5lIEJ1ZmZlcl9BcHBlbmRDaGFyVW5jaGVja2VkKF9fZW5jLCBfX2NocikgXAorICAgICAg ICAgICAgICAgICAqKChfX2VuYyktPm9mZnNldCsrKSA9IF9fY2hyOyBcCisgCistRkFTVENBTExf QVRUUiBJTkxJTkVfUFJFRklYIHZvaWQgRkFTVENBTExfTVNWQyBzdHJyZXZlcnNlKGNoYXIqIGJl Z2luLCBjaGFyKiBlbmQpCisrc3RhdGljIEZBU1RDQUxMX0FUVFIgSU5MSU5FX1BSRUZJWCB2b2lk IEZBU1RDQUxMX01TVkMgc3RycmV2ZXJzZShjaGFyKiBiZWdpbiwgY2hhciogZW5kKQorIHsKKyAg IGNoYXIgYXV4OworICAgd2hpbGUgKGVuZCA+IGJlZ2luKQorICAgYXV4ID0gKmVuZCwgKmVuZC0t ID0gKmJlZ2luLCAqYmVnaW4rKyA9IGF1eDsKKyB9CisgCistdm9pZCBCdWZmZXJfQXBwZW5kSW5k ZW50TmV3bGluZVVuY2hlY2tlZChKU09OT2JqZWN0RW5jb2RlciAqZW5jKQorK3N0YXRpYyB2b2lk IEJ1ZmZlcl9BcHBlbmRJbmRlbnROZXdsaW5lVW5jaGVja2VkKEpTT05PYmplY3RFbmNvZGVyICpl bmMpCisgeworICAgaWYgKGVuYy0+aW5kZW50ID4gMCkgQnVmZmVyX0FwcGVuZENoYXJVbmNoZWNr ZWQoZW5jLCAnXG4nKTsKKyB9CisgCistdm9pZCBCdWZmZXJfQXBwZW5kSW5kZW50VW5jaGVja2Vk KEpTT05PYmplY3RFbmNvZGVyICplbmMsIEpTSU5UMzIgdmFsdWUpCisrc3RhdGljIHZvaWQgQnVm ZmVyX0FwcGVuZEluZGVudFVuY2hlY2tlZChKU09OT2JqZWN0RW5jb2RlciAqZW5jLCBKU0lOVDMy IHZhbHVlKQorIHsKKyAgIGludCBpOworICAgaWYgKGVuYy0+aW5kZW50ID4gMCkKK0BAIC01MTks NyArNTE5LDcgQEAgdm9pZCBCdWZmZXJfQXBwZW5kSW5kZW50VW5jaGVja2VkKEpTT05PYmplY3RF bmNvZGVyICplbmMsIEpTSU5UMzIgdmFsdWUpCisgICAgICAgICBCdWZmZXJfQXBwZW5kQ2hhclVu Y2hlY2tlZChlbmMsICcgJyk7CisgfQorIAorLXZvaWQgQnVmZmVyX0FwcGVuZEludFVuY2hlY2tl ZChKU09OT2JqZWN0RW5jb2RlciAqZW5jLCBKU0lOVDMyIHZhbHVlKQorK3N0YXRpYyB2b2lkIEJ1 ZmZlcl9BcHBlbmRJbnRVbmNoZWNrZWQoSlNPTk9iamVjdEVuY29kZXIgKmVuYywgSlNJTlQzMiB2 YWx1ZSkKKyB7CisgICBjaGFyKiB3c3RyOworICAgSlNVSU5UMzIgdXZhbHVlID0gKHZhbHVlIDwg MCkgPyAtdmFsdWUgOiB2YWx1ZTsKK0BAIC01MzUsNyArNTM1LDcgQEAgdm9pZCBCdWZmZXJfQXBw ZW5kSW50VW5jaGVja2VkKEpTT05PYmplY3RFbmNvZGVyICplbmMsIEpTSU5UMzIgdmFsdWUpCisg ICBlbmMtPm9mZnNldCArPSAod3N0ciAtIChlbmMtPm9mZnNldCkpOworIH0KKyAKKy12b2lkIEJ1 ZmZlcl9BcHBlbmRMb25nVW5jaGVja2VkKEpTT05PYmplY3RFbmNvZGVyICplbmMsIEpTSU5UNjQg dmFsdWUpCisrc3RhdGljIHZvaWQgQnVmZmVyX0FwcGVuZExvbmdVbmNoZWNrZWQoSlNPTk9iamVj dEVuY29kZXIgKmVuYywgSlNJTlQ2NCB2YWx1ZSkKKyB7CisgICBjaGFyKiB3c3RyOworICAgSlNV SU5UNjQgdXZhbHVlID0gKHZhbHVlIDwgMCkgPyAtdmFsdWUgOiB2YWx1ZTsKK0BAIC01NTEsNyAr NTUxLDcgQEAgdm9pZCBCdWZmZXJfQXBwZW5kTG9uZ1VuY2hlY2tlZChKU09OT2JqZWN0RW5jb2Rl ciAqZW5jLCBKU0lOVDY0IHZhbHVlKQorICAgZW5jLT5vZmZzZXQgKz0gKHdzdHIgLSAoZW5jLT5v ZmZzZXQpKTsKKyB9CisgCistdm9pZCBCdWZmZXJfQXBwZW5kVW5zaWduZWRMb25nVW5jaGVja2Vk KEpTT05PYmplY3RFbmNvZGVyICplbmMsIEpTVUlOVDY0IHZhbHVlKQorK3N0YXRpYyB2b2lkIEJ1 ZmZlcl9BcHBlbmRVbnNpZ25lZExvbmdVbmNoZWNrZWQoSlNPTk9iamVjdEVuY29kZXIgKmVuYywg SlNVSU5UNjQgdmFsdWUpCisgeworICAgY2hhciogd3N0cjsKKyAgIEpTVUlOVDY0IHV2YWx1ZSA9 IHZhbHVlOworQEAgLTU2Niw3ICs1NjYsNyBAQCB2b2lkIEJ1ZmZlcl9BcHBlbmRVbnNpZ25lZExv bmdVbmNoZWNrZWQoSlNPTk9iamVjdEVuY29kZXIgKmVuYywgSlNVSU5UNjQgdmFsdWUpCisgICBl bmMtPm9mZnNldCArPSAod3N0ciAtIChlbmMtPm9mZnNldCkpOworIH0KKyAKKy1pbnQgQnVmZmVy X0FwcGVuZERvdWJsZVVuY2hlY2tlZChKU09CSiBvYmosIEpTT05PYmplY3RFbmNvZGVyICplbmMs IGRvdWJsZSB2YWx1ZSkKKytzdGF0aWMgaW50IEJ1ZmZlcl9BcHBlbmREb3VibGVVbmNoZWNrZWQo SlNPQkogb2JqLCBKU09OT2JqZWN0RW5jb2RlciAqZW5jLCBkb3VibGUgdmFsdWUpCisgeworICAg LyogaWYgaW5wdXQgaXMgbGFyZ2VyIHRoYW4gdGhyZXNfbWF4LCByZXZlcnQgdG8gZXhwb25lbnRp YWwgKi8KKyAgIGNvbnN0IGRvdWJsZSB0aHJlc19tYXggPSAoZG91YmxlKSAxZTE2IC0gMTsKK0BA IC03MTQsNyArNzE0LDcgQEAgSGFuZGxlIGludGVncmF0aW9uIGZ1bmN0aW9ucyByZXR1cm5pbmcg TlVMTCBoZXJlICovCisgRklYTUU6CisgUGVyaGFwcyBpbXBsZW1lbnQgcmVjdXJzaW9uIGRldGVj dGlvbiAqLworIAorLXZvaWQgZW5jb2RlKEpTT0JKIG9iaiwgSlNPTk9iamVjdEVuY29kZXIgKmVu YywgY29uc3QgY2hhciAqbmFtZSwgc2l6ZV90IGNiTmFtZSkKKytzdGF0aWMgdm9pZCBlbmNvZGUo SlNPQkogb2JqLCBKU09OT2JqZWN0RW5jb2RlciAqZW5jLCBjb25zdCBjaGFyICpuYW1lLCBzaXpl X3QgY2JOYW1lKQorIHsKKyAgIGNvbnN0IGNoYXIgKnZhbHVlOworICAgY2hhciAqb2JqTmFtZTsK K2RpZmYgLS1naXQgYS9weXRob24vSlNPTnRvT2JqLmMgYi9weXRob24vSlNPTnRvT2JqLmMKK2lu ZGV4IDc5ZDlmMWEuLjZjZWYwODggMTAwNjQ0CistLS0gYS9weXRob24vSlNPTnRvT2JqLmMKKysr KyBiL3B5dGhvbi9KU09OdG9PYmouYworQEAgLTQzLDcgKzQzLDcgQEAgTnVtZXJpYyBkZWNvZGVy IGRlcml2ZWQgZnJvbSBmcm9tIFRDTCBsaWJyYXJ5CisgLy8jZGVmaW5lIFBSSU5UTUFSSygpIGZw cmludGYoc3RkZXJyLCAiJXM6IE1BUksoJWQpXG4iLCBfX0ZJTEVfXywgX19MSU5FX18pCisgI2Rl ZmluZSBQUklOVE1BUksoKQorIAorLXZvaWQgT2JqZWN0X29iamVjdEFkZEtleSh2b2lkICpwcnYs IEpTT0JKIG9iaiwgSlNPQkogbmFtZSwgSlNPQkogdmFsdWUpCisrc3RhdGljIHZvaWQgT2JqZWN0 X29iamVjdEFkZEtleSh2b2lkICpwcnYsIEpTT0JKIG9iaiwgSlNPQkogbmFtZSwgSlNPQkogdmFs dWUpCisgeworICAgUHlEaWN0X1NldEl0ZW0gKG9iaiwgbmFtZSwgdmFsdWUpOworICAgUHlfREVD UkVGKCAoUHlPYmplY3QgKikgbmFtZSk7CitAQCAtNTEsNTkgKzUxLDU5IEBAIHZvaWQgT2JqZWN0 X29iamVjdEFkZEtleSh2b2lkICpwcnYsIEpTT0JKIG9iaiwgSlNPQkogbmFtZSwgSlNPQkogdmFs dWUpCisgICByZXR1cm47CisgfQorIAorLXZvaWQgT2JqZWN0X2FycmF5QWRkSXRlbSh2b2lkICpw cnYsIEpTT0JKIG9iaiwgSlNPQkogdmFsdWUpCisrc3RhdGljIHZvaWQgT2JqZWN0X2FycmF5QWRk SXRlbSh2b2lkICpwcnYsIEpTT0JKIG9iaiwgSlNPQkogdmFsdWUpCisgeworICAgUHlMaXN0X0Fw cGVuZChvYmosIHZhbHVlKTsKKyAgIFB5X0RFQ1JFRiggKFB5T2JqZWN0ICopIHZhbHVlKTsKKyAg IHJldHVybjsKKyB9CisgCistSlNPQkogT2JqZWN0X25ld1N0cmluZyh2b2lkICpwcnYsIHdjaGFy X3QgKnN0YXJ0LCB3Y2hhcl90ICplbmQpCisrc3RhdGljIEpTT0JKIE9iamVjdF9uZXdTdHJpbmco dm9pZCAqcHJ2LCB3Y2hhcl90ICpzdGFydCwgd2NoYXJfdCAqZW5kKQorIHsKKyAgIHJldHVybiBQ eVVuaWNvZGVfRnJvbVdpZGVDaGFyIChzdGFydCwgKGVuZCAtIHN0YXJ0KSk7CisgfQorIAorLUpT T0JKIE9iamVjdF9uZXdUcnVlKHZvaWQgKnBydikKKytzdGF0aWMgSlNPQkogT2JqZWN0X25ld1Ry dWUodm9pZCAqcHJ2KQorIHsKKyAgIFB5X1JFVFVSTl9UUlVFOworIH0KKyAKKy1KU09CSiBPYmpl Y3RfbmV3RmFsc2Uodm9pZCAqcHJ2KQorK3N0YXRpYyBKU09CSiBPYmplY3RfbmV3RmFsc2Uodm9p ZCAqcHJ2KQorIHsKKyAgIFB5X1JFVFVSTl9GQUxTRTsKKyB9CisgCistSlNPQkogT2JqZWN0X25l d051bGwodm9pZCAqcHJ2KQorK3N0YXRpYyBKU09CSiBPYmplY3RfbmV3TnVsbCh2b2lkICpwcnYp CisgeworICAgUHlfUkVUVVJOX05PTkU7CisgfQorIAorLUpTT0JKIE9iamVjdF9uZXdPYmplY3Qo dm9pZCAqcHJ2KQorK3N0YXRpYyBKU09CSiBPYmplY3RfbmV3T2JqZWN0KHZvaWQgKnBydikKKyB7 CisgICByZXR1cm4gUHlEaWN0X05ldygpOworIH0KKyAKKy1KU09CSiBPYmplY3RfbmV3QXJyYXko dm9pZCAqcHJ2KQorK3N0YXRpYyBKU09CSiBPYmplY3RfbmV3QXJyYXkodm9pZCAqcHJ2KQorIHsK KyAgIHJldHVybiBQeUxpc3RfTmV3KDApOworIH0KKyAKKy1KU09CSiBPYmplY3RfbmV3SW50ZWdl cih2b2lkICpwcnYsIEpTSU5UMzIgdmFsdWUpCisrc3RhdGljIEpTT0JKIE9iamVjdF9uZXdJbnRl Z2VyKHZvaWQgKnBydiwgSlNJTlQzMiB2YWx1ZSkKKyB7CisgICByZXR1cm4gUHlJbnRfRnJvbUxv bmcoIChsb25nKSB2YWx1ZSk7CisgfQorIAorLUpTT0JKIE9iamVjdF9uZXdMb25nKHZvaWQgKnBy diwgSlNJTlQ2NCB2YWx1ZSkKKytzdGF0aWMgSlNPQkogT2JqZWN0X25ld0xvbmcodm9pZCAqcHJ2 LCBKU0lOVDY0IHZhbHVlKQorIHsKKyAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmdMb25nICh2YWx1 ZSk7CisgfQorIAorLUpTT0JKIE9iamVjdF9uZXdVbnNpZ25lZExvbmcodm9pZCAqcHJ2LCBKU1VJ TlQ2NCB2YWx1ZSkKKytzdGF0aWMgSlNPQkogT2JqZWN0X25ld1Vuc2lnbmVkTG9uZyh2b2lkICpw cnYsIEpTVUlOVDY0IHZhbHVlKQorIHsKKyAgIHJldHVybiBQeUxvbmdfRnJvbVVuc2lnbmVkTG9u Z0xvbmcgKHZhbHVlKTsKKyB9CisgCistSlNPQkogT2JqZWN0X25ld0RvdWJsZSh2b2lkICpwcnYs IGRvdWJsZSB2YWx1ZSkKKytzdGF0aWMgSlNPQkogT2JqZWN0X25ld0RvdWJsZSh2b2lkICpwcnYs IGRvdWJsZSB2YWx1ZSkKKyB7CisgICByZXR1cm4gUHlGbG9hdF9Gcm9tRG91YmxlKHZhbHVlKTsK KyB9CitkaWZmIC0tZ2l0IGEvcHl0aG9uL29ialRvSlNPTi5jIGIvcHl0aG9uL29ialRvSlNPTi5j CitpbmRleCAwNGE0NTc1Li4xOTYwZDQwIDEwMDY0NAorLS0tIGEvcHl0aG9uL29ialRvSlNPTi5j CisrKysgYi9weXRob24vb2JqVG9KU09OLmMKK0BAIC0yMjYsNyArMjI2LDcgQEAgc3RhdGljIHZv aWQgKlB5RGF0ZVRvSU5UNjQoSlNPQkogX29iaiwgSlNPTlR5cGVDb250ZXh0ICp0Yywgdm9pZCAq b3V0VmFsdWUsIHNpemUKKyAgIHJldHVybiBOVUxMOworIH0KKyAKKy1pbnQgVHVwbGVfaXRlck5l eHQoSlNPQkogb2JqLCBKU09OVHlwZUNvbnRleHQgKnRjKQorK3N0YXRpYyBpbnQgVHVwbGVfaXRl ck5leHQoSlNPQkogb2JqLCBKU09OVHlwZUNvbnRleHQgKnRjKQorIHsKKyAgIFB5T2JqZWN0ICpp dGVtOworIAorQEAgLTI0MiwyMSArMjQyLDIxIEBAIGludCBUdXBsZV9pdGVyTmV4dChKU09CSiBv YmosIEpTT05UeXBlQ29udGV4dCAqdGMpCisgICByZXR1cm4gMTsKKyB9CisgCistdm9pZCBUdXBs ZV9pdGVyRW5kKEpTT0JKIG9iaiwgSlNPTlR5cGVDb250ZXh0ICp0YykKKytzdGF0aWMgdm9pZCBU dXBsZV9pdGVyRW5kKEpTT0JKIG9iaiwgSlNPTlR5cGVDb250ZXh0ICp0YykKKyB7CisgfQorIAor LUpTT0JKIFR1cGxlX2l0ZXJHZXRWYWx1ZShKU09CSiBvYmosIEpTT05UeXBlQ29udGV4dCAqdGMp Cisrc3RhdGljIEpTT0JKIFR1cGxlX2l0ZXJHZXRWYWx1ZShKU09CSiBvYmosIEpTT05UeXBlQ29u dGV4dCAqdGMpCisgeworICAgcmV0dXJuIEdFVF9UQyh0YyktPml0ZW1WYWx1ZTsKKyB9CisgCist Y2hhciAqVHVwbGVfaXRlckdldE5hbWUoSlNPQkogb2JqLCBKU09OVHlwZUNvbnRleHQgKnRjLCBz aXplX3QgKm91dExlbikKKytzdGF0aWMgY2hhciAqVHVwbGVfaXRlckdldE5hbWUoSlNPQkogb2Jq LCBKU09OVHlwZUNvbnRleHQgKnRjLCBzaXplX3QgKm91dExlbikKKyB7CisgICByZXR1cm4gTlVM TDsKKyB9CisgCistaW50IEl0ZXJfaXRlck5leHQoSlNPQkogb2JqLCBKU09OVHlwZUNvbnRleHQg KnRjKQorK3N0YXRpYyBpbnQgSXRlcl9pdGVyTmV4dChKU09CSiBvYmosIEpTT05UeXBlQ29udGV4 dCAqdGMpCisgeworICAgUHlPYmplY3QgKml0ZW07CisgCitAQCAtMjgyLDcgKzI4Miw3IEBAIGlu dCBJdGVyX2l0ZXJOZXh0KEpTT0JKIG9iaiwgSlNPTlR5cGVDb250ZXh0ICp0YykKKyAgIHJldHVy biAxOworIH0KKyAKKy12b2lkIEl0ZXJfaXRlckVuZChKU09CSiBvYmosIEpTT05UeXBlQ29udGV4 dCAqdGMpCisrc3RhdGljIHZvaWQgSXRlcl9pdGVyRW5kKEpTT0JKIG9iaiwgSlNPTlR5cGVDb250 ZXh0ICp0YykKKyB7CisgICBpZiAoR0VUX1RDKHRjKS0+aXRlbVZhbHVlKQorICAgeworQEAgLTI5 NywxNyArMjk3LDE3IEBAIHZvaWQgSXRlcl9pdGVyRW5kKEpTT0JKIG9iaiwgSlNPTlR5cGVDb250 ZXh0ICp0YykKKyAgIH0KKyB9CisgCistSlNPQkogSXRlcl9pdGVyR2V0VmFsdWUoSlNPQkogb2Jq LCBKU09OVHlwZUNvbnRleHQgKnRjKQorK3N0YXRpYyBKU09CSiBJdGVyX2l0ZXJHZXRWYWx1ZShK U09CSiBvYmosIEpTT05UeXBlQ29udGV4dCAqdGMpCisgeworICAgcmV0dXJuIEdFVF9UQyh0Yykt Pml0ZW1WYWx1ZTsKKyB9CisgCistY2hhciAqSXRlcl9pdGVyR2V0TmFtZShKU09CSiBvYmosIEpT T05UeXBlQ29udGV4dCAqdGMsIHNpemVfdCAqb3V0TGVuKQorK3N0YXRpYyBjaGFyICpJdGVyX2l0 ZXJHZXROYW1lKEpTT0JKIG9iaiwgSlNPTlR5cGVDb250ZXh0ICp0Yywgc2l6ZV90ICpvdXRMZW4p CisgeworICAgcmV0dXJuIE5VTEw7CisgfQorIAorLXZvaWQgRGlyX2l0ZXJFbmQoSlNPQkogb2Jq LCBKU09OVHlwZUNvbnRleHQgKnRjKQorK3N0YXRpYyB2b2lkIERpcl9pdGVyRW5kKEpTT0JKIG9i aiwgSlNPTlR5cGVDb250ZXh0ICp0YykKKyB7CisgICBpZiAoR0VUX1RDKHRjKS0+aXRlbVZhbHVl KQorICAgeworQEAgLTMyNSw3ICszMjUsNyBAQCB2b2lkIERpcl9pdGVyRW5kKEpTT0JKIG9iaiwg SlNPTlR5cGVDb250ZXh0ICp0YykKKyAgIFBSSU5UTUFSSygpOworIH0KKyAKKy1pbnQgRGlyX2l0 ZXJOZXh0KEpTT0JKIF9vYmosIEpTT05UeXBlQ29udGV4dCAqdGMpCisrc3RhdGljIGludCBEaXJf aXRlck5leHQoSlNPQkogX29iaiwgSlNPTlR5cGVDb250ZXh0ICp0YykKKyB7CisgICBQeU9iamVj dCAqb2JqID0gKFB5T2JqZWN0ICopIF9vYmo7CisgICBQeU9iamVjdCAqaXRlbVZhbHVlID0gR0VU X1RDKHRjKS0+aXRlbVZhbHVlOworQEAgLTQwMSwyMCArNDAxLDIwIEBAIGludCBEaXJfaXRlck5l eHQoSlNPQkogX29iaiwgSlNPTlR5cGVDb250ZXh0ICp0YykKKyAgIHJldHVybiAxOworIH0KKyAK Ky1KU09CSiBEaXJfaXRlckdldFZhbHVlKEpTT0JKIG9iaiwgSlNPTlR5cGVDb250ZXh0ICp0YykK KytzdGF0aWMgSlNPQkogRGlyX2l0ZXJHZXRWYWx1ZShKU09CSiBvYmosIEpTT05UeXBlQ29udGV4 dCAqdGMpCisgeworICAgUFJJTlRNQVJLKCk7CisgICByZXR1cm4gR0VUX1RDKHRjKS0+aXRlbVZh bHVlOworIH0KKyAKKy1jaGFyICpEaXJfaXRlckdldE5hbWUoSlNPQkogb2JqLCBKU09OVHlwZUNv bnRleHQgKnRjLCBzaXplX3QgKm91dExlbikKKytzdGF0aWMgY2hhciAqRGlyX2l0ZXJHZXROYW1l KEpTT0JKIG9iaiwgSlNPTlR5cGVDb250ZXh0ICp0Yywgc2l6ZV90ICpvdXRMZW4pCisgeworICAg UFJJTlRNQVJLKCk7CisgICAqb3V0TGVuID0gUHlTdHJpbmdfR0VUX1NJWkUoR0VUX1RDKHRjKS0+ aXRlbU5hbWUpOworICAgcmV0dXJuIFB5U3RyaW5nX0FTX1NUUklORyhHRVRfVEModGMpLT5pdGVt TmFtZSk7CisgfQorIAorLWludCBMaXN0X2l0ZXJOZXh0KEpTT0JKIG9iaiwgSlNPTlR5cGVDb250 ZXh0ICp0YykKKytzdGF0aWMgaW50IExpc3RfaXRlck5leHQoSlNPQkogb2JqLCBKU09OVHlwZUNv bnRleHQgKnRjKQorIHsKKyAgIGlmIChHRVRfVEModGMpLT5pbmRleCA+PSBHRVRfVEModGMpLT5z aXplKQorICAgeworQEAgLTQyNywxNiArNDI3LDE2IEBAIGludCBMaXN0X2l0ZXJOZXh0KEpTT0JK IG9iaiwgSlNPTlR5cGVDb250ZXh0ICp0YykKKyAgIHJldHVybiAxOworIH0KKyAKKy12b2lkIExp c3RfaXRlckVuZChKU09CSiBvYmosIEpTT05UeXBlQ29udGV4dCAqdGMpCisrc3RhdGljIHZvaWQg TGlzdF9pdGVyRW5kKEpTT0JKIG9iaiwgSlNPTlR5cGVDb250ZXh0ICp0YykKKyB7CisgfQorIAor LUpTT0JKIExpc3RfaXRlckdldFZhbHVlKEpTT0JKIG9iaiwgSlNPTlR5cGVDb250ZXh0ICp0YykK KytzdGF0aWMgSlNPQkogTGlzdF9pdGVyR2V0VmFsdWUoSlNPQkogb2JqLCBKU09OVHlwZUNvbnRl eHQgKnRjKQorIHsKKyAgIHJldHVybiBHRVRfVEModGMpLT5pdGVtVmFsdWU7CisgfQorIAorLWNo YXIgKkxpc3RfaXRlckdldE5hbWUoSlNPQkogb2JqLCBKU09OVHlwZUNvbnRleHQgKnRjLCBzaXpl X3QgKm91dExlbikKKytzdGF0aWMgY2hhciAqTGlzdF9pdGVyR2V0TmFtZShKU09CSiBvYmosIEpT T05UeXBlQ29udGV4dCAqdGMsIHNpemVfdCAqb3V0TGVuKQorIHsKKyAgIHJldHVybiBOVUxMOwor IH0KK0BAIC00NDcsNyArNDQ3LDcgQEAgY2hhciAqTGlzdF9pdGVyR2V0TmFtZShKU09CSiBvYmos IEpTT05UeXBlQ29udGV4dCAqdGMsIHNpemVfdCAqb3V0TGVuKQorIC8vIGl0ZW1WYWx1ZSBpcyBi b3Jyb3dlZCBmcm9tIG9iamVjdCAod2hpY2ggaXMgZGljdCkuIE5vIHJlZkNvdW50aW5nCisgLy89 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PQorIAorLWludCBEaWN0X2l0ZXJOZXh0KEpTT0JKIG9iaiwgSlNP TlR5cGVDb250ZXh0ICp0YykKKytzdGF0aWMgaW50IERpY3RfaXRlck5leHQoSlNPQkogb2JqLCBK U09OVHlwZUNvbnRleHQgKnRjKQorIHsKKyAjaWYgUFlfTUFKT1JfVkVSU0lPTiA+PSAzCisgICBQ eU9iamVjdCogaXRlbU5hbWVUbXA7CitAQCAtNDg4LDcgKzQ4OCw3IEBAIGludCBEaWN0X2l0ZXJO ZXh0KEpTT0JKIG9iaiwgSlNPTlR5cGVDb250ZXh0ICp0YykKKyAgICAgcmV0dXJuIDE7CisgfQor IAorLXZvaWQgRGljdF9pdGVyRW5kKEpTT0JKIG9iaiwgSlNPTlR5cGVDb250ZXh0ICp0YykKKytz dGF0aWMgdm9pZCBEaWN0X2l0ZXJFbmQoSlNPQkogb2JqLCBKU09OVHlwZUNvbnRleHQgKnRjKQor IHsKKyAgIGlmIChHRVRfVEModGMpLT5pdGVtTmFtZSkKKyAgIHsKK0BAIC00OTksMTggKzQ5OSwx OCBAQCB2b2lkIERpY3RfaXRlckVuZChKU09CSiBvYmosIEpTT05UeXBlQ29udGV4dCAqdGMpCisg ICBQUklOVE1BUksoKTsKKyB9CisgCistSlNPQkogRGljdF9pdGVyR2V0VmFsdWUoSlNPQkogb2Jq LCBKU09OVHlwZUNvbnRleHQgKnRjKQorK3N0YXRpYyBKU09CSiBEaWN0X2l0ZXJHZXRWYWx1ZShK U09CSiBvYmosIEpTT05UeXBlQ29udGV4dCAqdGMpCisgeworICAgcmV0dXJuIEdFVF9UQyh0Yykt Pml0ZW1WYWx1ZTsKKyB9CisgCistY2hhciAqRGljdF9pdGVyR2V0TmFtZShKU09CSiBvYmosIEpT T05UeXBlQ29udGV4dCAqdGMsIHNpemVfdCAqb3V0TGVuKQorK3N0YXRpYyBjaGFyICpEaWN0X2l0 ZXJHZXROYW1lKEpTT0JKIG9iaiwgSlNPTlR5cGVDb250ZXh0ICp0Yywgc2l6ZV90ICpvdXRMZW4p CisgeworICAgKm91dExlbiA9IFB5U3RyaW5nX0dFVF9TSVpFKEdFVF9UQyh0YyktPml0ZW1OYW1l KTsKKyAgIHJldHVybiBQeVN0cmluZ19BU19TVFJJTkcoR0VUX1RDKHRjKS0+aXRlbU5hbWUpOwor IH0KKyAKKy1pbnQgU29ydGVkRGljdF9pdGVyTmV4dChKU09CSiBvYmosIEpTT05UeXBlQ29udGV4 dCAqdGMpCisrc3RhdGljIGludCBTb3J0ZWREaWN0X2l0ZXJOZXh0KEpTT0JKIG9iaiwgSlNPTlR5 cGVDb250ZXh0ICp0YykKKyB7CisgICBQeU9iamVjdCAqaXRlbXMgPSBOVUxMLCAqaXRlbSA9IE5V TEwsICprZXkgPSBOVUxMLCAqdmFsdWUgPSBOVUxMOworICAgUHlfc3NpemVfdCBpLCBuaXRlbXM7 CitAQCAtNjAzLDcgKzYwMyw3IEBAIGludCBTb3J0ZWREaWN0X2l0ZXJOZXh0KEpTT0JKIG9iaiwg SlNPTlR5cGVDb250ZXh0ICp0YykKKyAgIHJldHVybiAtMTsKKyB9CisgCistdm9pZCBTb3J0ZWRE aWN0X2l0ZXJFbmQoSlNPQkogb2JqLCBKU09OVHlwZUNvbnRleHQgKnRjKQorK3N0YXRpYyB2b2lk IFNvcnRlZERpY3RfaXRlckVuZChKU09CSiBvYmosIEpTT05UeXBlQ29udGV4dCAqdGMpCisgewor ICAgR0VUX1RDKHRjKS0+aXRlbU5hbWUgPSBOVUxMOworICAgR0VUX1RDKHRjKS0+aXRlbVZhbHVl ID0gTlVMTDsKK0BAIC02MTIsMTkgKzYxMiwxOSBAQCB2b2lkIFNvcnRlZERpY3RfaXRlckVuZChK U09CSiBvYmosIEpTT05UeXBlQ29udGV4dCAqdGMpCisgICBQUklOVE1BUksoKTsKKyB9CisgCist SlNPQkogU29ydGVkRGljdF9pdGVyR2V0VmFsdWUoSlNPQkogb2JqLCBKU09OVHlwZUNvbnRleHQg KnRjKQorK3N0YXRpYyBKU09CSiBTb3J0ZWREaWN0X2l0ZXJHZXRWYWx1ZShKU09CSiBvYmosIEpT T05UeXBlQ29udGV4dCAqdGMpCisgeworICAgcmV0dXJuIEdFVF9UQyh0YyktPml0ZW1WYWx1ZTsK KyB9CisgCistY2hhciAqU29ydGVkRGljdF9pdGVyR2V0TmFtZShKU09CSiBvYmosIEpTT05UeXBl Q29udGV4dCAqdGMsIHNpemVfdCAqb3V0TGVuKQorK3N0YXRpYyBjaGFyICpTb3J0ZWREaWN0X2l0 ZXJHZXROYW1lKEpTT0JKIG9iaiwgSlNPTlR5cGVDb250ZXh0ICp0Yywgc2l6ZV90ICpvdXRMZW4p CisgeworICAgKm91dExlbiA9IFB5U3RyaW5nX0dFVF9TSVpFKEdFVF9UQyh0YyktPml0ZW1OYW1l KTsKKyAgIHJldHVybiBQeVN0cmluZ19BU19TVFJJTkcoR0VUX1RDKHRjKS0+aXRlbU5hbWUpOwor IH0KKyAKKyAKKy12b2lkIFNldHVwRGljdEl0ZXIoUHlPYmplY3QgKmRpY3RPYmosIFR5cGVDb250 ZXh0ICpwYywgSlNPTk9iamVjdEVuY29kZXIgKmVuYykKKytzdGF0aWMgdm9pZCBTZXR1cERpY3RJ dGVyKFB5T2JqZWN0ICpkaWN0T2JqLCBUeXBlQ29udGV4dCAqcGMsIEpTT05PYmplY3RFbmNvZGVy ICplbmMpCisgeworICAgaWYgKGVuYy0+c29ydEtleXMpIHsKKyAgICAgcGMtPml0ZXJFbmQgPSBT b3J0ZWREaWN0X2l0ZXJFbmQ7CitAQCAtNjQyLDcgKzY0Miw3IEBAIHZvaWQgU2V0dXBEaWN0SXRl cihQeU9iamVjdCAqZGljdE9iaiwgVHlwZUNvbnRleHQgKnBjLCBKU09OT2JqZWN0RW5jb2RlciAq ZW5jKQorICAgcGMtPmluZGV4ID0gMDsKKyB9CisgCistdm9pZCBPYmplY3RfYmVnaW5UeXBlQ29u dGV4dCAoSlNPQkogX29iaiwgSlNPTlR5cGVDb250ZXh0ICp0YywgSlNPTk9iamVjdEVuY29kZXIg KmVuYykKKytzdGF0aWMgdm9pZCBPYmplY3RfYmVnaW5UeXBlQ29udGV4dCAoSlNPQkogX29iaiwg SlNPTlR5cGVDb250ZXh0ICp0YywgSlNPTk9iamVjdEVuY29kZXIgKmVuYykKKyB7CisgICBQeU9i amVjdCAqb2JqLCAqZXhjLCAqaXRlcjsKKyAgIFR5cGVDb250ZXh0ICpwYzsKK0BAIC05MjksNyAr OTI5LDcgQEAgdm9pZCBPYmplY3RfYmVnaW5UeXBlQ29udGV4dCAoSlNPQkogX29iaiwgSlNPTlR5 cGVDb250ZXh0ICp0YywgSlNPTk9iamVjdEVuY29kZXIKKyAgIHJldHVybjsKKyB9CisgCistdm9p ZCBPYmplY3RfZW5kVHlwZUNvbnRleHQoSlNPQkogb2JqLCBKU09OVHlwZUNvbnRleHQgKnRjKQor K3N0YXRpYyB2b2lkIE9iamVjdF9lbmRUeXBlQ29udGV4dChKU09CSiBvYmosIEpTT05UeXBlQ29u dGV4dCAqdGMpCisgeworICAgUHlfWERFQ1JFRihHRVRfVEModGMpLT5uZXdPYmopOworIAorQEAg LTkzNywzMyArOTM3LDMzIEBAIHZvaWQgT2JqZWN0X2VuZFR5cGVDb250ZXh0KEpTT0JKIG9iaiwg SlNPTlR5cGVDb250ZXh0ICp0YykKKyAgIHRjLT5wcnYgPSBOVUxMOworIH0KKyAKKy1jb25zdCBj aGFyICpPYmplY3RfZ2V0U3RyaW5nVmFsdWUoSlNPQkogb2JqLCBKU09OVHlwZUNvbnRleHQgKnRj LCBzaXplX3QgKl9vdXRMZW4pCisrc3RhdGljIGNvbnN0IGNoYXIgKk9iamVjdF9nZXRTdHJpbmdW YWx1ZShKU09CSiBvYmosIEpTT05UeXBlQ29udGV4dCAqdGMsIHNpemVfdCAqX291dExlbikKKyB7 CisgICByZXR1cm4gR0VUX1RDKHRjKS0+UHlUeXBlVG9KU09OIChvYmosIHRjLCBOVUxMLCBfb3V0 TGVuKTsKKyB9CisgCistSlNJTlQ2NCBPYmplY3RfZ2V0TG9uZ1ZhbHVlKEpTT0JKIG9iaiwgSlNP TlR5cGVDb250ZXh0ICp0YykKKytzdGF0aWMgSlNJTlQ2NCBPYmplY3RfZ2V0TG9uZ1ZhbHVlKEpT T0JKIG9iaiwgSlNPTlR5cGVDb250ZXh0ICp0YykKKyB7CisgICBKU0lOVDY0IHJldDsKKyAgIEdF VF9UQyh0YyktPlB5VHlwZVRvSlNPTiAob2JqLCB0YywgJnJldCwgTlVMTCk7CisgICByZXR1cm4g cmV0OworIH0KKyAKKy1KU1VJTlQ2NCBPYmplY3RfZ2V0VW5zaWduZWRMb25nVmFsdWUoSlNPQkog b2JqLCBKU09OVHlwZUNvbnRleHQgKnRjKQorK3N0YXRpYyBKU1VJTlQ2NCBPYmplY3RfZ2V0VW5z aWduZWRMb25nVmFsdWUoSlNPQkogb2JqLCBKU09OVHlwZUNvbnRleHQgKnRjKQorIHsKKyAgIEpT VUlOVDY0IHJldDsKKyAgIEdFVF9UQyh0YyktPlB5VHlwZVRvSlNPTiAob2JqLCB0YywgJnJldCwg TlVMTCk7CisgICByZXR1cm4gcmV0OworIH0KKyAKKy1KU0lOVDMyIE9iamVjdF9nZXRJbnRWYWx1 ZShKU09CSiBvYmosIEpTT05UeXBlQ29udGV4dCAqdGMpCisrc3RhdGljIEpTSU5UMzIgT2JqZWN0 X2dldEludFZhbHVlKEpTT0JKIG9iaiwgSlNPTlR5cGVDb250ZXh0ICp0YykKKyB7CisgICBKU0lO VDMyIHJldDsKKyAgIEdFVF9UQyh0YyktPlB5VHlwZVRvSlNPTiAob2JqLCB0YywgJnJldCwgTlVM TCk7CisgICByZXR1cm4gcmV0OworIH0KKyAKKy1kb3VibGUgT2JqZWN0X2dldERvdWJsZVZhbHVl KEpTT0JKIG9iaiwgSlNPTlR5cGVDb250ZXh0ICp0YykKKytzdGF0aWMgZG91YmxlIE9iamVjdF9n ZXREb3VibGVWYWx1ZShKU09CSiBvYmosIEpTT05UeXBlQ29udGV4dCAqdGMpCisgeworICAgZG91 YmxlIHJldDsKKyAgIEdFVF9UQyh0YyktPlB5VHlwZVRvSlNPTiAob2JqLCB0YywgJnJldCwgTlVM TCk7CitAQCAtOTc1LDIyICs5NzUsMjIgQEAgc3RhdGljIHZvaWQgT2JqZWN0X3JlbGVhc2VPYmpl Y3QoSlNPQkogX29iaikKKyAgIFB5X0RFQ1JFRiggKFB5T2JqZWN0ICopIF9vYmopOworIH0KKyAK Ky1pbnQgT2JqZWN0X2l0ZXJOZXh0KEpTT0JKIG9iaiwgSlNPTlR5cGVDb250ZXh0ICp0YykKKytz dGF0aWMgaW50IE9iamVjdF9pdGVyTmV4dChKU09CSiBvYmosIEpTT05UeXBlQ29udGV4dCAqdGMp CisgeworICAgcmV0dXJuIEdFVF9UQyh0YyktPml0ZXJOZXh0KG9iaiwgdGMpOworIH0KKyAKKy12 b2lkIE9iamVjdF9pdGVyRW5kKEpTT0JKIG9iaiwgSlNPTlR5cGVDb250ZXh0ICp0YykKKytzdGF0 aWMgdm9pZCBPYmplY3RfaXRlckVuZChKU09CSiBvYmosIEpTT05UeXBlQ29udGV4dCAqdGMpCisg eworICAgR0VUX1RDKHRjKS0+aXRlckVuZChvYmosIHRjKTsKKyB9CisgCistSlNPQkogT2JqZWN0 X2l0ZXJHZXRWYWx1ZShKU09CSiBvYmosIEpTT05UeXBlQ29udGV4dCAqdGMpCisrc3RhdGljIEpT T0JKIE9iamVjdF9pdGVyR2V0VmFsdWUoSlNPQkogb2JqLCBKU09OVHlwZUNvbnRleHQgKnRjKQor IHsKKyAgIHJldHVybiBHRVRfVEModGMpLT5pdGVyR2V0VmFsdWUob2JqLCB0Yyk7CisgfQorIAor LWNoYXIgKk9iamVjdF9pdGVyR2V0TmFtZShKU09CSiBvYmosIEpTT05UeXBlQ29udGV4dCAqdGMs IHNpemVfdCAqb3V0TGVuKQorK3N0YXRpYyBjaGFyICpPYmplY3RfaXRlckdldE5hbWUoSlNPQkog b2JqLCBKU09OVHlwZUNvbnRleHQgKnRjLCBzaXplX3QgKm91dExlbikKKyB7CisgICByZXR1cm4g R0VUX1RDKHRjKS0+aXRlckdldE5hbWUob2JqLCB0Yywgb3V0TGVuKTsKKyB9CisKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvcHl0aG9uMy11bHRyYWpzb24vcGF0Y2hlcy9sb3dlci1zdGFjay11c2FnZS5w YXRjaCBiL3NyY3BrZ3MvcHl0aG9uMy11bHRyYWpzb24vcGF0Y2hlcy9sb3dlci1zdGFjay11c2Fn ZS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uZGUzMjU4Y2Zk ZWIKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3B5dGhvbjMtdWx0cmFqc29uL3BhdGNoZXMv bG93ZXItc3RhY2stdXNhZ2UucGF0Y2gKQEAgLTAsMCArMSwxOSBAQAorRnJvbTogU2hpeiA8aGlA c2hpei5tZT4KK0J1Zy1SZXBvcnQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9lc25tZS91bHRyYWpzb24v aXNzdWVzLzI1NAorCittdXNsIGRlZmF1bHQgdGhyZWFkIHNpemUgaXMgODAga2lCLCBzbyB1c2lu ZyAxMjgga2lCIGJ5IGRlZmF1bHQgd2lsbAorb3ZlcmZsb3cgdGhlIHN0YWNrIGFuZCBjYXVzZSBz ZWdtZW50YXRpb24gZmF1bHRzLgorCitBbGxvY2F0aW5nIDEyOCBraUIgb24gdGhlIHN0YWNrIGlz IGEgcmF0aGVyIGJhZCBpZGVhIGFueXdheSwgc28gd2UnbGwKK2xvd2VyIGl0IHRvIDgga2lCLgor LS0tIHVsdHJhanNvbi0xLjM1L2xpYi91bHRyYWpzb24uaAorKysrIHVsdHJhanNvbi0xLjM1LXBh dGNoZWQvbGliL3VsdHJhanNvbi5oCitAQCAtNzcsNyArNzcsNyBAQAorIC8qCisgRGljdGF0ZXMg YW5kIGxpbWl0cyBob3cgbXVjaCBzdGFjayBzcGFjZSBmb3IgYnVmZmVycyBVbHRyYUpTT04gd2ls bCB1c2UgYmVmb3JlIHJlc29ydGluZyB0byBwcm92aWRlZCBoZWFwIGZ1bmN0aW9ucyAqLworICNp Zm5kZWYgSlNPTl9NQVhfU1RBQ0tfQlVGRkVSX1NJWkUKKy0jZGVmaW5lIEpTT05fTUFYX1NUQUNL X0JVRkZFUl9TSVpFIDEzMTA3MgorKyNkZWZpbmUgSlNPTl9NQVhfU1RBQ0tfQlVGRkVSX1NJWkUg ODE5MgorICNlbmRpZgorIAorICNpZmRlZiBfV0lOMzIKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHl0 aG9uMy11bHRyYWpzb24vdGVtcGxhdGUgYi9zcmNwa2dzL3B5dGhvbjMtdWx0cmFqc29uL3RlbXBs YXRlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi4yNzhjYzAwOTM2Mwot LS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvcHl0aG9uMy11bHRyYWpzb24vdGVtcGxhdGUKQEAg LTAsMCArMSwxNSBAQAorIyBUZW1wbGF0ZSBmaWxlIGZvciAncHl0aG9uMy11bHRyYWpzb24nCitw a2duYW1lPXB5dGhvbjMtdWx0cmFqc29uCit2ZXJzaW9uPTEuMzUKK3JldmlzaW9uPTEKK3dya3Ny Yz0idWpzb24tJHt2ZXJzaW9ufSIKK2J1aWxkX3N0eWxlPXB5dGhvbjMtbW9kdWxlCitob3N0bWFr ZWRlcGVuZHM9InB5dGhvbjMtc2V0dXB0b29scyIKK21ha2VkZXBlbmRzPSJweXRob24zLWRldmVs Igorc2hvcnRfZGVzYz0iVWx0cmEgZmFzdCBKU09OIGVuY29kZXIgYW5kIGRlY29kZXIgZm9yIFB5 dGhvbiIKK21haW50YWluZXI9Ims0bGVnIDxkMHhpQGluYm94LnJ1PiIKK2xpY2Vuc2U9IkJTRC0z LUNsYXVzZSIKK2hvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vZXNubWUvdWx0cmFqc29uIgor ZGlzdGZpbGVzPSIke1BZUElfU0lURX0vdS91anNvbi91anNvbi0ke3ZlcnNpb259LnRhci5neiIK K2NoZWNrc3VtPWY2NjA3M2U1NTA2ZTkxZDIwNGFiMGM2MTRhMTQ4ZDVhYTkzOGJkYmYxMDQ3NTFi ZTY2ZjhhZDdhMjIyZjVmODYKK3BhdGNoX2FyZ3M9Ii1OcDEiCg== --===============7654074189236657241==--