From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-0.2 required=5.0 tests=ALL_TRUSTED, DKIM_ADSP_NXDOMAIN autolearn=no autolearn_force=no version=3.4.4 Received: (qmail 13090 invoked from network); 15 Feb 2023 00:34:16 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 15 Feb 2023 00:34:16 -0000 Content-Type: multipart/mixed; boundary="===============5116714044980002914==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_openldap=3A_update_to_2=2E6=2E3?= To: ml@inbox.vuxu.org From: klarasm Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Wed, 15 Feb 2023 01:34:15 +0100 List-Id: Message-ID: <20230215003415.i5h0IPXj3Tv5ol8tRElCftxpJF7UwMguPo5sRBuQX_A@z> GitHub notification mails are now in MIME to allow UTF8. --===============5116714044980002914== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkga2xhcmFzbSBhZ2FpbnN0IG1hc3Rl ciBvbiB0aGUgdm9pZC1wYWNrYWdlcyByZXBvc2l0b3J5CgpodHRwczovL2dpdGh1Yi5jb20va2xh cmFzbS92b2lkLXBhY2thZ2VzIG9wZW5sZGFwLTIuNgpodHRwczovL2dpdGh1Yi5jb20vdm9pZC1s aW51eC92b2lkLXBhY2thZ2VzL3B1bGwvNDE5NDgKCm9wZW5sZGFwOiB1cGRhdGUgdG8gMi42LjMK VGhlIDIuNCBicmFuY2ggaXMgbm90IG1haW50YWluZWQgYW55bW9yZSBhbmQgSSBkb24ndCBrbm93 IGlmIHRoZXJlJ3MgbXVjaCBhZHZhbnRhZ2UgdG8gZ29pbmcgdG8gMi41IGluc3RlYWQgb2YgMi42 DQoNClNvbWUgc2hhcmVkIGxpYnJhcmllcyBoYXZlIGNoYW5nZWQgbmFtZSBzbyB0aGlzIHVwZGF0 ZXMgY29tbW9uL3NobGlicy4NCg0KQXMgdGhpcyBpcyBhIG1ham9yIHVwZGF0ZSB0aGUgbGRhcCBk YXRhYmFzZSBzaG91bGQgYmUgYmFja2VkIHVwIGFuZCByZWNyZWF0ZWQgYXMgcGVyIGh0dHBzOi8v d3d3Lm9wZW5sZGFwLm9yZy9kb2MvYWRtaW4yNi9tYWludGVuYW5jZS5odG1sDQoNCiMjIyMgVGVz dGluZyB0aGUgY2hhbmdlcw0KLSBJIHRlc3RlZCB0aGUgY2hhbmdlcyBpbiB0aGlzIFBSOiAqKllF UyoqIChtYWlubHkgb3BlbmxkYXAsIG1pdC1rcmI1IGFuZCBjeXJ1cy1zYXNsKQ0KLSBJIGhhdmVu J3QgdGVzdGVkIHRoZSByZXZidW1wZWQgcGFja2FnZXMgdGhhdCBtdWNoLCBvdGhlciB0aGFuIGJ1 aWxkaW5nIHdpdGggdGhlaXIgdGVzdCBzdWl0ZQ0KDQpJIGhhdmUgdXBncmFkZWQgbXkgbGRhcCBz ZXR1cCB0byB0aGlzIHZlcnNpb24uIEl0J3Mgbm90IHZlcnkgY29tcGxpY2F0ZWQgc28gbWF5IG5v dCBiZSBncmVhdCBmb3IgY292ZXJhZ2UuDQpCYXNpY2FsbHk6DQotIHR3byBub2Rlcywgd2l0aCBu b3JtYWwgc3luY3JlcGwgYW5kIGdzc2FwaS9rZXJiZXJvcyBmb3IgYXV0aGVudGljYXRpb24NCi0g dGhlIGxkYXAgZGlyZWN0b3J5IGlzIHVzZWQgYXMgZGF0YWJhc2UgYmFja2VuZCBmb3IgbXkga2Vy YmVyb3Mgc2V0dXANCi0gSSBoYXZlIGEgZmV3IG1hY2hpbmVzIHNldHVwIHdpdGgga2VyYmVyb3Mg Zm9yIGF1dGhlbnRpY2F0aW9uIGFuZCBsZGFwIGFzIGlkIHByb3ZpZGVyIChzb21lIHdpdGggc3Nz ZCBhbmQgc29tZSB3aXRoIG5zbGNkKQ0KDQpTbyBmYXIgaXQgc2VlbXMgcHJvbWlzaW5nIGJ1dCB3 aWxsIHRlc3QgbW9yZS4gSSB3b3VsZCBhcHByZWNpYXRlIGlmIGFueW9uZSBlbHNlIGNvdWxkIHRl c3QgYXMgd2VsbC4NCg0KSSBoYXZlIHByb2JhYmx5IG1pc3NlZCBwYWNrYWdlcyB0aGF0IG5lZWQg dG8gYmUgcmV2YnVtcGVkIHNvIHBsZWFzZSBwb2ludCB0aGVtIG91dCBpbiB0aGF0IGNhc2UuDQoN ClBhY2thZ2VzIHRoYXQgZGVwZW5kIG9uIGxpYmxkYXA6DQotIFt4XSBGcmVlUkFESVVTLTMuMC4y M18xIChvdXQgb2YgZGF0ZSwgbmV3ZXN0IHZlcnNpb24gaXMgMy4yLjEpDQotIFt4XSBhbHBpbmUt Mi4yNl8xDQotIFt4XSBhbmp1dGEtMy4zNC4wXzQgKGZpeCBmYXVsdHkgZGV0ZWN0aW9uIG9mIHdl YmtpdDJndGspDQotIFt4XSBhcGFjaGUtMi40LjU0XzIgKG91dCBvZiBkYXRlLCBuZXdlc3QgdmVy c2lvbiBpcyAyLjQuNTUpDQotIFt4XSBhcHItdXRpbC1sZGFwLTEuNi4xXzEzICh1cGRhdGUgdG8g MS42LjIpDQotIFt4XSBhdWRpdC0zLjAuM180IChvdXQgb2YgZGF0ZSwgbmV3ZXN0IHZlcnNpb24g aXMgMy4wLjkpDQotIFt4XSBhdXRvZnMtNS4xLjhfMiAob3V0IG9mIGRhdGUsIG5ld2VzdCB2ZXJz aW9uIGlzIDUuMS45KQ0KLSBbeF0gY2xhd3MtbWFpbC00LjEuMV8xDQotIFt4XSBjeXJ1cy1zYXNs LTIuMS4yN185IChvdXQgb2YgZGF0ZSwgbmV3ZXN0IHZlcnNpb24gaXMgMi4xLjI4KQ0KLSBbeF0g ZG92ZWNvdC1wbHVnaW4tbGRhcC0yLjMuMjBfMQ0KLSBbeF0gZG92ZWNvdC1wbHVnaW4tcGlnZW9u aG9sZS1sZGFwLTAuNS4yMF8xDQotIFt4XSBldm9sdXRpb24tMy40Ni4yXzENCi0gW3hdIGV2b2x1 dGlvbi1kYXRhLXNlcnZlci0zLjQ2LjJfMQ0KLSBbeF0gZ251cGctMi4zLjhfMQ0KLSBbeF0gZ251 cGcxLTEuNC4yM18xDQotIFt4XSBrbGRhcC0yMi4wOC4yXzENCi0gW3hdIGxkYXB2aS0xLjdfMTEN Ci0gW3hdIGxpYm5mc2lkbWFwLTIuNS40XzINCi0gW3hdIGxpYnJlb2ZmaWNlLWNvbW1vbi03LjQu My4yXzENCi0gW3hdIGxpZ2h0dHBkLTEuNC42OF8xDQotIFt4XSBsb2c0Y3h4LTAuMTAuMF80ICh1 cGRhdGUgdG8gMS4wLjApDQotIFt4XSBsdWE1NC1sdWFsZGFwLTEuMi41XzMgKG91dCBvZiBkYXRl LCBuZXdlc3QgdmVyc2lvbiBpcyAxLjMuMCkNCi0gW3hdIG1pdC1rcmI1LWxpYnMtMS4xOC4zXzIg KHVwZGF0ZSB0byAxLjIwLjEpDQotIFt4XSBtb25pdG9yaW5nLXBsdWdpbnMtMi4zLjFfMQ0KLSBb eF0gbnNzLXBhbS1sZGFwZC0wLjkuMTJfMQ0KLSBbeF0gcGhwLWxkYXAtNy40LjMzXzENCi0gW3hd IHBocDguMC1sZGFwLTguMC4yNV8xIChvdXQgb2YgZGF0ZSwgbmV3ZXN0IHZlcnNpb24gaXMgOC4w LjI3KQ0KLSBbeF0gcGhwOC4xLWxkYXAtOC4xLjEyXzEgKG91dCBvZiBkYXRlLCBuZXdlc3QgdmVy c2lvbiBpbiBicmFuY2ggaXMgOC4xLjE0LiA4LjIuMSBpcyBhbHNvIGF2YWlsYWJsZSkNCi0gW3hd IHBvc3RmaXgtMy43LjNfMQ0KLSBbeF0gcHl0aG9uMy1sZGFwLTMuMi4wXzUgKHVwZGF0ZSB0byAz LjQuMykNCi0gW3hdIHF1b3RhLTQuMDlfMQ0KLSBbeF0gc2FtYmEtNC4xNC4xMl8yIChvdXQgb2Yg ZGF0ZSwgbmV3ZXN0IHZlcnNpb24gaXMgNC4xNy41KQ0KLSBbeF0gc2VhaG9yc2UtNDMuMF8xDQot IFt4XSBzcXVpZC01LjNfMSAob3V0IG9mIGRhdGUsIGxhdGVzdCB2ZXJzaW9uIGlzIDUuNykNCi0g W3hdIHNzc2QtMi40LjBfNSAob3V0IG9mIGRhdGUsIGxhdGVzdCB2ZXJzaW9uIGlzIDIuOC4yKQ0K LSBbeF0gc3lscGhlZWQtMy43LjBfOA0KLSBbeF0gdmlydHVvc28tYmFzZS03LjIuNS4xXzMgKHVw ZGF0ZSB0byA3LjIuOCkNCi0gW3hdIHgyZ29jbGllbnQtNC4xLjIuMl8yDQoNCltjaSBza2lwXSBh Z2Fpbi4gVGhpcyB3aWxsIHByb2JhYmx5IHRha2UgYSBsb25nIHRpbWUgdG8gYnVpbGQuDQoNCiMj IyMgTG9jYWwgYnVpbGQgdGVzdGluZw0KLSBJIGJ1aWx0IHRoaXMgUFIgbG9jYWxseSBmb3IgbXkg bmF0aXZlIGFyY2hpdGVjdHVyZSwgKHg4Nl82NC1nbGliYykNCi0gSSBidWlsdCB0aGlzIFBSIGxv Y2FsbHkgZm9yIG15IG5hdGl2ZSBhcmNoaXRlY3R1cmUsICh4ODZfNjQtbXVzbCkuIEJ1aWxkIGlz c3VlczoNCiAgLSBbeF0gYXVkaXQtMy4wLjNfNCAob3V0IG9mIGRhdGUsIG5ld2VzdCB2ZXJzaW9u IGlzIDMuMC45KSBhbHJlYWR5IGZhaWxpbmcgb24gbWFzdGVyIGJyYW5jaA0KICAtIFt4XSBkb3Zl Y290LXBsdWdpbi1sZGFwLTIuMy4yMF8xIGFscmVhZHkgZmFpbGluZyBvbiBtYXN0ZXIgYnJhbmNo DQogIC0gW3hdIGRvdmVjb3QtcGx1Z2luLXBpZ2VvbmhvbGUtbGRhcC0wLjUuMjBfMSB0ZXN0IHN1 aXRlIHBhc3NlcyBpZiBkb3ZlY290IGlzIGJ1aWx0IHdpdGhvdXQgY2hlY2tzIGZpcnN0DQogIC0g W3hdIGV2b2x1dGlvbi0zLjQ2LjJfMSB0ZXN0cyBhcmUgbm90IGZvdW5kIG9uIG1hc3RlciBicmFu Y2ggYW5kIHRodXMgcGFzc2VzIHdpdGhvdXQgcnVubmluZyB0aGVtDQogIC0gW3hdIGV2b2x1dGlv bi1kYXRhLXNlcnZlci0zLjQ2LjJfMSBhbHJlYWR5IGZhaWxpbmcgb24gbWFzdGVyIGJyYW5jaA0K DQotIEkgYnVpbHQgdGhpcyBQUiBsb2NhbGx5IGZvciB0aGVzZSBhcmNoaXRlY3R1cmVzIChpZiBz dXBwb3J0ZWQuIG1hcmsgY3Jvc3NidWlsZHMpOg0KICAtIGFhcmNoNjQtbXVzbCAoeDJnby1jbGll bnQsIHZpcnR1b3NvLCBzc3NkLCBzcXVpZCwgbGlicmVvZmZpY2UgYW5kIEZyZWVSQURJVVMgZmFp bCBkdWUgdG8gY3Jvc3MtY29tcGlsYXRpb24sIGFsbCBvdGhlciBjb21wbGV0ZSkNCiAgLSBhcm12 NmwtbXVzbCAoeDJnby1jbGllbnQsIHZpcnR1b3NvLCBzc3NkLCBzcXVpZCwgbGlicmVvZmZpY2Ug YW5kIEZyZWVSQURJVVMgZmFpbCBkdWUgdG8gY3Jvc3MtY29tcGlsYXRpb24sIGFsbCBvdGhlciBj b21wbGV0ZSkNCiAgLSBhcm12N2wgKHgyZ28tY2xpZW50LCB2aXJ0dW9zbywgc3NzZCwgc3F1aWQs IGxpYnJlb2ZmaWNlIGFuZCBGcmVlUkFESVVTIGZhaWwgZHVlIHRvIGNyb3NzLWNvbXBpbGF0aW9u LCBhbGwgb3RoZXIgY29tcGxldGUpDQogIC0gaTY4NiAoYXByLXV0aWwgc2VlbXMgdG8gcmVxdWly ZSB4ODZfNjQgYW5kIGNvbXBsYWlucyB0aGF0IHNlbGVjdGVkIGNwdSBkb2VzIG5vdCBzdXBwb3J0 IHRoYXQuIFRoaXMgbWFrZXMgb3RoZXIgcGFja2FnZSB0aGF0IGRlcGVuZCBvbiBhcHItdXRpbCBm YWlsIGFzIHdlbGw6IGFuanV0YSwgYXBhY2hlLCBwaHAsIHBocDguMCBhbmQgbG9nNGN4eC4gdmly dHVvc28sIHNzc2QsIGxpYnJlb2ZmaWNlLCBGcmVlUkFESVVTLCBzcXVpZCBhbmQgZ251cGcxIHBy b2JhYmx5IGZhaWxzIGR1ZSB0byBjcm9zcy1jb21waWxhdGlvbikNCg0KUGF0Y2hlZCBpc3N1ZSB3 aXRoIHRlc3QwNzk6DQpJdCBidWlsZHMgYW5kIHRoZSB0ZXN0IHN1aXRlIGlzIG9rIG9uIHg4Nl82 NC1nbGliYyBidXQgZmFpbHMgb24geDg2XzY0LW11c2wgKGlmIEkgcmVtZW1iZXIgY29ycmVjdGx5 IGZyb20gZWFybGllciB0ZXN0aW5nIHRoZSAyLjUgYnJhbmNoIGhhZCB0aGUgc2FtZSB0ZXN0IHN1 aXRlIGVycm9yKS4NCltvcGVubGRhcC0yLjYuMy10ZXN0MDc5LmxvZ10oaHR0cHM6Ly9naXRodWIu Y29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9maWxlcy8xMDUzMDg0My9vcGVubGRhcC0yLjYu My10ZXN0MDc5LmxvZykNCltvcGVubGRhcC0yLjYuMy1uby10ZXN0cy5sb2ddKGh0dHBzOi8vZ2l0 aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvZmlsZXMvMTA1MzA5MDMvb3BlbmxkYXAt Mi42LjMtbm8tdGVzdHMubG9nKQ0KW29wZW5sZGFwLTIuNi4zLWFsbC10ZXN0cy5sb2ddKGh0dHBz Oi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvZmlsZXMvMTA1MzA5Mjkvb3Bl bmxkYXAtMi42LjMtYWxsLXRlc3RzLmxvZykNCg0KSXQgc2VlbXMgdGhhdCB0ZXN0IDc5IGFsc28g ZmFpbHMgb24gYWxwaW5lOiBodHRwczovL2dpdC5hbHBpbmVsaW51eC5vcmcvYXBvcnRzL3RyZWUv bWFpbi9vcGVubGRhcC9BUEtCVUlMRCNuMjI3DQpJJ2xsIGhhdmUgdG8gbG9vayBjbG9zZXIgaW50 byB0aGUgc3BlY2lmaWMgdGVzdCBhbmQgd2h5IGl0IGZhaWxzLCBidXQgaWYgaXQncyBub3QgY3Jp dGljYWwgaXQgbWF5IGJlIG9rIHRvIGlnbm9yZSBpdC4NCg0KVGhlIHJlc3Qgb2YgdGhlIHRlc3Qg c3VpdGUgZG9lcyBub3Qgc2VlbSB0byBiZSBhIHByb2JsZW0uCgpBIHBhdGNoIGZpbGUgZnJvbSBo dHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBhY2thZ2VzL3B1bGwvNDE5NDgucGF0 Y2ggaXMgYXR0YWNoZWQ= --===============5116714044980002914== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-openldap-2.6-41948.patch" RnJvbSBlMTg4ZWRjNzlkYjQ1ZWFhYTgxNThkMDU5NjFmZGRhMTBjMWU4M2VjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpE YXRlOiBXZWQsIDIgTm92IDIwMjIgMjE6MDQ6NDYgKzAxMDAKU3ViamVjdDogW1BBVENIIDAxLzM5 XSBvcGVubGRhcDogdXBkYXRlIHRvIDIuNi40CgotIHVwZGF0ZSBjb21tb24vc2hsaWJzCi0gYWRk IHNsYXBkLmxkaWYgdG8gY29uZl9maWxlcwotIGFkZCBtb3JlIG9wdGlvbnMgdG8gcnVuaXQgc2Vy dmljZQotIHJlbW92ZSB1bnJlZ29nbml6ZWQgY29uZmlndXJlIG9wdHMKLSBhZGQgbGlic3NwLWRl dmVsIHRvIG1ha2VkZXBlbmRzCi0tLQogY29tbW9uL3NobGlicyAgICAgICAgICAgICAgICAgICAg fCAgNSArKy0tLQogc3JjcGtncy9vcGVubGRhcC9maWxlcy9zbGFwZC9ydW4gfCAgMiArLQogc3Jj cGtncy9vcGVubGRhcC90ZW1wbGF0ZSAgICAgICAgfCAxNCArKysrKysrLS0tLS0tLQogMyBmaWxl cyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9jb21tb24vc2hsaWJzIGIvY29tbW9uL3NobGlicwppbmRleCBmOWEwZDc3OTRiNzkuLmRmNTVl M2YyYWQwZiAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGlicworKysgYi9jb21tb24vc2hsaWJzCkBA IC02OTksOSArNjk5LDggQEAgbGliZ25vbWUtYmx1ZXRvb3RoLnNvLjEzIGdub21lLWJsdWV0b290 aDEtMy4xMi4wXzEKIGxpYmdub21lLWJsdWV0b290aC0zLjAuc28uMTMgZ25vbWUtYmx1ZXRvb3Ro LTQyLjFfMQogbGliZ25vbWUtYmx1ZXRvb3RoLXVpLTMuMC5zby4xMyBnbm9tZS1ibHVldG9vdGgt NDIuMV8xCiBsaWJzYXNsMi5zby4zIGxpYnNhc2wtMi4xLjI2XzEKLWxpYmxiZXItMi40LnNvLjIg bGlibGRhcC0yLjQuMjFfMQotbGlibGRhcC0yLjQuc28uMiBsaWJsZGFwLTIuNC4yMV8xCi1saWJs ZGFwX3ItMi40LnNvLjIgbGlibGRhcC0yLjQuMjFfMQorbGlibGJlci5zby4yIGxpYmxkYXAtMi42 LjNfMQorbGlibGRhcC5zby4yIGxpYmxkYXAtMi42LjNfMQogbGliZXZlbnQtMi4xLnNvLjcgbGli ZXZlbnQtMi4xLjExXzEKIGxpYmV2ZW50X2NvcmUtMi4xLnNvLjcgbGliZXZlbnQtMi4xLjExXzEK IGxpYmV2ZW50X2V4dHJhLTIuMS5zby43IGxpYmV2ZW50LTIuMS4xMV8xCmRpZmYgLS1naXQgYS9z cmNwa2dzL29wZW5sZGFwL2ZpbGVzL3NsYXBkL3J1biBiL3NyY3BrZ3Mvb3BlbmxkYXAvZmlsZXMv c2xhcGQvcnVuCmluZGV4IGY3YWRkZmNiZWVhMy4uNGZhMjI1M2IxODI1IDEwMDY0NAotLS0gYS9z cmNwa2dzL29wZW5sZGFwL2ZpbGVzL3NsYXBkL3J1bgorKysgYi9zcmNwa2dzL29wZW5sZGFwL2Zp bGVzL3NsYXBkL3J1bgpAQCAtNyw0ICs3LDQgQEAgaWYgWyAhIC1kIC9ydW4vb3BlbmxkYXAgXTsg dGhlbgogCWNob3duICRMREFQVVNFUjokTERBUEdST1VQIC9ydW4vb3BlbmxkYXAKIGZpCiBleGVj IDI+JjEKLWV4ZWMgc2xhcGQgLXUgJExEQVBVU0VSIC1nICRMREFQR1JPVVAgLWQgMAorZXhlYyBz bGFwZCAtdSAkTERBUFVTRVIgLWcgJExEQVBHUk9VUCAtZCAwICR7TERBUFVSTFM6Ky1oICIkTERB UFVSTFMifSAkTERBUE9QVFMKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvb3BlbmxkYXAvdGVtcGxhdGUg Yi9zcmNwa2dzL29wZW5sZGFwL3RlbXBsYXRlCmluZGV4IDg1ZmU3OWQ3N2QxZS4uYzJhM2QxNmU2 MzMyIDEwMDY0NAotLS0gYS9zcmNwa2dzL29wZW5sZGFwL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv b3BlbmxkYXAvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdv cGVubGRhcCcKIHBrZ25hbWU9b3BlbmxkYXAKLXZlcnNpb249Mi40LjU4Cit2ZXJzaW9uPTIuNi40 CiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0i LS1wcmVmaXg9L3VzcgpAQCAtOCwyMSArOCwyMSBAQCBjb25maWd1cmVfYXJncz0iLS1wcmVmaXg9 L3VzcgogIC0tc3lzY29uZmRpcj0vZXRjCiAgLS1sb2NhbHN0YXRlZGlyPS92YXIvbGliL29wZW5s ZGFwCiAgLS1zYmluZGlyPS91c3IvYmluCi0gLS1lbmFibGUtZHluYW1pYyAtLWVuYWJsZS1wcm9j dGl0bGUgLS13aXRoLXRscyAtLWVuYWJsZS1sZGFwCisgLS1lbmFibGUtZHluYW1pYyAtLXdpdGgt dGxzIC0tZW5hYmxlLWxkYXAKICAtLWVuYWJsZS1pcHY2IC0tZW5hYmxlLWxvY2FsIC0td2l0aC1j eXJ1cy1zYXNsIC0td2l0aC10aHJlYWRzCiAgLS1lbmFibGUtc3lzbG9nIC0tZW5hYmxlLXNsYXBk IC0tZW5hYmxlLWNyeXB0IC0tZW5hYmxlLXNwYXNzd2QKLSAtLWVuYWJsZS1iZGIgLS1lbmFibGUt aGRiIC0tZW5hYmxlLW92ZXJsYXlzPW1vZCAtLWVuYWJsZS1tZXRhPW1vZAorIC0tZW5hYmxlLW92 ZXJsYXlzPW1vZCAtLWVuYWJsZS1tZXRhPW1vZAogIC0tZGlzYWJsZS1zdGF0aWMgLS13aXRoLXlp ZWxkaW5nX3NlbGVjdD15ZXMgLS1lbmFibGUtbW9kdWxlcyIKIGhvc3RtYWtlZGVwZW5kcz0icGtn LWNvbmZpZyBncm9mZiIKLW1ha2VkZXBlbmRzPSJvcGVuc3NsLWRldmVsIGxpYnNhc2wtZGV2ZWwg ZGItZGV2ZWwgbGlibHRkbC1kZXZlbCIKK21ha2VkZXBlbmRzPSJvcGVuc3NsLWRldmVsIGxpYnNh c2wtZGV2ZWwgZGItZGV2ZWwgbGlibHRkbC1kZXZlbCBsaWJzc3AtZGV2ZWwiCiBkZXBlbmRzPSJv cGVubGRhcC10b29scz49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKLWNvbmZfZmlsZXM9Ii9ldGMv b3BlbmxkYXAvbGRhcC5jb25mIC9ldGMvb3BlbmxkYXAvc2xhcGQuY29uZiIKK2NvbmZfZmlsZXM9 Ii9ldGMvb3BlbmxkYXAvbGRhcC5jb25mIC9ldGMvb3BlbmxkYXAvc2xhcGQuY29uZiAvZXRjL29w ZW5sZGFwL3NsYXBkLmxkaWYiCiBzaG9ydF9kZXNjPSJPcGVuTERBUCAoTGlnaHR3ZWlnaHQgRGly ZWN0b3J5IEFjY2VzcyBQcm90b2NvbCkiCiBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZv aWRsaW51eC5vcmc+IgogbGljZW5zZT0iT0xEQVAtMi4wIgogaG9tZXBhZ2U9Imh0dHA6Ly93d3cu b3BlbmxkYXAub3JnIgogZGlzdGZpbGVzPSJodHRwczovL3d3dy5vcGVubGRhcC5vcmcvc29mdHdh cmUvZG93bmxvYWQvT3BlbkxEQVAvb3BlbmxkYXAtcmVsZWFzZS9vcGVubGRhcC0ke3ZlcnNpb259 LnRneiIKLWNoZWNrc3VtPTU3YjU5MjU0YmUxNWQwYmY2YTlhYjNkNTE0YzFjMDU3NzdiMDIxMjMy OTE1MzMxMzRhODdjOTQ0NjhmOGY0N2IKK2NoZWNrc3VtPWQ1MTcwNGU1MDE3ODQzMGMwNmNmM2Q4 YWExNzRkYTY2YmFkZjU1OTc0N2E0N2Q5MjBiYjU0YjJkNGFhNDA5OTEKIAogc3lzdGVtX2FjY291 bnRzPSJsZGFwIgogbGRhcF9ob21lZGlyPSIvdmFyL2xpYi9vcGVubGRhcCIKQEAgLTM4LDcgKzM4 LDcgQEAgcG9zdF9pbnN0YWxsKCkgewogCXZsaWNlbnNlIExJQ0VOU0UKIAljaG1vZCA3NTUgJHtE RVNURElSfS91c3IvbGliLyouc28uKgogCXZta2RpciB1c3Ivc2hhcmUvZXhhbXBsZXMvb3Blbmxk YXAKLQltdiAke0RFU1RESVJ9L2V0Yy9vcGVubGRhcC8qLntleGFtcGxlLGRlZmF1bHR9ICR7REVT VERJUn0vdXNyL3NoYXJlL2V4YW1wbGVzL29wZW5sZGFwCisJbXYgJHtERVNURElSfS9ldGMvb3Bl bmxkYXAvKi5kZWZhdWx0ICR7REVTVERJUn0vdXNyL3NoYXJlL2V4YW1wbGVzL29wZW5sZGFwCiAJ Y2htb2QgMDY0NCAke0RFU1RESVJ9L3Vzci9zaGFyZS9leGFtcGxlcy9vcGVubGRhcC8qCiB9CiAK CkZyb20gYzk2NTNmMzE1MTE3OWMwZTdhNmZhNjc5OWY5YzA4ZmM2ZjAyZGY3YyBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4K RGF0ZTogV2VkLCAxIEZlYiAyMDIzIDAwOjI1OjM2ICswMTAwClN1YmplY3Q6IFtQQVRDSCAwMi8z OV0gY3lydXMtc2FzbDogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3Br Z3MvY3lydXMtc2FzbC90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlv bigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY3lydXMtc2FzbC90ZW1w bGF0ZSBiL3NyY3BrZ3MvY3lydXMtc2FzbC90ZW1wbGF0ZQppbmRleCBiMjU5MTUyMTM5ZmQuLmQ5 NjQ2ZWQ4YTY0MiAxMDA2NDQKLS0tIGEvc3JjcGtncy9jeXJ1cy1zYXNsL3RlbXBsYXRlCisrKyBi L3NyY3BrZ3MvY3lydXMtc2FzbC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUg ZmlsZSBmb3IgJ2N5cnVzLXNhc2wnCiBwa2duYW1lPWN5cnVzLXNhc2wKIHZlcnNpb249Mi4xLjI3 Ci1yZXZpc2lvbj05CityZXZpc2lvbj0xMAogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29u ZmlndXJlX2FyZ3M9Ii0tZGlzYWJsZS1zdGF0aWMgLS1lbmFibGUtc2hhcmVkIC0tZW5hYmxlLWNo ZWNrYXBvcAogIC0tZW5hYmxlLWNyYW0gLS1lbmFibGUtZGlnZXN0IC0tZGlzYWJsZS1vdHAgLS1k aXNhYmxlLXNycAoKRnJvbSA4OWRhNDA4ZGNkYTE2Y2VkMWYzNjIxNDQ3NTk2OTI0OGUxZjhjZGIw IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5A Z21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMDA6MjY6MDggKzAxMDAKU3ViamVjdDog W1BBVENIIDAzLzM5XSBtaXQta3JiNTogdXBkYXRlIHRvIDEuMjAuMQoKQSByZWJ1aWxkIHRyaWdn ZXJkIGJ5IHVwZGF0ZSB0byBvcGVubGRhcC0yLjYuMyBoYWQgc29tZSBlcnJvcnMgaW4gdGhlCnRl c3Qgc3VpdGUuClJlbW92ZSBwYXRjaCBmb3IgbGlicmVzc2wuCkZvbGxvdyBkaXN0ZmlsZXMgY29u dmVudGlvbi4KLS0tCiBzcmNwa2dzL21pdC1rcmI1L3BhdGNoZXMvbGlicmVzc2wucGF0Y2ggfCAz OCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBzcmNwa2dzL21pdC1rcmI1L3RlbXBsYXRlICAg ICAgICAgICAgICAgfCAgOCArKystLS0KIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCsp LCA0MiBkZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL21pdC1rcmI1L3Bh dGNoZXMvbGlicmVzc2wucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL21pdC1rcmI1L3BhdGNo ZXMvbGlicmVzc2wucGF0Y2ggYi9zcmNwa2dzL21pdC1rcmI1L3BhdGNoZXMvbGlicmVzc2wucGF0 Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZlYjBkYmZjYWYzZC4uMDAwMDAwMDAw MDAwCi0tLSBhL3NyY3BrZ3MvbWl0LWtyYjUvcGF0Y2hlcy9saWJyZXNzbC5wYXRjaAorKysgL2Rl di9udWxsCkBAIC0xLDM4ICswLDAgQEAKLS0tLSBhL3NyYy9wbHVnaW5zL3ByZWF1dGgvcGtpbml0 L3BraW5pdF9jcnlwdG9fb3BlbnNzbC5jCTIwMTktMDEtMDggMTc6MDI6MzcuMDAwMDAwMDAwICsw MTAwCi0rKysgYi9zcmMvcGx1Z2lucy9wcmVhdXRoL3BraW5pdC9wa2luaXRfY3J5cHRvX29wZW5z c2wuYwkyMDE5LTA1LTExIDE2OjI5OjM3LjAwMTQ1ODA4NCArMDIwMAotQEAgLTE4OSw3ICsxODks NyBAQAotICAgICAoKl94NTA5X3BwKSA9IFBLQ1M3X2NlcnRfZnJvbV9zaWduZXJfaW5mbyhfcDcs X3NpKQotICNlbmRpZgotIAotLSNpZiBPUEVOU1NMX1ZFUlNJT05fTlVNQkVSIDwgMHgxMDEwMDAw MEwKLSsjaWYgT1BFTlNTTF9WRVJTSU9OX05VTUJFUiA8IDB4MTAxMDAwMDBMIHx8IGRlZmluZWQo TElCUkVTU0xfVkVSU0lPTl9OVU1CRVIpCi0gCi0gLyogMS4xIHN0YW5kYXJkaXplcyBjb25zdHJ1 Y3RvciBhbmQgZGVzdHJ1Y3RvciBuYW1lcywgcmVuYW1pbmcKLSAgKiBFVlBfTURfQ1RYX3tjcmVh dGUsZGVzdHJveX0gYW5kIGRlcHJlY2F0aW5nIEFTTjFfU1RSSU5HX2RhdGEuICovCi1AQCAtMzA1 Myw3ICszMDUzLDcgQEAKLSAgICAgcmV0dXJuIHJldHZhbDsKLSB9Ci0gCi0tI2lmIE9QRU5TU0xf VkVSU0lPTl9OVU1CRVIgPj0gMHgxMDEwMDAwMEwKLSsjaWYgT1BFTlNTTF9WRVJTSU9OX05VTUJF UiA+PSAweDEwMTAwMDAwTCB8fCBkZWZpbmVkKExJQlJFU1NMX1ZFUlNJT05fTlVNQkVSKQotIAot IC8qCi0gICogV2UgbmVlZCB0byBkZWNvZGUgRG9tYWluUGFyYW1ldGVycyBmcm9tIFJGQyAzMjc5 IHNlY3Rpb24gMi4zLjMuICBXZSB3b3VsZAotQEAgLTMwNzksNyArMzA3OSw3IEBACi0gQVNOMV9T RVFVRU5DRShESHZwYXJhbXMpID0gewotICAgICBBU04xX1NJTVBMRShpbnRfZGh2cGFyYW1zLCBz ZWVkLCBBU04xX0JJVF9TVFJJTkcpLAotICAgICBBU04xX1NJTVBMRShpbnRfZGh2cGFyYW1zLCBj b3VudGVyLCBCSUdOVU0pCi0tfSBzdGF0aWNfQVNOMV9TRVFVRU5DRV9FTkRfbmFtZShpbnRfZGh2 cGFyYW1zLCBESHZwYXJhbXMpCi0rfSBBU04xX1NFUVVFTkNFX0VORF9uYW1lKGludF9kaHZwYXJh bXMsIERIdnBhcmFtcykKLSAKLSBBU04xX1NFUVVFTkNFKERIeHBhcmFtcykgPSB7Ci0gICAgIEFT TjFfU0lNUExFKGludF9kaHg5NDJfZGgsIHAsIEJJR05VTSksCi1AQCAtMzA4Nyw3ICszMDg3LDcg QEAKLSAgICAgQVNOMV9PUFQoaW50X2RoeDk0Ml9kaCwgcSwgQklHTlVNKSwKLSAgICAgQVNOMV9P UFQoaW50X2RoeDk0Ml9kaCwgaiwgQklHTlVNKSwKLSAgICAgQVNOMV9PUFQoaW50X2RoeDk0Ml9k aCwgdnBhcmFtcywgREh2cGFyYW1zKSwKLS19IHN0YXRpY19BU04xX1NFUVVFTkNFX0VORF9uYW1l KGludF9kaHg5NDJfZGgsIERIeHBhcmFtcykKLSt9IEFTTjFfU0VRVUVOQ0VfRU5EX25hbWUoaW50 X2RoeDk0Ml9kaCwgREh4cGFyYW1zKQotIAotIHN0YXRpYyBESCAqCi0gZGVjb2RlX2RoX3BhcmFt cyhjb25zdCB1aW50OF90ICpwLCB1bnNpZ25lZCBpbnQgbGVuKQpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9taXQta3JiNS90ZW1wbGF0ZSBiL3NyY3BrZ3MvbWl0LWtyYjUvdGVtcGxhdGUKaW5kZXggYTY3 YmFlMTk3NjRhLi4zNmE3ZGU0NmUwOTkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbWl0LWtyYjUvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9taXQta3JiNS90ZW1wbGF0ZQpAQCAtMiw4ICsyLDggQEAKICMg aWYgdGhlcmUgaXMgYSBidW1wIGluIC5zbyB2ZXJzaW9uLAogIyBhbHNvIHVwZGF0ZSBzcmNwa2dz L2xpYmdzc2dsdWUvZmlsZXMvZ3NzYXBpX21lY2guY29uZgogcGtnbmFtZT1taXQta3JiNQotdmVy c2lvbj0xLjE4LjMKLXJldmlzaW9uPTIKK3ZlcnNpb249MS4yMC4xCityZXZpc2lvbj0xCiBidWls ZF9zdHlsZT1nbnUtY29uZmlndXJlCiBob3N0bWFrZWRlcGVuZHM9ImUyZnNwcm9ncy1kZXZlbCBm bGV4IHBlcmwgcGtnLWNvbmZpZyIKIG1ha2VkZXBlbmRzPSJlMmZzcHJvZ3MtZGV2ZWwgbGlibGRh cC1kZXZlbCIKQEAgLTExLDggKzExLDggQEAgc2hvcnRfZGVzYz0iTUlUIEtlcmJlcm9zIDUgaW1w bGVtZW50YXRpb24iCiBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+ IgogbGljZW5zZT0iTUlUIgogaG9tZXBhZ2U9Imh0dHA6Ly93ZWIubWl0LmVkdS9rZXJiZXJvcyIK LWRpc3RmaWxlcz0iJHtob21lcGFnZX0vZGlzdC9rcmI1LyR7dmVyc2lvbiUuKn0va3JiNS0ke3Zl cnNpb259LnRhci5neiIKLWNoZWNrc3VtPWU2MTc4M2MyOTJiNWVmZDlhZmI0NWM1NTVhODBkZDI2 N2FjNjdlZWJhYmNhNDIxODUzNjJiZWU2YzRmYmQ3MTkKK2Rpc3RmaWxlcz0iaHR0cDovL3dlYi5t aXQuZWR1L2tlcmJlcm9zL2Rpc3Qva3JiNS8ke3ZlcnNpb24lLip9L2tyYjUtJHt2ZXJzaW9ufS50 YXIuZ3oiCitjaGVja3N1bT03MDRhZWQ0OWIxOWViNWE3MTc4YjM0YjI4NzM2MjBlYzI5OWRiMDg3 NTJkNmE4NTc0Zjk1ZDQxODc5YWI4ODUxCiAKIHBvc3RfcGF0Y2goKSB7CiAJdnNlZCAtZSAiL0xE RkxBR1M9L2QiIC1pIHNyYy9idWlsZC10b29scy9rcmI1LWNvbmZpZy5pbgoKRnJvbSA5NDI4YjA0 NDEyYWJhYTczM2E2ZWYyMmE2Njc0ZDRiZGE1NGZjMDE3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEg RmViIDIwMjMgMDI6MTk6MzMgKzAxMDAKU3ViamVjdDogW1BBVENIIDA0LzM5XSBldm9sdXRpb24t ZGF0YS1zZXJ2ZXI6IHJldmJ1bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dz L2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAx IGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXZvbHV0 aW9uLWRhdGEtc2VydmVyL3RlbXBsYXRlIGIvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIv dGVtcGxhdGUKaW5kZXggYmYxZGIyODhjZDEyLi4zNWY0ZjBiMDA5YzcgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZXZvbHV0 aW9uLWRhdGEtc2VydmVyL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxl IGZvciAnZXZvbHV0aW9uLWRhdGEtc2VydmVyJwogcGtnbmFtZT1ldm9sdXRpb24tZGF0YS1zZXJ2 ZXIKIHZlcnNpb249My40Ni4zCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1j bWFrZQogYnVpbGRfaGVscGVyPSJnaXIgcWVtdSIKIGNvbmZpZ3VyZV9hcmdzPSIgLURTWVNDT05G X0lOU1RBTExfRElSPS9ldGMKCkZyb20gM2YxNWJmNTAwNGFmZDkxMWIxMmMyMmZhNGRhMWJmZTlk MjNmOWFlMSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJh c21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDAyOjIwOjE5ICswMTAwClN1 YmplY3Q6IFtQQVRDSCAwNS8zOV0gZ251cGc6IHJldmJ1bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0 ZQoKLS0tCiBzcmNwa2dzL2dudXBnL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEg aW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbnVwZy90 ZW1wbGF0ZSBiL3NyY3BrZ3MvZ251cGcvdGVtcGxhdGUKaW5kZXggYzdjYmU2ODlmMjNhLi40NmI1 OTZmMGNhYzggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ251cGcvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9nbnVwZy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2du dXBnJwogcGtnbmFtZT1nbnVwZwogdmVyc2lvbj0yLjQuMAotcmV2aXNpb249MQorcmV2aXNpb249 MgogIyBXZSdyZSBidWlsZGluZyBvdXRzaWRlIG9mIHRoZSBzb3VyY2UgdHJlZSwgYmVjYXVzZSB1 cHN0cmVhbSB0b2xkIHVzIHRvOgogIyBodHRwczovL2Rldi5nbnVwZy5vcmcvVDYzMTMjMTY2MzM5 CiBidWlsZF93cmtzcmM9YnVpbGQKCkZyb20gZWYzNGE0NWQxM2JmNGNiN2MzNGJjZmM1MzM1MzVh NTJiY2RhNzExNyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGts YXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE1OjEzOjI1ICswMTAw ClN1YmplY3Q6IFtQQVRDSCAwNi8zOV0gRnJlZVJBRElVUzogcmV2YnVtcCBkdWUgdG8gb3Blbmxk YXAgdXBkYXRlCgotLS0KIHNyY3BrZ3MvRnJlZVJBRElVUy90ZW1wbGF0ZSB8IDIgKy0KIDEgZmls ZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvRnJlZVJBRElVUy90ZW1wbGF0ZSBiL3NyY3BrZ3MvRnJlZVJBRElVUy90ZW1wbGF0ZQpp bmRleCBlZTIwNTlhMzczYjQuLjViMmQ2ZmNiNzRmMyAxMDA2NDQKLS0tIGEvc3JjcGtncy9GcmVl UkFESVVTL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvRnJlZVJBRElVUy90ZW1wbGF0ZQpAQCAtMSw3 ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ0ZyZWVSQURJVVMnCiBwa2duYW1lPUZyZWVS QURJVVMKIHZlcnNpb249My4wLjI2Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHls ZT1nbnUtY29uZmlndXJlCiBtYWtlZGVwZW5kcz0idGFsbG9jLWRldmVsIG9wZW5zc2wtZGV2ZWwg bWl0LWtyYjUtZGV2ZWwgcGFtLWRldmVsIFwKICBsaWJtYXJpYWRiY2xpZW50LWRldmVsIHBvc3Rn cmVzcWwtbGlicy1kZXZlbCBqc29uLWMtZGV2ZWwiCgpGcm9tIGI5NGVlMGI1ZTg3NzVlYjFmNWIw NWYzNmRlOTI1Y2U1MmZmY2NlMjMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJh IE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNTox NDozMSArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMDcvMzldIGFscGluZTogcmV2YnVtcCBkdWUgdG8g b3BlbmxkYXAgdWRwYXRlCgphbHNvIGFkZCBCU0QtNC1DbGF1c2UgdG8gbGljZW5zZXMKLS0tCiBz cmNwa2dzL2FscGluZS90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0 aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2FscGluZS90ZW1w bGF0ZSBiL3NyY3BrZ3MvYWxwaW5lL3RlbXBsYXRlCmluZGV4IDAyYzRmOTQ0NTE1Yy4uOTc4OWUz MDNmYzhhIDEwMDY0NAotLS0gYS9zcmNwa2dzL2FscGluZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L2FscGluZS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2Fs cGluZScKIHBrZ25hbWU9YWxwaW5lCiB2ZXJzaW9uPTIuMjYKLXJldmlzaW9uPTEKK3JldmlzaW9u PTIKIF9naXRoYXNoPTk3MjZjMDk4YTczOWVkZmRjYTYyMThiYzVkZWUxMDRjMzEwOTU3ZTkKIF9n aXRzaG9ydD0iJHtfZ2l0aGFzaDowOjd9IgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQpAQCAt MTMsNyArMTMsNyBAQCBob3N0bWFrZWRlcGVuZHM9Imh1bnNwZWxsIgogbWFrZWRlcGVuZHM9Imdl dHRleHQtZGV2ZWwgbGlibGRhcC1kZXZlbCBtaXQta3JiNS1kZXZlbCBuY3Vyc2VzLWRldmVsIgog c2hvcnRfZGVzYz0iQXBhY2hlLWxpY2Vuc2VkIFBJTkUgbWFpbCB1c2VyIGFnZW50ICh3aXRoIENo YXBwYSBwYXRjaGVzKSIKIG1haW50YWluZXI9IkxlYWggTmV1a2lyY2hlbiA8bGVhaEB2dXh1Lm9y Zz4iCi1saWNlbnNlPSJBcGFjaGUtMi4wIgorbGljZW5zZT0iQXBhY2hlLTIuMCwgQlNELTQtQ2xh dXNlIgogaG9tZXBhZ2U9Imh0dHBzOi8vcmVwby5vci5jei9hbHBpbmUuZ2l0IgogZGlzdGZpbGVz PSJodHRwczovL3JlcG8ub3IuY3ovYWxwaW5lLmdpdC9zbmFwc2hvdC8ke19naXRoYXNofS50YXIu Z3oiCiBjaGVja3N1bT1jOGMzNzdlYWIwZjY1YjUxMjgzZTBhZDMxNDRiZTE0MzA2NWRjYTQ0NjNk MTJjY2Y1MDkyYWU4NDE1MTVhNDMxCgpGcm9tIGViYWZiN2U4OGVkMTQ3YjU0MzI3OTg3YjA4NGIz NjA3MWVmYmFhN2QgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxr bGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNToxODoyNyArMDEw MApTdWJqZWN0OiBbUEFUQ0ggMDgvMzldIGFuanV0YTogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAg dXBkYXRlCgphbHNvIGZpeCBkZXRlY3Rpb24gb2Ygd2Via2l0Mmd0awotLS0KIHNyY3BrZ3MvYW5q dXRhL3BhdGNoZXMvZml4LXdlYmtpdDJndGstZGV0ZWN0aW9uLnBhdGNoIHwgMTEgKysrKysrKysr KysKIHNyY3BrZ3MvYW5qdXRhL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgIDQgKystLQogMiBmaWxlcyBjaGFuZ2VkLCAxMyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9u cygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvYW5qdXRhL3BhdGNoZXMvZml4LXdlYmtp dDJndGstZGV0ZWN0aW9uLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hbmp1dGEvcGF0Y2hl cy9maXgtd2Via2l0Mmd0ay1kZXRlY3Rpb24ucGF0Y2ggYi9zcmNwa2dzL2FuanV0YS9wYXRjaGVz L2ZpeC13ZWJraXQyZ3RrLWRldGVjdGlvbi5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCAwMDAwMDAwMDAwMDAuLjE3YzBkYjkxMWNiYQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mv YW5qdXRhL3BhdGNoZXMvZml4LXdlYmtpdDJndGstZGV0ZWN0aW9uLnBhdGNoCkBAIC0wLDAgKzEs MTEgQEAKKy0tLSBhL2NvbmZpZ3VyZS5hYwkyMDE5LTA5LTA4IDE5OjMzOjU3LjAwMDAwMDAwMCAr MDIwMAorKysrIGIvY29uZmlndXJlLmFjCTIwMjMtMDItMDEgMjI6NDE6NTQuNjM5OTQzODk3ICsw MTAwCitAQCAtMjQ2LDcgKzI0Niw3IEBACisgCQkqd2Via2l0Mmd0ay0zLjAqKQorIAkJCUFDX0RF RklORShbSEFWRV9XRUJLSVQyXSwgWzFdLCBbRGVmaW5lZCBpZiBkZXZoZWxwIGlzIGJ1aWx0IGFn YWluc3Qgd2Via2l0Z3RrMl0pCisgCQkJOzsKKy0JCSp3ZWJraXQyZ3RrLTQuMCopCisrCQkqd2Vi a2l0Mmd0ay00LiopCisgCQkJQUNfREVGSU5FKFtIQVZFX1dFQktJVDJdLCBbMV0sIFtEZWZpbmVk IGlmIGRldmhlbHAgaXMgYnVpbHQgYWdhaW5zdCB3ZWJraXRndGsyXSkKKyAJCQk7OworIAkJZXNh YwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hbmp1dGEvdGVtcGxhdGUgYi9zcmNwa2dzL2FuanV0YS90 ZW1wbGF0ZQppbmRleCBiNDZkNThhZWFmZTMuLjA3NzdlMWI5MmU1NyAxMDA2NDQKLS0tIGEvc3Jj cGtncy9hbmp1dGEvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9hbmp1dGEvdGVtcGxhdGUKQEAgLTEs NyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdhbmp1dGEnCiBwa2duYW1lPWFuanV0YQog dmVyc2lvbj0zLjM0LjAKLXJldmlzaW9uPTQKK3JldmlzaW9uPTUKIGJ1aWxkX3N0eWxlPWdudS1j b25maWd1cmUKIGJ1aWxkX2hlbHBlcj0iZ2lyIHFlbXUiCiBjb25maWd1cmVfYXJncz0iLS1kaXNh YmxlLWNvbXBpbGUtd2FybmluZ3MgLS1kaXNhYmxlLXNjaGVtYXMtY29tcGlsZQpAQCAtMTQsNyAr MTQsNyBAQCBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgaW50bHRvb2wgZmxleCBpdHN0b29s IHB5dGhvbjMgYXV0b2dlbiBnbGliLWRldmVsCiBtYWtlZGVwZW5kcz0iZ3Rrc291cmNldmlldy1k ZXZlbCBsaWJ4bWwyLWRldmVsIHZ0ZTMtZGV2ZWwgZ2pzLWRldmVsCiAgbGlieHNsdC1kZXZlbCBn bGFkZTMtZGV2ZWwgZ3JhcGh2aXotZGV2ZWwgdmFsYS1kZXZlbAogIGxpYmdkYS1kZXZlbCBkZXZo ZWxwLWRldmVsIHNxbGl0ZS1kZXZlbCBhcHItdXRpbC1kZXZlbAotIG5lb24tZGV2ZWwgc3VidmVy c2lvbi1kZXZlbCBweXRob24zLWRldmVsIGdkbC1kZXZlbCIKKyBuZW9uLWRldmVsIHN1YnZlcnNp b24tZGV2ZWwgcHl0aG9uMy1kZXZlbCBnZGwtZGV2ZWwgd2Via2l0Mmd0ay1kZXZlbCIKIGRlcGVu ZHM9ImF1dG9nZW4iCiBzaG9ydF9kZXNjPSJHTk9NRSBJbnRlZ3JhdGVkIERldmVsb3BtZW50IEVu dmlyb25tZW50IgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3Jn PiIKCkZyb20gNDczNWFlNGQzODM1ODA2MTkxNTZmOWI3NDU4OTQ0ZWJkYjFhMDZkOCBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNv bT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE1OjE5OjQ1ICswMTAwClN1YmplY3Q6IFtQQVRDSCAw OS8zOV0gYXBhY2hlOiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtn cy9hcGFjaGUvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyks IDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2FwYWNoZS90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvYXBhY2hlL3RlbXBsYXRlCmluZGV4IDYyOWFkMThiMzRhNS4uYTY2MWJmNzFkNWMxIDEw MDY0NAotLS0gYS9zcmNwa2dzL2FwYWNoZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2FwYWNoZS90 ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2FwYWNoZScKIHBr Z25hbWU9YXBhY2hlCiB2ZXJzaW9uPTIuNC41NAotcmV2aXNpb249MgorcmV2aXNpb249MwogYnVp bGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tcHJlZml4PSAtLXNiaW5k aXI9L3Vzci9iaW4gLS1lbmFibGUtcGllIC0tZW5hYmxlLW1vZHVsZXM9YWxsCiAgLS1lbmFibGUt bW9kcy1zaGFyZWQ9YWxsIC0tZW5hYmxlLWF1dGhuLWRibSAtLWVuYWJsZS1hdXRobi1hbm9uCgpG cm9tIDYyZWEzOTlmYWU2OTg5ZDQxY2M4NWJiYjU0ODc0NmYxNjg3OGM3NTggTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRh dGU6IFdlZCwgMSBGZWIgMjAyMyAxNToyNTozMyArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTAvMzld IGFwci11dGlsOiB1cGRhdGUgdG8gMS42LjIKCmZhaWxlZCB0byBkb3dubG9hZCBkaXN0ZmlsZXMg d2hlbiByZXZidW1waW5nCgotIHVwZGF0ZSBtaXJyb3IKLSByZW1vdmUgdXBzdHJlYW1lZCBwYXRj aAotLS0KIHNyY3BrZ3MvYXByLXV0aWwvcGF0Y2hlcy9teXNxbC5wYXRjaCB8IDE1IC0tLS0tLS0t LS0tLS0tLQogc3JjcGtncy9hcHItdXRpbC90ZW1wbGF0ZSAgICAgICAgICAgIHwgIDggKysrKy0t LS0KIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAxOSBkZWxldGlvbnMoLSkKIGRl bGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2Fwci11dGlsL3BhdGNoZXMvbXlzcWwucGF0Y2gKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL2Fwci11dGlsL3BhdGNoZXMvbXlzcWwucGF0Y2ggYi9zcmNwa2dz L2Fwci11dGlsL3BhdGNoZXMvbXlzcWwucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IGJmMTc5MmVkNmViYi4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvYXByLXV0aWwvcGF0 Y2hlcy9teXNxbC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDE1ICswLDAgQEAKLWZpeGVzOiBo dHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBhY2thZ2VzL2lzc3Vlcy8zOTUxMAot dGFrZW4gZnJvbSB1cHN0cmVhbTogaHR0cHM6Ly9zdm4uYXBhY2hlLm9yZy92aWV3dmMvYXByL2Fw ci90cnVuay9kYmQvYXByX2RiZF9teXNxbC5jP3IxPTE4NzIwNTkmcjI9MTg3MjA2MCZkaWZmX2Zv cm1hdD1oCi0KLS0tLSBhL2RiZC9hcHJfZGJkX215c3FsLmMKLSsrKyBiL2RiZC9hcHJfZGJkX215 c3FsLmMKLUBAIC0xMjYyLDcgKzEyNjIsOSBAQAotIAotIHN0YXRpYyB2b2lkIGRiZF9teXNxbF9p bml0KGFwcl9wb29sX3QgKnBvb2wpCi0gewotKyNpZiBNWVNRTF9WRVJTSU9OX0lEIDwgMTAwMDAw Ci0gICAgIG15X2luaXQoKTsKLSsjZW5kaWYKLSAgICAgbXlzcWxfdGhyZWFkX2luaXQoKTsKLSAK LSAgICAgLyogRklYTUU6IHRoaXMgaXMgYSBndWVzczsgZmluZCBvdXQgd2hhdCBpdCByZWFsbHkg ZG9lcyAqLwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hcHItdXRpbC90ZW1wbGF0ZSBiL3NyY3BrZ3Mv YXByLXV0aWwvdGVtcGxhdGUKaW5kZXggZjFjZDQzNjMzNjVhLi41ZTkwMDk4NTFiYTQgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvYXByLXV0aWwvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9hcHItdXRpbC90 ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2Fwci11dGlsJwog cGtnbmFtZT1hcHItdXRpbAotdmVyc2lvbj0xLjYuMQotcmV2aXNpb249MTMKK3ZlcnNpb249MS42 LjIKK3JldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdz PSIKICAtLXdpdGgtcGdzcWwgLS13aXRoLWxkYXAKQEAgLTE3LDggKzE3LDggQEAgc2hvcnRfZGVz Yz0iQXBhY2hlIFBvcnRhYmxlIFJ1bnRpbWUgVXRpbGl0eSBMaWJyYXJ5IgogbWFpbnRhaW5lcj0i T3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkFwYWNoZS0yLjAiCiBo b21lcGFnZT0iaHR0cHM6Ly9hcHIuYXBhY2hlLm9yZy8iCi1kaXN0ZmlsZXM9Imh0dHBzOi8vd3d3 LmFwYWNoZS5vcmcvZGlzdC9hcHIvJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci5iejIiCi1jaGVj a3N1bT1kM2UxMmY3YjZhZDEyNjg3NTcyYTNhMzk0NzU1NDVhMDcyNjA4ZjRiYTAzYTZjZThhMzc3 OGY2MDdkZDAwMzViCitkaXN0ZmlsZXM9Imh0dHBzOi8vZG93bmxvYWRzLmFwYWNoZS5vcmcvYXBy LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIuYnoyIgorY2hlY2tzdW09NGZlNTc0NDNhNzkwNTAy N2UxMzcwN2M4NzVjNWRlNmY5ZmM2ZTJlNWEyNzI1ZDY5NWIyNWE4YTEwYzJkMjdlMAogIyBmYWls cyB0byBidWlsZCB0ZXN0cwogbWFrZV9jaGVjaz1ubwogCgpGcm9tIDg3NmI2MWEzNGE4OTRiNTYw MDI3ZjIyN2IwMjdmOTBkOWUxNDI4YmYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEts YXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAx NToyNjo1NCArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTEvMzldIGF1ZGl0OiByZXZidW1wIGR1ZSB0 byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtncy9hdWRpdC90ZW1wbGF0ZSB8IDIgKy0KIDEg ZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvYXVkaXQvdGVtcGxhdGUgYi9zcmNwa2dzL2F1ZGl0L3RlbXBsYXRlCmluZGV4IDdl MWU0ZGFiMmY0NS4uMzM0ZDU2N2YzNzgxIDEwMDY0NAotLS0gYS9zcmNwa2dzL2F1ZGl0L3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvYXVkaXQvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdhdWRpdCcKIHBrZ25hbWU9YXVkaXQKIHZlcnNpb249My4wLjMKLXJldmlz aW9uPTQKK3JldmlzaW9uPTUKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9h cmdzPSItLWxpYmRpcj0vdXNyL2xpYiAtLWVuYWJsZS1zaGFyZWQ9YXVkaXQgLS1lbmFibGUtZ3Nz YXBpLWtyYjUKICAtLXdpdGgtYXBwYXJtb3IgLS13aXRoLWxpYmNhcC1uZyAtLXdpdGgtcHl0aG9u MyIKCkZyb20gMGVhNmFiZDY2ZTJiODNiMGQ1YzNlYzRhZWYwZGNiZDgwNmM4MWNiNCBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNv bT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE1OjI4OjE1ICswMTAwClN1YmplY3Q6IFtQQVRDSCAx Mi8zOV0gYXV0b2ZzOiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtn cy9hdXRvZnMvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyks IDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2F1dG9mcy90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvYXV0b2ZzL3RlbXBsYXRlCmluZGV4IGE5YWJjNjBlNjRlOC4uNWY2M2QwYWQ5MmNhIDEw MDY0NAotLS0gYS9zcmNwa2dzL2F1dG9mcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2F1dG9mcy90 ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2F1dG9mcycKIHBr Z25hbWU9YXV0b2ZzCiB2ZXJzaW9uPTUuMS44Ci1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWls ZF9zdHlsZT1nbnUtY29uZmlndXJlCiBtYWtlX2J1aWxkX2FyZ3M9IkRPTlRTVFJJUD0xIgogY29u ZmlndXJlX2FyZ3M9Ii0td2l0aC1saWJ0aXJwYyAtLXdpdGgtbWFwZGlyPS9ldGMvYXV0b2ZzIC0t c2JpbmRpcj0vdXNyL2JpbiIKCkZyb20gN2RhMDExMmMwZjdlNjEyYzdjZjljNjk1MDBjM2EwOWIy YzM3ZjdmMSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJh c21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE1OjI5OjA0ICswMTAwClN1 YmplY3Q6IFtQQVRDSCAxMy8zOV0gY2xhd3MtbWFpbDogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAg dXBkYXRlCgotLS0KIHNyY3BrZ3MvY2xhd3MtbWFpbC90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBj aGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvY2xhd3MtbWFpbC90ZW1wbGF0ZSBiL3NyY3BrZ3MvY2xhd3MtbWFpbC90ZW1wbGF0ZQppbmRl eCAwZmQ4N2RmNzgwM2UuLmI5ODllYmYxZDhlNCAxMDA2NDQKLS0tIGEvc3JjcGtncy9jbGF3cy1t YWlsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvY2xhd3MtbWFpbC90ZW1wbGF0ZQpAQCAtMSw3ICsx LDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2NsYXdzLW1haWwnCiBwa2duYW1lPWNsYXdzLW1h aWwKIHZlcnNpb249NC4xLjEKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWdu dS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSItLWRpc2FibGUtc3RhdGljIC0tZGlzYWJsZS1w eXRob24tcGx1Z2luIC0tZGlzYWJsZS1wZXJsLXBsdWdpbgogIC0tZW5hYmxlLWVuY2hhbnQgLS1l bmFibGUtZ251dGxzIgoKRnJvbSBlODYxNDZjMzc2NWEzZGI0YmQ0ZGE4NmZmMWUxMjJmODllZDNi Yjc4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9k aW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTU6MzE6MTYgKzAxMDAKU3ViamVj dDogW1BBVENIIDE0LzM5XSBkb3ZlY290OiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUK Ci0tLQogc3JjcGtncy9kb3ZlY290L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEg aW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9kb3ZlY290 L3RlbXBsYXRlIGIvc3JjcGtncy9kb3ZlY290L3RlbXBsYXRlCmluZGV4IDc4N2IyOWI2ZWFiOC4u Njk3Nzg4ZTVjMjY2IDEwMDY0NAotLS0gYS9zcmNwa2dzL2RvdmVjb3QvdGVtcGxhdGUKKysrIGIv c3JjcGtncy9kb3ZlY290L3RlbXBsYXRlCkBAIC0yLDcgKzIsNyBAQAogIyByZXZidW1wIGRvdmVj b3QtcGx1Z2luLXBpZ2VvbmhvbGUgd2hlbiB1cGRhdGluZyBkb3ZlY290IQogcGtnbmFtZT1kb3Zl Y290CiB2ZXJzaW9uPTIuMy4yMAotcmV2aXNpb249MgorcmV2aXNpb249MwogYnVpbGRfc3R5bGU9 Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0td2l0aC1tb2R1bGVkaXI9L3Vzci9saWIv ZG92ZWNvdC9tb2R1bGVzIC0td2l0aC1zcWw9cGx1Z2luCiAgLS1kaXNhYmxlLXN0YXRpYyAtLXdp dGgtcGFtIC0td2l0aC1teXNxbCAtLXdpdGgtcGdzcWwgLS13aXRoLWx1Y2VuZQoKRnJvbSA0Yjdk ODI1OTM5MDgyY2RhYzhhNTU4NTczMGY1YTdjY2NiMDBlMzA0IE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQs IDEgRmViIDIwMjMgMTU6MzI6MzIgKzAxMDAKU3ViamVjdDogW1BBVENIIDE1LzM5XSBkb3ZlY290 LXBsdWdpbi1waWdlb25ob2xlOiByZXZidW1wIGR1ZSB0byBvcGVubGRhcAogdXBkYXRlCgotLS0K IHNyY3BrZ3MvZG92ZWNvdC1wbHVnaW4tcGlnZW9uaG9sZS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmls ZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvZG92ZWNvdC1wbHVnaW4tcGlnZW9uaG9sZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvZG92ZWNv dC1wbHVnaW4tcGlnZW9uaG9sZS90ZW1wbGF0ZQppbmRleCBlNGQxNjhjYzRmNzguLjhhZDM3Y2Nm OGZkYSAxMDA2NDQKLS0tIGEvc3JjcGtncy9kb3ZlY290LXBsdWdpbi1waWdlb25ob2xlL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvZG92ZWNvdC1wbHVnaW4tcGlnZW9uaG9sZS90ZW1wbGF0ZQpAQCAt MSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2RvdmVjb3QtcGx1Z2luLXBpZ2Vvbmhv bGUnCiBwa2duYW1lPWRvdmVjb3QtcGx1Z2luLXBpZ2VvbmhvbGUKIHZlcnNpb249MC41LjIwCi1y ZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1 cmVfYXJncz0iLS1wcmVmaXg9L3VzcgogIC0td2l0aC1kb3ZlY290PSR7WEJQU19DUk9TU19CQVNF fS91c3IvbGliL2RvdmVjb3QKCkZyb20gNmVlMzU5ZDQ0YzU0OGM5OTFkMTExMzM1ZjM1ODI5OGZl OGM2OTBiOSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJh c21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE1OjMzOjQ1ICswMTAwClN1 YmplY3Q6IFtQQVRDSCAxNi8zOV0gZXZvbHV0aW9uOiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1 cGRhdGUKCi0tLQogc3JjcGtncy9ldm9sdXRpb24vdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hh bmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dz L2V2b2x1dGlvbi90ZW1wbGF0ZSBiL3NyY3BrZ3MvZXZvbHV0aW9uL3RlbXBsYXRlCmluZGV4IGI5 YTYzYWYwOTk1NS4uNWJkMjkxNzNhYzI2IDEwMDY0NAotLS0gYS9zcmNwa2dzL2V2b2x1dGlvbi90 ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2V2b2x1dGlvbi90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2V2b2x1dGlvbicKIHBrZ25hbWU9ZXZvbHV0aW9uCiB2ZXJz aW9uPTMuNDYuMwotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGJ1 aWxkX2hlbHBlcj0icWVtdSIKIGNvbmZpZ3VyZV9hcmdzPSItRFNZU0NPTkZfSU5TVEFMTF9ESVI9 L2V0YwoKRnJvbSA4NTFlNmFlZjFjMTZkMzJkZjI4Y2Y3MDM0NTcxYzg0ZWRmNmM2NDE4IE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwu Y29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTU6MzU6MjcgKzAxMDAKU3ViamVjdDogW1BBVENI IDE3LzM5XSBnbnVwZzE6IHJldmJ1bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNw a2dzL2dudXBnMS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigr KSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ251cGcxL3RlbXBsYXRlIGIv c3JjcGtncy9nbnVwZzEvdGVtcGxhdGUKaW5kZXggYzBjODM3NDc3OTM5Li5lODYxNDcwMDZhYTEg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ251cGcxL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ251cGcx L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ251cGcxJwog cGtnbmFtZT1nbnVwZzEKIHZlcnNpb249MS40LjIzCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBi dWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS1lbmFibGUtdGhyZWFk cz1wb3NpeCAtLWVuYWJsZS1ub2V4ZWNzdGFjawogIGdudXBnX2N2X3JlZ2V4X2Jyb2tlbj1ubyIK CkZyb20gNjEwYTcwNGUwODhhMzMxNmMyZTQ1ODI3ZTAyYzEwOTYyYmE5YTZkZCBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4K RGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE1OjM2OjUwICswMTAwClN1YmplY3Q6IFtQQVRDSCAxOC8z OV0ga2xkYXA6IHJldmJ1bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dzL2ts ZGFwL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRl bGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9rbGRhcC90ZW1wbGF0ZSBiL3NyY3BrZ3Mv a2xkYXAvdGVtcGxhdGUKaW5kZXggYzRmNmFjZGI4N2RiLi4wNDQzOWJmZDIyYzEgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3Mva2xkYXAvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9rbGRhcC90ZW1wbGF0ZQpA QCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2tsZGFwJwogcGtnbmFtZT1rbGRh cAogdmVyc2lvbj0yMi4xMi4xCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1j bWFrZQogaG9zdG1ha2VkZXBlbmRzPSJleHRyYS1jbWFrZS1tb2R1bGVzIHF0NS1xbWFrZSBxdDUt aG9zdC10b29scyBweXRob24zCiAgZ2V0dGV4dCBrY29yZWFkZG9ucyBrZG9jdG9vbHMiCgpGcm9t IGYxNjVlNzc5OTUzNGQ3YzJiMWM5MWZhNGU3NGZiOWYwODdlNDcyNzQgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6 IFdlZCwgMSBGZWIgMjAyMyAxNTozNzoyNyArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTkvMzldIGxk YXB2aTogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgphbHNvIGZpeCBzb21lIGxpbnRp bmcgcHJvYmxlbXMKLS0tCiBzcmNwa2dzL2xkYXB2aS90ZW1wbGF0ZSB8IDggKysrKy0tLS0KIDEg ZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9sZGFwdmkvdGVtcGxhdGUgYi9zcmNwa2dzL2xkYXB2aS90ZW1wbGF0ZQppbmRl eCAxZGRhM2MyYWU2ZTguLjg4NDAxYjcyMjE5NyAxMDA2NDQKLS0tIGEvc3JjcGtncy9sZGFwdmkv dGVtcGxhdGUKKysrIGIvc3JjcGtncy9sZGFwdmkvdGVtcGxhdGUKQEAgLTEsMTUgKzEsMTUgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2xkYXB2aScKIHBrZ25hbWU9bGRhcHZpCiB2ZXJzaW9uPTEu NwotcmV2aXNpb249MTEKK3JldmlzaW9uPTEyCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBj b25maWd1cmVfYXJncz0iLS13aXRoLXNoYSIKLW1haW50YWluZXI9IkxlYWggTmV1a2lyY2hlbiA8 bGVhaEB2dXh1Lm9yZz4iCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWciCiBtYWtlZGVwZW5k cz0ibmN1cnNlcy1kZXZlbCByZWFkbGluZS1kZXZlbCBsaWJzYXNsLWRldmVsIHBvcHQtZGV2ZWwg bGlibGRhcC1kZXZlbCBnbGliLWRldmVsIgotbGljZW5zZT0iR1BMLTIiCitzaG9ydF9kZXNjPSJJ bnRlcmFjdGl2ZSBMREFQIGNsaWVudCBmb3IgVW5peCB0ZXJtaW5hbHMiCittYWludGFpbmVyPSJM ZWFoIE5ldWtpcmNoZW4gPGxlYWhAdnV4dS5vcmc+IgorbGljZW5zZT0iR1BMLTIuMC1vci1sYXRl ciIKIGhvbWVwYWdlPSJodHRwOi8vd3d3LmxpY2h0ZWJsYXUuY29tL2xkYXB2aS8iCi1zaG9ydF9k ZXNjPSJBbiBpbnRlcmFjdGl2ZSBMREFQIGNsaWVudCBmb3IgVW5peCB0ZXJtaW5hbHMiCiBkaXN0 ZmlsZXM9Imh0dHA6Ly93d3cubGljaHRlYmxhdS5jb20vZG93bmxvYWQvbGRhcHZpLSR7dmVyc2lv bn0udGFyLmd6IgogY2hlY2tzdW09NmY2MmU5MmQyMGZmMmFjMGQwNjEyNTAyNGE5MTRiODYyMmU1 YjhhMGEwYzJkMzkwYmYzZTc5OTBjYmQyZTE1MwogCgpGcm9tIDMyMTBiZDBiMzcxZGUxN2M2ZTdi MmNlNGI5NTJkNDdmMDcxN2EzMzUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJh IE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNTo0 MDozNCArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMjAvMzldIG5mcy11dGlsczogcmV2YnVtcCBkdWUg dG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3MvbmZzLXV0aWxzL3RlbXBsYXRlIHwgMiAr LQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0t Z2l0IGEvc3JjcGtncy9uZnMtdXRpbHMvdGVtcGxhdGUgYi9zcmNwa2dzL25mcy11dGlscy90ZW1w bGF0ZQppbmRleCAyNTJhNzM1NWI2ODMuLjFlYTIzNzgxY2FmZiAxMDA2NDQKLS0tIGEvc3JjcGtn cy9uZnMtdXRpbHMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9uZnMtdXRpbHMvdGVtcGxhdGUKQEAg LTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICduZnMtdXRpbHMnCiBwa2duYW1lPW5m cy11dGlscwogdmVyc2lvbj0yLjYuMgotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5 bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0td2l0aC1zdGF0ZHVzZXI9bm9ib2R5 IC0tZW5hYmxlLWdzcyAtLWVuYWJsZS1uZnN2NAogIC0td2l0aC1zdGF0ZWRpcj0vdmFyL2xpYi9u ZnMgLS1lbmFibGUtbGlibW91bnQtbW91bnQgLS1lbmFibGUtc3ZjZ3NzCgpGcm9tIDM5MTlmNzM1 ODllZmI4OTI2MWU1NTJmMzFhMzFhZWU0YWU4ZjJkMDggTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBG ZWIgMjAyMyAxNTo0MTozMSArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMjEvMzldIGxpYnJlb2ZmaWNl OiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtncy9saWJyZW9mZmlj ZS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxl dGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGlicmVvZmZpY2UvdGVtcGxhdGUgYi9zcmNw a2dzL2xpYnJlb2ZmaWNlL3RlbXBsYXRlCmluZGV4IDExZTAyMzg0N2YxZS4uZWJjNzYyNzJkNmQ4 IDEwMDY0NAotLS0gYS9zcmNwa2dzL2xpYnJlb2ZmaWNlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv bGlicmVvZmZpY2UvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICdsaWJyZW9mZmljZScKIHBrZ25hbWU9bGlicmVvZmZpY2UKIHZlcnNpb249Ny40LjMuMgotcmV2 aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9bWV0YQogbWFrZV9idWlsZF90YXJnZXQ9 ImJ1aWxkIgogbm9jcm9zcz0iU2V2ZXJhbCBkZXBlbmRlbmNpZXMgYXJlIG5vY3Jvc3M9eWVzIgoK RnJvbSBmNDA1NDlmMjFhMTZhMjg2MDMzZWQzMGY4NDIxYzY1YjM2ZmY1MTdkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpE YXRlOiBXZWQsIDEgRmViIDIwMjMgMTU6NDU6NTEgKzAxMDAKU3ViamVjdDogW1BBVENIIDIyLzM5 XSBzYW1iYTogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3Mvc2Ft YmEvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVs ZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3NhbWJhL3RlbXBsYXRlIGIvc3JjcGtncy9z YW1iYS90ZW1wbGF0ZQppbmRleCAzYmE5MzI2ODk3M2QuLjNlMTE5OWI3MGM1ZSAxMDA2NDQKLS0t IGEvc3JjcGtncy9zYW1iYS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3NhbWJhL3RlbXBsYXRlCkBA IC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnc2FtYmEnCiBwa2duYW1lPXNhbWJh CiB2ZXJzaW9uPTQuMTQuMTIKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1aWxkX3N0eWxlPXdh ZjMKIGJ1aWxkX2hlbHBlcj0icWVtdSIKIGNvbmZpZ3VyZV9zY3JpcHQ9ImJ1aWxkdG9vbHMvYmlu L3dhZiIKCkZyb20gZWI0N2M4MmJmZWMzNjA4NjM5ZTUwYWMyMWMxYzFiOTljZjczMzI4OSBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWls LmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE1OjUxOjI0ICswMTAwClN1YmplY3Q6IFtQQVRD SCAyMy8zOV0gbGlnaHR0cDogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNy Y3BrZ3MvbGlnaHR0cGQvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRp b24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpZ2h0dHBkL3RlbXBs YXRlIGIvc3JjcGtncy9saWdodHRwZC90ZW1wbGF0ZQppbmRleCBmOTkwMzc1MTRhZTIuLjAxNTNi NGE4MjIwZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9saWdodHRwZC90ZW1wbGF0ZQorKysgYi9zcmNw a2dzL2xpZ2h0dHBkL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAnbGlnaHR0cGQnCiBwa2duYW1lPWxpZ2h0dHBkCiB2ZXJzaW9uPTEuNC42OQotcmV2aXNpb249 MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9bWVzb24KIGNvbmZpZ3VyZV9hcmdzPSItRHdpdGhf YnJvdGxpPWRpc2FibGVkIC1Ed2l0aF9iemlwPWRpc2FibGVkCiAgLUR3aXRoX2tyYjU9ZW5hYmxl ZCAtRHdpdGhfbGRhcD1lbmFibGVkCgpGcm9tIDk2MWI4NjZkYjY2MDU1MzA3MzZkMWI5ZjZlNGM5 NDg1NDE5NGZmYTggTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxr bGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNTo1Mzo1MyArMDEw MApTdWJqZWN0OiBbUEFUQ0ggMjQvMzldIGxvZzRjeHg6IHVwZGF0ZSB0byAxLjAuMAoKLSBmaXgg YSBsaW50aW5nIGlzc3VlCi0gZml4IHN1YnBhY2FrZ2UKLS0tCiAuLi4vcGF0Y2hlcy8xMDAtYnVn Zml4LUxPR0NYWC0yODQucGF0Y2ggICAgICAgfCAxNyAtLS0tCiAuLi4vcGF0Y2hlcy8xNTAtYnVn Zml4LUxPR0NYWC0zNjUucGF0Y2ggICAgICAgfCAxOSAtLS0tLQogc3JjcGtncy9sb2c0Y3h4L3Bh dGNoZXMvMTcwLWdjYzYtZml4LnBhdGNoICAgIHwgODAgLS0tLS0tLS0tLS0tLS0tLS0tLQogLi4u L3BhdGNoZXMvMTgwLWdjYy1maXgtdGVzdHN1aXRlLnBhdGNoICAgICAgIHwgMjUgLS0tLS0tCiAu Li4vbG9nNGN4eC9wYXRjaGVzL21pc3NpbmctaW5jbHVkZXMucGF0Y2ggICAgfCAzOCAtLS0tLS0t LS0KIHNyY3BrZ3MvbG9nNGN4eC90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgICB8IDE0ICsr LS0KIDYgZmlsZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCAxODYgZGVsZXRpb25zKC0pCiBk ZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMvMTAwLWJ1Z2ZpeC1MT0dD WFgtMjg0LnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMv MTUwLWJ1Z2ZpeC1MT0dDWFgtMzY1LnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9s b2c0Y3h4L3BhdGNoZXMvMTcwLWdjYzYtZml4LnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3Jj cGtncy9sb2c0Y3h4L3BhdGNoZXMvMTgwLWdjYy1maXgtdGVzdHN1aXRlLnBhdGNoCiBkZWxldGUg bW9kZSAxMDA2NDQgc3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMvbWlzc2luZy1pbmNsdWRlcy5wYXRj aAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbG9nNGN4eC9wYXRjaGVzLzEwMC1idWdmaXgtTE9HQ1hY LTI4NC5wYXRjaCBiL3NyY3BrZ3MvbG9nNGN4eC9wYXRjaGVzLzEwMC1idWdmaXgtTE9HQ1hYLTI4 NC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZmNmZjMzMGYzNmQ3Li4wMDAw MDAwMDAwMDAKLS0tIGEvc3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMvMTAwLWJ1Z2ZpeC1MT0dDWFgt Mjg0LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTcgKzAsMCBAQAotIyEgL2Jpbi9zaCAvdXNy L3NoYXJlL2RwYXRjaC9kcGF0Y2gtcnVuCi0jIyAxMDAtYnVnZml4LUxPR0NYWC0yODQuZHBhdGNo IGJ5ICA8bWF0dGhld0Bsb2NhbGhvc3Q+Ci0jIwotIyMgQWxsIGxpbmVzIGJlZ2lubmluZyB3aXRo IGAjIyBEUDonIGFyZSBhIGRlc2NyaXB0aW9uIG9mIHRoZSBwYXRjaC4KLSMjIERQOiBGaXhlcyBi dWlsZCBlcnJvciBvbiBBSVggd2l0aCB4bGNfcgotCi0tLS0gYS9zcmMvdGVzdC9jcHAvaGVscGVy cy9kYXRldGltZWRhdGVmb3JtYXR0ZXN0Y2FzZS5jcHAJMjAwOC0wMy0zMSAxNTozMzowOS4wMDAw MDAwMDAgLTA3MDAKLSsrKyBiL3NyYy90ZXN0L2NwcC9oZWxwZXJzL2RhdGV0aW1lZGF0ZWZvcm1h dHRlc3RjYXNlLmNwcAkyMDA4LTA3LTE3IDA2OjQ5OjQzLjAwMDAwMDAwMCAtMDcwMAotQEAgLTE4 MSw3ICsxODEsNyBAQAotICAgICAgICAgLy8gIG91dHB1dCB0aGUgdXNpbmcgU1RMCi0gICAgICAg ICAvLwotICAgICAgICAgc3RkOjpiYXNpY19vc3RyaW5nc3RyZWFtPGxvZ2NoYXI+IGJ1ZmZlcjsK LS0jaWYgZGVmaW5lZChfVVNFRkFDKQotKyNpZiBkZWZpbmVkKF9NU0NfVkVSKSAmJiBfTVNDX1ZF UiA8IDEzMDAKLSAgICAgICAgICBfVVNFRkFDKGxvY2FsZSwgc3RkOjp0aW1lX3B1dDxsb2djaGFy PikKLSAgICAgICAgICAgICAgLnB1dChidWZmZXIsIGJ1ZmZlciwgJmRhdGUsIGZtdC5jX3N0cigp LCBmbXQuY19zdHIoKSArIGZtdC5sZW5ndGgoKSk7Ci0gI2Vsc2UKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvbG9nNGN4eC9wYXRjaGVzLzE1MC1idWdmaXgtTE9HQ1hYLTM2NS5wYXRjaCBiL3NyY3BrZ3Mv bG9nNGN4eC9wYXRjaGVzLzE1MC1idWdmaXgtTE9HQ1hYLTM2NS5wYXRjaApkZWxldGVkIGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggMGNmOTZiNjdhZTRhLi4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtn cy9sb2c0Y3h4L3BhdGNoZXMvMTUwLWJ1Z2ZpeC1MT0dDWFgtMzY1LnBhdGNoCisrKyAvZGV2L251 bGwKQEAgLTEsMTkgKzAsMCBAQAotRGVzY3JpcHRpb246IGZpeGVzIHRlc3Qgc3VpdGUgdG8gbm90 IGV4cGVjdCB0aGUgeWVhciB0byBiZSBiZXR3ZWVuIDIwMDAgYW5kIDIwMDkuCi1PcmlnaW46IHVw c3RyZWFtLCBodHRwOi8vc3ZuLmFwYWNoZS5vcmcvdmlld3ZjP3ZpZXc9cmV2JnJldj05NTQzMzUK LUJ1ZzogaHR0cHM6Ly9pc3N1ZXMuYXBhY2hlLm9yZy9qaXJhL2Jyb3dzZS9MT0dDWFgtMzY1Ci1G b3J3YXJkZWQ6IG5vdC1uZWVkZWQKLUFwcGxpZWQtVXBzdHJlYW06IGNvbW1pdCA5NTQzMzUKLUxh c3QtVXBkYXRlOiAyMDE0LTAzLTE0Ci0tLS0KLVRoaXMgcGF0Y2ggaGVhZGVyIGZvbGxvd3MgREVQ LTM6IGh0dHA6Ly9kZXAuZGViaWFuLm5ldC9kZXBzL2RlcDMvCi0tLS0gYS9zcmMvdGVzdC9jcHAv dXRpbC9maWx0ZXIuaAkyMDEwLzA2LzE0IDAwOjI0OjQyCTk1NDMzNAotKysrIGIvc3JjL3Rlc3Qv Y3BwL3V0aWwvZmlsdGVyLmgJMjAxMC8wNi8xNCAwMDozMDo0Mwk5NTQzMzUKLUBAIC0zMSw3ICsz MSw3IEBACi0gI2RlZmluZSBCQVNJQ19QQVQgIlxcWzB4WzAtOUEtRl0qXSAoRkFUQUx8RVJST1J8 V0FSTnxJTkZPfERFQlVHKSIKLSAjZGVmaW5lIElTTzg2MDFfUEFUICJbMC05XVxcezRcXH0tWzAt OV1cXHsyXFx9LVswLTldXFx7MlxcfSBbMC05XVxcezJcXH06WzAtOV1cXHsyXFx9OlswLTldXFx7 MlxcfSxbMC05XVxcezNcXH0iCi0gI2RlZmluZSBBQlNPTFVURV9EQVRFX0FORF9USU1FX1BBVCBc Ci0tICAgICAgICAiWzAtOV1cXHsxLDJcXH0gLiogMjAwWzAtOV0gWzAtOV1cXHsyXFx9OlswLTld XFx7MlxcfTpbMC05XVxcezJcXH0sWzAtOV1cXHszXFx9IgotKyAgICAgICAgIlswLTldXFx7MSwy XFx9IC4qIDJbMC05XVswLTldWzAtOV0gWzAtOV1cXHsyXFx9OlswLTldXFx7MlxcfTpbMC05XVxc ezJcXH0sWzAtOV1cXHszXFx9IgotICNkZWZpbmUgQUJTT0xVVEVfVElNRV9QQVQgIlswLTJdWzAt OV06WzAtOV1bMC05XTpbMC05XVswLTldLFswLTldWzAtOV1bMC05XSIKLSAjZGVmaW5lIFJFTEFU SVZFX1RJTUVfUEFUICJeWzAtOV0rIgotIApkaWZmIC0tZ2l0IGEvc3JjcGtncy9sb2c0Y3h4L3Bh dGNoZXMvMTcwLWdjYzYtZml4LnBhdGNoIGIvc3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMvMTcwLWdj YzYtZml4LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjZmEwYzJmNTMxOWMu LjAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL2xvZzRjeHgvcGF0Y2hlcy8xNzAtZ2NjNi1maXgu cGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw4MCArMCwwIEBACi1EZXNjcmlwdGlvbjogRml4IEZU QkZTIHdpdGggR0NDNgotIEdDQzYgaXMgbW9yZSBwaWNraWVyIG9uIHRydW5jYXRpbmcsIHNvIHRo aXMgcGF0Y2ggZml4ZXMgdGhlIG5hcnJvd2luZyBjb252ZXJzaW9uIGVycm9ycy4KLUF1dGhvcjog VG9iaWFzIEZyb3N0IDx0b2JpQGRlYmlhbi5vcmc+Ci1CdWctRGViaWFuOiBodHRwczovL2J1Z3Mu ZGViaWFuLm9yZy9jZ2ktYmluL2J1Z3JlcG9ydC5jZ2k/YnVnPTgxMTc2OAotRm9yd2FyZGVkOiBo dHRwczovL2lzc3Vlcy5hcGFjaGUub3JnL2ppcmEvYnJvd3NlL0xPR0NYWC00ODIKLUFwcGxpZWQt VXBzdHJlYW06IHllcywgdGFyZ2V0ZWQgdmVyc2lvbiAwLjExLjAKLUxhc3QtVXBkYXRlOiAyMDE2 LTA3LTAxIChEZWJDYW1wMTYpCi0tLS0KLVRoaXMgcGF0Y2ggaGVhZGVyIGZvbGxvd3MgREVQLTM6 IGh0dHA6Ly9kZXAuZGViaWFuLm5ldC9kZXBzL2RlcDMvCi0tLS0gYS9zcmMvbWFpbi9jcHAvbG9j YXRpb25pbmZvLmNwcAotKysrIGIvc3JjL21haW4vY3BwL2xvY2F0aW9uaW5mby5jcHAKLUBAIC0x NDgsNyArMTQ4LDcgQEAKLSAgICAgaWYgKGxpbmVOdW1iZXIgPT0gLTEgJiYgZmlsZU5hbWUgPT0g TkEgJiYgbWV0aG9kTmFtZSA9PSBOQV9NRVRIT0QpIHsKLSAgICAgICAgICBvcy53cml0ZU51bGwo cCk7Ci0gICAgIH0gZWxzZSB7Ci0tICAgICAgICBjaGFyIHByb2xvZ1tdID0gewotKyAgICAgICAg dW5zaWduZWQgY2hhciBwcm9sb2dbXSA9IHsKLSAgICAgICAgICAweDcyLCAweDAwLCAweDIxLCAw eDZGLCAweDcyLCAweDY3LCAweDJFLCAKLSAgICAgICAgICAweDYxLCAweDcwLCAweDYxLCAweDYz LCAweDY4LCAweDY1LCAweDJFLCAweDZDLCAKLSAgICAgICAgICAweDZGLCAweDY3LCAweDM0LCAw eDZBLCAweDJFLCAweDczLCAweDcwLCAweDY5LCAKLUBAIC0xNjEsNyArMTYxLDcgQEAKLSAgICAg ICAgICAgICAgICAgMHg2MSwgMHg3NiwgMHg2MSwgMHgyRiwgMHg2QywgMHg2MSwgMHg2RSwgMHg2 NywgCi0gICAgICAgICAgICAgICAgIDB4MkYsIDB4NTMsIDB4NzQsIDB4NzIsIDB4NjksIDB4NkUs IDB4NjcsIDB4M0IsCi0gICAgICAgICAgMHg3OCwgMHg3MCB9OwotLSAgICAgIG9zLndyaXRlUHJv bG9nKCJvcmcuYXBhY2hlLmxvZzRqLnNwaS5Mb2NhdGlvbkluZm8iLCAyLCBwcm9sb2csIHNpemVv Zihwcm9sb2cpLCBwKTsKLSsgICAgICBvcy53cml0ZVByb2xvZygib3JnLmFwYWNoZS5sb2c0ai5z cGkuTG9jYXRpb25JbmZvIiwgMiwgKGNoYXIgKilwcm9sb2csIHNpemVvZihwcm9sb2cpLCBwKTsK LSAgICAgICAgIGNoYXIqIGxpbmUgPSBwLml0b2EobGluZU51bWJlcik7Ci0gICAgICAgICAvLwot ICAgICAgICAgLy8gICBjb25zdHJ1Y3QgSmF2YS1saWtlIGZ1bGxJbmZvIChyZXBsYWNlICI6OiIg d2l0aCAiLiIpCi0tLS0gYS9zcmMvbWFpbi9jcHAvbG9nZ2luZ2V2ZW50LmNwcAotKysrIGIvc3Jj L21haW4vY3BwL2xvZ2dpbmdldmVudC5jcHAKLUBAIC0yMzYsNyArMjM2LDcgQEAKLSAKLSAKLSB2 b2lkIExvZ2dpbmdFdmVudDo6d3JpdGVQcm9sb2coT2JqZWN0T3V0cHV0U3RyZWFtJiBvcywgUG9v bCYgcCkgIHsKLS0gICAgIGNoYXIgY2xhc3NEZXNjW10gPSB7Ci0rICAgICB1bnNpZ25lZCBjaGFy IGNsYXNzRGVzY1tdID0gewotICAgICAgICAgMHg3MiwgMHgwMCwgMHgyMSwgCi0gICAgICAgICAw eDZGLCAweDcyLCAweDY3LCAweDJFLCAweDYxLCAweDcwLCAweDYxLCAweDYzLCAKLSAgICAgICAg IDB4NjgsIDB4NjUsIDB4MkUsIDB4NkMsIDB4NkYsIDB4NjcsIDB4MzQsIDB4NkEsIAotQEAgLTI5 Miw3ICsyOTIsNyBAQAotICAgICAgICAgMHgzQiwgMHg3OCwgMHg3MCB9OyAKLSAKLSAgICAgIG9z LndyaXRlUHJvbG9nKCJvcmcuYXBhY2hlLmxvZzRqLnNwaS5Mb2dnaW5nRXZlbnQiLCAKLS0gICAg ICAgIDgsIGNsYXNzRGVzYywgc2l6ZW9mKGNsYXNzRGVzYyksIHApOwotKyAgICAgICAgOCwgKGNo YXIgKikgY2xhc3NEZXNjLCBzaXplb2YoY2xhc3NEZXNjKSwgcCk7Ci0gfQotIAotIHZvaWQgTG9n Z2luZ0V2ZW50Ojp3cml0ZShoZWxwZXJzOjpPYmplY3RPdXRwdXRTdHJlYW0mIG9zLCBQb29sJiBw KSBjb25zdCB7Ci0tLS0gYS9zcmMvbWFpbi9jcHAvb2JqZWN0b3V0cHV0c3RyZWFtLmNwcAotKysr IGIvc3JjL21haW4vY3BwL29iamVjdG91dHB1dHN0cmVhbS5jcHAKLUBAIC0zNiw4ICszNiw4IEBA Ci0gICAgICAgIG9iamVjdEhhbmRsZSgweDdFMDAwMCksCi0gICAgICAgIGNsYXNzRGVzY3JpcHRp b25zKG5ldyBDbGFzc0Rlc2NyaXB0aW9uTWFwKCkpCi0gewotLSAgIGNoYXIgc3RhcnRbXSA9IHsg MHhBQywgMHhFRCwgMHgwMCwgMHgwNSB9OwotLSAgIEJ5dGVCdWZmZXIgYnVmKHN0YXJ0LCBzaXpl b2Yoc3RhcnQpKTsKLSsgICB1bnNpZ25lZCBjaGFyIHN0YXJ0W10gPSB7IDB4QUMsIDB4RUQsIDB4 MDAsIDB4MDUgfTsKLSsgICBCeXRlQnVmZmVyIGJ1ZigoY2hhciopc3RhcnQsIHNpemVvZihzdGFy dCkpOwotICAgIG9zLT53cml0ZShidWYsIHApOwotIH0KLSAKLUBAIC04MSw3ICs4MSw3IEBACi0g ICAgIC8vCi0gICAgIC8vICBUQ19PQkpFQ1QgYW5kIHRoZSBjbGFzc0Rlc2MgZm9yIGphdmEudXRp bC5IYXNodGFibGUKLSAgICAgLy8KLS0gICAgY2hhciBwcm9sb2dbXSA9IHsKLSsgICAgdW5zaWdu ZWQgY2hhciBwcm9sb2dbXSA9IHsKLSAgICAgICAgIDB4NzIsIDB4MDAsIDB4MTMsIDB4NkEsIDB4 NjEsIDB4NzYsIDB4NjEsIAotICAgICAgICAgMHgyRSwgMHg3NSwgMHg3NCwgMHg2OSwgMHg2Qywg MHgyRSwgMHg0OCwgMHg2MSwgCi0gICAgICAgICAweDczLCAweDY4LCAweDc0LCAweDYxLCAweDYy LCAweDZDLCAweDY1LCAweDEzLCAKLUBAIC05MCw3ICs5MCw3IEBACi0gICAgICAgICAweDY0LCAw eDQ2LCAweDYxLCAweDYzLCAweDc0LCAweDZGLCAweDcyLCAweDQ5LCAKLSAgICAgICAgIDB4MDAs IDB4MDksIDB4NzQsIDB4NjgsIDB4NzIsIDB4NjUsIDB4NzMsIDB4NjgsIAotICAgICAgICAgMHg2 RiwgMHg2QywgMHg2NCwgMHg3OCwgMHg3MCAgfTsKLS0gICAgd3JpdGVQcm9sb2coImphdmEudXRp bC5IYXNodGFibGUiLCAxLCBwcm9sb2csIHNpemVvZihwcm9sb2cpLCBwKTsKLSsgICAgd3JpdGVQ cm9sb2coImphdmEudXRpbC5IYXNodGFibGUiLCAxLCAoY2hhciAqKSBwcm9sb2csIHNpemVvZihw cm9sb2cpLCBwKTsKLSAgICAgLy8KLSAgICAgLy8gICBsb2FkRmFjdG9yID0gMC43NSwgdGhyZXNo b2xkID0gNSwgYmxvY2tkYXRhIHN0YXJ0LCBidWNrZXRzLnNpemUgPSA3Ci0gICAgIGNoYXIgZGF0 YVtdID0geyAweDNGLCAweDQwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDA1LCAK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbG9nNGN4eC9wYXRjaGVzLzE4MC1nY2MtZml4LXRlc3RzdWl0 ZS5wYXRjaCBiL3NyY3BrZ3MvbG9nNGN4eC9wYXRjaGVzLzE4MC1nY2MtZml4LXRlc3RzdWl0ZS5w YXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzFiNzE0NjdhMTMxLi4wMDAwMDAw MDAwMDAKLS0tIGEvc3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMvMTgwLWdjYy1maXgtdGVzdHN1aXRl LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMjUgKzAsMCBAQAotRGVzY3JpcHRpb246IEZpeCBu YXJyb3dpbmcgZXJyb3JzIGFsc28gZm9yIHRoZSB0ZXN0c3VpdGUKLUF1dGhvcjogVG9iaWFzIEZy b3N0IDx0b2JpQGRlYmlhbi5vcmc+Ci1MYXN0LVVwZGF0ZTogMjAxNi0xMC0yMwotLS0tCi1UaGlz IHBhdGNoIGhlYWRlciBmb2xsb3dzIERFUC0zOiBodHRwOi8vZGVwLmRlYmlhbi5uZXQvZGVwcy9k ZXAzLwotLS0tIGEvc3JjL3Rlc3QvY3BwL3htbC9kb210ZXN0Y2FzZS5jcHAKLSsrKyBiL3NyYy90 ZXN0L2NwcC94bWwvZG9tdGVzdGNhc2UuY3BwCi1AQCAtMTkwLDcgKzE5MCw3IEBACi0gICAgICAg ICAgICAgICAgIERPTUNvbmZpZ3VyYXRvcjo6Y29uZmlndXJlKExPRzRDWFhfVEVTVF9TVFIoImlu cHV0L3htbC9ET01UZXN0Q2FzZTMueG1sIikpOwotICAgICAgICAgICAgICAgICBMT0c0Q1hYX0lO Rk8obG9nZ2VyLCAiRmlsZSBuYW1lIGlzIGV4cGVjdGVkIHRvIGVuZCB3aXRoIGEgc3VwZXJzY3Jp cHQgMyIpOwotICNpZiBMT0c0Q1hYX0xPR0NIQVJfSVNfVVRGOAotLSAgICAgICAgICAgICAgICBj b25zdCBsb2djaGFyIGZuYW1lW10gPSB7IDB4NkYsIDB4NzUsIDB4NzQsIDB4NzAsIDB4NzUsIDB4 NzQsIDB4MkYsIDB4NjQsIDB4NkYsIDB4NkQsIDB4QzIsIDB4QjMsIDAgfTsKLSsgICAgICAgICAg ICAgICAgY29uc3QgbG9nY2hhciBmbmFtZVtdID0geyAweDZGLCAweDc1LCAweDc0LCAweDcwLCAw eDc1LCAweDc0LCAweDJGLCAweDY0LCAweDZGLCAweDZELCAobG9nY2hhcikweEMyLCAobG9nY2hh cikweEIzLCAwIH07Ci0gI2Vsc2UKLSAgICAgICAgICAgICAgICAgY29uc3QgbG9nY2hhciBmbmFt ZVtdID0geyAweDZGLCAweDc1LCAweDc0LCAweDcwLCAweDc1LCAweDc0LCAweDJGLCAweDY0LCAw eDZGLCAweDZELCAweEIzLCAwIH07Ci0gI2VuZGlmCi1AQCAtMjA5LDcgKzIwOSw3IEBACi0gICAg ICAgICAgICAgICAgIERPTUNvbmZpZ3VyYXRvcjo6Y29uZmlndXJlKExPRzRDWFhfVEVTVF9TVFIo ImlucHV0L3htbC9ET01UZXN0Q2FzZTQueG1sIikpOwotICAgICAgICAgICAgICAgICBMT0c0Q1hY X0lORk8obG9nZ2VyLCAiRmlsZSBuYW1lIGlzIGV4cGVjdGVkIHRvIGVuZCB3aXRoIGFuIGlkZW9n cmFwaGljIDQiKTsKLSAjaWYgTE9HNENYWF9MT0dDSEFSX0lTX1VURjgKLS0gICAgICAgICAgICAg ICAgY29uc3QgbG9nY2hhciBmbmFtZVtdID0geyAweDZGLCAweDc1LCAweDc0LCAweDcwLCAweDc1 LCAweDc0LCAweDJGLCAweDY0LCAweDZGLCAweDZELCAweEUzLCAweDg2LCAweDk1LCAwIH07Ci0r ICAgICAgICAgICAgICAgIGNvbnN0IGxvZ2NoYXIgZm5hbWVbXSA9IHsgMHg2RiwgKGxvZ2NoYXIp MHg3NSwgMHg3NCwgMHg3MCwgMHg3NSwgMHg3NCwgMHgyRiwgMHg2NCwgMHg2RiwgMHg2RCwgKGxv Z2NoYXIpMHhFMywgKGxvZ2NoYXIpMHg4NiwgKGxvZ2NoYXIpMHg5NSwgMCB9OwotICNlbHNlCi0g ICAgICAgICAgICAgICAgIGNvbnN0IGxvZ2NoYXIgZm5hbWVbXSA9IHsgMHg2RiwgMHg3NSwgMHg3 NCwgMHg3MCwgMHg3NSwgMHg3NCwgMHgyRiwgMHg2NCwgMHg2RiwgMHg2RCwgMHgzMTk1LCAwIH07 Ci0gI2VuZGlmCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xvZzRjeHgvcGF0Y2hlcy9taXNzaW5nLWlu Y2x1ZGVzLnBhdGNoIGIvc3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMvbWlzc2luZy1pbmNsdWRlcy5w YXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTYzYmZmZDk1YzU3Li4wMDAwMDAw MDAwMDAKLS0tIGEvc3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMvbWlzc2luZy1pbmNsdWRlcy5wYXRj aAorKysgL2Rldi9udWxsCkBAIC0xLDM4ICswLDAgQEAKLWRpZmYgLU5hdXIgYXBhY2hlLWxvZzRj eHgtMC4xMC4wLm9yaWcvc3JjL2V4YW1wbGVzL2NwcC9jb25zb2xlLmNwcCBhcGFjaGUtbG9nNGN4 eC0wLjEwLjAvc3JjL2V4YW1wbGVzL2NwcC9jb25zb2xlLmNwcAotLS0tIGEvc3JjL2V4YW1wbGVz L2NwcC9jb25zb2xlLmNwcAkyMDA4LTA0LTAxIDAwOjM0OjUyLjAwMDAwMDAwMCArMDIwMAotKysr IGIvc3JjL2V4YW1wbGVzL2NwcC9jb25zb2xlLmNwcAkyMDA4LTA1LTA2IDA1OjQwOjUyLjAwMDAw MDAwMCArMDIwMAotQEAgLTE1LDcgKzE1LDEwIEBACi0gICogbGltaXRhdGlvbnMgdW5kZXIgdGhl IExpY2Vuc2UuCi0gICovCi0gCi0tI2luY2x1ZGUgPHN0ZGxpYi5oPgotKyNpbmNsdWRlIDxjc3Rk aW8+Ci0rI2luY2x1ZGUgPGNzdGRsaWI+Ci0rI2luY2x1ZGUgPGNzdHJpbmc+Ci0rI2luY2x1ZGUg PHN0ZGludC5oPgotICNpbmNsdWRlIDxsb2c0Y3h4L2xvZ2dlci5oPgotICNpbmNsdWRlIDxsb2c0 Y3h4L2NvbnNvbGVhcHBlbmRlci5oPgotICNpbmNsdWRlIDxsb2c0Y3h4L3NpbXBsZWxheW91dC5o PgotZGlmZiAtTmF1ciBhcGFjaGUtbG9nNGN4eC0wLjEwLjAub3JpZy9zcmMvbWFpbi9jcHAvaW5w dXRzdHJlYW1yZWFkZXIuY3BwIGFwYWNoZS1sb2c0Y3h4LTAuMTAuMC9zcmMvbWFpbi9jcHAvaW5w dXRzdHJlYW1yZWFkZXIuY3BwCi0tLS0gYS9zcmMvbWFpbi9jcHAvaW5wdXRzdHJlYW1yZWFkZXIu Y3BwCTIwMDgtMDQtMDEgMDA6MzQ6MDkuMDAwMDAwMDAwICswMjAwCi0rKysgYi9zcmMvbWFpbi9j cHAvaW5wdXRzdHJlYW1yZWFkZXIuY3BwCTIwMDgtMDUtMDYgMDU6MzI6MzEuMDAwMDAwMDAwICsw MjAwCi1AQCAtMjEsNiArMjEsOCBAQAotICNpbmNsdWRlIDxsb2c0Y3h4L2hlbHBlcnMvcG9vbC5o PgotICNpbmNsdWRlIDxsb2c0Y3h4L2hlbHBlcnMvYnl0ZWJ1ZmZlci5oPgotIAotKyNpbmNsdWRl IDxjc3RyaW5nPgotKwotIHVzaW5nIG5hbWVzcGFjZSBsb2c0Y3h4OwotIHVzaW5nIG5hbWVzcGFj ZSBsb2c0Y3h4OjpoZWxwZXJzOwotIAotZGlmZiAtTmF1ciBzcmMvbWFpbi9jcHAvc29ja2V0b3V0 cHV0c3RyZWFtLmNwcCBhcGFjaGUtbG9nNGN4eC0wLjEwLjAvc3JjL21haW4vY3BwL3NvY2tldG91 dHB1dHN0cmVhbS5jcHAKLS0tLSBhL3NyYy9tYWluL2NwcC9zb2NrZXRvdXRwdXRzdHJlYW0uY3Bw CTIwMDgtMDQtMDEgMDA6MzQ6MDkuMDAwMDAwMDAwICswMjAwCi0rKysgYi9zcmMvbWFpbi9jcHAv c29ja2V0b3V0cHV0c3RyZWFtLmNwcAkyMDA4LTA1LTA2IDA1OjM1OjU1LjAwMDAwMDAwMCArMDIw MAotQEAgLTIwLDYgKzIwLDggQEAKLSAjaW5jbHVkZSA8bG9nNGN4eC9oZWxwZXJzL3NvY2tldC5o PgotICNpbmNsdWRlIDxsb2c0Y3h4L2hlbHBlcnMvYnl0ZWJ1ZmZlci5oPgotIAotKyNpbmNsdWRl IDxjc3RyaW5nPgotKwotIHVzaW5nIG5hbWVzcGFjZSBsb2c0Y3h4OwotIHVzaW5nIG5hbWVzcGFj ZSBsb2c0Y3h4OjpoZWxwZXJzOwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9sb2c0Y3h4L3RlbXBsYXRl IGIvc3JjcGtncy9sb2c0Y3h4L3RlbXBsYXRlCmluZGV4IDJmNDkwNWExNjA5Mi4uOTYzNzQzZjYz NjdhIDEwMDY0NAotLS0gYS9zcmNwa2dzL2xvZzRjeHgvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9s b2c0Y3h4L3RlbXBsYXRlCkBAIC0xLDIyICsxLDIyIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICds b2c0Y3h4JwogcGtnbmFtZT1sb2c0Y3h4Ci12ZXJzaW9uPTAuMTAuMAotcmV2aXNpb249NAotYnVp bGRfc3R5bGU9Z251LWNvbmZpZ3VyZQotbWFrZWRlcGVuZHM9ImxpYnhtbDItZGV2ZWwgYXByLWRl dmVsIGFwci11dGlsLWRldmVsIGdkYm0tZGV2ZWwiCi1zaG9ydF9kZXNjPSJBIEMrKyBMb2dnaW5n IExpYnJhcnkgYmFzZWQgb24gTG9nNEoiCit2ZXJzaW9uPTEuMC4wCityZXZpc2lvbj0xCitidWls ZF9zdHlsZT1jbWFrZQoraG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIHppcCIKK21ha2VkZXBl bmRzPSJsaWJ4bWwyLWRldmVsIGFwci1kZXZlbCBhcHItdXRpbC1kZXZlbCBnZGJtLWRldmVsIGJv b3N0LWRldmVsIgorc2hvcnRfZGVzYz0iQysrIExvZ2dpbmcgTGlicmFyeSBiYXNlZCBvbiBMb2c0 SiIKIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNl PSJBcGFjaGUtMi4wIgogaG9tZXBhZ2U9Imh0dHBzOi8vbG9nZ2luZy5hcGFjaGUub3JnL2xvZzRj eHgvIgogZGlzdGZpbGVzPSJodHRwczovL2FyY2hpdmUuYXBhY2hlLm9yZy9kaXN0L2xvZ2dpbmcv bG9nNGN4eC8ke3ZlcnNpb259L2FwYWNoZS1sb2c0Y3h4LSR7dmVyc2lvbn0udGFyLmd6IgotY2hl Y2tzdW09MGRlMDM5NjIyMGE5NTY2YTU4MDE2NmU2NmIzOTY3NGNiNDBlZmQyMTc2ZjUyYWQyYzY1 NDg2Yzk5YzkyMGM4YworY2hlY2tzdW09NmRmOWYxZjY4MjY1MGRlNjA0NTMwOTQ3M2Q1YjJmZTFm Nzk4YTAzY2ViMzZhNzRhNWIyMWY1NTIwOTYyZDMyZgogCiBsb2c0Y3h4LWRldmVsX3BhY2thZ2Uo KSB7CiAJc2hvcnRfZGVzYys9IiAtIGRldmVsb3BtZW50IGZpbGVzIgogCWRlcGVuZHM9IiR7c291 cmNlcGtnfT49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKIAlwa2dfaW5zdGFsbCgpIHsKIAkJdm1v dmUgdXNyL2luY2x1ZGUKLQkJdm1vdmUgdXNyL2xpYi8qLmEKIAkJdm1vdmUgdXNyL2xpYi8qLnNv CiAJCXZtb3ZlIHVzci9saWIvcGtnY29uZmlnCiAJfQoKRnJvbSA3MmY1MDhiYzAzYTQ4ZjY2M2Zk OWI1M2E2OGUwMDQ4ZTYxNzgwOGQ3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFy YSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTU6 NTU6MjUgKzAxMDAKU3ViamVjdDogW1BBVENIIDI1LzM5XSBsdWE1NC1sdWFsZGFwOiByZXZidW1w IGR1ZSB0byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtncy9sdWE1NC1sdWFsZGFwL3RlbXBs YXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0p CgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9sdWE1NC1sdWFsZGFwL3RlbXBsYXRlIGIvc3JjcGtncy9s dWE1NC1sdWFsZGFwL3RlbXBsYXRlCmluZGV4IDQ0OTJkYmVhYjY1MC4uOGMwM2VlZjdlZjRkIDEw MDY0NAotLS0gYS9zcmNwa2dzL2x1YTU0LWx1YWxkYXAvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9s dWE1NC1sdWFsZGFwL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAnbHVhNTQtbHVhbGRhcCcKIHBrZ25hbWU9bHVhNTQtbHVhbGRhcAogdmVyc2lvbj0xLjIuNQot cmV2aXNpb249MworcmV2aXNpb249NAogY3JlYXRlX3dya3NyYz15ZXMKIGJ1aWxkX3N0eWxlPWdu dS1tYWtlZmlsZQogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIgoKRnJvbSBjZjExOWIwYTNk ZWI4NDFjOGZhYTA5OTk0ODhjYTEzNzM5NjNmYmU2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmVi IDIwMjMgMTU6NTY6MjIgKzAxMDAKU3ViamVjdDogW1BBVENIIDI2LzM5XSBtb25pdG9yaW5nLXBs dWdpbnM6IHJldmJ1bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dzL21vbml0 b3JpbmctcGx1Z2lucy90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlv bigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbW9uaXRvcmluZy1wbHVn aW5zL3RlbXBsYXRlIGIvc3JjcGtncy9tb25pdG9yaW5nLXBsdWdpbnMvdGVtcGxhdGUKaW5kZXgg OWZlYzU1NjJhOWNjLi4yMGZiZDEzYTUwMjAgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbW9uaXRvcmlu Zy1wbHVnaW5zL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbW9uaXRvcmluZy1wbHVnaW5zL3RlbXBs YXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbW9uaXRvcmluZy1wbHVn aW5zJwogcGtnbmFtZT1tb25pdG9yaW5nLXBsdWdpbnMKIHZlcnNpb249Mi4zLjIKLXJldmlzaW9u PTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdz PSItLWxpYmV4ZWNkaXI9L3Vzci9saWIvbW9uaXRvcmluZy1wbHVnaW5zIgogaG9zdG1ha2VkZXBl bmRzPSJmcGluZyBvcGVuc3NoIHBvc3RmaXggcHJvY3BzLW5nIHNtYmNsaWVudCBuZXQtc25tcCBi aW5kLXV0aWxzIHN1ZG8iCgpGcm9tIDY4ZWRlN2E3Mzc1OGU1ZDBkMDRhZGQxM2MyOWQxMDA0NWQy MDA3YzkgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNt b2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNTo1NzoxMiArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMjcvMzldIG5zcy1wYW0tbGRhcGQ6IHJldmJ1bXAgZHVlIHRvIG9wZW5sZGFw IHVwZGF0ZQoKLS0tCiBzcmNwa2dzL25zcy1wYW0tbGRhcGQvdGVtcGxhdGUgfCAyICstCiAxIGZp bGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9z cmNwa2dzL25zcy1wYW0tbGRhcGQvdGVtcGxhdGUgYi9zcmNwa2dzL25zcy1wYW0tbGRhcGQvdGVt cGxhdGUKaW5kZXggOTJjYmQ3NTQxN2I0Li4yYjNhMzVhZTg1YTMgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvbnNzLXBhbS1sZGFwZC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL25zcy1wYW0tbGRhcGQvdGVt cGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICduc3MtcGFtLWxkYXBk JwogcGtnbmFtZT1uc3MtcGFtLWxkYXBkCiB2ZXJzaW9uPTAuOS4xMgotcmV2aXNpb249MQorcmV2 aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZW5h YmxlLXNhc2wgLS1lbmFibGUta2VyYmVyb3MgLS13aXRoLXBhbS1zZWNsaWItZGlyPS91c3IvbGli L3NlY3VyaXR5LyIKIGNvbmZfZmlsZXM9Ii9ldGMvbnNsY2QuY29uZiIKCkZyb20gZjQ5ZmNlNWM5 NmE2YmJhZDcyZTFjZGQ3NThhNDliZmRmMWQ5ZjVjMyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK RnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZl YiAyMDIzIDE2OjE2OjEwICswMTAwClN1YmplY3Q6IFtQQVRDSCAyOC8zOV0gcGhwOiByZXZidW1w IGR1ZSB0byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtncy9waHAvdGVtcGxhdGUgfCAyICst CiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL3BocC90ZW1wbGF0ZSBiL3NyY3BrZ3MvcGhwL3RlbXBsYXRlCmluZGV4IDM5 ZTRkMTYxYjY0OC4uZTljNmY2MDI0NjMxIDEwMDY0NAotLS0gYS9zcmNwa2dzL3BocC90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL3BocC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUg ZmlsZSBmb3IgJ3BocCcKIHBrZ25hbWU9cGhwCiB2ZXJzaW9uPTcuNC4zMwotcmV2aXNpb249MQor cmV2aXNpb249MgogaG9zdG1ha2VkZXBlbmRzPSJiaXNvbiBwa2ctY29uZmlnIGFwYWNoZS1kZXZl bCIKIG1ha2VkZXBlbmRzPSJhcGFjaGUtZGV2ZWwgZW5jaGFudDItZGV2ZWwgZnJlZXRkcy1kZXZl bCBmcmVldHlwZS1kZXZlbCBnZGJtLWRldmVsCiAgZ21wLWRldmVsIGxpYmN1cmwtZGV2ZWwgbGli anBlZy10dXJiby1kZXZlbCBsaWJtYXJpYWRiY2xpZW50LWRldmVsCgpGcm9tIGNiNjg3MjdjNzE3 NGU0MDllMWIzOGQxMWYwMGExZTA3MTUxOWYxODcgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZy b206IEtsYXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIg MjAyMyAxNjoxNzowOSArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMjkvMzldIHBocDguMDogcmV2YnVt cCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3MvcGhwOC4wL3RlbXBsYXRlIHwg MiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9waHA4LjAvdGVtcGxhdGUgYi9zcmNwa2dzL3BocDguMC90ZW1wbGF0 ZQppbmRleCA3NGM1MGRhMGU0NmYuLjFjMjE1ZDFmODQxYSAxMDA2NDQKLS0tIGEvc3JjcGtncy9w aHA4LjAvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9waHA4LjAvdGVtcGxhdGUKQEAgLTEsNyArMSw3 IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdwaHA4LjAnCiBwa2duYW1lPXBocDguMAogdmVyc2lv bj04LjAuMjUKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIF9waHBfdmVyc2lvbj04LjAKIGhvc3Rt YWtlZGVwZW5kcz0iYmlzb24gcGtnLWNvbmZpZyBhcGFjaGUtZGV2ZWwiCiBtYWtlZGVwZW5kcz0i YXBhY2hlLWRldmVsIGVuY2hhbnQyLWRldmVsIGZyZWV0ZHMtZGV2ZWwgZnJlZXR5cGUtZGV2ZWwg Z2RibS1kZXZlbAoKRnJvbSBiMGZjYWNjZWJiOTUzMWVmZDc2NGJlOTRkZTFkZGEzNWZiY2E5NTIy IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5A Z21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTY6MTk6MTYgKzAxMDAKU3ViamVjdDog W1BBVENIIDMwLzM5XSBwaHA4LjE6IHJldmJ1bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoKLS0t CiBzcmNwa2dzL3BocDguMS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2Vy dGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcGhwOC4xL3RlbXBs YXRlIGIvc3JjcGtncy9waHA4LjEvdGVtcGxhdGUKaW5kZXggZjE5Njg4YjUyZjZjLi5mMTQ0MTQ2 OTdlNzkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcGhwOC4xL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv cGhwOC4xL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncGhw OC4xJwogcGtnbmFtZT1waHA4LjEKIHZlcnNpb249OC4xLjEyCi1yZXZpc2lvbj0xCityZXZpc2lv bj0yCiBfcGhwX3ZlcnNpb249OC4xCiBob3N0bWFrZWRlcGVuZHM9ImJpc29uIHBrZy1jb25maWcg YXBhY2hlLWRldmVsIgogbWFrZWRlcGVuZHM9ImFwYWNoZS1kZXZlbCBlbmNoYW50Mi1kZXZlbCBm cmVldGRzLWRldmVsIGZyZWV0eXBlLWRldmVsIGdkYm0tZGV2ZWwKCkZyb20gMTljNDZkZWQ4MWEw ZDgwOTg0YTZmZjQ2MDdjZmQ4MDk0MzE2NDFiZSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAy MDIzIDE2OjIwOjA5ICswMTAwClN1YmplY3Q6IFtQQVRDSCAzMS8zOV0gcG9zdGZpeDogcmV2YnVt cCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3MvcG9zdGZpeC90ZW1wbGF0ZSB8 IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvcG9zdGZpeC90ZW1wbGF0ZSBiL3NyY3BrZ3MvcG9zdGZpeC90ZW1w bGF0ZQppbmRleCBiMWMyY2Q0ZTgwOTAuLjk5N2EyNDJiOTE5MSAxMDA2NDQKLS0tIGEvc3JjcGtn cy9wb3N0Zml4L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcG9zdGZpeC90ZW1wbGF0ZQpAQCAtMSw3 ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3Bvc3RmaXgnCiBwa2duYW1lPXBvc3RmaXgK IHZlcnNpb249My43LjQKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGhvc3RtYWtlZGVwZW5kcz0i cGVybCBtNCIKIG1ha2VkZXBlbmRzPSJpY3UtZGV2ZWwgbGlibGRhcC1kZXZlbCBsaWJtYXJpYWRi Y2xpZW50LWRldmVsIHBjcmUyLWRldmVsCiAgcG9zdGdyZXNxbC1saWJzLWRldmVsIHNxbGl0ZS1k ZXZlbCIKCkZyb20gNjA4NTA3MWExYzZkNDk5MmJkMjkyOWUxZThkMDcxZGYzMGJkMTQwMSBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWls LmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE2OjIxOjM2ICswMTAwClN1YmplY3Q6IFtQQVRD SCAzMi8zOV0gcHl0aG9uMy1sZGFwOiB1cGRhdGUgdG8gMy40LjMKCmJ1aWxkIHdhcyBmYWlsaW5n IGFmdGVyIHJldmJ1bXAKcmVtb3ZlIHVubmVjZXNzYXJ5IHNlZCBleHByZXNzaW9uCi0tLQogc3Jj cGtncy9weXRob24zLWxkYXAvdGVtcGxhdGUgfCAxMiArKysrLS0tLS0tLS0KIDEgZmlsZSBjaGFu Z2VkLCA0IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9weXRob24zLWxkYXAvdGVtcGxhdGUgYi9zcmNwa2dzL3B5dGhvbjMtbGRhcC90ZW1wbGF0ZQpp bmRleCBjZmY3ZGYwNTVlNzguLjQxZTRlZGIxZjM1NCAxMDA2NDQKLS0tIGEvc3JjcGtncy9weXRo b24zLWxkYXAvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9weXRob24zLWxkYXAvdGVtcGxhdGUKQEAg LTEsMTAgKzEsMTAgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3B5dGhvbjMtbGRhcCcKIHBrZ25h bWU9cHl0aG9uMy1sZGFwCiBfcGtnbmFtZT1weXRob24tbGRhcAotdmVyc2lvbj0zLjIuMAotcmV2 aXNpb249NQordmVyc2lvbj0zLjQuMworcmV2aXNpb249MQogYnVpbGRfc3R5bGU9cHl0aG9uMy1t b2R1bGUKLWhvc3RtYWtlZGVwZW5kcz0icHl0aG9uMy1zZXR1cHRvb2xzIgoraG9zdG1ha2VkZXBl bmRzPSJweXRob24zLXNldHVwdG9vbHMgcHl0aG9uMy13aGVlbCBweXRob24zLXB5YXNuMS1tb2R1 bGVzIgogbWFrZWRlcGVuZHM9InB5dGhvbjMtZGV2ZWwgbGlibGRhcC1kZXZlbCIKIGRlcGVuZHM9 InB5dGhvbjMtcHlhc24xLW1vZHVsZXMiCiBjaGVja2RlcGVuZHM9Im9wZW5sZGFwIG9wZW5sZGFw LXRvb2xzIgpAQCAtMTMsOCArMTMsNCBAQCBtYWludGFpbmVyPSJNaWNoYWVsIEFsZHJpZGdlIDxt YWxkcmlkZ2VAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJQeXRob24tMi4wIgogaG9tZXBhZ2U9 Imh0dHBzOi8vd3d3LnB5dGhvbi1sZGFwLm9yZyIKIGRpc3RmaWxlcz0iJHtQWVBJX1NJVEV9L3Av JHtfcGtnbmFtZX0vJHtfcGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT03ZDFj NGIxNTM3NWE1MzM1NjRhYWQzZDNkZWFkZTc4OTIyMWU0NTAwNTJiMjFlYmI5NzIwZmI4MjJlY2Nk YjhlCi0KLXByZV9idWlsZCgpIHsKLQlzZWQgLWkgInM6XmxpYnMgPSAuKjpsaWJzID0gbGRhcF9y IGxiZXIgc2FzbDIgc3NsIGNyeXB0bzoiIHNldHVwLmNmZwotfQorY2hlY2tzdW09YWIyNmM1MTlh MGVmMmE0NDNhMmExMDM5MWZhM2M1Y2I1MmQ3ODcxMzIzMzk5ZGI5NDllYmZhYTlmMjVlZTJhMAoK RnJvbSA5MDdlYWIzM2RhOTNhNTczYjVjMWNjZWVlYWU0NGU5MzQ2N2U0NDk4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpE YXRlOiBXZWQsIDEgRmViIDIwMjMgMTY6MjM6MzkgKzAxMDAKU3ViamVjdDogW1BBVENIIDMzLzM5 XSBxdW90YTogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3MvcXVv dGEvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVs ZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F1b3RhL3RlbXBsYXRlIGIvc3JjcGtncy9x dW90YS90ZW1wbGF0ZQppbmRleCBhNWRjN2JiZGI1ZjQuLjU1OWVmYWVlMjk5NCAxMDA2NDQKLS0t IGEvc3JjcGtncy9xdW90YS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3F1b3RhL3RlbXBsYXRlCkBA IC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncXVvdGEnCiBwa2duYW1lPXF1b3Rh CiB2ZXJzaW9uPTQuMDkKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWdudS1j b25maWd1cmUKIG1ha2VfYnVpbGRfYXJncz0iVj0xIgogY29uZl9maWxlcz0iL2V0Yy9xdW90YWdy cGFkbWlucyAvZXRjL3F1b3RhdGFiIC9ldGMvd2FybnF1b3RhLmNvbmYiCgpGcm9tIGI5ZTgwNzM1 YmUwMjQ3NGM4ZmYyZGYwZTQ1OTM5MGM3OWY3YWQ0YjMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBG ZWIgMjAyMyAxNjozNjoyMiArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMzQvMzldIHNlYWhvcnNlOiBy ZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtncy9zZWFob3JzZS90ZW1w bGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc2VhaG9yc2UvdGVtcGxhdGUgYi9zcmNwa2dzL3NlYWhv cnNlL3RlbXBsYXRlCmluZGV4IGJlOGJhNDU0YjRhOC4uZGE5MjIzNGQ4MjE2IDEwMDY0NAotLS0g YS9zcmNwa2dzL3NlYWhvcnNlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvc2VhaG9yc2UvdGVtcGxh dGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdzZWFob3JzZScKIHBrZ25h bWU9c2VhaG9yc2UKIHZlcnNpb249NDMuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRf c3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj1naXIKIGhvc3RtYWtlZGVwZW5kcz0iZ2NyLWRldmVs IGdldHRleHQgZ2xpYi1kZXZlbCBnbnVwZyBpdHN0b29sIGxpYnNlY3JldC1kZXZlbAoKRnJvbSBl ZWI3MTQ2NmY2ODY3MGY2OGRiNjhmMmNmY2YxYWJmNDYwZjRmNGQxIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBX ZWQsIDEgRmViIDIwMjMgMTY6Mzg6MzUgKzAxMDAKU3ViamVjdDogW1BBVENIIDM1LzM5XSBzcXVp ZDogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3Mvc3F1aWQvdGVt cGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24o LSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3NxdWlkL3RlbXBsYXRlIGIvc3JjcGtncy9zcXVpZC90 ZW1wbGF0ZQppbmRleCA0OWI5ZWI5ZDdiOTEuLjIyMzhkMWM3ZGY1MiAxMDA2NDQKLS0tIGEvc3Jj cGtncy9zcXVpZC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3NxdWlkL3RlbXBsYXRlCkBAIC0xLDcg KzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnc3F1aWQnCiBwa2duYW1lPXNxdWlkCiB2ZXJz aW9uPTUuNwotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3Vy ZQogY29uZmlndXJlX2FyZ3M9IgogIC0tc3lzY29uZmRpcj0vZXRjL3NxdWlkCgpGcm9tIDkxZDg2 NjhjZGY3NWU0MjlhNzRiNDY4NmE4YjY1MGI3NGZhYjI5ZDQgTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwg MSBGZWIgMjAyMyAxNjozOTozMCArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMzYvMzldIHNzc2Q6IHJl dmJ1bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dzL3Nzc2QvdGVtcGxhdGUg fCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL3Nzc2QvdGVtcGxhdGUgYi9zcmNwa2dzL3Nzc2QvdGVtcGxhdGUK aW5kZXggM2JmZWIzMmVmMTBkLi40NGU2ZjNiOWE2OWQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvc3Nz ZC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3Nzc2QvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdzc3NkJwogcGtnbmFtZT1zc3NkCiB2ZXJzaW9uPTIuNC4wCi1y ZXZpc2lvbj01CityZXZpc2lvbj02CiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiAjIGNvbmZp Z3VyZSBjaGVja3Mgc3lzLnZlcnNpb25bOjNdIGZvciBQeXRob24gdmVyc2lvbmluZywgc28gMy4x MCBiZWNvbWVzIDMuMTsKICMgdW50aWwgdGhpcyBpcyBmaXhlZCB1cHN0cmVhbSwgbWFudWFsbHkg ZGVmaW5lIGFtX2N2X3B5dGhvbl92ZXJzaW9uIHRvIGNpcmN1bXZlbnQKCkZyb20gZDdmNjVmMGQ5 Njk4OWFlOGI5MjdlMzg2NWQ2MThhNDlmYzQyMGViMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK RnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZl YiAyMDIzIDE2OjQxOjMwICswMTAwClN1YmplY3Q6IFtQQVRDSCAzNy8zOV0gc3lscGhlZWQ6IHJl dmJ1bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dzL3N5bHBoZWVkL3RlbXBs YXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0p CgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zeWxwaGVlZC90ZW1wbGF0ZSBiL3NyY3BrZ3Mvc3lscGhl ZWQvdGVtcGxhdGUKaW5kZXggN2ZiZjI1Mjc2ZmJjLi4yNWFhNzUzZTZkNGQgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3Mvc3lscGhlZWQvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9zeWxwaGVlZC90ZW1wbGF0 ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3N5bHBoZWVkJwogcGtnbmFt ZT1zeWxwaGVlZAogdmVyc2lvbj0zLjcuMAotcmV2aXNpb249OAorcmV2aXNpb249OQogYnVpbGRf c3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZGlzYWJsZS1jb21wZmFjZSAt LWRpc2FibGUtZ3Rrc3BlbGwgLS1lbmFibGUtbGRhcCAtLXdpdGgtZ3BnbWUtcHJlZml4PSR7WEJQ U19DUk9TU19CQVNFfS91c3IiCiBob3N0bWFrZWRlcGVuZHM9ImF1dG9tYWtlIGxpYnRvb2wgcGtn LWNvbmZpZyBmbGV4IGdldHRleHQtZGV2ZWwgZ3RrKy1kZXZlbCBncGdtZS1kZXZlbCBnbGliLWRl dmVsIgoKRnJvbSAxMmVlNTA0NjMyZDA1ZDI4NmI2YzljZjQ3ZmU4YzU4ZjlkZjZlNDdkIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwu Y29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTY6NDI6NDcgKzAxMDAKU3ViamVjdDogW1BBVENI IDM4LzM5XSB2aXJ0dW9zbzogdXBkYXRlIHRvIDcuMi44Cgp0ZXN0IHN1aXRlIHdhcyBmYWlsaW5n IG9uIHJldmJ1bXAKCi0gcmVtb3ZlIHBhdGNoZXMgdGhhdCBubyBsb25nZXIgYXBwbHkKLSBhZGQg cGF0Y2ggdGhhdCByZW1vdmVzIGdpdCByZXZpc2lvbiBmcm9tIGdyYXBocWwKLSBkaXNhYmxlIHN0 YXRpYyBsaWJyYXJpZXMgYXMgd2UncmUgcmVtb3ZpbmcgdGhlbSBhZnRlciBpbnN0YWxsIGFueXdh eQotIGFkZCB3aGljaCB0byBob3N0bWFrZWRlcGVuZHMKLSBhZGQgbWlzc2luZyBjaGVja2RlcGVu ZHMKLS0tCiAuLi4vdmlydHVvc28vcGF0Y2hlcy9hbHdheXMtaWVlZS1mbG9hdHMucGF0Y2ggfCAg IDQ2IC0KIHNyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9maXgtZ3JhcGhxbC5wYXRjaCAgICB8ICAg MTEgKwogLi4uL3ZpcnR1b3NvL3BhdGNoZXMvZml4LXV0ZjgtYml0dGVzdC5wYXRjaCAgIHwgICAx NSAtCiBzcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvbXVzbC1wYWdlX3NpemUucGF0Y2ggfCAgIDM0 IC0KIC4uLi9yZW1vdmUtb3BlbnNzbC12ZXJzaW9uLWNoZWNrLnBhdGNoICAgICAgICB8ICAgNDgg LQogLi4uL3ZpcnR1b3NvL3BhdGNoZXMvc3NsLWNvbm5lY3Qtc3RhdGUucGF0Y2ggIHwgICAxNSAt CiBzcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvc3NsMS4xLnBhdGNoICAgICAgICAgfCAxNDAwIC0t LS0tLS0tLS0tLS0tLS0tCiBzcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvc3NsMS4xX21vcmUucGF0 Y2ggICAgfCAgIDIwIC0KIHNyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy91c2UtbWtzdGVtcC5wYXRj aCAgICB8ICAgMTggLQogc3JjcGtncy92aXJ0dW9zby90ZW1wbGF0ZSAgICAgICAgICAgICAgICAg ICAgIHwgICAxNiArLQogMTAgZmlsZXMgY2hhbmdlZCwgMTggaW5zZXJ0aW9ucygrKSwgMTYwNSBk ZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMv YWx3YXlzLWllZWUtZmxvYXRzLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy92aXJ0 dW9zby9wYXRjaGVzL2ZpeC1ncmFwaHFsLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtn cy92aXJ0dW9zby9wYXRjaGVzL2ZpeC11dGY4LWJpdHRlc3QucGF0Y2gKIGRlbGV0ZSBtb2RlIDEw MDY0NCBzcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvbXVzbC1wYWdlX3NpemUucGF0Y2gKIGRlbGV0 ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvcmVtb3ZlLW9wZW5zc2wtdmVy c2lvbi1jaGVjay5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvdmlydHVvc28vcGF0 Y2hlcy9zc2wtY29ubmVjdC1zdGF0ZS5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mv dmlydHVvc28vcGF0Y2hlcy9zc2wxLjEucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dz L3ZpcnR1b3NvL3BhdGNoZXMvc3NsMS4xX21vcmUucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBz cmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvdXNlLW1rc3RlbXAucGF0Y2gKCmRpZmYgLS1naXQgYS9z cmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvYWx3YXlzLWllZWUtZmxvYXRzLnBhdGNoIGIvc3JjcGtn cy92aXJ0dW9zby9wYXRjaGVzL2Fsd2F5cy1pZWVlLWZsb2F0cy5wYXRjaApkZWxldGVkIGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggNjliNTAzNDIxNGY3Li4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtn cy92aXJ0dW9zby9wYXRjaGVzL2Fsd2F5cy1pZWVlLWZsb2F0cy5wYXRjaAorKysgL2Rldi9udWxs CkBAIC0xLDQ2ICswLDAgQEAKLUZyb20gYmM4ZTk4OTBkZThjOTg2NmU2ZTFmNDljODM1NWViZWU5 MTU1NzllNCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206IHE2NiA8ZGFuaWVsQG9jdGFm b3JnZS5vcmc+Ci1EYXRlOiBXZWQsIDI5IEphbiAyMDIwIDEyOjUwOjQ2ICswMTAwCi1TdWJqZWN0 OiBbUEFUQ0ggMS8yXSBhbHdheXMgdXNlIElFRUUgZmxvYXRzCi0KLVdlIGRvbid0IGJ1aWxkIG9u IGFueSBwbGF0Zm9ybXMgd2hlcmUgdGhpcyBpcyBub3QgdGhlIGNhc2UuCi0KLUZpeGVzIHBsYXRm b3JtcyBmb3Igd2hpY2ggdGhpcyBpcyBub3QgY2hlY2tlZC4KLS0tLQotIGxpYnNyYy9Eay9Ea21h cnNoYWwuYyB8IDIwICstLS0tLS0tLS0tLS0tLS0tLS0tCi0gMSBmaWxlIGNoYW5nZWQsIDEgaW5z ZXJ0aW9uKCspLCAxOSBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdpdCBsaWJzcmMvRGsvRGttYXJz aGFsLmMgbGlic3JjL0RrL0RrbWFyc2hhbC5jCi1pbmRleCBkYTE1YTIxLi5iMmI2YzcxIDEwMDY0 NAotLS0tIGEvbGlic3JjL0RrL0RrbWFyc2hhbC5jCi0rKysgYi9saWJzcmMvRGsvRGttYXJzaGFs LmMKLUBAIC0zMSwyNSArMzEsNyBAQAotICMgaW5jbHVkZSA8bmV0aW5ldC9pbi5oPgkJCSAvKiBm b3IgbnRvaGwsIGh0b25sICovCi0gI2VuZGlmCi0gCi0tI2lmIGRlZmluZWQgKGkzODYpIHx8IFwK LS0gICAgZGVmaW5lZCAoX1dJTjY0KSB8fCBcCi0tICAgIGRlZmluZWQgKF9NX0lYODYpIHx8IFwK LS0gICAgZGVmaW5lZCAoX01fQUxQSEEpIHx8IFwKLS0gICAgZGVmaW5lZCAobWM2ODAwMCkgfHwg XAotLSAgICBkZWZpbmVkIChzcGFyYykgfHwgXAotLSAgICBkZWZpbmVkIChfX3g4Nl82NCkgfHwg XAotLSAgICBkZWZpbmVkIChfX2FscGhhKSB8fCBcCi0tICAgIGRlZmluZWQgKF9fcG93ZXJwYykg fHwgXAotLSAgICBkZWZpbmVkIChtaXBzKSB8fCBcCi0tICAgIGRlZmluZWQgKF9fT1MyX18pIHx8 IFwKLS0gICAgZGVmaW5lZCAoX0lCTVIyKQotLSMgZGVmaW5lIF9JRUVFX0ZMT0FUUwotLSNlbGlm IGRlZmluZWQgKE9QTF9TT1VSQ0UpCi0tIyBpbmNsdWRlIDxsaWJycGMuaD4KLS0jZWxzZQotLSMg aW5jbHVkZSA8cnBjL3R5cGVzLmg+Ci0tIyBpbmNsdWRlIDxycGMveGRyLmg+Ci0tI2VuZGlmCi0r I2RlZmluZSBfSUVFRV9GTE9BVFMKLSAKLSBtYWNyb19jaGFyX2Z1bmMgcmVhZHRhYmxlWzI1Nl07 Ci0gc2VzX3dyaXRlX2Z1bmMgd3JpdGV0YWJsZVsyNTZdOwotLS0gCi0yLjI0LjAKLQpkaWZmIC0t Z2l0IGEvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL2ZpeC1ncmFwaHFsLnBhdGNoIGIvc3JjcGtn cy92aXJ0dW9zby9wYXRjaGVzL2ZpeC1ncmFwaHFsLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IDAwMDAwMDAwMDAwMC4uZjA0YjNlNDVjNDdhCi0tLSAvZGV2L251bGwKKysrIGIvc3Jj cGtncy92aXJ0dW9zby9wYXRjaGVzL2ZpeC1ncmFwaHFsLnBhdGNoCkBAIC0wLDAgKzEsMTEgQEAK Ky0tLSBhL2JpbnNyYy9ncmFwaHFsL2dyYXBocWxfcGx1Z2luLmMJMjAyMy0wMi0wMSAyMToxNDox OC4xNDg0Nzg1MDAgKzAxMDAKKysrKyBiL2JpbnNyYy9ncmFwaHFsL2dyYXBocWxfcGx1Z2luLmMJ MjAyMi0xMC0xOSAxNDo0NDoxNC4wMDAwMDAwMDAgKzAyMDAKK0BAIC0xNzMsNyArMTczLDcgQEAK KyAKKyBzdGF0aWMgdW5pdF92ZXJzaW9uX3QgcGx1Z2luX2dyYXBocWxfdmVyc2lvbiA9IHsKKyAg ICJHcmFwaFFML1NQQVJRTCBCcmlkZ2UiLAkvKiE8IFRpdGxlIG9mIHVuaXQsIGZpbGxlZCBieSB1 bml0ICovCistICBHUUxfQlJJREdFX1ZFUiAiICgiIEdJVF9IRUFEX1NUUiAiKSIsCS8qITwgVmVy c2lvbiBudW1iZXIsIGZpbGxlZCBieSB1bml0ICovCisrICBHUUxfQlJJREdFX1ZFUiwJCS8qITwg VmVyc2lvbiBudW1iZXIsIGZpbGxlZCBieSB1bml0ICovCisgICAiT3BlbkxpbmsgU29mdHdhcmUi LAkJLyohPCBQbHVnaW4ncyBkZXZlbG9wZXIsIGZpbGxlZCBieSB1bml0ICovCisgICAiU3VwcG9y dCBmdW5jdGlvbnMgZm9yIEdyYXBoUUwvU1BBUlFMIEJyaWRnZSIsCS8qITwgQW55IGFkZGl0aW9u YWwgaW5mbywgZmlsbGVkIGJ5IHVuaXQgKi8KKyAgIDAsCQkJCS8qITwgRXJyb3IgbWVzc2FnZSwg ZmlsbGVkIGJ5IHVuaXQgbG9hZGVyICovCmRpZmYgLS1naXQgYS9zcmNwa2dzL3ZpcnR1b3NvL3Bh dGNoZXMvZml4LXV0ZjgtYml0dGVzdC5wYXRjaCBiL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9m aXgtdXRmOC1iaXR0ZXN0LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4NWU4 NGE2N2VmM2MuLjAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvZml4 LXV0ZjgtYml0dGVzdC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDE1ICswLDAgQEAKLVNvdXJj ZTogQHB1bGxtb2xsCi1VcHN0cmVhbTogbm8KLVJlYXNvbjogZXhwcmVzc2lvbiByZXF1aXJlcyBi aW5hcnkgQU5ELCBub3QgbG9naWNhbAotCi0tLS0gYS9saWJzcmMvdXRpbC9wY3JlbGliL3BjcmVf c3R1ZHkuYwkyMDE4LTA4LTE2IDAxOjA2OjIxLjAwMDAwMDAwMCArMDIwMAotKysrIGIvbGlic3Jj L3V0aWwvcGNyZWxpYi9wY3JlX3N0dWR5LmMJMjAyMC0wMS0yNyAxNTo0NDo1Ny43MTU4MjEzNTUg KzAxMDAKLUBAIC00MzIsNyArNDMyLDcgQEAKLSAgICAgICAgICAgZm9yIChjID0gMDsgYyA8IDE2 OyBjKyspIHN0YXJ0X2JpdHNbY10gfD0gdGNvZGVbY107Ci0gICAgICAgICAgIGZvciAoYyA9IDEy ODsgYyA8IDI1NjsgYysrKQotICAgICAgICAgICAgIHsKLS0gICAgICAgICAgICBpZiAoKHRjb2Rl W2MvOF0gJiYgKDEgPDwgKGMmNykpKSAhPSAwKQotKyAgICAgICAgICAgIGlmICgodGNvZGVbYy84 XSAmICgxIDw8IChjJjcpKSkgIT0gMCkKLSAgICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAg IGludCBkID0gKGMgPj4gNikgfCAweGMwOyAgICAgICAgICAgIC8qIFNldCBiaXQgZm9yIHRoaXMg c3RhcnRlciAqLwotICAgICAgICAgICAgICAgc3RhcnRfYml0c1tkLzhdIHw9ICgxIDw8IChkJjcp KTsgICAgLyogYW5kIHRoZW4gc2tpcCBvbiB0byB0aGUgKi8KZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv dmlydHVvc28vcGF0Y2hlcy9tdXNsLXBhZ2Vfc2l6ZS5wYXRjaCBiL3NyY3BrZ3MvdmlydHVvc28v cGF0Y2hlcy9tdXNsLXBhZ2Vfc2l6ZS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggNzNhOWFiZGQwZjM5Li4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy92aXJ0dW9zby9wYXRj aGVzL211c2wtcGFnZV9zaXplLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMzQgKzAsMCBAQAot RnJvbSAxMjU2Njk4MjFkOTVmZjk4OWJmOTQxNjFiOGUyNDk3YmZjYTlkMGFiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQotRnJvbTogcTY2IDxkYW5pZWxAb2N0YWZvcmdlLm9yZz4KLURhdGU6IFdl ZCwgMjkgSmFuIDIwMjAgMTI6NTQ6MTQgKzAxMDAKLVN1YmplY3Q6IFtQQVRDSCAyLzJdIFVzZSBt b3JlIHBvcnRhYmxlIHBhZ2Ugc2l6ZSBjaGVjawotCi1UaGlzIGZpeGVzIG11c2wgYnVpbGRzLgot LS0tCi0gbGlic3JjL0RrL3Rsc2YuaCB8IDMgKystCi0gMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0 aW9ucygrKSwgMSBkZWxldGlvbigtKQotCi1kaWZmIC0tZ2l0IGxpYnNyYy9Eay90bHNmLmggbGli c3JjL0RrL3Rsc2YuaAotaW5kZXggZGRjZTQ3OC4uYTk2ODdmNCAxMDA2NDQKLS0tLSBhL2xpYnNy Yy9Eay90bHNmLmgKLSsrKyBiL2xpYnNyYy9Eay90bHNmLmgKLUBAIC0yMCw2ICsyMCw3IEBACi0g I2RlZmluZSBfVExTRl9IXwotIAotICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KLSsjaW5jbHVkZSA8 dW5pc3RkLmg+Ci0gCi0gZXh0ZXJuIHNpemVfdCBpbml0X21lbW9yeV9wb29sKHNpemVfdCwgdm9p ZCAqKTsKLSBleHRlcm4gc2l6ZV90IGdldF91c2VkX3NpemUodm9pZCAqKTsKLUBAIC0xNTksNyAr MTYwLDcgQEAgZXh0ZXJuIHZvaWQgdGxzZl9iYXNlX2ZyZWUgKHZvaWQgKiBjLCBzaXplX3Qgc3op OwotIAotICNkZWZpbmUgREVGQVVMVF9BUkVBX1NJWkUgKDEwMjQqMTApCi0gCi0tI2RlZmluZSBQ QUdFX1NJWkUgKGdldHBhZ2VzaXplKCkpCi0rI2RlZmluZSBQQUdFX1NJWkUgKChpbnQpc3lzY29u ZihfU0NfUEFHRVNJWkUpKQotIAotICNpZm5kZWYgV0lOMzIKLSAjaWZkZWYgVVNFX1BSSU5URgot LS0gCi0yLjI0LjAKLQpkaWZmIC0tZ2l0IGEvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL3JlbW92 ZS1vcGVuc3NsLXZlcnNpb24tY2hlY2sucGF0Y2ggYi9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMv cmVtb3ZlLW9wZW5zc2wtdmVyc2lvbi1jaGVjay5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2 NDQKaW5kZXggMzA5NGZiYjZhYjY0Li4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy92aXJ0dW9z by9wYXRjaGVzL3JlbW92ZS1vcGVuc3NsLXZlcnNpb24tY2hlY2sucGF0Y2gKKysrIC9kZXYvbnVs bApAQCAtMSw0OCArMCwwIEBACi1Tb3VyY2U6IEBwdWxsbW9sbAotVXBzdHJlYW06IG5vCi1SZWFz b246IEVuYWJsZSBzdWJkaXItb2JqZWN0cyBhbmQgc3RyaXAgb3BlbnNzbCB2ZXJzaW9uIGNoZWNr IHdoaWNoIGZhaWxzIGZvciBsaWJyZXNzbAotCi0tLS0gYS9jb25maWd1cmUuYWMJMjAxOC0wOC0x NiAwMTowNjoyMS4wMDAwMDAwMDAgKzAyMDAKLSsrKyBiL2NvbmZpZ3VyZS5hYwkyMDIwLTAxLTI3 IDE1OjAyOjM2Ljk0NjkyMjY2MyArMDEwMAotQEAgLTU4LDcgKzU4LDcgQEAKLSBkbmwJQU1fSU5J VF9BVVRPTUFLRShbMS44XSkKLSBkbmwJQU1fSU5JVF9BVVRPTUFLRShbMS45IHRhci11c3Rhcl0p Ci0gZG5sCi0tQU1fSU5JVF9BVVRPTUFLRShbMS45IHRhci11c3Rhcl0pCi0rQU1fSU5JVF9BVVRP TUFLRShbMS45IHRhci11c3RhciBzdWJkaXItb2JqZWN0c10pCi0gCi0gQU1fTUFJTlRBSU5FUl9N T0RFCi0gCi1AQCAtODY3LDMyICs4NjcsNiBAQAotIAk7OwotIGVzYWMKLSAKLS1BQ19NU0dfQ0hF Q0tJTkcoW09wZW5TU0wgdmVyc2lvbl0pCi0tQUNfVFJZX0NPTVBJTEUoWwotLSNpbmNsdWRlIDxv cGVuc3NsL29wZW5zc2x2Lmg+Ci0tXSwgWwotLSNpZiBPUEVOU1NMX1ZFUlNJT05fTlVNQkVSIDwg MHgwMDkwODAxZkwKLS0jZXJyb3IgT3BlblNTTCB2ZXJzaW9uIHRvbyBvbGQgCi0tI2VuZGlmCi0t ICAgIF0sWwotLSAgICAgIEFDX01TR19SRVNVTFQoWz49IDAuOS44ZV0pCi0tICAgIF0sWwotLSAg ICAgIEFDX01TR19FUlJPUihbT3BlblNTTCB2ZXJzaW9uIDAuOS44ZSBvciBncmVhdGVyIGlzIHJl cXVpcmVkLl0pCi0tICAgIF0pCi0tCi0tQUNfTVNHX0NIRUNLSU5HKFtPcGVuU1NMIHZlcnNpb25d KQotLUFDX1RSWV9DT01QSUxFKFsKLS0jaW5jbHVkZSA8b3BlbnNzbC9vcGVuc3Nsdi5oPgotLV0s WwotLSNpZiBPUEVOU1NMX1ZFUlNJT05fTlVNQkVSID49IDB4MTAxMDAwMGZMCi0tI2Vycm9yIE9w ZW5TU0wgdmVyc2lvbiB0b28gbmV3Ci0tI2VuZGlmCi0tICAgIF0sWwotLSAgICAgIEFDX01TR19S RVNVTFQoWzwgMS4xLjBdKQotLSAgICBdLFsKLS0gICAgICBBQ19NU0dfRVJST1IoW09wZW5TU0wg dmVyc2lvbiAxLjEuMCBvciBncmVhdGVyIGlzIGN1cnJlbnRseSBub3Qgc3VwcG9ydGVkLl0pCi0t ICAgIF0pCi0tCi0gQUNfTVNHX0NIRUNLSU5HKFt1c2FiaWxpdHkgb2YgdGhlIE9wZW5TU0wgaGVh ZGVyIGZpbGVzIGFuZCBsaWJyYXJ5IGluICR7b3BlbnNzbF9kaXJ9XSkKLSBBQ19UUllfUlVOKFsK LSAjaW5jbHVkZSA8b3BlbnNzbC9yc2EuaD4KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdmlydHVvc28v cGF0Y2hlcy9zc2wtY29ubmVjdC1zdGF0ZS5wYXRjaCBiL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hl cy9zc2wtY29ubmVjdC1zdGF0ZS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg Mzk1NjZlM2I2ZGZkLi4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVz L3NzbC1jb25uZWN0LXN0YXRlLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTUgKzAsMCBAQAot U291cmNlOiBAcHVsbG1vbGwKLVVwc3RyZWFtOiBubwotUmVhc29uOiBVc2UgdGhlIHByb3BlciBp bnRlcmZhY2Ugb2YgbGlicmVzc2wgd2hpY2ggZG9lcyBub3QgZXhwb3NlIHRoZSBpbnRlcm5hbCBz dHJ1Y3R1cmUgb2YgU1NMCi0KLS0tLSBhL2xpYnNyYy9XaS9odHRwLmMJMjAxOC0wOC0xNiAwMTow NjoyMS4wMDAwMDAwMDAgKzAyMDAKLSsrKyBiL2xpYnNyYy9XaS9odHRwLmMJMjAyMC0wMS0yNyAx NTowOTo1My4yODQ5MDUyNjUgKzAxMDAKLUBAIC05OTQ5LDcgKzk5NDksNyBAQAotIAkgIGNsaV9z c2xfZ2V0X2Vycm9yX3N0cmluZyAoZXJyX2J1Ziwgc2l6ZW9mIChlcnJfYnVmKSk7Ci0gCSAgc3Fs cl9uZXdfZXJyb3IgKCI0MjAwMCIsICIuLjAwMiIsICJTU0xfZG9faGFuZHNoYWtlIGZhaWxlZCAl cyIsIGVycl9idWYpOwotIAl9Ci0tICAgICAgc3NsLT5zdGF0ZSA9IFNTTF9TVF9BQ0NFUFQ7Ci0r ICAgICAgU1NMX3NldF9hY2NlcHRfc3RhdGUgKHNzbCk7Ci0gICAgICAgd2hpbGUgKFNTTF9yZW5l Z290aWF0ZV9wZW5kaW5nIChzc2wpICYmIGN0ciA8IDEwMDApCi0gCXsKLSAJICB0aW1lb3V0X3Qg dG8gPSB7IDAsIDEwMDAgfTsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9z c2wxLjEucGF0Y2ggYi9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvc3NsMS4xLnBhdGNoCmRlbGV0 ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5ODg3NDk5NDY0ODAuLjAwMDAwMDAwMDAwMAotLS0g YS9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvc3NsMS4xLnBhdGNoCisrKyAvZGV2L251bGwKQEAg LTEsMTQwMCArMCwwIEBACi1EZXNjcmlwdGlvbjogRml4IEZUQkZTIHdpdGggb3BlbnNzbCAxLjEK LUF1dGhvcjogU2ViYXN0aWFuIEFuZHJ6ZWogU2lld2lvciA8c2ViYXN0aWFuQGJyZWFrcG9pbnQu Y2M+Ci1CdWctRGViaWFuOiBodHRwczovL2J1Z3MuZGViaWFuLm9yZy84Mjg1OTQKLUZvcndhcmRl ZDogaHR0cHM6Ly9naXRodWIuY29tL29wZW5saW5rL3ZpcnR1b3NvLW9wZW5zb3VyY2UvcHVsbC81 ODMKLUxhc3QtVXBkYXRlOiBNbyAxMS4gRmViIDEzOjUwOjE3IENFVCAyMDE5IChieSBBbmRyZWFz IFRpbGxlIDx0aWxsZUBkZWJpYW4ub3JnPikKLQotLS0tCi0KLUZyb20gODIzMDkyY2NjYmQ4ZTJh YjliZmFkNmMzZDNkZjc5MWE3ZmZhNzZmYyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206 IFNlYmFzdGlhbiBBbmRyemVqIFNpZXdpb3IgPHNlYmFzdGlhbkBicmVha3BvaW50LmNjPgotRGF0 ZTogTW9uLCA1IFNlcCAyMDE2IDEwOjQ5OjU0ICswMDAwCi1TdWJqZWN0OiBbUEFUQ0hdIHZpcnR1 b3NvLW9wZW5zb3VyY2U6IGJ1aWxkIGFnYWluc3Qgb3BlbnNzbCAxLjEuMAotCi1TaWduZWQtb2Zm LWJ5OiBTZWJhc3RpYW4gQW5kcnplaiBTaWV3aW9yIDxzZWJhc3RpYW5AYnJlYWtwb2ludC5jYz4K LS0tLQotIGxpYnNyYy9Eay9Ea2VybmVsLmMgICAgICB8ICAgNiArLQotIGxpYnNyYy9XaS9iaWZf Y3J5cHRvLmMgICB8IDEyMCArKysrKysrKysrLS0tLS0tLS0KLSBsaWJzcmMvV2kvaHR0cC5jICAg ICAgICAgfCAgIDIgKy0KLSBsaWJzcmMvV2kveG1sZW5jLmMgICAgICAgfCAzMTkgKysrKysrKysr KysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBsaWJzcmMvV2kveG1sZW5j LmggICAgICAgfCAxOTMgKysrKysrKysrKysrKysrKysrKysrKysrKystLQotIGxpYnNyYy9XaS94 bWxlbmNfYWxnb3MuYyB8IDEzMiArKysrKysrKysrKy0tLS0tLS0tLQotIGxpYnNyYy91dGlsL3Nz bGVuZ2luZS5jICB8ICAgNiArLQotIDcgZmlsZXMgY2hhbmdlZCwgNTI0IGluc2VydGlvbnMoKyks IDI1NCBkZWxldGlvbnMoLSkKLQotLS0tIGEvbGlic3JjL1dpL2JpZl9jcnlwdG8uYwotKysrIGIv bGlic3JjL1dpL2JpZl9jcnlwdG8uYwotQEAgLTE4MSwyMSArMTgxLDI2IEBAIGJveF9obWFjIChj YWRkcl90IGJveCwgY2FkZHJfdCBrZXksIGludAotICAgdW5zaWduZWQgY2hhciB0ZW1wW0VWUF9N QVhfTURfU0laRV07Ci0gICB1bnNpZ25lZCBpbnQgc2l6ZSA9IDA7Ci0gICBjYWRkcl90IHJlcyA9 IE5VTEw7Ci0tICBITUFDX0NUWCBjdHg7Ci0rICBITUFDX0NUWCAqY3R4OwotICAgY29uc3QgRVZQ X01EICptZCA9IEVWUF9zaGExICgpOwotIAotICAgaWYgKGFsZyA9PSAxKQotICAgICBtZCA9IEVW UF9yaXBlbWQxNjAgKCk7Ci0gCi0tICBITUFDX0luaXQgKCZjdHgsIGtleSwgYm94X2xlbmd0aCAo a2V5KSAtIERWX1NUUklOR1AgKGtleSkgPyAxIDogMCwgbWQpOwotLSAgYm94X2htYWNfMSAoYm94 LCAmY3R4KTsKLS0gIEhNQUNfRmluYWwgKCZjdHgsIHRlbXAsICZzaXplKTsKLSsgIGN0eCA9IEhN QUNfQ1RYX25ldygpOwotKyAgaWYgKCFjdHgpCi0rCSAgcmV0dXJuIHJlczsKLSsKLSsgIEhNQUNf SW5pdF9leCAoY3R4LCBrZXksIGJveF9sZW5ndGggKGtleSkgLSBEVl9TVFJJTkdQIChrZXkpID8g MSA6IDAsIG1kLCBOVUxMKTsKLSsgIGJveF9obWFjXzEgKGJveCwgY3R4KTsKLSsgIEhNQUNfRmlu YWwgKGN0eCwgdGVtcCwgJnNpemUpOwotICAgaWYgKHNpemUpCi0gICAgIHsKLSAgICAgICByZXMg PSBka19hbGxvY19ib3ggKHNpemUgKyAxLCBEVl9TSE9SVF9TVFJJTkcpOwotICAgICAgIG1lbWNw eSAocmVzLCB0ZW1wLCBzaXplKTsKLSAgICAgICByZXNbc2l6ZV0gPSAwOwotICAgICB9Ci0rICBI TUFDX0NUWF9mcmVlKGN0eCk7Ci0gICByZXR1cm4gcmVzOwotIH0KLSAKLUBAIC0zNDcsMTQgKzM1 MiwxMiBAQCBhc24xX3BhcnNlX3RvX3htbCAoQklPICogYnAsIHVuc2lnbmVkIGNoCi0gCSAgICB7 Ci0gCSAgICAgIGludCBpaTsKLSAKLS0JICAgICAgb3BwID0gb3A7Ci0tCSAgICAgIGlpID0gZDJp X0FTTjFfQk9PTEVBTiAoTlVMTCwgKGNvbnN0IHVuc2lnbmVkIGNoYXIgKiopJm9wcCwgbGVuICsg aGwpOwotLQkgICAgICBpZiAoaWkgPCAwKQotKwkgICAgICBpZiAobGVuICsgaGwgPCAxKQotIAkJ ewotIAkJICBpZiAoQklPX3dyaXRlIChicCwgIkJhZCBib29sZWFuXG4iLCAxMikpCi0gCQkgICAg Z290byBlbmQ7Ci0gCQl9Ci0tCSAgICAgIEJJT19wcmludGYgKGJwLCAiJWQiLCBpaSk7Ci0rCSAg ICAgIEJJT19wcmludGYgKGJwLCAiJWQiLCBwWzBdKTsKLSAJICAgIH0KLSAJICBlbHNlIGlmICh0 YWcgPT0gVl9BU04xX0JNUFNUUklORykKLSAJICAgIHsKLUBAIC00MTUsNyArNDE4LDcgQEAgYXNu MV9wYXJzZV90b194bWwgKEJJTyAqIGJwLCB1bnNpZ25lZCBjaAotIAkJfQotIAkgICAgICBpZiAo b3MgIT0gTlVMTCkKLSAJCXsKLS0JCSAgTV9BU04xX09DVEVUX1NUUklOR19mcmVlIChvcyk7Ci0r CQkgIEFTTjFfU1RSSU5HX2ZyZWUgKG9zKTsKLSAJCSAgb3MgPSBOVUxMOwotIAkJfQotIAkgICAg fQotQEAgLTQ0OCw3ICs0NTEsNyBAQCBhc24xX3BhcnNlX3RvX3htbCAoQklPICogYnAsIHVuc2ln bmVkIGNoCi0gCQkgIGlmIChCSU9fd3JpdGUgKGJwLCAiQkFEIElOVEVHRVIiLCAxMSkgPD0gMCkK LSAJCSAgICBnb3RvIGVuZDsKLSAJCX0KLS0JICAgICAgTV9BU04xX0lOVEVHRVJfZnJlZSAoYnMp OwotKwkgICAgICBBU04xX1NUUklOR19mcmVlIChicyk7Ci0gCSAgICB9Ci0gCSAgZWxzZSBpZiAo dGFnID09IFZfQVNOMV9FTlVNRVJBVEVEKQotIAkgICAgewotQEAgLTQ3OSw3ICs0ODIsNyBAQCBh c24xX3BhcnNlX3RvX3htbCAoQklPICogYnAsIHVuc2lnbmVkIGNoCi0gCQkgIGlmIChCSU9fd3Jp dGUgKGJwLCAiQkFEIEVOVU1FUkFURUQiLCAxMSkgPD0gMCkKLSAJCSAgICBnb3RvIGVuZDsKLSAJ CX0KLS0JICAgICAgTV9BU04xX0VOVU1FUkFURURfZnJlZSAoYnMpOwotKwkgICAgICBBU04xX1NU UklOR19mcmVlIChicyk7Ci0gCSAgICB9Ci0gCSAgZWxzZSBpZiAobGVuID4gMCAmJiBkdW1wKQot IAkgICAgewotQEAgLTUxNSw3ICs1MTgsNyBAQCBlbmQ6Ci0gICBpZiAobyAhPSBOVUxMKQotICAg ICBBU04xX09CSkVDVF9mcmVlIChvKTsKLSAgIGlmIChvcyAhPSBOVUxMKQotLSAgICBNX0FTTjFf T0NURVRfU1RSSU5HX2ZyZWUgKG9zKTsKLSsgICAgQVNOMV9TVFJJTkdfZnJlZSAob3MpOwotICAg KnBwID0gcDsKLSAgIHJldHVybiAocmV0KTsKLSB9Ci1AQCAtNzIzLDcgKzcyNiw3IEBAIGJpb190 b19zdHJzZXMgKEJJTyAqIG91dF9iaW8pCi0gICBpbnQgbGVuID0gQklPX2dldF9tZW1fZGF0YSAo b3V0X2JpbywgJnB0cik7Ci0gICBpbnQgdG9fcmVhZCA9IGxlbiwgcmVhZGVkID0gMDsKLSAKLS0g IHRvX2ZyZWUgPSAoKEJVRl9NRU0gKikgb3V0X2Jpby0+cHRyKS0+ZGF0YTsKLSsgIHRvX2ZyZWUg PSAoKEJVRl9NRU0gKikgQklPX2dldF9kYXRhKG91dF9iaW8pKS0+ZGF0YTsKLSAgIEJJT19zZXRf ZmxhZ3MgKG91dF9iaW8sIEJJT19GTEFHU19NRU1fUkRPTkxZKTsKLSAgIENBVENIX1dSSVRFX0ZB SUwgKHNlcykKLSAgICAgewotQEAgLTczNSw3ICs3MzgsNyBAQCBiaW9fdG9fc3Ryc2VzIChCSU8g KiBvdXRfYmlvKQotICAgICAgIH0gd2hpbGUgKHRvX3JlYWQgPiAwKTsKLSAgICAgfQotICAgRU5E X1dSSVRFX0ZBSUwgKHNlcyk7Ci0tICAoKEJVRl9NRU0gKikgb3V0X2Jpby0+cHRyKS0+ZGF0YSA9 IHRvX2ZyZWU7Ci0rICAoKEJVRl9NRU0gKikgQklPX2dldF9kYXRhKG91dF9iaW8pKS0+ZGF0YSA9 IHRvX2ZyZWU7Ci0gICBCSU9fY2xlYXJfZmxhZ3MgKG91dF9iaW8sIEJJT19GTEFHU19NRU1fUkRP TkxZKTsKLSAgIHJldHVybiBzZXM7Ci0gfQotQEAgLTc3MCw3ICs3NzMsNyBAQCBiaWZfc21pbWVf dmVyaWZ5IChjYWRkcl90ICogcXN0LCBjYWRkcl90Ci0gICBpZiAoRFZfVFlQRV9PRiAobXNnKSA9 PSBEVl9TVFJJTkdfU0VTU0lPTikKLSAgICAgewotICAgICAgIGluX2JpbyA9IHN0cnNlc190b19i aW8gKChka19zZXNzaW9uX3QgKikgbXNnKTsKLS0gICAgICB0b19mcmVlID0gKChCVUZfTUVNICop IGluX2Jpby0+cHRyKS0+ZGF0YTsKLSsgICAgICB0b19mcmVlID0gKChCVUZfTUVNICopIEJJT19n ZXRfZGF0YShpbl9iaW8pKS0+ZGF0YTsKLSAgICAgICBCSU9fc2V0X2ZsYWdzIChpbl9iaW8sIEJJ T19GTEFHU19NRU1fUkRPTkxZKTsKLSAgICAgfQotICAgZWxzZQotQEAgLTc4MCw3ICs3ODMsNyBA QCBiaWZfc21pbWVfdmVyaWZ5IChjYWRkcl90ICogcXN0LCBjYWRkcl90Ci0gICAgICAgcDcgPSBT TUlNRV9yZWFkX1BLQ1M3IChpbl9iaW8sICZkYXRhX2Jpbyk7Ci0gICAgICAgaWYgKHRvX2ZyZWUp Ci0gCXsKLS0JICAoKEJVRl9NRU0gKikgaW5fYmlvLT5wdHIpLT5kYXRhID0gdG9fZnJlZTsKLSsJ ICAoKEJVRl9NRU0gKikgQklPX2dldF9kYXRhKGluX2JpbykpLT5kYXRhID0gdG9fZnJlZTsKLSAJ ICBCSU9fY2xlYXJfZmxhZ3MgKGluX2JpbywgQklPX0ZMQUdTX01FTV9SRE9OTFkpOwotIAl9Ci0g ICAgICAgQklPX2ZyZWUgKGluX2Jpbyk7Ci1AQCAtOTI0LDE2ICs5MjcsMjAgQEAgYmlmX3NtaW1l X3NpZ24gKGNhZGRyX3QgKiBxc3QsIGNhZGRyX3QgKgotICAgICB9Ci0gCi0gICBjZXJ0cyA9IHNr X1g1MDlfbmV3X251bGwgKCk7Ci0tICBpZiAoc3RvcmUgJiYgc3RvcmUtPm9ianMpCi0rCi0rICBp ZiAoc3RvcmUgJiYgWDUwOV9TVE9SRV9nZXQwX29iamVjdHMoc3RvcmUpKQotICAgICB7Ci0tICAg ICAgZm9yIChpbnggPSAwOyBpbnggPCBza19YNTA5X09CSkVDVF9udW0gKHN0b3JlLT5vYmpzKTsg aW54KyspCi0rICAgICAgU1RBQ0tfT0YoWDUwOV9PQkpFQ1QpICpzdG9yZV9vYmpzID0gWDUwOV9T VE9SRV9nZXQwX29iamVjdHMoc3RvcmUpOwotKwotKyAgICAgIGZvciAoaW54ID0gMDsgaW54IDwg c2tfWDUwOV9PQkpFQ1RfbnVtIChzdG9yZV9vYmpzKTsgaW54KyspCi0gCXsKLS0JICBYNTA5X09C SkVDVCAqb2JqID0gc2tfWDUwOV9PQkpFQ1RfdmFsdWUgKHN0b3JlLT5vYmpzLCBpbngpOwotLQkg IGlmIChvYmotPnR5cGUgPT0gWDUwOV9MVV9YNTA5KQotLQkgICAgc2tfWDUwOV9wdXNoIChjZXJ0 cywgWDUwOV9kdXAgKG9iai0+ZGF0YS54NTA5KSk7Ci0rCSAgWDUwOV9PQkpFQ1QgKm9iaiA9IHNr X1g1MDlfT0JKRUNUX3ZhbHVlIChzdG9yZV9vYmpzLCBpbngpOwotKwkgIGlmIChYNTA5X09CSkVD VF9nZXRfdHlwZShvYmopID09IFg1MDlfTFVfWDUwOSkKLSsJICAgIHNrX1g1MDlfcHVzaCAoY2Vy dHMsIFg1MDlfZHVwIChYNTA5X09CSkVDVF9nZXQwX1g1MDkob2JqKSkpOwotIAl9Ci0gCi0gICAg IH0KLSsKLSAgIGlmIChzdG9yZSkKLSAgICAgWDUwOV9TVE9SRV9mcmVlIChzdG9yZSk7Ci0gICBp bl9iaW8gPSBCSU9fbmV3X21lbV9idWYgKG1zZywgYm94X2xlbmd0aCAobXNnKSAtIDEpOwotQEAg LTEwMDUsMTUgKzEwMTIsMTkgQEAgYmlmX3NtaW1lX2VuY3J5cHQgKGNhZGRyX3QgKiBxc3QsIGNh ZGRyXwotICAgICBzcWxyX25ld19lcnJvciAoIjQyMDAwIiwgIkNSMDA2IiwgIk5vIHJlY2lwaWVu dCBjZXJ0aWZpY2F0ZXMiKTsKLSAKLSAgIGNlcnRzID0gc2tfWDUwOV9uZXdfbnVsbCAoKTsKLS0g IGlmIChzdG9yZSAmJiBzdG9yZS0+b2JqcykKLSsKLSsgIGlmIChzdG9yZSAmJiBYNTA5X1NUT1JF X2dldDBfb2JqZWN0cyhzdG9yZSkpCi0gICAgIHsKLS0gICAgICBmb3IgKGlueCA9IDA7IGlueCA8 IHNrX1g1MDlfT0JKRUNUX251bSAoc3RvcmUtPm9ianMpOyBpbngrKykKLSsgICAgICBTVEFDS19P RihYNTA5X09CSkVDVCkgKnN0b3JlX29ianMgPSBYNTA5X1NUT1JFX2dldDBfb2JqZWN0cyhzdG9y ZSk7Ci0rCi0rICAgICAgZm9yIChpbnggPSAwOyBpbnggPCBza19YNTA5X09CSkVDVF9udW0gKHN0 b3JlX29ianMpOyBpbngrKykKLSAJewotLQkgIFg1MDlfT0JKRUNUICpvYmogPSBza19YNTA5X09C SkVDVF92YWx1ZSAoc3RvcmUtPm9ianMsIGlueCk7Ci0tCSAgaWYgKG9iai0+dHlwZSA9PSBYNTA5 X0xVX1g1MDkpCi0tCSAgICBza19YNTA5X3B1c2ggKGNlcnRzLCBYNTA5X2R1cCAob2JqLT5kYXRh Lng1MDkpKTsKLSsJICBYNTA5X09CSkVDVCAqb2JqID0gc2tfWDUwOV9PQkpFQ1RfdmFsdWUgKHN0 b3JlX29ianMsIGlueCk7Ci0rCSAgaWYgKFg1MDlfT0JKRUNUX2dldF90eXBlKG9iaikgPT0gWDUw OV9MVV9YNTA5KQotKwkgICAgc2tfWDUwOV9wdXNoIChjZXJ0cywgWDUwOV9kdXAgKFg1MDlfT0JK RUNUX2dldDBfWDUwOShvYmopKSk7Ci0gCX0KLSAgICAgfQotKwotICAgaWYgKHN0b3JlKQotICAg ICBYNTA5X1NUT1JFX2ZyZWUgKHN0b3JlKTsKLSAgIGluX2JpbyA9IEJJT19uZXdfbWVtX2J1ZiAo bXNnLCBib3hfbGVuZ3RoIChtc2cpIC0gMSk7Ci1AQCAtMTE4MSw3ICsxMTkyLDcgQEAgeDUwOV9j ZXJ0aWZpY2F0ZV92ZXJpZnlfY2IgKGludCBvaywgWDUwOQotICAgY2hhciAqb3B0cyA9IChjaGFy ICopIFg1MDlfU1RPUkVfQ1RYX2dldF9hcHBfZGF0YSAoY3R4KTsKLSAgIGlmICghb2sgJiYgb3B0 cykKLSAgICAgewotLSAgICAgIHN3aXRjaCAoY3R4LT5lcnJvcikKLSsgICAgICBzd2l0Y2ggKFg1 MDlfU1RPUkVfQ1RYX2dldF9lcnJvcihjdHgpKQotIAl7Ci0gCWNhc2UgWDUwOV9WX0VSUl9DRVJU X0hBU19FWFBJUkVEOgotIAkgIGlmIChzdHJzdHIgKG9wdHMsICJleHBpcmVkIikpCi1AQCAtMTI4 Nyw3ICsxMjk4LDcgQEAgYmlmX3g1MDlfY2VydGlmaWNhdGVfdmVyaWZ5IChjYWRkcl90ICogcQot ICAgaWYgKCFpKQotICAgICB7Ci0gICAgICAgY29uc3QgY2hhciAqZXJyX3N0cjsKLS0gICAgICBl cnJfc3RyID0gWDUwOV92ZXJpZnlfY2VydF9lcnJvcl9zdHJpbmcgKGNzYy0+ZXJyb3IpOwotKyAg ICAgIGVycl9zdHIgPSBYNTA5X3ZlcmlmeV9jZXJ0X2Vycm9yX3N0cmluZyAoWDUwOV9TVE9SRV9D VFhfZ2V0X2Vycm9yKGNzYykpOwotICAgICAgICplcnJfcmV0ID0gc3J2X21ha2VfbmV3X2Vycm9y ICgiMjIwMjMiLCAiQ1IwMTUiLCAiWDUwOSBlcnJvcjogJXMiLCBlcnJfc3RyKTsKLSAgICAgfQot IAotQEAgLTEzMDgsMjAgKzEzMTksMTYgQEAgZXJyX3JldDoKLSAjZGVmaW5lIFZJUlRfQ0VSVF9F WFQgIjIuMTYuODQwLjEuMTExMy4xIgotIAotIHN0YXRpYyBjYWRkcl90Ci0tQk5fYm94IChCSUdO VU0gKiB4KQotK0JOX2JveCAoY29uc3QgQklHTlVNICp4KQotIHsKLSAgIHNpemVfdCBidWZfbGVu LCBuOwotICAgY2FkZHJfdCBidWY7Ci0gICBidWZfbGVuID0gKHNpemVfdCkgQk5fbnVtX2J5dGVz ICh4KTsKLS0gIGlmIChidWZfbGVuIDw9IEJOX0JZVEVTKQotLSAgICBidWYgPSBib3hfbnVtICgo dW5zaWduZWQgbG9uZykgeC0+ZFswXSk7Ci0tICBlbHNlCi0tICAgIHsKLS0gICAgICBidWYgPSBk a19hbGxvY19ib3ggKGJ1Zl9sZW4sIERWX0JJTik7Ci0tICAgICAgbiA9IEJOX2JuMmJpbiAoeCwg KHVuc2lnbmVkIGNoYXIgKikgYnVmKTsKLS0gICAgICBpZiAobiAhPSBidWZfbGVuKQotLQlHUEZf VDsKLS0gICAgfQotKyAgLyogZGlkIG5vdCBmaWd1cmUgb3V0IHdoZXJlIGJ1ZiBpcyBmcmVlKCll ZCAqLwotKyAgYnVmID0gZGtfYWxsb2NfYm94IChidWZfbGVuLCBEVl9CSU4pOwotKyAgbiA9IEJO X2JuMmJpbiAoeCwgKHVuc2lnbmVkIGNoYXIgKikgYnVmKTsKLSsgIGlmIChuICE9IGJ1Zl9sZW4p Ci0rCSAgR1BGX1Q7Ci0gICByZXR1cm4gYnVmOwotIH0KLSAKLUBAIC0xNDk4LDcgKzE1MDUsNyBA QCBiaWZfZ2V0X2NlcnRpZmljYXRlX2luZm8gKGNhZGRyX3QgKiBxc3QsCi0gCWludCBpOwotIAlj aGFyIHRtcFsxMDI0XTsKLSAJY2hhciAqZXh0X29pZCA9IChjaGFyICopIChCT1hfRUxFTUVOVFMg KGFyZ3MpID4gNCA/IGJpZl9zdHJpbmdfYXJnIChxc3QsIGFyZ3MsIDQsICJnZXRfY2VydGlmaWNh dGVfaW5mbyIpIDogVklSVF9DRVJUX0VYVCk7Ci0tCVNUQUNLX09GIChYNTA5X0VYVEVOU0lPTikg KiBleHRzID0gY2VydC0+Y2VydF9pbmZvLT5leHRlbnNpb25zOwotKwljb25zdCBTVEFDS19PRiAo WDUwOV9FWFRFTlNJT04pICogZXh0cyA9IFg1MDlfZ2V0MF9leHRlbnNpb25zKGNlcnQpOwotIAlm b3IgKGkgPSAwOyBpIDwgc2tfWDUwOV9FWFRFTlNJT05fbnVtIChleHRzKTsgaSsrKQotIAkgIHsK LSAJICAgIFg1MDlfRVhURU5TSU9OICpleCA9IHNrX1g1MDlfRVhURU5TSU9OX3ZhbHVlIChleHRz LCBpKTsKLUBAIC0xNTEwLDcgKzE1MTcsNyBAQCBiaWZfZ2V0X2NlcnRpZmljYXRlX2luZm8gKGNh ZGRyX3QgKiBxc3QsCi0gCQljaGFyICpkYXRhX3B0cjsKLSAJCUJJTyAqbWVtID0gQklPX25ldyAo QklPX3NfbWVtICgpKTsKLSAJCWlmICghWDUwOVYzX0VYVF9wcmludCAobWVtLCBleCwgMCwgMCkp Ci0tCQkgIE1fQVNOMV9PQ1RFVF9TVFJJTkdfcHJpbnQgKG1lbSwgZXgtPnZhbHVlKTsKLSsJCSAg QVNOMV9TVFJJTkdfcHJpbnQgKG1lbSwgWDUwOV9FWFRFTlNJT05fZ2V0X2RhdGEoZXgpKTsKLSAJ CWxlbiA9IEJJT19nZXRfbWVtX2RhdGEgKG1lbSwgJmRhdGFfcHRyKTsKLSAJCWlmIChsZW4gPiAw ICYmIGRhdGFfcHRyKQotIAkJICB7Ci1AQCAtMTUzNywxOCArMTU0NCwyMyBAQCBiaWZfZ2V0X2Nl cnRpZmljYXRlX2luZm8gKGNhZGRyX3QgKiBxc3QsCi0gCWlmIChrKQotIAkgIHsKLSAjaWZkZWYg RVZQX1BLRVlfUlNBCi0tCSAgICBpZiAoay0+dHlwZSA9PSBFVlBfUEtFWV9SU0EpCi0rCSAgICBp ZiAoRVZQX1BLRVlfaWQoaykgPT0gRVZQX1BLRVlfUlNBKQotIAkgICAgICB7Ci0tCQlSU0EgKngg PSBrLT5wa2V5LnJzYTsKLS0JCXJldCA9IGxpc3QgKDMsIGJveF9kdl9zaG9ydF9zdHJpbmcgKCJS U0FQdWJsaWNLZXkiKSwgQk5fYm94ICh4LT5lKSwgQk5fYm94ICh4LT5uKSk7Ci0rCQljb25zdCBC SUdOVU0gKm4sICplOwotKwotKwkJUlNBX2dldDBfa2V5KEVWUF9QS0VZX2dldDBfUlNBKGspLCAm biwgJmUsIE5VTEwpOwotKwotKwkJcmV0ID0gbGlzdCAoMywgYm94X2R2X3Nob3J0X3N0cmluZyAo IlJTQVB1YmxpY0tleSIpLCBCTl9ib3ggKGUpLCBCTl9ib3ggKG4pKTsKLSAJICAgICAgfQotIAkg ICAgZWxzZQotICNlbmRpZgotICNpZmRlZiBFVlBfUEtFWV9EU0EKLS0JICAgIGlmIChrLT50eXBl ID09IEVWUF9QS0VZX0RTQSkKLSsJICAgIGlmIChFVlBfUEtFWV9pZChrKSA9PSBFVlBfUEtFWV9E U0EpCi0gCSAgICAgIHsKLS0JCURTQSAqeCA9IGstPnBrZXkuZHNhOwotLQkJcmV0ID0gbGlzdCAo MiwgYm94X2R2X3Nob3J0X3N0cmluZyAoIkRTQVB1YmxpY0tleSIpLCBCTl9ib3ggKHgtPnB1Yl9r ZXkpKTsKLSsJCWNvbnN0IEJJR05VTSAqcHViX2tleTsKLSsKLSsJCURTQV9nZXQwX2tleShFVlBf UEtFWV9nZXQwX0RTQShrKSwgJnB1Yl9rZXksIE5VTEwpOwotKwkJcmV0ID0gbGlzdCAoMiwgYm94 X2R2X3Nob3J0X3N0cmluZyAoIkRTQVB1YmxpY0tleSIpLCBCTl9ib3ggKHB1Yl9rZXkpKTsKLSAJ ICAgICAgfQotIAkgICAgZWxzZQotICNlbmRpZgotQEAgLTE1NjcsMTMgKzE1NzksMTMgQEAgYmlm X2dldF9jZXJ0aWZpY2F0ZV9pbmZvIChjYWRkcl90ICogcXN0LAotIAlpbnQgbiwgaSwgbGVuOwot IAljaGFyICpzLCAqZGF0YV9wdHI7Ci0gCUJJTyAqbWVtID0gQklPX25ldyAoQklPX3NfbWVtICgp KTsKLS0JZm9yIChpID0gMDsgTlVMTCAhPSBzdWJqICYmIGkgPCBza19YNTA5X05BTUVfRU5UUllf bnVtKHN1YmotPmVudHJpZXMpOyBpKyspCi0rCWZvciAoaSA9IDA7IE5VTEwgIT0gc3ViaiAmJiBp IDwgWDUwOV9OQU1FX2VudHJ5X2NvdW50KHN1YmopOyBpKyspCi0gCSAgewotLQkgICAgbmUgPSBz a19YNTA5X05BTUVfRU5UUllfdmFsdWUoc3Viai0+ZW50cmllcyxpKTsKLS0JICAgIG4gPSBPQkpf b2JqMm5pZCAobmUtPm9iamVjdCk7Ci0rCSAgICBuZSA9IFg1MDlfTkFNRV9nZXRfZW50cnkoc3Vi aiwgaSk7Ci0rCSAgICBuID0gT0JKX29iajJuaWQgKFg1MDlfTkFNRV9FTlRSWV9nZXRfb2JqZWN0 KG5lKSk7Ci0gCSAgICBpZiAoKG4gPT0gTklEX3VuZGVmKSB8fCAoKHMgPSAoY2hhciAqKSBPQkpf bmlkMnNuIChuKSkgPT0gTlVMTCkpCi0gCSAgICAgIHsKLS0JCWkydF9BU04xX09CSkVDVCAoYnVm ZmVyLCBzaXplb2YgKGJ1ZmZlciksIG5lLT5vYmplY3QpOwotKwkJaTJ0X0FTTjFfT0JKRUNUIChi dWZmZXIsIHNpemVvZiAoYnVmZmVyKSwgWDUwOV9OQU1FX0VOVFJZX2dldF9vYmplY3QobmUpKTsK LSAJCXMgPSBidWZmZXI7Ci0gCSAgICAgIH0KLSAJICAgIGlmICghc3RyY21wIChzLCBhdHRyKSkK LUBAIC0xNTgyLDkgKzE1OTQsMTAgQEAgYmlmX2dldF9jZXJ0aWZpY2F0ZV9pbmZvIChjYWRkcl90 ICogcXN0LAotIAkJYnJlYWs7Ci0gCSAgICAgIH0KLSAJICB9Ci0rCi0gCWlmIChuZV9yZXQpCi0g CSAgewotLQkgICAgQVNOMV9TVFJJTkdfcHJpbnQgKG1lbSwgbmVfcmV0LT52YWx1ZSk7Ci0rCSAg ICBBU04xX1NUUklOR19wcmludCAobWVtLCBYNTA5X05BTUVfRU5UUllfZ2V0X2RhdGEobmVfcmV0 KSk7Ci0gCSAgICBsZW4gPSBCSU9fZ2V0X21lbV9kYXRhIChtZW0sICZkYXRhX3B0cik7Ci0gCSAg ICBpZiAobGVuID4gMCAmJiBkYXRhX3B0cikKLSAJICAgICAgewotQEAgLTE2MDUsMTcgKzE2MTgs MTcgQEAgYmlmX2dldF9jZXJ0aWZpY2F0ZV9pbmZvIChjYWRkcl90ICogcXN0LAotIAlka19zZXRf dCBzZXQgPSBOVUxMOwotIAljYWRkcl90IHZhbDsKLSAJQklPICptZW0gPSBCSU9fbmV3IChCSU9f c19tZW0gKCkpOwotLQlmb3IgKGkgPSAwOyBOVUxMICE9IHN1YmogJiYgaSA8IHNrX1g1MDlfTkFN RV9FTlRSWV9udW0oc3Viai0+ZW50cmllcyk7IGkrKykKLSsJZm9yIChpID0gMDsgTlVMTCAhPSBz dWJqICYmIGkgPCBYNTA5X05BTUVfZW50cnlfY291bnQoc3Viaik7IGkrKykKLSAJICB7Ci0gCSAg ICB2YWwgPSBOVUxMOwotLQkgICAgbmUgPSBza19YNTA5X05BTUVfRU5UUllfdmFsdWUoc3Viai0+ ZW50cmllcyxpKTsKLS0JICAgIG4gPSBPQkpfb2JqMm5pZCAobmUtPm9iamVjdCk7Ci0rCSAgICBu ZSA9IFg1MDlfTkFNRV9nZXRfZW50cnkoc3ViaiwgaSk7Ci0rCSAgICBuID0gT0JKX29iajJuaWQg KFg1MDlfTkFNRV9FTlRSWV9nZXRfb2JqZWN0KG5lKSk7Ci0gCSAgICBpZiAoKG4gPT0gTklEX3Vu ZGVmKSB8fCAoKHMgPSAoY2hhciAqKSBPQkpfbmlkMnNuIChuKSkgPT0gTlVMTCkpCi0gCSAgICAg IHsKLS0JCWkydF9BU04xX09CSkVDVCAoYnVmZmVyLCBzaXplb2YgKGJ1ZmZlciksIG5lLT5vYmpl Y3QpOwotKwkJaTJ0X0FTTjFfT0JKRUNUIChidWZmZXIsIHNpemVvZiAoYnVmZmVyKSwgWDUwOV9O QU1FX0VOVFJZX2dldF9vYmplY3QobmUpKTsKLSAJCXMgPSBidWZmZXI7Ci0gCSAgICAgIH0KLS0J ICAgIEFTTjFfU1RSSU5HX3ByaW50IChtZW0sIG5lLT52YWx1ZSk7Ci0rCSAgICBBU04xX1NUUklO R19wcmludCAobWVtLCBYNTA5X05BTUVfRU5UUllfZ2V0X2RhdGEobmUpKTsKLSAJICAgIGxlbiA9 IEJJT19nZXRfbWVtX2RhdGEgKG1lbSwgJmRhdGFfcHRyKTsKLSAJICAgIGlmIChsZW4gPiAwICYm IGRhdGFfcHRyKQotIAkgICAgICB7Ci1AQCAtMTYyOSwxOCArMTY0MiwyMiBAQCBiaWZfZ2V0X2Nl cnRpZmljYXRlX2luZm8gKGNhZGRyX3QgKiBxc3QsCi0gCSAgfQotIAlCSU9fZnJlZSAobWVtKTsK LSAJcmV0ID0gbGlzdF90b19hcnJheSAoZGtfc2V0X25yZXZlcnNlIChzZXQpKTsKLSsKLSAJYnJl YWs7Ci0gICAgICAgfQotICAgICBjYXNlIDEyOgotICAgICAgIHsKLSAJY29uc3QgdW5zaWduZWQg Y2hhciAqczsKLSAJaW50IGksIG47Ci0tCWNvbnN0IEFTTjFfU1RSSU5HICpzaWcgPSBjZXJ0LT5z aWduYXR1cmU7Ci0tCVg1MDlfQUxHT1IgKnNpZ2FsZyA9IGNlcnQtPnNpZ19hbGc7Ci0rCWNvbnN0 IEFTTjFfU1RSSU5HICpzaWc7Ci0rCWNvbnN0IFg1MDlfQUxHT1IgKnNpZ2FsZzsKLSsJY29uc3Qg QVNOMV9PQkpFQ1QgKnNpZ19hbGdfYWxnb3JpdGhtOwotIAljaGFyIGJ1Zls4MF07Ci0gCWNhZGRy X3QgdmFsOwotIAotLSAgICAgICAgaTJ0X0FTTjFfT0JKRUNUKGJ1ZixzaXplb2YgKGJ1ZiksIHNp Z2FsZy0+YWxnb3JpdGhtKTsKLSsJWDUwOV9nZXQwX3NpZ25hdHVyZSgmc2lnLCAmc2lnYWxnLCBj ZXJ0KTsKLSsJWDUwOV9BTEdPUl9nZXQwKCZzaWdfYWxnX2FsZ29yaXRobSwgTlVMTCwgTlVMTCwg c2lnYWxnKTsKLSsJaTJ0X0FTTjFfT0JKRUNUKGJ1ZixzaXplb2YgKGJ1ZiksIHNpZ19hbGdfYWxn b3JpdGhtKTsKLSAKLSAJbiA9IHNpZy0+bGVuZ3RoOwotIAlzID0gc2lnLT5kYXRhOwotQEAgLTE2 NjAsMTEgKzE2NzcsMTEgQEAgYmlmX2dldF9jZXJ0aWZpY2F0ZV9pbmZvIChjYWRkcl90ICogcXN0 LAotIAlpZiAoaykKLSAJICB7Ci0gI2lmZGVmIEVWUF9QS0VZX1JTQQotLQkgICAgaWYgKGstPnR5 cGUgPT0gRVZQX1BLRVlfUlNBKQotKwkgICAgaWYgKEVWUF9QS0VZX2lkKGspID09IEVWUF9QS0VZ X1JTQSkKLSAJICAgICAgewotIAkJY2hhciAqZGF0YV9wdHI7Ci0gCQlpbnQgbGVuOwotLQkJUlNB ICp4ID0gay0+cGtleS5yc2E7Ci0rCQlSU0EgKnggPSBFVlBfUEtFWV9nZXQwX1JTQShrKTsKLSAJ CWIgPSBCSU9fbmV3IChCSU9fc19tZW0oKSk7Ci0gCQlpMmRfUlNBX1BVQktFWV9iaW8gKGIsIHgp OwotIAkJbGVuID0gQklPX2dldF9tZW1fZGF0YSAoYiwgJmRhdGFfcHRyKTsKLS0tLSBhL2xpYnNy Yy9XaS94bWxlbmMuYwotKysrIGIvbGlic3JjL1dpL3htbGVuYy5jCi1AQCAtMTIxNSwzNiArMTIx NSw0NSBAQCB2b2lkIHhlbmNfa2V5X3JlbW92ZSAoeGVuY19rZXlfdCAqIGtleSwKLSB9Ci0gCi0g Ci0tc3RhdGljIHZvaWQKLS1nZW5yc2FfY2IoaW50IHAsIGludCBuLCB2b2lkICphcmcpCi0tewot LSNpZmRlZiBMSU5UCi0tICBwPW47Ci0tI2VuZGlmCi0tfQotLQotIGludAotIF9feGVuY19rZXlf cnNhX2luaXQgKGNoYXIgKm5hbWUpCi0gewotICAgUlNBICpyc2EgPSBOVUxMOwotLSAgaW50IG51 bT0xMDI0OwotLSAgdW5zaWduZWQgbG9uZyBmND1SU0FfRjQ7Ci0rICBCSUdOVU0gKmJuID0gTlVM TDsKLSAgIGludCByOwotKwotICAgeGVuY19rZXlfdCAqIHBrZXkgPSB4ZW5jX2dldF9rZXlfYnlf bmFtZSAobmFtZSwgMSk7Ci0gICBpZiAoTlVMTCA9PSBwa2V5KQotICAgICBTUUxSX05FV19LRVlf RVJST1IgKG5hbWUpOwotIAotLSAgcnNhPVJTQV9nZW5lcmF0ZV9rZXkobnVtLGY0LGdlbnJzYV9j YixOVUxMKTsKLSsgIHJzYSA9IFJTQV9uZXcoKTsKLSsgIGlmICghcnNhKQotKwkgIGdvdG8gb3V0 OwotKyAgYm4gPSBCTl9uZXcoKTsKLSsgIGlmICghYm4pCi0rCSAgZ290byBvdXQ7Ci0rICBpZiAo IUJOX3NldF93b3JkKGJuLCBSU0FfRjQpKQotKwkgIGdvdG8gb3V0OwotKwotKyAgaWYgKCFSU0Ff Z2VuZXJhdGVfa2V5X2V4KHJzYSwgMTAyNCwgYm4sIE5VTEwpKQotKwkgIGdvdG8gb3V0OwotKwot ICAgciA9IFJTQV9jaGVja19rZXkocnNhKTsKLSsgIGlmIChyICE9IDEpCi0rCSAgZ290byBvdXQ7 Ci0gICBwa2V5LT5raS5yc2EucGFkID0gUlNBX1BLQ1MxX1BBRERJTkc7Ci0tICBpZiAocnNhID09 IE5VTEwpCi0tICAgIHsKLS0gICAgICBzcWxyX25ld19lcnJvciAoIjQyMDAwIiwgIlhFTkMwNiIs Ci0tCQkgICAgIlJTQSBwYXJhbWV0ZXJzIGdlbmVyYXRpb24gZXJyb3IiKTsKLS0gICAgfQotICAg cGtleS0+eGVrX3JzYSA9IHJzYTsKLSAgIHBrZXktPnhla19wcml2YXRlX3JzYSA9IHJzYTsKLSsg IEJOX2ZyZWUoYm4pOwotICAgcmV0dXJuIDA7Ci0rb3V0OgotKyAgaWYgKGJuKQotKwkgIEJOX2Zy ZWUoYm4pOwotKyAgaWYgKHJzYSkKLSsJICBSU0FfZnJlZShyc2EpOwotKyAgc3Fscl9uZXdfZXJy b3IgKCI0MjAwMCIsICJYRU5DMDYiLAotKwkJICAiUlNBIHBhcmFtZXRlcnMgZ2VuZXJhdGlvbiBl cnJvciIpOwotKyAgcmV0dXJuIC0xOwotIH0KLSAKLSAKLUBAIC0xNDU1LDE5ICsxNDY0LDE5IEBA IHhlbmNfa2V5X3QgKiB4ZW5jX2tleV9jcmVhdGVfZnJvbV94NTA5X2MKLSAKLSAgIGlmIChwa2V5 KQotICAgICB7Ci0tICAgICAgc3dpdGNoIChFVlBfUEtFWV90eXBlIChwa2V5LT50eXBlKSkKLSsg ICAgICBzd2l0Y2ggKEVWUF9QS0VZX3R5cGUgKEVWUF9QS0VZX2lkKHBrZXkpKSkKLSAJewotIAlj YXNlIEVWUF9QS0VZX0RTQToKLSAJICBzaWduX2FsZ29uYW1lID0gRFNJR19EU0FfU0hBMV9BTEdP OwotIAkgIGVuY19hbGdvbmFtZSA9IFhFTkNfRFNBX0FMR087Ci0tCSAgZHNhID0gcGtleS0+cGtl eS5kc2E7Ci0tCSAgcHJpdmF0ZV9kc2EgPSBwcml2YXRlX2tleSA/IHByaXZhdGVfa2V5LT5wa2V5 LmRzYSA6IDA7Ci0rCSAgZHNhID0gRVZQX1BLRVlfZ2V0MF9EU0EocGtleSk7Ci0rCSAgcHJpdmF0 ZV9kc2EgPSBwcml2YXRlX2tleSA/IEVWUF9QS0VZX2dldDBfRFNBKHByaXZhdGVfa2V5KSA6IDA7 Ci0gCSAgYnJlYWs7Ci0gCWNhc2UgRVZQX1BLRVlfUlNBOgotIAkgIHNpZ25fYWxnb25hbWUgPSBE U0lHX1JTQV9TSEExX0FMR087Ci0gCSAgZW5jX2FsZ29uYW1lID0gWEVOQ19SU0FfQUxHTzsKLS0J ICByc2EgPSBwa2V5LT5wa2V5LnJzYTsKLS0JICBwcml2YXRlX3JzYSA9IHByaXZhdGVfa2V5ID8g cHJpdmF0ZV9rZXktPnBrZXkucnNhIDogMDsKLSsJICByc2EgPSBFVlBfUEtFWV9nZXQwX1JTQShw a2V5KTsKLSsJICBwcml2YXRlX3JzYSA9IHByaXZhdGVfa2V5ID8gRVZQX1BLRVlfZ2V0MF9SU0Eo cHJpdmF0ZV9rZXkpIDogMDsKLSAJICBicmVhazsKLSAJZGVmYXVsdDoKLSAJICBnb3RvIGZpbmlz aDsKLUBAIC0xNTE2LDEzICsxNTI1LDYgQEAgeGVuY19rZXlfdCAqIHhlbmNfa2V5X2NyZWF0ZV9m cm9tX3g1MDlfYwotICAgcmV0dXJuIGs7Ci0gfQotIAotLXN0YXRpYyB2b2lkIGRoX2NiKGludCBw LCBpbnQgbiwgdm9pZCAqYXJnKQotLXsKLS0jaWZkZWYgTElOVAotLSAgcD1uOwotLSNlbmRpZgot LX0KLS0KLSBzdGF0aWMgLyp4ZW5jX2tleV9EU0FfY3JlYXRlICovCi0gY2FkZHJfdCBiaWZfeGVu Y19rZXlfZHNhX2NyZWF0ZSAoY2FkZHJfdCAqIHFzdCwgY2FkZHJfdCAqIGVycl9yLCBzdGF0ZV9z bG90X3QgKiogYXJncykKLSB7Ci1AQCAtMTU4OCwxNSArMTU5MCwyMSBAQCBjYWRkcl90IGJpZl94 ZW5jX2tleV9ESF9jcmVhdGUgKGNhZGRyX3QKLSAgICAgICBkaCA9IERIX25ldyAoKTsKLSAgICAg ICBibl9wID0gQk5fYmluMmJuICgodW5zaWduZWQgY2hhciAqKW1vZCwgcF9sZW4sIE5VTEwpOwot ICAgICAgIGJuX2cgPSBCTl9iaW4yYm4gKGdfYmluLCAxLCBOVUxMKTsKLS0gICAgICBkaC0+cCA9 IGJuX3A7Ci0tICAgICAgZGgtPmcgPSBibl9nOwotKyAgICAgIGlmIChkaCkKLSsJICAgICAgREhf c2V0MF9wcWcoZGgsIGJuX3AsIE5VTEwsIGJuX2cpOwotIAotICAgICAgIGRrX2ZyZWVfYm94ICht b2RfYjY0KTsKLSAgICAgICBka19mcmVlX2JveCAobW9kKTsKLSAgICAgfQotICAgZWxzZQotICAg ICB7Ci0tICAgICAgZGggPSBESF9nZW5lcmF0ZV9wYXJhbWV0ZXJzIChudW0sIGcsIGRoX2NiLCBO VUxMKTsKLSsgICAgICBkaCA9IERIX25ldygpOwotKyAgICAgIGlmIChkaCkgewotKwkgICAgICBp ZiAoIURIX2dlbmVyYXRlX3BhcmFtZXRlcnNfZXgoZGgsIG51bSwgZywgTlVMTCkpIHsKLSsJCSAg ICAgIERIX2ZyZWUoZGgpOwotKwkJICAgICAgZGggPSBOVUxMOwotKwkgICAgICB9Ci0rICAgICAg fQotICAgICB9Ci0gICBpZiAoIWRoKQotICAgICB7Ci1AQCAtMTYyNiw3ICsxNjM0LDcgQEAgY2Fk ZHJfdCBiaWZfeGVuY19ESF9nZXRfcGFyYW1zIChjYWRkcl90Ci0gICBpbnQgbiwgbGVuOwotICAg Y2FkZHJfdCBidWYgPSBOVUxMLCByZXQsIGI2NDsKLSAgIERIICpkaDsKLS0gIEJJR05VTSAqbnVt OwotKyAgY29uc3QgQklHTlVNICpudW07Ci0gCi0gICBtdXRleF9lbnRlciAoeGVuY19rZXlzX210 eCk7Ci0gICBrZXkgPSB4ZW5jX2dldF9rZXlfYnlfbmFtZSAobmFtZSwgMCk7Ci1AQCAtMTY0MSwx OSArMTY0OSwxOSBAQCBjYWRkcl90IGJpZl94ZW5jX0RIX2dldF9wYXJhbXMgKGNhZGRyX3QKLSAg IHN3aXRjaCAocGFyYW0pCi0gICAgIHsKLSAgIAljYXNlIDE6Ci0tCSBudW0gPSBkaC0+cDsKLSsJ IERIX2dldDBfcHFnKGRoLCAmbnVtLCBOVUxMLCBOVUxMKTsKLSAJIGJyZWFrOwotIAljYXNlIDI6 Ci0tCSBudW0gPSBkaC0+ZzsKLSsJIERIX2dldDBfcHFnKGRoLCBOVUxMLCBOVUxMLCAmbnVtKTsK LSAJIGJyZWFrOwotIAljYXNlIDM6Ci0tCSBudW0gPSBkaC0+cHViX2tleTsKLSsJIERIX2dldDBf a2V5KGRoLCAmbnVtLCBOVUxMKTsKLSAJIGJyZWFrOwotIAljYXNlIDQ6Ci0tCSBudW0gPSBkaC0+ cHJpdl9rZXk7Ci0rCSBESF9nZXQwX2tleShkaCwgTlVMTCwgJm51bSk7Ci0gCSBicmVhazsKLSAJ ZGVmYXVsdDoKLS0JIG51bSA9IGRoLT5wdWJfa2V5OwotKwkgREhfZ2V0MF9rZXkoZGgsICZudW0s IE5VTEwpOwotICAgICB9Ci0gCi0gICBidWZfbGVuID0gKHNpemVfdClCTl9udW1fYnl0ZXMobnVt KTsKLUBAIC0xODExLDcgKzE4MTksMTUgQEAgY2FkZHJfdCBiaWZfeGVuY19rZXlfcnNhX2NyZWF0 ZSAoY2FkZHJfdAotICAgeGVuY19rZXlfdCAqIGs7Ci0gICBjYWRkcl90IG5hbWUgPSBiaWZfc3Ry aW5nX2FyZyAocXN0LCBhcmdzLCAwLCAieGVuY19rZXlfUlNBX2NyZWF0ZSIpOwotICAgaW50IG51 bSA9IChpbnQpIGJpZl9sb25nX2FyZyAocXN0LCBhcmdzLCAxLCAieGVuY19rZXlfUlNBX2NyZWF0 ZSIpOwotLSAgUlNBICpyc2EgPSBOVUxMOwotKyAgUlNBICpyc2E7Ci0rICBCSUdOVU0gKmJuOwot KwotKyAgcnNhID0gUlNBX25ldygpOwotKyAgYm4gPSBCTl9uZXcoKTsKLSsgIGlmICghcnNhIHx8 ICFibikKLSsJZ290byBvdXQ7Ci0rICBpZiAoIUJOX3NldF93b3JkKGJuLCBSU0FfRjQpKQotKwln b3RvIG91dDsKLSAKLSAgIG11dGV4X2VudGVyICh4ZW5jX2tleXNfbXR4KTsKLSAgIGlmIChOVUxM ID09IChrID0geGVuY19rZXlfY3JlYXRlIChuYW1lLCBYRU5DX1JTQV9BTEdPICwgRFNJR19SU0Ff U0hBMV9BTEdPLCAwKSkpCi1AQCAtMTgyMCwxMiArMTgzNiwxMSBAQCBjYWRkcl90IGJpZl94ZW5j X2tleV9yc2FfY3JlYXRlIChjYWRkcl90Ci0gICAgICAgU1FMUl9ORVdfS0VZX0VYSVNUX0VSUk9S IChuYW1lKTsKLSAgICAgfQotIAotLSAgcnNhID0gUlNBX2dlbmVyYXRlX2tleSAobnVtLCBSU0Ff RjQsIE5VTEwsIE5VTEwpOwotLQotLSAgaWYgKHJzYSA9PSBOVUxMKQotLSAgICB7Ci0tICAgICAg c3Fscl9uZXdfZXJyb3IgKCI0MjAwMCIsICJYRU5DMDYiLCAiUlNBIGdlbmVyYXRpb24gZXJyb3Ii KTsKLS0gICAgfQotKyAgaWYgKCFSU0FfZ2VuZXJhdGVfa2V5X2V4IChyc2EsIG51bSwgYm4sIE5V TEwpKSB7Ci0rCSAgbXV0ZXhfbGVhdmUgKHhlbmNfa2V5c19tdHgpOwotKwkgIGdvdG8gb3V0Owot KyAgfQotKyAgQk5fZnJlZShibik7Ci0gCi0gICBrLT54ZWtfcnNhID0gUlNBUHVibGljS2V5X2R1 cCAocnNhKTsKLSAgIGstPnhla19wcml2YXRlX3JzYSA9IHJzYTsKLUBAIC0xODM5LDYgKzE4NTQs MTMgQEAgY2FkZHJfdCBiaWZfeGVuY19rZXlfcnNhX2NyZWF0ZSAoY2FkZHJfdAotIAotICAgbXV0 ZXhfbGVhdmUgKHhlbmNfa2V5c19tdHgpOwotICAgcmV0dXJuIE5VTEw7Ci0rb3V0OgotKyAgaWYg KGJuKQotKwkgIEJOX2ZyZWUoYm4pOwotKyAgaWYgKHJzYSkKLSsJICBSU0FfZnJlZShyc2EpOwot KyAgc3Fscl9uZXdfZXJyb3IgKCI0MjAwMCIsICJYRU5DMDYiLCAiUlNBIGdlbmVyYXRpb24gZXJy b3IiKTsKLSsgIHJldHVybiBOVUxMOwotIH0KLSAKLSB4ZW5jX2tleV90ICoKLUBAIC0yMDM0LDcg KzIwNTYsMTMgQEAgaW50IF9feGVuY19rZXlfZHNhX2luaXQgKGNoYXIgKm5hbWUsIGludAotICAg ICBTUUxSX05FV19LRVlfRVJST1IgKG5hbWUpOwotIAotICAgUkFORF9wb2xsICgpOwotLSAgZHNh ID0gRFNBX2dlbmVyYXRlX3BhcmFtZXRlcnMobnVtLCBOVUxMLCAwLCBOVUxMLCBOVUxMLCBkaF9j YiwgTlVMTCk7Ci0rICBkc2EgPSBEU0FfbmV3KCk7Ci0rICBpZiAoZHNhKSB7Ci0rCSAgaWYgKCFE U0FfZ2VuZXJhdGVfcGFyYW1ldGVyc19leChkc2EsIG51bSwgTlVMTCwgMCwgTlVMTCwgTlVMTCwg TlVMTCkpIHsKLSsJCSAgRFNBX2ZyZWUoZHNhKTsKLSsJCSAgZHNhID0gTlVMTDsKLSsJICB9Ci0r ICB9Ci0gICBpZiAoZHNhID09IE5VTEwpCi0gICAgIHsKLSAgICAgICBzcWxyX25ld19lcnJvciAo IjQyMDAwIiwgIlhFTkMxMSIsCi1AQCAtMjA1OCw3ICsyMDg2LDEzIEBAIGludCBfX3hlbmNfa2V5 X2RoX2luaXQgKGNoYXIgKm5hbWUsIGludAotICAgaWYgKE5VTEwgPT0gcGtleSkKLSAgICAgU1FM Ul9ORVdfS0VZX0VSUk9SIChuYW1lKTsKLSAKLS0gIGRoID0gREhfZ2VuZXJhdGVfcGFyYW1ldGVy cyAobnVtLCBnLCBkaF9jYiwgTlVMTCk7Ci0rICBkaCA9IERIX25ldygpOwotKyAgaWYgKGRoKSB7 Ci0rCSAgaWYgKCFESF9nZW5lcmF0ZV9wYXJhbWV0ZXJzX2V4KGRoLCBudW0sIGcsIE5VTEwpKSB7 Ci0rCQkgIERIX2ZyZWUoZGgpOwotKwkJICBkaCA9IE5VTEw7Ci0rCSAgfQotKyAgfQotICAgaWYg KCFkaCkKLSAgICAgewotICAgICAgIHNxbHJfbmV3X2Vycm9yICgiNDIwMDAiLCAiWEVOQzExIiwK LUBAIC0yMjgwLDEyICsyMzE0LDEyIEBAIGJpZl94ZW5jX2tleV9yc2FfcmVhZCAoY2FkZHJfdCAq IHFzdCwgY2EKLSAgICAgewotICAgICAgIGluID0gQklPX25ld19tZW1fYnVmIChrZXlfYmFzZTY0 LCBsZW4pOwotICAgICAgIHBrZXkgPSBkMmlfUFVCS0VZX2JpbyAoaW4sIE5VTEwpOwotLSAgICAg IGlmIChwa2V5ICYmIHBrZXktPnR5cGUgPT0gRVZQX1BLRVlfUlNBKQotLQlwID0gcGtleS0+cGtl eS5yc2E7Ci0rICAgICAgaWYgKHBrZXkgJiYgRVZQX1BLRVlfaWQocGtleSkgPT0gRVZQX1BLRVlf UlNBKQotKwlwID0gRVZQX1BLRVlfZ2V0MF9SU0EocGtleSk7Ci0gICAgICAgQklPX3Jlc2V0IChp bik7Ci0gICAgICAgcGtrZXkgPSBkMmlfUHJpdmF0ZUtleV9iaW8gKGluLCBOVUxMKTsKLS0gICAg ICBpZiAocGtrZXkgJiYgcGtrZXktPnR5cGUgPT0gRVZQX1BLRVlfUlNBKQotLQlyID0gcGtrZXkt PnBrZXkucnNhOwotKyAgICAgIGlmIChwa2tleSAmJiBFVlBfUEtFWV9pZChwa2tleSkgPT0gRVZQ X1BLRVlfUlNBKQotKwlyID0gRVZQX1BLRVlfZ2V0MF9SU0EocGtrZXkpOwotICAgICAgIEJJT19m cmVlIChpbik7Ci0gICAgIH0KLSAgIGVsc2UKLUBAIC0yMzA0LDkgKzIzMzgsMTEgQEAgYmlmX3hl bmNfa2V5X3JzYV9yZWFkIChjYWRkcl90ICogcXN0LCBjYQotIAotICAgaWYgKCFwKQotICAgICB7 Ci0rICAgICAgY29uc3QgQklHTlVNICpuLCAqZTsKLSsKLSsgICAgICBSU0FfZ2V0MF9rZXkociwg Jm4sICZlLCBOVUxMKTsKLSAgICAgICBwID0gUlNBX25ldyAoKTsKLS0gICAgICBwLT5uID0gQk5f ZHVwIChyLT5uKTsKLS0gICAgICBwLT5lID0gQk5fZHVwIChyLT5lKTsKLSsgICAgICBSU0Ffc2V0 MF9rZXkocCwgQk5fZHVwKG4pLCBCTl9kdXAoZSksIE5VTEwpOwotICAgICB9Ci0gCi0gICBtdXRl eF9lbnRlciAoeGVuY19rZXlzX210eCk7Ci1AQCAtMjM1NSwxNCArMjM5MSwxMyBAQCBiaWZfeGVu Y19rZXlfcnNhX2NvbnN0cnVjdCAoY2FkZHJfdCAqIHFzCi0gICBwID0gUlNBX25ldyAoKTsKLSAg IG4gPSBCTl9iaW4yYm4gKCh1bnNpZ25lZCBjaGFyICopIG1vZCwgYm94X2xlbmd0aCAobW9kKSAt IDEsIE5VTEwpOwotICAgZSA9IEJOX2JpbjJibiAoKHVuc2lnbmVkIGNoYXIgKikgZXhwLCBib3hf bGVuZ3RoIChleHApIC0gMSwgTlVMTCk7Ci0tICBwLT5uID0gbjsKLS0gIHAtPmUgPSBlOwotKyAg UlNBX3NldDBfa2V5KHAsIG4sIGUsIE5VTEwpOwotICAgaWYgKHBleHApCi0gICAgIHsKLSAgICAg ICBwayA9IFJTQV9uZXcgKCk7Ci0tICAgICAgcGstPmQgPSBCTl9iaW4yYm4gKCh1bnNpZ25lZCBj aGFyICopIHBleHAsIGJveF9sZW5ndGggKHBleHApIC0gMSwgTlVMTCk7Ci0tICAgICAgcGstPm4g PSBCTl9kdXAgKG4pOwotLSAgICAgIHBrLT5lID0gQk5fZHVwIChlKTsKLSsgICAgICBSU0Ffc2V0 MF9rZXkocCwgQk5fZHVwKG4pLAotKwkJICAgICAgQk5fZHVwKGUpLAotKwkJICAgICAgQk5fYmlu MmJuICgodW5zaWduZWQgY2hhciAqKSBwZXhwLCBib3hfbGVuZ3RoIChwZXhwKSAtIDEsIE5VTEwp KTsKLSAgICAgfQotICAgbXV0ZXhfZW50ZXIgKHhlbmNfa2V5c19tdHgpOwotICAgayA9IHhlbmNf a2V5X2NyZWF0ZSAobmFtZSwgWEVOQ19SU0FfQUxHTywgRFNJR19SU0FfU0hBMV9BTEdPLCAwKTsK LUBAIC00MDg2LDcgKzQxMjEsNyBAQCB2b2lkIHhlbmNfdGFnX2ZyZWUgKHhlbmNfdGFnX3QgKiB0 KQotICNlbmRpZgotIH0KLSAKLS14ZW5jX3RhZ190ICogeGVuY190YWdfYWRkX2NoaWxkX0JOICh4 ZW5jX3RhZ190ICogdGFnLCBCSUdOVU0gKiBibikKLStzdGF0aWMgeGVuY190YWdfdCAqIHhlbmNf dGFnX2FkZF9jaGlsZF9CTiAoeGVuY190YWdfdCAqIHRhZywgY29uc3QgQklHTlVNICogYm4pCi0g ewotICBjaGFyICogYnVmZmVyID0gZGtfYWxsb2NfYm94IChCTl9udW1fYnl0ZXMgKGJuKSwgRFZf QklOKTsKLSAgY2hhciAqIGJ1ZmZlcl9iYXNlNjQgPSBka19hbGxvY19ib3ggKGJveF9sZW5ndGgg KGJ1ZmZlcikgKiAyLCBEVl9TVFJJTkcpOwotQEAgLTQxMTEsMTIgKzQxNDYsMTUgQEAgY2FkZHJf dCAqKiB4ZW5jX2dlbmVyYXRlX2V4dF9pbmZvICh4ZW5jXwotICAgY2FkZHJfdCAqKiBhcnJheTsK LSAgIGlmIChrZXktPnhla190eXBlID09IERTSUdfS0VZX1JTQSkKLSAgICAgewotKyAgICAgIGNv bnN0IEJJR05VTSAqcnNhX24sICpyc2FfZTsKLSsKLSsgICAgICBSU0FfZ2V0MF9rZXkoa2V5LT5r aS5yc2EucnNhX3N0LCAmcnNhX24sICZyc2FfZSwgTlVMTCk7Ci0gICAgICAgeGVuY190YWdfdCAq IHJzYWtleXZhbCA9IHhlbmNfdGFnX2NyZWF0ZSAoRFNJR19VUkksICI6UlNBS2V5VmFsdWUiKTsK LSAgICAgICB4ZW5jX3RhZ190ICogcnNhbW9kdWx1cyA9IHhlbmNfdGFnX2NyZWF0ZSAoRFNJR19V UkksICI6TW9kdWx1cyIpOwotICAgICAgIHhlbmNfdGFnX3QgKiByc2FleHBvbmVudCA9IHhlbmNf dGFnX2NyZWF0ZSAoRFNJR19VUkksICI6RXhwb25lbnQiKTsKLSAKLS0gICAgICB4ZW5jX3RhZ19h ZGRfY2hpbGRfQk4gKHJzYW1vZHVsdXMsIGtleS0+a2kucnNhLnJzYV9zdC0+bik7Ci0tICAgICAg eGVuY190YWdfYWRkX2NoaWxkX0JOIChyc2FleHBvbmVudCwga2V5LT5raS5yc2EucnNhX3N0LT5l KTsKLSsgICAgICB4ZW5jX3RhZ19hZGRfY2hpbGRfQk4gKHJzYW1vZHVsdXMsIHJzYV9uKTsKLSsg ICAgICB4ZW5jX3RhZ19hZGRfY2hpbGRfQk4gKHJzYWV4cG9uZW50LCByc2FfZSk7Ci0gCi0gICAg ICAgeGVuY190YWdfYWRkX2NoaWxkIChyc2FrZXl2YWwsIHhlbmNfdGFnX2ZpbmFsaXplIChyc2Ft b2R1bHVzKSk7Ci0gICAgICAgeGVuY190YWdfYWRkX2NoaWxkIChyc2FrZXl2YWwsIHhlbmNfdGFn X2ZpbmFsaXplIChyc2FleHBvbmVudCkpOwotQEAgLTQxMzUsMTIgKzQxNzMsMTUgQEAgY2FkZHJf dCAqKiB4ZW5jX2dlbmVyYXRlX2V4dF9pbmZvICh4ZW5jXwotICAgICAgIHhlbmNfdGFnX3QgKiBn ID0geGVuY190YWdfY3JlYXRlIChEU0lHX1VSSSwgIjpHIik7Ci0gICAgICAgeGVuY190YWdfdCAq IHkgPSB4ZW5jX3RhZ19jcmVhdGUgKERTSUdfVVJJLCAiOlkiKTsKLSAgICAgICBEU0EgKiBkc2Eg PSBrZXktPmtpLmRzYS5kc2Ffc3Q7Ci0rICAgICAgY29uc3QgQklHTlVNICpkc2FfcCwgKmRzYV9x LCAqZHNhX2csICpkc2FfcHViX2tleTsKLSAKLSsgICAgICBEU0FfZ2V0MF9wcWcoZHNhLCAmZHNh X3AsICZkc2FfcSwgJmRzYV9nKTsKLSsgICAgICBEU0FfZ2V0MF9rZXkoZHNhLCAmZHNhX3B1Yl9r ZXksIE5VTEwpOwotIAotLSAgICAgIHhlbmNfdGFnX2FkZF9jaGlsZF9CTiAocCwgZHNhLT5wKTsK LS0gICAgICB4ZW5jX3RhZ19hZGRfY2hpbGRfQk4gKHAsIGRzYS0+cSk7Ci0tICAgICAgeGVuY190 YWdfYWRkX2NoaWxkX0JOIChwLCBkc2EtPmcpOwotLSAgICAgIHhlbmNfdGFnX2FkZF9jaGlsZF9C TiAocCwgZHNhLT5wdWJfa2V5KTsKLSsgICAgICB4ZW5jX3RhZ19hZGRfY2hpbGRfQk4gKHAsIGRz YV9wKTsKLSsgICAgICB4ZW5jX3RhZ19hZGRfY2hpbGRfQk4gKHAsIGRzYV9xKTsKLSsgICAgICB4 ZW5jX3RhZ19hZGRfY2hpbGRfQk4gKHAsIGRzYV9nKTsKLSsgICAgICB4ZW5jX3RhZ19hZGRfY2hp bGRfQk4gKHAsIGRzYV9wdWJfa2V5KTsKLSAKLSAgICAgICB4ZW5jX3RhZ19hZGRfY2hpbGQgKGRz YWtleXZhbCwgeGVuY190YWdfZmluYWxpemUgKHApKTsKLSAgICAgICB4ZW5jX3RhZ19hZGRfY2hp bGQgKGRzYWtleXZhbCwgeGVuY190YWdfZmluYWxpemUgKHEpKTsKLUBAIC02MTg3LDcgKzYyMjgs NyBAQCBjYWRkcl90IHhlbmNfeDUwOV9nZXRfa2V5X2lkZW50aWZpZXIgKFg1Ci0gCi0gICByZXQg PSBka19hbGxvY19ib3ggKGlrZXlpZC0+bGVuZ3RoLCBEVl9CSU4pOwotICAgbWVtY3B5IChyZXQs IGlrZXlpZC0+ZGF0YSwgaWtleWlkLT5sZW5ndGgpOwotLSAgTV9BU04xX09DVEVUX1NUUklOR19m cmVlKGlrZXlpZCk7Ci0rICBBU04xX1NUUklOR19mcmVlKGlrZXlpZCk7Ci0gICByZXR1cm4gcmV0 OwotIH0KLSAKLUBAIC02MjQ3LDcgKzYyODgsNyBAQCBiaWZfeDUwOV9nZXRfc3ViamVjdCAoY2Fk ZHJfdCAqIHFzdCwgY2FkCi0gCi0gICByZXQgPSBka19hbGxvY19ib3ggKGlrZXlpZC0+bGVuZ3Ro LCBEVl9CSU4pOwotICAgbWVtY3B5IChyZXQsIGlrZXlpZC0+ZGF0YSwgaWtleWlkLT5sZW5ndGgp OwotLSAgTV9BU04xX09DVEVUX1NUUklOR19mcmVlKGlrZXlpZCk7Ci0rICBBU04xX1NUUklOR19m cmVlKGlrZXlpZCk7Ci0gICByZXR1cm4gcmV0OwotIH0KLSAKLUBAIC02ODA2LDcgKzY4NDcsNyBA QCBiaWZfeGVuY194NTA5X2Nzcl9nZW5lcmF0ZSAoY2FkZHJfdCAqIHFzCi0gCXNrX1g1MDlfRVhU RU5TSU9OX3B1c2goc3RfZXh0cywgZXgpOwotICAgICB9Ci0gICBYNTA5X1JFUV9hZGRfZXh0ZW5z aW9ucyh4LCBzdF9leHRzKTsKLS0gIGlmICghWDUwOV9SRVFfc2lnbiAoeCwgcGssIChway0+dHlw ZSA9PSBFVlBfUEtFWV9SU0EgPyBFVlBfbWQ1KCkgOiBFVlBfZHNzMSgpKSkpCi0rICBpZiAoIVg1 MDlfUkVRX3NpZ24gKHgsIHBrLCAoRVZQX1BLRVlfaWQocGspID09IEVWUF9QS0VZX1JTQSA/IEVW UF9tZDUoKSA6IEVWUF9zaGExKCkpKSkKLSAgICAgewotICAgICAgIHBrID0gTlVMTDsgLyoga2Vl cCBvbmUgaW4gdGhlIHhlbmNfa2V5ICovCi0gICAgICAgKmVycl9yZXQgPSBzcnZfbWFrZV9uZXdf ZXJyb3IgKCI0MjAwMCIsICJYRUNYWCIsICJDYW4gbm90IHNpZ24gY2VydGlmaWNhdGUgOiAlcyIs IGdldF9zc2xfZXJyb3JfdGV4dCAoYnVmLCBzaXplb2YgKGJ1ZikpKTsKLUBAIC02OTQ1LDE3ICs2 OTg2LDE3IEBAIGJpZl94ZW5jX3g1MDlfZnJvbV9jc3IgKGNhZGRyX3QgKiBxc3QsIGMKLSAgICAg ICAqZXJyX3JldCA9IHNydl9tYWtlX25ld19lcnJvciAoIjQyMDAwIiwgIlhFQ1hYIiwgIkNhbiBu b3Qgc2lnbiBjZXJ0aWZpY2F0ZSIpOwotICAgICAgIGdvdG8gZXJyOwotICAgICB9Ci0tICBzd2l0 Y2ggKEVWUF9QS0VZX3R5cGUgKGNsaV9way0+dHlwZSkpCi0rICBzd2l0Y2ggKEVWUF9QS0VZX3R5 cGUgKEVWUF9QS0VZX2lkKGNsaV9waykpKQotICAgICB7Ci0gICAgICAgY2FzZSBFVlBfUEtFWV9E U0E6Ci0gCSAgc2lnbl9hbGdvbmFtZSA9IERTSUdfRFNBX1NIQTFfQUxHTzsKLSAJICBlbmNfYWxn b25hbWUgPSBYRU5DX0RTQV9BTEdPOwotLQkgIGRzYSA9IGNsaV9way0+cGtleS5kc2E7Ci0rCSAg ZHNhID0gRVZQX1BLRVlfZ2V0MF9EU0EoY2xpX3BrKTsKLSAJICBicmVhazsKLSAgICAgICBjYXNl IEVWUF9QS0VZX1JTQToKLSAJICBzaWduX2FsZ29uYW1lID0gRFNJR19SU0FfU0hBMV9BTEdPOwot IAkgIGVuY19hbGdvbmFtZSA9IFhFTkNfUlNBX0FMR087Ci0tCSAgcnNhID0gY2xpX3BrLT5wa2V5 LnJzYTsKLSsJICByc2EgPSBFVlBfUEtFWV9nZXQwX1JTQShjbGlfcGspOwotIAkgIGJyZWFrOwot ICAgICAgIGRlZmF1bHQ6Ci0gCSAgKmVycl9yZXQgPSBzcnZfbWFrZV9uZXdfZXJyb3IgKCI0MjAw MCIsICJYRUNYWCIsICJUaGUgdHlwZSBvZiBwdWJsaWMga2V5IGlzIG5vdCBzdXBwb3J0ZWQgbXVz IHRiZSBSU0Egb3IgRFNBIik7Ci1AQCAtNzAzMiwxOSArNzA3MywxOSBAQCBiaWZfeGVuY19wa2Nz MTJfZXhwb3J0IChjYWRkcl90ICogcXN0LCBjCi0gICBpZiAoZXhwb3J0X2NoYWluKQotICAgICB7 Ci0gICAgICAgaW50IGk7Ci0tICAgICAgWDUwOV9TVE9SRV9DVFggc3RvcmVfY3R4OwotLSAgICAg IFg1MDlfU1RPUkVfQ1RYX2luaXQgKCZzdG9yZV9jdHgsIENBX2NlcnRzLCB4LCBOVUxMKTsKLS0g ICAgICBpZiAoWDUwOV92ZXJpZnlfY2VydCAoJnN0b3JlX2N0eCkgPiAwKQotLQljaGFpbiA9IFg1 MDlfU1RPUkVfQ1RYX2dldDFfY2hhaW4gKCZzdG9yZV9jdHgpOwotKyAgICAgIFg1MDlfU1RPUkVf Q1RYICpjdHg7Ci0rICAgICAgWDUwOV9TVE9SRV9DVFhfaW5pdCAoY3R4LCBDQV9jZXJ0cywgeCwg TlVMTCk7Ci0rICAgICAgaWYgKFg1MDlfdmVyaWZ5X2NlcnQgKGN0eCkgPiAwKQotKwljaGFpbiA9 IFg1MDlfU1RPUkVfQ1RYX2dldDFfY2hhaW4gKGN0eCk7Ci0gICAgICAgZWxzZQotIAl7Ci0gCSAg Y29uc3QgY2hhciAqZXJyX3N0cjsKLS0JICBlcnJfc3RyID0gWDUwOV92ZXJpZnlfY2VydF9lcnJv cl9zdHJpbmcgKHN0b3JlX2N0eC5lcnJvcik7Ci0rCSAgZXJyX3N0ciA9IFg1MDlfdmVyaWZ5X2Nl cnRfZXJyb3Jfc3RyaW5nIChYNTA5X1NUT1JFX0NUWF9nZXRfZXJyb3IoY3R4KSk7Ci0gCSAgKmVy cl9yZXQgPSBzcnZfbWFrZV9uZXdfZXJyb3IgKCIyMjAyMyIsICJYRU5DWCIsICJYNTA5IGVycm9y OiAlcyIsIGVycl9zdHIpOwotLQkgIFg1MDlfU1RPUkVfQ1RYX2NsZWFudXAgKCZzdG9yZV9jdHgp OwotKwkgIFg1MDlfU1RPUkVfQ1RYX2NsZWFudXAgKGN0eCk7Ci0gCSAgZ290byBlcnI7Ci0gCX0K LS0gICAgICBYNTA5X1NUT1JFX0NUWF9jbGVhbnVwICgmc3RvcmVfY3R4KTsKLSsgICAgICBYNTA5 X1NUT1JFX0NUWF9jbGVhbnVwIChjdHgpOwotICAgICAgIGlmIChjaGFpbikKLSAJewotIAkgIGNl cnRzID0gc2tfWDUwOV9uZXdfbnVsbCAoKTsKLUBAIC03MTUyLDE2ICs3MTkzLDE2IEBAIGJpZl94 ZW5jX3B1YmtleV9wZW1fZXhwb3J0IChjYWRkcl90ICogcXMKLSAgICAgewotICAgICAgIGsgPSBY NTA5X2dldF9wdWJrZXkgKGtleS0+eGVrX3g1MDkpOwotICNpZmRlZiBFVlBfUEtFWV9SU0EKLS0g ICAgICBpZiAoay0+dHlwZSA9PSBFVlBfUEtFWV9SU0EpCi0rICAgICAgaWYgKEVWUF9QS0VZX2lk KGspID09IEVWUF9QS0VZX1JTQSkKLSAJewotLQkgIFJTQSAqIHggPSBrLT5wa2V5LnJzYTsKLSsJ ICBSU0EgKnggPSBFVlBfUEtFWV9nZXQwX1JTQShrKTsKLSAJICBQRU1fd3JpdGVfYmlvX1JTQV9Q VUJLRVkgKGIsIHgpOwotIAl9Ci0gI2VuZGlmCi0gI2lmZGVmIEVWUF9QS0VZX0RTQQotLSAgICAg IGlmIChrLT50eXBlID09IEVWUF9QS0VZX0RTQSkKLSsgICAgICBpZiAoRVZQX1BLRVlfaWQoaykg PT0gRVZQX1BLRVlfRFNBKQotIAl7Ci0tCSAgRFNBICogeCA9IGstPnBrZXkuZHNhOwotKwkgIERT QSAqIHggPSBFVlBfUEtFWV9nZXQwX0RTQShrKTsKLSAJICBQRU1fd3JpdGVfYmlvX0RTQV9QVUJL RVkgKGIsIHgpOwotIAl9Ci0gI2VuZGlmCi1AQCAtNzIwOCwxNiArNzI0OSwxNiBAQCBiaWZfeGVu Y19wdWJrZXlfZGVyX2V4cG9ydCAoY2FkZHJfdCAqIHFzCi0gICAgIHsKLSAgICAgICBrID0gWDUw OV9nZXRfcHVia2V5IChrZXktPnhla194NTA5KTsKLSAjaWZkZWYgRVZQX1BLRVlfUlNBCi0tICAg ICAgaWYgKGstPnR5cGUgPT0gRVZQX1BLRVlfUlNBKQotKyAgICAgIGlmIChFVlBfUEtFWV9pZChr KSA9PSBFVlBfUEtFWV9SU0EpCi0gCXsKLS0JICBSU0EgKiB4ID0gay0+cGtleS5yc2E7Ci0rCSAg UlNBICogeCA9IEVWUF9QS0VZX2dldDBfUlNBKGspOwotIAkgIGkyZF9SU0FfUFVCS0VZX2JpbyAo YiwgeCk7Ci0gCX0KLSAjZW5kaWYKLSAjaWZkZWYgRVZQX1BLRVlfRFNBCi0tICAgICAgaWYgKGst PnR5cGUgPT0gRVZQX1BLRVlfRFNBKQotKyAgICAgIGlmIChFVlBfUEtFWV9pZChrKSA9PSBFVlBf UEtFWV9EU0EpCi0gCXsKLS0JICBEU0EgKiB4ID0gay0+cGtleS5kc2E7Ci0rCSAgRFNBICogeCA9 IEVWUF9QS0VZX2dldDBfRFNBKGspOwotIAkgIGkyZF9EU0FfUFVCS0VZX2JpbyAoYiwgeCk7Ci0g CX0KLSAjZW5kaWYKLUBAIC03MjQ1LDcgKzcyODYsNyBAQCBlcnI6Ci0gfQotIAotIHN0YXRpYyBj YWRkcl90Ci0tQk4yYmluYm94IChCSUdOVU0gKiB4KQotK0JOMmJpbmJveCAoY29uc3QgQklHTlVN ICogeCkKLSB7Ci0gICBzaXplX3QgYnVmX2xlbiwgbjsKLSAgIGNhZGRyX3QgYnVmOwotQEAgLTcy ODAsOCArNzMyMSwxNCBAQCBzdGF0aWMgY2FkZHJfdAotIHhlbmNfcnNhX3B1Yl9tYWdpYyAoUlNB ICogeCkKLSB7Ci0gICBjYWRkcl90IHJldDsKLS0gIGNhZGRyX3QgbiA9IEJOMmJpbmJveCAoeC0+ bik7IC8qIG1vZHVsdXMgKi8KLS0gIGNhZGRyX3QgZSA9IEJOMmJpbmJveCAoeC0+ZSk7IC8qIHB1 YmxpYyBleHBvbmVudCAqLwotKyAgY2FkZHJfdCBuOwotKyAgY2FkZHJfdCBlOwotKyAgY29uc3Qg QklHTlVNICpyc2FfbiwgKnJzYV9lOwotKwotKyAgUlNBX2dldDBfa2V5KHgsICZyc2FfbiwgJnJz YV9lLCBOVUxMKTsKLSsgIG4gPSBCTjJiaW5ib3ggKHJzYV9uKTsgLyogbW9kdWx1cyAqLwotKyAg ZSA9IEJOMmJpbmJveCAocnNhX2UpOyAvKiBwdWJsaWMgZXhwb25lbnQgKi8KLSsKLSAgIG4gPSB4 ZW5jX2VuY29kZV9iYXNlNjRfYmluYm94IChuLCAxKTsKLSAgIGUgPSB4ZW5jX2VuY29kZV9iYXNl NjRfYmluYm94IChlLCAxKTsKLSAgIHJldCA9IGRrX2FsbG9jX2JveCAoYm94X2xlbmd0aCAobikg KyBib3hfbGVuZ3RoIChlKSArIDQgLyogdHdvIGRvdHMgLSBvbmUgdHJhaWxpbmcgemVybyArIFJT QSBwcmVmaXggKi8sIERWX1NUUklORyk7Ci1AQCAtNzMwNiw5ICs3MzUzLDkgQEAgYmlmX3hlbmNf cHVia2V5X21hZ2ljX2V4cG9ydCAoY2FkZHJfdCAqCi0gICAgIHsKLSAgICAgICBrID0gWDUwOV9n ZXRfcHVia2V5IChrZXktPnhla194NTA5KTsKLSAjaWZkZWYgRVZQX1BLRVlfUlNBCi0tICAgICAg aWYgKGstPnR5cGUgPT0gRVZQX1BLRVlfUlNBKQotKyAgICAgIGlmIChFVlBfUEtFWV9pZChrKSA9 PSBFVlBfUEtFWV9SU0EpCi0gCXsKLS0JICBSU0EgKiB4ID0gay0+cGtleS5yc2E7Ci0rCSAgUlNB ICogeCA9IEVWUF9QS0VZX2dldDBfUlNBKGspOwotIAkgIHJldCA9IHhlbmNfcnNhX3B1Yl9tYWdp YyAoeCk7Ci0gCX0KLSAjZW5kaWYKLUBAIC03MzQ5LDEwICs3Mzk2LDE2IEBAIHN0YXRpYyBjYWRk cl90Ci0geGVuY19yc2FfcHViX3NzaF9leHBvcnQgKFJTQSAqIHgpCi0gewotICAgc3RhdGljIGNo YXIgKiBzc2hfaGVhZGVyID0gIlx4MDBceDAwXHgwMFx4MDdzc2gtcnNhIjsKLSsgIGNvbnN0IEJJ R05VTSAqcnNhX24sICpyc2FfZTsKLSAgIGNhZGRyX3QgcmV0OwotICAgaW50IGxlbiwgcG9zOwot LSAgY2FkZHJfdCBuID0gQk4yYmluYm94ICh4LT5uKTsgLyogbW9kdWx1cyAqLwotLSAgY2FkZHJf dCBlID0gQk4yYmluYm94ICh4LT5lKTsgLyogcHVibGljIGV4cG9uZW50ICovCi0rICBjYWRkcl90 IG47Ci0rICBjYWRkcl90IGU7Ci0rCi0rICBSU0FfZ2V0MF9rZXkoeCwgJnJzYV9uLCAmcnNhX2Us IE5VTEwpOwotKyAgbiA9IEJOMmJpbmJveCAocnNhX24pOyAvKiBtb2R1bHVzICovCi0rICBlID0g Qk4yYmluYm94IChyc2FfZSk7IC8qIHB1YmxpYyBleHBvbmVudCAqLwotKwotICAgbGVuID0gMTEg KyA4ICsgYm94X2xlbmd0aCAobikgKyBib3hfbGVuZ3RoIChlKTsKLSAgIGlmIChuWzBdICYgMHg4 MCkKLSAgICAgbGVuICsrOwotQEAgLTczODMsOSArNzQzNiw5IEBAIGJpZl94ZW5jX3B1YmtleV9z c2hfZXhwb3J0IChjYWRkcl90ICogcXMKLSAgICAgewotICAgICAgIGsgPSBYNTA5X2dldF9wdWJr ZXkgKGtleS0+eGVrX3g1MDkpOwotICNpZmRlZiBFVlBfUEtFWV9SU0EKLS0gICAgICBpZiAoay0+ dHlwZSA9PSBFVlBfUEtFWV9SU0EpCi0rICAgICAgaWYgKEVWUF9QS0VZX2lkKGspID09IEVWUF9Q S0VZX1JTQSkKLSAJewotLQkgIFJTQSAqIHggPSBrLT5wa2V5LnJzYTsKLSsJICBSU0EgKiB4ID0g RVZQX1BLRVlfZ2V0MF9SU0Eoayk7Ci0gCSAgcmV0ID0geGVuY19yc2FfcHViX3NzaF9leHBvcnQg KHgpOwotIAl9Ci0gI2VuZGlmCi1AQCAtNzQxOCw3ICs3NDcxLDcgQEAgYmlmX3hlbmNfU1BLSV9y ZWFkIChjYWRkcl90ICogcXN0LCBjYWRkcgotICAgICAgIHJldHVybiBOVUxMOwotICAgICB9Ci0g ICBwayA9IE5FVFNDQVBFX1NQS0lfZ2V0X3B1YmtleSAoc3BraSk7Ci0tICBpZiAoIXBrIHx8IHBr LT50eXBlICE9IEVWUF9QS0VZX1JTQSkKLSsgIGlmICghcGsgfHwgRVZQX1BLRVlfaWQocGspICE9 IEVWUF9QS0VZX1JTQSkKLSAgICAgewotICAgICAgIE5FVFNDQVBFX1NQS0lfZnJlZSAoc3BraSk7 Ci0gICAgICAgKmVycl9yZXQgPSBzcnZfbWFrZV9uZXdfZXJyb3IgKCI0MjAwMCIsICJYRUNYWCIs ICJDYW4gbm90IHJldHJpZXZlIFJTQSBrZXkiKTsKLUBAIC03NTk1LDE0ICs3NjQ4LDE0IEBAIGJp Zl94ZW5jX3g1MDlfY2FfY2VydHNfbGlzdCAoY2FkZHJfdCAqIHEKLSAgIHNlY19jaGVja19kYmEg KChRSSopcXN0LCBtZSk7Ci0gICBpbiA9IEJJT19uZXcgKEJJT19zX21lbSAoKSk7Ci0gICBtdXRl eF9lbnRlciAoeGVuY19rZXlzX210eCk7Ci0tICBjZXJ0cyA9IENBX2NlcnRzLT5vYmpzOwotKyAg Y2VydHMgPSBYNTA5X1NUT1JFX2dldDBfb2JqZWN0cyhDQV9jZXJ0cyk7Ci0gICBsZW4gPSBza19Y NTA5X09CSkVDVF9udW0gKGNlcnRzKTsKLSAgIGZvciAoaSA9IDA7IGkgPCBsZW47IGkrKykKLSAg ICAgewotICAgICAgIFg1MDlfT0JKRUNUICogb2JqID0gc2tfWDUwOV9PQkpFQ1RfdmFsdWUgKGNl cnRzLCBpKTsKLS0gICAgICBpZiAob2JqLT50eXBlID09IFg1MDlfTFVfWDUwOSkKLSsgICAgICBp ZiAoWDUwOV9PQkpFQ1RfZ2V0X3R5cGUob2JqKSA9PSBYNTA5X0xVX1g1MDkpCi0gCXsKLS0JICBY NTA5ICp4ID0gb2JqLT5kYXRhLng1MDk7Ci0rCSAgWDUwOSAqeCA9IFg1MDlfT0JKRUNUX2dldDBf WDUwOShvYmopOwotIAkgIGNhZGRyX3QgaXRtOwotIAkgIGludCBibGVuOwotIAkgIEJJT19yZXNl dCAoaW4pOwotLS0tIGEvbGlic3JjL1dpL3htbGVuYy5oCi0rKysgYi9saWJzcmMvV2kveG1sZW5j LmgKLUBAIC0zOCw2ICszOCw3IEBACi0gI2luY2x1ZGUgPG9wZW5zc2wvZHNhLmg+Ci0gI2luY2x1 ZGUgPG9wZW5zc2wvcnNhLmg+Ci0gI2luY2x1ZGUgPG9wZW5zc2wvZGVzLmg+Ci0rI2luY2x1ZGUg PG9wZW5zc2wvaG1hYy5oPgotIAotICNpZmRlZiBBRVNfRU5DX0VOQUJMRQotICNpbmNsdWRlIDxv cGVuc3NsL2Flcy5oPgotQEAgLTYzMSw1ICs2MzIsMTgzIEBAIGNhZGRyX3QgKiB4bWxfZmluZF9h bnlfY2hpbGQgKGNhZGRyX3QgKgotIAotIGV4dGVybiBka19tdXRleF90ICogeGVuY19rZXlzX210 eDsKLSAKLSsjaWYgT1BFTlNTTF9WRVJTSU9OX05VTUJFUiA8IDB4MTAxMDAwMDAKLSsKLStzdGF0 aWMgaW5saW5lIEhNQUNfQ1RYICpITUFDX0NUWF9uZXcodm9pZCkKLSt7Ci0rCUhNQUNfQ1RYICpw OwotKwotKwlwID0gY2FsbG9jKDEsIHNpemVvZihITUFDX0NUWCkpOwotKwlpZiAoIXApCi0rCQly ZXR1cm4gcDsKLSsJSE1BQ19DVFhfaW5pdChwKTsKLSsJcmV0dXJuIHA7Ci0rfQotKwotK3N0YXRp YyBpbmxpbmUgdm9pZCBITUFDX0NUWF9mcmVlKEhNQUNfQ1RYICpjdHgpCi0rewotKwlITUFDX0NU WF9jbGVhbnVwKGN0eCk7Ci0rCWZyZWUoY3R4KTsKLSt9Ci0rCi0rc3RhdGljIGlubGluZSB2b2lk IFJTQV9nZXQwX2tleShjb25zdCBSU0EgKnIsIGNvbnN0IEJJR05VTSAqKm4sCi0rCQkJCWNvbnN0 IEJJR05VTSAqKmUsIGNvbnN0IEJJR05VTSAqKmQpCi0rewotKwlpZiAobiAhPSBOVUxMKQotKwkJ Km4gPSByLT5uOwotKwlpZiAoZSAhPSBOVUxMKQotKwkJKmUgPSByLT5lOwotKwlpZiAoZCAhPSBO VUxMKQotKwkJKmQgPSByLT5kOwotK30KLSsKLStzdGF0aWMgaW5saW5lIHZvaWQgUlNBX2dldDBf ZmFjdG9ycyhjb25zdCBSU0EgKnIsIGNvbnN0IEJJR05VTSAqKnAsCi0rCQkJCSAgICBjb25zdCBC SUdOVU0gKipxKQotK3sKLSsJaWYgKHAgIT0gTlVMTCkKLSsJCSpwID0gci0+cDsKLSsJaWYgKHEg IT0gTlVMTCkKLSsJCSpxID0gci0+cTsKLSt9Ci0rCi0rc3RhdGljIGlubGluZSBSU0EgKkVWUF9Q S0VZX2dldDBfUlNBKEVWUF9QS0VZICpwa2V5KQotK3sKLSsJaWYgKHBrZXktPnR5cGUgIT0gRVZQ X1BLRVlfUlNBKQotKwkJcmV0dXJuIE5VTEw7Ci0rCXJldHVybiBwa2V5LT5wa2V5LnJzYTsKLSt9 Ci0rCi0rc3RhdGljIGlubGluZSB2b2lkIERIX2dldDBfa2V5KGNvbnN0IERIICpkaCwgY29uc3Qg QklHTlVNICoqcHViX2tleSwKLSsJCQkgICAgICAgY29uc3QgQklHTlVNICoqcHJpdl9rZXkpCi0r ewotKwlpZiAocHViX2tleSAhPSBOVUxMKQotKwkJKnB1Yl9rZXkgPSBkaC0+cHViX2tleTsKLSsJ aWYgKHByaXZfa2V5ICE9IE5VTEwpCi0rCQkqcHJpdl9rZXkgPSBkaC0+cHJpdl9rZXk7Ci0rfQot KwotKwotK3N0YXRpYyBpbmxpbmUgdm9pZCBESF9nZXQwX3BxZyhjb25zdCBESCAqZGgsIGNvbnN0 IEJJR05VTSAqKnAsIGNvbnN0IEJJR05VTSAqKnEsCi0rCQkJICAgICAgIGNvbnN0IEJJR05VTSAq KmcpCi0rewotKwlpZiAocCAhPSBOVUxMKQotKwkJKnAgPSBkaC0+cDsKLSsJaWYgKHEgIT0gTlVM TCkKLSsJCSpxID0gZGgtPnE7Ci0rCWlmIChnICE9IE5VTEwpCi0rCQkqZyA9IGRoLT5nOwotK30K LSsKLStzdGF0aWMgaW5saW5lIERTQSAqRVZQX1BLRVlfZ2V0MF9EU0EoRVZQX1BLRVkgKnBrZXkp Ci0rewotKwlpZiAocGtleS0+dHlwZSAhPSBFVlBfUEtFWV9EU0EpCi0rCQlyZXR1cm4gTlVMTDsK LSsJcmV0dXJuIHBrZXktPnBrZXkuZHNhOwotK30KLSsKLStzdGF0aWMgaW5saW5lIGludCBESF9z ZXQwX3BxZyhESCAqZGgsIEJJR05VTSAqcCwgQklHTlVNICpxLCBCSUdOVU0gKmcpCi0rewotKwkv KiBJZiB0aGUgZmllbGRzIHAgYW5kIGcgaW4gZCBhcmUgTlVMTCwgdGhlIGNvcnJlc3BvbmRpbmcg aW5wdXQKLSsJICogcGFyYW1ldGVycyBNVVNUIGJlIG5vbi1OVUxMLiAgcSBtYXkgcmVtYWluIE5V TEwuCi0rCSAqLwotKwlpZiAoKGRoLT5wID09IE5VTEwgJiYgcCA9PSBOVUxMKQotKwkgICAgfHwg KGRoLT5nID09IE5VTEwgJiYgZyA9PSBOVUxMKSkKLSsJCXJldHVybiAwOwotKwotKwlpZiAocCAh PSBOVUxMKSB7Ci0rCQlCTl9mcmVlKGRoLT5wKTsKLSsJCWRoLT5wID0gcDsKLSsJfQotKwlpZiAo cSAhPSBOVUxMKSB7Ci0rCQlCTl9mcmVlKGRoLT5xKTsKLSsJCWRoLT5xID0gcTsKLSsJfQotKwlp ZiAoZyAhPSBOVUxMKSB7Ci0rCQlCTl9mcmVlKGRoLT5nKTsKLSsJCWRoLT5nID0gZzsKLSsJfQot KwotKwlpZiAocSAhPSBOVUxMKSB7Ci0rCQlkaC0+bGVuZ3RoID0gQk5fbnVtX2JpdHMocSk7Ci0r CX0KLSsKLSsJcmV0dXJuIDE7Ci0rfQotKwotK3N0YXRpYyBpbmxpbmUgaW50IFJTQV9zZXQwX2tl eShSU0EgKnIsIEJJR05VTSAqbiwgQklHTlVNICplLCBCSUdOVU0gKmQpCi0rewotKwkvKiBJZiB0 aGUgZmllbGRzIG4gYW5kIGUgaW4gciBhcmUgTlVMTCwgdGhlIGNvcnJlc3BvbmRpbmcgaW5wdXQK LSsJICogcGFyYW1ldGVycyBNVVNUIGJlIG5vbi1OVUxMIGZvciBuIGFuZCBlLiAgZCBtYXkgYmUK LSsJICogbGVmdCBOVUxMIChpbiBjYXNlIG9ubHkgdGhlIHB1YmxpYyBrZXkgaXMgdXNlZCkuCi0r CSAqLwotKwlpZiAoKHItPm4gPT0gTlVMTCAmJiBuID09IE5VTEwpCi0rCSAgICB8fCAoci0+ZSA9 PSBOVUxMICYmIGUgPT0gTlVMTCkpCi0rCQlyZXR1cm4gMDsKLSsKLSsJaWYgKG4gIT0gTlVMTCkg ewotKwkJQk5fZnJlZShyLT5uKTsKLSsJCXItPm4gPSBuOwotKwl9Ci0rCWlmIChlICE9IE5VTEwp IHsKLSsJCUJOX2ZyZWUoci0+ZSk7Ci0rCQlyLT5lID0gZTsKLSsJfQotKwlpZiAoZCAhPSBOVUxM KSB7Ci0rCQlCTl9mcmVlKHItPmQpOwotKwkJci0+ZCA9IGQ7Ci0rCX0KLSsKLSsJcmV0dXJuIDE7 Ci0rfQotKwotK3N0YXRpYyBpbmxpbmUgdm9pZCBEU0FfZ2V0MF9wcWcoY29uc3QgRFNBICpkLCBj b25zdCBCSUdOVU0gKipwLAotKwkJCQljb25zdCBCSUdOVU0gKipxLCBjb25zdCBCSUdOVU0gKipn KQotK3sKLSsJaWYgKHAgIT0gTlVMTCkKLSsJCSpwID0gZC0+cDsKLSsJaWYgKHEgIT0gTlVMTCkK LSsJCSpxID0gZC0+cTsKLSsJaWYgKGcgIT0gTlVMTCkKLSsJCSpnID0gZC0+ZzsKLSt9Ci0rCi0r c3RhdGljIGlubGluZSB2b2lkIERTQV9nZXQwX2tleShjb25zdCBEU0EgKmQsIGNvbnN0IEJJR05V TSAqKnB1Yl9rZXksCi0rCQkJCWNvbnN0IEJJR05VTSAqKnByaXZfa2V5KQotK3sKLSsJaWYgKHB1 Yl9rZXkgIT0gTlVMTCkKLSsJCSpwdWJfa2V5ID0gZC0+cHViX2tleTsKLSsJaWYgKHByaXZfa2V5 ICE9IE5VTEwpCi0rCQkqcHJpdl9rZXkgPSBkLT5wcml2X2tleTsKLSt9Ci0rCi0rc3RhdGljIGlu bGluZSBjb25zdCBTVEFDS19PRihYNTA5X0VYVEVOU0lPTikgKlg1MDlfZ2V0MF9leHRlbnNpb25z KGNvbnN0IFg1MDkgKngpCi0rewotKwlyZXR1cm4geC0+Y2VydF9pbmZvLT5leHRlbnNpb25zOwot K30KLSsKLStzdGF0aWMgaW5saW5lIGludCBYNTA5X3VwX3JlZihYNTA5ICp4KQotK3sKLSsJcmV0 dXJuIENSWVBUT19hZGQoJngtPnJlZmVyZW5jZXMsIDEsIENSWVBUT19MT0NLX1g1MDkpOwotK30K LSsKLStzdGF0aWMgaW5saW5lIFNUQUNLX09GKFg1MDlfT0JKRUNUKSAqWDUwOV9TVE9SRV9nZXQw X29iamVjdHMoWDUwOV9TVE9SRSAqdikKLSt7Ci0rCXJldHVybiB2LT5vYmpzOwotK30KLSsKLStz dGF0aWMgaW5saW5lIGludCBYNTA5X09CSkVDVF9nZXRfdHlwZShjb25zdCBYNTA5X09CSkVDVCAq YSkKLSt7Ci0rCXJldHVybiBhLT50eXBlOwotK30KLSsKLStzdGF0aWMgaW5saW5lIFg1MDkgKlg1 MDlfT0JKRUNUX2dldDBfWDUwOShjb25zdCBYNTA5X09CSkVDVCAqYSkKLSt7Ci0rCWlmIChhID09 IE5VTEwgfHwgYS0+dHlwZSAhPSBYNTA5X0xVX1g1MDkpCi0rCQlyZXR1cm4gTlVMTDsKLSsJcmV0 dXJuIGEtPmRhdGEueDUwOTsKLSt9Ci0rCi0rI2VuZGlmCi0rCi0gI2VuZGlmCi0gCi0tLS0gYS9s aWJzcmMvV2kveG1sZW5jX2FsZ29zLmMKLSsrKyBiL2xpYnNyYy9XaS94bWxlbmNfYWxnb3MuYwot QEAgLTExNDksNyArMTE0OSw3IEBAIGludAotIGRzaWdfaG1hY19zaGEyNTZfZGlnZXN0IChka19z ZXNzaW9uX3QgKiBzZXNfaW4sIGxvbmcgbGVuLCB4ZW5jX2tleV90ICoga2V5LCBjYWRkcl90ICog c2lnbl9vdXQpCi0gewotICAgdW5zaWduZWQgY2hhciAqIGRhdGE7Ci0tICBITUFDX0NUWCBjdHg7 Ci0rICBITUFDX0NUWCAqY3R4OwotICAgdW5zaWduZWQgY2hhciBrZXlfZGF0YVszMiAqIDhdOwot ICAgdW5zaWduZWQgY2hhciBtZCBbU0hBMjU2X0RJR0VTVF9MRU5HVEggKyAxXTsKLSAgIHVuc2ln bmVkIGNoYXIgbWQ2NCBbU0hBMjU2X0RJR0VTVF9MRU5HVEggKiAyICsgMV07Ci1AQCAtMTE4Miw3 ICsxMTgyLDkgQEAgZHNpZ19obWFjX3NoYTI1Nl9kaWdlc3QgKGRrX3Nlc3Npb25fdCAqCi0gICAg ICAgZGVmYXVsdDoKLSAJICByZXR1cm4gMDsKLSAgICAgfQotLQotKyAgY3R4ID0gSE1BQ19DVFhf bmV3KCk7Ci0rICBpZiAoIWN0eCkKLSsJICByZXR1cm4gMDsKLSAKLSAgIGRhdGEgPSAodW5zaWdu ZWQgY2hhciAqKSBka19hbGxvY19ib3ggKGxlbiwgRFZfQ19TVFJJTkcpOwotICAgQ0FUQ0hfUkVB RF9GQUlMIChzZXNfaW4pCi1AQCAtMTE5MiwxNCArMTE5NCwxNSBAQCBkc2lnX2htYWNfc2hhMjU2 X2RpZ2VzdCAoZGtfc2Vzc2lvbl90ICoKLSAgIEZBSUxFRAotICAgICB7Ci0gICAgICAgZGtfZnJl ZV9ib3ggKChib3hfdCkgZGF0YSk7Ci0rICAgICAgSE1BQ19DVFhfZnJlZShjdHgpOwotICAgICAg IHJldHVybiAwOwotICAgICB9Ci0gICBFTkRfUkVBRF9GQUlMIChzZXNfaW4pOwotIAotLSAgSE1B Q19Jbml0KCZjdHgsICh2b2lkKikga2V5X2RhdGEgLCBrZXlfbGVuLCBFVlBfc2hhMjU2ICgpKTsK LS0gIEhNQUNfVXBkYXRlKCZjdHgsIGRhdGEsIGxlbik7Ci0tICBITUFDX0ZpbmFsKCZjdHgsIG1k LCAmaG1hY19sZW4pOwotLSAgSE1BQ19jbGVhbnVwKCZjdHgpOwotKyAgSE1BQ19Jbml0X2V4KGN0 eCwgKHZvaWQqKSBrZXlfZGF0YSAsIGtleV9sZW4sIEVWUF9zaGEyNTYgKCksIE5VTEwpOwotKyAg SE1BQ19VcGRhdGUoY3R4LCBkYXRhLCBsZW4pOwotKyAgSE1BQ19GaW5hbChjdHgsIG1kLCAmaG1h Y19sZW4pOwotKyAgSE1BQ19DVFhfZnJlZShjdHgpOwotIAotICAgaWYgKGhtYWNfbGVuICE9IFNI QTI1Nl9ESUdFU1RfTEVOR1RIKQotICAgICBHUEZfVDsKLUBAIC0xMjIwLDcgKzEyMjMsNyBAQCBk c2lnX2htYWNfc2hhMjU2X2RpZ2VzdCAoZGtfc2Vzc2lvbl90ICoKLSBpbnQKLSBkc2lnX2htYWNf c2hhMjU2X3ZlcmlmeSAoZGtfc2Vzc2lvbl90ICogc2VzX2luLCBsb25nIGxlbiwgeGVuY19rZXlf dCAqIGtleSwgY2FkZHJfdCBkaWdlc3QpCi0gewotLSAgSE1BQ19DVFggY3R4OwotKyAgSE1BQ19D VFggKmN0eDsKLSAgIHVuc2lnbmVkIGNoYXIgKiBkYXRhOwotICAgdW5zaWduZWQgY2hhciBrZXlf ZGF0YVszICogOF07Ci0gICB1bnNpZ25lZCBjaGFyIG1kIFtTSEEyNTZfRElHRVNUX0xFTkdUSCAr IDFdOwotQEAgLTEyNDksNiArMTI1Miw5IEBAIGRzaWdfaG1hY19zaGEyNTZfdmVyaWZ5IChka19z ZXNzaW9uX3QgKgotIAkgIHJldHVybiAwOwotICAgICB9Ci0gCi0rICBjdHggPSBITUFDX0NUWF9u ZXcoKTsKLSsgIGlmICghY3R4KQotKwkgIHJldHVybiAwOwotIAotICAgZGF0YSA9ICh1bnNpZ25l ZCBjaGFyICopIGRrX2FsbG9jX2JveCAobGVuLCBEVl9DX1NUUklORyk7Ci0gICBDQVRDSF9SRUFE X0ZBSUwgKHNlc19pbikKLUBAIC0xMjU4LDE0ICsxMjY0LDE1IEBAIGRzaWdfaG1hY19zaGEyNTZf dmVyaWZ5IChka19zZXNzaW9uX3QgKgotICAgRkFJTEVECi0gICAgIHsKLSAgICAgICBka19mcmVl X2JveCAoKGJveF90KSBkYXRhKTsKLSsgICAgICBITUFDX0NUWF9mcmVlKGN0eCk7Ci0gICAgICAg cmV0dXJuIDA7Ci0gICAgIH0KLSAgIEVORF9SRUFEX0ZBSUwgKHNlc19pbik7Ci0gCi0tICBITUFD X0luaXQoJmN0eCwgKHZvaWQqKSBrZXlfZGF0YSAsIGtleV9sZW4sIEVWUF9zaGEyNTYgKCkpOwot LSAgSE1BQ19VcGRhdGUoJmN0eCwgZGF0YSwgbGVuKTsKLS0gIEhNQUNfRmluYWwoJmN0eCwgbWQs ICZobWFjX2xlbik7Ci0tICBITUFDX2NsZWFudXAoJmN0eCk7Ci0rICBITUFDX0luaXRfZXgoY3R4 LCAodm9pZCopIGtleV9kYXRhICwga2V5X2xlbiwgRVZQX3NoYTI1NiAoKSwgTlVMTCk7Ci0rICBI TUFDX1VwZGF0ZShjdHgsIGRhdGEsIGxlbik7Ci0rICBITUFDX0ZpbmFsKGN0eCwgbWQsICZobWFj X2xlbik7Ci0rICBITUFDX0NUWF9mcmVlKGN0eCk7Ci0gICBka19mcmVlX2JveCAoKGJveF90KSBk YXRhKTsKLSAKLSAgIGxlbjEgPSB4ZW5jX2VuY29kZV9iYXNlNjQgKChjaGFyICopbWQsIG1kNjQs IGhtYWNfbGVuKTsKLUBAIC0xNTg2LDcgKzE1OTMsNyBAQCBpbnQKLSBkc2lnX2htYWNfc2hhMV9k aWdlc3QgKGRrX3Nlc3Npb25fdCAqIHNlc19pbiwgbG9uZyBsZW4sIHhlbmNfa2V5X3QgKiBrZXks IGNhZGRyX3QgKiBzaWduX291dCkKLSB7Ci0gICB1bnNpZ25lZCBjaGFyICogZGF0YTsKLS0gIEhN QUNfQ1RYIGN0eDsKLSsgIEhNQUNfQ1RYICpjdHg7Ci0gICB1bnNpZ25lZCBjaGFyIGtleV9kYXRh WzMyICogOF07Ci0gICB1bnNpZ25lZCBjaGFyIG1kIFtTSEFfRElHRVNUX0xFTkdUSCArIDFdOwot ICAgdW5zaWduZWQgY2hhciBtZDY0IFtTSEFfRElHRVNUX0xFTkdUSCAqIDIgKyAxXTsKLUBAIC0x NjIwLDYgKzE2MjcsOSBAQCBkc2lnX2htYWNfc2hhMV9kaWdlc3QgKGRrX3Nlc3Npb25fdCAqIHNl Ci0gCSAgcmV0dXJuIDA7Ci0gICAgIH0KLSAKLSsgIGN0eCA9IEhNQUNfQ1RYX25ldygpOwotKyAg aWYgKCFjdHgpCi0rCSAgcmV0dXJuIDA7Ci0gCi0gICBkYXRhID0gKHVuc2lnbmVkIGNoYXIgKikg ZGtfYWxsb2NfYm94IChsZW4sIERWX0NfU1RSSU5HKTsKLSAgIENBVENIX1JFQURfRkFJTCAoc2Vz X2luKQotQEAgLTE2MjksMTQgKzE2MzksMTUgQEAgZHNpZ19obWFjX3NoYTFfZGlnZXN0IChka19z ZXNzaW9uX3QgKiBzZQotICAgRkFJTEVECi0gICAgIHsKLSAgICAgICBka19mcmVlX2JveCAoKGJv eF90KSBkYXRhKTsKLSsgICAgICBITUFDX0NUWF9mcmVlKGN0eCk7Ci0gICAgICAgcmV0dXJuIDA7 Ci0gICAgIH0KLSAgIEVORF9SRUFEX0ZBSUwgKHNlc19pbik7Ci0gCi0tICBITUFDX0luaXQoJmN0 eCwgKHZvaWQqKSBrZXlfZGF0YSAsIGtleV9sZW4sIEVWUF9zaGExICgpKTsKLS0gIEhNQUNfVXBk YXRlKCZjdHgsIGRhdGEsIGxlbik7Ci0tICBITUFDX0ZpbmFsKCZjdHgsIG1kLCAmaG1hY19sZW4p OwotLSAgSE1BQ19jbGVhbnVwKCZjdHgpOwotKyAgSE1BQ19Jbml0X2V4KGN0eCwgKHZvaWQqKSBr ZXlfZGF0YSAsIGtleV9sZW4sIEVWUF9zaGExICgpLCBOVUxMKTsKLSsgIEhNQUNfVXBkYXRlKGN0 eCwgZGF0YSwgbGVuKTsKLSsgIEhNQUNfRmluYWwoY3R4LCBtZCwgJmhtYWNfbGVuKTsKLSsgIEhN QUNfQ1RYX2ZyZWUoY3R4KTsKLSAKLSAgIGlmIChobWFjX2xlbiAhPSBTSEFfRElHRVNUX0xFTkdU SCkKLSAgICAgR1BGX1Q7Ci1AQCAtMTY1Nyw3ICsxNjY4LDcgQEAgZHNpZ19obWFjX3NoYTFfZGln ZXN0IChka19zZXNzaW9uX3QgKiBzZQotIGludAotIGRzaWdfaG1hY19zaGExX3ZlcmlmeSAoZGtf c2Vzc2lvbl90ICogc2VzX2luLCBsb25nIGxlbiwgeGVuY19rZXlfdCAqIGtleSwgY2FkZHJfdCBk aWdlc3QpCi0gewotLSAgSE1BQ19DVFggY3R4OwotKyAgSE1BQ19DVFggKmN0eDsKLSAgIHVuc2ln bmVkIGNoYXIgKiBkYXRhOwotICAgdW5zaWduZWQgY2hhciBrZXlfZGF0YVszICogOF07Ci0gICB1 bnNpZ25lZCBjaGFyIG1kIFtTSEFfRElHRVNUX0xFTkdUSCArIDFdOwotQEAgLTE2ODYsNiArMTY5 Nyw5IEBAIGRzaWdfaG1hY19zaGExX3ZlcmlmeSAoZGtfc2Vzc2lvbl90ICogc2UKLSAJICByZXR1 cm4gMDsKLSAgICAgfQotIAotKyAgY3R4ID0gSE1BQ19DVFhfbmV3KCk7Ci0rICBpZiAoIWN0eCkK LSsJICByZXR1cm4gMDsKLSAKLSAgIGRhdGEgPSAodW5zaWduZWQgY2hhciAqKSBka19hbGxvY19i b3ggKGxlbiwgRFZfQ19TVFJJTkcpOwotICAgQ0FUQ0hfUkVBRF9GQUlMIChzZXNfaW4pCi1AQCAt MTY5NSwxNCArMTcwOSwxNSBAQCBkc2lnX2htYWNfc2hhMV92ZXJpZnkgKGRrX3Nlc3Npb25fdCAq IHNlCi0gICBGQUlMRUQKLSAgICAgewotICAgICAgIGRrX2ZyZWVfYm94ICgoYm94X3QpIGRhdGEp OwotKyAgICAgIEhNQUNfQ1RYX2ZyZWUoY3R4KTsKLSAgICAgICByZXR1cm4gMDsKLSAgICAgfQot ICAgRU5EX1JFQURfRkFJTCAoc2VzX2luKTsKLSAKLS0gIEhNQUNfSW5pdCgmY3R4LCAodm9pZCop IGtleV9kYXRhICwga2V5X2xlbiwgRVZQX3NoYTEgKCkpOwotLSAgSE1BQ19VcGRhdGUoJmN0eCwg ZGF0YSwgbGVuKTsKLS0gIEhNQUNfRmluYWwoJmN0eCwgbWQsICZobWFjX2xlbik7Ci0tICBITUFD X2NsZWFudXAoJmN0eCk7Ci0rICBITUFDX0luaXRfZXgoY3R4LCAodm9pZCopIGtleV9kYXRhICwg a2V5X2xlbiwgRVZQX3NoYTEgKCksIE5VTEwpOwotKyAgSE1BQ19VcGRhdGUoY3R4LCBkYXRhLCBs ZW4pOwotKyAgSE1BQ19GaW5hbChjdHgsIG1kLCAmaG1hY19sZW4pOwotKyAgSE1BQ19DVFhfZnJl ZShjdHgpOwotICAgZGtfZnJlZV9ib3ggKChib3hfdCkgZGF0YSk7Ci0gCi0gICBsZW4xID0geGVu Y19lbmNvZGVfYmFzZTY0ICgoY2hhciAqKW1kLCBtZDY0LCBobWFjX2xlbik7Ci1AQCAtMTc2Myw3 ICsxNzc4LDcgQEAgaW50IHhlbmNfYWVzX2VuY3J5cHRvciAoZGtfc2Vzc2lvbl90ICogcwotICAg Y2FkZHJfdCBvdXRidWZfYmVnOwotICAgaW50IGxlbjsKLSAgIGNhZGRyX3QgZW5jb2RlZF9vdXQ7 Ci0tICBFVlBfQ0lQSEVSX0NUWCBjdHg7Ci0rICBFVlBfQ0lQSEVSX0NUWCAqY3R4OwotICAgdW5z aWduZWQgY2hhciAqIGl2ZWMgPSAma2V5LT5raS5hZXMuaXZbMF07Ci0gCi0gICBDQVRDSF9SRUFE X0ZBSUwgKHNlc19pbikKLUBAIC0xNzc4LDcgKzE3OTMsNyBAQCBpbnQgeGVuY19hZXNfZW5jcnlw dG9yIChka19zZXNzaW9uX3QgKiBzCi0gICBFTkRfUkVBRF9GQUlMIChzZXNfaW4pOwotIAotICNp ZiAxCi0tICBFVlBfQ0lQSEVSX0NUWF9pbml0KCZjdHgpOwotKyAgY3R4ID0gRVZQX0NJUEhFUl9D VFhfbmV3KCk7Ci0gICBvdXRidWZfYmVnID0gZGtfYWxsb2NfYm94IChib3hfbGVuZ3RoICh0ZXh0 KSArIDE2LCBEVl9CSU4pOwotICAgbWVtY3B5IChvdXRidWZfYmVnLCBpdmVjLCAxNik7Ci0gICBv dXRidWYgPSBvdXRidWZfYmVnICsgMTY7Ci1AQCAtMTc4NiwyMCArMTgwMSwxOSBAQCBpbnQgeGVu Y19hZXNfZW5jcnlwdG9yIChka19zZXNzaW9uX3QgKiBzCi0gICBzd2l0Y2ggKGtleS0+a2kuYWVz LmJpdHMpCi0gICAgIHsKLSAgICAgY2FzZSAxMjg6Ci0tICAgICAgRVZQX0VuY3J5cHRJbml0X2V4 KCZjdHgsIEVWUF9hZXNfMTI4X2NiYygpLCBOVUxMLCBrZXktPmtpLmFlcy5rLCBpdmVjKTsKLSsg ICAgICBFVlBfRW5jcnlwdEluaXRfZXgoY3R4LCBFVlBfYWVzXzEyOF9jYmMoKSwgTlVMTCwga2V5 LT5raS5hZXMuaywgaXZlYyk7Ci0gICAgICAgYnJlYWs7Ci0gICAgIGNhc2UgMTkyOgotLSAgICAg IEVWUF9FbmNyeXB0SW5pdF9leCgmY3R4LCBFVlBfYWVzXzE5Ml9jYmMoKSwgTlVMTCwga2V5LT5r aS5hZXMuaywgaXZlYyk7Ci0rICAgICAgRVZQX0VuY3J5cHRJbml0X2V4KGN0eCwgRVZQX2Flc18x OTJfY2JjKCksIE5VTEwsIGtleS0+a2kuYWVzLmssIGl2ZWMpOwotICAgICAgIGJyZWFrOwotICAg ICBjYXNlIDI1NjoKLS0gICAgICBFVlBfRW5jcnlwdEluaXRfZXgoJmN0eCwgRVZQX2Flc18yNTZf Y2JjKCksIE5VTEwsIGtleS0+a2kuYWVzLmssIGl2ZWMpOwotKyAgICAgIEVWUF9FbmNyeXB0SW5p dF9leChjdHgsIEVWUF9hZXNfMjU2X2NiYygpLCBOVUxMLCBrZXktPmtpLmFlcy5rLCBpdmVjKTsK LSAgICAgICBicmVhazsKLSAgICAgZGVmYXVsdDoKLSAgICAgICBHUEZfVDEgKCJVbnN1cHBvcnRl ZCBrZXkgc2l6ZSIpOwotICAgICB9Ci0tICBpZighRVZQX0VuY3J5cHRVcGRhdGUoJmN0eCwgKHVu c2lnbmVkIGNoYXIgKilvdXRidWYsICZvdXRsZW4sICh1bnNpZ25lZCBjaGFyICopdGV4dCwgYm94 X2xlbmd0aCAodGV4dCkpKQotKyAgaWYoIUVWUF9FbmNyeXB0VXBkYXRlKGN0eCwgKHVuc2lnbmVk IGNoYXIgKilvdXRidWYsICZvdXRsZW4sICh1bnNpZ25lZCBjaGFyICopdGV4dCwgYm94X2xlbmd0 aCAodGV4dCkpKQotICAgICB7Ci0tICAgICAgRVZQX0NJUEhFUl9DVFhfY2xlYW51cCgmY3R4KTsK LSAgICAgICBka19mcmVlX2JveCAodGV4dCk7Ci0gICAgICAgZGtfZnJlZV9ib3ggKG91dGJ1Zl9i ZWcpOwotICAgICAgIHhlbmNfcmVwb3J0X2Vycm9yICh0LCA1MDAsIFhFTkNfRU5DX0VSUiwgIkFF UyBlbmNyeXB0aW9uIGludGVybmFsIGVycm9yICMyIik7Ci1AQCAtMTgxMiw3ICsxODI2LDcgQEAg aW50IHhlbmNfYWVzX2VuY3J5cHRvciAoZGtfc2Vzc2lvbl90ICogcwotICAgICAgIHhlbmNfcmVw b3J0X2Vycm9yICh0LCA1MDAsIFhFTkNfRU5DX0VSUiwgIkFFUyBlbmNyeXB0aW9uIGludGVybmFs IGVycm9yICMzIik7Ci0gICAgICAgfSAqLwotICAgLyogb3V0bGVuICs9IHRtcGxlbjsgKi8KLS0g IEVWUF9DSVBIRVJfQ1RYX2NsZWFudXAoJmN0eCk7Ci0rICBFVlBfQ0lQSEVSX0NUWF9mcmVlKGN0 eCk7Ci0gCi0gI2Vsc2UKLSAgIG91dGJ1Zl9iZWcgPSBka19hbGxvY19ib3ggKGJveF9sZW5ndGgg KHRleHQpICsgMTYgLyogaXYgKi8sIERWX0JJTik7Ci1AQCAtMjA1MCw2ICsyMDY0LDcgQEAgeGVu Y19yc2FfZGVjcnlwdG9yIChka19zZXNzaW9uX3QgKiBzZXNfaQotICAgaW50IGxlbiA9IDA7Ci0g ICBpbnQga2V5c2l6ZTsKLSAgIFJTQSAqIHJzYSA9IGtleS0+eGVrX3ByaXZhdGVfcnNhOwotKyAg Y29uc3QgQklHTlVNICpwLCAqcTsKLSAKLSAgIGlmICghc2VzbGVuKQotICAgICB7Ci1AQCAtMjA2 Miw5ICsyMDc3LDkgQEAgeGVuY19yc2FfZGVjcnlwdG9yIChka19zZXNzaW9uX3QgKiBzZXNfaQot ICAgICAgIHhlbmNfcmVwb3J0X2Vycm9yICh0LCA1MDAgKyBzdHJsZW4gKGtleS0+eGVrX25hbWUp LCBYRU5DX0VOQ19FUlIsICJjb3VsZCBub3QgbWFrZSBSU0EgZGVjcnlwdGlvbiBba2V5ICVzIGlz IG5vdCBSU0FdIiwga2V5LT54ZWtfbmFtZSk7Ci0gICAgICAgcmV0dXJuIDA7Ci0gICAgIH0KLSsg IFJTQV9nZXQwX2ZhY3RvcnMocnNhLCAmcCwgJnEpOwotICAgaWYgKCFyc2EgfHwKLS0gICAgICAh cnNhLT5wIHx8Ci0tICAgICAgIXJzYS0+cSkKLSsgICAgICAhcCB8fCAhcSkKLSAgICAgewotICAg ICAgIGlmIChrZXktPnhla194NTA5X0tJKQotIAlrZXkgPSB4ZW5jX2dldF9rZXlfYnlfa2V5aWRl bnRpZmllciAoa2V5LT54ZWtfeDUwOV9LSSwgMSk7Ci0tLS0gYS9saWJzcmMvdXRpbC9zc2xlbmdp bmUuYwotKysrIGIvbGlic3JjL3V0aWwvc3NsZW5naW5lLmMKLUBAIC0yOSw3ICsyOSwxMSBAQAot IGludAotIHNzbF9lbmdpbmVfc3RhcnR1cCAodm9pZCkKLSB7Ci0tICBDUllQVE9fbWFsbG9jX2lu aXQgKCk7Ci0rI2lmIE9QRU5TU0xfVkVSU0lPTl9OVU1CRVIgPCAweDEwMTAwMDAwIHx8IGRlZmlu ZWQgTElCUkVTU0xfVkVSU0lPTl9OVU1CRVIKLSsJQ1JZUFRPX21hbGxvY19pbml0ICgpOwotKyNl bHNlCi0rCU9QRU5TU0xfbWFsbG9jX2luaXQoKTsKLSsjZW5kaWYKLSAgIEVSUl9sb2FkX2NyeXB0 b19zdHJpbmdzKCk7Ci0gICBPcGVuU1NMX2FkZF9hbGxfYWxnb3JpdGhtcygpOwotIAotLS0tIGEv bGlic3JjL1dpL2h0dHAuYwotKysrIGIvbGlic3JjL1dpL2h0dHAuYwotQEAgLTg4ODYsNyArODg4 Niw3IEBAIHNzbF9zZXJ2ZXJfc2V0X2NlcnRpZmljYXRlIChTU0xfQ1RYKiBzc2wKLSAJCSAgbG9n X2Vycm9yICgiU1NMOiBUaGUgc3RvcmVkIGNlcnRpZmljYXRlICclcycgY2FuIG5vdCBiZSB1c2Vk IGFzIGV4dHJhIGNoYWluIGNlcnRpZmljYXRlIiwgdG9rKTsKLSAJCSAgYnJlYWs7Ci0gCQl9Ci0t CSAgICAgIENSWVBUT19hZGQoJmstPnhla194NTA5LT5yZWZlcmVuY2VzLCAxLCBDUllQVE9fTE9D S19YNTA5KTsKLSsJICAgICAgWDUwOV91cF9yZWYoay0+eGVrX3g1MDkpOwotICAgICAgICAgICAg ICAgdG9rID0gc3RydG9rX3IgKE5VTEwsICIsIiwgJnRva19zKTsKLSAJICAgIH0KLSAJICBka19m cmVlX2JveCAoc3RyKTsKLS0tLSBhL2xpYnNyYy9Eay9Ea2VybmVsLmMKLSsrKyBiL2xpYnNyYy9E ay9Ea2VybmVsLmMKLUBAIC01MjgwLDcgKzUyODAsMTEgQEAgc3NsX3NlcnZlcl9pbml0ICgpCi0g ICB9Ci0gI2VuZGlmCi0gCi0tICBTU0xlYXlfYWRkX2FsbF9hbGdvcml0aG1zICgpOwotKyNpZiBP UEVOU1NMX1ZFUlNJT05fTlVNQkVSIDwgMHgxMDEwMDAwMAotKyAgU1NMZWF5X2FkZF9hbGxfYWxn b3JpdGhtcygpOwotKyNlbHNlCi0rICBPcGVuU1NMX2FkZF9hbGxfYWxnb3JpdGhtcygpOwotKyNl bmRpZgotICAgUEtDUzEyX1BCRV9hZGQgKCk7CQkvKiBzdHViICovCi0gCi0gI2lmZGVmIE5PX1RI UkVBRApkaWZmIC0tZ2l0IGEvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL3NzbDEuMV9tb3JlLnBh dGNoIGIvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL3NzbDEuMV9tb3JlLnBhdGNoCmRlbGV0ZWQg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2NmU1MGVjMTI3YmEuLjAwMDAwMDAwMDAwMAotLS0gYS9z cmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvc3NsMS4xX21vcmUucGF0Y2gKKysrIC9kZXYvbnVsbApA QCAtMSwyMCArMCwwIEBACi1EZXNjcmlwdGlvbjogQ29tbWVudCB1bmtub3duIGRlZmluaXRpb24g aW4gc3NsMS4xIC0gcGxlYXNlIHJldmlldyEKLUF1dGhvcjogQW5kcmVhcyBUaWxsZSA8dGlsbGVA ZGViaWFuLm9yZz4KLUJ1Zy1EZWJpYW46IGh0dHBzOi8vYnVncy5kZWJpYW4ub3JnLzgyODU5NAot TGFzdC1VcGRhdGU6IE1vIDExLiBGZWIgMTM6NTA6MTcgQ0VUIDIwMTkKLQotLS0tIGEvbGlic3Jj L0RrL0RrZXJuZWwuYwotKysrIGIvbGlic3JjL0RrL0RrZXJuZWwuYwotQEAgLTUxNjEsMTAgKzUx NjEsMTIgQEAgc3NsX2N0eF9zZXRfcHJvdG9jb2xfb3B0aW9ucyhTU0xfQ1RYICpjdAotICAgICAg IGVsc2UgaWYgKCFzdHJjYXNlY21wIChuYW1lLCAiVExTdjFfMiIpIHx8ICFzdHJjYXNlY21wIChu YW1lLCAiVExTdjEuMiIpKQotIAlvcHQgPSBTU0xfUFJPVE9DT0xfVExTVjFfMjsKLSAjZW5kaWYK LSsvKgotICNpZiBkZWZpbmVkIChTU0xfT1BfTk9fVExTdjFfMykKLSAgICAgICBlbHNlIGlmICgh c3RyY2FzZWNtcCAobmFtZSwgIlRMU3YxXzMiKSB8fCAhc3RyY2FzZWNtcCAobmFtZSwgIlRMU3Yx LjMiKSkKLSAJb3B0ID0gU1NMX1BST1RPQ09MX1RMU1YxXzM7Ci0gI2VuZGlmCi0rKi8KLSAgICAg ICBlbHNlIGlmICghc3RyY2FzZWNtcCAobmFtZSwgIkFMTCIpKQotIAlvcHQgPSBTU0xfUFJPVE9D T0xfQUxMOwotICAgICAgIGVsc2UKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hl cy91c2UtbWtzdGVtcC5wYXRjaCBiL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy91c2UtbWtzdGVt cC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDcxYjdlNDE3YmQ5Li4wMDAw MDAwMDAwMDAKLS0tIGEvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL3VzZS1ta3N0ZW1wLnBhdGNo CisrKyAvZGV2L251bGwKQEAgLTEsMTggKzAsMCBAQAotU291cmNlOiBAcHVsbG1vbGwKLVVwc3Ry ZWFtOiBubwotUmVhc29uOiBBdm9pZCBta3RlbXAoMykgYmVjYXVzZSAiTmV2ZXIgdXNlIHRoaXMg ZnVuY3Rpb247IHNlZSBCVUdTLiIKLQotLS0tIGEvbGlic3JjL0RrL0Rrc2Vzc3RyLmMJMjAxOC0w OC0xNiAwMTowNjoyMS4wMDAwMDAwMDAgKzAyMDAKLSsrKyBiL2xpYnNyYy9Eay9Ea3Nlc3N0ci5j CTIwMjAtMDEtMjcgMTU6MjI6MDAuOTUzODc2MjUxICswMTAwCi1AQCAtMjk4LDggKzI5OCwxMCBA QAotICAgICAgIGlmICghc2VzMi0+c2VzX2ZpbGUtPnNlc19tYXhfYmxvY2tzX2luX21lbSkKLSAJ ewotIAkgIGNoYXIgZm5hbWVbUEFUSF9NQVggKyAxXTsKLSsgICAgICAgICAgaW50IGZkOwotIAkg IHNucHJpbnRmIChmbmFtZSwgc2l6ZW9mIChmbmFtZSksICIlcy9zZXNYWFhYWFgiLCBzZXNfdG1w X2Rpcik7Ci0tCSAgbWt0ZW1wIChmbmFtZSk7Ci0rCSAgZmQgPSBta3N0ZW1wIChmbmFtZSk7Ci0r ICAgICAgICAgIGNsb3NlIChmZCk7Ci0gCi0gI2lmIGRlZmluZWQgKFdJTjMyKQotICMgZGVmaW5l IE9QRU5fRkxBR1MgIAkgIE9fQ1JFQVQgfCBPX1JEV1IgfCBPX0JJTkFSWSB8IE9fRVhDTCB8IE9f VEVNUE9SQVJZCmRpZmYgLS1naXQgYS9zcmNwa2dzL3ZpcnR1b3NvL3RlbXBsYXRlIGIvc3JjcGtn cy92aXJ0dW9zby90ZW1wbGF0ZQppbmRleCA3M2U1OTAyM2QzNWUuLjc4MzkwOWYwZGUxNCAxMDA2 NDQKLS0tIGEvc3JjcGtncy92aXJ0dW9zby90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3ZpcnR1b3Nv L3RlbXBsYXRlCkBAIC0xLDE4ICsxLDE4IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd2aXJ0dW9z bycKIHBrZ25hbWU9dmlydHVvc28KLXZlcnNpb249Ny4yLjUuMQotcmV2aXNpb249MwordmVyc2lv bj03LjIuOAorcmV2aXNpb249MQogYXJjaHM9Ing4Nl82NCogYWFyY2g2NCogcHBjNjRsZSoiCiBi dWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCi1jb25maWd1cmVfYXJncz0iLS1lbmFibGUtc3RhdGlj IgotaG9zdG1ha2VkZXBlbmRzPSJhdXRvbWFrZSBsaWJ0b29sIGZsZXggZ3BlcmYgbmV0LXRvb2xz IgoraG9zdG1ha2VkZXBlbmRzPSJhdXRvbWFrZSBsaWJ0b29sIGZsZXggZ3BlcmYgbmV0LXRvb2xz IHdoaWNoIgogbWFrZWRlcGVuZHM9Im9wZW5zc2wtZGV2ZWwgbGlibGRhcC1kZXZlbCByZWFkbGlu ZS1kZXZlbCBsaWJ4bWwyLWRldmVsIG1pdC1rcmI1LWRldmVsIgorY2hlY2tkZXBlbmRzPSJwcm9j cHMtbmcgdW56aXAgY3VybCIKIHNob3J0X2Rlc2M9IlNjYWxhYmxlIGNyb3NzLXBsYXRmb3JtIHNl cnZlciBvZiB2aXJ0dW9zbyIKIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9pZGxpbnV4 Lm9yZz4iCi1saWNlbnNlPSJHUEwtMiIKK2xpY2Vuc2U9IkdQTC0yLjAtb25seSIKIGhvbWVwYWdl PSJodHRwOi8vdmlydHVvc28ub3Blbmxpbmtzdy5jb20vd2lraS9tYWluL01haW4vIgogZGlzdGZp bGVzPSJodHRwczovL2dpdGh1Yi5jb20vb3BlbmxpbmsvdmlydHVvc28tb3BlbnNvdXJjZS9hcmNo aXZlL3Yke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPTNlNDgwN2U5NDA5OGI4MjY1ZjhjZjAw ODY3ZDEyMTViYjFlOWQwZDI3NDg3OGU1OWE0MjA3NDJkMmRlNDcxYzIKK2NoZWNrc3VtPWI3YThi Nzk5NDNhZWY3ZGUxZDdmN2E5ODQwMjc3NDc3NzZhYjBiNDRjZjZlMTYwY2JkNjYwODVlNWJkOTFl ZDUKICMgY2Fubm90IGV4ZWN1dGUgYmluYXJ5IGZpbGU6IEV4ZWMgZm9ybWF0IGVycm9yCiBub2Ny b3NzPSJodHRwczovL2J1aWxkLnZvaWRsaW51eC5vcmcvYnVpbGRlcnMvYXJtdjZsX2J1aWxkZXIv YnVpbGRzLzI5MTg3L3N0ZXBzL3NoZWxsXzMvbG9ncy9zdGRpbyIKIApAQCAtNDUsOCArNDUsNiBA QCBwb3N0X2luc3RhbGwoKSB7CiAJcm0gJHtERVNURElSfS91c3IvbGliL3ZpcnRvZGJjX3Iue2Es c299CiAJcm0gJHtERVNURElSfS91c3IvbGliL3ZpcnRvZGJjdS57YSxzb30KIAlybSAke0RFU1RE SVJ9L3Vzci9saWIvdmlydG9kYmN1X3Iue2Esc299Ci0JIyByZW1vdmUgc3RhdGljIGxpYnMuCi0J cm0gJHtERVNURElSfS91c3IvbGliL3ZpcnR1b3NvLW9wZW5zb3VyY2UtJHt2ZXJzaW9uJSUuKn0v aG9zdGluZy8qLmEKIH0KIAogdmlydHVvc28tYmFzZV9wYWNrYWdlKCkgewpAQCAtNjIsNiArNjAs NiBAQCB2aXJ0dW9zby1iYXNlX3BhY2thZ2UoKSB7CiAJCQkJJHtQS0dERVNURElSfS91c3IvYmlu LyR7YmlufS12dAogCQlkb25lCiAJCSMgUmVtb3ZlIHN0YXRpYyBsaWJzIGFuZCBsaWJ0b29sIGFy Y2hpdmVzLgotCQlybSAtZiAke1BLR0RFU1RESVJ9L3Vzci9saWIvKi57YSxsYX0KKwkJcm0gLWYg JHtQS0dERVNURElSfS91c3IvbGliLyoubGEKIAl9CiB9CgpGcm9tIDlmNTkzODM1NzMyZWViMzA0 ZGU4NDA4N2Q2NzIxZWNjMWFmMjljYTggTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEts YXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAx Njo0Mzo1OCArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMzkvMzldIHgyZ29jbGllbnQ6IHJldmJ1bXAg ZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dzL3gyZ29jbGllbnQvdGVtcGxhdGUg fCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL3gyZ29jbGllbnQvdGVtcGxhdGUgYi9zcmNwa2dzL3gyZ29jbGll bnQvdGVtcGxhdGUKaW5kZXggYmEyZDU3NzgxYzRkLi43MGM5ZmFlYzRkNGUgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MveDJnb2NsaWVudC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3gyZ29jbGllbnQvdGVt cGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd4MmdvY2xpZW50Jwog cGtnbmFtZT14MmdvY2xpZW50CiB2ZXJzaW9uPTQuMS4yLjIKLXJldmlzaW9uPTIKK3JldmlzaW9u PTMKIGJ1aWxkX3N0eWxlPWdudS1tYWtlZmlsZQogYnVpbGRfaGVscGVyPXFtYWtlCiBtYWtlX2J1 aWxkX2FyZ3M9IlFNQUtFX0JJTkFSWT1xbWFrZS1xdDUgTFJFTEVBU0VfQklOQVJZPWxyZWxlYXNl LXF0NSIK --===============5116714044980002914==--