From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 15502 invoked from network); 6 Feb 2023 17:32:18 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 6 Feb 2023 17:32:18 -0000 Content-Type: multipart/mixed; boundary="===============7672413362334691531==" 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: Mon, 06 Feb 2023 18:32:18 +0100 List-Id: Message-ID: <20230206173218.a_Km6hWZE9RONfoMbxP6QdrH0c-A8gF_WvGQHCfgZRE@z> GitHub notification mails are now in MIME to allow UTF8. --===============7672413362334691531== 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= --===============7672413362334691531== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-openldap-2.6-41948.patch" RnJvbSBkYWQzNWMyMDdmMjQ4NzRhMGYwNTU5MTI4OGQwZWE4MWE2NTU0MGZmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpE YXRlOiBXZWQsIDIgTm92IDIwMjIgMjE6MDQ6NDYgKzAxMDAKU3ViamVjdDogW1BBVENIIDAxLzM5 XSBvcGVubGRhcDogdXBkYXRlIHRvIDIuNi4zCgotIHVwZGF0ZSBjb21tb24vc2hsaWJzCi0gYWRk IHNsYXBkLmxkaWYgdG8gY29uZl9maWxlcwotIGFkZCBtb3JlIG9wdGlvbnMgdG8gcnVuaXQgc2Vy dmljZQotIGFkZCBwYXRjaCBmaXhpbmcgdGVzdDA3OSBvbiBtdXNsIChmb3Igc29tZSByZWFzb24g YXJndW1lbnRzIGFyZQogIGlnbm9yZWQgaWYgcGxhY2VkIGFmdGVyIHRoZSBmaWx0ZXIpCi0tLQog Y29tbW9uL3NobGlicyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA1ICstCiBz cmNwa2dzL29wZW5sZGFwL2ZpbGVzL3NsYXBkL3J1biAgICAgICAgICAgICAgfCAgIDIgKy0KIC4u Li9maXgtdGVzdDA3OS1tdXNsLWlnbm9yZWQtcGFyYW1zLnBhdGNoICAgICB8IDEwNiArKysrKysr KysrKysrKysrKysKIHNyY3BrZ3Mvb3BlbmxkYXAvdGVtcGxhdGUgICAgICAgICAgICAgICAgICAg ICB8ICAgOCArLQogNCBmaWxlcyBjaGFuZ2VkLCAxMTMgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlv bnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL29wZW5sZGFwL3BhdGNoZXMvZml4LXRl c3QwNzktbXVzbC1pZ25vcmVkLXBhcmFtcy5wYXRjaAoKZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxp YnMgYi9jb21tb24vc2hsaWJzCmluZGV4IDMwNDJjZWQxMWQ0Yi4uODI5MDcxMzNkNDY2IDEwMDY0 NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9zaGxpYnMKQEAgLTcwMCw5ICs3MDAs OCBAQCBsaWJnbm9tZS1ibHVldG9vdGguc28uMTMgZ25vbWUtYmx1ZXRvb3RoMS0zLjEyLjBfMQog bGliZ25vbWUtYmx1ZXRvb3RoLTMuMC5zby4xMyBnbm9tZS1ibHVldG9vdGgtNDIuMV8xCiBsaWJn bm9tZS1ibHVldG9vdGgtdWktMy4wLnNvLjEzIGdub21lLWJsdWV0b290aC00Mi4xXzEKIGxpYnNh c2wyLnNvLjMgbGlic2FzbC0yLjEuMjZfMQotbGlibGJlci0yLjQuc28uMiBsaWJsZGFwLTIuNC4y MV8xCi1saWJsZGFwLTIuNC5zby4yIGxpYmxkYXAtMi40LjIxXzEKLWxpYmxkYXBfci0yLjQuc28u MiBsaWJsZGFwLTIuNC4yMV8xCitsaWJsYmVyLnNvLjIgbGlibGRhcC0yLjYuM18xCitsaWJsZGFw LnNvLjIgbGlibGRhcC0yLjYuM18xCiBsaWJldmVudC0yLjEuc28uNyBsaWJldmVudC0yLjEuMTFf MQogbGliZXZlbnRfY29yZS0yLjEuc28uNyBsaWJldmVudC0yLjEuMTFfMQogbGliZXZlbnRfZXh0 cmEtMi4xLnNvLjcgbGliZXZlbnQtMi4xLjExXzEKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvb3Blbmxk YXAvZmlsZXMvc2xhcGQvcnVuIGIvc3JjcGtncy9vcGVubGRhcC9maWxlcy9zbGFwZC9ydW4KaW5k ZXggZjdhZGRmY2JlZWEzLi40ZmEyMjUzYjE4MjUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvb3Blbmxk YXAvZmlsZXMvc2xhcGQvcnVuCisrKyBiL3NyY3BrZ3Mvb3BlbmxkYXAvZmlsZXMvc2xhcGQvcnVu CkBAIC03LDQgKzcsNCBAQCBpZiBbICEgLWQgL3J1bi9vcGVubGRhcCBdOyB0aGVuCiAJY2hvd24g JExEQVBVU0VSOiRMREFQR1JPVVAgL3J1bi9vcGVubGRhcAogZmkKIGV4ZWMgMj4mMQotZXhlYyBz bGFwZCAtdSAkTERBUFVTRVIgLWcgJExEQVBHUk9VUCAtZCAwCitleGVjIHNsYXBkIC11ICRMREFQ VVNFUiAtZyAkTERBUEdST1VQIC1kIDAgJHtMREFQVVJMUzorLWggIiRMREFQVVJMUyJ9ICRMREFQ T1BUUwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9vcGVubGRhcC9wYXRjaGVzL2ZpeC10ZXN0MDc5LW11 c2wtaWdub3JlZC1wYXJhbXMucGF0Y2ggYi9zcmNwa2dzL29wZW5sZGFwL3BhdGNoZXMvZml4LXRl c3QwNzktbXVzbC1pZ25vcmVkLXBhcmFtcy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCAwMDAwMDAwMDAwMDAuLjhiYTE4MzI5MDFjOAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mv b3BlbmxkYXAvcGF0Y2hlcy9maXgtdGVzdDA3OS1tdXNsLWlnbm9yZWQtcGFyYW1zLnBhdGNoCkBA IC0wLDAgKzEsMTA2IEBACistLS0gYS90ZXN0cy9zY3JpcHRzL3Rlc3QwNzktcHJveHktdGltZW91 dAkyMDIzLTAxLTMxIDIzOjM3OjE5LjM3ODMyNDAzOCArMDEwMAorKysrIGIvdGVzdHMvc2NyaXB0 cy90ZXN0MDc5LXByb3h5LXRpbWVvdXQJMjAyMy0wMS0zMSAyMzo0NzoyNS4yODkwNTIyNDAgKzAx MDAKK0BAIC0xMzksMTAgKzEzOSwxMCBAQAorIAorIGVjaG8gIkNoZWNraW5nIHRoYXQgcHJveHkg aGFzIGNyZWF0ZWQgY29ubmVjdGlvbnMgdG93YXJkcyBiYWNrZW5kICh0aW1lX3Qgbm93PWBkYXRl ICslc2ApIgorIAorLSRMREFQU0VBUkNIIC1iICJjbj1Db25uZWN0aW9ucyxjbj1kYXRhYmFzZSAy LGNuPWRhdGFiYXNlcyxjbj1tb25pdG9yIiAtcyBvbmUgLUxMTCBvbG1EYkNvbm5VUkkgXAorKyRM REFQU0VBUkNIIC1iICJjbj1Db25uZWN0aW9ucyxjbj1kYXRhYmFzZSAyLGNuPWRhdGFiYXNlcyxj bj1tb25pdG9yIiAtcyBvbmUgLUxMTCBcCisgICAgICAgICAtRCAiY249TWFuYWdlcixkYz1sb2Nh bCxkYz1jb20iIFwKKyAgICAgICAgIC1IICRVUkkyIFwKKy0gICAgICAgIC13ICRQQVNTV0QgMj4m MSB8IHRlZSAtYSAkVEVTVE9VVCB8IGdyZXAgbGRhcDovLyR7TE9DQUxIT1NUfTokUE9SVDEgPi9k ZXYvbnVsbAorKyAgICAgICAgLXcgJFBBU1NXRCBvbG1EYkNvbm5VUkkgMj4mMSB8IHRlZSAtYSAk VEVTVE9VVCB8IGdyZXAgbGRhcDovLyR7TE9DQUxIT1NUfTokUE9SVDEgPi9kZXYvbnVsbAorIFJD PSQ/CisgaWYgdGVzdCAkUkMgIT0gMCA7IHRoZW4KKyAgICAgZWNobyAiRXJyb3I6IExEQVAgY29u bmVjdGlvbiB0byByZW1vdGUgTERBUCBzZXJ2ZXIgaXMgbm90IGZvdW5kICgkUkMpIgorQEAgLTE1 MCwxMCArMTUwLDEwIEBACisgICAgIGV4aXQgJFJDCisgZmkKKyAKKy0kTERBUFNFQVJDSCAtYiAi Y249Q29ubmVjdGlvbnMsY249ZGF0YWJhc2UgMyxjbj1kYXRhYmFzZXMsY249bW9uaXRvciIgLXMg b25lIC1MTEwgb2xtRGJDb25uVVJJIFwKKyskTERBUFNFQVJDSCAtYiAiY249Q29ubmVjdGlvbnMs Y249ZGF0YWJhc2UgMyxjbj1kYXRhYmFzZXMsY249bW9uaXRvciIgLXMgb25lIC1MTEwgXAorICAg ICAgICAgLUQgImNuPU1hbmFnZXIsZGM9bG9jYWwsZGM9Y29tIiBcCisgICAgICAgICAtSCAkVVJJ MiBcCistICAgICAgICAtdyAkUEFTU1dEIDI+JjEgfCB0ZWUgLWEgJFRFU1RPVVQgfCBncmVwIGxk YXA6Ly8ke0xPQ0FMSE9TVH06JFBPUlQxID4vZGV2L251bGwKKysgICAgICAgIC13ICRQQVNTV0Qg b2xtRGJDb25uVVJJIDI+JjEgfCB0ZWUgLWEgJFRFU1RPVVQgfCBncmVwIGxkYXA6Ly8ke0xPQ0FM SE9TVH06JFBPUlQxID4vZGV2L251bGwKKyBSQz0kPworIGlmIHRlc3QgJFJDICE9IDAgOyB0aGVu CisgICAgIGVjaG8gIkVycm9yOiBMREFQIGNvbm5lY3Rpb24gdG8gcmVtb3RlIExEQVAgc2VydmVy IGlzIG5vdCBmb3VuZCAoJFJDKSIKK0BAIC0xNzEsMTAgKzE3MSwxMCBAQAorIAorIGVjaG8gIkNo ZWNraW5nIHRoYXQgcHJveHkgaGFzIGNsb3NlZCBleHBpcmVkIGNvbm5lY3Rpb25zIHRvd2FyZHMg dGhlIHJlbW90ZSBMREFQIHNlcnZlciAodGltZV90IG5vdz1gZGF0ZSArJXNgKSIKKyAKKy0kTERB UFNFQVJDSCAtYiAiY249Q29ubmVjdGlvbnMsY249ZGF0YWJhc2UgMixjbj1kYXRhYmFzZXMsY249 bW9uaXRvciIgLXMgb25lIC1MTEwgb2xtRGJDb25uVVJJIFwKKyskTERBUFNFQVJDSCAtYiAiY249 Q29ubmVjdGlvbnMsY249ZGF0YWJhc2UgMixjbj1kYXRhYmFzZXMsY249bW9uaXRvciIgLXMgb25l IC1MTEwgXAorICAgICAgICAgLUQgImNuPU1hbmFnZXIsZGM9bG9jYWwsZGM9Y29tIiBcCisgICAg ICAgICAtSCAkVVJJMiBcCistICAgICAgICAtdyAkUEFTU1dEIDI+JjEgfCB0ZWUgLWEgJFRFU1RP VVQgfCBncmVwIGxkYXA6Ly8ke0xPQ0FMSE9TVH06JFBPUlQxID4vZGV2L251bGwKKysgICAgICAg IC13ICRQQVNTV0Qgb2xtRGJDb25uVVJJIDI+JjEgfCB0ZWUgLWEgJFRFU1RPVVQgfCBncmVwIGxk YXA6Ly8ke0xPQ0FMSE9TVH06JFBPUlQxID4vZGV2L251bGwKKyBSQz0kPworIGlmIHRlc3QgJFJD ICE9IDEgOyB0aGVuCisgICAgIGVjaG8gIkVycm9yOiBMREFQIGNvbm5lY3Rpb24gdG8gcmVtb3Rl IExEQVAgc2VydmVyIHdhcyBub3QgY2xvc2VkIgorQEAgLTE4MiwxMCArMTgyLDEwIEBACisgICAg IGV4aXQgJFJDCisgZmkKKyAKKy0kTERBUFNFQVJDSCAtYiAiY249Q29ubmVjdGlvbnMsY249ZGF0 YWJhc2UgMyxjbj1kYXRhYmFzZXMsY249bW9uaXRvciIgLXMgb25lIC1MTEwgb2xtRGJDb25uVVJJ IFwKKyskTERBUFNFQVJDSCAtYiAiY249Q29ubmVjdGlvbnMsY249ZGF0YWJhc2UgMyxjbj1kYXRh YmFzZXMsY249bW9uaXRvciIgLXMgb25lIC1MTEwgXAorICAgICAgICAgLUQgImNuPU1hbmFnZXIs ZGM9bG9jYWwsZGM9Y29tIiBcCisgICAgICAgICAtSCAkVVJJMiBcCistICAgICAgICAtdyAkUEFT U1dEIDI+JjEgfCB0ZWUgLWEgJFRFU1RPVVQgfCBncmVwIGxkYXA6Ly8ke0xPQ0FMSE9TVH06JFBP UlQxID4vZGV2L251bGwKKysgICAgICAgIC13ICRQQVNTV0Qgb2xtRGJDb25uVVJJIDI+JjEgfCB0 ZWUgLWEgJFRFU1RPVVQgfCBncmVwIGxkYXA6Ly8ke0xPQ0FMSE9TVH06JFBPUlQxID4vZGV2L251 bGwKKyBSQz0kPworIGlmIHRlc3QgJFJDICE9IDEgOyB0aGVuCisgICAgIGVjaG8gIkVycm9yOiBM REFQIGNvbm5lY3Rpb24gdG8gcmVtb3RlIExEQVAgc2VydmVyIHdhcyBub3QgY2xvc2VkIgorQEAg LTIzNSwxMCArMjM1LDEwIEBACisgCisgZWNobyAiQ2hlY2tpbmcgdGhhdCBwcm94eSBoYXMgY3Jl YXRlZCBjb25uZWN0aW9ucyB0b3dhcmRzIGJhY2tlbmQgKHRpbWVfdCBub3c9YGRhdGUgKyVzYCki CisgCistJExEQVBTRUFSQ0ggLWIgImNuPUNvbm5lY3Rpb25zLGNuPWRhdGFiYXNlIDIsY249ZGF0 YWJhc2VzLGNuPW1vbml0b3IiIC1zIG9uZSAtTExMIG9sbURiQ29ublVSSSBcCisrJExEQVBTRUFS Q0ggLWIgImNuPUNvbm5lY3Rpb25zLGNuPWRhdGFiYXNlIDIsY249ZGF0YWJhc2VzLGNuPW1vbml0 b3IiIC1zIG9uZSAtTExMIFwKKyAgICAgICAgIC1EICJjbj1NYW5hZ2VyLGRjPWxvY2FsLGRjPWNv bSIgXAorICAgICAgICAgLUggJFVSSTIgXAorLSAgICAgICAgLXcgJFBBU1NXRCAyPiYxIHwgdGVl IC1hICRURVNUT1VUIHwgZ3JlcCBsZGFwOi8vJHtMT0NBTEhPU1R9OiRQT1JUMSA+L2Rldi9udWxs CisrICAgICAgICAtdyAkUEFTU1dEIG9sbURiQ29ublVSSSAyPiYxIHwgdGVlIC1hICRURVNUT1VU IHwgZ3JlcCBsZGFwOi8vJHtMT0NBTEhPU1R9OiRQT1JUMSA+L2Rldi9udWxsCisgUkM9JD8KKyBp ZiB0ZXN0ICRSQyAhPSAwIDsgdGhlbgorICAgICBlY2hvICJFcnJvcjogTERBUCBjb25uZWN0aW9u IHRvIHJlbW90ZSBMREFQIHNlcnZlciBpcyBub3QgZm91bmQgKCRSQykiCitAQCAtMjQ2LDEwICsy NDYsMTAgQEAKKyAgICAgZXhpdCAkUkMKKyBmaQorIAorLSRMREFQU0VBUkNIIC1iICJjbj1Db25u ZWN0aW9ucyxjbj1kYXRhYmFzZSAzLGNuPWRhdGFiYXNlcyxjbj1tb25pdG9yIiAtcyBvbmUgLUxM TCBvbG1EYkNvbm5VUkkgXAorKyRMREFQU0VBUkNIIC1iICJjbj1Db25uZWN0aW9ucyxjbj1kYXRh YmFzZSAzLGNuPWRhdGFiYXNlcyxjbj1tb25pdG9yIiAtcyBvbmUgLUxMTCBcCisgICAgICAgICAt RCAiY249TWFuYWdlcixkYz1sb2NhbCxkYz1jb20iIFwKKyAgICAgICAgIC1IICRVUkkyIFwKKy0g ICAgICAgIC13ICRQQVNTV0QgMj4mMSB8IHRlZSAtYSAkVEVTVE9VVCB8IGdyZXAgbGRhcDovLyR7 TE9DQUxIT1NUfTokUE9SVDEgPi9kZXYvbnVsbAorKyAgICAgICAgLXcgJFBBU1NXRCBvbG1EYkNv bm5VUkkgMj4mMSB8IHRlZSAtYSAkVEVTVE9VVCB8IGdyZXAgbGRhcDovLyR7TE9DQUxIT1NUfTok UE9SVDEgPi9kZXYvbnVsbAorIFJDPSQ/CisgaWYgdGVzdCAkUkMgIT0gMCA7IHRoZW4KKyAgICAg ZWNobyAiRXJyb3I6IExEQVAgY29ubmVjdGlvbiB0byByZW1vdGUgTERBUCBzZXJ2ZXIgaXMgbm90 IGZvdW5kICgkUkMpIgorQEAgLTMzOSwxMCArMzM5LDEwIEBACisgTk9XPWBkYXRlICslc2AKKyBz bGVlcCBgZXhwciAkQ09OTl9FWFBJUkVTIC0gJE5PVyAtIDJgCisgZWNobyAiQ2hlY2sgdGhhdCBj b25uZWN0aW9uIGlzIHN0aWxsIGFsaXZlIGR1ZSB0byBpZGxlLXRpbWVvdXQgcmVzZXQgKHRpbWVf dCBub3c9YGRhdGUgKyVzYCkiCistJExEQVBTRUFSQ0ggLWIgImNuPUNvbm5lY3Rpb25zLGNuPWRh dGFiYXNlIDIsY249ZGF0YWJhc2VzLGNuPW1vbml0b3IiIC1zIG9uZSAtTExMIG9sbURiQ29ublVS SSBcCisrJExEQVBTRUFSQ0ggLWIgImNuPUNvbm5lY3Rpb25zLGNuPWRhdGFiYXNlIDIsY249ZGF0 YWJhc2VzLGNuPW1vbml0b3IiIC1zIG9uZSAtTExMIFwKKyAgICAgICAgIC1EICJjbj1NYW5hZ2Vy LGRjPWxvY2FsLGRjPWNvbSIgXAorICAgICAgICAgLUggJFVSSTIgXAorLSAgICAgICAgLXcgJFBB U1NXRCAyPiYxIHwgdGVlIC1hICRURVNUT1VUIHwgZ3JlcCBsZGFwOi8vJHtMT0NBTEhPU1R9OiRQ T1JUMSA+L2Rldi9udWxsCisrICAgICAgICAtdyAkUEFTU1dEIG9sbURiQ29ublVSSSAyPiYxIHwg dGVlIC1hICRURVNUT1VUIHwgZ3JlcCBsZGFwOi8vJHtMT0NBTEhPU1R9OiRQT1JUMSA+L2Rldi9u dWxsCisgUkM9JD8KKyBpZiB0ZXN0ICRSQyAhPSAwIDsgdGhlbgorICAgICBlY2hvICJFcnJvcjog TERBUCBjb25uZWN0aW9uIHRvIHJlbW90ZSBMREFQIHNlcnZlciBpcyBub3QgZm91bmQgKCRSQyki CitAQCAtMzU0LDEwICszNTQsMTAgQEAKKyBOT1c9YGRhdGUgKyVzYAorIHNsZWVwIGBleHByICRD T05OX0VYUElSRVMgLSAkTk9XICsgMmAKKyBlY2hvICJDaGVjayB0aGF0IGNvbm5lY3Rpb24gaXMg Y2xvc2VkIGFmdGVyIGV4dGVuZGVkIGlkbGUtdGltZW91dCBoYXMgcGFzc2VkICh0aW1lX3Qgbm93 PWBkYXRlICslc2ApIgorLSRMREFQU0VBUkNIIC1iICJjbj1Db25uZWN0aW9ucyxjbj1kYXRhYmFz ZSAyLGNuPWRhdGFiYXNlcyxjbj1tb25pdG9yIiAtcyBvbmUgLUxMTCBvbG1EYkNvbm5VUkkgXAor KyRMREFQU0VBUkNIIC1iICJjbj1Db25uZWN0aW9ucyxjbj1kYXRhYmFzZSAyLGNuPWRhdGFiYXNl cyxjbj1tb25pdG9yIiAtcyBvbmUgLUxMTCBcCisgICAgICAgICAtRCAiY249TWFuYWdlcixkYz1s b2NhbCxkYz1jb20iIFwKKyAgICAgICAgIC1IICRVUkkyIFwKKy0gICAgICAgIC13ICRQQVNTV0Qg IDI+JjEgfCB0ZWUgLWEgJFRFU1RPVVQgfCBncmVwIGxkYXA6Ly8ke0xPQ0FMSE9TVH06JFBPUlQx ID4vZGV2L251bGwKKysgICAgICAgIC13ICRQQVNTV0QgIG9sbURiQ29ublVSSSAyPiYxIHwgdGVl IC1hICRURVNUT1VUIHwgZ3JlcCBsZGFwOi8vJHtMT0NBTEhPU1R9OiRQT1JUMSA+L2Rldi9udWxs CisgUkM9JD8KKyBpZiB0ZXN0ICRSQyAhPSAxIDsgdGhlbgorICAgICBlY2hvICJFcnJvcjogTERB UCBjb25uZWN0aW9uIHRvIHJlbW90ZSBMREFQIHNlcnZlciB3YXMgbm90IGNsb3NlZCIKZGlmZiAt LWdpdCBhL3NyY3BrZ3Mvb3BlbmxkYXAvdGVtcGxhdGUgYi9zcmNwa2dzL29wZW5sZGFwL3RlbXBs YXRlCmluZGV4IDg1ZmU3OWQ3N2QxZS4uMzBkMmQ5ODkzY2I4IDEwMDY0NAotLS0gYS9zcmNwa2dz L29wZW5sZGFwL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvb3BlbmxkYXAvdGVtcGxhdGUKQEAgLTEs NiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdvcGVubGRhcCcKIHBrZ25hbWU9b3Blbmxk YXAKLXZlcnNpb249Mi40LjU4Cit2ZXJzaW9uPTIuNi4zCiByZXZpc2lvbj0xCiBidWlsZF9zdHls ZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS1wcmVmaXg9L3VzcgpAQCAtMTYsMTMg KzE2LDEzIEBAIGNvbmZpZ3VyZV9hcmdzPSItLXByZWZpeD0vdXNyCiBob3N0bWFrZWRlcGVuZHM9 InBrZy1jb25maWcgZ3JvZmYiCiBtYWtlZGVwZW5kcz0ib3BlbnNzbC1kZXZlbCBsaWJzYXNsLWRl dmVsIGRiLWRldmVsIGxpYmx0ZGwtZGV2ZWwiCiBkZXBlbmRzPSJvcGVubGRhcC10b29scz49JHt2 ZXJzaW9ufV8ke3JldmlzaW9ufSIKLWNvbmZfZmlsZXM9Ii9ldGMvb3BlbmxkYXAvbGRhcC5jb25m IC9ldGMvb3BlbmxkYXAvc2xhcGQuY29uZiIKK2NvbmZfZmlsZXM9Ii9ldGMvb3BlbmxkYXAvbGRh cC5jb25mIC9ldGMvb3BlbmxkYXAvc2xhcGQuY29uZiAvZXRjL29wZW5sZGFwL3NsYXBkLmxkaWYi CiBzaG9ydF9kZXNjPSJPcGVuTERBUCAoTGlnaHR3ZWlnaHQgRGlyZWN0b3J5IEFjY2VzcyBQcm90 b2NvbCkiCiBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+IgogbGlj ZW5zZT0iT0xEQVAtMi4wIgogaG9tZXBhZ2U9Imh0dHA6Ly93d3cub3BlbmxkYXAub3JnIgogZGlz dGZpbGVzPSJodHRwczovL3d3dy5vcGVubGRhcC5vcmcvc29mdHdhcmUvZG93bmxvYWQvT3BlbkxE QVAvb3BlbmxkYXAtcmVsZWFzZS9vcGVubGRhcC0ke3ZlcnNpb259LnRneiIKLWNoZWNrc3VtPTU3 YjU5MjU0YmUxNWQwYmY2YTlhYjNkNTE0YzFjMDU3NzdiMDIxMjMyOTE1MzMxMzRhODdjOTQ0Njhm OGY0N2IKK2NoZWNrc3VtPWQyYTJhMWQ3MWRmM2Q3NzM5NmIxYzE2YWQ3NTAyZTY3NGRmNDQ2ZTA2 MDcyYjBlNWE0ZTk0MWMzZDA2YzBkNDYKIAogc3lzdGVtX2FjY291bnRzPSJsZGFwIgogbGRhcF9o b21lZGlyPSIvdmFyL2xpYi9vcGVubGRhcCIKQEAgLTM4LDcgKzM4LDcgQEAgcG9zdF9pbnN0YWxs KCkgewogCXZsaWNlbnNlIExJQ0VOU0UKIAljaG1vZCA3NTUgJHtERVNURElSfS91c3IvbGliLyou c28uKgogCXZta2RpciB1c3Ivc2hhcmUvZXhhbXBsZXMvb3BlbmxkYXAKLQltdiAke0RFU1RESVJ9 L2V0Yy9vcGVubGRhcC8qLntleGFtcGxlLGRlZmF1bHR9ICR7REVTVERJUn0vdXNyL3NoYXJlL2V4 YW1wbGVzL29wZW5sZGFwCisJbXYgJHtERVNURElSfS9ldGMvb3BlbmxkYXAvKi5kZWZhdWx0ICR7 REVTVERJUn0vdXNyL3NoYXJlL2V4YW1wbGVzL29wZW5sZGFwCiAJY2htb2QgMDY0NCAke0RFU1RE SVJ9L3Vzci9zaGFyZS9leGFtcGxlcy9vcGVubGRhcC8qCiB9CiAKCkZyb20gMTQyN2Q4NWUzZmQ4 YmM0ZTA5NjJhMDQxYmIyYjVmYzExYzRmYjEzNiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAy MDIzIDAwOjI1OjM2ICswMTAwClN1YmplY3Q6IFtQQVRDSCAwMi8zOV0gY3lydXMtc2FzbDogcmV2 YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3MvY3lydXMtc2FzbC90ZW1w bGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY3lydXMtc2FzbC90ZW1wbGF0ZSBiL3NyY3BrZ3MvY3ly dXMtc2FzbC90ZW1wbGF0ZQppbmRleCBiMjU5MTUyMTM5ZmQuLmQ5NjQ2ZWQ4YTY0MiAxMDA2NDQK LS0tIGEvc3JjcGtncy9jeXJ1cy1zYXNsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvY3lydXMtc2Fz bC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2N5cnVzLXNh c2wnCiBwa2duYW1lPWN5cnVzLXNhc2wKIHZlcnNpb249Mi4xLjI3Ci1yZXZpc2lvbj05CityZXZp c2lvbj0xMAogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZGlz YWJsZS1zdGF0aWMgLS1lbmFibGUtc2hhcmVkIC0tZW5hYmxlLWNoZWNrYXBvcAogIC0tZW5hYmxl LWNyYW0gLS1lbmFibGUtZGlnZXN0IC0tZGlzYWJsZS1vdHAgLS1kaXNhYmxlLXNycAoKRnJvbSAw YWU4MDJlZTQzYjZlODFiZWFkOTNhNGY3ZGI0MjAxNTgwZTE4Y2Y4IE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBX ZWQsIDEgRmViIDIwMjMgMDA6MjY6MDggKzAxMDAKU3ViamVjdDogW1BBVENIIDAzLzM5XSBtaXQt a3JiNTogdXBkYXRlIHRvIDEuMjAuMQoKQSByZWJ1aWxkIHRyaWdnZXJkIGJ5IHVwZGF0ZSB0byBv cGVubGRhcC0yLjYuMyBoYWQgc29tZSBlcnJvcnMgaW4gdGhlCnRlc3Qgc3VpdGUuClJlbW92ZSBw YXRjaCBmb3IgbGlicmVzc2wuCkZvbGxvdyBkaXN0ZmlsZXMgY29udmVudGlvbi4KLS0tCiBzcmNw a2dzL21pdC1rcmI1L3BhdGNoZXMvbGlicmVzc2wucGF0Y2ggfCAzOCAtLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCiBzcmNwa2dzL21pdC1rcmI1L3RlbXBsYXRlICAgICAgICAgICAgICAgfCAgOCAr KystLS0KIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCA0MiBkZWxldGlvbnMoLSkK IGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL21pdC1rcmI1L3BhdGNoZXMvbGlicmVzc2wucGF0 Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL21pdC1rcmI1L3BhdGNoZXMvbGlicmVzc2wucGF0Y2gg Yi9zcmNwa2dzL21pdC1rcmI1L3BhdGNoZXMvbGlicmVzc2wucGF0Y2gKZGVsZXRlZCBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IDZlYjBkYmZjYWYzZC4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3Mv bWl0LWtyYjUvcGF0Y2hlcy9saWJyZXNzbC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDM4ICsw LDAgQEAKLS0tLSBhL3NyYy9wbHVnaW5zL3ByZWF1dGgvcGtpbml0L3BraW5pdF9jcnlwdG9fb3Bl bnNzbC5jCTIwMTktMDEtMDggMTc6MDI6MzcuMDAwMDAwMDAwICswMTAwCi0rKysgYi9zcmMvcGx1 Z2lucy9wcmVhdXRoL3BraW5pdC9wa2luaXRfY3J5cHRvX29wZW5zc2wuYwkyMDE5LTA1LTExIDE2 OjI5OjM3LjAwMTQ1ODA4NCArMDIwMAotQEAgLTE4OSw3ICsxODksNyBAQAotICAgICAoKl94NTA5 X3BwKSA9IFBLQ1M3X2NlcnRfZnJvbV9zaWduZXJfaW5mbyhfcDcsX3NpKQotICNlbmRpZgotIAot LSNpZiBPUEVOU1NMX1ZFUlNJT05fTlVNQkVSIDwgMHgxMDEwMDAwMEwKLSsjaWYgT1BFTlNTTF9W RVJTSU9OX05VTUJFUiA8IDB4MTAxMDAwMDBMIHx8IGRlZmluZWQoTElCUkVTU0xfVkVSU0lPTl9O VU1CRVIpCi0gCi0gLyogMS4xIHN0YW5kYXJkaXplcyBjb25zdHJ1Y3RvciBhbmQgZGVzdHJ1Y3Rv ciBuYW1lcywgcmVuYW1pbmcKLSAgKiBFVlBfTURfQ1RYX3tjcmVhdGUsZGVzdHJveX0gYW5kIGRl cHJlY2F0aW5nIEFTTjFfU1RSSU5HX2RhdGEuICovCi1AQCAtMzA1Myw3ICszMDUzLDcgQEAKLSAg ICAgcmV0dXJuIHJldHZhbDsKLSB9Ci0gCi0tI2lmIE9QRU5TU0xfVkVSU0lPTl9OVU1CRVIgPj0g MHgxMDEwMDAwMEwKLSsjaWYgT1BFTlNTTF9WRVJTSU9OX05VTUJFUiA+PSAweDEwMTAwMDAwTCB8 fCBkZWZpbmVkKExJQlJFU1NMX1ZFUlNJT05fTlVNQkVSKQotIAotIC8qCi0gICogV2UgbmVlZCB0 byBkZWNvZGUgRG9tYWluUGFyYW1ldGVycyBmcm9tIFJGQyAzMjc5IHNlY3Rpb24gMi4zLjMuICBX ZSB3b3VsZAotQEAgLTMwNzksNyArMzA3OSw3IEBACi0gQVNOMV9TRVFVRU5DRShESHZwYXJhbXMp ID0gewotICAgICBBU04xX1NJTVBMRShpbnRfZGh2cGFyYW1zLCBzZWVkLCBBU04xX0JJVF9TVFJJ TkcpLAotICAgICBBU04xX1NJTVBMRShpbnRfZGh2cGFyYW1zLCBjb3VudGVyLCBCSUdOVU0pCi0t fSBzdGF0aWNfQVNOMV9TRVFVRU5DRV9FTkRfbmFtZShpbnRfZGh2cGFyYW1zLCBESHZwYXJhbXMp Ci0rfSBBU04xX1NFUVVFTkNFX0VORF9uYW1lKGludF9kaHZwYXJhbXMsIERIdnBhcmFtcykKLSAK LSBBU04xX1NFUVVFTkNFKERIeHBhcmFtcykgPSB7Ci0gICAgIEFTTjFfU0lNUExFKGludF9kaHg5 NDJfZGgsIHAsIEJJR05VTSksCi1AQCAtMzA4Nyw3ICszMDg3LDcgQEAKLSAgICAgQVNOMV9PUFQo aW50X2RoeDk0Ml9kaCwgcSwgQklHTlVNKSwKLSAgICAgQVNOMV9PUFQoaW50X2RoeDk0Ml9kaCwg aiwgQklHTlVNKSwKLSAgICAgQVNOMV9PUFQoaW50X2RoeDk0Ml9kaCwgdnBhcmFtcywgREh2cGFy YW1zKSwKLS19IHN0YXRpY19BU04xX1NFUVVFTkNFX0VORF9uYW1lKGludF9kaHg5NDJfZGgsIERI eHBhcmFtcykKLSt9IEFTTjFfU0VRVUVOQ0VfRU5EX25hbWUoaW50X2RoeDk0Ml9kaCwgREh4cGFy YW1zKQotIAotIHN0YXRpYyBESCAqCi0gZGVjb2RlX2RoX3BhcmFtcyhjb25zdCB1aW50OF90ICpw LCB1bnNpZ25lZCBpbnQgbGVuKQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9taXQta3JiNS90ZW1wbGF0 ZSBiL3NyY3BrZ3MvbWl0LWtyYjUvdGVtcGxhdGUKaW5kZXggYTY3YmFlMTk3NjRhLi4zNmE3ZGU0 NmUwOTkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbWl0LWtyYjUvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9taXQta3JiNS90ZW1wbGF0ZQpAQCAtMiw4ICsyLDggQEAKICMgaWYgdGhlcmUgaXMgYSBidW1w IGluIC5zbyB2ZXJzaW9uLAogIyBhbHNvIHVwZGF0ZSBzcmNwa2dzL2xpYmdzc2dsdWUvZmlsZXMv Z3NzYXBpX21lY2guY29uZgogcGtnbmFtZT1taXQta3JiNQotdmVyc2lvbj0xLjE4LjMKLXJldmlz aW9uPTIKK3ZlcnNpb249MS4yMC4xCityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmln dXJlCiBob3N0bWFrZWRlcGVuZHM9ImUyZnNwcm9ncy1kZXZlbCBmbGV4IHBlcmwgcGtnLWNvbmZp ZyIKIG1ha2VkZXBlbmRzPSJlMmZzcHJvZ3MtZGV2ZWwgbGlibGRhcC1kZXZlbCIKQEAgLTExLDgg KzExLDggQEAgc2hvcnRfZGVzYz0iTUlUIEtlcmJlcm9zIDUgaW1wbGVtZW50YXRpb24iCiBtYWlu dGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iTUlUIgog aG9tZXBhZ2U9Imh0dHA6Ly93ZWIubWl0LmVkdS9rZXJiZXJvcyIKLWRpc3RmaWxlcz0iJHtob21l cGFnZX0vZGlzdC9rcmI1LyR7dmVyc2lvbiUuKn0va3JiNS0ke3ZlcnNpb259LnRhci5neiIKLWNo ZWNrc3VtPWU2MTc4M2MyOTJiNWVmZDlhZmI0NWM1NTVhODBkZDI2N2FjNjdlZWJhYmNhNDIxODUz NjJiZWU2YzRmYmQ3MTkKK2Rpc3RmaWxlcz0iaHR0cDovL3dlYi5taXQuZWR1L2tlcmJlcm9zL2Rp c3Qva3JiNS8ke3ZlcnNpb24lLip9L2tyYjUtJHt2ZXJzaW9ufS50YXIuZ3oiCitjaGVja3N1bT03 MDRhZWQ0OWIxOWViNWE3MTc4YjM0YjI4NzM2MjBlYzI5OWRiMDg3NTJkNmE4NTc0Zjk1ZDQxODc5 YWI4ODUxCiAKIHBvc3RfcGF0Y2goKSB7CiAJdnNlZCAtZSAiL0xERkxBR1M9L2QiIC1pIHNyYy9i dWlsZC10b29scy9rcmI1LWNvbmZpZy5pbgoKRnJvbSAwZjY2MDlkYTQ2OTQwMDdlYzYyYmNjNmVh OGI5ZWE4ZGMyOWIzN2M4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2Rp biA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMDI6MTk6MzMg KzAxMDAKU3ViamVjdDogW1BBVENIIDA0LzM5XSBldm9sdXRpb24tZGF0YS1zZXJ2ZXI6IHJldmJ1 bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNl cnZlci90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBk ZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVyL3Rl bXBsYXRlIGIvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvdGVtcGxhdGUKaW5kZXggYmYx ZGIyODhjZDEyLi4zNWY0ZjBiMDA5YzcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZXZvbHV0aW9uLWRh dGEtc2VydmVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVyL3Rl bXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZXZvbHV0aW9uLWRh dGEtc2VydmVyJwogcGtnbmFtZT1ldm9sdXRpb24tZGF0YS1zZXJ2ZXIKIHZlcnNpb249My40Ni4z Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1jbWFrZQogYnVpbGRfaGVscGVy PSJnaXIgcWVtdSIKIGNvbmZpZ3VyZV9hcmdzPSIgLURTWVNDT05GX0lOU1RBTExfRElSPS9ldGMK CkZyb20gNGZlYWE1MTY1NTMyNzY3Yjc2NGUwMTk0YWQ3ZjU0YWNkOWVmYzA1NSBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4K RGF0ZTogV2VkLCAxIEZlYiAyMDIzIDAyOjIwOjE5ICswMTAwClN1YmplY3Q6IFtQQVRDSCAwNS8z OV0gZ251cGc6IHJldmJ1bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dzL2du dXBnL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRl bGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbnVwZy90ZW1wbGF0ZSBiL3NyY3BrZ3Mv Z251cGcvdGVtcGxhdGUKaW5kZXggYzdjYmU2ODlmMjNhLi40NmI1OTZmMGNhYzggMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvZ251cGcvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbnVwZy90ZW1wbGF0ZQpA QCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dudXBnJwogcGtnbmFtZT1nbnVw ZwogdmVyc2lvbj0yLjQuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogIyBXZSdyZSBidWlsZGlu ZyBvdXRzaWRlIG9mIHRoZSBzb3VyY2UgdHJlZSwgYmVjYXVzZSB1cHN0cmVhbSB0b2xkIHVzIHRv OgogIyBodHRwczovL2Rldi5nbnVwZy5vcmcvVDYzMTMjMTY2MzM5CiBidWlsZF93cmtzcmM9YnVp bGQKCkZyb20gMzJjNzA0YmYyMzA3ZTlkYmM0NmQzMzRmODc0NDMxYTljYzVmNjMwNCBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNv bT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE1OjEzOjI1ICswMTAwClN1YmplY3Q6IFtQQVRDSCAw Ni8zOV0gRnJlZVJBRElVUzogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNy Y3BrZ3MvRnJlZVJBRElVUy90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2Vy dGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvRnJlZVJBRElVUy90 ZW1wbGF0ZSBiL3NyY3BrZ3MvRnJlZVJBRElVUy90ZW1wbGF0ZQppbmRleCBlZTIwNTlhMzczYjQu LjViMmQ2ZmNiNzRmMyAxMDA2NDQKLS0tIGEvc3JjcGtncy9GcmVlUkFESVVTL3RlbXBsYXRlCisr KyBiL3NyY3BrZ3MvRnJlZVJBRElVUy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ0ZyZWVSQURJVVMnCiBwa2duYW1lPUZyZWVSQURJVVMKIHZlcnNpb249My4w LjI2Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBt YWtlZGVwZW5kcz0idGFsbG9jLWRldmVsIG9wZW5zc2wtZGV2ZWwgbWl0LWtyYjUtZGV2ZWwgcGFt LWRldmVsIFwKICBsaWJtYXJpYWRiY2xpZW50LWRldmVsIHBvc3RncmVzcWwtbGlicy1kZXZlbCBq c29uLWMtZGV2ZWwiCgpGcm9tIDJlMjRkMWQyODBiNWM5N2RiNTI5NTJkZGNjZDQyMmY4ZDhlMDE0 ZmIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNtb2Rp bkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNToxNDozMSArMDEwMApTdWJqZWN0 OiBbUEFUQ0ggMDcvMzldIGFscGluZTogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdWRwYXRlCgph bHNvIGFkZCBCU0QtNC1DbGF1c2UgdG8gbGljZW5zZXMKLS0tCiBzcmNwa2dzL2FscGluZS90ZW1w bGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2FscGluZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvYWxw aW5lL3RlbXBsYXRlCmluZGV4IDAyYzRmOTQ0NTE1Yy4uOTc4OWUzMDNmYzhhIDEwMDY0NAotLS0g YS9zcmNwa2dzL2FscGluZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2FscGluZS90ZW1wbGF0ZQpA QCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2FscGluZScKIHBrZ25hbWU9YWxw aW5lCiB2ZXJzaW9uPTIuMjYKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIF9naXRoYXNoPTk3MjZj MDk4YTczOWVkZmRjYTYyMThiYzVkZWUxMDRjMzEwOTU3ZTkKIF9naXRzaG9ydD0iJHtfZ2l0aGFz aDowOjd9IgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQpAQCAtMTMsNyArMTMsNyBAQCBob3N0 bWFrZWRlcGVuZHM9Imh1bnNwZWxsIgogbWFrZWRlcGVuZHM9ImdldHRleHQtZGV2ZWwgbGlibGRh cC1kZXZlbCBtaXQta3JiNS1kZXZlbCBuY3Vyc2VzLWRldmVsIgogc2hvcnRfZGVzYz0iQXBhY2hl LWxpY2Vuc2VkIFBJTkUgbWFpbCB1c2VyIGFnZW50ICh3aXRoIENoYXBwYSBwYXRjaGVzKSIKIG1h aW50YWluZXI9IkxlYWggTmV1a2lyY2hlbiA8bGVhaEB2dXh1Lm9yZz4iCi1saWNlbnNlPSJBcGFj aGUtMi4wIgorbGljZW5zZT0iQXBhY2hlLTIuMCwgQlNELTQtQ2xhdXNlIgogaG9tZXBhZ2U9Imh0 dHBzOi8vcmVwby5vci5jei9hbHBpbmUuZ2l0IgogZGlzdGZpbGVzPSJodHRwczovL3JlcG8ub3Iu Y3ovYWxwaW5lLmdpdC9zbmFwc2hvdC8ke19naXRoYXNofS50YXIuZ3oiCiBjaGVja3N1bT1jOGMz NzdlYWIwZjY1YjUxMjgzZTBhZDMxNDRiZTE0MzA2NWRjYTQ0NjNkMTJjY2Y1MDkyYWU4NDE1MTVh NDMxCgpGcm9tIDVlYWE5NmY5YTAyM2FhM2Q1Y2I5NDA4MmFmOWQwYzExOTYwMWNhNDEgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5j b20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNToxODoyNyArMDEwMApTdWJqZWN0OiBbUEFUQ0gg MDgvMzldIGFuanV0YTogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgphbHNvIGZpeCBk ZXRlY3Rpb24gb2Ygd2Via2l0Mmd0awotLS0KIHNyY3BrZ3MvYW5qdXRhL3BhdGNoZXMvZml4LXdl YmtpdDJndGstZGV0ZWN0aW9uLnBhdGNoIHwgMTEgKysrKysrKysrKysKIHNyY3BrZ3MvYW5qdXRh L3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogMiBmaWxl cyBjaGFuZ2VkLCAxMyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUg MTAwNjQ0IHNyY3BrZ3MvYW5qdXRhL3BhdGNoZXMvZml4LXdlYmtpdDJndGstZGV0ZWN0aW9uLnBh dGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hbmp1dGEvcGF0Y2hlcy9maXgtd2Via2l0Mmd0ay1k ZXRlY3Rpb24ucGF0Y2ggYi9zcmNwa2dzL2FuanV0YS9wYXRjaGVzL2ZpeC13ZWJraXQyZ3RrLWRl dGVjdGlvbi5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjE3 YzBkYjkxMWNiYQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvYW5qdXRhL3BhdGNoZXMvZml4 LXdlYmtpdDJndGstZGV0ZWN0aW9uLnBhdGNoCkBAIC0wLDAgKzEsMTEgQEAKKy0tLSBhL2NvbmZp Z3VyZS5hYwkyMDE5LTA5LTA4IDE5OjMzOjU3LjAwMDAwMDAwMCArMDIwMAorKysrIGIvY29uZmln dXJlLmFjCTIwMjMtMDItMDEgMjI6NDE6NTQuNjM5OTQzODk3ICswMTAwCitAQCAtMjQ2LDcgKzI0 Niw3IEBACisgCQkqd2Via2l0Mmd0ay0zLjAqKQorIAkJCUFDX0RFRklORShbSEFWRV9XRUJLSVQy XSwgWzFdLCBbRGVmaW5lZCBpZiBkZXZoZWxwIGlzIGJ1aWx0IGFnYWluc3Qgd2Via2l0Z3RrMl0p CisgCQkJOzsKKy0JCSp3ZWJraXQyZ3RrLTQuMCopCisrCQkqd2Via2l0Mmd0ay00LiopCisgCQkJ QUNfREVGSU5FKFtIQVZFX1dFQktJVDJdLCBbMV0sIFtEZWZpbmVkIGlmIGRldmhlbHAgaXMgYnVp bHQgYWdhaW5zdCB3ZWJraXRndGsyXSkKKyAJCQk7OworIAkJZXNhYwpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9hbmp1dGEvdGVtcGxhdGUgYi9zcmNwa2dzL2FuanV0YS90ZW1wbGF0ZQppbmRleCBiNDZk NThhZWFmZTMuLjA3NzdlMWI5MmU1NyAxMDA2NDQKLS0tIGEvc3JjcGtncy9hbmp1dGEvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9hbmp1dGEvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdhbmp1dGEnCiBwa2duYW1lPWFuanV0YQogdmVyc2lvbj0zLjM0LjAKLXJl dmlzaW9uPTQKK3JldmlzaW9uPTUKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGJ1aWxkX2hl bHBlcj0iZ2lyIHFlbXUiCiBjb25maWd1cmVfYXJncz0iLS1kaXNhYmxlLWNvbXBpbGUtd2Fybmlu Z3MgLS1kaXNhYmxlLXNjaGVtYXMtY29tcGlsZQpAQCAtMTQsNyArMTQsNyBAQCBob3N0bWFrZWRl cGVuZHM9InBrZy1jb25maWcgaW50bHRvb2wgZmxleCBpdHN0b29sIHB5dGhvbjMgYXV0b2dlbiBn bGliLWRldmVsCiBtYWtlZGVwZW5kcz0iZ3Rrc291cmNldmlldy1kZXZlbCBsaWJ4bWwyLWRldmVs IHZ0ZTMtZGV2ZWwgZ2pzLWRldmVsCiAgbGlieHNsdC1kZXZlbCBnbGFkZTMtZGV2ZWwgZ3JhcGh2 aXotZGV2ZWwgdmFsYS1kZXZlbAogIGxpYmdkYS1kZXZlbCBkZXZoZWxwLWRldmVsIHNxbGl0ZS1k ZXZlbCBhcHItdXRpbC1kZXZlbAotIG5lb24tZGV2ZWwgc3VidmVyc2lvbi1kZXZlbCBweXRob24z LWRldmVsIGdkbC1kZXZlbCIKKyBuZW9uLWRldmVsIHN1YnZlcnNpb24tZGV2ZWwgcHl0aG9uMy1k ZXZlbCBnZGwtZGV2ZWwgd2Via2l0Mmd0ay1kZXZlbCIKIGRlcGVuZHM9ImF1dG9nZW4iCiBzaG9y dF9kZXNjPSJHTk9NRSBJbnRlZ3JhdGVkIERldmVsb3BtZW50IEVudmlyb25tZW50IgogbWFpbnRh aW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKCkZyb20gNzAyNmZlNzdk NjRmMmRhMTU0ZDBmMTllMzNhYjYwNTg4MmIzMDk0MSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK RnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZl YiAyMDIzIDE1OjE5OjQ1ICswMTAwClN1YmplY3Q6IFtQQVRDSCAwOS8zOV0gYXBhY2hlOiByZXZi dW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtncy9hcGFjaGUvdGVtcGxhdGUg fCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL2FwYWNoZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvYXBhY2hlL3RlbXBs YXRlCmluZGV4IDYyOWFkMThiMzRhNS4uYTY2MWJmNzFkNWMxIDEwMDY0NAotLS0gYS9zcmNwa2dz L2FwYWNoZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2FwYWNoZS90ZW1wbGF0ZQpAQCAtMSw3ICsx LDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2FwYWNoZScKIHBrZ25hbWU9YXBhY2hlCiB2ZXJz aW9uPTIuNC41NAotcmV2aXNpb249MgorcmV2aXNpb249MwogYnVpbGRfc3R5bGU9Z251LWNvbmZp Z3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tcHJlZml4PSAtLXNiaW5kaXI9L3Vzci9iaW4gLS1lbmFi bGUtcGllIC0tZW5hYmxlLW1vZHVsZXM9YWxsCiAgLS1lbmFibGUtbW9kcy1zaGFyZWQ9YWxsIC0t ZW5hYmxlLWF1dGhuLWRibSAtLWVuYWJsZS1hdXRobi1hbm9uCgpGcm9tIDM5YmM2Y2VhNzEwMmI4 MjQzMTNmNTBiZWY3ODU4OWZjY2VjYjc5MDYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IEtsYXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAy MyAxNToyNTozMyArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTAvMzldIGFwci11dGlsOiB1cGRhdGUg dG8gMS42LjIKCmZhaWxlZCB0byBkb3dubG9hZCBkaXN0ZmlsZXMgd2hlbiByZXZidW1waW5nCgot IHVwZGF0ZSBtaXJyb3IKLSByZW1vdmUgdXBzdHJlYW1lZCBwYXRjaAotLS0KIHNyY3BrZ3MvYXBy LXV0aWwvcGF0Y2hlcy9teXNxbC5wYXRjaCB8IDE1IC0tLS0tLS0tLS0tLS0tLQogc3JjcGtncy9h cHItdXRpbC90ZW1wbGF0ZSAgICAgICAgICAgIHwgIDggKysrKy0tLS0KIDIgZmlsZXMgY2hhbmdl ZCwgNCBpbnNlcnRpb25zKCspLCAxOSBkZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEwMDY0NCBz cmNwa2dzL2Fwci11dGlsL3BhdGNoZXMvbXlzcWwucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dz L2Fwci11dGlsL3BhdGNoZXMvbXlzcWwucGF0Y2ggYi9zcmNwa2dzL2Fwci11dGlsL3BhdGNoZXMv bXlzcWwucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGJmMTc5MmVkNmViYi4u MDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvYXByLXV0aWwvcGF0Y2hlcy9teXNxbC5wYXRjaAor KysgL2Rldi9udWxsCkBAIC0xLDE1ICswLDAgQEAKLWZpeGVzOiBodHRwczovL2dpdGh1Yi5jb20v dm9pZC1saW51eC92b2lkLXBhY2thZ2VzL2lzc3Vlcy8zOTUxMAotdGFrZW4gZnJvbSB1cHN0cmVh bTogaHR0cHM6Ly9zdm4uYXBhY2hlLm9yZy92aWV3dmMvYXByL2Fwci90cnVuay9kYmQvYXByX2Ri ZF9teXNxbC5jP3IxPTE4NzIwNTkmcjI9MTg3MjA2MCZkaWZmX2Zvcm1hdD1oCi0KLS0tLSBhL2Ri ZC9hcHJfZGJkX215c3FsLmMKLSsrKyBiL2RiZC9hcHJfZGJkX215c3FsLmMKLUBAIC0xMjYyLDcg KzEyNjIsOSBAQAotIAotIHN0YXRpYyB2b2lkIGRiZF9teXNxbF9pbml0KGFwcl9wb29sX3QgKnBv b2wpCi0gewotKyNpZiBNWVNRTF9WRVJTSU9OX0lEIDwgMTAwMDAwCi0gICAgIG15X2luaXQoKTsK LSsjZW5kaWYKLSAgICAgbXlzcWxfdGhyZWFkX2luaXQoKTsKLSAKLSAgICAgLyogRklYTUU6IHRo aXMgaXMgYSBndWVzczsgZmluZCBvdXQgd2hhdCBpdCByZWFsbHkgZG9lcyAqLwpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9hcHItdXRpbC90ZW1wbGF0ZSBiL3NyY3BrZ3MvYXByLXV0aWwvdGVtcGxhdGUK aW5kZXggZjFjZDQzNjMzNjVhLi41ZTkwMDk4NTFiYTQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYXBy LXV0aWwvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9hcHItdXRpbC90ZW1wbGF0ZQpAQCAtMSw3ICsx LDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2Fwci11dGlsJwogcGtnbmFtZT1hcHItdXRpbAot dmVyc2lvbj0xLjYuMQotcmV2aXNpb249MTMKK3ZlcnNpb249MS42LjIKK3JldmlzaW9uPTEKIGJ1 aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSIKICAtLXdpdGgtcGdzcWwg LS13aXRoLWxkYXAKQEAgLTE3LDggKzE3LDggQEAgc2hvcnRfZGVzYz0iQXBhY2hlIFBvcnRhYmxl IFJ1bnRpbWUgVXRpbGl0eSBMaWJyYXJ5IgogbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2 b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkFwYWNoZS0yLjAiCiBob21lcGFnZT0iaHR0cHM6Ly9h cHIuYXBhY2hlLm9yZy8iCi1kaXN0ZmlsZXM9Imh0dHBzOi8vd3d3LmFwYWNoZS5vcmcvZGlzdC9h cHIvJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci5iejIiCi1jaGVja3N1bT1kM2UxMmY3YjZhZDEy Njg3NTcyYTNhMzk0NzU1NDVhMDcyNjA4ZjRiYTAzYTZjZThhMzc3OGY2MDdkZDAwMzViCitkaXN0 ZmlsZXM9Imh0dHBzOi8vZG93bmxvYWRzLmFwYWNoZS5vcmcvYXByLyR7cGtnbmFtZX0tJHt2ZXJz aW9ufS50YXIuYnoyIgorY2hlY2tzdW09NGZlNTc0NDNhNzkwNTAyN2UxMzcwN2M4NzVjNWRlNmY5 ZmM2ZTJlNWEyNzI1ZDY5NWIyNWE4YTEwYzJkMjdlMAogIyBmYWlscyB0byBidWlsZCB0ZXN0cwog bWFrZV9jaGVjaz1ubwogCgpGcm9tIDlhNzZhNDc5ZmI2YWEzZmEzZGQ2NTdiZWFmNDQ4YTA3Mjgw OTdmNTEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNt b2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNToyNjo1NCArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMTEvMzldIGF1ZGl0OiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUK Ci0tLQogc3JjcGtncy9hdWRpdC90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGlu c2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXVkaXQvdGVt cGxhdGUgYi9zcmNwa2dzL2F1ZGl0L3RlbXBsYXRlCmluZGV4IDdlMWU0ZGFiMmY0NS4uMzM0ZDU2 N2YzNzgxIDEwMDY0NAotLS0gYS9zcmNwa2dzL2F1ZGl0L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv YXVkaXQvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdhdWRp dCcKIHBrZ25hbWU9YXVkaXQKIHZlcnNpb249My4wLjMKLXJldmlzaW9uPTQKK3JldmlzaW9uPTUK IGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSItLWxpYmRpcj0vdXNy L2xpYiAtLWVuYWJsZS1zaGFyZWQ9YXVkaXQgLS1lbmFibGUtZ3NzYXBpLWtyYjUKICAtLXdpdGgt YXBwYXJtb3IgLS13aXRoLWxpYmNhcC1uZyAtLXdpdGgtcHl0aG9uMyIKCkZyb20gZWY3ZTgyOTM1 NGE1YzI4NmY2ZmZhZWJiODQ5NGQxYWYyYWJkZDY2MSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK RnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZl YiAyMDIzIDE1OjI4OjE1ICswMTAwClN1YmplY3Q6IFtQQVRDSCAxMi8zOV0gYXV0b2ZzOiByZXZi dW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtncy9hdXRvZnMvdGVtcGxhdGUg fCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL2F1dG9mcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvYXV0b2ZzL3RlbXBs YXRlCmluZGV4IGE5YWJjNjBlNjRlOC4uNWY2M2QwYWQ5MmNhIDEwMDY0NAotLS0gYS9zcmNwa2dz L2F1dG9mcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2F1dG9mcy90ZW1wbGF0ZQpAQCAtMSw3ICsx LDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2F1dG9mcycKIHBrZ25hbWU9YXV0b2ZzCiB2ZXJz aW9uPTUuMS44Ci1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1nbnUtY29uZmln dXJlCiBtYWtlX2J1aWxkX2FyZ3M9IkRPTlRTVFJJUD0xIgogY29uZmlndXJlX2FyZ3M9Ii0td2l0 aC1saWJ0aXJwYyAtLXdpdGgtbWFwZGlyPS9ldGMvYXV0b2ZzIC0tc2JpbmRpcj0vdXNyL2JpbiIK CkZyb20gNzJiM2VhMDQ3NmZhMmVlNTExMGM1NTExMzQ1OWYxZDA3Y2QwNzNkNyBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4K RGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE1OjI5OjA0ICswMTAwClN1YmplY3Q6IFtQQVRDSCAxMy8z OV0gY2xhd3MtbWFpbDogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3Br Z3MvY2xhd3MtbWFpbC90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlv bigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY2xhd3MtbWFpbC90ZW1w bGF0ZSBiL3NyY3BrZ3MvY2xhd3MtbWFpbC90ZW1wbGF0ZQppbmRleCAwZmQ4N2RmNzgwM2UuLmI5 ODllYmYxZDhlNCAxMDA2NDQKLS0tIGEvc3JjcGtncy9jbGF3cy1tYWlsL3RlbXBsYXRlCisrKyBi L3NyY3BrZ3MvY2xhd3MtbWFpbC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUg ZmlsZSBmb3IgJ2NsYXdzLW1haWwnCiBwa2duYW1lPWNsYXdzLW1haWwKIHZlcnNpb249NC4xLjEK LXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZp Z3VyZV9hcmdzPSItLWRpc2FibGUtc3RhdGljIC0tZGlzYWJsZS1weXRob24tcGx1Z2luIC0tZGlz YWJsZS1wZXJsLXBsdWdpbgogIC0tZW5hYmxlLWVuY2hhbnQgLS1lbmFibGUtZ251dGxzIgoKRnJv bSAxMTAyNzMzNGVjZmRkYzZkOTk3ZDU2ZWM4NjgxYzQ5YjQ3OGVlZjlkIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRl OiBXZWQsIDEgRmViIDIwMjMgMTU6MzE6MTYgKzAxMDAKU3ViamVjdDogW1BBVENIIDE0LzM5XSBk b3ZlY290OiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtncy9kb3Zl Y290L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRl bGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9kb3ZlY290L3RlbXBsYXRlIGIvc3JjcGtn cy9kb3ZlY290L3RlbXBsYXRlCmluZGV4IDQ1ZjQxMDQ5MzQzNi4uNzg3YjI5YjZlYWI4IDEwMDY0 NAotLS0gYS9zcmNwa2dzL2RvdmVjb3QvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9kb3ZlY290L3Rl bXBsYXRlCkBAIC0yLDcgKzIsNyBAQAogIyByZXZidW1wIGRvdmVjb3QtcGx1Z2luLXBpZ2Vvbmhv bGUgd2hlbiB1cGRhdGluZyBkb3ZlY290IQogcGtnbmFtZT1kb3ZlY290CiB2ZXJzaW9uPTIuMy4y MAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29u ZmlndXJlX2FyZ3M9Ii0td2l0aC1tb2R1bGVkaXI9L3Vzci9saWIvZG92ZWNvdC9tb2R1bGVzIC0t d2l0aC1zcWw9cGx1Z2luCiAgLS1kaXNhYmxlLXN0YXRpYyAtLXdpdGgtcGFtIC0td2l0aC1teXNx bCAtLXdpdGgtcGdzcWwgLS13aXRoLWx1Y2VuZQoKRnJvbSA2YTM2NzM4NWE1ZmQ2NGExNmQ5N2Vm Mzg1MTc2MGUxNGNhNzVmZjhjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBN b2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTU6MzI6 MzIgKzAxMDAKU3ViamVjdDogW1BBVENIIDE1LzM5XSBkb3ZlY290LXBsdWdpbi1waWdlb25ob2xl OiByZXZidW1wIGR1ZSB0byBvcGVubGRhcAogdXBkYXRlCgotLS0KIHNyY3BrZ3MvZG92ZWNvdC1w bHVnaW4tcGlnZW9uaG9sZS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2Vy dGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZG92ZWNvdC1wbHVn aW4tcGlnZW9uaG9sZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvZG92ZWNvdC1wbHVnaW4tcGlnZW9uaG9s ZS90ZW1wbGF0ZQppbmRleCBhYzEzMzIxZTQ1MDguLmU0ZDE2OGNjNGY3OCAxMDA2NDQKLS0tIGEv c3JjcGtncy9kb3ZlY290LXBsdWdpbi1waWdlb25ob2xlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv ZG92ZWNvdC1wbHVnaW4tcGlnZW9uaG9sZS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ2RvdmVjb3QtcGx1Z2luLXBpZ2VvbmhvbGUnCiBwa2duYW1lPWRvdmVj b3QtcGx1Z2luLXBpZ2VvbmhvbGUKIHZlcnNpb249MC41LjIwCi1yZXZpc2lvbj0xCityZXZpc2lv bj0yCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS1wcmVmaXg9 L3VzcgogIC0td2l0aC1kb3ZlY290PSR7WEJQU19DUk9TU19CQVNFfS91c3IvbGliL2RvdmVjb3QK CkZyb20gYTJmNzczYzk0Mjg5NzE3Y2I0NWI2MzgxMTA3ZGJkMTM3MmMwODMyZiBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4K RGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE1OjMzOjQ1ICswMTAwClN1YmplY3Q6IFtQQVRDSCAxNi8z OV0gZXZvbHV0aW9uOiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtn cy9ldm9sdXRpb24vdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24o KyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2V2b2x1dGlvbi90ZW1wbGF0 ZSBiL3NyY3BrZ3MvZXZvbHV0aW9uL3RlbXBsYXRlCmluZGV4IGI5YTYzYWYwOTk1NS4uNWJkMjkx NzNhYzI2IDEwMDY0NAotLS0gYS9zcmNwa2dzL2V2b2x1dGlvbi90ZW1wbGF0ZQorKysgYi9zcmNw a2dzL2V2b2x1dGlvbi90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ2V2b2x1dGlvbicKIHBrZ25hbWU9ZXZvbHV0aW9uCiB2ZXJzaW9uPTMuNDYuMwotcmV2aXNp b249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGJ1aWxkX2hlbHBlcj0icWVtdSIK IGNvbmZpZ3VyZV9hcmdzPSItRFNZU0NPTkZfSU5TVEFMTF9ESVI9L2V0YwoKRnJvbSBlYjc0ZDQ3 MGQzMGZlMjkxMzQ5Njg4OGU4OGIzNzU0YWM4ZTEzNTBlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEg RmViIDIwMjMgMTU6MzU6MjcgKzAxMDAKU3ViamVjdDogW1BBVENIIDE3LzM5XSBnbnVwZzE6IHJl dmJ1bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dzL2dudXBnMS90ZW1wbGF0 ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ251cGcxL3RlbXBsYXRlIGIvc3JjcGtncy9nbnVwZzEvdGVt cGxhdGUKaW5kZXggYzBjODM3NDc3OTM5Li5lODYxNDcwMDZhYTEgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvZ251cGcxL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ251cGcxL3RlbXBsYXRlCkBAIC0xLDcg KzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ251cGcxJwogcGtnbmFtZT1nbnVwZzEKIHZl cnNpb249MS40LjIzCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1nbnUtY29u ZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS1lbmFibGUtdGhyZWFkcz1wb3NpeCAtLWVuYWJsZS1u b2V4ZWNzdGFjawogIGdudXBnX2N2X3JlZ2V4X2Jyb2tlbj1ubyIKCkZyb20gOTg3MTQxMWM1NWY0 ZTg3OWFhZTViMDM3OTYwNjJmNzUxZWJhOWJmMiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAy MDIzIDE1OjM2OjUwICswMTAwClN1YmplY3Q6IFtQQVRDSCAxOC8zOV0ga2xkYXA6IHJldmJ1bXAg ZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dzL2tsZGFwL3RlbXBsYXRlIHwgMiAr LQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0t Z2l0IGEvc3JjcGtncy9rbGRhcC90ZW1wbGF0ZSBiL3NyY3BrZ3Mva2xkYXAvdGVtcGxhdGUKaW5k ZXggYzRmNmFjZGI4N2RiLi4wNDQzOWJmZDIyYzEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mva2xkYXAv dGVtcGxhdGUKKysrIGIvc3JjcGtncy9rbGRhcC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMg VGVtcGxhdGUgZmlsZSBmb3IgJ2tsZGFwJwogcGtnbmFtZT1rbGRhcAogdmVyc2lvbj0yMi4xMi4x Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1jbWFrZQogaG9zdG1ha2VkZXBl bmRzPSJleHRyYS1jbWFrZS1tb2R1bGVzIHF0NS1xbWFrZSBxdDUtaG9zdC10b29scyBweXRob24z CiAgZ2V0dGV4dCBrY29yZWFkZG9ucyBrZG9jdG9vbHMiCgpGcm9tIGE5MWQ4YzNjMThlNjQ4MjZm MjUzMzMzYTcwNjcwZjU2OGZkYjEzZmYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEts YXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAx NTozNzoyNyArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTkvMzldIGxkYXB2aTogcmV2YnVtcCBkdWUg dG8gb3BlbmxkYXAgdXBkYXRlCgphbHNvIGZpeCBzb21lIGxpbnRpbmcgcHJvYmxlbXMKLS0tCiBz cmNwa2dzL2xkYXB2aS90ZW1wbGF0ZSB8IDggKysrKy0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGlu c2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9sZGFwdmkv dGVtcGxhdGUgYi9zcmNwa2dzL2xkYXB2aS90ZW1wbGF0ZQppbmRleCAxZGRhM2MyYWU2ZTguLjg4 NDAxYjcyMjE5NyAxMDA2NDQKLS0tIGEvc3JjcGtncy9sZGFwdmkvdGVtcGxhdGUKKysrIGIvc3Jj cGtncy9sZGFwdmkvdGVtcGxhdGUKQEAgLTEsMTUgKzEsMTUgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ2xkYXB2aScKIHBrZ25hbWU9bGRhcHZpCiB2ZXJzaW9uPTEuNwotcmV2aXNpb249MTEKK3Jl dmlzaW9uPTEyCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS13 aXRoLXNoYSIKLW1haW50YWluZXI9IkxlYWggTmV1a2lyY2hlbiA8bGVhaEB2dXh1Lm9yZz4iCiBo b3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWciCiBtYWtlZGVwZW5kcz0ibmN1cnNlcy1kZXZlbCBy ZWFkbGluZS1kZXZlbCBsaWJzYXNsLWRldmVsIHBvcHQtZGV2ZWwgbGlibGRhcC1kZXZlbCBnbGli LWRldmVsIgotbGljZW5zZT0iR1BMLTIiCitzaG9ydF9kZXNjPSJJbnRlcmFjdGl2ZSBMREFQIGNs aWVudCBmb3IgVW5peCB0ZXJtaW5hbHMiCittYWludGFpbmVyPSJMZWFoIE5ldWtpcmNoZW4gPGxl YWhAdnV4dS5vcmc+IgorbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRw Oi8vd3d3LmxpY2h0ZWJsYXUuY29tL2xkYXB2aS8iCi1zaG9ydF9kZXNjPSJBbiBpbnRlcmFjdGl2 ZSBMREFQIGNsaWVudCBmb3IgVW5peCB0ZXJtaW5hbHMiCiBkaXN0ZmlsZXM9Imh0dHA6Ly93d3cu bGljaHRlYmxhdS5jb20vZG93bmxvYWQvbGRhcHZpLSR7dmVyc2lvbn0udGFyLmd6IgogY2hlY2tz dW09NmY2MmU5MmQyMGZmMmFjMGQwNjEyNTAyNGE5MTRiODYyMmU1YjhhMGEwYzJkMzkwYmYzZTc5 OTBjYmQyZTE1MwogCgpGcm9tIDVmOTUyMDZlMmFkYzliZWQ3YmYyYjgyYjA1ZDBiM2E3NGY3OGY2 OGYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNtb2Rp bkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNTo0MDozNCArMDEwMApTdWJqZWN0 OiBbUEFUQ0ggMjAvMzldIG5mcy11dGlsczogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRl CgotLS0KIHNyY3BrZ3MvbmZzLXV0aWxzL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQs IDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9uZnMt dXRpbHMvdGVtcGxhdGUgYi9zcmNwa2dzL25mcy11dGlscy90ZW1wbGF0ZQppbmRleCAyNTJhNzM1 NWI2ODMuLjFlYTIzNzgxY2FmZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9uZnMtdXRpbHMvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9uZnMtdXRpbHMvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICduZnMtdXRpbHMnCiBwa2duYW1lPW5mcy11dGlscwogdmVyc2lvbj0y LjYuMgotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQog Y29uZmlndXJlX2FyZ3M9Ii0td2l0aC1zdGF0ZHVzZXI9bm9ib2R5IC0tZW5hYmxlLWdzcyAtLWVu YWJsZS1uZnN2NAogIC0td2l0aC1zdGF0ZWRpcj0vdmFyL2xpYi9uZnMgLS1lbmFibGUtbGlibW91 bnQtbW91bnQgLS1lbmFibGUtc3ZjZ3NzCgpGcm9tIGE4NjMxNjIxMmM5OTlhMDg1MGQ2MzE2ZWZm MGZjYzg5Nzg5YjQ5Y2YgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGlu IDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNTo0MTozMSAr MDEwMApTdWJqZWN0OiBbUEFUQ0ggMjEvMzldIGxpYnJlb2ZmaWNlOiByZXZidW1wIGR1ZSB0byBv cGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtncy9saWJyZW9mZmljZS90ZW1wbGF0ZSB8IDIgKy0K IDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvbGlicmVvZmZpY2UvdGVtcGxhdGUgYi9zcmNwa2dzL2xpYnJlb2ZmaWNlL3Rl bXBsYXRlCmluZGV4IDMxM2QzMmE0N2ZhZC4uZTlkZmM1NDQzMmFkIDEwMDY0NAotLS0gYS9zcmNw a2dzL2xpYnJlb2ZmaWNlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbGlicmVvZmZpY2UvdGVtcGxh dGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdsaWJyZW9mZmljZScKIHBr Z25hbWU9bGlicmVvZmZpY2UKIHZlcnNpb249Ny40LjMuMgotcmV2aXNpb249MQorcmV2aXNpb249 MgogYnVpbGRfc3R5bGU9bWV0YQogbWFrZV9idWlsZF90YXJnZXQ9ImJ1aWxkIgogbm9jcm9zcz0i U2V2ZXJhbCBkZXBlbmRlbmNpZXMgYXJlIG5vY3Jvc3M9eWVzIgoKRnJvbSA4NTk4YjYwNjQ4ZDhk ODAwMzM1ZjVkNzY4MDFiODlmYzZkODZkNjc0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIw MjMgMTU6NDU6NTEgKzAxMDAKU3ViamVjdDogW1BBVENIIDIyLzM5XSBzYW1iYTogcmV2YnVtcCBk dWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3Mvc2FtYmEvdGVtcGxhdGUgfCAyICst CiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL3NhbWJhL3RlbXBsYXRlIGIvc3JjcGtncy9zYW1iYS90ZW1wbGF0ZQppbmRl eCAzYmE5MzI2ODk3M2QuLjNlMTE5OWI3MGM1ZSAxMDA2NDQKLS0tIGEvc3JjcGtncy9zYW1iYS90 ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3NhbWJhL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAnc2FtYmEnCiBwa2duYW1lPXNhbWJhCiB2ZXJzaW9uPTQuMTQuMTIK LXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1aWxkX3N0eWxlPXdhZjMKIGJ1aWxkX2hlbHBlcj0i cWVtdSIKIGNvbmZpZ3VyZV9zY3JpcHQ9ImJ1aWxkdG9vbHMvYmluL3dhZiIKCkZyb20gNDM2M2E1 MjBiYmM5MTZkNjU0ZTE5Yjg0Y2FmNWQ0YzVkOWZiMzY4ZSBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAx IEZlYiAyMDIzIDE1OjUxOjI0ICswMTAwClN1YmplY3Q6IFtQQVRDSCAyMy8zOV0gbGlnaHR0cDog cmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3MvbGlnaHR0cGQvdGVt cGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24o LSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpZ2h0dHBkL3RlbXBsYXRlIGIvc3JjcGtncy9saWdo dHRwZC90ZW1wbGF0ZQppbmRleCBmYzg0ZDk0MDA3NDkuLmM2ODhhYWNhMzFmNyAxMDA2NDQKLS0t IGEvc3JjcGtncy9saWdodHRwZC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2xpZ2h0dHBkL3RlbXBs YXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbGlnaHR0cGQnCiBwa2du YW1lPWxpZ2h0dHBkCiB2ZXJzaW9uPTEuNC42OAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVp bGRfc3R5bGU9bWVzb24KIGNvbmZpZ3VyZV9hcmdzPSItRHdpdGhfYnJvdGxpPWRpc2FibGVkIC1E d2l0aF9iemlwPWRpc2FibGVkCiAgLUR3aXRoX2tyYjU9ZW5hYmxlZCAtRHdpdGhfbGRhcD1lbmFi bGVkCgpGcm9tIGU1YzgxZmQyYjliYWZkNjcxMWI3NGNjZGE5NGYxZjFlNTk3N2Q1ZWIgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5j b20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNTo1Mzo1MyArMDEwMApTdWJqZWN0OiBbUEFUQ0gg MjQvMzldIGxvZzRjeHg6IHVwZGF0ZSB0byAxLjAuMAoKLSBmaXggYSBsaW50aW5nIGlzc3VlCi0g Zml4IHN1YnBhY2FrZ2UKLS0tCiAuLi4vcGF0Y2hlcy8xMDAtYnVnZml4LUxPR0NYWC0yODQucGF0 Y2ggICAgICAgfCAxNyAtLS0tCiAuLi4vcGF0Y2hlcy8xNTAtYnVnZml4LUxPR0NYWC0zNjUucGF0 Y2ggICAgICAgfCAxOSAtLS0tLQogc3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMvMTcwLWdjYzYtZml4 LnBhdGNoICAgIHwgODAgLS0tLS0tLS0tLS0tLS0tLS0tLQogLi4uL3BhdGNoZXMvMTgwLWdjYy1m aXgtdGVzdHN1aXRlLnBhdGNoICAgICAgIHwgMjUgLS0tLS0tCiAuLi4vbG9nNGN4eC9wYXRjaGVz L21pc3NpbmctaW5jbHVkZXMucGF0Y2ggICAgfCAzOCAtLS0tLS0tLS0KIHNyY3BrZ3MvbG9nNGN4 eC90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgICB8IDE0ICsrLS0KIDYgZmlsZXMgY2hhbmdl ZCwgNyBpbnNlcnRpb25zKCspLCAxODYgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQg c3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMvMTAwLWJ1Z2ZpeC1MT0dDWFgtMjg0LnBhdGNoCiBkZWxl dGUgbW9kZSAxMDA2NDQgc3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMvMTUwLWJ1Z2ZpeC1MT0dDWFgt MzY1LnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMvMTcw LWdjYzYtZml4LnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9sb2c0Y3h4L3BhdGNo ZXMvMTgwLWdjYy1maXgtdGVzdHN1aXRlLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtn cy9sb2c0Y3h4L3BhdGNoZXMvbWlzc2luZy1pbmNsdWRlcy5wYXRjaAoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvbG9nNGN4eC9wYXRjaGVzLzEwMC1idWdmaXgtTE9HQ1hYLTI4NC5wYXRjaCBiL3NyY3Br Z3MvbG9nNGN4eC9wYXRjaGVzLzEwMC1idWdmaXgtTE9HQ1hYLTI4NC5wYXRjaApkZWxldGVkIGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggZmNmZjMzMGYzNmQ3Li4wMDAwMDAwMDAwMDAKLS0tIGEvc3Jj cGtncy9sb2c0Y3h4L3BhdGNoZXMvMTAwLWJ1Z2ZpeC1MT0dDWFgtMjg0LnBhdGNoCisrKyAvZGV2 L251bGwKQEAgLTEsMTcgKzAsMCBAQAotIyEgL2Jpbi9zaCAvdXNyL3NoYXJlL2RwYXRjaC9kcGF0 Y2gtcnVuCi0jIyAxMDAtYnVnZml4LUxPR0NYWC0yODQuZHBhdGNoIGJ5ICA8bWF0dGhld0Bsb2Nh bGhvc3Q+Ci0jIwotIyMgQWxsIGxpbmVzIGJlZ2lubmluZyB3aXRoIGAjIyBEUDonIGFyZSBhIGRl c2NyaXB0aW9uIG9mIHRoZSBwYXRjaC4KLSMjIERQOiBGaXhlcyBidWlsZCBlcnJvciBvbiBBSVgg d2l0aCB4bGNfcgotCi0tLS0gYS9zcmMvdGVzdC9jcHAvaGVscGVycy9kYXRldGltZWRhdGVmb3Jt YXR0ZXN0Y2FzZS5jcHAJMjAwOC0wMy0zMSAxNTozMzowOS4wMDAwMDAwMDAgLTA3MDAKLSsrKyBi L3NyYy90ZXN0L2NwcC9oZWxwZXJzL2RhdGV0aW1lZGF0ZWZvcm1hdHRlc3RjYXNlLmNwcAkyMDA4 LTA3LTE3IDA2OjQ5OjQzLjAwMDAwMDAwMCAtMDcwMAotQEAgLTE4MSw3ICsxODEsNyBAQAotICAg ICAgICAgLy8gIG91dHB1dCB0aGUgdXNpbmcgU1RMCi0gICAgICAgICAvLwotICAgICAgICAgc3Rk OjpiYXNpY19vc3RyaW5nc3RyZWFtPGxvZ2NoYXI+IGJ1ZmZlcjsKLS0jaWYgZGVmaW5lZChfVVNF RkFDKQotKyNpZiBkZWZpbmVkKF9NU0NfVkVSKSAmJiBfTVNDX1ZFUiA8IDEzMDAKLSAgICAgICAg ICBfVVNFRkFDKGxvY2FsZSwgc3RkOjp0aW1lX3B1dDxsb2djaGFyPikKLSAgICAgICAgICAgICAg LnB1dChidWZmZXIsIGJ1ZmZlciwgJmRhdGUsIGZtdC5jX3N0cigpLCBmbXQuY19zdHIoKSArIGZt dC5sZW5ndGgoKSk7Ci0gI2Vsc2UKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbG9nNGN4eC9wYXRjaGVz LzE1MC1idWdmaXgtTE9HQ1hYLTM2NS5wYXRjaCBiL3NyY3BrZ3MvbG9nNGN4eC9wYXRjaGVzLzE1 MC1idWdmaXgtTE9HQ1hYLTM2NS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg MGNmOTZiNjdhZTRhLi4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMv MTUwLWJ1Z2ZpeC1MT0dDWFgtMzY1LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTkgKzAsMCBA QAotRGVzY3JpcHRpb246IGZpeGVzIHRlc3Qgc3VpdGUgdG8gbm90IGV4cGVjdCB0aGUgeWVhciB0 byBiZSBiZXR3ZWVuIDIwMDAgYW5kIDIwMDkuCi1PcmlnaW46IHVwc3RyZWFtLCBodHRwOi8vc3Zu LmFwYWNoZS5vcmcvdmlld3ZjP3ZpZXc9cmV2JnJldj05NTQzMzUKLUJ1ZzogaHR0cHM6Ly9pc3N1 ZXMuYXBhY2hlLm9yZy9qaXJhL2Jyb3dzZS9MT0dDWFgtMzY1Ci1Gb3J3YXJkZWQ6IG5vdC1uZWVk ZWQKLUFwcGxpZWQtVXBzdHJlYW06IGNvbW1pdCA5NTQzMzUKLUxhc3QtVXBkYXRlOiAyMDE0LTAz LTE0Ci0tLS0KLVRoaXMgcGF0Y2ggaGVhZGVyIGZvbGxvd3MgREVQLTM6IGh0dHA6Ly9kZXAuZGVi aWFuLm5ldC9kZXBzL2RlcDMvCi0tLS0gYS9zcmMvdGVzdC9jcHAvdXRpbC9maWx0ZXIuaAkyMDEw LzA2LzE0IDAwOjI0OjQyCTk1NDMzNAotKysrIGIvc3JjL3Rlc3QvY3BwL3V0aWwvZmlsdGVyLmgJ MjAxMC8wNi8xNCAwMDozMDo0Mwk5NTQzMzUKLUBAIC0zMSw3ICszMSw3IEBACi0gI2RlZmluZSBC QVNJQ19QQVQgIlxcWzB4WzAtOUEtRl0qXSAoRkFUQUx8RVJST1J8V0FSTnxJTkZPfERFQlVHKSIK LSAjZGVmaW5lIElTTzg2MDFfUEFUICJbMC05XVxcezRcXH0tWzAtOV1cXHsyXFx9LVswLTldXFx7 MlxcfSBbMC05XVxcezJcXH06WzAtOV1cXHsyXFx9OlswLTldXFx7MlxcfSxbMC05XVxcezNcXH0i Ci0gI2RlZmluZSBBQlNPTFVURV9EQVRFX0FORF9USU1FX1BBVCBcCi0tICAgICAgICAiWzAtOV1c XHsxLDJcXH0gLiogMjAwWzAtOV0gWzAtOV1cXHsyXFx9OlswLTldXFx7MlxcfTpbMC05XVxcezJc XH0sWzAtOV1cXHszXFx9IgotKyAgICAgICAgIlswLTldXFx7MSwyXFx9IC4qIDJbMC05XVswLTld WzAtOV0gWzAtOV1cXHsyXFx9OlswLTldXFx7MlxcfTpbMC05XVxcezJcXH0sWzAtOV1cXHszXFx9 IgotICNkZWZpbmUgQUJTT0xVVEVfVElNRV9QQVQgIlswLTJdWzAtOV06WzAtOV1bMC05XTpbMC05 XVswLTldLFswLTldWzAtOV1bMC05XSIKLSAjZGVmaW5lIFJFTEFUSVZFX1RJTUVfUEFUICJeWzAt OV0rIgotIApkaWZmIC0tZ2l0IGEvc3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMvMTcwLWdjYzYtZml4 LnBhdGNoIGIvc3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMvMTcwLWdjYzYtZml4LnBhdGNoCmRlbGV0 ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjZmEwYzJmNTMxOWMuLjAwMDAwMDAwMDAwMAotLS0g YS9zcmNwa2dzL2xvZzRjeHgvcGF0Y2hlcy8xNzAtZ2NjNi1maXgucGF0Y2gKKysrIC9kZXYvbnVs bApAQCAtMSw4MCArMCwwIEBACi1EZXNjcmlwdGlvbjogRml4IEZUQkZTIHdpdGggR0NDNgotIEdD QzYgaXMgbW9yZSBwaWNraWVyIG9uIHRydW5jYXRpbmcsIHNvIHRoaXMgcGF0Y2ggZml4ZXMgdGhl IG5hcnJvd2luZyBjb252ZXJzaW9uIGVycm9ycy4KLUF1dGhvcjogVG9iaWFzIEZyb3N0IDx0b2Jp QGRlYmlhbi5vcmc+Ci1CdWctRGViaWFuOiBodHRwczovL2J1Z3MuZGViaWFuLm9yZy9jZ2ktYmlu L2J1Z3JlcG9ydC5jZ2k/YnVnPTgxMTc2OAotRm9yd2FyZGVkOiBodHRwczovL2lzc3Vlcy5hcGFj aGUub3JnL2ppcmEvYnJvd3NlL0xPR0NYWC00ODIKLUFwcGxpZWQtVXBzdHJlYW06IHllcywgdGFy Z2V0ZWQgdmVyc2lvbiAwLjExLjAKLUxhc3QtVXBkYXRlOiAyMDE2LTA3LTAxIChEZWJDYW1wMTYp Ci0tLS0KLVRoaXMgcGF0Y2ggaGVhZGVyIGZvbGxvd3MgREVQLTM6IGh0dHA6Ly9kZXAuZGViaWFu Lm5ldC9kZXBzL2RlcDMvCi0tLS0gYS9zcmMvbWFpbi9jcHAvbG9jYXRpb25pbmZvLmNwcAotKysr IGIvc3JjL21haW4vY3BwL2xvY2F0aW9uaW5mby5jcHAKLUBAIC0xNDgsNyArMTQ4LDcgQEAKLSAg ICAgaWYgKGxpbmVOdW1iZXIgPT0gLTEgJiYgZmlsZU5hbWUgPT0gTkEgJiYgbWV0aG9kTmFtZSA9 PSBOQV9NRVRIT0QpIHsKLSAgICAgICAgICBvcy53cml0ZU51bGwocCk7Ci0gICAgIH0gZWxzZSB7 Ci0tICAgICAgICBjaGFyIHByb2xvZ1tdID0gewotKyAgICAgICAgdW5zaWduZWQgY2hhciBwcm9s b2dbXSA9IHsKLSAgICAgICAgICAweDcyLCAweDAwLCAweDIxLCAweDZGLCAweDcyLCAweDY3LCAw eDJFLCAKLSAgICAgICAgICAweDYxLCAweDcwLCAweDYxLCAweDYzLCAweDY4LCAweDY1LCAweDJF LCAweDZDLCAKLSAgICAgICAgICAweDZGLCAweDY3LCAweDM0LCAweDZBLCAweDJFLCAweDczLCAw eDcwLCAweDY5LCAKLUBAIC0xNjEsNyArMTYxLDcgQEAKLSAgICAgICAgICAgICAgICAgMHg2MSwg MHg3NiwgMHg2MSwgMHgyRiwgMHg2QywgMHg2MSwgMHg2RSwgMHg2NywgCi0gICAgICAgICAgICAg ICAgIDB4MkYsIDB4NTMsIDB4NzQsIDB4NzIsIDB4NjksIDB4NkUsIDB4NjcsIDB4M0IsCi0gICAg ICAgICAgMHg3OCwgMHg3MCB9OwotLSAgICAgIG9zLndyaXRlUHJvbG9nKCJvcmcuYXBhY2hlLmxv ZzRqLnNwaS5Mb2NhdGlvbkluZm8iLCAyLCBwcm9sb2csIHNpemVvZihwcm9sb2cpLCBwKTsKLSsg ICAgICBvcy53cml0ZVByb2xvZygib3JnLmFwYWNoZS5sb2c0ai5zcGkuTG9jYXRpb25JbmZvIiwg MiwgKGNoYXIgKilwcm9sb2csIHNpemVvZihwcm9sb2cpLCBwKTsKLSAgICAgICAgIGNoYXIqIGxp bmUgPSBwLml0b2EobGluZU51bWJlcik7Ci0gICAgICAgICAvLwotICAgICAgICAgLy8gICBjb25z dHJ1Y3QgSmF2YS1saWtlIGZ1bGxJbmZvIChyZXBsYWNlICI6OiIgd2l0aCAiLiIpCi0tLS0gYS9z cmMvbWFpbi9jcHAvbG9nZ2luZ2V2ZW50LmNwcAotKysrIGIvc3JjL21haW4vY3BwL2xvZ2dpbmdl dmVudC5jcHAKLUBAIC0yMzYsNyArMjM2LDcgQEAKLSAKLSAKLSB2b2lkIExvZ2dpbmdFdmVudDo6 d3JpdGVQcm9sb2coT2JqZWN0T3V0cHV0U3RyZWFtJiBvcywgUG9vbCYgcCkgIHsKLS0gICAgIGNo YXIgY2xhc3NEZXNjW10gPSB7Ci0rICAgICB1bnNpZ25lZCBjaGFyIGNsYXNzRGVzY1tdID0gewot ICAgICAgICAgMHg3MiwgMHgwMCwgMHgyMSwgCi0gICAgICAgICAweDZGLCAweDcyLCAweDY3LCAw eDJFLCAweDYxLCAweDcwLCAweDYxLCAweDYzLCAKLSAgICAgICAgIDB4NjgsIDB4NjUsIDB4MkUs IDB4NkMsIDB4NkYsIDB4NjcsIDB4MzQsIDB4NkEsIAotQEAgLTI5Miw3ICsyOTIsNyBAQAotICAg ICAgICAgMHgzQiwgMHg3OCwgMHg3MCB9OyAKLSAKLSAgICAgIG9zLndyaXRlUHJvbG9nKCJvcmcu YXBhY2hlLmxvZzRqLnNwaS5Mb2dnaW5nRXZlbnQiLCAKLS0gICAgICAgIDgsIGNsYXNzRGVzYywg c2l6ZW9mKGNsYXNzRGVzYyksIHApOwotKyAgICAgICAgOCwgKGNoYXIgKikgY2xhc3NEZXNjLCBz aXplb2YoY2xhc3NEZXNjKSwgcCk7Ci0gfQotIAotIHZvaWQgTG9nZ2luZ0V2ZW50Ojp3cml0ZSho ZWxwZXJzOjpPYmplY3RPdXRwdXRTdHJlYW0mIG9zLCBQb29sJiBwKSBjb25zdCB7Ci0tLS0gYS9z cmMvbWFpbi9jcHAvb2JqZWN0b3V0cHV0c3RyZWFtLmNwcAotKysrIGIvc3JjL21haW4vY3BwL29i amVjdG91dHB1dHN0cmVhbS5jcHAKLUBAIC0zNiw4ICszNiw4IEBACi0gICAgICAgIG9iamVjdEhh bmRsZSgweDdFMDAwMCksCi0gICAgICAgIGNsYXNzRGVzY3JpcHRpb25zKG5ldyBDbGFzc0Rlc2Ny aXB0aW9uTWFwKCkpCi0gewotLSAgIGNoYXIgc3RhcnRbXSA9IHsgMHhBQywgMHhFRCwgMHgwMCwg MHgwNSB9OwotLSAgIEJ5dGVCdWZmZXIgYnVmKHN0YXJ0LCBzaXplb2Yoc3RhcnQpKTsKLSsgICB1 bnNpZ25lZCBjaGFyIHN0YXJ0W10gPSB7IDB4QUMsIDB4RUQsIDB4MDAsIDB4MDUgfTsKLSsgICBC eXRlQnVmZmVyIGJ1ZigoY2hhciopc3RhcnQsIHNpemVvZihzdGFydCkpOwotICAgIG9zLT53cml0 ZShidWYsIHApOwotIH0KLSAKLUBAIC04MSw3ICs4MSw3IEBACi0gICAgIC8vCi0gICAgIC8vICBU Q19PQkpFQ1QgYW5kIHRoZSBjbGFzc0Rlc2MgZm9yIGphdmEudXRpbC5IYXNodGFibGUKLSAgICAg Ly8KLS0gICAgY2hhciBwcm9sb2dbXSA9IHsKLSsgICAgdW5zaWduZWQgY2hhciBwcm9sb2dbXSA9 IHsKLSAgICAgICAgIDB4NzIsIDB4MDAsIDB4MTMsIDB4NkEsIDB4NjEsIDB4NzYsIDB4NjEsIAot ICAgICAgICAgMHgyRSwgMHg3NSwgMHg3NCwgMHg2OSwgMHg2QywgMHgyRSwgMHg0OCwgMHg2MSwg Ci0gICAgICAgICAweDczLCAweDY4LCAweDc0LCAweDYxLCAweDYyLCAweDZDLCAweDY1LCAweDEz LCAKLUBAIC05MCw3ICs5MCw3IEBACi0gICAgICAgICAweDY0LCAweDQ2LCAweDYxLCAweDYzLCAw eDc0LCAweDZGLCAweDcyLCAweDQ5LCAKLSAgICAgICAgIDB4MDAsIDB4MDksIDB4NzQsIDB4Njgs IDB4NzIsIDB4NjUsIDB4NzMsIDB4NjgsIAotICAgICAgICAgMHg2RiwgMHg2QywgMHg2NCwgMHg3 OCwgMHg3MCAgfTsKLS0gICAgd3JpdGVQcm9sb2coImphdmEudXRpbC5IYXNodGFibGUiLCAxLCBw cm9sb2csIHNpemVvZihwcm9sb2cpLCBwKTsKLSsgICAgd3JpdGVQcm9sb2coImphdmEudXRpbC5I YXNodGFibGUiLCAxLCAoY2hhciAqKSBwcm9sb2csIHNpemVvZihwcm9sb2cpLCBwKTsKLSAgICAg Ly8KLSAgICAgLy8gICBsb2FkRmFjdG9yID0gMC43NSwgdGhyZXNob2xkID0gNSwgYmxvY2tkYXRh IHN0YXJ0LCBidWNrZXRzLnNpemUgPSA3Ci0gICAgIGNoYXIgZGF0YVtdID0geyAweDNGLCAweDQw LCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDA1LCAKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvbG9nNGN4eC9wYXRjaGVzLzE4MC1nY2MtZml4LXRlc3RzdWl0ZS5wYXRjaCBiL3NyY3BrZ3Mv bG9nNGN4eC9wYXRjaGVzLzE4MC1nY2MtZml4LXRlc3RzdWl0ZS5wYXRjaApkZWxldGVkIGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggNzFiNzE0NjdhMTMxLi4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtn cy9sb2c0Y3h4L3BhdGNoZXMvMTgwLWdjYy1maXgtdGVzdHN1aXRlLnBhdGNoCisrKyAvZGV2L251 bGwKQEAgLTEsMjUgKzAsMCBAQAotRGVzY3JpcHRpb246IEZpeCBuYXJyb3dpbmcgZXJyb3JzIGFs c28gZm9yIHRoZSB0ZXN0c3VpdGUKLUF1dGhvcjogVG9iaWFzIEZyb3N0IDx0b2JpQGRlYmlhbi5v cmc+Ci1MYXN0LVVwZGF0ZTogMjAxNi0xMC0yMwotLS0tCi1UaGlzIHBhdGNoIGhlYWRlciBmb2xs b3dzIERFUC0zOiBodHRwOi8vZGVwLmRlYmlhbi5uZXQvZGVwcy9kZXAzLwotLS0tIGEvc3JjL3Rl c3QvY3BwL3htbC9kb210ZXN0Y2FzZS5jcHAKLSsrKyBiL3NyYy90ZXN0L2NwcC94bWwvZG9tdGVz dGNhc2UuY3BwCi1AQCAtMTkwLDcgKzE5MCw3IEBACi0gICAgICAgICAgICAgICAgIERPTUNvbmZp Z3VyYXRvcjo6Y29uZmlndXJlKExPRzRDWFhfVEVTVF9TVFIoImlucHV0L3htbC9ET01UZXN0Q2Fz ZTMueG1sIikpOwotICAgICAgICAgICAgICAgICBMT0c0Q1hYX0lORk8obG9nZ2VyLCAiRmlsZSBu YW1lIGlzIGV4cGVjdGVkIHRvIGVuZCB3aXRoIGEgc3VwZXJzY3JpcHQgMyIpOwotICNpZiBMT0c0 Q1hYX0xPR0NIQVJfSVNfVVRGOAotLSAgICAgICAgICAgICAgICBjb25zdCBsb2djaGFyIGZuYW1l W10gPSB7IDB4NkYsIDB4NzUsIDB4NzQsIDB4NzAsIDB4NzUsIDB4NzQsIDB4MkYsIDB4NjQsIDB4 NkYsIDB4NkQsIDB4QzIsIDB4QjMsIDAgfTsKLSsgICAgICAgICAgICAgICAgY29uc3QgbG9nY2hh ciBmbmFtZVtdID0geyAweDZGLCAweDc1LCAweDc0LCAweDcwLCAweDc1LCAweDc0LCAweDJGLCAw eDY0LCAweDZGLCAweDZELCAobG9nY2hhcikweEMyLCAobG9nY2hhcikweEIzLCAwIH07Ci0gI2Vs c2UKLSAgICAgICAgICAgICAgICAgY29uc3QgbG9nY2hhciBmbmFtZVtdID0geyAweDZGLCAweDc1 LCAweDc0LCAweDcwLCAweDc1LCAweDc0LCAweDJGLCAweDY0LCAweDZGLCAweDZELCAweEIzLCAw IH07Ci0gI2VuZGlmCi1AQCAtMjA5LDcgKzIwOSw3IEBACi0gICAgICAgICAgICAgICAgIERPTUNv bmZpZ3VyYXRvcjo6Y29uZmlndXJlKExPRzRDWFhfVEVTVF9TVFIoImlucHV0L3htbC9ET01UZXN0 Q2FzZTQueG1sIikpOwotICAgICAgICAgICAgICAgICBMT0c0Q1hYX0lORk8obG9nZ2VyLCAiRmls ZSBuYW1lIGlzIGV4cGVjdGVkIHRvIGVuZCB3aXRoIGFuIGlkZW9ncmFwaGljIDQiKTsKLSAjaWYg TE9HNENYWF9MT0dDSEFSX0lTX1VURjgKLS0gICAgICAgICAgICAgICAgY29uc3QgbG9nY2hhciBm bmFtZVtdID0geyAweDZGLCAweDc1LCAweDc0LCAweDcwLCAweDc1LCAweDc0LCAweDJGLCAweDY0 LCAweDZGLCAweDZELCAweEUzLCAweDg2LCAweDk1LCAwIH07Ci0rICAgICAgICAgICAgICAgIGNv bnN0IGxvZ2NoYXIgZm5hbWVbXSA9IHsgMHg2RiwgKGxvZ2NoYXIpMHg3NSwgMHg3NCwgMHg3MCwg MHg3NSwgMHg3NCwgMHgyRiwgMHg2NCwgMHg2RiwgMHg2RCwgKGxvZ2NoYXIpMHhFMywgKGxvZ2No YXIpMHg4NiwgKGxvZ2NoYXIpMHg5NSwgMCB9OwotICNlbHNlCi0gICAgICAgICAgICAgICAgIGNv bnN0IGxvZ2NoYXIgZm5hbWVbXSA9IHsgMHg2RiwgMHg3NSwgMHg3NCwgMHg3MCwgMHg3NSwgMHg3 NCwgMHgyRiwgMHg2NCwgMHg2RiwgMHg2RCwgMHgzMTk1LCAwIH07Ci0gI2VuZGlmCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2xvZzRjeHgvcGF0Y2hlcy9taXNzaW5nLWluY2x1ZGVzLnBhdGNoIGIvc3Jj cGtncy9sb2c0Y3h4L3BhdGNoZXMvbWlzc2luZy1pbmNsdWRlcy5wYXRjaApkZWxldGVkIGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggYTYzYmZmZDk1YzU3Li4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtn cy9sb2c0Y3h4L3BhdGNoZXMvbWlzc2luZy1pbmNsdWRlcy5wYXRjaAorKysgL2Rldi9udWxsCkBA IC0xLDM4ICswLDAgQEAKLWRpZmYgLU5hdXIgYXBhY2hlLWxvZzRjeHgtMC4xMC4wLm9yaWcvc3Jj L2V4YW1wbGVzL2NwcC9jb25zb2xlLmNwcCBhcGFjaGUtbG9nNGN4eC0wLjEwLjAvc3JjL2V4YW1w bGVzL2NwcC9jb25zb2xlLmNwcAotLS0tIGEvc3JjL2V4YW1wbGVzL2NwcC9jb25zb2xlLmNwcAky MDA4LTA0LTAxIDAwOjM0OjUyLjAwMDAwMDAwMCArMDIwMAotKysrIGIvc3JjL2V4YW1wbGVzL2Nw cC9jb25zb2xlLmNwcAkyMDA4LTA1LTA2IDA1OjQwOjUyLjAwMDAwMDAwMCArMDIwMAotQEAgLTE1 LDcgKzE1LDEwIEBACi0gICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCi0gICovCi0g Ci0tI2luY2x1ZGUgPHN0ZGxpYi5oPgotKyNpbmNsdWRlIDxjc3RkaW8+Ci0rI2luY2x1ZGUgPGNz dGRsaWI+Ci0rI2luY2x1ZGUgPGNzdHJpbmc+Ci0rI2luY2x1ZGUgPHN0ZGludC5oPgotICNpbmNs dWRlIDxsb2c0Y3h4L2xvZ2dlci5oPgotICNpbmNsdWRlIDxsb2c0Y3h4L2NvbnNvbGVhcHBlbmRl ci5oPgotICNpbmNsdWRlIDxsb2c0Y3h4L3NpbXBsZWxheW91dC5oPgotZGlmZiAtTmF1ciBhcGFj aGUtbG9nNGN4eC0wLjEwLjAub3JpZy9zcmMvbWFpbi9jcHAvaW5wdXRzdHJlYW1yZWFkZXIuY3Bw IGFwYWNoZS1sb2c0Y3h4LTAuMTAuMC9zcmMvbWFpbi9jcHAvaW5wdXRzdHJlYW1yZWFkZXIuY3Bw Ci0tLS0gYS9zcmMvbWFpbi9jcHAvaW5wdXRzdHJlYW1yZWFkZXIuY3BwCTIwMDgtMDQtMDEgMDA6 MzQ6MDkuMDAwMDAwMDAwICswMjAwCi0rKysgYi9zcmMvbWFpbi9jcHAvaW5wdXRzdHJlYW1yZWFk ZXIuY3BwCTIwMDgtMDUtMDYgMDU6MzI6MzEuMDAwMDAwMDAwICswMjAwCi1AQCAtMjEsNiArMjEs OCBAQAotICNpbmNsdWRlIDxsb2c0Y3h4L2hlbHBlcnMvcG9vbC5oPgotICNpbmNsdWRlIDxsb2c0 Y3h4L2hlbHBlcnMvYnl0ZWJ1ZmZlci5oPgotIAotKyNpbmNsdWRlIDxjc3RyaW5nPgotKwotIHVz aW5nIG5hbWVzcGFjZSBsb2c0Y3h4OwotIHVzaW5nIG5hbWVzcGFjZSBsb2c0Y3h4OjpoZWxwZXJz OwotIAotZGlmZiAtTmF1ciBzcmMvbWFpbi9jcHAvc29ja2V0b3V0cHV0c3RyZWFtLmNwcCBhcGFj aGUtbG9nNGN4eC0wLjEwLjAvc3JjL21haW4vY3BwL3NvY2tldG91dHB1dHN0cmVhbS5jcHAKLS0t LSBhL3NyYy9tYWluL2NwcC9zb2NrZXRvdXRwdXRzdHJlYW0uY3BwCTIwMDgtMDQtMDEgMDA6MzQ6 MDkuMDAwMDAwMDAwICswMjAwCi0rKysgYi9zcmMvbWFpbi9jcHAvc29ja2V0b3V0cHV0c3RyZWFt LmNwcAkyMDA4LTA1LTA2IDA1OjM1OjU1LjAwMDAwMDAwMCArMDIwMAotQEAgLTIwLDYgKzIwLDgg QEAKLSAjaW5jbHVkZSA8bG9nNGN4eC9oZWxwZXJzL3NvY2tldC5oPgotICNpbmNsdWRlIDxsb2c0 Y3h4L2hlbHBlcnMvYnl0ZWJ1ZmZlci5oPgotIAotKyNpbmNsdWRlIDxjc3RyaW5nPgotKwotIHVz aW5nIG5hbWVzcGFjZSBsb2c0Y3h4OwotIHVzaW5nIG5hbWVzcGFjZSBsb2c0Y3h4OjpoZWxwZXJz OwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9sb2c0Y3h4L3RlbXBsYXRlIGIvc3JjcGtncy9sb2c0Y3h4 L3RlbXBsYXRlCmluZGV4IDJmNDkwNWExNjA5Mi4uOTYzNzQzZjYzNjdhIDEwMDY0NAotLS0gYS9z cmNwa2dzL2xvZzRjeHgvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9sb2c0Y3h4L3RlbXBsYXRlCkBA IC0xLDIyICsxLDIyIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdsb2c0Y3h4JwogcGtnbmFtZT1s b2c0Y3h4Ci12ZXJzaW9uPTAuMTAuMAotcmV2aXNpb249NAotYnVpbGRfc3R5bGU9Z251LWNvbmZp Z3VyZQotbWFrZWRlcGVuZHM9ImxpYnhtbDItZGV2ZWwgYXByLWRldmVsIGFwci11dGlsLWRldmVs IGdkYm0tZGV2ZWwiCi1zaG9ydF9kZXNjPSJBIEMrKyBMb2dnaW5nIExpYnJhcnkgYmFzZWQgb24g TG9nNEoiCit2ZXJzaW9uPTEuMC4wCityZXZpc2lvbj0xCitidWlsZF9zdHlsZT1jbWFrZQoraG9z dG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIHppcCIKK21ha2VkZXBlbmRzPSJsaWJ4bWwyLWRldmVs IGFwci1kZXZlbCBhcHItdXRpbC1kZXZlbCBnZGJtLWRldmVsIGJvb3N0LWRldmVsIgorc2hvcnRf ZGVzYz0iQysrIExvZ2dpbmcgTGlicmFyeSBiYXNlZCBvbiBMb2c0SiIKIG1haW50YWluZXI9Ik9y cGhhbmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJBcGFjaGUtMi4wIgogaG9t ZXBhZ2U9Imh0dHBzOi8vbG9nZ2luZy5hcGFjaGUub3JnL2xvZzRjeHgvIgogZGlzdGZpbGVzPSJo dHRwczovL2FyY2hpdmUuYXBhY2hlLm9yZy9kaXN0L2xvZ2dpbmcvbG9nNGN4eC8ke3ZlcnNpb259 L2FwYWNoZS1sb2c0Y3h4LSR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09MGRlMDM5NjIyMGE5 NTY2YTU4MDE2NmU2NmIzOTY3NGNiNDBlZmQyMTc2ZjUyYWQyYzY1NDg2Yzk5YzkyMGM4YworY2hl Y2tzdW09NmRmOWYxZjY4MjY1MGRlNjA0NTMwOTQ3M2Q1YjJmZTFmNzk4YTAzY2ViMzZhNzRhNWIy MWY1NTIwOTYyZDMyZgogCiBsb2c0Y3h4LWRldmVsX3BhY2thZ2UoKSB7CiAJc2hvcnRfZGVzYys9 IiAtIGRldmVsb3BtZW50IGZpbGVzIgogCWRlcGVuZHM9IiR7c291cmNlcGtnfT49JHt2ZXJzaW9u fV8ke3JldmlzaW9ufSIKIAlwa2dfaW5zdGFsbCgpIHsKIAkJdm1vdmUgdXNyL2luY2x1ZGUKLQkJ dm1vdmUgdXNyL2xpYi8qLmEKIAkJdm1vdmUgdXNyL2xpYi8qLnNvCiAJCXZtb3ZlIHVzci9saWIv cGtnY29uZmlnCiAJfQoKRnJvbSA2ODYwY2QzNDFiNmZiMjUwYTg5MjYwZWQ0NDBkMjNkMTNmMjgz NjE5IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9k aW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTU6NTU6MjUgKzAxMDAKU3ViamVj dDogW1BBVENIIDI1LzM5XSBsdWE1NC1sdWFsZGFwOiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1 cGRhdGUKCi0tLQogc3JjcGtncy9sdWE1NC1sdWFsZGFwL3RlbXBsYXRlIHwgMiArLQogMSBmaWxl IGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9sdWE1NC1sdWFsZGFwL3RlbXBsYXRlIGIvc3JjcGtncy9sdWE1NC1sdWFsZGFwL3RlbXBs YXRlCmluZGV4IDQ0OTJkYmVhYjY1MC4uOGMwM2VlZjdlZjRkIDEwMDY0NAotLS0gYS9zcmNwa2dz L2x1YTU0LWx1YWxkYXAvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9sdWE1NC1sdWFsZGFwL3RlbXBs YXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbHVhNTQtbHVhbGRhcCcK IHBrZ25hbWU9bHVhNTQtbHVhbGRhcAogdmVyc2lvbj0xLjIuNQotcmV2aXNpb249MworcmV2aXNp b249NAogY3JlYXRlX3dya3NyYz15ZXMKIGJ1aWxkX3N0eWxlPWdudS1tYWtlZmlsZQogaG9zdG1h a2VkZXBlbmRzPSJwa2ctY29uZmlnIgoKRnJvbSA2MzdmNjExZGI4ODUxZmJlODJiMDE4N2Y3NTQ3 NWZmOTcyODVhZDE2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8 a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTU6NTY6MjIgKzAx MDAKU3ViamVjdDogW1BBVENIIDI2LzM5XSBtb25pdG9yaW5nLXBsdWdpbnM6IHJldmJ1bXAgZHVl IHRvIG9wZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dzL21vbml0b3JpbmctcGx1Z2lucy90ZW1w bGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbW9uaXRvcmluZy1wbHVnaW5zL3RlbXBsYXRlIGIvc3Jj cGtncy9tb25pdG9yaW5nLXBsdWdpbnMvdGVtcGxhdGUKaW5kZXggOWZlYzU1NjJhOWNjLi4yMGZi ZDEzYTUwMjAgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbW9uaXRvcmluZy1wbHVnaW5zL3RlbXBsYXRl CisrKyBiL3NyY3BrZ3MvbW9uaXRvcmluZy1wbHVnaW5zL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBA QAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbW9uaXRvcmluZy1wbHVnaW5zJwogcGtnbmFtZT1tb25p dG9yaW5nLXBsdWdpbnMKIHZlcnNpb249Mi4zLjIKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1 aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSItLWxpYmV4ZWNkaXI9L3Vz ci9saWIvbW9uaXRvcmluZy1wbHVnaW5zIgogaG9zdG1ha2VkZXBlbmRzPSJmcGluZyBvcGVuc3No IHBvc3RmaXggcHJvY3BzLW5nIHNtYmNsaWVudCBuZXQtc25tcCBiaW5kLXV0aWxzIHN1ZG8iCgpG cm9tIGZmNzU4YjE1NDc4NDZkMWVjYjljNmFhYzkzYzkyNDExMjE1YjhhMDAgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRh dGU6IFdlZCwgMSBGZWIgMjAyMyAxNTo1NzoxMiArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMjcvMzld IG5zcy1wYW0tbGRhcGQ6IHJldmJ1bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNw a2dzL25zcy1wYW0tbGRhcGQvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNl cnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL25zcy1wYW0tbGRh cGQvdGVtcGxhdGUgYi9zcmNwa2dzL25zcy1wYW0tbGRhcGQvdGVtcGxhdGUKaW5kZXggOTJjYmQ3 NTQxN2I0Li4yYjNhMzVhZTg1YTMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbnNzLXBhbS1sZGFwZC90 ZW1wbGF0ZQorKysgYi9zcmNwa2dzL25zcy1wYW0tbGRhcGQvdGVtcGxhdGUKQEAgLTEsNyArMSw3 IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICduc3MtcGFtLWxkYXBkJwogcGtnbmFtZT1uc3MtcGFt LWxkYXBkCiB2ZXJzaW9uPTAuOS4xMgotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5 bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZW5hYmxlLXNhc2wgLS1lbmFibGUt a2VyYmVyb3MgLS13aXRoLXBhbS1zZWNsaWItZGlyPS91c3IvbGliL3NlY3VyaXR5LyIKIGNvbmZf ZmlsZXM9Ii9ldGMvbnNsY2QuY29uZiIKCkZyb20gYmIxYjM3NTYwNzMzZjBiMjFkMjljMGRmMDZh YWYzMWJkZjIxZWU3ZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4g PGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE2OjE2OjEwICsw MTAwClN1YmplY3Q6IFtQQVRDSCAyOC8zOV0gcGhwOiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1 cGRhdGUKCi0tLQogc3JjcGtncy9waHAvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwg MSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3BocC90 ZW1wbGF0ZSBiL3NyY3BrZ3MvcGhwL3RlbXBsYXRlCmluZGV4IDM5ZTRkMTYxYjY0OC4uZTljNmY2 MDI0NjMxIDEwMDY0NAotLS0gYS9zcmNwa2dzL3BocC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3Bo cC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3BocCcKIHBr Z25hbWU9cGhwCiB2ZXJzaW9uPTcuNC4zMwotcmV2aXNpb249MQorcmV2aXNpb249MgogaG9zdG1h a2VkZXBlbmRzPSJiaXNvbiBwa2ctY29uZmlnIGFwYWNoZS1kZXZlbCIKIG1ha2VkZXBlbmRzPSJh cGFjaGUtZGV2ZWwgZW5jaGFudDItZGV2ZWwgZnJlZXRkcy1kZXZlbCBmcmVldHlwZS1kZXZlbCBn ZGJtLWRldmVsCiAgZ21wLWRldmVsIGxpYmN1cmwtZGV2ZWwgbGlianBlZy10dXJiby1kZXZlbCBs aWJtYXJpYWRiY2xpZW50LWRldmVsCgpGcm9tIGRkOThkYjFkNzA1OWM4MzAzODkzMDUxOGQ4YzIw MjA4ZmNmMTc3YzMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxr bGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNjoxNzowOSArMDEw MApTdWJqZWN0OiBbUEFUQ0ggMjkvMzldIHBocDguMDogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAg dXBkYXRlCgotLS0KIHNyY3BrZ3MvcGhwOC4wL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5n ZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9w aHA4LjAvdGVtcGxhdGUgYi9zcmNwa2dzL3BocDguMC90ZW1wbGF0ZQppbmRleCA3NGM1MGRhMGU0 NmYuLjFjMjE1ZDFmODQxYSAxMDA2NDQKLS0tIGEvc3JjcGtncy9waHA4LjAvdGVtcGxhdGUKKysr IGIvc3JjcGtncy9waHA4LjAvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdwaHA4LjAnCiBwa2duYW1lPXBocDguMAogdmVyc2lvbj04LjAuMjUKLXJldmlzaW9u PTEKK3JldmlzaW9uPTIKIF9waHBfdmVyc2lvbj04LjAKIGhvc3RtYWtlZGVwZW5kcz0iYmlzb24g cGtnLWNvbmZpZyBhcGFjaGUtZGV2ZWwiCiBtYWtlZGVwZW5kcz0iYXBhY2hlLWRldmVsIGVuY2hh bnQyLWRldmVsIGZyZWV0ZHMtZGV2ZWwgZnJlZXR5cGUtZGV2ZWwgZ2RibS1kZXZlbAoKRnJvbSBi MzRhODNlMjY1ZjRkYjNkYWMyMGQzZGQ0ODYyZGUwNjQ3ZmM4YTdmIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBX ZWQsIDEgRmViIDIwMjMgMTY6MTk6MTYgKzAxMDAKU3ViamVjdDogW1BBVENIIDMwLzM5XSBwaHA4 LjE6IHJldmJ1bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dzL3BocDguMS90 ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlv bigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcGhwOC4xL3RlbXBsYXRlIGIvc3JjcGtncy9waHA4 LjEvdGVtcGxhdGUKaW5kZXggZjE5Njg4YjUyZjZjLi5mMTQ0MTQ2OTdlNzkgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvcGhwOC4xL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcGhwOC4xL3RlbXBsYXRlCkBA IC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncGhwOC4xJwogcGtnbmFtZT1waHA4 LjEKIHZlcnNpb249OC4xLjEyCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBfcGhwX3ZlcnNpb249 OC4xCiBob3N0bWFrZWRlcGVuZHM9ImJpc29uIHBrZy1jb25maWcgYXBhY2hlLWRldmVsIgogbWFr ZWRlcGVuZHM9ImFwYWNoZS1kZXZlbCBlbmNoYW50Mi1kZXZlbCBmcmVldGRzLWRldmVsIGZyZWV0 eXBlLWRldmVsIGdkYm0tZGV2ZWwKCkZyb20gNjEwNzkyYTBjYzI1NDY1ZjUzZGY5Y2NlNmQwYjBi ZTBhNDNiYzRjZSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGts YXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE2OjIwOjA5ICswMTAw ClN1YmplY3Q6IFtQQVRDSCAzMS8zOV0gcG9zdGZpeDogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAg dXBkYXRlCgotLS0KIHNyY3BrZ3MvcG9zdGZpeC90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFu Z2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv cG9zdGZpeC90ZW1wbGF0ZSBiL3NyY3BrZ3MvcG9zdGZpeC90ZW1wbGF0ZQppbmRleCBiMWMyY2Q0 ZTgwOTAuLjk5N2EyNDJiOTE5MSAxMDA2NDQKLS0tIGEvc3JjcGtncy9wb3N0Zml4L3RlbXBsYXRl CisrKyBiL3NyY3BrZ3MvcG9zdGZpeC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ3Bvc3RmaXgnCiBwa2duYW1lPXBvc3RmaXgKIHZlcnNpb249My43LjQKLXJl dmlzaW9uPTEKK3JldmlzaW9uPTIKIGhvc3RtYWtlZGVwZW5kcz0icGVybCBtNCIKIG1ha2VkZXBl bmRzPSJpY3UtZGV2ZWwgbGlibGRhcC1kZXZlbCBsaWJtYXJpYWRiY2xpZW50LWRldmVsIHBjcmUy LWRldmVsCiAgcG9zdGdyZXNxbC1saWJzLWRldmVsIHNxbGl0ZS1kZXZlbCIKCkZyb20gYzRhMDY1 ZDg2ZTI2M2JiMTAzNWE0NGM1Y2FjODkwNmRjMTBkZGE3MiBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAx IEZlYiAyMDIzIDE2OjIxOjM2ICswMTAwClN1YmplY3Q6IFtQQVRDSCAzMi8zOV0gcHl0aG9uMy1s ZGFwOiB1cGRhdGUgdG8gMy40LjMKCmJ1aWxkIHdhcyBmYWlsaW5nIGFmdGVyIHJldmJ1bXAKcmVt b3ZlIHVubmVjZXNzYXJ5IHNlZCBleHByZXNzaW9uCi0tLQogc3JjcGtncy9weXRob24zLWxkYXAv dGVtcGxhdGUgfCAxMiArKysrLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMo KyksIDggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9weXRob24zLWxkYXAvdGVt cGxhdGUgYi9zcmNwa2dzL3B5dGhvbjMtbGRhcC90ZW1wbGF0ZQppbmRleCBjZmY3ZGYwNTVlNzgu LjQxZTRlZGIxZjM1NCAxMDA2NDQKLS0tIGEvc3JjcGtncy9weXRob24zLWxkYXAvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9weXRob24zLWxkYXAvdGVtcGxhdGUKQEAgLTEsMTAgKzEsMTAgQEAKICMg VGVtcGxhdGUgZmlsZSBmb3IgJ3B5dGhvbjMtbGRhcCcKIHBrZ25hbWU9cHl0aG9uMy1sZGFwCiBf cGtnbmFtZT1weXRob24tbGRhcAotdmVyc2lvbj0zLjIuMAotcmV2aXNpb249NQordmVyc2lvbj0z LjQuMworcmV2aXNpb249MQogYnVpbGRfc3R5bGU9cHl0aG9uMy1tb2R1bGUKLWhvc3RtYWtlZGVw ZW5kcz0icHl0aG9uMy1zZXR1cHRvb2xzIgoraG9zdG1ha2VkZXBlbmRzPSJweXRob24zLXNldHVw dG9vbHMgcHl0aG9uMy13aGVlbCBweXRob24zLXB5YXNuMS1tb2R1bGVzIgogbWFrZWRlcGVuZHM9 InB5dGhvbjMtZGV2ZWwgbGlibGRhcC1kZXZlbCIKIGRlcGVuZHM9InB5dGhvbjMtcHlhc24xLW1v ZHVsZXMiCiBjaGVja2RlcGVuZHM9Im9wZW5sZGFwIG9wZW5sZGFwLXRvb2xzIgpAQCAtMTMsOCAr MTMsNCBAQCBtYWludGFpbmVyPSJNaWNoYWVsIEFsZHJpZGdlIDxtYWxkcmlkZ2VAdm9pZGxpbnV4 Lm9yZz4iCiBsaWNlbnNlPSJQeXRob24tMi4wIgogaG9tZXBhZ2U9Imh0dHBzOi8vd3d3LnB5dGhv bi1sZGFwLm9yZyIKIGRpc3RmaWxlcz0iJHtQWVBJX1NJVEV9L3AvJHtfcGtnbmFtZX0vJHtfcGtn bmFtZX0tJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT03ZDFjNGIxNTM3NWE1MzM1NjRhYWQz ZDNkZWFkZTc4OTIyMWU0NTAwNTJiMjFlYmI5NzIwZmI4MjJlY2NkYjhlCi0KLXByZV9idWlsZCgp IHsKLQlzZWQgLWkgInM6XmxpYnMgPSAuKjpsaWJzID0gbGRhcF9yIGxiZXIgc2FzbDIgc3NsIGNy eXB0bzoiIHNldHVwLmNmZwotfQorY2hlY2tzdW09YWIyNmM1MTlhMGVmMmE0NDNhMmExMDM5MWZh M2M1Y2I1MmQ3ODcxMzIzMzk5ZGI5NDllYmZhYTlmMjVlZTJhMAoKRnJvbSBkOTZlYzM3NWZjMDJl MzY1M2ZjYjM3ZmJkOWVlN2JjZDcyOGNlNDU4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIw MjMgMTY6MjM6MzkgKzAxMDAKU3ViamVjdDogW1BBVENIIDMzLzM5XSBxdW90YTogcmV2YnVtcCBk dWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3MvcXVvdGEvdGVtcGxhdGUgfCAyICst CiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL3F1b3RhL3RlbXBsYXRlIGIvc3JjcGtncy9xdW90YS90ZW1wbGF0ZQppbmRl eCBhNWRjN2JiZGI1ZjQuLjU1OWVmYWVlMjk5NCAxMDA2NDQKLS0tIGEvc3JjcGtncy9xdW90YS90 ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3F1b3RhL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAncXVvdGEnCiBwa2duYW1lPXF1b3RhCiB2ZXJzaW9uPTQuMDkKLXJl dmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIG1ha2VfYnVp bGRfYXJncz0iVj0xIgogY29uZl9maWxlcz0iL2V0Yy9xdW90YWdycGFkbWlucyAvZXRjL3F1b3Rh dGFiIC9ldGMvd2FybnF1b3RhLmNvbmYiCgpGcm9tIDk3NzI0OGUxY2M2YTg5YTUxODQ1ZTg4Mjg3 NDMxMGIzMmM5MzNlMmMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGlu IDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNjozNjoyMiAr MDEwMApTdWJqZWN0OiBbUEFUQ0ggMzQvMzldIHNlYWhvcnNlOiByZXZidW1wIGR1ZSB0byBvcGVu bGRhcCB1cGRhdGUKCi0tLQogc3JjcGtncy9zZWFob3JzZS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmls ZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3Mvc2VhaG9yc2UvdGVtcGxhdGUgYi9zcmNwa2dzL3NlYWhvcnNlL3RlbXBsYXRlCmluZGV4 IGJlOGJhNDU0YjRhOC4uZGE5MjIzNGQ4MjE2IDEwMDY0NAotLS0gYS9zcmNwa2dzL3NlYWhvcnNl L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvc2VhaG9yc2UvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdzZWFob3JzZScKIHBrZ25hbWU9c2VhaG9yc2UKIHZlcnNp b249NDMuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxk X2hlbHBlcj1naXIKIGhvc3RtYWtlZGVwZW5kcz0iZ2NyLWRldmVsIGdldHRleHQgZ2xpYi1kZXZl bCBnbnVwZyBpdHN0b29sIGxpYnNlY3JldC1kZXZlbAoKRnJvbSAzZTUwNDBjNTZjMThkNDAzOWFl NDFkODU5MTBlYzkwMGI0YmNhZTE2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFy YSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTY6 Mzg6MzUgKzAxMDAKU3ViamVjdDogW1BBVENIIDM1LzM5XSBzcXVpZDogcmV2YnVtcCBkdWUgdG8g b3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3Mvc3F1aWQvdGVtcGxhdGUgfCAyICstCiAxIGZp bGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9z cmNwa2dzL3NxdWlkL3RlbXBsYXRlIGIvc3JjcGtncy9zcXVpZC90ZW1wbGF0ZQppbmRleCA0OWI5 ZWI5ZDdiOTEuLjIyMzhkMWM3ZGY1MiAxMDA2NDQKLS0tIGEvc3JjcGtncy9zcXVpZC90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL3NxdWlkL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0 ZSBmaWxlIGZvciAnc3F1aWQnCiBwa2duYW1lPXNxdWlkCiB2ZXJzaW9uPTUuNwotcmV2aXNpb249 MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9 IgogIC0tc3lzY29uZmRpcj0vZXRjL3NxdWlkCgpGcm9tIDVmNjVmMGRiM2NiNTFhZGQ4MDJjMjZl ZTlhNTVjM2MyNGU4ZmYxYTUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1v ZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNjozOToz MCArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMzYvMzldIHNzc2Q6IHJldmJ1bXAgZHVlIHRvIG9wZW5s ZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dzL3Nzc2QvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hh bmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dz L3Nzc2QvdGVtcGxhdGUgYi9zcmNwa2dzL3Nzc2QvdGVtcGxhdGUKaW5kZXggM2JmZWIzMmVmMTBk Li40NGU2ZjNiOWE2OWQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvc3NzZC90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL3Nzc2QvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICdzc3NkJwogcGtnbmFtZT1zc3NkCiB2ZXJzaW9uPTIuNC4wCi1yZXZpc2lvbj01CityZXZpc2lv bj02CiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiAjIGNvbmZpZ3VyZSBjaGVja3Mgc3lzLnZl cnNpb25bOjNdIGZvciBQeXRob24gdmVyc2lvbmluZywgc28gMy4xMCBiZWNvbWVzIDMuMTsKICMg dW50aWwgdGhpcyBpcyBmaXhlZCB1cHN0cmVhbSwgbWFudWFsbHkgZGVmaW5lIGFtX2N2X3B5dGhv bl92ZXJzaW9uIHRvIGNpcmN1bXZlbnQKCkZyb20gODE3MzNlNDEwNDExNjQwN2VhNzA3MDIzNDYz ODMwMTA3NDlkMDViYyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4g PGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE2OjQxOjMwICsw MTAwClN1YmplY3Q6IFtQQVRDSCAzNy8zOV0gc3lscGhlZWQ6IHJldmJ1bXAgZHVlIHRvIG9wZW5s ZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dzL3N5bHBoZWVkL3RlbXBsYXRlIHwgMiArLQogMSBmaWxl IGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9zeWxwaGVlZC90ZW1wbGF0ZSBiL3NyY3BrZ3Mvc3lscGhlZWQvdGVtcGxhdGUKaW5kZXgg N2ZiZjI1Mjc2ZmJjLi4yNWFhNzUzZTZkNGQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvc3lscGhlZWQv dGVtcGxhdGUKKysrIGIvc3JjcGtncy9zeWxwaGVlZC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3N5bHBoZWVkJwogcGtnbmFtZT1zeWxwaGVlZAogdmVyc2lv bj0zLjcuMAotcmV2aXNpb249OAorcmV2aXNpb249OQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3Vy ZQogY29uZmlndXJlX2FyZ3M9Ii0tZGlzYWJsZS1jb21wZmFjZSAtLWRpc2FibGUtZ3Rrc3BlbGwg LS1lbmFibGUtbGRhcCAtLXdpdGgtZ3BnbWUtcHJlZml4PSR7WEJQU19DUk9TU19CQVNFfS91c3Ii CiBob3N0bWFrZWRlcGVuZHM9ImF1dG9tYWtlIGxpYnRvb2wgcGtnLWNvbmZpZyBmbGV4IGdldHRl eHQtZGV2ZWwgZ3RrKy1kZXZlbCBncGdtZS1kZXZlbCBnbGliLWRldmVsIgoKRnJvbSAzYjNkNDZh NTg1ZDlhMDgyMjcxMWNkMDE1ZmFjODdmYTQ1ZGE2NTk5IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEg RmViIDIwMjMgMTY6NDI6NDcgKzAxMDAKU3ViamVjdDogW1BBVENIIDM4LzM5XSB2aXJ0dW9zbzog dXBkYXRlIHRvIDcuMi44Cgp0ZXN0IHN1aXRlIHdhcyBmYWlsaW5nIG9uIHJldmJ1bXAKCi0gcmVt b3ZlIHBhdGNoZXMgdGhhdCBubyBsb25nZXIgYXBwbHkKLSBhZGQgcGF0Y2ggdGhhdCByZW1vdmVz IGdpdCByZXZpc2lvbiBmcm9tIGdyYXBocWwKLSBkaXNhYmxlIHN0YXRpYyBsaWJyYXJpZXMgYXMg d2UncmUgcmVtb3ZpbmcgdGhlbSBhZnRlciBpbnN0YWxsIGFueXdheQotIGFkZCB3aGljaCB0byBo b3N0bWFrZWRlcGVuZHMKLSBhZGQgbWlzc2luZyBjaGVja2RlcGVuZHMKLS0tCiAuLi4vdmlydHVv c28vcGF0Y2hlcy9hbHdheXMtaWVlZS1mbG9hdHMucGF0Y2ggfCAgIDQ2IC0KIHNyY3BrZ3Mvdmly dHVvc28vcGF0Y2hlcy9maXgtZ3JhcGhxbC5wYXRjaCAgICB8ICAgMTEgKwogLi4uL3ZpcnR1b3Nv L3BhdGNoZXMvZml4LXV0ZjgtYml0dGVzdC5wYXRjaCAgIHwgICAxNSAtCiBzcmNwa2dzL3ZpcnR1 b3NvL3BhdGNoZXMvbXVzbC1wYWdlX3NpemUucGF0Y2ggfCAgIDM0IC0KIC4uLi9yZW1vdmUtb3Bl bnNzbC12ZXJzaW9uLWNoZWNrLnBhdGNoICAgICAgICB8ICAgNDggLQogLi4uL3ZpcnR1b3NvL3Bh dGNoZXMvc3NsLWNvbm5lY3Qtc3RhdGUucGF0Y2ggIHwgICAxNSAtCiBzcmNwa2dzL3ZpcnR1b3Nv L3BhdGNoZXMvc3NsMS4xLnBhdGNoICAgICAgICAgfCAxNDAwIC0tLS0tLS0tLS0tLS0tLS0tCiBz cmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvc3NsMS4xX21vcmUucGF0Y2ggICAgfCAgIDIwIC0KIHNy Y3BrZ3MvdmlydHVvc28vcGF0Y2hlcy91c2UtbWtzdGVtcC5wYXRjaCAgICB8ICAgMTggLQogc3Jj cGtncy92aXJ0dW9zby90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgIHwgICAxNiArLQogMTAg ZmlsZXMgY2hhbmdlZCwgMTggaW5zZXJ0aW9ucygrKSwgMTYwNSBkZWxldGlvbnMoLSkKIGRlbGV0 ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvYWx3YXlzLWllZWUtZmxvYXRz LnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL2ZpeC1n cmFwaHFsLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy92aXJ0dW9zby9wYXRjaGVz L2ZpeC11dGY4LWJpdHRlc3QucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3ZpcnR1 b3NvL3BhdGNoZXMvbXVzbC1wYWdlX3NpemUucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNw a2dzL3ZpcnR1b3NvL3BhdGNoZXMvcmVtb3ZlLW9wZW5zc2wtdmVyc2lvbi1jaGVjay5wYXRjaAog ZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9zc2wtY29ubmVjdC1z dGF0ZS5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9z c2wxLjEucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMv c3NsMS4xX21vcmUucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3ZpcnR1b3NvL3Bh dGNoZXMvdXNlLW1rc3RlbXAucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3ZpcnR1b3NvL3Bh dGNoZXMvYWx3YXlzLWllZWUtZmxvYXRzLnBhdGNoIGIvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVz L2Fsd2F5cy1pZWVlLWZsb2F0cy5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg NjliNTAzNDIxNGY3Li4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVz L2Fsd2F5cy1pZWVlLWZsb2F0cy5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDQ2ICswLDAgQEAK LUZyb20gYmM4ZTk4OTBkZThjOTg2NmU2ZTFmNDljODM1NWViZWU5MTU1NzllNCBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKLUZyb206IHE2NiA8ZGFuaWVsQG9jdGFmb3JnZS5vcmc+Ci1EYXRlOiBX ZWQsIDI5IEphbiAyMDIwIDEyOjUwOjQ2ICswMTAwCi1TdWJqZWN0OiBbUEFUQ0ggMS8yXSBhbHdh eXMgdXNlIElFRUUgZmxvYXRzCi0KLVdlIGRvbid0IGJ1aWxkIG9uIGFueSBwbGF0Zm9ybXMgd2hl cmUgdGhpcyBpcyBub3QgdGhlIGNhc2UuCi0KLUZpeGVzIHBsYXRmb3JtcyBmb3Igd2hpY2ggdGhp cyBpcyBub3QgY2hlY2tlZC4KLS0tLQotIGxpYnNyYy9Eay9Ea21hcnNoYWwuYyB8IDIwICstLS0t LS0tLS0tLS0tLS0tLS0tCi0gMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxOSBkZWxl dGlvbnMoLSkKLQotZGlmZiAtLWdpdCBsaWJzcmMvRGsvRGttYXJzaGFsLmMgbGlic3JjL0RrL0Rr bWFyc2hhbC5jCi1pbmRleCBkYTE1YTIxLi5iMmI2YzcxIDEwMDY0NAotLS0tIGEvbGlic3JjL0Rr L0RrbWFyc2hhbC5jCi0rKysgYi9saWJzcmMvRGsvRGttYXJzaGFsLmMKLUBAIC0zMSwyNSArMzEs NyBAQAotICMgaW5jbHVkZSA8bmV0aW5ldC9pbi5oPgkJCSAvKiBmb3IgbnRvaGwsIGh0b25sICov Ci0gI2VuZGlmCi0gCi0tI2lmIGRlZmluZWQgKGkzODYpIHx8IFwKLS0gICAgZGVmaW5lZCAoX1dJ TjY0KSB8fCBcCi0tICAgIGRlZmluZWQgKF9NX0lYODYpIHx8IFwKLS0gICAgZGVmaW5lZCAoX01f QUxQSEEpIHx8IFwKLS0gICAgZGVmaW5lZCAobWM2ODAwMCkgfHwgXAotLSAgICBkZWZpbmVkIChz cGFyYykgfHwgXAotLSAgICBkZWZpbmVkIChfX3g4Nl82NCkgfHwgXAotLSAgICBkZWZpbmVkIChf X2FscGhhKSB8fCBcCi0tICAgIGRlZmluZWQgKF9fcG93ZXJwYykgfHwgXAotLSAgICBkZWZpbmVk IChtaXBzKSB8fCBcCi0tICAgIGRlZmluZWQgKF9fT1MyX18pIHx8IFwKLS0gICAgZGVmaW5lZCAo X0lCTVIyKQotLSMgZGVmaW5lIF9JRUVFX0ZMT0FUUwotLSNlbGlmIGRlZmluZWQgKE9QTF9TT1VS Q0UpCi0tIyBpbmNsdWRlIDxsaWJycGMuaD4KLS0jZWxzZQotLSMgaW5jbHVkZSA8cnBjL3R5cGVz Lmg+Ci0tIyBpbmNsdWRlIDxycGMveGRyLmg+Ci0tI2VuZGlmCi0rI2RlZmluZSBfSUVFRV9GTE9B VFMKLSAKLSBtYWNyb19jaGFyX2Z1bmMgcmVhZHRhYmxlWzI1Nl07Ci0gc2VzX3dyaXRlX2Z1bmMg d3JpdGV0YWJsZVsyNTZdOwotLS0gCi0yLjI0LjAKLQpkaWZmIC0tZ2l0IGEvc3JjcGtncy92aXJ0 dW9zby9wYXRjaGVzL2ZpeC1ncmFwaHFsLnBhdGNoIGIvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVz L2ZpeC1ncmFwaHFsLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw MC4uZjA0YjNlNDVjNDdhCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy92aXJ0dW9zby9wYXRj aGVzL2ZpeC1ncmFwaHFsLnBhdGNoCkBAIC0wLDAgKzEsMTEgQEAKKy0tLSBhL2JpbnNyYy9ncmFw aHFsL2dyYXBocWxfcGx1Z2luLmMJMjAyMy0wMi0wMSAyMToxNDoxOC4xNDg0Nzg1MDAgKzAxMDAK KysrKyBiL2JpbnNyYy9ncmFwaHFsL2dyYXBocWxfcGx1Z2luLmMJMjAyMi0xMC0xOSAxNDo0NDox NC4wMDAwMDAwMDAgKzAyMDAKK0BAIC0xNzMsNyArMTczLDcgQEAKKyAKKyBzdGF0aWMgdW5pdF92 ZXJzaW9uX3QgcGx1Z2luX2dyYXBocWxfdmVyc2lvbiA9IHsKKyAgICJHcmFwaFFML1NQQVJRTCBC cmlkZ2UiLAkvKiE8IFRpdGxlIG9mIHVuaXQsIGZpbGxlZCBieSB1bml0ICovCistICBHUUxfQlJJ REdFX1ZFUiAiICgiIEdJVF9IRUFEX1NUUiAiKSIsCS8qITwgVmVyc2lvbiBudW1iZXIsIGZpbGxl ZCBieSB1bml0ICovCisrICBHUUxfQlJJREdFX1ZFUiwJCS8qITwgVmVyc2lvbiBudW1iZXIsIGZp bGxlZCBieSB1bml0ICovCisgICAiT3BlbkxpbmsgU29mdHdhcmUiLAkJLyohPCBQbHVnaW4ncyBk ZXZlbG9wZXIsIGZpbGxlZCBieSB1bml0ICovCisgICAiU3VwcG9ydCBmdW5jdGlvbnMgZm9yIEdy YXBoUUwvU1BBUlFMIEJyaWRnZSIsCS8qITwgQW55IGFkZGl0aW9uYWwgaW5mbywgZmlsbGVkIGJ5 IHVuaXQgKi8KKyAgIDAsCQkJCS8qITwgRXJyb3IgbWVzc2FnZSwgZmlsbGVkIGJ5IHVuaXQgbG9h ZGVyICovCmRpZmYgLS1naXQgYS9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvZml4LXV0ZjgtYml0 dGVzdC5wYXRjaCBiL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9maXgtdXRmOC1iaXR0ZXN0LnBh dGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4NWU4NGE2N2VmM2MuLjAwMDAwMDAw MDAwMAotLS0gYS9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvZml4LXV0ZjgtYml0dGVzdC5wYXRj aAorKysgL2Rldi9udWxsCkBAIC0xLDE1ICswLDAgQEAKLVNvdXJjZTogQHB1bGxtb2xsCi1VcHN0 cmVhbTogbm8KLVJlYXNvbjogZXhwcmVzc2lvbiByZXF1aXJlcyBiaW5hcnkgQU5ELCBub3QgbG9n aWNhbAotCi0tLS0gYS9saWJzcmMvdXRpbC9wY3JlbGliL3BjcmVfc3R1ZHkuYwkyMDE4LTA4LTE2 IDAxOjA2OjIxLjAwMDAwMDAwMCArMDIwMAotKysrIGIvbGlic3JjL3V0aWwvcGNyZWxpYi9wY3Jl X3N0dWR5LmMJMjAyMC0wMS0yNyAxNTo0NDo1Ny43MTU4MjEzNTUgKzAxMDAKLUBAIC00MzIsNyAr NDMyLDcgQEAKLSAgICAgICAgICAgZm9yIChjID0gMDsgYyA8IDE2OyBjKyspIHN0YXJ0X2JpdHNb Y10gfD0gdGNvZGVbY107Ci0gICAgICAgICAgIGZvciAoYyA9IDEyODsgYyA8IDI1NjsgYysrKQot ICAgICAgICAgICAgIHsKLS0gICAgICAgICAgICBpZiAoKHRjb2RlW2MvOF0gJiYgKDEgPDwgKGMm NykpKSAhPSAwKQotKyAgICAgICAgICAgIGlmICgodGNvZGVbYy84XSAmICgxIDw8IChjJjcpKSkg IT0gMCkKLSAgICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgIGludCBkID0gKGMgPj4gNikg fCAweGMwOyAgICAgICAgICAgIC8qIFNldCBiaXQgZm9yIHRoaXMgc3RhcnRlciAqLwotICAgICAg ICAgICAgICAgc3RhcnRfYml0c1tkLzhdIHw9ICgxIDw8IChkJjcpKTsgICAgLyogYW5kIHRoZW4g c2tpcCBvbiB0byB0aGUgKi8KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9t dXNsLXBhZ2Vfc2l6ZS5wYXRjaCBiL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9tdXNsLXBhZ2Vf c2l6ZS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzNhOWFiZGQwZjM5Li4w MDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL211c2wtcGFnZV9zaXpl LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMzQgKzAsMCBAQAotRnJvbSAxMjU2Njk4MjFkOTVm Zjk4OWJmOTQxNjFiOGUyNDk3YmZjYTlkMGFiIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJv bTogcTY2IDxkYW5pZWxAb2N0YWZvcmdlLm9yZz4KLURhdGU6IFdlZCwgMjkgSmFuIDIwMjAgMTI6 NTQ6MTQgKzAxMDAKLVN1YmplY3Q6IFtQQVRDSCAyLzJdIFVzZSBtb3JlIHBvcnRhYmxlIHBhZ2Ug c2l6ZSBjaGVjawotCi1UaGlzIGZpeGVzIG11c2wgYnVpbGRzLgotLS0tCi0gbGlic3JjL0RrL3Rs c2YuaCB8IDMgKystCi0gMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlv bigtKQotCi1kaWZmIC0tZ2l0IGxpYnNyYy9Eay90bHNmLmggbGlic3JjL0RrL3Rsc2YuaAotaW5k ZXggZGRjZTQ3OC4uYTk2ODdmNCAxMDA2NDQKLS0tLSBhL2xpYnNyYy9Eay90bHNmLmgKLSsrKyBi L2xpYnNyYy9Eay90bHNmLmgKLUBAIC0yMCw2ICsyMCw3IEBACi0gI2RlZmluZSBfVExTRl9IXwot IAotICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KLSsjaW5jbHVkZSA8dW5pc3RkLmg+Ci0gCi0gZXh0 ZXJuIHNpemVfdCBpbml0X21lbW9yeV9wb29sKHNpemVfdCwgdm9pZCAqKTsKLSBleHRlcm4gc2l6 ZV90IGdldF91c2VkX3NpemUodm9pZCAqKTsKLUBAIC0xNTksNyArMTYwLDcgQEAgZXh0ZXJuIHZv aWQgdGxzZl9iYXNlX2ZyZWUgKHZvaWQgKiBjLCBzaXplX3Qgc3opOwotIAotICNkZWZpbmUgREVG QVVMVF9BUkVBX1NJWkUgKDEwMjQqMTApCi0gCi0tI2RlZmluZSBQQUdFX1NJWkUgKGdldHBhZ2Vz aXplKCkpCi0rI2RlZmluZSBQQUdFX1NJWkUgKChpbnQpc3lzY29uZihfU0NfUEFHRVNJWkUpKQot IAotICNpZm5kZWYgV0lOMzIKLSAjaWZkZWYgVVNFX1BSSU5URgotLS0gCi0yLjI0LjAKLQpkaWZm IC0tZ2l0IGEvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL3JlbW92ZS1vcGVuc3NsLXZlcnNpb24t Y2hlY2sucGF0Y2ggYi9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvcmVtb3ZlLW9wZW5zc2wtdmVy c2lvbi1jaGVjay5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzA5NGZiYjZh YjY0Li4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL3JlbW92ZS1v cGVuc3NsLXZlcnNpb24tY2hlY2sucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw0OCArMCwwIEBA Ci1Tb3VyY2U6IEBwdWxsbW9sbAotVXBzdHJlYW06IG5vCi1SZWFzb246IEVuYWJsZSBzdWJkaXIt b2JqZWN0cyBhbmQgc3RyaXAgb3BlbnNzbCB2ZXJzaW9uIGNoZWNrIHdoaWNoIGZhaWxzIGZvciBs aWJyZXNzbAotCi0tLS0gYS9jb25maWd1cmUuYWMJMjAxOC0wOC0xNiAwMTowNjoyMS4wMDAwMDAw MDAgKzAyMDAKLSsrKyBiL2NvbmZpZ3VyZS5hYwkyMDIwLTAxLTI3IDE1OjAyOjM2Ljk0NjkyMjY2 MyArMDEwMAotQEAgLTU4LDcgKzU4LDcgQEAKLSBkbmwJQU1fSU5JVF9BVVRPTUFLRShbMS44XSkK LSBkbmwJQU1fSU5JVF9BVVRPTUFLRShbMS45IHRhci11c3Rhcl0pCi0gZG5sCi0tQU1fSU5JVF9B VVRPTUFLRShbMS45IHRhci11c3Rhcl0pCi0rQU1fSU5JVF9BVVRPTUFLRShbMS45IHRhci11c3Rh ciBzdWJkaXItb2JqZWN0c10pCi0gCi0gQU1fTUFJTlRBSU5FUl9NT0RFCi0gCi1AQCAtODY3LDMy ICs4NjcsNiBAQAotIAk7OwotIGVzYWMKLSAKLS1BQ19NU0dfQ0hFQ0tJTkcoW09wZW5TU0wgdmVy c2lvbl0pCi0tQUNfVFJZX0NPTVBJTEUoWwotLSNpbmNsdWRlIDxvcGVuc3NsL29wZW5zc2x2Lmg+ Ci0tXSwgWwotLSNpZiBPUEVOU1NMX1ZFUlNJT05fTlVNQkVSIDwgMHgwMDkwODAxZkwKLS0jZXJy b3IgT3BlblNTTCB2ZXJzaW9uIHRvbyBvbGQgCi0tI2VuZGlmCi0tICAgIF0sWwotLSAgICAgIEFD X01TR19SRVNVTFQoWz49IDAuOS44ZV0pCi0tICAgIF0sWwotLSAgICAgIEFDX01TR19FUlJPUihb T3BlblNTTCB2ZXJzaW9uIDAuOS44ZSBvciBncmVhdGVyIGlzIHJlcXVpcmVkLl0pCi0tICAgIF0p Ci0tCi0tQUNfTVNHX0NIRUNLSU5HKFtPcGVuU1NMIHZlcnNpb25dKQotLUFDX1RSWV9DT01QSUxF KFsKLS0jaW5jbHVkZSA8b3BlbnNzbC9vcGVuc3Nsdi5oPgotLV0sWwotLSNpZiBPUEVOU1NMX1ZF UlNJT05fTlVNQkVSID49IDB4MTAxMDAwMGZMCi0tI2Vycm9yIE9wZW5TU0wgdmVyc2lvbiB0b28g bmV3Ci0tI2VuZGlmCi0tICAgIF0sWwotLSAgICAgIEFDX01TR19SRVNVTFQoWzwgMS4xLjBdKQot LSAgICBdLFsKLS0gICAgICBBQ19NU0dfRVJST1IoW09wZW5TU0wgdmVyc2lvbiAxLjEuMCBvciBn cmVhdGVyIGlzIGN1cnJlbnRseSBub3Qgc3VwcG9ydGVkLl0pCi0tICAgIF0pCi0tCi0gQUNfTVNH X0NIRUNLSU5HKFt1c2FiaWxpdHkgb2YgdGhlIE9wZW5TU0wgaGVhZGVyIGZpbGVzIGFuZCBsaWJy YXJ5IGluICR7b3BlbnNzbF9kaXJ9XSkKLSBBQ19UUllfUlVOKFsKLSAjaW5jbHVkZSA8b3BlbnNz bC9yc2EuaD4KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9zc2wtY29ubmVj dC1zdGF0ZS5wYXRjaCBiL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9zc2wtY29ubmVjdC1zdGF0 ZS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzk1NjZlM2I2ZGZkLi4wMDAw MDAwMDAwMDAKLS0tIGEvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL3NzbC1jb25uZWN0LXN0YXRl LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTUgKzAsMCBAQAotU291cmNlOiBAcHVsbG1vbGwK LVVwc3RyZWFtOiBubwotUmVhc29uOiBVc2UgdGhlIHByb3BlciBpbnRlcmZhY2Ugb2YgbGlicmVz c2wgd2hpY2ggZG9lcyBub3QgZXhwb3NlIHRoZSBpbnRlcm5hbCBzdHJ1Y3R1cmUgb2YgU1NMCi0K LS0tLSBhL2xpYnNyYy9XaS9odHRwLmMJMjAxOC0wOC0xNiAwMTowNjoyMS4wMDAwMDAwMDAgKzAy MDAKLSsrKyBiL2xpYnNyYy9XaS9odHRwLmMJMjAyMC0wMS0yNyAxNTowOTo1My4yODQ5MDUyNjUg KzAxMDAKLUBAIC05OTQ5LDcgKzk5NDksNyBAQAotIAkgIGNsaV9zc2xfZ2V0X2Vycm9yX3N0cmlu ZyAoZXJyX2J1Ziwgc2l6ZW9mIChlcnJfYnVmKSk7Ci0gCSAgc3Fscl9uZXdfZXJyb3IgKCI0MjAw MCIsICIuLjAwMiIsICJTU0xfZG9faGFuZHNoYWtlIGZhaWxlZCAlcyIsIGVycl9idWYpOwotIAl9 Ci0tICAgICAgc3NsLT5zdGF0ZSA9IFNTTF9TVF9BQ0NFUFQ7Ci0rICAgICAgU1NMX3NldF9hY2Nl cHRfc3RhdGUgKHNzbCk7Ci0gICAgICAgd2hpbGUgKFNTTF9yZW5lZ290aWF0ZV9wZW5kaW5nIChz c2wpICYmIGN0ciA8IDEwMDApCi0gCXsKLSAJICB0aW1lb3V0X3QgdG8gPSB7IDAsIDEwMDAgfTsK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9zc2wxLjEucGF0Y2ggYi9zcmNw a2dzL3ZpcnR1b3NvL3BhdGNoZXMvc3NsMS4xLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCA5ODg3NDk5NDY0ODAuLjAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3ZpcnR1b3Nv L3BhdGNoZXMvc3NsMS4xLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTQwMCArMCwwIEBACi1E ZXNjcmlwdGlvbjogRml4IEZUQkZTIHdpdGggb3BlbnNzbCAxLjEKLUF1dGhvcjogU2ViYXN0aWFu IEFuZHJ6ZWogU2lld2lvciA8c2ViYXN0aWFuQGJyZWFrcG9pbnQuY2M+Ci1CdWctRGViaWFuOiBo dHRwczovL2J1Z3MuZGViaWFuLm9yZy84Mjg1OTQKLUZvcndhcmRlZDogaHR0cHM6Ly9naXRodWIu Y29tL29wZW5saW5rL3ZpcnR1b3NvLW9wZW5zb3VyY2UvcHVsbC81ODMKLUxhc3QtVXBkYXRlOiBN byAxMS4gRmViIDEzOjUwOjE3IENFVCAyMDE5IChieSBBbmRyZWFzIFRpbGxlIDx0aWxsZUBkZWJp YW4ub3JnPikKLQotLS0tCi0KLUZyb20gODIzMDkyY2NjYmQ4ZTJhYjliZmFkNmMzZDNkZjc5MWE3 ZmZhNzZmYyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206IFNlYmFzdGlhbiBBbmRyemVq IFNpZXdpb3IgPHNlYmFzdGlhbkBicmVha3BvaW50LmNjPgotRGF0ZTogTW9uLCA1IFNlcCAyMDE2 IDEwOjQ5OjU0ICswMDAwCi1TdWJqZWN0OiBbUEFUQ0hdIHZpcnR1b3NvLW9wZW5zb3VyY2U6IGJ1 aWxkIGFnYWluc3Qgb3BlbnNzbCAxLjEuMAotCi1TaWduZWQtb2ZmLWJ5OiBTZWJhc3RpYW4gQW5k cnplaiBTaWV3aW9yIDxzZWJhc3RpYW5AYnJlYWtwb2ludC5jYz4KLS0tLQotIGxpYnNyYy9Eay9E a2VybmVsLmMgICAgICB8ICAgNiArLQotIGxpYnNyYy9XaS9iaWZfY3J5cHRvLmMgICB8IDEyMCAr KysrKysrKysrLS0tLS0tLS0KLSBsaWJzcmMvV2kvaHR0cC5jICAgICAgICAgfCAgIDIgKy0KLSBs aWJzcmMvV2kveG1sZW5jLmMgICAgICAgfCAzMTkgKysrKysrKysrKysrKysrKysrKysrKysrKysr LS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBsaWJzcmMvV2kveG1sZW5jLmggICAgICAgfCAxOTMgKysr KysrKysrKysrKysrKysrKysrKysrKystLQotIGxpYnNyYy9XaS94bWxlbmNfYWxnb3MuYyB8IDEz MiArKysrKysrKysrKy0tLS0tLS0tLQotIGxpYnNyYy91dGlsL3NzbGVuZ2luZS5jICB8ICAgNiAr LQotIDcgZmlsZXMgY2hhbmdlZCwgNTI0IGluc2VydGlvbnMoKyksIDI1NCBkZWxldGlvbnMoLSkK LQotLS0tIGEvbGlic3JjL1dpL2JpZl9jcnlwdG8uYwotKysrIGIvbGlic3JjL1dpL2JpZl9jcnlw dG8uYwotQEAgLTE4MSwyMSArMTgxLDI2IEBAIGJveF9obWFjIChjYWRkcl90IGJveCwgY2FkZHJf dCBrZXksIGludAotICAgdW5zaWduZWQgY2hhciB0ZW1wW0VWUF9NQVhfTURfU0laRV07Ci0gICB1 bnNpZ25lZCBpbnQgc2l6ZSA9IDA7Ci0gICBjYWRkcl90IHJlcyA9IE5VTEw7Ci0tICBITUFDX0NU WCBjdHg7Ci0rICBITUFDX0NUWCAqY3R4OwotICAgY29uc3QgRVZQX01EICptZCA9IEVWUF9zaGEx ICgpOwotIAotICAgaWYgKGFsZyA9PSAxKQotICAgICBtZCA9IEVWUF9yaXBlbWQxNjAgKCk7Ci0g Ci0tICBITUFDX0luaXQgKCZjdHgsIGtleSwgYm94X2xlbmd0aCAoa2V5KSAtIERWX1NUUklOR1Ag KGtleSkgPyAxIDogMCwgbWQpOwotLSAgYm94X2htYWNfMSAoYm94LCAmY3R4KTsKLS0gIEhNQUNf RmluYWwgKCZjdHgsIHRlbXAsICZzaXplKTsKLSsgIGN0eCA9IEhNQUNfQ1RYX25ldygpOwotKyAg aWYgKCFjdHgpCi0rCSAgcmV0dXJuIHJlczsKLSsKLSsgIEhNQUNfSW5pdF9leCAoY3R4LCBrZXks IGJveF9sZW5ndGggKGtleSkgLSBEVl9TVFJJTkdQIChrZXkpID8gMSA6IDAsIG1kLCBOVUxMKTsK LSsgIGJveF9obWFjXzEgKGJveCwgY3R4KTsKLSsgIEhNQUNfRmluYWwgKGN0eCwgdGVtcCwgJnNp emUpOwotICAgaWYgKHNpemUpCi0gICAgIHsKLSAgICAgICByZXMgPSBka19hbGxvY19ib3ggKHNp emUgKyAxLCBEVl9TSE9SVF9TVFJJTkcpOwotICAgICAgIG1lbWNweSAocmVzLCB0ZW1wLCBzaXpl KTsKLSAgICAgICByZXNbc2l6ZV0gPSAwOwotICAgICB9Ci0rICBITUFDX0NUWF9mcmVlKGN0eCk7 Ci0gICByZXR1cm4gcmVzOwotIH0KLSAKLUBAIC0zNDcsMTQgKzM1MiwxMiBAQCBhc24xX3BhcnNl X3RvX3htbCAoQklPICogYnAsIHVuc2lnbmVkIGNoCi0gCSAgICB7Ci0gCSAgICAgIGludCBpaTsK LSAKLS0JICAgICAgb3BwID0gb3A7Ci0tCSAgICAgIGlpID0gZDJpX0FTTjFfQk9PTEVBTiAoTlVM TCwgKGNvbnN0IHVuc2lnbmVkIGNoYXIgKiopJm9wcCwgbGVuICsgaGwpOwotLQkgICAgICBpZiAo aWkgPCAwKQotKwkgICAgICBpZiAobGVuICsgaGwgPCAxKQotIAkJewotIAkJICBpZiAoQklPX3dy aXRlIChicCwgIkJhZCBib29sZWFuXG4iLCAxMikpCi0gCQkgICAgZ290byBlbmQ7Ci0gCQl9Ci0t CSAgICAgIEJJT19wcmludGYgKGJwLCAiJWQiLCBpaSk7Ci0rCSAgICAgIEJJT19wcmludGYgKGJw LCAiJWQiLCBwWzBdKTsKLSAJICAgIH0KLSAJICBlbHNlIGlmICh0YWcgPT0gVl9BU04xX0JNUFNU UklORykKLSAJICAgIHsKLUBAIC00MTUsNyArNDE4LDcgQEAgYXNuMV9wYXJzZV90b194bWwgKEJJ TyAqIGJwLCB1bnNpZ25lZCBjaAotIAkJfQotIAkgICAgICBpZiAob3MgIT0gTlVMTCkKLSAJCXsK LS0JCSAgTV9BU04xX09DVEVUX1NUUklOR19mcmVlIChvcyk7Ci0rCQkgIEFTTjFfU1RSSU5HX2Zy ZWUgKG9zKTsKLSAJCSAgb3MgPSBOVUxMOwotIAkJfQotIAkgICAgfQotQEAgLTQ0OCw3ICs0NTEs NyBAQCBhc24xX3BhcnNlX3RvX3htbCAoQklPICogYnAsIHVuc2lnbmVkIGNoCi0gCQkgIGlmIChC SU9fd3JpdGUgKGJwLCAiQkFEIElOVEVHRVIiLCAxMSkgPD0gMCkKLSAJCSAgICBnb3RvIGVuZDsK LSAJCX0KLS0JICAgICAgTV9BU04xX0lOVEVHRVJfZnJlZSAoYnMpOwotKwkgICAgICBBU04xX1NU UklOR19mcmVlIChicyk7Ci0gCSAgICB9Ci0gCSAgZWxzZSBpZiAodGFnID09IFZfQVNOMV9FTlVN RVJBVEVEKQotIAkgICAgewotQEAgLTQ3OSw3ICs0ODIsNyBAQCBhc24xX3BhcnNlX3RvX3htbCAo QklPICogYnAsIHVuc2lnbmVkIGNoCi0gCQkgIGlmIChCSU9fd3JpdGUgKGJwLCAiQkFEIEVOVU1F UkFURUQiLCAxMSkgPD0gMCkKLSAJCSAgICBnb3RvIGVuZDsKLSAJCX0KLS0JICAgICAgTV9BU04x X0VOVU1FUkFURURfZnJlZSAoYnMpOwotKwkgICAgICBBU04xX1NUUklOR19mcmVlIChicyk7Ci0g CSAgICB9Ci0gCSAgZWxzZSBpZiAobGVuID4gMCAmJiBkdW1wKQotIAkgICAgewotQEAgLTUxNSw3 ICs1MTgsNyBAQCBlbmQ6Ci0gICBpZiAobyAhPSBOVUxMKQotICAgICBBU04xX09CSkVDVF9mcmVl IChvKTsKLSAgIGlmIChvcyAhPSBOVUxMKQotLSAgICBNX0FTTjFfT0NURVRfU1RSSU5HX2ZyZWUg KG9zKTsKLSsgICAgQVNOMV9TVFJJTkdfZnJlZSAob3MpOwotICAgKnBwID0gcDsKLSAgIHJldHVy biAocmV0KTsKLSB9Ci1AQCAtNzIzLDcgKzcyNiw3IEBAIGJpb190b19zdHJzZXMgKEJJTyAqIG91 dF9iaW8pCi0gICBpbnQgbGVuID0gQklPX2dldF9tZW1fZGF0YSAob3V0X2JpbywgJnB0cik7Ci0g ICBpbnQgdG9fcmVhZCA9IGxlbiwgcmVhZGVkID0gMDsKLSAKLS0gIHRvX2ZyZWUgPSAoKEJVRl9N RU0gKikgb3V0X2Jpby0+cHRyKS0+ZGF0YTsKLSsgIHRvX2ZyZWUgPSAoKEJVRl9NRU0gKikgQklP X2dldF9kYXRhKG91dF9iaW8pKS0+ZGF0YTsKLSAgIEJJT19zZXRfZmxhZ3MgKG91dF9iaW8sIEJJ T19GTEFHU19NRU1fUkRPTkxZKTsKLSAgIENBVENIX1dSSVRFX0ZBSUwgKHNlcykKLSAgICAgewot QEAgLTczNSw3ICs3MzgsNyBAQCBiaW9fdG9fc3Ryc2VzIChCSU8gKiBvdXRfYmlvKQotICAgICAg IH0gd2hpbGUgKHRvX3JlYWQgPiAwKTsKLSAgICAgfQotICAgRU5EX1dSSVRFX0ZBSUwgKHNlcyk7 Ci0tICAoKEJVRl9NRU0gKikgb3V0X2Jpby0+cHRyKS0+ZGF0YSA9IHRvX2ZyZWU7Ci0rICAoKEJV Rl9NRU0gKikgQklPX2dldF9kYXRhKG91dF9iaW8pKS0+ZGF0YSA9IHRvX2ZyZWU7Ci0gICBCSU9f Y2xlYXJfZmxhZ3MgKG91dF9iaW8sIEJJT19GTEFHU19NRU1fUkRPTkxZKTsKLSAgIHJldHVybiBz ZXM7Ci0gfQotQEAgLTc3MCw3ICs3NzMsNyBAQCBiaWZfc21pbWVfdmVyaWZ5IChjYWRkcl90ICog cXN0LCBjYWRkcl90Ci0gICBpZiAoRFZfVFlQRV9PRiAobXNnKSA9PSBEVl9TVFJJTkdfU0VTU0lP TikKLSAgICAgewotICAgICAgIGluX2JpbyA9IHN0cnNlc190b19iaW8gKChka19zZXNzaW9uX3Qg KikgbXNnKTsKLS0gICAgICB0b19mcmVlID0gKChCVUZfTUVNICopIGluX2Jpby0+cHRyKS0+ZGF0 YTsKLSsgICAgICB0b19mcmVlID0gKChCVUZfTUVNICopIEJJT19nZXRfZGF0YShpbl9iaW8pKS0+ ZGF0YTsKLSAgICAgICBCSU9fc2V0X2ZsYWdzIChpbl9iaW8sIEJJT19GTEFHU19NRU1fUkRPTkxZ KTsKLSAgICAgfQotICAgZWxzZQotQEAgLTc4MCw3ICs3ODMsNyBAQCBiaWZfc21pbWVfdmVyaWZ5 IChjYWRkcl90ICogcXN0LCBjYWRkcl90Ci0gICAgICAgcDcgPSBTTUlNRV9yZWFkX1BLQ1M3IChp bl9iaW8sICZkYXRhX2Jpbyk7Ci0gICAgICAgaWYgKHRvX2ZyZWUpCi0gCXsKLS0JICAoKEJVRl9N RU0gKikgaW5fYmlvLT5wdHIpLT5kYXRhID0gdG9fZnJlZTsKLSsJICAoKEJVRl9NRU0gKikgQklP X2dldF9kYXRhKGluX2JpbykpLT5kYXRhID0gdG9fZnJlZTsKLSAJICBCSU9fY2xlYXJfZmxhZ3Mg KGluX2JpbywgQklPX0ZMQUdTX01FTV9SRE9OTFkpOwotIAl9Ci0gICAgICAgQklPX2ZyZWUgKGlu X2Jpbyk7Ci1AQCAtOTI0LDE2ICs5MjcsMjAgQEAgYmlmX3NtaW1lX3NpZ24gKGNhZGRyX3QgKiBx c3QsIGNhZGRyX3QgKgotICAgICB9Ci0gCi0gICBjZXJ0cyA9IHNrX1g1MDlfbmV3X251bGwgKCk7 Ci0tICBpZiAoc3RvcmUgJiYgc3RvcmUtPm9ianMpCi0rCi0rICBpZiAoc3RvcmUgJiYgWDUwOV9T VE9SRV9nZXQwX29iamVjdHMoc3RvcmUpKQotICAgICB7Ci0tICAgICAgZm9yIChpbnggPSAwOyBp bnggPCBza19YNTA5X09CSkVDVF9udW0gKHN0b3JlLT5vYmpzKTsgaW54KyspCi0rICAgICAgU1RB Q0tfT0YoWDUwOV9PQkpFQ1QpICpzdG9yZV9vYmpzID0gWDUwOV9TVE9SRV9nZXQwX29iamVjdHMo c3RvcmUpOwotKwotKyAgICAgIGZvciAoaW54ID0gMDsgaW54IDwgc2tfWDUwOV9PQkpFQ1RfbnVt IChzdG9yZV9vYmpzKTsgaW54KyspCi0gCXsKLS0JICBYNTA5X09CSkVDVCAqb2JqID0gc2tfWDUw OV9PQkpFQ1RfdmFsdWUgKHN0b3JlLT5vYmpzLCBpbngpOwotLQkgIGlmIChvYmotPnR5cGUgPT0g WDUwOV9MVV9YNTA5KQotLQkgICAgc2tfWDUwOV9wdXNoIChjZXJ0cywgWDUwOV9kdXAgKG9iai0+ ZGF0YS54NTA5KSk7Ci0rCSAgWDUwOV9PQkpFQ1QgKm9iaiA9IHNrX1g1MDlfT0JKRUNUX3ZhbHVl IChzdG9yZV9vYmpzLCBpbngpOwotKwkgIGlmIChYNTA5X09CSkVDVF9nZXRfdHlwZShvYmopID09 IFg1MDlfTFVfWDUwOSkKLSsJICAgIHNrX1g1MDlfcHVzaCAoY2VydHMsIFg1MDlfZHVwIChYNTA5 X09CSkVDVF9nZXQwX1g1MDkob2JqKSkpOwotIAl9Ci0gCi0gICAgIH0KLSsKLSAgIGlmIChzdG9y ZSkKLSAgICAgWDUwOV9TVE9SRV9mcmVlIChzdG9yZSk7Ci0gICBpbl9iaW8gPSBCSU9fbmV3X21l bV9idWYgKG1zZywgYm94X2xlbmd0aCAobXNnKSAtIDEpOwotQEAgLTEwMDUsMTUgKzEwMTIsMTkg QEAgYmlmX3NtaW1lX2VuY3J5cHQgKGNhZGRyX3QgKiBxc3QsIGNhZGRyXwotICAgICBzcWxyX25l d19lcnJvciAoIjQyMDAwIiwgIkNSMDA2IiwgIk5vIHJlY2lwaWVudCBjZXJ0aWZpY2F0ZXMiKTsK LSAKLSAgIGNlcnRzID0gc2tfWDUwOV9uZXdfbnVsbCAoKTsKLS0gIGlmIChzdG9yZSAmJiBzdG9y ZS0+b2JqcykKLSsKLSsgIGlmIChzdG9yZSAmJiBYNTA5X1NUT1JFX2dldDBfb2JqZWN0cyhzdG9y ZSkpCi0gICAgIHsKLS0gICAgICBmb3IgKGlueCA9IDA7IGlueCA8IHNrX1g1MDlfT0JKRUNUX251 bSAoc3RvcmUtPm9ianMpOyBpbngrKykKLSsgICAgICBTVEFDS19PRihYNTA5X09CSkVDVCkgKnN0 b3JlX29ianMgPSBYNTA5X1NUT1JFX2dldDBfb2JqZWN0cyhzdG9yZSk7Ci0rCi0rICAgICAgZm9y IChpbnggPSAwOyBpbnggPCBza19YNTA5X09CSkVDVF9udW0gKHN0b3JlX29ianMpOyBpbngrKykK LSAJewotLQkgIFg1MDlfT0JKRUNUICpvYmogPSBza19YNTA5X09CSkVDVF92YWx1ZSAoc3RvcmUt Pm9ianMsIGlueCk7Ci0tCSAgaWYgKG9iai0+dHlwZSA9PSBYNTA5X0xVX1g1MDkpCi0tCSAgICBz a19YNTA5X3B1c2ggKGNlcnRzLCBYNTA5X2R1cCAob2JqLT5kYXRhLng1MDkpKTsKLSsJICBYNTA5 X09CSkVDVCAqb2JqID0gc2tfWDUwOV9PQkpFQ1RfdmFsdWUgKHN0b3JlX29ianMsIGlueCk7Ci0r CSAgaWYgKFg1MDlfT0JKRUNUX2dldF90eXBlKG9iaikgPT0gWDUwOV9MVV9YNTA5KQotKwkgICAg c2tfWDUwOV9wdXNoIChjZXJ0cywgWDUwOV9kdXAgKFg1MDlfT0JKRUNUX2dldDBfWDUwOShvYmop KSk7Ci0gCX0KLSAgICAgfQotKwotICAgaWYgKHN0b3JlKQotICAgICBYNTA5X1NUT1JFX2ZyZWUg KHN0b3JlKTsKLSAgIGluX2JpbyA9IEJJT19uZXdfbWVtX2J1ZiAobXNnLCBib3hfbGVuZ3RoICht c2cpIC0gMSk7Ci1AQCAtMTE4MSw3ICsxMTkyLDcgQEAgeDUwOV9jZXJ0aWZpY2F0ZV92ZXJpZnlf Y2IgKGludCBvaywgWDUwOQotICAgY2hhciAqb3B0cyA9IChjaGFyICopIFg1MDlfU1RPUkVfQ1RY X2dldF9hcHBfZGF0YSAoY3R4KTsKLSAgIGlmICghb2sgJiYgb3B0cykKLSAgICAgewotLSAgICAg IHN3aXRjaCAoY3R4LT5lcnJvcikKLSsgICAgICBzd2l0Y2ggKFg1MDlfU1RPUkVfQ1RYX2dldF9l cnJvcihjdHgpKQotIAl7Ci0gCWNhc2UgWDUwOV9WX0VSUl9DRVJUX0hBU19FWFBJUkVEOgotIAkg IGlmIChzdHJzdHIgKG9wdHMsICJleHBpcmVkIikpCi1AQCAtMTI4Nyw3ICsxMjk4LDcgQEAgYmlm X3g1MDlfY2VydGlmaWNhdGVfdmVyaWZ5IChjYWRkcl90ICogcQotICAgaWYgKCFpKQotICAgICB7 Ci0gICAgICAgY29uc3QgY2hhciAqZXJyX3N0cjsKLS0gICAgICBlcnJfc3RyID0gWDUwOV92ZXJp ZnlfY2VydF9lcnJvcl9zdHJpbmcgKGNzYy0+ZXJyb3IpOwotKyAgICAgIGVycl9zdHIgPSBYNTA5 X3ZlcmlmeV9jZXJ0X2Vycm9yX3N0cmluZyAoWDUwOV9TVE9SRV9DVFhfZ2V0X2Vycm9yKGNzYykp OwotICAgICAgICplcnJfcmV0ID0gc3J2X21ha2VfbmV3X2Vycm9yICgiMjIwMjMiLCAiQ1IwMTUi LCAiWDUwOSBlcnJvcjogJXMiLCBlcnJfc3RyKTsKLSAgICAgfQotIAotQEAgLTEzMDgsMjAgKzEz MTksMTYgQEAgZXJyX3JldDoKLSAjZGVmaW5lIFZJUlRfQ0VSVF9FWFQgIjIuMTYuODQwLjEuMTEx My4xIgotIAotIHN0YXRpYyBjYWRkcl90Ci0tQk5fYm94IChCSUdOVU0gKiB4KQotK0JOX2JveCAo Y29uc3QgQklHTlVNICp4KQotIHsKLSAgIHNpemVfdCBidWZfbGVuLCBuOwotICAgY2FkZHJfdCBi dWY7Ci0gICBidWZfbGVuID0gKHNpemVfdCkgQk5fbnVtX2J5dGVzICh4KTsKLS0gIGlmIChidWZf bGVuIDw9IEJOX0JZVEVTKQotLSAgICBidWYgPSBib3hfbnVtICgodW5zaWduZWQgbG9uZykgeC0+ ZFswXSk7Ci0tICBlbHNlCi0tICAgIHsKLS0gICAgICBidWYgPSBka19hbGxvY19ib3ggKGJ1Zl9s ZW4sIERWX0JJTik7Ci0tICAgICAgbiA9IEJOX2JuMmJpbiAoeCwgKHVuc2lnbmVkIGNoYXIgKikg YnVmKTsKLS0gICAgICBpZiAobiAhPSBidWZfbGVuKQotLQlHUEZfVDsKLS0gICAgfQotKyAgLyog ZGlkIG5vdCBmaWd1cmUgb3V0IHdoZXJlIGJ1ZiBpcyBmcmVlKCllZCAqLwotKyAgYnVmID0gZGtf YWxsb2NfYm94IChidWZfbGVuLCBEVl9CSU4pOwotKyAgbiA9IEJOX2JuMmJpbiAoeCwgKHVuc2ln bmVkIGNoYXIgKikgYnVmKTsKLSsgIGlmIChuICE9IGJ1Zl9sZW4pCi0rCSAgR1BGX1Q7Ci0gICBy ZXR1cm4gYnVmOwotIH0KLSAKLUBAIC0xNDk4LDcgKzE1MDUsNyBAQCBiaWZfZ2V0X2NlcnRpZmlj YXRlX2luZm8gKGNhZGRyX3QgKiBxc3QsCi0gCWludCBpOwotIAljaGFyIHRtcFsxMDI0XTsKLSAJ Y2hhciAqZXh0X29pZCA9IChjaGFyICopIChCT1hfRUxFTUVOVFMgKGFyZ3MpID4gNCA/IGJpZl9z dHJpbmdfYXJnIChxc3QsIGFyZ3MsIDQsICJnZXRfY2VydGlmaWNhdGVfaW5mbyIpIDogVklSVF9D RVJUX0VYVCk7Ci0tCVNUQUNLX09GIChYNTA5X0VYVEVOU0lPTikgKiBleHRzID0gY2VydC0+Y2Vy dF9pbmZvLT5leHRlbnNpb25zOwotKwljb25zdCBTVEFDS19PRiAoWDUwOV9FWFRFTlNJT04pICog ZXh0cyA9IFg1MDlfZ2V0MF9leHRlbnNpb25zKGNlcnQpOwotIAlmb3IgKGkgPSAwOyBpIDwgc2tf WDUwOV9FWFRFTlNJT05fbnVtIChleHRzKTsgaSsrKQotIAkgIHsKLSAJICAgIFg1MDlfRVhURU5T SU9OICpleCA9IHNrX1g1MDlfRVhURU5TSU9OX3ZhbHVlIChleHRzLCBpKTsKLUBAIC0xNTEwLDcg KzE1MTcsNyBAQCBiaWZfZ2V0X2NlcnRpZmljYXRlX2luZm8gKGNhZGRyX3QgKiBxc3QsCi0gCQlj aGFyICpkYXRhX3B0cjsKLSAJCUJJTyAqbWVtID0gQklPX25ldyAoQklPX3NfbWVtICgpKTsKLSAJ CWlmICghWDUwOVYzX0VYVF9wcmludCAobWVtLCBleCwgMCwgMCkpCi0tCQkgIE1fQVNOMV9PQ1RF VF9TVFJJTkdfcHJpbnQgKG1lbSwgZXgtPnZhbHVlKTsKLSsJCSAgQVNOMV9TVFJJTkdfcHJpbnQg KG1lbSwgWDUwOV9FWFRFTlNJT05fZ2V0X2RhdGEoZXgpKTsKLSAJCWxlbiA9IEJJT19nZXRfbWVt X2RhdGEgKG1lbSwgJmRhdGFfcHRyKTsKLSAJCWlmIChsZW4gPiAwICYmIGRhdGFfcHRyKQotIAkJ ICB7Ci1AQCAtMTUzNywxOCArMTU0NCwyMyBAQCBiaWZfZ2V0X2NlcnRpZmljYXRlX2luZm8gKGNh ZGRyX3QgKiBxc3QsCi0gCWlmIChrKQotIAkgIHsKLSAjaWZkZWYgRVZQX1BLRVlfUlNBCi0tCSAg ICBpZiAoay0+dHlwZSA9PSBFVlBfUEtFWV9SU0EpCi0rCSAgICBpZiAoRVZQX1BLRVlfaWQoaykg PT0gRVZQX1BLRVlfUlNBKQotIAkgICAgICB7Ci0tCQlSU0EgKnggPSBrLT5wa2V5LnJzYTsKLS0J CXJldCA9IGxpc3QgKDMsIGJveF9kdl9zaG9ydF9zdHJpbmcgKCJSU0FQdWJsaWNLZXkiKSwgQk5f Ym94ICh4LT5lKSwgQk5fYm94ICh4LT5uKSk7Ci0rCQljb25zdCBCSUdOVU0gKm4sICplOwotKwot KwkJUlNBX2dldDBfa2V5KEVWUF9QS0VZX2dldDBfUlNBKGspLCAmbiwgJmUsIE5VTEwpOwotKwot KwkJcmV0ID0gbGlzdCAoMywgYm94X2R2X3Nob3J0X3N0cmluZyAoIlJTQVB1YmxpY0tleSIpLCBC Tl9ib3ggKGUpLCBCTl9ib3ggKG4pKTsKLSAJICAgICAgfQotIAkgICAgZWxzZQotICNlbmRpZgot ICNpZmRlZiBFVlBfUEtFWV9EU0EKLS0JICAgIGlmIChrLT50eXBlID09IEVWUF9QS0VZX0RTQSkK LSsJICAgIGlmIChFVlBfUEtFWV9pZChrKSA9PSBFVlBfUEtFWV9EU0EpCi0gCSAgICAgIHsKLS0J CURTQSAqeCA9IGstPnBrZXkuZHNhOwotLQkJcmV0ID0gbGlzdCAoMiwgYm94X2R2X3Nob3J0X3N0 cmluZyAoIkRTQVB1YmxpY0tleSIpLCBCTl9ib3ggKHgtPnB1Yl9rZXkpKTsKLSsJCWNvbnN0IEJJ R05VTSAqcHViX2tleTsKLSsKLSsJCURTQV9nZXQwX2tleShFVlBfUEtFWV9nZXQwX0RTQShrKSwg JnB1Yl9rZXksIE5VTEwpOwotKwkJcmV0ID0gbGlzdCAoMiwgYm94X2R2X3Nob3J0X3N0cmluZyAo IkRTQVB1YmxpY0tleSIpLCBCTl9ib3ggKHB1Yl9rZXkpKTsKLSAJICAgICAgfQotIAkgICAgZWxz ZQotICNlbmRpZgotQEAgLTE1NjcsMTMgKzE1NzksMTMgQEAgYmlmX2dldF9jZXJ0aWZpY2F0ZV9p bmZvIChjYWRkcl90ICogcXN0LAotIAlpbnQgbiwgaSwgbGVuOwotIAljaGFyICpzLCAqZGF0YV9w dHI7Ci0gCUJJTyAqbWVtID0gQklPX25ldyAoQklPX3NfbWVtICgpKTsKLS0JZm9yIChpID0gMDsg TlVMTCAhPSBzdWJqICYmIGkgPCBza19YNTA5X05BTUVfRU5UUllfbnVtKHN1YmotPmVudHJpZXMp OyBpKyspCi0rCWZvciAoaSA9IDA7IE5VTEwgIT0gc3ViaiAmJiBpIDwgWDUwOV9OQU1FX2VudHJ5 X2NvdW50KHN1YmopOyBpKyspCi0gCSAgewotLQkgICAgbmUgPSBza19YNTA5X05BTUVfRU5UUllf dmFsdWUoc3Viai0+ZW50cmllcyxpKTsKLS0JICAgIG4gPSBPQkpfb2JqMm5pZCAobmUtPm9iamVj dCk7Ci0rCSAgICBuZSA9IFg1MDlfTkFNRV9nZXRfZW50cnkoc3ViaiwgaSk7Ci0rCSAgICBuID0g T0JKX29iajJuaWQgKFg1MDlfTkFNRV9FTlRSWV9nZXRfb2JqZWN0KG5lKSk7Ci0gCSAgICBpZiAo KG4gPT0gTklEX3VuZGVmKSB8fCAoKHMgPSAoY2hhciAqKSBPQkpfbmlkMnNuIChuKSkgPT0gTlVM TCkpCi0gCSAgICAgIHsKLS0JCWkydF9BU04xX09CSkVDVCAoYnVmZmVyLCBzaXplb2YgKGJ1ZmZl ciksIG5lLT5vYmplY3QpOwotKwkJaTJ0X0FTTjFfT0JKRUNUIChidWZmZXIsIHNpemVvZiAoYnVm ZmVyKSwgWDUwOV9OQU1FX0VOVFJZX2dldF9vYmplY3QobmUpKTsKLSAJCXMgPSBidWZmZXI7Ci0g CSAgICAgIH0KLSAJICAgIGlmICghc3RyY21wIChzLCBhdHRyKSkKLUBAIC0xNTgyLDkgKzE1OTQs MTAgQEAgYmlmX2dldF9jZXJ0aWZpY2F0ZV9pbmZvIChjYWRkcl90ICogcXN0LAotIAkJYnJlYWs7 Ci0gCSAgICAgIH0KLSAJICB9Ci0rCi0gCWlmIChuZV9yZXQpCi0gCSAgewotLQkgICAgQVNOMV9T VFJJTkdfcHJpbnQgKG1lbSwgbmVfcmV0LT52YWx1ZSk7Ci0rCSAgICBBU04xX1NUUklOR19wcmlu dCAobWVtLCBYNTA5X05BTUVfRU5UUllfZ2V0X2RhdGEobmVfcmV0KSk7Ci0gCSAgICBsZW4gPSBC SU9fZ2V0X21lbV9kYXRhIChtZW0sICZkYXRhX3B0cik7Ci0gCSAgICBpZiAobGVuID4gMCAmJiBk YXRhX3B0cikKLSAJICAgICAgewotQEAgLTE2MDUsMTcgKzE2MTgsMTcgQEAgYmlmX2dldF9jZXJ0 aWZpY2F0ZV9pbmZvIChjYWRkcl90ICogcXN0LAotIAlka19zZXRfdCBzZXQgPSBOVUxMOwotIAlj YWRkcl90IHZhbDsKLSAJQklPICptZW0gPSBCSU9fbmV3IChCSU9fc19tZW0gKCkpOwotLQlmb3Ig KGkgPSAwOyBOVUxMICE9IHN1YmogJiYgaSA8IHNrX1g1MDlfTkFNRV9FTlRSWV9udW0oc3Viai0+ ZW50cmllcyk7IGkrKykKLSsJZm9yIChpID0gMDsgTlVMTCAhPSBzdWJqICYmIGkgPCBYNTA5X05B TUVfZW50cnlfY291bnQoc3Viaik7IGkrKykKLSAJICB7Ci0gCSAgICB2YWwgPSBOVUxMOwotLQkg ICAgbmUgPSBza19YNTA5X05BTUVfRU5UUllfdmFsdWUoc3Viai0+ZW50cmllcyxpKTsKLS0JICAg IG4gPSBPQkpfb2JqMm5pZCAobmUtPm9iamVjdCk7Ci0rCSAgICBuZSA9IFg1MDlfTkFNRV9nZXRf ZW50cnkoc3ViaiwgaSk7Ci0rCSAgICBuID0gT0JKX29iajJuaWQgKFg1MDlfTkFNRV9FTlRSWV9n ZXRfb2JqZWN0KG5lKSk7Ci0gCSAgICBpZiAoKG4gPT0gTklEX3VuZGVmKSB8fCAoKHMgPSAoY2hh ciAqKSBPQkpfbmlkMnNuIChuKSkgPT0gTlVMTCkpCi0gCSAgICAgIHsKLS0JCWkydF9BU04xX09C SkVDVCAoYnVmZmVyLCBzaXplb2YgKGJ1ZmZlciksIG5lLT5vYmplY3QpOwotKwkJaTJ0X0FTTjFf T0JKRUNUIChidWZmZXIsIHNpemVvZiAoYnVmZmVyKSwgWDUwOV9OQU1FX0VOVFJZX2dldF9vYmpl Y3QobmUpKTsKLSAJCXMgPSBidWZmZXI7Ci0gCSAgICAgIH0KLS0JICAgIEFTTjFfU1RSSU5HX3By aW50IChtZW0sIG5lLT52YWx1ZSk7Ci0rCSAgICBBU04xX1NUUklOR19wcmludCAobWVtLCBYNTA5 X05BTUVfRU5UUllfZ2V0X2RhdGEobmUpKTsKLSAJICAgIGxlbiA9IEJJT19nZXRfbWVtX2RhdGEg KG1lbSwgJmRhdGFfcHRyKTsKLSAJICAgIGlmIChsZW4gPiAwICYmIGRhdGFfcHRyKQotIAkgICAg ICB7Ci1AQCAtMTYyOSwxOCArMTY0MiwyMiBAQCBiaWZfZ2V0X2NlcnRpZmljYXRlX2luZm8gKGNh ZGRyX3QgKiBxc3QsCi0gCSAgfQotIAlCSU9fZnJlZSAobWVtKTsKLSAJcmV0ID0gbGlzdF90b19h cnJheSAoZGtfc2V0X25yZXZlcnNlIChzZXQpKTsKLSsKLSAJYnJlYWs7Ci0gICAgICAgfQotICAg ICBjYXNlIDEyOgotICAgICAgIHsKLSAJY29uc3QgdW5zaWduZWQgY2hhciAqczsKLSAJaW50IGks IG47Ci0tCWNvbnN0IEFTTjFfU1RSSU5HICpzaWcgPSBjZXJ0LT5zaWduYXR1cmU7Ci0tCVg1MDlf QUxHT1IgKnNpZ2FsZyA9IGNlcnQtPnNpZ19hbGc7Ci0rCWNvbnN0IEFTTjFfU1RSSU5HICpzaWc7 Ci0rCWNvbnN0IFg1MDlfQUxHT1IgKnNpZ2FsZzsKLSsJY29uc3QgQVNOMV9PQkpFQ1QgKnNpZ19h bGdfYWxnb3JpdGhtOwotIAljaGFyIGJ1Zls4MF07Ci0gCWNhZGRyX3QgdmFsOwotIAotLSAgICAg ICAgaTJ0X0FTTjFfT0JKRUNUKGJ1ZixzaXplb2YgKGJ1ZiksIHNpZ2FsZy0+YWxnb3JpdGhtKTsK LSsJWDUwOV9nZXQwX3NpZ25hdHVyZSgmc2lnLCAmc2lnYWxnLCBjZXJ0KTsKLSsJWDUwOV9BTEdP Ul9nZXQwKCZzaWdfYWxnX2FsZ29yaXRobSwgTlVMTCwgTlVMTCwgc2lnYWxnKTsKLSsJaTJ0X0FT TjFfT0JKRUNUKGJ1ZixzaXplb2YgKGJ1ZiksIHNpZ19hbGdfYWxnb3JpdGhtKTsKLSAKLSAJbiA9 IHNpZy0+bGVuZ3RoOwotIAlzID0gc2lnLT5kYXRhOwotQEAgLTE2NjAsMTEgKzE2NzcsMTEgQEAg YmlmX2dldF9jZXJ0aWZpY2F0ZV9pbmZvIChjYWRkcl90ICogcXN0LAotIAlpZiAoaykKLSAJICB7 Ci0gI2lmZGVmIEVWUF9QS0VZX1JTQQotLQkgICAgaWYgKGstPnR5cGUgPT0gRVZQX1BLRVlfUlNB KQotKwkgICAgaWYgKEVWUF9QS0VZX2lkKGspID09IEVWUF9QS0VZX1JTQSkKLSAJICAgICAgewot IAkJY2hhciAqZGF0YV9wdHI7Ci0gCQlpbnQgbGVuOwotLQkJUlNBICp4ID0gay0+cGtleS5yc2E7 Ci0rCQlSU0EgKnggPSBFVlBfUEtFWV9nZXQwX1JTQShrKTsKLSAJCWIgPSBCSU9fbmV3IChCSU9f c19tZW0oKSk7Ci0gCQlpMmRfUlNBX1BVQktFWV9iaW8gKGIsIHgpOwotIAkJbGVuID0gQklPX2dl dF9tZW1fZGF0YSAoYiwgJmRhdGFfcHRyKTsKLS0tLSBhL2xpYnNyYy9XaS94bWxlbmMuYwotKysr IGIvbGlic3JjL1dpL3htbGVuYy5jCi1AQCAtMTIxNSwzNiArMTIxNSw0NSBAQCB2b2lkIHhlbmNf a2V5X3JlbW92ZSAoeGVuY19rZXlfdCAqIGtleSwKLSB9Ci0gCi0gCi0tc3RhdGljIHZvaWQKLS1n ZW5yc2FfY2IoaW50IHAsIGludCBuLCB2b2lkICphcmcpCi0tewotLSNpZmRlZiBMSU5UCi0tICBw PW47Ci0tI2VuZGlmCi0tfQotLQotIGludAotIF9feGVuY19rZXlfcnNhX2luaXQgKGNoYXIgKm5h bWUpCi0gewotICAgUlNBICpyc2EgPSBOVUxMOwotLSAgaW50IG51bT0xMDI0OwotLSAgdW5zaWdu ZWQgbG9uZyBmND1SU0FfRjQ7Ci0rICBCSUdOVU0gKmJuID0gTlVMTDsKLSAgIGludCByOwotKwot ICAgeGVuY19rZXlfdCAqIHBrZXkgPSB4ZW5jX2dldF9rZXlfYnlfbmFtZSAobmFtZSwgMSk7Ci0g ICBpZiAoTlVMTCA9PSBwa2V5KQotICAgICBTUUxSX05FV19LRVlfRVJST1IgKG5hbWUpOwotIAot LSAgcnNhPVJTQV9nZW5lcmF0ZV9rZXkobnVtLGY0LGdlbnJzYV9jYixOVUxMKTsKLSsgIHJzYSA9 IFJTQV9uZXcoKTsKLSsgIGlmICghcnNhKQotKwkgIGdvdG8gb3V0OwotKyAgYm4gPSBCTl9uZXco KTsKLSsgIGlmICghYm4pCi0rCSAgZ290byBvdXQ7Ci0rICBpZiAoIUJOX3NldF93b3JkKGJuLCBS U0FfRjQpKQotKwkgIGdvdG8gb3V0OwotKwotKyAgaWYgKCFSU0FfZ2VuZXJhdGVfa2V5X2V4KHJz YSwgMTAyNCwgYm4sIE5VTEwpKQotKwkgIGdvdG8gb3V0OwotKwotICAgciA9IFJTQV9jaGVja19r ZXkocnNhKTsKLSsgIGlmIChyICE9IDEpCi0rCSAgZ290byBvdXQ7Ci0gICBwa2V5LT5raS5yc2Eu cGFkID0gUlNBX1BLQ1MxX1BBRERJTkc7Ci0tICBpZiAocnNhID09IE5VTEwpCi0tICAgIHsKLS0g ICAgICBzcWxyX25ld19lcnJvciAoIjQyMDAwIiwgIlhFTkMwNiIsCi0tCQkgICAgIlJTQSBwYXJh bWV0ZXJzIGdlbmVyYXRpb24gZXJyb3IiKTsKLS0gICAgfQotICAgcGtleS0+eGVrX3JzYSA9IHJz YTsKLSAgIHBrZXktPnhla19wcml2YXRlX3JzYSA9IHJzYTsKLSsgIEJOX2ZyZWUoYm4pOwotICAg cmV0dXJuIDA7Ci0rb3V0OgotKyAgaWYgKGJuKQotKwkgIEJOX2ZyZWUoYm4pOwotKyAgaWYgKHJz YSkKLSsJICBSU0FfZnJlZShyc2EpOwotKyAgc3Fscl9uZXdfZXJyb3IgKCI0MjAwMCIsICJYRU5D MDYiLAotKwkJICAiUlNBIHBhcmFtZXRlcnMgZ2VuZXJhdGlvbiBlcnJvciIpOwotKyAgcmV0dXJu IC0xOwotIH0KLSAKLSAKLUBAIC0xNDU1LDE5ICsxNDY0LDE5IEBAIHhlbmNfa2V5X3QgKiB4ZW5j X2tleV9jcmVhdGVfZnJvbV94NTA5X2MKLSAKLSAgIGlmIChwa2V5KQotICAgICB7Ci0tICAgICAg c3dpdGNoIChFVlBfUEtFWV90eXBlIChwa2V5LT50eXBlKSkKLSsgICAgICBzd2l0Y2ggKEVWUF9Q S0VZX3R5cGUgKEVWUF9QS0VZX2lkKHBrZXkpKSkKLSAJewotIAljYXNlIEVWUF9QS0VZX0RTQToK LSAJICBzaWduX2FsZ29uYW1lID0gRFNJR19EU0FfU0hBMV9BTEdPOwotIAkgIGVuY19hbGdvbmFt ZSA9IFhFTkNfRFNBX0FMR087Ci0tCSAgZHNhID0gcGtleS0+cGtleS5kc2E7Ci0tCSAgcHJpdmF0 ZV9kc2EgPSBwcml2YXRlX2tleSA/IHByaXZhdGVfa2V5LT5wa2V5LmRzYSA6IDA7Ci0rCSAgZHNh ID0gRVZQX1BLRVlfZ2V0MF9EU0EocGtleSk7Ci0rCSAgcHJpdmF0ZV9kc2EgPSBwcml2YXRlX2tl eSA/IEVWUF9QS0VZX2dldDBfRFNBKHByaXZhdGVfa2V5KSA6IDA7Ci0gCSAgYnJlYWs7Ci0gCWNh c2UgRVZQX1BLRVlfUlNBOgotIAkgIHNpZ25fYWxnb25hbWUgPSBEU0lHX1JTQV9TSEExX0FMR087 Ci0gCSAgZW5jX2FsZ29uYW1lID0gWEVOQ19SU0FfQUxHTzsKLS0JICByc2EgPSBwa2V5LT5wa2V5 LnJzYTsKLS0JICBwcml2YXRlX3JzYSA9IHByaXZhdGVfa2V5ID8gcHJpdmF0ZV9rZXktPnBrZXku cnNhIDogMDsKLSsJICByc2EgPSBFVlBfUEtFWV9nZXQwX1JTQShwa2V5KTsKLSsJICBwcml2YXRl X3JzYSA9IHByaXZhdGVfa2V5ID8gRVZQX1BLRVlfZ2V0MF9SU0EocHJpdmF0ZV9rZXkpIDogMDsK LSAJICBicmVhazsKLSAJZGVmYXVsdDoKLSAJICBnb3RvIGZpbmlzaDsKLUBAIC0xNTE2LDEzICsx NTI1LDYgQEAgeGVuY19rZXlfdCAqIHhlbmNfa2V5X2NyZWF0ZV9mcm9tX3g1MDlfYwotICAgcmV0 dXJuIGs7Ci0gfQotIAotLXN0YXRpYyB2b2lkIGRoX2NiKGludCBwLCBpbnQgbiwgdm9pZCAqYXJn KQotLXsKLS0jaWZkZWYgTElOVAotLSAgcD1uOwotLSNlbmRpZgotLX0KLS0KLSBzdGF0aWMgLyp4 ZW5jX2tleV9EU0FfY3JlYXRlICovCi0gY2FkZHJfdCBiaWZfeGVuY19rZXlfZHNhX2NyZWF0ZSAo Y2FkZHJfdCAqIHFzdCwgY2FkZHJfdCAqIGVycl9yLCBzdGF0ZV9zbG90X3QgKiogYXJncykKLSB7 Ci1AQCAtMTU4OCwxNSArMTU5MCwyMSBAQCBjYWRkcl90IGJpZl94ZW5jX2tleV9ESF9jcmVhdGUg KGNhZGRyX3QKLSAgICAgICBkaCA9IERIX25ldyAoKTsKLSAgICAgICBibl9wID0gQk5fYmluMmJu ICgodW5zaWduZWQgY2hhciAqKW1vZCwgcF9sZW4sIE5VTEwpOwotICAgICAgIGJuX2cgPSBCTl9i aW4yYm4gKGdfYmluLCAxLCBOVUxMKTsKLS0gICAgICBkaC0+cCA9IGJuX3A7Ci0tICAgICAgZGgt PmcgPSBibl9nOwotKyAgICAgIGlmIChkaCkKLSsJICAgICAgREhfc2V0MF9wcWcoZGgsIGJuX3As IE5VTEwsIGJuX2cpOwotIAotICAgICAgIGRrX2ZyZWVfYm94IChtb2RfYjY0KTsKLSAgICAgICBk a19mcmVlX2JveCAobW9kKTsKLSAgICAgfQotICAgZWxzZQotICAgICB7Ci0tICAgICAgZGggPSBE SF9nZW5lcmF0ZV9wYXJhbWV0ZXJzIChudW0sIGcsIGRoX2NiLCBOVUxMKTsKLSsgICAgICBkaCA9 IERIX25ldygpOwotKyAgICAgIGlmIChkaCkgewotKwkgICAgICBpZiAoIURIX2dlbmVyYXRlX3Bh cmFtZXRlcnNfZXgoZGgsIG51bSwgZywgTlVMTCkpIHsKLSsJCSAgICAgIERIX2ZyZWUoZGgpOwot KwkJICAgICAgZGggPSBOVUxMOwotKwkgICAgICB9Ci0rICAgICAgfQotICAgICB9Ci0gICBpZiAo IWRoKQotICAgICB7Ci1AQCAtMTYyNiw3ICsxNjM0LDcgQEAgY2FkZHJfdCBiaWZfeGVuY19ESF9n ZXRfcGFyYW1zIChjYWRkcl90Ci0gICBpbnQgbiwgbGVuOwotICAgY2FkZHJfdCBidWYgPSBOVUxM LCByZXQsIGI2NDsKLSAgIERIICpkaDsKLS0gIEJJR05VTSAqbnVtOwotKyAgY29uc3QgQklHTlVN ICpudW07Ci0gCi0gICBtdXRleF9lbnRlciAoeGVuY19rZXlzX210eCk7Ci0gICBrZXkgPSB4ZW5j X2dldF9rZXlfYnlfbmFtZSAobmFtZSwgMCk7Ci1AQCAtMTY0MSwxOSArMTY0OSwxOSBAQCBjYWRk cl90IGJpZl94ZW5jX0RIX2dldF9wYXJhbXMgKGNhZGRyX3QKLSAgIHN3aXRjaCAocGFyYW0pCi0g ICAgIHsKLSAgIAljYXNlIDE6Ci0tCSBudW0gPSBkaC0+cDsKLSsJIERIX2dldDBfcHFnKGRoLCAm bnVtLCBOVUxMLCBOVUxMKTsKLSAJIGJyZWFrOwotIAljYXNlIDI6Ci0tCSBudW0gPSBkaC0+ZzsK LSsJIERIX2dldDBfcHFnKGRoLCBOVUxMLCBOVUxMLCAmbnVtKTsKLSAJIGJyZWFrOwotIAljYXNl IDM6Ci0tCSBudW0gPSBkaC0+cHViX2tleTsKLSsJIERIX2dldDBfa2V5KGRoLCAmbnVtLCBOVUxM KTsKLSAJIGJyZWFrOwotIAljYXNlIDQ6Ci0tCSBudW0gPSBkaC0+cHJpdl9rZXk7Ci0rCSBESF9n ZXQwX2tleShkaCwgTlVMTCwgJm51bSk7Ci0gCSBicmVhazsKLSAJZGVmYXVsdDoKLS0JIG51bSA9 IGRoLT5wdWJfa2V5OwotKwkgREhfZ2V0MF9rZXkoZGgsICZudW0sIE5VTEwpOwotICAgICB9Ci0g Ci0gICBidWZfbGVuID0gKHNpemVfdClCTl9udW1fYnl0ZXMobnVtKTsKLUBAIC0xODExLDcgKzE4 MTksMTUgQEAgY2FkZHJfdCBiaWZfeGVuY19rZXlfcnNhX2NyZWF0ZSAoY2FkZHJfdAotICAgeGVu Y19rZXlfdCAqIGs7Ci0gICBjYWRkcl90IG5hbWUgPSBiaWZfc3RyaW5nX2FyZyAocXN0LCBhcmdz LCAwLCAieGVuY19rZXlfUlNBX2NyZWF0ZSIpOwotICAgaW50IG51bSA9IChpbnQpIGJpZl9sb25n X2FyZyAocXN0LCBhcmdzLCAxLCAieGVuY19rZXlfUlNBX2NyZWF0ZSIpOwotLSAgUlNBICpyc2Eg PSBOVUxMOwotKyAgUlNBICpyc2E7Ci0rICBCSUdOVU0gKmJuOwotKwotKyAgcnNhID0gUlNBX25l dygpOwotKyAgYm4gPSBCTl9uZXcoKTsKLSsgIGlmICghcnNhIHx8ICFibikKLSsJZ290byBvdXQ7 Ci0rICBpZiAoIUJOX3NldF93b3JkKGJuLCBSU0FfRjQpKQotKwlnb3RvIG91dDsKLSAKLSAgIG11 dGV4X2VudGVyICh4ZW5jX2tleXNfbXR4KTsKLSAgIGlmIChOVUxMID09IChrID0geGVuY19rZXlf Y3JlYXRlIChuYW1lLCBYRU5DX1JTQV9BTEdPICwgRFNJR19SU0FfU0hBMV9BTEdPLCAwKSkpCi1A QCAtMTgyMCwxMiArMTgzNiwxMSBAQCBjYWRkcl90IGJpZl94ZW5jX2tleV9yc2FfY3JlYXRlIChj YWRkcl90Ci0gICAgICAgU1FMUl9ORVdfS0VZX0VYSVNUX0VSUk9SIChuYW1lKTsKLSAgICAgfQot IAotLSAgcnNhID0gUlNBX2dlbmVyYXRlX2tleSAobnVtLCBSU0FfRjQsIE5VTEwsIE5VTEwpOwot LQotLSAgaWYgKHJzYSA9PSBOVUxMKQotLSAgICB7Ci0tICAgICAgc3Fscl9uZXdfZXJyb3IgKCI0 MjAwMCIsICJYRU5DMDYiLCAiUlNBIGdlbmVyYXRpb24gZXJyb3IiKTsKLS0gICAgfQotKyAgaWYg KCFSU0FfZ2VuZXJhdGVfa2V5X2V4IChyc2EsIG51bSwgYm4sIE5VTEwpKSB7Ci0rCSAgbXV0ZXhf bGVhdmUgKHhlbmNfa2V5c19tdHgpOwotKwkgIGdvdG8gb3V0OwotKyAgfQotKyAgQk5fZnJlZShi bik7Ci0gCi0gICBrLT54ZWtfcnNhID0gUlNBUHVibGljS2V5X2R1cCAocnNhKTsKLSAgIGstPnhl a19wcml2YXRlX3JzYSA9IHJzYTsKLUBAIC0xODM5LDYgKzE4NTQsMTMgQEAgY2FkZHJfdCBiaWZf eGVuY19rZXlfcnNhX2NyZWF0ZSAoY2FkZHJfdAotIAotICAgbXV0ZXhfbGVhdmUgKHhlbmNfa2V5 c19tdHgpOwotICAgcmV0dXJuIE5VTEw7Ci0rb3V0OgotKyAgaWYgKGJuKQotKwkgIEJOX2ZyZWUo Ym4pOwotKyAgaWYgKHJzYSkKLSsJICBSU0FfZnJlZShyc2EpOwotKyAgc3Fscl9uZXdfZXJyb3Ig KCI0MjAwMCIsICJYRU5DMDYiLCAiUlNBIGdlbmVyYXRpb24gZXJyb3IiKTsKLSsgIHJldHVybiBO VUxMOwotIH0KLSAKLSB4ZW5jX2tleV90ICoKLUBAIC0yMDM0LDcgKzIwNTYsMTMgQEAgaW50IF9f eGVuY19rZXlfZHNhX2luaXQgKGNoYXIgKm5hbWUsIGludAotICAgICBTUUxSX05FV19LRVlfRVJS T1IgKG5hbWUpOwotIAotICAgUkFORF9wb2xsICgpOwotLSAgZHNhID0gRFNBX2dlbmVyYXRlX3Bh cmFtZXRlcnMobnVtLCBOVUxMLCAwLCBOVUxMLCBOVUxMLCBkaF9jYiwgTlVMTCk7Ci0rICBkc2Eg PSBEU0FfbmV3KCk7Ci0rICBpZiAoZHNhKSB7Ci0rCSAgaWYgKCFEU0FfZ2VuZXJhdGVfcGFyYW1l dGVyc19leChkc2EsIG51bSwgTlVMTCwgMCwgTlVMTCwgTlVMTCwgTlVMTCkpIHsKLSsJCSAgRFNB X2ZyZWUoZHNhKTsKLSsJCSAgZHNhID0gTlVMTDsKLSsJICB9Ci0rICB9Ci0gICBpZiAoZHNhID09 IE5VTEwpCi0gICAgIHsKLSAgICAgICBzcWxyX25ld19lcnJvciAoIjQyMDAwIiwgIlhFTkMxMSIs Ci1AQCAtMjA1OCw3ICsyMDg2LDEzIEBAIGludCBfX3hlbmNfa2V5X2RoX2luaXQgKGNoYXIgKm5h bWUsIGludAotICAgaWYgKE5VTEwgPT0gcGtleSkKLSAgICAgU1FMUl9ORVdfS0VZX0VSUk9SIChu YW1lKTsKLSAKLS0gIGRoID0gREhfZ2VuZXJhdGVfcGFyYW1ldGVycyAobnVtLCBnLCBkaF9jYiwg TlVMTCk7Ci0rICBkaCA9IERIX25ldygpOwotKyAgaWYgKGRoKSB7Ci0rCSAgaWYgKCFESF9nZW5l cmF0ZV9wYXJhbWV0ZXJzX2V4KGRoLCBudW0sIGcsIE5VTEwpKSB7Ci0rCQkgIERIX2ZyZWUoZGgp OwotKwkJICBkaCA9IE5VTEw7Ci0rCSAgfQotKyAgfQotICAgaWYgKCFkaCkKLSAgICAgewotICAg ICAgIHNxbHJfbmV3X2Vycm9yICgiNDIwMDAiLCAiWEVOQzExIiwKLUBAIC0yMjgwLDEyICsyMzE0 LDEyIEBAIGJpZl94ZW5jX2tleV9yc2FfcmVhZCAoY2FkZHJfdCAqIHFzdCwgY2EKLSAgICAgewot ICAgICAgIGluID0gQklPX25ld19tZW1fYnVmIChrZXlfYmFzZTY0LCBsZW4pOwotICAgICAgIHBr ZXkgPSBkMmlfUFVCS0VZX2JpbyAoaW4sIE5VTEwpOwotLSAgICAgIGlmIChwa2V5ICYmIHBrZXkt PnR5cGUgPT0gRVZQX1BLRVlfUlNBKQotLQlwID0gcGtleS0+cGtleS5yc2E7Ci0rICAgICAgaWYg KHBrZXkgJiYgRVZQX1BLRVlfaWQocGtleSkgPT0gRVZQX1BLRVlfUlNBKQotKwlwID0gRVZQX1BL RVlfZ2V0MF9SU0EocGtleSk7Ci0gICAgICAgQklPX3Jlc2V0IChpbik7Ci0gICAgICAgcGtrZXkg PSBkMmlfUHJpdmF0ZUtleV9iaW8gKGluLCBOVUxMKTsKLS0gICAgICBpZiAocGtrZXkgJiYgcGtr ZXktPnR5cGUgPT0gRVZQX1BLRVlfUlNBKQotLQlyID0gcGtrZXktPnBrZXkucnNhOwotKyAgICAg IGlmIChwa2tleSAmJiBFVlBfUEtFWV9pZChwa2tleSkgPT0gRVZQX1BLRVlfUlNBKQotKwlyID0g RVZQX1BLRVlfZ2V0MF9SU0EocGtrZXkpOwotICAgICAgIEJJT19mcmVlIChpbik7Ci0gICAgIH0K LSAgIGVsc2UKLUBAIC0yMzA0LDkgKzIzMzgsMTEgQEAgYmlmX3hlbmNfa2V5X3JzYV9yZWFkIChj YWRkcl90ICogcXN0LCBjYQotIAotICAgaWYgKCFwKQotICAgICB7Ci0rICAgICAgY29uc3QgQklH TlVNICpuLCAqZTsKLSsKLSsgICAgICBSU0FfZ2V0MF9rZXkociwgJm4sICZlLCBOVUxMKTsKLSAg ICAgICBwID0gUlNBX25ldyAoKTsKLS0gICAgICBwLT5uID0gQk5fZHVwIChyLT5uKTsKLS0gICAg ICBwLT5lID0gQk5fZHVwIChyLT5lKTsKLSsgICAgICBSU0Ffc2V0MF9rZXkocCwgQk5fZHVwKG4p LCBCTl9kdXAoZSksIE5VTEwpOwotICAgICB9Ci0gCi0gICBtdXRleF9lbnRlciAoeGVuY19rZXlz X210eCk7Ci1AQCAtMjM1NSwxNCArMjM5MSwxMyBAQCBiaWZfeGVuY19rZXlfcnNhX2NvbnN0cnVj dCAoY2FkZHJfdCAqIHFzCi0gICBwID0gUlNBX25ldyAoKTsKLSAgIG4gPSBCTl9iaW4yYm4gKCh1 bnNpZ25lZCBjaGFyICopIG1vZCwgYm94X2xlbmd0aCAobW9kKSAtIDEsIE5VTEwpOwotICAgZSA9 IEJOX2JpbjJibiAoKHVuc2lnbmVkIGNoYXIgKikgZXhwLCBib3hfbGVuZ3RoIChleHApIC0gMSwg TlVMTCk7Ci0tICBwLT5uID0gbjsKLS0gIHAtPmUgPSBlOwotKyAgUlNBX3NldDBfa2V5KHAsIG4s IGUsIE5VTEwpOwotICAgaWYgKHBleHApCi0gICAgIHsKLSAgICAgICBwayA9IFJTQV9uZXcgKCk7 Ci0tICAgICAgcGstPmQgPSBCTl9iaW4yYm4gKCh1bnNpZ25lZCBjaGFyICopIHBleHAsIGJveF9s ZW5ndGggKHBleHApIC0gMSwgTlVMTCk7Ci0tICAgICAgcGstPm4gPSBCTl9kdXAgKG4pOwotLSAg ICAgIHBrLT5lID0gQk5fZHVwIChlKTsKLSsgICAgICBSU0Ffc2V0MF9rZXkocCwgQk5fZHVwKG4p LAotKwkJICAgICAgQk5fZHVwKGUpLAotKwkJICAgICAgQk5fYmluMmJuICgodW5zaWduZWQgY2hh ciAqKSBwZXhwLCBib3hfbGVuZ3RoIChwZXhwKSAtIDEsIE5VTEwpKTsKLSAgICAgfQotICAgbXV0 ZXhfZW50ZXIgKHhlbmNfa2V5c19tdHgpOwotICAgayA9IHhlbmNfa2V5X2NyZWF0ZSAobmFtZSwg WEVOQ19SU0FfQUxHTywgRFNJR19SU0FfU0hBMV9BTEdPLCAwKTsKLUBAIC00MDg2LDcgKzQxMjEs NyBAQCB2b2lkIHhlbmNfdGFnX2ZyZWUgKHhlbmNfdGFnX3QgKiB0KQotICNlbmRpZgotIH0KLSAK LS14ZW5jX3RhZ190ICogeGVuY190YWdfYWRkX2NoaWxkX0JOICh4ZW5jX3RhZ190ICogdGFnLCBC SUdOVU0gKiBibikKLStzdGF0aWMgeGVuY190YWdfdCAqIHhlbmNfdGFnX2FkZF9jaGlsZF9CTiAo eGVuY190YWdfdCAqIHRhZywgY29uc3QgQklHTlVNICogYm4pCi0gewotICBjaGFyICogYnVmZmVy ID0gZGtfYWxsb2NfYm94IChCTl9udW1fYnl0ZXMgKGJuKSwgRFZfQklOKTsKLSAgY2hhciAqIGJ1 ZmZlcl9iYXNlNjQgPSBka19hbGxvY19ib3ggKGJveF9sZW5ndGggKGJ1ZmZlcikgKiAyLCBEVl9T VFJJTkcpOwotQEAgLTQxMTEsMTIgKzQxNDYsMTUgQEAgY2FkZHJfdCAqKiB4ZW5jX2dlbmVyYXRl X2V4dF9pbmZvICh4ZW5jXwotICAgY2FkZHJfdCAqKiBhcnJheTsKLSAgIGlmIChrZXktPnhla190 eXBlID09IERTSUdfS0VZX1JTQSkKLSAgICAgewotKyAgICAgIGNvbnN0IEJJR05VTSAqcnNhX24s ICpyc2FfZTsKLSsKLSsgICAgICBSU0FfZ2V0MF9rZXkoa2V5LT5raS5yc2EucnNhX3N0LCAmcnNh X24sICZyc2FfZSwgTlVMTCk7Ci0gICAgICAgeGVuY190YWdfdCAqIHJzYWtleXZhbCA9IHhlbmNf dGFnX2NyZWF0ZSAoRFNJR19VUkksICI6UlNBS2V5VmFsdWUiKTsKLSAgICAgICB4ZW5jX3RhZ190 ICogcnNhbW9kdWx1cyA9IHhlbmNfdGFnX2NyZWF0ZSAoRFNJR19VUkksICI6TW9kdWx1cyIpOwot ICAgICAgIHhlbmNfdGFnX3QgKiByc2FleHBvbmVudCA9IHhlbmNfdGFnX2NyZWF0ZSAoRFNJR19V UkksICI6RXhwb25lbnQiKTsKLSAKLS0gICAgICB4ZW5jX3RhZ19hZGRfY2hpbGRfQk4gKHJzYW1v ZHVsdXMsIGtleS0+a2kucnNhLnJzYV9zdC0+bik7Ci0tICAgICAgeGVuY190YWdfYWRkX2NoaWxk X0JOIChyc2FleHBvbmVudCwga2V5LT5raS5yc2EucnNhX3N0LT5lKTsKLSsgICAgICB4ZW5jX3Rh Z19hZGRfY2hpbGRfQk4gKHJzYW1vZHVsdXMsIHJzYV9uKTsKLSsgICAgICB4ZW5jX3RhZ19hZGRf Y2hpbGRfQk4gKHJzYWV4cG9uZW50LCByc2FfZSk7Ci0gCi0gICAgICAgeGVuY190YWdfYWRkX2No aWxkIChyc2FrZXl2YWwsIHhlbmNfdGFnX2ZpbmFsaXplIChyc2Ftb2R1bHVzKSk7Ci0gICAgICAg eGVuY190YWdfYWRkX2NoaWxkIChyc2FrZXl2YWwsIHhlbmNfdGFnX2ZpbmFsaXplIChyc2FleHBv bmVudCkpOwotQEAgLTQxMzUsMTIgKzQxNzMsMTUgQEAgY2FkZHJfdCAqKiB4ZW5jX2dlbmVyYXRl X2V4dF9pbmZvICh4ZW5jXwotICAgICAgIHhlbmNfdGFnX3QgKiBnID0geGVuY190YWdfY3JlYXRl IChEU0lHX1VSSSwgIjpHIik7Ci0gICAgICAgeGVuY190YWdfdCAqIHkgPSB4ZW5jX3RhZ19jcmVh dGUgKERTSUdfVVJJLCAiOlkiKTsKLSAgICAgICBEU0EgKiBkc2EgPSBrZXktPmtpLmRzYS5kc2Ff c3Q7Ci0rICAgICAgY29uc3QgQklHTlVNICpkc2FfcCwgKmRzYV9xLCAqZHNhX2csICpkc2FfcHVi X2tleTsKLSAKLSsgICAgICBEU0FfZ2V0MF9wcWcoZHNhLCAmZHNhX3AsICZkc2FfcSwgJmRzYV9n KTsKLSsgICAgICBEU0FfZ2V0MF9rZXkoZHNhLCAmZHNhX3B1Yl9rZXksIE5VTEwpOwotIAotLSAg ICAgIHhlbmNfdGFnX2FkZF9jaGlsZF9CTiAocCwgZHNhLT5wKTsKLS0gICAgICB4ZW5jX3RhZ19h ZGRfY2hpbGRfQk4gKHAsIGRzYS0+cSk7Ci0tICAgICAgeGVuY190YWdfYWRkX2NoaWxkX0JOIChw LCBkc2EtPmcpOwotLSAgICAgIHhlbmNfdGFnX2FkZF9jaGlsZF9CTiAocCwgZHNhLT5wdWJfa2V5 KTsKLSsgICAgICB4ZW5jX3RhZ19hZGRfY2hpbGRfQk4gKHAsIGRzYV9wKTsKLSsgICAgICB4ZW5j X3RhZ19hZGRfY2hpbGRfQk4gKHAsIGRzYV9xKTsKLSsgICAgICB4ZW5jX3RhZ19hZGRfY2hpbGRf Qk4gKHAsIGRzYV9nKTsKLSsgICAgICB4ZW5jX3RhZ19hZGRfY2hpbGRfQk4gKHAsIGRzYV9wdWJf a2V5KTsKLSAKLSAgICAgICB4ZW5jX3RhZ19hZGRfY2hpbGQgKGRzYWtleXZhbCwgeGVuY190YWdf ZmluYWxpemUgKHApKTsKLSAgICAgICB4ZW5jX3RhZ19hZGRfY2hpbGQgKGRzYWtleXZhbCwgeGVu Y190YWdfZmluYWxpemUgKHEpKTsKLUBAIC02MTg3LDcgKzYyMjgsNyBAQCBjYWRkcl90IHhlbmNf eDUwOV9nZXRfa2V5X2lkZW50aWZpZXIgKFg1Ci0gCi0gICByZXQgPSBka19hbGxvY19ib3ggKGlr ZXlpZC0+bGVuZ3RoLCBEVl9CSU4pOwotICAgbWVtY3B5IChyZXQsIGlrZXlpZC0+ZGF0YSwgaWtl eWlkLT5sZW5ndGgpOwotLSAgTV9BU04xX09DVEVUX1NUUklOR19mcmVlKGlrZXlpZCk7Ci0rICBB U04xX1NUUklOR19mcmVlKGlrZXlpZCk7Ci0gICByZXR1cm4gcmV0OwotIH0KLSAKLUBAIC02MjQ3 LDcgKzYyODgsNyBAQCBiaWZfeDUwOV9nZXRfc3ViamVjdCAoY2FkZHJfdCAqIHFzdCwgY2FkCi0g Ci0gICByZXQgPSBka19hbGxvY19ib3ggKGlrZXlpZC0+bGVuZ3RoLCBEVl9CSU4pOwotICAgbWVt Y3B5IChyZXQsIGlrZXlpZC0+ZGF0YSwgaWtleWlkLT5sZW5ndGgpOwotLSAgTV9BU04xX09DVEVU X1NUUklOR19mcmVlKGlrZXlpZCk7Ci0rICBBU04xX1NUUklOR19mcmVlKGlrZXlpZCk7Ci0gICBy ZXR1cm4gcmV0OwotIH0KLSAKLUBAIC02ODA2LDcgKzY4NDcsNyBAQCBiaWZfeGVuY194NTA5X2Nz cl9nZW5lcmF0ZSAoY2FkZHJfdCAqIHFzCi0gCXNrX1g1MDlfRVhURU5TSU9OX3B1c2goc3RfZXh0 cywgZXgpOwotICAgICB9Ci0gICBYNTA5X1JFUV9hZGRfZXh0ZW5zaW9ucyh4LCBzdF9leHRzKTsK LS0gIGlmICghWDUwOV9SRVFfc2lnbiAoeCwgcGssIChway0+dHlwZSA9PSBFVlBfUEtFWV9SU0Eg PyBFVlBfbWQ1KCkgOiBFVlBfZHNzMSgpKSkpCi0rICBpZiAoIVg1MDlfUkVRX3NpZ24gKHgsIHBr LCAoRVZQX1BLRVlfaWQocGspID09IEVWUF9QS0VZX1JTQSA/IEVWUF9tZDUoKSA6IEVWUF9zaGEx KCkpKSkKLSAgICAgewotICAgICAgIHBrID0gTlVMTDsgLyoga2VlcCBvbmUgaW4gdGhlIHhlbmNf a2V5ICovCi0gICAgICAgKmVycl9yZXQgPSBzcnZfbWFrZV9uZXdfZXJyb3IgKCI0MjAwMCIsICJY RUNYWCIsICJDYW4gbm90IHNpZ24gY2VydGlmaWNhdGUgOiAlcyIsIGdldF9zc2xfZXJyb3JfdGV4 dCAoYnVmLCBzaXplb2YgKGJ1ZikpKTsKLUBAIC02OTQ1LDE3ICs2OTg2LDE3IEBAIGJpZl94ZW5j X3g1MDlfZnJvbV9jc3IgKGNhZGRyX3QgKiBxc3QsIGMKLSAgICAgICAqZXJyX3JldCA9IHNydl9t YWtlX25ld19lcnJvciAoIjQyMDAwIiwgIlhFQ1hYIiwgIkNhbiBub3Qgc2lnbiBjZXJ0aWZpY2F0 ZSIpOwotICAgICAgIGdvdG8gZXJyOwotICAgICB9Ci0tICBzd2l0Y2ggKEVWUF9QS0VZX3R5cGUg KGNsaV9way0+dHlwZSkpCi0rICBzd2l0Y2ggKEVWUF9QS0VZX3R5cGUgKEVWUF9QS0VZX2lkKGNs aV9waykpKQotICAgICB7Ci0gICAgICAgY2FzZSBFVlBfUEtFWV9EU0E6Ci0gCSAgc2lnbl9hbGdv bmFtZSA9IERTSUdfRFNBX1NIQTFfQUxHTzsKLSAJICBlbmNfYWxnb25hbWUgPSBYRU5DX0RTQV9B TEdPOwotLQkgIGRzYSA9IGNsaV9way0+cGtleS5kc2E7Ci0rCSAgZHNhID0gRVZQX1BLRVlfZ2V0 MF9EU0EoY2xpX3BrKTsKLSAJICBicmVhazsKLSAgICAgICBjYXNlIEVWUF9QS0VZX1JTQToKLSAJ ICBzaWduX2FsZ29uYW1lID0gRFNJR19SU0FfU0hBMV9BTEdPOwotIAkgIGVuY19hbGdvbmFtZSA9 IFhFTkNfUlNBX0FMR087Ci0tCSAgcnNhID0gY2xpX3BrLT5wa2V5LnJzYTsKLSsJICByc2EgPSBF VlBfUEtFWV9nZXQwX1JTQShjbGlfcGspOwotIAkgIGJyZWFrOwotICAgICAgIGRlZmF1bHQ6Ci0g CSAgKmVycl9yZXQgPSBzcnZfbWFrZV9uZXdfZXJyb3IgKCI0MjAwMCIsICJYRUNYWCIsICJUaGUg dHlwZSBvZiBwdWJsaWMga2V5IGlzIG5vdCBzdXBwb3J0ZWQgbXVzIHRiZSBSU0Egb3IgRFNBIik7 Ci1AQCAtNzAzMiwxOSArNzA3MywxOSBAQCBiaWZfeGVuY19wa2NzMTJfZXhwb3J0IChjYWRkcl90 ICogcXN0LCBjCi0gICBpZiAoZXhwb3J0X2NoYWluKQotICAgICB7Ci0gICAgICAgaW50IGk7Ci0t ICAgICAgWDUwOV9TVE9SRV9DVFggc3RvcmVfY3R4OwotLSAgICAgIFg1MDlfU1RPUkVfQ1RYX2lu aXQgKCZzdG9yZV9jdHgsIENBX2NlcnRzLCB4LCBOVUxMKTsKLS0gICAgICBpZiAoWDUwOV92ZXJp ZnlfY2VydCAoJnN0b3JlX2N0eCkgPiAwKQotLQljaGFpbiA9IFg1MDlfU1RPUkVfQ1RYX2dldDFf Y2hhaW4gKCZzdG9yZV9jdHgpOwotKyAgICAgIFg1MDlfU1RPUkVfQ1RYICpjdHg7Ci0rICAgICAg WDUwOV9TVE9SRV9DVFhfaW5pdCAoY3R4LCBDQV9jZXJ0cywgeCwgTlVMTCk7Ci0rICAgICAgaWYg KFg1MDlfdmVyaWZ5X2NlcnQgKGN0eCkgPiAwKQotKwljaGFpbiA9IFg1MDlfU1RPUkVfQ1RYX2dl dDFfY2hhaW4gKGN0eCk7Ci0gICAgICAgZWxzZQotIAl7Ci0gCSAgY29uc3QgY2hhciAqZXJyX3N0 cjsKLS0JICBlcnJfc3RyID0gWDUwOV92ZXJpZnlfY2VydF9lcnJvcl9zdHJpbmcgKHN0b3JlX2N0 eC5lcnJvcik7Ci0rCSAgZXJyX3N0ciA9IFg1MDlfdmVyaWZ5X2NlcnRfZXJyb3Jfc3RyaW5nIChY NTA5X1NUT1JFX0NUWF9nZXRfZXJyb3IoY3R4KSk7Ci0gCSAgKmVycl9yZXQgPSBzcnZfbWFrZV9u ZXdfZXJyb3IgKCIyMjAyMyIsICJYRU5DWCIsICJYNTA5IGVycm9yOiAlcyIsIGVycl9zdHIpOwot LQkgIFg1MDlfU1RPUkVfQ1RYX2NsZWFudXAgKCZzdG9yZV9jdHgpOwotKwkgIFg1MDlfU1RPUkVf Q1RYX2NsZWFudXAgKGN0eCk7Ci0gCSAgZ290byBlcnI7Ci0gCX0KLS0gICAgICBYNTA5X1NUT1JF X0NUWF9jbGVhbnVwICgmc3RvcmVfY3R4KTsKLSsgICAgICBYNTA5X1NUT1JFX0NUWF9jbGVhbnVw IChjdHgpOwotICAgICAgIGlmIChjaGFpbikKLSAJewotIAkgIGNlcnRzID0gc2tfWDUwOV9uZXdf bnVsbCAoKTsKLUBAIC03MTUyLDE2ICs3MTkzLDE2IEBAIGJpZl94ZW5jX3B1YmtleV9wZW1fZXhw b3J0IChjYWRkcl90ICogcXMKLSAgICAgewotICAgICAgIGsgPSBYNTA5X2dldF9wdWJrZXkgKGtl eS0+eGVrX3g1MDkpOwotICNpZmRlZiBFVlBfUEtFWV9SU0EKLS0gICAgICBpZiAoay0+dHlwZSA9 PSBFVlBfUEtFWV9SU0EpCi0rICAgICAgaWYgKEVWUF9QS0VZX2lkKGspID09IEVWUF9QS0VZX1JT QSkKLSAJewotLQkgIFJTQSAqIHggPSBrLT5wa2V5LnJzYTsKLSsJICBSU0EgKnggPSBFVlBfUEtF WV9nZXQwX1JTQShrKTsKLSAJICBQRU1fd3JpdGVfYmlvX1JTQV9QVUJLRVkgKGIsIHgpOwotIAl9 Ci0gI2VuZGlmCi0gI2lmZGVmIEVWUF9QS0VZX0RTQQotLSAgICAgIGlmIChrLT50eXBlID09IEVW UF9QS0VZX0RTQSkKLSsgICAgICBpZiAoRVZQX1BLRVlfaWQoaykgPT0gRVZQX1BLRVlfRFNBKQot IAl7Ci0tCSAgRFNBICogeCA9IGstPnBrZXkuZHNhOwotKwkgIERTQSAqIHggPSBFVlBfUEtFWV9n ZXQwX0RTQShrKTsKLSAJICBQRU1fd3JpdGVfYmlvX0RTQV9QVUJLRVkgKGIsIHgpOwotIAl9Ci0g I2VuZGlmCi1AQCAtNzIwOCwxNiArNzI0OSwxNiBAQCBiaWZfeGVuY19wdWJrZXlfZGVyX2V4cG9y dCAoY2FkZHJfdCAqIHFzCi0gICAgIHsKLSAgICAgICBrID0gWDUwOV9nZXRfcHVia2V5IChrZXkt Pnhla194NTA5KTsKLSAjaWZkZWYgRVZQX1BLRVlfUlNBCi0tICAgICAgaWYgKGstPnR5cGUgPT0g RVZQX1BLRVlfUlNBKQotKyAgICAgIGlmIChFVlBfUEtFWV9pZChrKSA9PSBFVlBfUEtFWV9SU0Ep Ci0gCXsKLS0JICBSU0EgKiB4ID0gay0+cGtleS5yc2E7Ci0rCSAgUlNBICogeCA9IEVWUF9QS0VZ X2dldDBfUlNBKGspOwotIAkgIGkyZF9SU0FfUFVCS0VZX2JpbyAoYiwgeCk7Ci0gCX0KLSAjZW5k aWYKLSAjaWZkZWYgRVZQX1BLRVlfRFNBCi0tICAgICAgaWYgKGstPnR5cGUgPT0gRVZQX1BLRVlf RFNBKQotKyAgICAgIGlmIChFVlBfUEtFWV9pZChrKSA9PSBFVlBfUEtFWV9EU0EpCi0gCXsKLS0J ICBEU0EgKiB4ID0gay0+cGtleS5kc2E7Ci0rCSAgRFNBICogeCA9IEVWUF9QS0VZX2dldDBfRFNB KGspOwotIAkgIGkyZF9EU0FfUFVCS0VZX2JpbyAoYiwgeCk7Ci0gCX0KLSAjZW5kaWYKLUBAIC03 MjQ1LDcgKzcyODYsNyBAQCBlcnI6Ci0gfQotIAotIHN0YXRpYyBjYWRkcl90Ci0tQk4yYmluYm94 IChCSUdOVU0gKiB4KQotK0JOMmJpbmJveCAoY29uc3QgQklHTlVNICogeCkKLSB7Ci0gICBzaXpl X3QgYnVmX2xlbiwgbjsKLSAgIGNhZGRyX3QgYnVmOwotQEAgLTcyODAsOCArNzMyMSwxNCBAQCBz dGF0aWMgY2FkZHJfdAotIHhlbmNfcnNhX3B1Yl9tYWdpYyAoUlNBICogeCkKLSB7Ci0gICBjYWRk cl90IHJldDsKLS0gIGNhZGRyX3QgbiA9IEJOMmJpbmJveCAoeC0+bik7IC8qIG1vZHVsdXMgKi8K LS0gIGNhZGRyX3QgZSA9IEJOMmJpbmJveCAoeC0+ZSk7IC8qIHB1YmxpYyBleHBvbmVudCAqLwot KyAgY2FkZHJfdCBuOwotKyAgY2FkZHJfdCBlOwotKyAgY29uc3QgQklHTlVNICpyc2FfbiwgKnJz YV9lOwotKwotKyAgUlNBX2dldDBfa2V5KHgsICZyc2FfbiwgJnJzYV9lLCBOVUxMKTsKLSsgIG4g PSBCTjJiaW5ib3ggKHJzYV9uKTsgLyogbW9kdWx1cyAqLwotKyAgZSA9IEJOMmJpbmJveCAocnNh X2UpOyAvKiBwdWJsaWMgZXhwb25lbnQgKi8KLSsKLSAgIG4gPSB4ZW5jX2VuY29kZV9iYXNlNjRf YmluYm94IChuLCAxKTsKLSAgIGUgPSB4ZW5jX2VuY29kZV9iYXNlNjRfYmluYm94IChlLCAxKTsK LSAgIHJldCA9IGRrX2FsbG9jX2JveCAoYm94X2xlbmd0aCAobikgKyBib3hfbGVuZ3RoIChlKSAr IDQgLyogdHdvIGRvdHMgLSBvbmUgdHJhaWxpbmcgemVybyArIFJTQSBwcmVmaXggKi8sIERWX1NU UklORyk7Ci1AQCAtNzMwNiw5ICs3MzUzLDkgQEAgYmlmX3hlbmNfcHVia2V5X21hZ2ljX2V4cG9y dCAoY2FkZHJfdCAqCi0gICAgIHsKLSAgICAgICBrID0gWDUwOV9nZXRfcHVia2V5IChrZXktPnhl a194NTA5KTsKLSAjaWZkZWYgRVZQX1BLRVlfUlNBCi0tICAgICAgaWYgKGstPnR5cGUgPT0gRVZQ X1BLRVlfUlNBKQotKyAgICAgIGlmIChFVlBfUEtFWV9pZChrKSA9PSBFVlBfUEtFWV9SU0EpCi0g CXsKLS0JICBSU0EgKiB4ID0gay0+cGtleS5yc2E7Ci0rCSAgUlNBICogeCA9IEVWUF9QS0VZX2dl dDBfUlNBKGspOwotIAkgIHJldCA9IHhlbmNfcnNhX3B1Yl9tYWdpYyAoeCk7Ci0gCX0KLSAjZW5k aWYKLUBAIC03MzQ5LDEwICs3Mzk2LDE2IEBAIHN0YXRpYyBjYWRkcl90Ci0geGVuY19yc2FfcHVi X3NzaF9leHBvcnQgKFJTQSAqIHgpCi0gewotICAgc3RhdGljIGNoYXIgKiBzc2hfaGVhZGVyID0g Ilx4MDBceDAwXHgwMFx4MDdzc2gtcnNhIjsKLSsgIGNvbnN0IEJJR05VTSAqcnNhX24sICpyc2Ff ZTsKLSAgIGNhZGRyX3QgcmV0OwotICAgaW50IGxlbiwgcG9zOwotLSAgY2FkZHJfdCBuID0gQk4y YmluYm94ICh4LT5uKTsgLyogbW9kdWx1cyAqLwotLSAgY2FkZHJfdCBlID0gQk4yYmluYm94ICh4 LT5lKTsgLyogcHVibGljIGV4cG9uZW50ICovCi0rICBjYWRkcl90IG47Ci0rICBjYWRkcl90IGU7 Ci0rCi0rICBSU0FfZ2V0MF9rZXkoeCwgJnJzYV9uLCAmcnNhX2UsIE5VTEwpOwotKyAgbiA9IEJO MmJpbmJveCAocnNhX24pOyAvKiBtb2R1bHVzICovCi0rICBlID0gQk4yYmluYm94IChyc2FfZSk7 IC8qIHB1YmxpYyBleHBvbmVudCAqLwotKwotICAgbGVuID0gMTEgKyA4ICsgYm94X2xlbmd0aCAo bikgKyBib3hfbGVuZ3RoIChlKTsKLSAgIGlmIChuWzBdICYgMHg4MCkKLSAgICAgbGVuICsrOwot QEAgLTczODMsOSArNzQzNiw5IEBAIGJpZl94ZW5jX3B1YmtleV9zc2hfZXhwb3J0IChjYWRkcl90 ICogcXMKLSAgICAgewotICAgICAgIGsgPSBYNTA5X2dldF9wdWJrZXkgKGtleS0+eGVrX3g1MDkp OwotICNpZmRlZiBFVlBfUEtFWV9SU0EKLS0gICAgICBpZiAoay0+dHlwZSA9PSBFVlBfUEtFWV9S U0EpCi0rICAgICAgaWYgKEVWUF9QS0VZX2lkKGspID09IEVWUF9QS0VZX1JTQSkKLSAJewotLQkg IFJTQSAqIHggPSBrLT5wa2V5LnJzYTsKLSsJICBSU0EgKiB4ID0gRVZQX1BLRVlfZ2V0MF9SU0Eo ayk7Ci0gCSAgcmV0ID0geGVuY19yc2FfcHViX3NzaF9leHBvcnQgKHgpOwotIAl9Ci0gI2VuZGlm Ci1AQCAtNzQxOCw3ICs3NDcxLDcgQEAgYmlmX3hlbmNfU1BLSV9yZWFkIChjYWRkcl90ICogcXN0 LCBjYWRkcgotICAgICAgIHJldHVybiBOVUxMOwotICAgICB9Ci0gICBwayA9IE5FVFNDQVBFX1NQ S0lfZ2V0X3B1YmtleSAoc3BraSk7Ci0tICBpZiAoIXBrIHx8IHBrLT50eXBlICE9IEVWUF9QS0VZ X1JTQSkKLSsgIGlmICghcGsgfHwgRVZQX1BLRVlfaWQocGspICE9IEVWUF9QS0VZX1JTQSkKLSAg ICAgewotICAgICAgIE5FVFNDQVBFX1NQS0lfZnJlZSAoc3BraSk7Ci0gICAgICAgKmVycl9yZXQg PSBzcnZfbWFrZV9uZXdfZXJyb3IgKCI0MjAwMCIsICJYRUNYWCIsICJDYW4gbm90IHJldHJpZXZl IFJTQSBrZXkiKTsKLUBAIC03NTk1LDE0ICs3NjQ4LDE0IEBAIGJpZl94ZW5jX3g1MDlfY2FfY2Vy dHNfbGlzdCAoY2FkZHJfdCAqIHEKLSAgIHNlY19jaGVja19kYmEgKChRSSopcXN0LCBtZSk7Ci0g ICBpbiA9IEJJT19uZXcgKEJJT19zX21lbSAoKSk7Ci0gICBtdXRleF9lbnRlciAoeGVuY19rZXlz X210eCk7Ci0tICBjZXJ0cyA9IENBX2NlcnRzLT5vYmpzOwotKyAgY2VydHMgPSBYNTA5X1NUT1JF X2dldDBfb2JqZWN0cyhDQV9jZXJ0cyk7Ci0gICBsZW4gPSBza19YNTA5X09CSkVDVF9udW0gKGNl cnRzKTsKLSAgIGZvciAoaSA9IDA7IGkgPCBsZW47IGkrKykKLSAgICAgewotICAgICAgIFg1MDlf T0JKRUNUICogb2JqID0gc2tfWDUwOV9PQkpFQ1RfdmFsdWUgKGNlcnRzLCBpKTsKLS0gICAgICBp ZiAob2JqLT50eXBlID09IFg1MDlfTFVfWDUwOSkKLSsgICAgICBpZiAoWDUwOV9PQkpFQ1RfZ2V0 X3R5cGUob2JqKSA9PSBYNTA5X0xVX1g1MDkpCi0gCXsKLS0JICBYNTA5ICp4ID0gb2JqLT5kYXRh Lng1MDk7Ci0rCSAgWDUwOSAqeCA9IFg1MDlfT0JKRUNUX2dldDBfWDUwOShvYmopOwotIAkgIGNh ZGRyX3QgaXRtOwotIAkgIGludCBibGVuOwotIAkgIEJJT19yZXNldCAoaW4pOwotLS0tIGEvbGli c3JjL1dpL3htbGVuYy5oCi0rKysgYi9saWJzcmMvV2kveG1sZW5jLmgKLUBAIC0zOCw2ICszOCw3 IEBACi0gI2luY2x1ZGUgPG9wZW5zc2wvZHNhLmg+Ci0gI2luY2x1ZGUgPG9wZW5zc2wvcnNhLmg+ Ci0gI2luY2x1ZGUgPG9wZW5zc2wvZGVzLmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wvaG1hYy5oPgot IAotICNpZmRlZiBBRVNfRU5DX0VOQUJMRQotICNpbmNsdWRlIDxvcGVuc3NsL2Flcy5oPgotQEAg LTYzMSw1ICs2MzIsMTgzIEBAIGNhZGRyX3QgKiB4bWxfZmluZF9hbnlfY2hpbGQgKGNhZGRyX3Qg KgotIAotIGV4dGVybiBka19tdXRleF90ICogeGVuY19rZXlzX210eDsKLSAKLSsjaWYgT1BFTlNT TF9WRVJTSU9OX05VTUJFUiA8IDB4MTAxMDAwMDAKLSsKLStzdGF0aWMgaW5saW5lIEhNQUNfQ1RY ICpITUFDX0NUWF9uZXcodm9pZCkKLSt7Ci0rCUhNQUNfQ1RYICpwOwotKwotKwlwID0gY2FsbG9j KDEsIHNpemVvZihITUFDX0NUWCkpOwotKwlpZiAoIXApCi0rCQlyZXR1cm4gcDsKLSsJSE1BQ19D VFhfaW5pdChwKTsKLSsJcmV0dXJuIHA7Ci0rfQotKwotK3N0YXRpYyBpbmxpbmUgdm9pZCBITUFD X0NUWF9mcmVlKEhNQUNfQ1RYICpjdHgpCi0rewotKwlITUFDX0NUWF9jbGVhbnVwKGN0eCk7Ci0r CWZyZWUoY3R4KTsKLSt9Ci0rCi0rc3RhdGljIGlubGluZSB2b2lkIFJTQV9nZXQwX2tleShjb25z dCBSU0EgKnIsIGNvbnN0IEJJR05VTSAqKm4sCi0rCQkJCWNvbnN0IEJJR05VTSAqKmUsIGNvbnN0 IEJJR05VTSAqKmQpCi0rewotKwlpZiAobiAhPSBOVUxMKQotKwkJKm4gPSByLT5uOwotKwlpZiAo ZSAhPSBOVUxMKQotKwkJKmUgPSByLT5lOwotKwlpZiAoZCAhPSBOVUxMKQotKwkJKmQgPSByLT5k OwotK30KLSsKLStzdGF0aWMgaW5saW5lIHZvaWQgUlNBX2dldDBfZmFjdG9ycyhjb25zdCBSU0Eg KnIsIGNvbnN0IEJJR05VTSAqKnAsCi0rCQkJCSAgICBjb25zdCBCSUdOVU0gKipxKQotK3sKLSsJ aWYgKHAgIT0gTlVMTCkKLSsJCSpwID0gci0+cDsKLSsJaWYgKHEgIT0gTlVMTCkKLSsJCSpxID0g ci0+cTsKLSt9Ci0rCi0rc3RhdGljIGlubGluZSBSU0EgKkVWUF9QS0VZX2dldDBfUlNBKEVWUF9Q S0VZICpwa2V5KQotK3sKLSsJaWYgKHBrZXktPnR5cGUgIT0gRVZQX1BLRVlfUlNBKQotKwkJcmV0 dXJuIE5VTEw7Ci0rCXJldHVybiBwa2V5LT5wa2V5LnJzYTsKLSt9Ci0rCi0rc3RhdGljIGlubGlu ZSB2b2lkIERIX2dldDBfa2V5KGNvbnN0IERIICpkaCwgY29uc3QgQklHTlVNICoqcHViX2tleSwK LSsJCQkgICAgICAgY29uc3QgQklHTlVNICoqcHJpdl9rZXkpCi0rewotKwlpZiAocHViX2tleSAh PSBOVUxMKQotKwkJKnB1Yl9rZXkgPSBkaC0+cHViX2tleTsKLSsJaWYgKHByaXZfa2V5ICE9IE5V TEwpCi0rCQkqcHJpdl9rZXkgPSBkaC0+cHJpdl9rZXk7Ci0rfQotKwotKwotK3N0YXRpYyBpbmxp bmUgdm9pZCBESF9nZXQwX3BxZyhjb25zdCBESCAqZGgsIGNvbnN0IEJJR05VTSAqKnAsIGNvbnN0 IEJJR05VTSAqKnEsCi0rCQkJICAgICAgIGNvbnN0IEJJR05VTSAqKmcpCi0rewotKwlpZiAocCAh PSBOVUxMKQotKwkJKnAgPSBkaC0+cDsKLSsJaWYgKHEgIT0gTlVMTCkKLSsJCSpxID0gZGgtPnE7 Ci0rCWlmIChnICE9IE5VTEwpCi0rCQkqZyA9IGRoLT5nOwotK30KLSsKLStzdGF0aWMgaW5saW5l IERTQSAqRVZQX1BLRVlfZ2V0MF9EU0EoRVZQX1BLRVkgKnBrZXkpCi0rewotKwlpZiAocGtleS0+ dHlwZSAhPSBFVlBfUEtFWV9EU0EpCi0rCQlyZXR1cm4gTlVMTDsKLSsJcmV0dXJuIHBrZXktPnBr ZXkuZHNhOwotK30KLSsKLStzdGF0aWMgaW5saW5lIGludCBESF9zZXQwX3BxZyhESCAqZGgsIEJJ R05VTSAqcCwgQklHTlVNICpxLCBCSUdOVU0gKmcpCi0rewotKwkvKiBJZiB0aGUgZmllbGRzIHAg YW5kIGcgaW4gZCBhcmUgTlVMTCwgdGhlIGNvcnJlc3BvbmRpbmcgaW5wdXQKLSsJICogcGFyYW1l dGVycyBNVVNUIGJlIG5vbi1OVUxMLiAgcSBtYXkgcmVtYWluIE5VTEwuCi0rCSAqLwotKwlpZiAo KGRoLT5wID09IE5VTEwgJiYgcCA9PSBOVUxMKQotKwkgICAgfHwgKGRoLT5nID09IE5VTEwgJiYg ZyA9PSBOVUxMKSkKLSsJCXJldHVybiAwOwotKwotKwlpZiAocCAhPSBOVUxMKSB7Ci0rCQlCTl9m cmVlKGRoLT5wKTsKLSsJCWRoLT5wID0gcDsKLSsJfQotKwlpZiAocSAhPSBOVUxMKSB7Ci0rCQlC Tl9mcmVlKGRoLT5xKTsKLSsJCWRoLT5xID0gcTsKLSsJfQotKwlpZiAoZyAhPSBOVUxMKSB7Ci0r CQlCTl9mcmVlKGRoLT5nKTsKLSsJCWRoLT5nID0gZzsKLSsJfQotKwotKwlpZiAocSAhPSBOVUxM KSB7Ci0rCQlkaC0+bGVuZ3RoID0gQk5fbnVtX2JpdHMocSk7Ci0rCX0KLSsKLSsJcmV0dXJuIDE7 Ci0rfQotKwotK3N0YXRpYyBpbmxpbmUgaW50IFJTQV9zZXQwX2tleShSU0EgKnIsIEJJR05VTSAq biwgQklHTlVNICplLCBCSUdOVU0gKmQpCi0rewotKwkvKiBJZiB0aGUgZmllbGRzIG4gYW5kIGUg aW4gciBhcmUgTlVMTCwgdGhlIGNvcnJlc3BvbmRpbmcgaW5wdXQKLSsJICogcGFyYW1ldGVycyBN VVNUIGJlIG5vbi1OVUxMIGZvciBuIGFuZCBlLiAgZCBtYXkgYmUKLSsJICogbGVmdCBOVUxMIChp biBjYXNlIG9ubHkgdGhlIHB1YmxpYyBrZXkgaXMgdXNlZCkuCi0rCSAqLwotKwlpZiAoKHItPm4g PT0gTlVMTCAmJiBuID09IE5VTEwpCi0rCSAgICB8fCAoci0+ZSA9PSBOVUxMICYmIGUgPT0gTlVM TCkpCi0rCQlyZXR1cm4gMDsKLSsKLSsJaWYgKG4gIT0gTlVMTCkgewotKwkJQk5fZnJlZShyLT5u KTsKLSsJCXItPm4gPSBuOwotKwl9Ci0rCWlmIChlICE9IE5VTEwpIHsKLSsJCUJOX2ZyZWUoci0+ ZSk7Ci0rCQlyLT5lID0gZTsKLSsJfQotKwlpZiAoZCAhPSBOVUxMKSB7Ci0rCQlCTl9mcmVlKHIt PmQpOwotKwkJci0+ZCA9IGQ7Ci0rCX0KLSsKLSsJcmV0dXJuIDE7Ci0rfQotKwotK3N0YXRpYyBp bmxpbmUgdm9pZCBEU0FfZ2V0MF9wcWcoY29uc3QgRFNBICpkLCBjb25zdCBCSUdOVU0gKipwLAot KwkJCQljb25zdCBCSUdOVU0gKipxLCBjb25zdCBCSUdOVU0gKipnKQotK3sKLSsJaWYgKHAgIT0g TlVMTCkKLSsJCSpwID0gZC0+cDsKLSsJaWYgKHEgIT0gTlVMTCkKLSsJCSpxID0gZC0+cTsKLSsJ aWYgKGcgIT0gTlVMTCkKLSsJCSpnID0gZC0+ZzsKLSt9Ci0rCi0rc3RhdGljIGlubGluZSB2b2lk IERTQV9nZXQwX2tleShjb25zdCBEU0EgKmQsIGNvbnN0IEJJR05VTSAqKnB1Yl9rZXksCi0rCQkJ CWNvbnN0IEJJR05VTSAqKnByaXZfa2V5KQotK3sKLSsJaWYgKHB1Yl9rZXkgIT0gTlVMTCkKLSsJ CSpwdWJfa2V5ID0gZC0+cHViX2tleTsKLSsJaWYgKHByaXZfa2V5ICE9IE5VTEwpCi0rCQkqcHJp dl9rZXkgPSBkLT5wcml2X2tleTsKLSt9Ci0rCi0rc3RhdGljIGlubGluZSBjb25zdCBTVEFDS19P RihYNTA5X0VYVEVOU0lPTikgKlg1MDlfZ2V0MF9leHRlbnNpb25zKGNvbnN0IFg1MDkgKngpCi0r ewotKwlyZXR1cm4geC0+Y2VydF9pbmZvLT5leHRlbnNpb25zOwotK30KLSsKLStzdGF0aWMgaW5s aW5lIGludCBYNTA5X3VwX3JlZihYNTA5ICp4KQotK3sKLSsJcmV0dXJuIENSWVBUT19hZGQoJngt PnJlZmVyZW5jZXMsIDEsIENSWVBUT19MT0NLX1g1MDkpOwotK30KLSsKLStzdGF0aWMgaW5saW5l IFNUQUNLX09GKFg1MDlfT0JKRUNUKSAqWDUwOV9TVE9SRV9nZXQwX29iamVjdHMoWDUwOV9TVE9S RSAqdikKLSt7Ci0rCXJldHVybiB2LT5vYmpzOwotK30KLSsKLStzdGF0aWMgaW5saW5lIGludCBY NTA5X09CSkVDVF9nZXRfdHlwZShjb25zdCBYNTA5X09CSkVDVCAqYSkKLSt7Ci0rCXJldHVybiBh LT50eXBlOwotK30KLSsKLStzdGF0aWMgaW5saW5lIFg1MDkgKlg1MDlfT0JKRUNUX2dldDBfWDUw OShjb25zdCBYNTA5X09CSkVDVCAqYSkKLSt7Ci0rCWlmIChhID09IE5VTEwgfHwgYS0+dHlwZSAh PSBYNTA5X0xVX1g1MDkpCi0rCQlyZXR1cm4gTlVMTDsKLSsJcmV0dXJuIGEtPmRhdGEueDUwOTsK LSt9Ci0rCi0rI2VuZGlmCi0rCi0gI2VuZGlmCi0gCi0tLS0gYS9saWJzcmMvV2kveG1sZW5jX2Fs Z29zLmMKLSsrKyBiL2xpYnNyYy9XaS94bWxlbmNfYWxnb3MuYwotQEAgLTExNDksNyArMTE0OSw3 IEBAIGludAotIGRzaWdfaG1hY19zaGEyNTZfZGlnZXN0IChka19zZXNzaW9uX3QgKiBzZXNfaW4s IGxvbmcgbGVuLCB4ZW5jX2tleV90ICoga2V5LCBjYWRkcl90ICogc2lnbl9vdXQpCi0gewotICAg dW5zaWduZWQgY2hhciAqIGRhdGE7Ci0tICBITUFDX0NUWCBjdHg7Ci0rICBITUFDX0NUWCAqY3R4 OwotICAgdW5zaWduZWQgY2hhciBrZXlfZGF0YVszMiAqIDhdOwotICAgdW5zaWduZWQgY2hhciBt ZCBbU0hBMjU2X0RJR0VTVF9MRU5HVEggKyAxXTsKLSAgIHVuc2lnbmVkIGNoYXIgbWQ2NCBbU0hB MjU2X0RJR0VTVF9MRU5HVEggKiAyICsgMV07Ci1AQCAtMTE4Miw3ICsxMTgyLDkgQEAgZHNpZ19o bWFjX3NoYTI1Nl9kaWdlc3QgKGRrX3Nlc3Npb25fdCAqCi0gICAgICAgZGVmYXVsdDoKLSAJICBy ZXR1cm4gMDsKLSAgICAgfQotLQotKyAgY3R4ID0gSE1BQ19DVFhfbmV3KCk7Ci0rICBpZiAoIWN0 eCkKLSsJICByZXR1cm4gMDsKLSAKLSAgIGRhdGEgPSAodW5zaWduZWQgY2hhciAqKSBka19hbGxv Y19ib3ggKGxlbiwgRFZfQ19TVFJJTkcpOwotICAgQ0FUQ0hfUkVBRF9GQUlMIChzZXNfaW4pCi1A QCAtMTE5MiwxNCArMTE5NCwxNSBAQCBkc2lnX2htYWNfc2hhMjU2X2RpZ2VzdCAoZGtfc2Vzc2lv bl90ICoKLSAgIEZBSUxFRAotICAgICB7Ci0gICAgICAgZGtfZnJlZV9ib3ggKChib3hfdCkgZGF0 YSk7Ci0rICAgICAgSE1BQ19DVFhfZnJlZShjdHgpOwotICAgICAgIHJldHVybiAwOwotICAgICB9 Ci0gICBFTkRfUkVBRF9GQUlMIChzZXNfaW4pOwotIAotLSAgSE1BQ19Jbml0KCZjdHgsICh2b2lk Kikga2V5X2RhdGEgLCBrZXlfbGVuLCBFVlBfc2hhMjU2ICgpKTsKLS0gIEhNQUNfVXBkYXRlKCZj dHgsIGRhdGEsIGxlbik7Ci0tICBITUFDX0ZpbmFsKCZjdHgsIG1kLCAmaG1hY19sZW4pOwotLSAg SE1BQ19jbGVhbnVwKCZjdHgpOwotKyAgSE1BQ19Jbml0X2V4KGN0eCwgKHZvaWQqKSBrZXlfZGF0 YSAsIGtleV9sZW4sIEVWUF9zaGEyNTYgKCksIE5VTEwpOwotKyAgSE1BQ19VcGRhdGUoY3R4LCBk YXRhLCBsZW4pOwotKyAgSE1BQ19GaW5hbChjdHgsIG1kLCAmaG1hY19sZW4pOwotKyAgSE1BQ19D VFhfZnJlZShjdHgpOwotIAotICAgaWYgKGhtYWNfbGVuICE9IFNIQTI1Nl9ESUdFU1RfTEVOR1RI KQotICAgICBHUEZfVDsKLUBAIC0xMjIwLDcgKzEyMjMsNyBAQCBkc2lnX2htYWNfc2hhMjU2X2Rp Z2VzdCAoZGtfc2Vzc2lvbl90ICoKLSBpbnQKLSBkc2lnX2htYWNfc2hhMjU2X3ZlcmlmeSAoZGtf c2Vzc2lvbl90ICogc2VzX2luLCBsb25nIGxlbiwgeGVuY19rZXlfdCAqIGtleSwgY2FkZHJfdCBk aWdlc3QpCi0gewotLSAgSE1BQ19DVFggY3R4OwotKyAgSE1BQ19DVFggKmN0eDsKLSAgIHVuc2ln bmVkIGNoYXIgKiBkYXRhOwotICAgdW5zaWduZWQgY2hhciBrZXlfZGF0YVszICogOF07Ci0gICB1 bnNpZ25lZCBjaGFyIG1kIFtTSEEyNTZfRElHRVNUX0xFTkdUSCArIDFdOwotQEAgLTEyNDksNiAr MTI1Miw5IEBAIGRzaWdfaG1hY19zaGEyNTZfdmVyaWZ5IChka19zZXNzaW9uX3QgKgotIAkgIHJl dHVybiAwOwotICAgICB9Ci0gCi0rICBjdHggPSBITUFDX0NUWF9uZXcoKTsKLSsgIGlmICghY3R4 KQotKwkgIHJldHVybiAwOwotIAotICAgZGF0YSA9ICh1bnNpZ25lZCBjaGFyICopIGRrX2FsbG9j X2JveCAobGVuLCBEVl9DX1NUUklORyk7Ci0gICBDQVRDSF9SRUFEX0ZBSUwgKHNlc19pbikKLUBA IC0xMjU4LDE0ICsxMjY0LDE1IEBAIGRzaWdfaG1hY19zaGEyNTZfdmVyaWZ5IChka19zZXNzaW9u X3QgKgotICAgRkFJTEVECi0gICAgIHsKLSAgICAgICBka19mcmVlX2JveCAoKGJveF90KSBkYXRh KTsKLSsgICAgICBITUFDX0NUWF9mcmVlKGN0eCk7Ci0gICAgICAgcmV0dXJuIDA7Ci0gICAgIH0K LSAgIEVORF9SRUFEX0ZBSUwgKHNlc19pbik7Ci0gCi0tICBITUFDX0luaXQoJmN0eCwgKHZvaWQq KSBrZXlfZGF0YSAsIGtleV9sZW4sIEVWUF9zaGEyNTYgKCkpOwotLSAgSE1BQ19VcGRhdGUoJmN0 eCwgZGF0YSwgbGVuKTsKLS0gIEhNQUNfRmluYWwoJmN0eCwgbWQsICZobWFjX2xlbik7Ci0tICBI TUFDX2NsZWFudXAoJmN0eCk7Ci0rICBITUFDX0luaXRfZXgoY3R4LCAodm9pZCopIGtleV9kYXRh ICwga2V5X2xlbiwgRVZQX3NoYTI1NiAoKSwgTlVMTCk7Ci0rICBITUFDX1VwZGF0ZShjdHgsIGRh dGEsIGxlbik7Ci0rICBITUFDX0ZpbmFsKGN0eCwgbWQsICZobWFjX2xlbik7Ci0rICBITUFDX0NU WF9mcmVlKGN0eCk7Ci0gICBka19mcmVlX2JveCAoKGJveF90KSBkYXRhKTsKLSAKLSAgIGxlbjEg PSB4ZW5jX2VuY29kZV9iYXNlNjQgKChjaGFyICopbWQsIG1kNjQsIGhtYWNfbGVuKTsKLUBAIC0x NTg2LDcgKzE1OTMsNyBAQCBpbnQKLSBkc2lnX2htYWNfc2hhMV9kaWdlc3QgKGRrX3Nlc3Npb25f dCAqIHNlc19pbiwgbG9uZyBsZW4sIHhlbmNfa2V5X3QgKiBrZXksIGNhZGRyX3QgKiBzaWduX291 dCkKLSB7Ci0gICB1bnNpZ25lZCBjaGFyICogZGF0YTsKLS0gIEhNQUNfQ1RYIGN0eDsKLSsgIEhN QUNfQ1RYICpjdHg7Ci0gICB1bnNpZ25lZCBjaGFyIGtleV9kYXRhWzMyICogOF07Ci0gICB1bnNp Z25lZCBjaGFyIG1kIFtTSEFfRElHRVNUX0xFTkdUSCArIDFdOwotICAgdW5zaWduZWQgY2hhciBt ZDY0IFtTSEFfRElHRVNUX0xFTkdUSCAqIDIgKyAxXTsKLUBAIC0xNjIwLDYgKzE2MjcsOSBAQCBk c2lnX2htYWNfc2hhMV9kaWdlc3QgKGRrX3Nlc3Npb25fdCAqIHNlCi0gCSAgcmV0dXJuIDA7Ci0g ICAgIH0KLSAKLSsgIGN0eCA9IEhNQUNfQ1RYX25ldygpOwotKyAgaWYgKCFjdHgpCi0rCSAgcmV0 dXJuIDA7Ci0gCi0gICBkYXRhID0gKHVuc2lnbmVkIGNoYXIgKikgZGtfYWxsb2NfYm94IChsZW4s IERWX0NfU1RSSU5HKTsKLSAgIENBVENIX1JFQURfRkFJTCAoc2VzX2luKQotQEAgLTE2MjksMTQg KzE2MzksMTUgQEAgZHNpZ19obWFjX3NoYTFfZGlnZXN0IChka19zZXNzaW9uX3QgKiBzZQotICAg RkFJTEVECi0gICAgIHsKLSAgICAgICBka19mcmVlX2JveCAoKGJveF90KSBkYXRhKTsKLSsgICAg ICBITUFDX0NUWF9mcmVlKGN0eCk7Ci0gICAgICAgcmV0dXJuIDA7Ci0gICAgIH0KLSAgIEVORF9S RUFEX0ZBSUwgKHNlc19pbik7Ci0gCi0tICBITUFDX0luaXQoJmN0eCwgKHZvaWQqKSBrZXlfZGF0 YSAsIGtleV9sZW4sIEVWUF9zaGExICgpKTsKLS0gIEhNQUNfVXBkYXRlKCZjdHgsIGRhdGEsIGxl bik7Ci0tICBITUFDX0ZpbmFsKCZjdHgsIG1kLCAmaG1hY19sZW4pOwotLSAgSE1BQ19jbGVhbnVw KCZjdHgpOwotKyAgSE1BQ19Jbml0X2V4KGN0eCwgKHZvaWQqKSBrZXlfZGF0YSAsIGtleV9sZW4s IEVWUF9zaGExICgpLCBOVUxMKTsKLSsgIEhNQUNfVXBkYXRlKGN0eCwgZGF0YSwgbGVuKTsKLSsg IEhNQUNfRmluYWwoY3R4LCBtZCwgJmhtYWNfbGVuKTsKLSsgIEhNQUNfQ1RYX2ZyZWUoY3R4KTsK LSAKLSAgIGlmIChobWFjX2xlbiAhPSBTSEFfRElHRVNUX0xFTkdUSCkKLSAgICAgR1BGX1Q7Ci1A QCAtMTY1Nyw3ICsxNjY4LDcgQEAgZHNpZ19obWFjX3NoYTFfZGlnZXN0IChka19zZXNzaW9uX3Qg KiBzZQotIGludAotIGRzaWdfaG1hY19zaGExX3ZlcmlmeSAoZGtfc2Vzc2lvbl90ICogc2VzX2lu LCBsb25nIGxlbiwgeGVuY19rZXlfdCAqIGtleSwgY2FkZHJfdCBkaWdlc3QpCi0gewotLSAgSE1B Q19DVFggY3R4OwotKyAgSE1BQ19DVFggKmN0eDsKLSAgIHVuc2lnbmVkIGNoYXIgKiBkYXRhOwot ICAgdW5zaWduZWQgY2hhciBrZXlfZGF0YVszICogOF07Ci0gICB1bnNpZ25lZCBjaGFyIG1kIFtT SEFfRElHRVNUX0xFTkdUSCArIDFdOwotQEAgLTE2ODYsNiArMTY5Nyw5IEBAIGRzaWdfaG1hY19z aGExX3ZlcmlmeSAoZGtfc2Vzc2lvbl90ICogc2UKLSAJICByZXR1cm4gMDsKLSAgICAgfQotIAot KyAgY3R4ID0gSE1BQ19DVFhfbmV3KCk7Ci0rICBpZiAoIWN0eCkKLSsJICByZXR1cm4gMDsKLSAK LSAgIGRhdGEgPSAodW5zaWduZWQgY2hhciAqKSBka19hbGxvY19ib3ggKGxlbiwgRFZfQ19TVFJJ TkcpOwotICAgQ0FUQ0hfUkVBRF9GQUlMIChzZXNfaW4pCi1AQCAtMTY5NSwxNCArMTcwOSwxNSBA QCBkc2lnX2htYWNfc2hhMV92ZXJpZnkgKGRrX3Nlc3Npb25fdCAqIHNlCi0gICBGQUlMRUQKLSAg ICAgewotICAgICAgIGRrX2ZyZWVfYm94ICgoYm94X3QpIGRhdGEpOwotKyAgICAgIEhNQUNfQ1RY X2ZyZWUoY3R4KTsKLSAgICAgICByZXR1cm4gMDsKLSAgICAgfQotICAgRU5EX1JFQURfRkFJTCAo c2VzX2luKTsKLSAKLS0gIEhNQUNfSW5pdCgmY3R4LCAodm9pZCopIGtleV9kYXRhICwga2V5X2xl biwgRVZQX3NoYTEgKCkpOwotLSAgSE1BQ19VcGRhdGUoJmN0eCwgZGF0YSwgbGVuKTsKLS0gIEhN QUNfRmluYWwoJmN0eCwgbWQsICZobWFjX2xlbik7Ci0tICBITUFDX2NsZWFudXAoJmN0eCk7Ci0r ICBITUFDX0luaXRfZXgoY3R4LCAodm9pZCopIGtleV9kYXRhICwga2V5X2xlbiwgRVZQX3NoYTEg KCksIE5VTEwpOwotKyAgSE1BQ19VcGRhdGUoY3R4LCBkYXRhLCBsZW4pOwotKyAgSE1BQ19GaW5h bChjdHgsIG1kLCAmaG1hY19sZW4pOwotKyAgSE1BQ19DVFhfZnJlZShjdHgpOwotICAgZGtfZnJl ZV9ib3ggKChib3hfdCkgZGF0YSk7Ci0gCi0gICBsZW4xID0geGVuY19lbmNvZGVfYmFzZTY0ICgo Y2hhciAqKW1kLCBtZDY0LCBobWFjX2xlbik7Ci1AQCAtMTc2Myw3ICsxNzc4LDcgQEAgaW50IHhl bmNfYWVzX2VuY3J5cHRvciAoZGtfc2Vzc2lvbl90ICogcwotICAgY2FkZHJfdCBvdXRidWZfYmVn OwotICAgaW50IGxlbjsKLSAgIGNhZGRyX3QgZW5jb2RlZF9vdXQ7Ci0tICBFVlBfQ0lQSEVSX0NU WCBjdHg7Ci0rICBFVlBfQ0lQSEVSX0NUWCAqY3R4OwotICAgdW5zaWduZWQgY2hhciAqIGl2ZWMg PSAma2V5LT5raS5hZXMuaXZbMF07Ci0gCi0gICBDQVRDSF9SRUFEX0ZBSUwgKHNlc19pbikKLUBA IC0xNzc4LDcgKzE3OTMsNyBAQCBpbnQgeGVuY19hZXNfZW5jcnlwdG9yIChka19zZXNzaW9uX3Qg KiBzCi0gICBFTkRfUkVBRF9GQUlMIChzZXNfaW4pOwotIAotICNpZiAxCi0tICBFVlBfQ0lQSEVS X0NUWF9pbml0KCZjdHgpOwotKyAgY3R4ID0gRVZQX0NJUEhFUl9DVFhfbmV3KCk7Ci0gICBvdXRi dWZfYmVnID0gZGtfYWxsb2NfYm94IChib3hfbGVuZ3RoICh0ZXh0KSArIDE2LCBEVl9CSU4pOwot ICAgbWVtY3B5IChvdXRidWZfYmVnLCBpdmVjLCAxNik7Ci0gICBvdXRidWYgPSBvdXRidWZfYmVn ICsgMTY7Ci1AQCAtMTc4NiwyMCArMTgwMSwxOSBAQCBpbnQgeGVuY19hZXNfZW5jcnlwdG9yIChk a19zZXNzaW9uX3QgKiBzCi0gICBzd2l0Y2ggKGtleS0+a2kuYWVzLmJpdHMpCi0gICAgIHsKLSAg ICAgY2FzZSAxMjg6Ci0tICAgICAgRVZQX0VuY3J5cHRJbml0X2V4KCZjdHgsIEVWUF9hZXNfMTI4 X2NiYygpLCBOVUxMLCBrZXktPmtpLmFlcy5rLCBpdmVjKTsKLSsgICAgICBFVlBfRW5jcnlwdElu aXRfZXgoY3R4LCBFVlBfYWVzXzEyOF9jYmMoKSwgTlVMTCwga2V5LT5raS5hZXMuaywgaXZlYyk7 Ci0gICAgICAgYnJlYWs7Ci0gICAgIGNhc2UgMTkyOgotLSAgICAgIEVWUF9FbmNyeXB0SW5pdF9l eCgmY3R4LCBFVlBfYWVzXzE5Ml9jYmMoKSwgTlVMTCwga2V5LT5raS5hZXMuaywgaXZlYyk7Ci0r ICAgICAgRVZQX0VuY3J5cHRJbml0X2V4KGN0eCwgRVZQX2Flc18xOTJfY2JjKCksIE5VTEwsIGtl eS0+a2kuYWVzLmssIGl2ZWMpOwotICAgICAgIGJyZWFrOwotICAgICBjYXNlIDI1NjoKLS0gICAg ICBFVlBfRW5jcnlwdEluaXRfZXgoJmN0eCwgRVZQX2Flc18yNTZfY2JjKCksIE5VTEwsIGtleS0+ a2kuYWVzLmssIGl2ZWMpOwotKyAgICAgIEVWUF9FbmNyeXB0SW5pdF9leChjdHgsIEVWUF9hZXNf MjU2X2NiYygpLCBOVUxMLCBrZXktPmtpLmFlcy5rLCBpdmVjKTsKLSAgICAgICBicmVhazsKLSAg ICAgZGVmYXVsdDoKLSAgICAgICBHUEZfVDEgKCJVbnN1cHBvcnRlZCBrZXkgc2l6ZSIpOwotICAg ICB9Ci0tICBpZighRVZQX0VuY3J5cHRVcGRhdGUoJmN0eCwgKHVuc2lnbmVkIGNoYXIgKilvdXRi dWYsICZvdXRsZW4sICh1bnNpZ25lZCBjaGFyICopdGV4dCwgYm94X2xlbmd0aCAodGV4dCkpKQot KyAgaWYoIUVWUF9FbmNyeXB0VXBkYXRlKGN0eCwgKHVuc2lnbmVkIGNoYXIgKilvdXRidWYsICZv dXRsZW4sICh1bnNpZ25lZCBjaGFyICopdGV4dCwgYm94X2xlbmd0aCAodGV4dCkpKQotICAgICB7 Ci0tICAgICAgRVZQX0NJUEhFUl9DVFhfY2xlYW51cCgmY3R4KTsKLSAgICAgICBka19mcmVlX2Jv eCAodGV4dCk7Ci0gICAgICAgZGtfZnJlZV9ib3ggKG91dGJ1Zl9iZWcpOwotICAgICAgIHhlbmNf cmVwb3J0X2Vycm9yICh0LCA1MDAsIFhFTkNfRU5DX0VSUiwgIkFFUyBlbmNyeXB0aW9uIGludGVy bmFsIGVycm9yICMyIik7Ci1AQCAtMTgxMiw3ICsxODI2LDcgQEAgaW50IHhlbmNfYWVzX2VuY3J5 cHRvciAoZGtfc2Vzc2lvbl90ICogcwotICAgICAgIHhlbmNfcmVwb3J0X2Vycm9yICh0LCA1MDAs IFhFTkNfRU5DX0VSUiwgIkFFUyBlbmNyeXB0aW9uIGludGVybmFsIGVycm9yICMzIik7Ci0gICAg ICAgfSAqLwotICAgLyogb3V0bGVuICs9IHRtcGxlbjsgKi8KLS0gIEVWUF9DSVBIRVJfQ1RYX2Ns ZWFudXAoJmN0eCk7Ci0rICBFVlBfQ0lQSEVSX0NUWF9mcmVlKGN0eCk7Ci0gCi0gI2Vsc2UKLSAg IG91dGJ1Zl9iZWcgPSBka19hbGxvY19ib3ggKGJveF9sZW5ndGggKHRleHQpICsgMTYgLyogaXYg Ki8sIERWX0JJTik7Ci1AQCAtMjA1MCw2ICsyMDY0LDcgQEAgeGVuY19yc2FfZGVjcnlwdG9yIChk a19zZXNzaW9uX3QgKiBzZXNfaQotICAgaW50IGxlbiA9IDA7Ci0gICBpbnQga2V5c2l6ZTsKLSAg IFJTQSAqIHJzYSA9IGtleS0+eGVrX3ByaXZhdGVfcnNhOwotKyAgY29uc3QgQklHTlVNICpwLCAq cTsKLSAKLSAgIGlmICghc2VzbGVuKQotICAgICB7Ci1AQCAtMjA2Miw5ICsyMDc3LDkgQEAgeGVu Y19yc2FfZGVjcnlwdG9yIChka19zZXNzaW9uX3QgKiBzZXNfaQotICAgICAgIHhlbmNfcmVwb3J0 X2Vycm9yICh0LCA1MDAgKyBzdHJsZW4gKGtleS0+eGVrX25hbWUpLCBYRU5DX0VOQ19FUlIsICJj b3VsZCBub3QgbWFrZSBSU0EgZGVjcnlwdGlvbiBba2V5ICVzIGlzIG5vdCBSU0FdIiwga2V5LT54 ZWtfbmFtZSk7Ci0gICAgICAgcmV0dXJuIDA7Ci0gICAgIH0KLSsgIFJTQV9nZXQwX2ZhY3RvcnMo cnNhLCAmcCwgJnEpOwotICAgaWYgKCFyc2EgfHwKLS0gICAgICAhcnNhLT5wIHx8Ci0tICAgICAg IXJzYS0+cSkKLSsgICAgICAhcCB8fCAhcSkKLSAgICAgewotICAgICAgIGlmIChrZXktPnhla194 NTA5X0tJKQotIAlrZXkgPSB4ZW5jX2dldF9rZXlfYnlfa2V5aWRlbnRpZmllciAoa2V5LT54ZWtf eDUwOV9LSSwgMSk7Ci0tLS0gYS9saWJzcmMvdXRpbC9zc2xlbmdpbmUuYwotKysrIGIvbGlic3Jj L3V0aWwvc3NsZW5naW5lLmMKLUBAIC0yOSw3ICsyOSwxMSBAQAotIGludAotIHNzbF9lbmdpbmVf c3RhcnR1cCAodm9pZCkKLSB7Ci0tICBDUllQVE9fbWFsbG9jX2luaXQgKCk7Ci0rI2lmIE9QRU5T U0xfVkVSU0lPTl9OVU1CRVIgPCAweDEwMTAwMDAwIHx8IGRlZmluZWQgTElCUkVTU0xfVkVSU0lP Tl9OVU1CRVIKLSsJQ1JZUFRPX21hbGxvY19pbml0ICgpOwotKyNlbHNlCi0rCU9QRU5TU0xfbWFs bG9jX2luaXQoKTsKLSsjZW5kaWYKLSAgIEVSUl9sb2FkX2NyeXB0b19zdHJpbmdzKCk7Ci0gICBP cGVuU1NMX2FkZF9hbGxfYWxnb3JpdGhtcygpOwotIAotLS0tIGEvbGlic3JjL1dpL2h0dHAuYwot KysrIGIvbGlic3JjL1dpL2h0dHAuYwotQEAgLTg4ODYsNyArODg4Niw3IEBAIHNzbF9zZXJ2ZXJf c2V0X2NlcnRpZmljYXRlIChTU0xfQ1RYKiBzc2wKLSAJCSAgbG9nX2Vycm9yICgiU1NMOiBUaGUg c3RvcmVkIGNlcnRpZmljYXRlICclcycgY2FuIG5vdCBiZSB1c2VkIGFzIGV4dHJhIGNoYWluIGNl cnRpZmljYXRlIiwgdG9rKTsKLSAJCSAgYnJlYWs7Ci0gCQl9Ci0tCSAgICAgIENSWVBUT19hZGQo JmstPnhla194NTA5LT5yZWZlcmVuY2VzLCAxLCBDUllQVE9fTE9DS19YNTA5KTsKLSsJICAgICAg WDUwOV91cF9yZWYoay0+eGVrX3g1MDkpOwotICAgICAgICAgICAgICAgdG9rID0gc3RydG9rX3Ig KE5VTEwsICIsIiwgJnRva19zKTsKLSAJICAgIH0KLSAJICBka19mcmVlX2JveCAoc3RyKTsKLS0t LSBhL2xpYnNyYy9Eay9Ea2VybmVsLmMKLSsrKyBiL2xpYnNyYy9Eay9Ea2VybmVsLmMKLUBAIC01 MjgwLDcgKzUyODAsMTEgQEAgc3NsX3NlcnZlcl9pbml0ICgpCi0gICB9Ci0gI2VuZGlmCi0gCi0t ICBTU0xlYXlfYWRkX2FsbF9hbGdvcml0aG1zICgpOwotKyNpZiBPUEVOU1NMX1ZFUlNJT05fTlVN QkVSIDwgMHgxMDEwMDAwMAotKyAgU1NMZWF5X2FkZF9hbGxfYWxnb3JpdGhtcygpOwotKyNlbHNl Ci0rICBPcGVuU1NMX2FkZF9hbGxfYWxnb3JpdGhtcygpOwotKyNlbmRpZgotICAgUEtDUzEyX1BC RV9hZGQgKCk7CQkvKiBzdHViICovCi0gCi0gI2lmZGVmIE5PX1RIUkVBRApkaWZmIC0tZ2l0IGEv c3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL3NzbDEuMV9tb3JlLnBhdGNoIGIvc3JjcGtncy92aXJ0 dW9zby9wYXRjaGVzL3NzbDEuMV9tb3JlLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp bmRleCA2NmU1MGVjMTI3YmEuLjAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3ZpcnR1b3NvL3Bh dGNoZXMvc3NsMS4xX21vcmUucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwyMCArMCwwIEBACi1E ZXNjcmlwdGlvbjogQ29tbWVudCB1bmtub3duIGRlZmluaXRpb24gaW4gc3NsMS4xIC0gcGxlYXNl IHJldmlldyEKLUF1dGhvcjogQW5kcmVhcyBUaWxsZSA8dGlsbGVAZGViaWFuLm9yZz4KLUJ1Zy1E ZWJpYW46IGh0dHBzOi8vYnVncy5kZWJpYW4ub3JnLzgyODU5NAotTGFzdC1VcGRhdGU6IE1vIDEx LiBGZWIgMTM6NTA6MTcgQ0VUIDIwMTkKLQotLS0tIGEvbGlic3JjL0RrL0RrZXJuZWwuYwotKysr IGIvbGlic3JjL0RrL0RrZXJuZWwuYwotQEAgLTUxNjEsMTAgKzUxNjEsMTIgQEAgc3NsX2N0eF9z ZXRfcHJvdG9jb2xfb3B0aW9ucyhTU0xfQ1RYICpjdAotICAgICAgIGVsc2UgaWYgKCFzdHJjYXNl Y21wIChuYW1lLCAiVExTdjFfMiIpIHx8ICFzdHJjYXNlY21wIChuYW1lLCAiVExTdjEuMiIpKQot IAlvcHQgPSBTU0xfUFJPVE9DT0xfVExTVjFfMjsKLSAjZW5kaWYKLSsvKgotICNpZiBkZWZpbmVk IChTU0xfT1BfTk9fVExTdjFfMykKLSAgICAgICBlbHNlIGlmICghc3RyY2FzZWNtcCAobmFtZSwg IlRMU3YxXzMiKSB8fCAhc3RyY2FzZWNtcCAobmFtZSwgIlRMU3YxLjMiKSkKLSAJb3B0ID0gU1NM X1BST1RPQ09MX1RMU1YxXzM7Ci0gI2VuZGlmCi0rKi8KLSAgICAgICBlbHNlIGlmICghc3RyY2Fz ZWNtcCAobmFtZSwgIkFMTCIpKQotIAlvcHQgPSBTU0xfUFJPVE9DT0xfQUxMOwotICAgICAgIGVs c2UKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy91c2UtbWtzdGVtcC5wYXRj aCBiL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy91c2UtbWtzdGVtcC5wYXRjaApkZWxldGVkIGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggZDcxYjdlNDE3YmQ5Li4wMDAwMDAwMDAwMDAKLS0tIGEvc3Jj cGtncy92aXJ0dW9zby9wYXRjaGVzL3VzZS1ta3N0ZW1wLnBhdGNoCisrKyAvZGV2L251bGwKQEAg LTEsMTggKzAsMCBAQAotU291cmNlOiBAcHVsbG1vbGwKLVVwc3RyZWFtOiBubwotUmVhc29uOiBB dm9pZCBta3RlbXAoMykgYmVjYXVzZSAiTmV2ZXIgdXNlIHRoaXMgZnVuY3Rpb247IHNlZSBCVUdT LiIKLQotLS0tIGEvbGlic3JjL0RrL0Rrc2Vzc3RyLmMJMjAxOC0wOC0xNiAwMTowNjoyMS4wMDAw MDAwMDAgKzAyMDAKLSsrKyBiL2xpYnNyYy9Eay9Ea3Nlc3N0ci5jCTIwMjAtMDEtMjcgMTU6MjI6 MDAuOTUzODc2MjUxICswMTAwCi1AQCAtMjk4LDggKzI5OCwxMCBAQAotICAgICAgIGlmICghc2Vz Mi0+c2VzX2ZpbGUtPnNlc19tYXhfYmxvY2tzX2luX21lbSkKLSAJewotIAkgIGNoYXIgZm5hbWVb UEFUSF9NQVggKyAxXTsKLSsgICAgICAgICAgaW50IGZkOwotIAkgIHNucHJpbnRmIChmbmFtZSwg c2l6ZW9mIChmbmFtZSksICIlcy9zZXNYWFhYWFgiLCBzZXNfdG1wX2Rpcik7Ci0tCSAgbWt0ZW1w IChmbmFtZSk7Ci0rCSAgZmQgPSBta3N0ZW1wIChmbmFtZSk7Ci0rICAgICAgICAgIGNsb3NlIChm ZCk7Ci0gCi0gI2lmIGRlZmluZWQgKFdJTjMyKQotICMgZGVmaW5lIE9QRU5fRkxBR1MgIAkgIE9f Q1JFQVQgfCBPX1JEV1IgfCBPX0JJTkFSWSB8IE9fRVhDTCB8IE9fVEVNUE9SQVJZCmRpZmYgLS1n aXQgYS9zcmNwa2dzL3ZpcnR1b3NvL3RlbXBsYXRlIGIvc3JjcGtncy92aXJ0dW9zby90ZW1wbGF0 ZQppbmRleCA3M2U1OTAyM2QzNWUuLjc4MzkwOWYwZGUxNCAxMDA2NDQKLS0tIGEvc3JjcGtncy92 aXJ0dW9zby90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3ZpcnR1b3NvL3RlbXBsYXRlCkBAIC0xLDE4 ICsxLDE4IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd2aXJ0dW9zbycKIHBrZ25hbWU9dmlydHVv c28KLXZlcnNpb249Ny4yLjUuMQotcmV2aXNpb249MwordmVyc2lvbj03LjIuOAorcmV2aXNpb249 MQogYXJjaHM9Ing4Nl82NCogYWFyY2g2NCogcHBjNjRsZSoiCiBidWlsZF9zdHlsZT1nbnUtY29u ZmlndXJlCi1jb25maWd1cmVfYXJncz0iLS1lbmFibGUtc3RhdGljIgotaG9zdG1ha2VkZXBlbmRz PSJhdXRvbWFrZSBsaWJ0b29sIGZsZXggZ3BlcmYgbmV0LXRvb2xzIgoraG9zdG1ha2VkZXBlbmRz PSJhdXRvbWFrZSBsaWJ0b29sIGZsZXggZ3BlcmYgbmV0LXRvb2xzIHdoaWNoIgogbWFrZWRlcGVu ZHM9Im9wZW5zc2wtZGV2ZWwgbGlibGRhcC1kZXZlbCByZWFkbGluZS1kZXZlbCBsaWJ4bWwyLWRl dmVsIG1pdC1rcmI1LWRldmVsIgorY2hlY2tkZXBlbmRzPSJwcm9jcHMtbmcgdW56aXAgY3VybCIK IHNob3J0X2Rlc2M9IlNjYWxhYmxlIGNyb3NzLXBsYXRmb3JtIHNlcnZlciBvZiB2aXJ0dW9zbyIK IG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCi1saWNlbnNlPSJH UEwtMiIKK2xpY2Vuc2U9IkdQTC0yLjAtb25seSIKIGhvbWVwYWdlPSJodHRwOi8vdmlydHVvc28u b3Blbmxpbmtzdy5jb20vd2lraS9tYWluL01haW4vIgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1 Yi5jb20vb3BlbmxpbmsvdmlydHVvc28tb3BlbnNvdXJjZS9hcmNoaXZlL3Yke3ZlcnNpb259LnRh ci5neiIKLWNoZWNrc3VtPTNlNDgwN2U5NDA5OGI4MjY1ZjhjZjAwODY3ZDEyMTViYjFlOWQwZDI3 NDg3OGU1OWE0MjA3NDJkMmRlNDcxYzIKK2NoZWNrc3VtPWI3YThiNzk5NDNhZWY3ZGUxZDdmN2E5 ODQwMjc3NDc3NzZhYjBiNDRjZjZlMTYwY2JkNjYwODVlNWJkOTFlZDUKICMgY2Fubm90IGV4ZWN1 dGUgYmluYXJ5IGZpbGU6IEV4ZWMgZm9ybWF0IGVycm9yCiBub2Nyb3NzPSJodHRwczovL2J1aWxk LnZvaWRsaW51eC5vcmcvYnVpbGRlcnMvYXJtdjZsX2J1aWxkZXIvYnVpbGRzLzI5MTg3L3N0ZXBz L3NoZWxsXzMvbG9ncy9zdGRpbyIKIApAQCAtNDUsOCArNDUsNiBAQCBwb3N0X2luc3RhbGwoKSB7 CiAJcm0gJHtERVNURElSfS91c3IvbGliL3ZpcnRvZGJjX3Iue2Esc299CiAJcm0gJHtERVNURElS fS91c3IvbGliL3ZpcnRvZGJjdS57YSxzb30KIAlybSAke0RFU1RESVJ9L3Vzci9saWIvdmlydG9k YmN1X3Iue2Esc299Ci0JIyByZW1vdmUgc3RhdGljIGxpYnMuCi0Jcm0gJHtERVNURElSfS91c3Iv bGliL3ZpcnR1b3NvLW9wZW5zb3VyY2UtJHt2ZXJzaW9uJSUuKn0vaG9zdGluZy8qLmEKIH0KIAog dmlydHVvc28tYmFzZV9wYWNrYWdlKCkgewpAQCAtNjIsNiArNjAsNiBAQCB2aXJ0dW9zby1iYXNl X3BhY2thZ2UoKSB7CiAJCQkJJHtQS0dERVNURElSfS91c3IvYmluLyR7YmlufS12dAogCQlkb25l CiAJCSMgUmVtb3ZlIHN0YXRpYyBsaWJzIGFuZCBsaWJ0b29sIGFyY2hpdmVzLgotCQlybSAtZiAk e1BLR0RFU1RESVJ9L3Vzci9saWIvKi57YSxsYX0KKwkJcm0gLWYgJHtQS0dERVNURElSfS91c3Iv bGliLyoubGEKIAl9CiB9CgpGcm9tIDY5NTRlOTBiMjc2OGVkZWFlMGJjODM2MTRlYjQyMjBiYTA5 MTA1YjIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNt b2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNjo0Mzo1OCArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMzkvMzldIHgyZ29jbGllbnQ6IHJldmJ1bXAgZHVlIHRvIG9wZW5sZGFwIHVw ZGF0ZQoKLS0tCiBzcmNwa2dzL3gyZ29jbGllbnQvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hh bmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dz L3gyZ29jbGllbnQvdGVtcGxhdGUgYi9zcmNwa2dzL3gyZ29jbGllbnQvdGVtcGxhdGUKaW5kZXgg YmEyZDU3NzgxYzRkLi43MGM5ZmFlYzRkNGUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MveDJnb2NsaWVu dC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3gyZ29jbGllbnQvdGVtcGxhdGUKQEAgLTEsNyArMSw3 IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd4MmdvY2xpZW50JwogcGtnbmFtZT14MmdvY2xpZW50 CiB2ZXJzaW9uPTQuMS4yLjIKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1aWxkX3N0eWxlPWdu dS1tYWtlZmlsZQogYnVpbGRfaGVscGVyPXFtYWtlCiBtYWtlX2J1aWxkX2FyZ3M9IlFNQUtFX0JJ TkFSWT1xbWFrZS1xdDUgTFJFTEVBU0VfQklOQVJZPWxyZWxlYXNlLXF0NSIK --===============7672413362334691531==--