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 27439 invoked from network); 2 Mar 2023 14:53:02 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 2 Mar 2023 14:53:02 -0000 Content-Type: multipart/mixed; boundary="===============3382452143824836585==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_openldap=3A_update_to_2=2E6=2E4?= To: ml@inbox.vuxu.org From: klarasm Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Thu, 02 Mar 2023 15:53:02 +0100 List-Id: Message-ID: <20230302145302.6NZJqswc120BcfyjvULOeWFf2ETjg5--kzc6W6W1vVM@z> GitHub notification mails are now in MIME to allow UTF8. --===============3382452143824836585== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkga2xhcmFzbSBhZ2FpbnN0IG1hc3Rl ciBvbiB0aGUgdm9pZC1wYWNrYWdlcyByZXBvc2l0b3J5CgpodHRwczovL2dpdGh1Yi5jb20va2xh cmFzbS92b2lkLXBhY2thZ2VzIG9wZW5sZGFwLTIuNgpodHRwczovL2dpdGh1Yi5jb20vdm9pZC1s aW51eC92b2lkLXBhY2thZ2VzL3B1bGwvNDE5NDgKCm9wZW5sZGFwOiB1cGRhdGUgdG8gMi42LjQK VGhlIDIuNCBicmFuY2ggaXMgbm90IG1haW50YWluZWQgYW55bW9yZSBhbmQgSSBkb24ndCBrbm93 IGlmIHRoZXJlJ3MgbXVjaCBhZHZhbnRhZ2UgdG8gZ29pbmcgdG8gMi41IGluc3RlYWQgb2YgMi42 DQoNClNvbWUgc2hhcmVkIGxpYnJhcmllcyBoYXZlIGNoYW5nZWQgbmFtZSBzbyB0aGlzIHVwZGF0 ZXMgY29tbW9uL3NobGlicy4NCg0KQXMgdGhpcyBpcyBhIG1ham9yIHVwZGF0ZSB0aGUgbGRhcCBk YXRhYmFzZSBzaG91bGQgYmUgYmFja2VkIHVwIGFuZCByZWNyZWF0ZWQgYXMgcGVyIGh0dHBzOi8v d3d3Lm9wZW5sZGFwLm9yZy9kb2MvYWRtaW4yNi9tYWludGVuYW5jZS5odG1sDQoNCiMjIyMgVGVz dGluZyB0aGUgY2hhbmdlcw0KLSBJIHRlc3RlZCB0aGUgY2hhbmdlcyBpbiB0aGlzIFBSOiAqKllF UyoqIChtYWlubHkgb3BlbmxkYXAsIG1pdC1rcmI1IGFuZCBjeXJ1cy1zYXNsKQ0KLSBJIGhhdmVu J3QgdGVzdGVkIHRoZSByZXZidW1wZWQgcGFja2FnZXMgdGhhdCBtdWNoLCBvdGhlciB0aGFuIGJ1 aWxkaW5nIHdpdGggdGhlaXIgdGVzdCBzdWl0ZQ0KDQpJIGhhdmUgdXBncmFkZWQgbXkgbGRhcCBz ZXR1cCB0byB0aGlzIHZlcnNpb24uIEl0J3Mgbm90IHZlcnkgY29tcGxpY2F0ZWQgc28gbWF5IG5v dCBiZSBncmVhdCBmb3IgY292ZXJhZ2UuDQpCYXNpY2FsbHk6DQotIHR3byBub2Rlcywgd2l0aCBu b3JtYWwgc3luY3JlcGwgYW5kIGdzc2FwaS9rZXJiZXJvcyBmb3IgYXV0aGVudGljYXRpb24NCi0g dGhlIGxkYXAgZGlyZWN0b3J5IGlzIHVzZWQgYXMgZGF0YWJhc2UgYmFja2VuZCBmb3IgbXkga2Vy YmVyb3Mgc2V0dXANCi0gSSBoYXZlIGEgZmV3IG1hY2hpbmVzIHNldHVwIHdpdGgga2VyYmVyb3Mg Zm9yIGF1dGhlbnRpY2F0aW9uIGFuZCBsZGFwIGFzIGlkIHByb3ZpZGVyIChzb21lIHdpdGggc3Nz ZCBhbmQgc29tZSB3aXRoIG5zbGNkKQ0KDQpTbyBmYXIgaXQgc2VlbXMgcHJvbWlzaW5nIGJ1dCB3 aWxsIHRlc3QgbW9yZS4gSSB3b3VsZCBhcHByZWNpYXRlIGlmIGFueW9uZSBlbHNlIGNvdWxkIHRl c3QgYXMgd2VsbC4NCg0KSSBoYXZlIHByb2JhYmx5IG1pc3NlZCBwYWNrYWdlcyB0aGF0IG5lZWQg dG8gYmUgcmV2YnVtcGVkIHNvIHBsZWFzZSBwb2ludCB0aGVtIG91dCBpbiB0aGF0IGNhc2UuDQoN ClBhY2thZ2VzIHRoYXQgZGVwZW5kIG9uIGxpYmxkYXA6DQotIFt4XSBGcmVlUkFESVVTLTMuMC4y Nl8xIChvdXQgb2YgZGF0ZSwgbmV3ZXN0IHZlcnNpb24gaXMgMy4yLjEpDQotIFt4XSBhbHBpbmUt Mi4yNl8xDQotIFt4XSBhbmp1dGEtMy4zNC4wXzQgKGZpeCBmYXVsdHkgZGV0ZWN0aW9uIG9mIHdl YmtpdDJndGspDQotIFt4XSBhcGFjaGUtMi40LjU0XzIgKG91dCBvZiBkYXRlLCBuZXdlc3QgdmVy c2lvbiBpcyAyLjQuNTUpDQotIFt4XSBhcHItdXRpbC1sZGFwLTEuNi4xXzEzICh1cGRhdGUgdG8g MS42LjIpDQotIFt4XSBhdWRpdC0zLjAuM180IChvdXQgb2YgZGF0ZSwgbmV3ZXN0IHZlcnNpb24g aXMgMy4wLjkpDQotIFt4XSBhdXRvZnMtNS4xLjhfMiAob3V0IG9mIGRhdGUsIG5ld2VzdCB2ZXJz aW9uIGlzIDUuMS45KQ0KLSBbeF0gY2xhd3MtbWFpbC00LjEuMV8xDQotIFt4XSBjeXJ1cy1zYXNs LTIuMS4yN185IChvdXQgb2YgZGF0ZSwgbmV3ZXN0IHZlcnNpb24gaXMgMi4xLjI4KQ0KLSBbeF0g ZG92ZWNvdC1wbHVnaW4tbGRhcC0yLjMuMjBfMQ0KLSBbeF0gZG92ZWNvdC1wbHVnaW4tcGlnZW9u aG9sZS1sZGFwLTAuNS4yMF8xDQotIFt4XSBldm9sdXRpb24tMy40Ni4yXzENCi0gW3hdIGV2b2x1 dGlvbi1kYXRhLXNlcnZlci0zLjQ2LjJfMQ0KLSBbeF0gZ251cGctMi4zLjhfMQ0KLSBbeF0gZ251 cGcxLTEuNC4yM18xDQotIFt4XSBrbGRhcC0yMi4wOC4yXzENCi0gW3hdIGxkYXB2aS0xLjdfMTEN Ci0gW3hdIGxpYm5mc2lkbWFwLTIuNS40XzINCi0gW3hdIGxpYnJlb2ZmaWNlLWNvbW1vbi03LjQu My4yXzENCi0gW3hdIGxpZ2h0dHBkLTEuNC42OF8xDQotIFt4XSBsb2c0Y3h4LTAuMTAuMF80ICh1 cGRhdGUgdG8gMS4wLjApDQotIFt4XSBsdWE1NC1sdWFsZGFwLTEuMi41XzMgKG91dCBvZiBkYXRl LCBuZXdlc3QgdmVyc2lvbiBpcyAxLjMuMCkNCi0gW3hdIG1pdC1rcmI1LWxpYnMtMS4xOC4zXzIg KHVwZGF0ZSB0byAxLjIwLjEpDQotIFt4XSBtb25pdG9yaW5nLXBsdWdpbnMtMi4zLjJfMSAob3V0 IG9mIGRhdGUsIG5ld2VzdCB2ZXJzaW9uIGlzIDIuMy4zKQ0KLSBbeF0gbnNzLXBhbS1sZGFwZC0w LjkuMTJfMQ0KLSBbeF0gcGhwLWxkYXAtNy40LjMzXzENCi0gW3hdIHBocDguMC1sZGFwLTguMC4y NV8xIChvdXQgb2YgZGF0ZSwgbmV3ZXN0IHZlcnNpb24gaXMgOC4wLjI3KQ0KLSBbeF0gcGhwOC4x LWxkYXAtOC4xLjEyXzEgKG91dCBvZiBkYXRlLCBuZXdlc3QgdmVyc2lvbiBpbiBicmFuY2ggaXMg OC4xLjE0LiA4LjIuMSBpcyBhbHNvIGF2YWlsYWJsZSkNCi0gW3hdIHBvc3RmaXgtMy43LjNfMQ0K LSBbeF0gcHl0aG9uMy1sZGFwLTMuMi4wXzUgKHVwZGF0ZSB0byAzLjQuMykNCi0gW3hdIHF1b3Rh LTQuMDlfMQ0KLSBbeF0gc2FtYmEtNC4xNC4xMl8yIChvdXQgb2YgZGF0ZSwgbmV3ZXN0IHZlcnNp b24gaXMgNC4xNy41KQ0KLSBbeF0gc2VhaG9yc2UtNDMuMF8xDQotIFt4XSBzcXVpZC01LjdfMQ0K LSBbeF0gc3NzZC0yLjQuMF81IChvdXQgb2YgZGF0ZSwgbGF0ZXN0IHZlcnNpb24gaXMgMi44LjIp DQotIFt4XSBzeWxwaGVlZC0zLjcuMF84DQotIFt4XSB2aXJ0dW9zby1iYXNlLTcuMi41LjFfMyAo dXBkYXRlIHRvIDcuMi44KQ0KLSBbeF0geDJnb2NsaWVudC00LjEuMi4yXzINCg0KW2NpIHNraXBd IGFnYWluLiBUaGlzIHdpbGwgcHJvYmFibHkgdGFrZSBhIGxvbmcgdGltZSB0byBidWlsZC4NCg0K IyMjIyBMb2NhbCBidWlsZCB0ZXN0aW5nDQotIEkgYnVpbHQgdGhpcyBQUiBsb2NhbGx5IGZvciBt eSBuYXRpdmUgYXJjaGl0ZWN0dXJlLCAoeDg2XzY0LWdsaWJjKQ0KLSBJIGJ1aWx0IHRoaXMgUFIg bG9jYWxseSBmb3IgbXkgbmF0aXZlIGFyY2hpdGVjdHVyZSwgKHg4Nl82NC1tdXNsKS4gQnVpbGQg aXNzdWVzOg0KICAtIFt4XSBhdWRpdC0zLjAuM180IChvdXQgb2YgZGF0ZSwgbmV3ZXN0IHZlcnNp b24gaXMgMy4wLjkpIGFscmVhZHkgZmFpbGluZyBvbiBtYXN0ZXIgYnJhbmNoDQogIC0gW3hdIGRv dmVjb3QtcGx1Z2luLWxkYXAtMi4zLjIwXzEgYWxyZWFkeSBmYWlsaW5nIG9uIG1hc3RlciBicmFu Y2gNCiAgLSBbeF0gZG92ZWNvdC1wbHVnaW4tcGlnZW9uaG9sZS1sZGFwLTAuNS4yMF8xIHRlc3Qg c3VpdGUgcGFzc2VzIGlmIGRvdmVjb3QgaXMgYnVpbHQgd2l0aG91dCBjaGVja3MgZmlyc3QNCiAg LSBbeF0gZXZvbHV0aW9uLTMuNDYuMl8xIHRlc3RzIGFyZSBub3QgZm91bmQgb24gbWFzdGVyIGJy YW5jaCBhbmQgdGh1cyBwYXNzZXMgd2l0aG91dCBydW5uaW5nIHRoZW0NCiAgLSBbeF0gZXZvbHV0 aW9uLWRhdGEtc2VydmVyLTMuNDYuMl8xIGFscmVhZHkgZmFpbGluZyBvbiBtYXN0ZXIgYnJhbmNo DQoNCi0gSSBidWlsdCB0aGlzIFBSIGxvY2FsbHkgZm9yIHRoZXNlIGFyY2hpdGVjdHVyZXMgKGlm IHN1cHBvcnRlZC4gbWFyayBjcm9zc2J1aWxkcyk6DQogIC0gYWFyY2g2NC1tdXNsICh4MmdvLWNs aWVudCwgdmlydHVvc28sIHNzc2QsIHNxdWlkLCBsaWJyZW9mZmljZSBhbmQgRnJlZVJBRElVUyBm YWlsIGR1ZSB0byBjcm9zcy1jb21waWxhdGlvbiwgYWxsIG90aGVyIGNvbXBsZXRlKQ0KICAtIGFy bXY2bC1tdXNsICh4MmdvLWNsaWVudCwgdmlydHVvc28sIHNzc2QsIHNxdWlkLCBsaWJyZW9mZmlj ZSBhbmQgRnJlZVJBRElVUyBmYWlsIGR1ZSB0byBjcm9zcy1jb21waWxhdGlvbiwgYWxsIG90aGVy IGNvbXBsZXRlKQ0KICAtIGFybXY3bCAoeDJnby1jbGllbnQsIHZpcnR1b3NvLCBzc3NkLCBzcXVp ZCwgbGlicmVvZmZpY2UgYW5kIEZyZWVSQURJVVMgZmFpbCBkdWUgdG8gY3Jvc3MtY29tcGlsYXRp b24sIGFsbCBvdGhlciBjb21wbGV0ZSkNCiAgLSBpNjg2IChhcHItdXRpbCBzZWVtcyB0byByZXF1 aXJlIHg4Nl82NCBhbmQgY29tcGxhaW5zIHRoYXQgc2VsZWN0ZWQgY3B1IGRvZXMgbm90IHN1cHBv cnQgdGhhdC4gVGhpcyBtYWtlcyBvdGhlciBwYWNrYWdlIHRoYXQgZGVwZW5kIG9uIGFwci11dGls IGZhaWwgYXMgd2VsbDogYW5qdXRhLCBhcGFjaGUsIHBocCwgcGhwOC4wIGFuZCBsb2c0Y3h4LiB2 aXJ0dW9zbywgc3NzZCwgbGlicmVvZmZpY2UsIEZyZWVSQURJVVMsIHNxdWlkIGFuZCBnbnVwZzEg cHJvYmFibHkgZmFpbHMgZHVlIHRvIGNyb3NzLWNvbXBpbGF0aW9uKQoKQSBwYXRjaCBmaWxlIGZy b20gaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9wdWxsLzQxOTQ4 LnBhdGNoIGlzIGF0dGFjaGVk --===============3382452143824836585== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-openldap-2.6-41948.patch" RnJvbSBhNTY4Yjg1NTYxM2I1YzkwZjA3ZDI5Zjk3NWI0OTEyMzM3MzE5NDRhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpE YXRlOiBXZWQsIDIgTm92IDIwMjIgMjE6MDQ6NDYgKzAxMDAKU3ViamVjdDogW1BBVENIIDAxLzM5 XSBvcGVubGRhcDogdXBkYXRlIHRvIDIuNi40CgotIHVwZGF0ZSBjb21tb24vc2hsaWJzCi0gYWRk IHNsYXBkLmxkaWYgdG8gY29uZl9maWxlcwotIGFkZCBtb3JlIG9wdGlvbnMgdG8gcnVuaXQgc2Vy dmljZQotIHJlbW92ZSB1bnJlZ29nbml6ZWQgY29uZmlndXJlIG9wdHMKLS0tCiBjb21tb24vc2hs aWJzICAgICAgICAgICAgICAgICAgICB8ICA1ICsrLS0tCiBzcmNwa2dzL29wZW5sZGFwL2ZpbGVz L3NsYXBkL3J1biB8ICAyICstCiBzcmNwa2dzL29wZW5sZGFwL3RlbXBsYXRlICAgICAgICB8IDEy ICsrKysrKy0tLS0tLQogMyBmaWxlcyBjaGFuZ2VkLCA5IGluc2VydGlvbnMoKyksIDEwIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hsaWJzCmluZGV4 IDBmOWM3NWFmNDRiYy4uZWVhZDQ1NjJmNTA0IDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisr KyBiL2NvbW1vbi9zaGxpYnMKQEAgLTY5OSw5ICs2OTksOCBAQCBsaWJnbm9tZS1ibHVldG9vdGgu c28uMTMgZ25vbWUtYmx1ZXRvb3RoMS0zLjEyLjBfMQogbGliZ25vbWUtYmx1ZXRvb3RoLTMuMC5z by4xMyBnbm9tZS1ibHVldG9vdGgtNDIuMV8xCiBsaWJnbm9tZS1ibHVldG9vdGgtdWktMy4wLnNv LjEzIGdub21lLWJsdWV0b290aC00Mi4xXzEKIGxpYnNhc2wyLnNvLjMgbGlic2FzbC0yLjEuMjZf MQotbGlibGJlci0yLjQuc28uMiBsaWJsZGFwLTIuNC4yMV8xCi1saWJsZGFwLTIuNC5zby4yIGxp YmxkYXAtMi40LjIxXzEKLWxpYmxkYXBfci0yLjQuc28uMiBsaWJsZGFwLTIuNC4yMV8xCitsaWJs YmVyLnNvLjIgbGlibGRhcC0yLjYuM18xCitsaWJsZGFwLnNvLjIgbGlibGRhcC0yLjYuM18xCiBs aWJldmVudC0yLjEuc28uNyBsaWJldmVudC0yLjEuMTFfMQogbGliZXZlbnRfY29yZS0yLjEuc28u NyBsaWJldmVudC0yLjEuMTFfMQogbGliZXZlbnRfZXh0cmEtMi4xLnNvLjcgbGliZXZlbnQtMi4x LjExXzEKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvb3BlbmxkYXAvZmlsZXMvc2xhcGQvcnVuIGIvc3Jj cGtncy9vcGVubGRhcC9maWxlcy9zbGFwZC9ydW4KaW5kZXggZjdhZGRmY2JlZWEzLi40ZmEyMjUz YjE4MjUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvb3BlbmxkYXAvZmlsZXMvc2xhcGQvcnVuCisrKyBi L3NyY3BrZ3Mvb3BlbmxkYXAvZmlsZXMvc2xhcGQvcnVuCkBAIC03LDQgKzcsNCBAQCBpZiBbICEg LWQgL3J1bi9vcGVubGRhcCBdOyB0aGVuCiAJY2hvd24gJExEQVBVU0VSOiRMREFQR1JPVVAgL3J1 bi9vcGVubGRhcAogZmkKIGV4ZWMgMj4mMQotZXhlYyBzbGFwZCAtdSAkTERBUFVTRVIgLWcgJExE QVBHUk9VUCAtZCAwCitleGVjIHNsYXBkIC11ICRMREFQVVNFUiAtZyAkTERBUEdST1VQIC1kIDAg JHtMREFQVVJMUzorLWggIiRMREFQVVJMUyJ9ICRMREFQT1BUUwpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9vcGVubGRhcC90ZW1wbGF0ZSBiL3NyY3BrZ3Mvb3BlbmxkYXAvdGVtcGxhdGUKaW5kZXggODVm ZTc5ZDc3ZDFlLi41NmI1ODljNmQ4MTMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvb3BlbmxkYXAvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9vcGVubGRhcC90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMg VGVtcGxhdGUgZmlsZSBmb3IgJ29wZW5sZGFwJwogcGtnbmFtZT1vcGVubGRhcAotdmVyc2lvbj0y LjQuNTgKK3ZlcnNpb249Mi42LjQKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1 cmUKIGNvbmZpZ3VyZV9hcmdzPSItLXByZWZpeD0vdXNyCkBAIC04LDIxICs4LDIxIEBAIGNvbmZp Z3VyZV9hcmdzPSItLXByZWZpeD0vdXNyCiAgLS1zeXNjb25mZGlyPS9ldGMKICAtLWxvY2Fsc3Rh dGVkaXI9L3Zhci9saWIvb3BlbmxkYXAKICAtLXNiaW5kaXI9L3Vzci9iaW4KLSAtLWVuYWJsZS1k eW5hbWljIC0tZW5hYmxlLXByb2N0aXRsZSAtLXdpdGgtdGxzIC0tZW5hYmxlLWxkYXAKKyAtLWVu YWJsZS1keW5hbWljIC0td2l0aC10bHMgLS1lbmFibGUtbGRhcAogIC0tZW5hYmxlLWlwdjYgLS1l bmFibGUtbG9jYWwgLS13aXRoLWN5cnVzLXNhc2wgLS13aXRoLXRocmVhZHMKICAtLWVuYWJsZS1z eXNsb2cgLS1lbmFibGUtc2xhcGQgLS1lbmFibGUtY3J5cHQgLS1lbmFibGUtc3Bhc3N3ZAotIC0t ZW5hYmxlLWJkYiAtLWVuYWJsZS1oZGIgLS1lbmFibGUtb3ZlcmxheXM9bW9kIC0tZW5hYmxlLW1l dGE9bW9kCisgLS1lbmFibGUtb3ZlcmxheXM9bW9kIC0tZW5hYmxlLW1ldGE9bW9kCiAgLS1kaXNh YmxlLXN0YXRpYyAtLXdpdGgteWllbGRpbmdfc2VsZWN0PXllcyAtLWVuYWJsZS1tb2R1bGVzIgog aG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGdyb2ZmIgogbWFrZWRlcGVuZHM9Im9wZW5zc2wt ZGV2ZWwgbGlic2FzbC1kZXZlbCBkYi1kZXZlbCBsaWJsdGRsLWRldmVsIgogZGVwZW5kcz0ib3Bl bmxkYXAtdG9vbHM+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCi1jb25mX2ZpbGVzPSIvZXRjL29w ZW5sZGFwL2xkYXAuY29uZiAvZXRjL29wZW5sZGFwL3NsYXBkLmNvbmYiCitjb25mX2ZpbGVzPSIv ZXRjL29wZW5sZGFwL2xkYXAuY29uZiAvZXRjL29wZW5sZGFwL3NsYXBkLmNvbmYgL2V0Yy9vcGVu bGRhcC9zbGFwZC5sZGlmIgogc2hvcnRfZGVzYz0iT3BlbkxEQVAgKExpZ2h0d2VpZ2h0IERpcmVj dG9yeSBBY2Nlc3MgUHJvdG9jb2wpIgogbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lk bGludXgub3JnPiIKIGxpY2Vuc2U9Ik9MREFQLTIuMCIKIGhvbWVwYWdlPSJodHRwOi8vd3d3Lm9w ZW5sZGFwLm9yZyIKIGRpc3RmaWxlcz0iaHR0cHM6Ly93d3cub3BlbmxkYXAub3JnL3NvZnR3YXJl L2Rvd25sb2FkL09wZW5MREFQL29wZW5sZGFwLXJlbGVhc2Uvb3BlbmxkYXAtJHt2ZXJzaW9ufS50 Z3oiCi1jaGVja3N1bT01N2I1OTI1NGJlMTVkMGJmNmE5YWIzZDUxNGMxYzA1Nzc3YjAyMTIzMjkx NTMzMTM0YTg3Yzk0NDY4ZjhmNDdiCitjaGVja3N1bT1kNTE3MDRlNTAxNzg0MzBjMDZjZjNkOGFh MTc0ZGE2NmJhZGY1NTk3NDdhNDdkOTIwYmI1NGIyZDRhYTQwOTkxCiAKIHN5c3RlbV9hY2NvdW50 cz0ibGRhcCIKIGxkYXBfaG9tZWRpcj0iL3Zhci9saWIvb3BlbmxkYXAiCkBAIC0zOCw3ICszOCw3 IEBAIHBvc3RfaW5zdGFsbCgpIHsKIAl2bGljZW5zZSBMSUNFTlNFCiAJY2htb2QgNzU1ICR7REVT VERJUn0vdXNyL2xpYi8qLnNvLioKIAl2bWtkaXIgdXNyL3NoYXJlL2V4YW1wbGVzL29wZW5sZGFw Ci0JbXYgJHtERVNURElSfS9ldGMvb3BlbmxkYXAvKi57ZXhhbXBsZSxkZWZhdWx0fSAke0RFU1RE SVJ9L3Vzci9zaGFyZS9leGFtcGxlcy9vcGVubGRhcAorCW12ICR7REVTVERJUn0vZXRjL29wZW5s ZGFwLyouZGVmYXVsdCAke0RFU1RESVJ9L3Vzci9zaGFyZS9leGFtcGxlcy9vcGVubGRhcAogCWNo bW9kIDA2NDQgJHtERVNURElSfS91c3Ivc2hhcmUvZXhhbXBsZXMvb3BlbmxkYXAvKgogfQogCgpG cm9tIDY0YmQwOGUwYzczMjU4YTUyYWZmMzkwYmE2M2ZjYzdlOTg4NzI4NmIgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRh dGU6IFdlZCwgMSBGZWIgMjAyMyAwMDoyNTozNiArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMDIvMzld IGN5cnVzLXNhc2w6IHJldmJ1bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dz L2N5cnVzLXNhc2wvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24o KyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2N5cnVzLXNhc2wvdGVtcGxh dGUgYi9zcmNwa2dzL2N5cnVzLXNhc2wvdGVtcGxhdGUKaW5kZXggYjI1OTE1MjEzOWZkLi5kOTY0 NmVkOGE2NDIgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvY3lydXMtc2FzbC90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL2N5cnVzLXNhc2wvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdjeXJ1cy1zYXNsJwogcGtnbmFtZT1jeXJ1cy1zYXNsCiB2ZXJzaW9uPTIuMS4yNwot cmV2aXNpb249OQorcmV2aXNpb249MTAKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZp Z3VyZV9hcmdzPSItLWRpc2FibGUtc3RhdGljIC0tZW5hYmxlLXNoYXJlZCAtLWVuYWJsZS1jaGVj a2Fwb3AKICAtLWVuYWJsZS1jcmFtIC0tZW5hYmxlLWRpZ2VzdCAtLWRpc2FibGUtb3RwIC0tZGlz YWJsZS1zcnAKCkZyb20gM2I2MDUwNjEzNTNmOWFjYzRmYTg4YjcwYzJlZGRmYzJmZWNlNzNhMiBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdt YWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDAwOjI2OjA4ICswMTAwClN1YmplY3Q6IFtQ QVRDSCAwMy8zOV0gbWl0LWtyYjU6IHVwZGF0ZSB0byAxLjIwLjEKCkEgcmVidWlsZCB0cmlnZ2Vy ZCBieSB1cGRhdGUgdG8gb3BlbmxkYXAtMi42LjMgaGFkIHNvbWUgZXJyb3JzIGluIHRoZQp0ZXN0 IHN1aXRlLgpSZW1vdmUgcGF0Y2ggZm9yIGxpYnJlc3NsLgpGb2xsb3cgZGlzdGZpbGVzIGNvbnZl bnRpb24uCi0tLQogc3JjcGtncy9taXQta3JiNS9wYXRjaGVzL2xpYnJlc3NsLnBhdGNoIHwgMzgg LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogc3JjcGtncy9taXQta3JiNS90ZW1wbGF0ZSAgICAg ICAgICAgICAgIHwgIDggKysrLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwg NDIgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9taXQta3JiNS9wYXRj aGVzL2xpYnJlc3NsLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9taXQta3JiNS9wYXRjaGVz L2xpYnJlc3NsLnBhdGNoIGIvc3JjcGtncy9taXQta3JiNS9wYXRjaGVzL2xpYnJlc3NsLnBhdGNo CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2ZWIwZGJmY2FmM2QuLjAwMDAwMDAwMDAw MAotLS0gYS9zcmNwa2dzL21pdC1rcmI1L3BhdGNoZXMvbGlicmVzc2wucGF0Y2gKKysrIC9kZXYv bnVsbApAQCAtMSwzOCArMCwwIEBACi0tLS0gYS9zcmMvcGx1Z2lucy9wcmVhdXRoL3BraW5pdC9w a2luaXRfY3J5cHRvX29wZW5zc2wuYwkyMDE5LTAxLTA4IDE3OjAyOjM3LjAwMDAwMDAwMCArMDEw MAotKysrIGIvc3JjL3BsdWdpbnMvcHJlYXV0aC9wa2luaXQvcGtpbml0X2NyeXB0b19vcGVuc3Ns LmMJMjAxOS0wNS0xMSAxNjoyOTozNy4wMDE0NTgwODQgKzAyMDAKLUBAIC0xODksNyArMTg5LDcg QEAKLSAgICAgKCpfeDUwOV9wcCkgPSBQS0NTN19jZXJ0X2Zyb21fc2lnbmVyX2luZm8oX3A3LF9z aSkKLSAjZW5kaWYKLSAKLS0jaWYgT1BFTlNTTF9WRVJTSU9OX05VTUJFUiA8IDB4MTAxMDAwMDBM Ci0rI2lmIE9QRU5TU0xfVkVSU0lPTl9OVU1CRVIgPCAweDEwMTAwMDAwTCB8fCBkZWZpbmVkKExJ QlJFU1NMX1ZFUlNJT05fTlVNQkVSKQotIAotIC8qIDEuMSBzdGFuZGFyZGl6ZXMgY29uc3RydWN0 b3IgYW5kIGRlc3RydWN0b3IgbmFtZXMsIHJlbmFtaW5nCi0gICogRVZQX01EX0NUWF97Y3JlYXRl LGRlc3Ryb3l9IGFuZCBkZXByZWNhdGluZyBBU04xX1NUUklOR19kYXRhLiAqLwotQEAgLTMwNTMs NyArMzA1Myw3IEBACi0gICAgIHJldHVybiByZXR2YWw7Ci0gfQotIAotLSNpZiBPUEVOU1NMX1ZF UlNJT05fTlVNQkVSID49IDB4MTAxMDAwMDBMCi0rI2lmIE9QRU5TU0xfVkVSU0lPTl9OVU1CRVIg Pj0gMHgxMDEwMDAwMEwgfHwgZGVmaW5lZChMSUJSRVNTTF9WRVJTSU9OX05VTUJFUikKLSAKLSAv KgotICAqIFdlIG5lZWQgdG8gZGVjb2RlIERvbWFpblBhcmFtZXRlcnMgZnJvbSBSRkMgMzI3OSBz ZWN0aW9uIDIuMy4zLiAgV2Ugd291bGQKLUBAIC0zMDc5LDcgKzMwNzksNyBAQAotIEFTTjFfU0VR VUVOQ0UoREh2cGFyYW1zKSA9IHsKLSAgICAgQVNOMV9TSU1QTEUoaW50X2RodnBhcmFtcywgc2Vl ZCwgQVNOMV9CSVRfU1RSSU5HKSwKLSAgICAgQVNOMV9TSU1QTEUoaW50X2RodnBhcmFtcywgY291 bnRlciwgQklHTlVNKQotLX0gc3RhdGljX0FTTjFfU0VRVUVOQ0VfRU5EX25hbWUoaW50X2RodnBh cmFtcywgREh2cGFyYW1zKQotK30gQVNOMV9TRVFVRU5DRV9FTkRfbmFtZShpbnRfZGh2cGFyYW1z LCBESHZwYXJhbXMpCi0gCi0gQVNOMV9TRVFVRU5DRShESHhwYXJhbXMpID0gewotICAgICBBU04x X1NJTVBMRShpbnRfZGh4OTQyX2RoLCBwLCBCSUdOVU0pLAotQEAgLTMwODcsNyArMzA4Nyw3IEBA Ci0gICAgIEFTTjFfT1BUKGludF9kaHg5NDJfZGgsIHEsIEJJR05VTSksCi0gICAgIEFTTjFfT1BU KGludF9kaHg5NDJfZGgsIGosIEJJR05VTSksCi0gICAgIEFTTjFfT1BUKGludF9kaHg5NDJfZGgs IHZwYXJhbXMsIERIdnBhcmFtcyksCi0tfSBzdGF0aWNfQVNOMV9TRVFVRU5DRV9FTkRfbmFtZShp bnRfZGh4OTQyX2RoLCBESHhwYXJhbXMpCi0rfSBBU04xX1NFUVVFTkNFX0VORF9uYW1lKGludF9k aHg5NDJfZGgsIERIeHBhcmFtcykKLSAKLSBzdGF0aWMgREggKgotIGRlY29kZV9kaF9wYXJhbXMo Y29uc3QgdWludDhfdCAqcCwgdW5zaWduZWQgaW50IGxlbikKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv bWl0LWtyYjUvdGVtcGxhdGUgYi9zcmNwa2dzL21pdC1rcmI1L3RlbXBsYXRlCmluZGV4IGE2N2Jh ZTE5NzY0YS4uMzZhN2RlNDZlMDk5IDEwMDY0NAotLS0gYS9zcmNwa2dzL21pdC1rcmI1L3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvbWl0LWtyYjUvdGVtcGxhdGUKQEAgLTIsOCArMiw4IEBACiAjIGlm IHRoZXJlIGlzIGEgYnVtcCBpbiAuc28gdmVyc2lvbiwKICMgYWxzbyB1cGRhdGUgc3JjcGtncy9s aWJnc3NnbHVlL2ZpbGVzL2dzc2FwaV9tZWNoLmNvbmYKIHBrZ25hbWU9bWl0LWtyYjUKLXZlcnNp b249MS4xOC4zCi1yZXZpc2lvbj0yCit2ZXJzaW9uPTEuMjAuMQorcmV2aXNpb249MQogYnVpbGRf c3R5bGU9Z251LWNvbmZpZ3VyZQogaG9zdG1ha2VkZXBlbmRzPSJlMmZzcHJvZ3MtZGV2ZWwgZmxl eCBwZXJsIHBrZy1jb25maWciCiBtYWtlZGVwZW5kcz0iZTJmc3Byb2dzLWRldmVsIGxpYmxkYXAt ZGV2ZWwiCkBAIC0xMSw4ICsxMSw4IEBAIHNob3J0X2Rlc2M9Ik1JVCBLZXJiZXJvcyA1IGltcGxl bWVudGF0aW9uIgogbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIK IGxpY2Vuc2U9Ik1JVCIKIGhvbWVwYWdlPSJodHRwOi8vd2ViLm1pdC5lZHUva2VyYmVyb3MiCi1k aXN0ZmlsZXM9IiR7aG9tZXBhZ2V9L2Rpc3Qva3JiNS8ke3ZlcnNpb24lLip9L2tyYjUtJHt2ZXJz aW9ufS50YXIuZ3oiCi1jaGVja3N1bT1lNjE3ODNjMjkyYjVlZmQ5YWZiNDVjNTU1YTgwZGQyNjdh YzY3ZWViYWJjYTQyMTg1MzYyYmVlNmM0ZmJkNzE5CitkaXN0ZmlsZXM9Imh0dHA6Ly93ZWIubWl0 LmVkdS9rZXJiZXJvcy9kaXN0L2tyYjUvJHt2ZXJzaW9uJS4qfS9rcmI1LSR7dmVyc2lvbn0udGFy Lmd6IgorY2hlY2tzdW09NzA0YWVkNDliMTllYjVhNzE3OGIzNGIyODczNjIwZWMyOTlkYjA4NzUy ZDZhODU3NGY5NWQ0MTg3OWFiODg1MQogCiBwb3N0X3BhdGNoKCkgewogCXZzZWQgLWUgIi9MREZM QUdTPS9kIiAtaSBzcmMvYnVpbGQtdG9vbHMva3JiNS1jb25maWcuaW4KCkZyb20gNDI4YjFmNWRj ZmI3NTBlYjQwYjI4MjBiZDY3NmUxMTlhYjgxYWY1NCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK RnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZl YiAyMDIzIDAyOjE5OjMzICswMTAwClN1YmplY3Q6IFtQQVRDSCAwNC8zOV0gZXZvbHV0aW9uLWRh dGEtc2VydmVyOiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtncy9l dm9sdXRpb24tZGF0YS1zZXJ2ZXIvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBp bnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2V2b2x1dGlv bi1kYXRhLXNlcnZlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVyL3Rl bXBsYXRlCmluZGV4IGJmMWRiMjg4Y2QxMi4uMzVmNGYwYjAwOWM3IDEwMDY0NAotLS0gYS9zcmNw a2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2V2b2x1dGlv bi1kYXRhLXNlcnZlci90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ2V2b2x1dGlvbi1kYXRhLXNlcnZlcicKIHBrZ25hbWU9ZXZvbHV0aW9uLWRhdGEtc2VydmVy CiB2ZXJzaW9uPTMuNDYuMwotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21h a2UKIGJ1aWxkX2hlbHBlcj0iZ2lyIHFlbXUiCiBjb25maWd1cmVfYXJncz0iIC1EU1lTQ09ORl9J TlNUQUxMX0RJUj0vZXRjCgpGcm9tIDEzOGE1MjhiZWVlMWUwMDdlNWM1Y2JkODNlZTE4NmJhNzY0 ZTM3MTcgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNt b2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAwMjoyMDoxOSArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMDUvMzldIGdudXBnOiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUK Ci0tLQogc3JjcGtncy9nbnVwZy90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGlu c2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ251cGcvdGVt cGxhdGUgYi9zcmNwa2dzL2dudXBnL3RlbXBsYXRlCmluZGV4IGM3Y2JlNjg5ZjIzYS4uNDZiNTk2 ZjBjYWM4IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dudXBnL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv Z251cGcvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbnVw ZycKIHBrZ25hbWU9Z251cGcKIHZlcnNpb249Mi40LjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIK ICMgV2UncmUgYnVpbGRpbmcgb3V0c2lkZSBvZiB0aGUgc291cmNlIHRyZWUsIGJlY2F1c2UgdXBz dHJlYW0gdG9sZCB1cyB0bzoKICMgaHR0cHM6Ly9kZXYuZ251cGcub3JnL1Q2MzEzIzE2NjMzOQog YnVpbGRfd3Jrc3JjPWJ1aWxkCgpGcm9tIDRiYjBiY2Q5ZWU0MDQzNDNjNmI2MjhjZDBmN2E4YmU5 Y2ZkOTQyYjUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFy YXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNToxMzoyNSArMDEwMApT dWJqZWN0OiBbUEFUQ0ggMDYvMzldIEZyZWVSQURJVVM6IHJldmJ1bXAgZHVlIHRvIG9wZW5sZGFw IHVwZGF0ZQoKLS0tCiBzcmNwa2dzL0ZyZWVSQURJVVMvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUg Y2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNw a2dzL0ZyZWVSQURJVVMvdGVtcGxhdGUgYi9zcmNwa2dzL0ZyZWVSQURJVVMvdGVtcGxhdGUKaW5k ZXggZWUyMDU5YTM3M2I0Li41YjJkNmZjYjc0ZjMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvRnJlZVJB RElVUy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL0ZyZWVSQURJVVMvdGVtcGxhdGUKQEAgLTEsNyAr MSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdGcmVlUkFESVVTJwogcGtnbmFtZT1GcmVlUkFE SVVTCiB2ZXJzaW9uPTMuMC4yNgotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9 Z251LWNvbmZpZ3VyZQogbWFrZWRlcGVuZHM9InRhbGxvYy1kZXZlbCBvcGVuc3NsLWRldmVsIG1p dC1rcmI1LWRldmVsIHBhbS1kZXZlbCBcCiAgbGlibWFyaWFkYmNsaWVudC1kZXZlbCBwb3N0Z3Jl c3FsLWxpYnMtZGV2ZWwganNvbi1jLWRldmVsIgoKRnJvbSAxOTg0ODY0NzgzNTMzYTExOTE0NzNh MmNlNDQ2YTFkYzZiNDgwODBhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBN b2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTU6MTQ6 MzEgKzAxMDAKU3ViamVjdDogW1BBVENIIDA3LzM5XSBhbHBpbmU6IHJldmJ1bXAgZHVlIHRvIG9w ZW5sZGFwIHVkcGF0ZQoKYWxzbyBhZGQgQlNELTQtQ2xhdXNlIHRvIGxpY2Vuc2VzCi0tLQogc3Jj cGtncy9hbHBpbmUvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlv bnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hbHBpbmUvdGVtcGxh dGUgYi9zcmNwa2dzL2FscGluZS90ZW1wbGF0ZQppbmRleCAwMmM0Zjk0NDUxNWMuLjk3ODllMzAz ZmM4YSAxMDA2NDQKLS0tIGEvc3JjcGtncy9hbHBpbmUvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9h bHBpbmUvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdhbHBp bmUnCiBwa2duYW1lPWFscGluZQogdmVyc2lvbj0yLjI2Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0y CiBfZ2l0aGFzaD05NzI2YzA5OGE3MzllZGZkY2E2MjE4YmM1ZGVlMTA0YzMxMDk1N2U5CiBfZ2l0 c2hvcnQ9IiR7X2dpdGhhc2g6MDo3fSIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKQEAgLTEz LDcgKzEzLDcgQEAgaG9zdG1ha2VkZXBlbmRzPSJodW5zcGVsbCIKIG1ha2VkZXBlbmRzPSJnZXR0 ZXh0LWRldmVsIGxpYmxkYXAtZGV2ZWwgbWl0LWtyYjUtZGV2ZWwgbmN1cnNlcy1kZXZlbCIKIHNo b3J0X2Rlc2M9IkFwYWNoZS1saWNlbnNlZCBQSU5FIG1haWwgdXNlciBhZ2VudCAod2l0aCBDaGFw cGEgcGF0Y2hlcykiCiBtYWludGFpbmVyPSJMZWFoIE5ldWtpcmNoZW4gPGxlYWhAdnV4dS5vcmc+ IgotbGljZW5zZT0iQXBhY2hlLTIuMCIKK2xpY2Vuc2U9IkFwYWNoZS0yLjAsIEJTRC00LUNsYXVz ZSIKIGhvbWVwYWdlPSJodHRwczovL3JlcG8ub3IuY3ovYWxwaW5lLmdpdCIKIGRpc3RmaWxlcz0i aHR0cHM6Ly9yZXBvLm9yLmN6L2FscGluZS5naXQvc25hcHNob3QvJHtfZ2l0aGFzaH0udGFyLmd6 IgogY2hlY2tzdW09YzhjMzc3ZWFiMGY2NWI1MTI4M2UwYWQzMTQ0YmUxNDMwNjVkY2E0NDYzZDEy Y2NmNTA5MmFlODQxNTE1YTQzMQoKRnJvbSAyYTRlMDQxMjI4MWRjMzNhNWUyMTMxOGZkNDFlNjAy MDI3NDY4NjQ2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xh cmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTU6MTg6MjcgKzAxMDAK U3ViamVjdDogW1BBVENIIDA4LzM5XSBhbmp1dGE6IHJldmJ1bXAgZHVlIHRvIG9wZW5sZGFwIHVw ZGF0ZQoKLS0tCiBzcmNwa2dzL2FuanV0YS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2Vk LCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYW5q dXRhL3RlbXBsYXRlIGIvc3JjcGtncy9hbmp1dGEvdGVtcGxhdGUKaW5kZXggM2RmMDQ2ZDg4NGZi Li4wNzc3ZTFiOTJlNTcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYW5qdXRhL3RlbXBsYXRlCisrKyBi L3NyY3BrZ3MvYW5qdXRhL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxl IGZvciAnYW5qdXRhJwogcGtnbmFtZT1hbmp1dGEKIHZlcnNpb249My4zNC4wCi1yZXZpc2lvbj00 CityZXZpc2lvbj01CiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBidWlsZF9oZWxwZXI9Imdp ciBxZW11IgogY29uZmlndXJlX2FyZ3M9Ii0tZGlzYWJsZS1jb21waWxlLXdhcm5pbmdzIC0tZGlz YWJsZS1zY2hlbWFzLWNvbXBpbGUKCkZyb20gODg0OGQ1ODVhYTJjZDBjODg2NDIwNWI3ZmMyOTQ1 NjE2NjcyMTE0NiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGts YXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE1OjE5OjQ1ICswMTAw ClN1YmplY3Q6IFtQQVRDSCAwOS8zOV0gYXBhY2hlOiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1 cGRhdGUKCi0tLQogc3JjcGtncy9hcGFjaGUvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdl ZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2Fw YWNoZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvYXBhY2hlL3RlbXBsYXRlCmluZGV4IDYyOWFkMThiMzRh NS4uYTY2MWJmNzFkNWMxIDEwMDY0NAotLS0gYS9zcmNwa2dzL2FwYWNoZS90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL2FwYWNoZS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmls ZSBmb3IgJ2FwYWNoZScKIHBrZ25hbWU9YXBhY2hlCiB2ZXJzaW9uPTIuNC41NAotcmV2aXNpb249 MgorcmV2aXNpb249MwogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9 Ii0tcHJlZml4PSAtLXNiaW5kaXI9L3Vzci9iaW4gLS1lbmFibGUtcGllIC0tZW5hYmxlLW1vZHVs ZXM9YWxsCiAgLS1lbmFibGUtbW9kcy1zaGFyZWQ9YWxsIC0tZW5hYmxlLWF1dGhuLWRibSAtLWVu YWJsZS1hdXRobi1hbm9uCgpGcm9tIDE0NDhjZDZjYzUyMTRhMWI5YmE4NTNiYTZlOWY2ZDRiMGE3 YmJlM2EgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNt b2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNToyNTozMyArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMTAvMzldIGFwci11dGlsOiB1cGRhdGUgdG8gMS42LjIKCmZhaWxlZCB0byBk b3dubG9hZCBkaXN0ZmlsZXMgd2hlbiByZXZidW1waW5nCgotIHVwZGF0ZSBtaXJyb3IKLSByZW1v dmUgdXBzdHJlYW1lZCBwYXRjaAotLS0KIHNyY3BrZ3MvYXByLXV0aWwvcGF0Y2hlcy9teXNxbC5w YXRjaCB8IDE1IC0tLS0tLS0tLS0tLS0tLQogc3JjcGtncy9hcHItdXRpbC90ZW1wbGF0ZSAgICAg ICAgICAgIHwgIDggKysrKy0tLS0KIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAx OSBkZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2Fwci11dGlsL3BhdGNo ZXMvbXlzcWwucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2Fwci11dGlsL3BhdGNoZXMvbXlz cWwucGF0Y2ggYi9zcmNwa2dzL2Fwci11dGlsL3BhdGNoZXMvbXlzcWwucGF0Y2gKZGVsZXRlZCBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IGJmMTc5MmVkNmViYi4uMDAwMDAwMDAwMDAwCi0tLSBhL3Ny Y3BrZ3MvYXByLXV0aWwvcGF0Y2hlcy9teXNxbC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDE1 ICswLDAgQEAKLWZpeGVzOiBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBhY2th Z2VzL2lzc3Vlcy8zOTUxMAotdGFrZW4gZnJvbSB1cHN0cmVhbTogaHR0cHM6Ly9zdm4uYXBhY2hl Lm9yZy92aWV3dmMvYXByL2Fwci90cnVuay9kYmQvYXByX2RiZF9teXNxbC5jP3IxPTE4NzIwNTkm cjI9MTg3MjA2MCZkaWZmX2Zvcm1hdD1oCi0KLS0tLSBhL2RiZC9hcHJfZGJkX215c3FsLmMKLSsr KyBiL2RiZC9hcHJfZGJkX215c3FsLmMKLUBAIC0xMjYyLDcgKzEyNjIsOSBAQAotIAotIHN0YXRp YyB2b2lkIGRiZF9teXNxbF9pbml0KGFwcl9wb29sX3QgKnBvb2wpCi0gewotKyNpZiBNWVNRTF9W RVJTSU9OX0lEIDwgMTAwMDAwCi0gICAgIG15X2luaXQoKTsKLSsjZW5kaWYKLSAgICAgbXlzcWxf dGhyZWFkX2luaXQoKTsKLSAKLSAgICAgLyogRklYTUU6IHRoaXMgaXMgYSBndWVzczsgZmluZCBv dXQgd2hhdCBpdCByZWFsbHkgZG9lcyAqLwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hcHItdXRpbC90 ZW1wbGF0ZSBiL3NyY3BrZ3MvYXByLXV0aWwvdGVtcGxhdGUKaW5kZXggZjFjZDQzNjMzNjVhLi41 ZTkwMDk4NTFiYTQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYXByLXV0aWwvdGVtcGxhdGUKKysrIGIv c3JjcGtncy9hcHItdXRpbC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmls ZSBmb3IgJ2Fwci11dGlsJwogcGtnbmFtZT1hcHItdXRpbAotdmVyc2lvbj0xLjYuMQotcmV2aXNp b249MTMKK3ZlcnNpb249MS42LjIKK3JldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1 cmUKIGNvbmZpZ3VyZV9hcmdzPSIKICAtLXdpdGgtcGdzcWwgLS13aXRoLWxkYXAKQEAgLTE3LDgg KzE3LDggQEAgc2hvcnRfZGVzYz0iQXBhY2hlIFBvcnRhYmxlIFJ1bnRpbWUgVXRpbGl0eSBMaWJy YXJ5IgogbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIKIGxpY2Vu c2U9IkFwYWNoZS0yLjAiCiBob21lcGFnZT0iaHR0cHM6Ly9hcHIuYXBhY2hlLm9yZy8iCi1kaXN0 ZmlsZXM9Imh0dHBzOi8vd3d3LmFwYWNoZS5vcmcvZGlzdC9hcHIvJHtwa2duYW1lfS0ke3ZlcnNp b259LnRhci5iejIiCi1jaGVja3N1bT1kM2UxMmY3YjZhZDEyNjg3NTcyYTNhMzk0NzU1NDVhMDcy NjA4ZjRiYTAzYTZjZThhMzc3OGY2MDdkZDAwMzViCitkaXN0ZmlsZXM9Imh0dHBzOi8vZG93bmxv YWRzLmFwYWNoZS5vcmcvYXByLyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIuYnoyIgorY2hlY2tz dW09NGZlNTc0NDNhNzkwNTAyN2UxMzcwN2M4NzVjNWRlNmY5ZmM2ZTJlNWEyNzI1ZDY5NWIyNWE4 YTEwYzJkMjdlMAogIyBmYWlscyB0byBidWlsZCB0ZXN0cwogbWFrZV9jaGVjaz1ubwogCgpGcm9t IGNlYmJhZTExMzRlMzRjMTE0YTA1MjNjYjBlNGRiMmVkNTU2Y2RmMzkgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6 IFdlZCwgMSBGZWIgMjAyMyAxNToyNjo1NCArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTEvMzldIGF1 ZGl0OiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtncy9hdWRpdC90 ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlv bigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXVkaXQvdGVtcGxhdGUgYi9zcmNwa2dzL2F1ZGl0 L3RlbXBsYXRlCmluZGV4IDdlMWU0ZGFiMmY0NS4uMzM0ZDU2N2YzNzgxIDEwMDY0NAotLS0gYS9z cmNwa2dzL2F1ZGl0L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvYXVkaXQvdGVtcGxhdGUKQEAgLTEs NyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdhdWRpdCcKIHBrZ25hbWU9YXVkaXQKIHZl cnNpb249My4wLjMKLXJldmlzaW9uPTQKK3JldmlzaW9uPTUKIGJ1aWxkX3N0eWxlPWdudS1jb25m aWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSItLWxpYmRpcj0vdXNyL2xpYiAtLWVuYWJsZS1zaGFyZWQ9 YXVkaXQgLS1lbmFibGUtZ3NzYXBpLWtyYjUKICAtLXdpdGgtYXBwYXJtb3IgLS13aXRoLWxpYmNh cC1uZyAtLXdpdGgtcHl0aG9uMyIKCkZyb20gNmY4NDQ2NjdlNWJhNjMwM2M0MGIwMTcxNDVkYjE0 OGI3ZmQwNzdkMSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGts YXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE1OjI4OjE1ICswMTAw ClN1YmplY3Q6IFtQQVRDSCAxMi8zOV0gYXV0b2ZzOiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1 cGRhdGUKCi0tLQogc3JjcGtncy9hdXRvZnMvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdl ZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2F1 dG9mcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvYXV0b2ZzL3RlbXBsYXRlCmluZGV4IGE5YWJjNjBlNjRl OC4uNWY2M2QwYWQ5MmNhIDEwMDY0NAotLS0gYS9zcmNwa2dzL2F1dG9mcy90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL2F1dG9mcy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmls ZSBmb3IgJ2F1dG9mcycKIHBrZ25hbWU9YXV0b2ZzCiB2ZXJzaW9uPTUuMS44Ci1yZXZpc2lvbj0y CityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBtYWtlX2J1aWxkX2FyZ3M9 IkRPTlRTVFJJUD0xIgogY29uZmlndXJlX2FyZ3M9Ii0td2l0aC1saWJ0aXJwYyAtLXdpdGgtbWFw ZGlyPS9ldGMvYXV0b2ZzIC0tc2JpbmRpcj0vdXNyL2JpbiIKCkZyb20gNWQxNmJiZDY4OTJiNzY4 ZGJjZmJhMWVhMDIxYzk3MTRlYjlmZmUxOSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog S2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIz IDE1OjI5OjA0ICswMTAwClN1YmplY3Q6IFtQQVRDSCAxMy8zOV0gY2xhd3MtbWFpbDogcmV2YnVt cCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3MvY2xhd3MtbWFpbC90ZW1wbGF0 ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY2xhd3MtbWFpbC90ZW1wbGF0ZSBiL3NyY3BrZ3MvY2xhd3Mt bWFpbC90ZW1wbGF0ZQppbmRleCAwZmQ4N2RmNzgwM2UuLmI5ODllYmYxZDhlNCAxMDA2NDQKLS0t IGEvc3JjcGtncy9jbGF3cy1tYWlsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvY2xhd3MtbWFpbC90 ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2NsYXdzLW1haWwn CiBwa2duYW1lPWNsYXdzLW1haWwKIHZlcnNpb249NC4xLjEKLXJldmlzaW9uPTEKK3JldmlzaW9u PTIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSItLWRpc2FibGUt c3RhdGljIC0tZGlzYWJsZS1weXRob24tcGx1Z2luIC0tZGlzYWJsZS1wZXJsLXBsdWdpbgogIC0t ZW5hYmxlLWVuY2hhbnQgLS1lbmFibGUtZ251dGxzIgoKRnJvbSAwNjQ3MDFiMGE3NWE1MTZhZDZk Y2I5NzA3YjI1MDg4MGQ2NWM0NjA4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFy YSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTU6 MzE6MTYgKzAxMDAKU3ViamVjdDogW1BBVENIIDE0LzM5XSBkb3ZlY290OiByZXZidW1wIGR1ZSB0 byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtncy9kb3ZlY290L3RlbXBsYXRlIHwgMiArLQog MSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9kb3ZlY290L3RlbXBsYXRlIGIvc3JjcGtncy9kb3ZlY290L3RlbXBsYXRlCmlu ZGV4IDc4N2IyOWI2ZWFiOC4uNjk3Nzg4ZTVjMjY2IDEwMDY0NAotLS0gYS9zcmNwa2dzL2RvdmVj b3QvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9kb3ZlY290L3RlbXBsYXRlCkBAIC0yLDcgKzIsNyBA QAogIyByZXZidW1wIGRvdmVjb3QtcGx1Z2luLXBpZ2VvbmhvbGUgd2hlbiB1cGRhdGluZyBkb3Zl Y290IQogcGtnbmFtZT1kb3ZlY290CiB2ZXJzaW9uPTIuMy4yMAotcmV2aXNpb249MgorcmV2aXNp b249MwogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0td2l0aC1t b2R1bGVkaXI9L3Vzci9saWIvZG92ZWNvdC9tb2R1bGVzIC0td2l0aC1zcWw9cGx1Z2luCiAgLS1k aXNhYmxlLXN0YXRpYyAtLXdpdGgtcGFtIC0td2l0aC1teXNxbCAtLXdpdGgtcGdzcWwgLS13aXRo LWx1Y2VuZQoKRnJvbSBkZTkyMDY3N2FkNWQ0ODI0NzUzNmNlMDVmMTlhYmZjMTIzNTM5YTc2IE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21h aWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTU6MzI6MzIgKzAxMDAKU3ViamVjdDogW1BB VENIIDE1LzM5XSBkb3ZlY290LXBsdWdpbi1waWdlb25ob2xlOiByZXZidW1wIGR1ZSB0byBvcGVu bGRhcAogdXBkYXRlCgotLS0KIHNyY3BrZ3MvZG92ZWNvdC1wbHVnaW4tcGlnZW9uaG9sZS90ZW1w bGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZG92ZWNvdC1wbHVnaW4tcGlnZW9uaG9sZS90ZW1wbGF0 ZSBiL3NyY3BrZ3MvZG92ZWNvdC1wbHVnaW4tcGlnZW9uaG9sZS90ZW1wbGF0ZQppbmRleCBlNGQx NjhjYzRmNzguLjhhZDM3Y2NmOGZkYSAxMDA2NDQKLS0tIGEvc3JjcGtncy9kb3ZlY290LXBsdWdp bi1waWdlb25ob2xlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZG92ZWNvdC1wbHVnaW4tcGlnZW9u aG9sZS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2RvdmVj b3QtcGx1Z2luLXBpZ2VvbmhvbGUnCiBwa2duYW1lPWRvdmVjb3QtcGx1Z2luLXBpZ2VvbmhvbGUK IHZlcnNpb249MC41LjIwCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1nbnUt Y29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS1wcmVmaXg9L3VzcgogIC0td2l0aC1kb3ZlY290 PSR7WEJQU19DUk9TU19CQVNFfS91c3IvbGliL2RvdmVjb3QKCkZyb20gNTYyNDg0NTQ3YTFiM2Zh YWEwZTg5NmFiZDc1NDE1NTBkMGRhY2RiYyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog S2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIz IDE1OjMzOjQ1ICswMTAwClN1YmplY3Q6IFtQQVRDSCAxNi8zOV0gZXZvbHV0aW9uOiByZXZidW1w IGR1ZSB0byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtncy9ldm9sdXRpb24vdGVtcGxhdGUg fCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL2V2b2x1dGlvbi90ZW1wbGF0ZSBiL3NyY3BrZ3MvZXZvbHV0aW9u L3RlbXBsYXRlCmluZGV4IGI5YTYzYWYwOTk1NS4uNWJkMjkxNzNhYzI2IDEwMDY0NAotLS0gYS9z cmNwa2dzL2V2b2x1dGlvbi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2V2b2x1dGlvbi90ZW1wbGF0 ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2V2b2x1dGlvbicKIHBrZ25h bWU9ZXZvbHV0aW9uCiB2ZXJzaW9uPTMuNDYuMwotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVp bGRfc3R5bGU9Y21ha2UKIGJ1aWxkX2hlbHBlcj0icWVtdSIKIGNvbmZpZ3VyZV9hcmdzPSItRFNZ U0NPTkZfSU5TVEFMTF9ESVI9L2V0YwoKRnJvbSA0NjMxNTAyNDE4MjI0OWM0NmRjN2ZiYzZiNmE0 MDJlZDRjYzE2MTA1IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8 a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTU6MzU6MjcgKzAx MDAKU3ViamVjdDogW1BBVENIIDE3LzM5XSBnbnVwZzE6IHJldmJ1bXAgZHVlIHRvIG9wZW5sZGFw IHVwZGF0ZQoKLS0tCiBzcmNwa2dzL2dudXBnMS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFu Z2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv Z251cGcxL3RlbXBsYXRlIGIvc3JjcGtncy9nbnVwZzEvdGVtcGxhdGUKaW5kZXggYzBjODM3NDc3 OTM5Li5lODYxNDcwMDZhYTEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ251cGcxL3RlbXBsYXRlCisr KyBiL3NyY3BrZ3MvZ251cGcxL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnZ251cGcxJwogcGtnbmFtZT1nbnVwZzEKIHZlcnNpb249MS40LjIzCi1yZXZpc2lv bj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJn cz0iLS1lbmFibGUtdGhyZWFkcz1wb3NpeCAtLWVuYWJsZS1ub2V4ZWNzdGFjawogIGdudXBnX2N2 X3JlZ2V4X2Jyb2tlbj1ubyIKCkZyb20gNjA4NjRhNjllMWVhNDc2ZjcyZWQwZDFmODUyYzljMmY5 MmY4Y2UyYyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJh c21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE1OjM2OjUwICswMTAwClN1 YmplY3Q6IFtQQVRDSCAxOC8zOV0ga2xkYXA6IHJldmJ1bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0 ZQoKLS0tCiBzcmNwa2dzL2tsZGFwL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEg aW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9rbGRhcC90 ZW1wbGF0ZSBiL3NyY3BrZ3Mva2xkYXAvdGVtcGxhdGUKaW5kZXggYzRmNmFjZGI4N2RiLi4wNDQz OWJmZDIyYzEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mva2xkYXAvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9rbGRhcC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2ts ZGFwJwogcGtnbmFtZT1rbGRhcAogdmVyc2lvbj0yMi4xMi4xCi1yZXZpc2lvbj0xCityZXZpc2lv bj0yCiBidWlsZF9zdHlsZT1jbWFrZQogaG9zdG1ha2VkZXBlbmRzPSJleHRyYS1jbWFrZS1tb2R1 bGVzIHF0NS1xbWFrZSBxdDUtaG9zdC10b29scyBweXRob24zCiAgZ2V0dGV4dCBrY29yZWFkZG9u cyBrZG9jdG9vbHMiCgpGcm9tIDAwZjI2ODMwYjljM2IwMjJkZjIzNGY2MDhlMjE0YzA3N2RmOWJm YWIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNtb2Rp bkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNTozNzoyNyArMDEwMApTdWJqZWN0 OiBbUEFUQ0ggMTkvMzldIGxkYXB2aTogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgph bHNvIGZpeCBzb21lIGxpbnRpbmcgcHJvYmxlbXMKLS0tCiBzcmNwa2dzL2xkYXB2aS90ZW1wbGF0 ZSB8IDggKysrKy0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDQgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9sZGFwdmkvdGVtcGxhdGUgYi9zcmNwa2dzL2xk YXB2aS90ZW1wbGF0ZQppbmRleCAxZGRhM2MyYWU2ZTguLjg4NDAxYjcyMjE5NyAxMDA2NDQKLS0t IGEvc3JjcGtncy9sZGFwdmkvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9sZGFwdmkvdGVtcGxhdGUK QEAgLTEsMTUgKzEsMTUgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2xkYXB2aScKIHBrZ25hbWU9 bGRhcHZpCiB2ZXJzaW9uPTEuNwotcmV2aXNpb249MTEKK3JldmlzaW9uPTEyCiBidWlsZF9zdHls ZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS13aXRoLXNoYSIKLW1haW50YWluZXI9 IkxlYWggTmV1a2lyY2hlbiA8bGVhaEB2dXh1Lm9yZz4iCiBob3N0bWFrZWRlcGVuZHM9InBrZy1j b25maWciCiBtYWtlZGVwZW5kcz0ibmN1cnNlcy1kZXZlbCByZWFkbGluZS1kZXZlbCBsaWJzYXNs LWRldmVsIHBvcHQtZGV2ZWwgbGlibGRhcC1kZXZlbCBnbGliLWRldmVsIgotbGljZW5zZT0iR1BM LTIiCitzaG9ydF9kZXNjPSJJbnRlcmFjdGl2ZSBMREFQIGNsaWVudCBmb3IgVW5peCB0ZXJtaW5h bHMiCittYWludGFpbmVyPSJMZWFoIE5ldWtpcmNoZW4gPGxlYWhAdnV4dS5vcmc+IgorbGljZW5z ZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwOi8vd3d3LmxpY2h0ZWJsYXUuY29t L2xkYXB2aS8iCi1zaG9ydF9kZXNjPSJBbiBpbnRlcmFjdGl2ZSBMREFQIGNsaWVudCBmb3IgVW5p eCB0ZXJtaW5hbHMiCiBkaXN0ZmlsZXM9Imh0dHA6Ly93d3cubGljaHRlYmxhdS5jb20vZG93bmxv YWQvbGRhcHZpLSR7dmVyc2lvbn0udGFyLmd6IgogY2hlY2tzdW09NmY2MmU5MmQyMGZmMmFjMGQw NjEyNTAyNGE5MTRiODYyMmU1YjhhMGEwYzJkMzkwYmYzZTc5OTBjYmQyZTE1MwogCgpGcm9tIDk4 YjE3YmJkZjJhZjg3YzFiMWU4NDA3NTBjNzkwYWJmOTA0MTZjNzkgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdl ZCwgMSBGZWIgMjAyMyAxNTo0MDozNCArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMjAvMzldIG5mcy11 dGlsczogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3MvbmZzLXV0 aWxzL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRl bGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9uZnMtdXRpbHMvdGVtcGxhdGUgYi9zcmNw a2dzL25mcy11dGlscy90ZW1wbGF0ZQppbmRleCAyNTJhNzM1NWI2ODMuLjFlYTIzNzgxY2FmZiAx MDA2NDQKLS0tIGEvc3JjcGtncy9uZnMtdXRpbHMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9uZnMt dXRpbHMvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICduZnMt dXRpbHMnCiBwa2duYW1lPW5mcy11dGlscwogdmVyc2lvbj0yLjYuMgotcmV2aXNpb249MQorcmV2 aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0td2l0 aC1zdGF0ZHVzZXI9bm9ib2R5IC0tZW5hYmxlLWdzcyAtLWVuYWJsZS1uZnN2NAogIC0td2l0aC1z dGF0ZWRpcj0vdmFyL2xpYi9uZnMgLS1lbmFibGUtbGlibW91bnQtbW91bnQgLS1lbmFibGUtc3Zj Z3NzCgpGcm9tIDRhNzM4MGYxNjIwMDk0NTQ5ZjQ1ZjUyYmJiYzFlNmJlM2ExZTFkOTEgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5j b20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNTo0MTozMSArMDEwMApTdWJqZWN0OiBbUEFUQ0gg MjEvMzldIGxpYnJlb2ZmaWNlOiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUKCi0tLQog c3JjcGtncy9saWJyZW9mZmljZS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGlu c2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGlicmVvZmZp Y2UvdGVtcGxhdGUgYi9zcmNwa2dzL2xpYnJlb2ZmaWNlL3RlbXBsYXRlCmluZGV4IDExZTAyMzg0 N2YxZS4uZWJjNzYyNzJkNmQ4IDEwMDY0NAotLS0gYS9zcmNwa2dzL2xpYnJlb2ZmaWNlL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvbGlicmVvZmZpY2UvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdsaWJyZW9mZmljZScKIHBrZ25hbWU9bGlicmVvZmZpY2UKIHZl cnNpb249Ny40LjMuMgotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9bWV0YQog bWFrZV9idWlsZF90YXJnZXQ9ImJ1aWxkIgogbm9jcm9zcz0iU2V2ZXJhbCBkZXBlbmRlbmNpZXMg YXJlIG5vY3Jvc3M9eWVzIgoKRnJvbSAwOGE3N2UwODlhOTI0OTVkYTFlY2NjYzE4YTA2MTVjOGJi NWVjNzZjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFz bW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTU6NDU6NTEgKzAxMDAKU3Vi amVjdDogW1BBVENIIDIyLzM5XSBzYW1iYTogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRl CgotLS0KIHNyY3BrZ3Mvc2FtYmEvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBp bnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3NhbWJhL3Rl bXBsYXRlIGIvc3JjcGtncy9zYW1iYS90ZW1wbGF0ZQppbmRleCAzYmE5MzI2ODk3M2QuLjNlMTE5 OWI3MGM1ZSAxMDA2NDQKLS0tIGEvc3JjcGtncy9zYW1iYS90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L3NhbWJhL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnc2Ft YmEnCiBwa2duYW1lPXNhbWJhCiB2ZXJzaW9uPTQuMTQuMTIKLXJldmlzaW9uPTIKK3JldmlzaW9u PTMKIGJ1aWxkX3N0eWxlPXdhZjMKIGJ1aWxkX2hlbHBlcj0icWVtdSIKIGNvbmZpZ3VyZV9zY3Jp cHQ9ImJ1aWxkdG9vbHMvYmluL3dhZiIKCkZyb20gNDZlZTY1MzAyYTUzYmQzOWE5YTNkNzFhMjRj NDA1MmI4NGQ3ZTFjNSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4g PGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE1OjUxOjI0ICsw MTAwClN1YmplY3Q6IFtQQVRDSCAyMy8zOV0gbGlnaHR0cDogcmV2YnVtcCBkdWUgdG8gb3Blbmxk YXAgdXBkYXRlCgotLS0KIHNyY3BrZ3MvbGlnaHR0cGQvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUg Y2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNw a2dzL2xpZ2h0dHBkL3RlbXBsYXRlIGIvc3JjcGtncy9saWdodHRwZC90ZW1wbGF0ZQppbmRleCBm OTkwMzc1MTRhZTIuLjAxNTNiNGE4MjIwZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9saWdodHRwZC90 ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2xpZ2h0dHBkL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnbGlnaHR0cGQnCiBwa2duYW1lPWxpZ2h0dHBkCiB2ZXJzaW9u PTEuNC42OQotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9bWVzb24KIGNvbmZp Z3VyZV9hcmdzPSItRHdpdGhfYnJvdGxpPWRpc2FibGVkIC1Ed2l0aF9iemlwPWRpc2FibGVkCiAg LUR3aXRoX2tyYjU9ZW5hYmxlZCAtRHdpdGhfbGRhcD1lbmFibGVkCgpGcm9tIDVjODMyMmQ3NWUw MjM1N2UxOTllYmZiZTAzYmUyMTZmZTdlYzJjZDMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZy b206IEtsYXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIg MjAyMyAxNTo1Mzo1MyArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMjQvMzldIGxvZzRjeHg6IHVwZGF0 ZSB0byAxLjAuMAoKLSBmaXggYSBsaW50aW5nIGlzc3VlCi0gZml4IHN1YnBhY2FrZ2UKLS0tCiAu Li4vcGF0Y2hlcy8xMDAtYnVnZml4LUxPR0NYWC0yODQucGF0Y2ggICAgICAgfCAxNyAtLS0tCiAu Li4vcGF0Y2hlcy8xNTAtYnVnZml4LUxPR0NYWC0zNjUucGF0Y2ggICAgICAgfCAxOSAtLS0tLQog c3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMvMTcwLWdjYzYtZml4LnBhdGNoICAgIHwgODAgLS0tLS0t LS0tLS0tLS0tLS0tLQogLi4uL3BhdGNoZXMvMTgwLWdjYy1maXgtdGVzdHN1aXRlLnBhdGNoICAg ICAgIHwgMjUgLS0tLS0tCiAuLi4vbG9nNGN4eC9wYXRjaGVzL21pc3NpbmctaW5jbHVkZXMucGF0 Y2ggICAgfCAzOCAtLS0tLS0tLS0KIHNyY3BrZ3MvbG9nNGN4eC90ZW1wbGF0ZSAgICAgICAgICAg ICAgICAgICAgICB8IDE0ICsrLS0KIDYgZmlsZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCAx ODYgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9sb2c0Y3h4L3BhdGNo ZXMvMTAwLWJ1Z2ZpeC1MT0dDWFgtMjg0LnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtn cy9sb2c0Y3h4L3BhdGNoZXMvMTUwLWJ1Z2ZpeC1MT0dDWFgtMzY1LnBhdGNoCiBkZWxldGUgbW9k ZSAxMDA2NDQgc3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMvMTcwLWdjYzYtZml4LnBhdGNoCiBkZWxl dGUgbW9kZSAxMDA2NDQgc3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMvMTgwLWdjYy1maXgtdGVzdHN1 aXRlLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMvbWlz c2luZy1pbmNsdWRlcy5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbG9nNGN4eC9wYXRjaGVz LzEwMC1idWdmaXgtTE9HQ1hYLTI4NC5wYXRjaCBiL3NyY3BrZ3MvbG9nNGN4eC9wYXRjaGVzLzEw MC1idWdmaXgtTE9HQ1hYLTI4NC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg ZmNmZjMzMGYzNmQ3Li4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMv MTAwLWJ1Z2ZpeC1MT0dDWFgtMjg0LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTcgKzAsMCBA QAotIyEgL2Jpbi9zaCAvdXNyL3NoYXJlL2RwYXRjaC9kcGF0Y2gtcnVuCi0jIyAxMDAtYnVnZml4 LUxPR0NYWC0yODQuZHBhdGNoIGJ5ICA8bWF0dGhld0Bsb2NhbGhvc3Q+Ci0jIwotIyMgQWxsIGxp bmVzIGJlZ2lubmluZyB3aXRoIGAjIyBEUDonIGFyZSBhIGRlc2NyaXB0aW9uIG9mIHRoZSBwYXRj aC4KLSMjIERQOiBGaXhlcyBidWlsZCBlcnJvciBvbiBBSVggd2l0aCB4bGNfcgotCi0tLS0gYS9z cmMvdGVzdC9jcHAvaGVscGVycy9kYXRldGltZWRhdGVmb3JtYXR0ZXN0Y2FzZS5jcHAJMjAwOC0w My0zMSAxNTozMzowOS4wMDAwMDAwMDAgLTA3MDAKLSsrKyBiL3NyYy90ZXN0L2NwcC9oZWxwZXJz L2RhdGV0aW1lZGF0ZWZvcm1hdHRlc3RjYXNlLmNwcAkyMDA4LTA3LTE3IDA2OjQ5OjQzLjAwMDAw MDAwMCAtMDcwMAotQEAgLTE4MSw3ICsxODEsNyBAQAotICAgICAgICAgLy8gIG91dHB1dCB0aGUg dXNpbmcgU1RMCi0gICAgICAgICAvLwotICAgICAgICAgc3RkOjpiYXNpY19vc3RyaW5nc3RyZWFt PGxvZ2NoYXI+IGJ1ZmZlcjsKLS0jaWYgZGVmaW5lZChfVVNFRkFDKQotKyNpZiBkZWZpbmVkKF9N U0NfVkVSKSAmJiBfTVNDX1ZFUiA8IDEzMDAKLSAgICAgICAgICBfVVNFRkFDKGxvY2FsZSwgc3Rk Ojp0aW1lX3B1dDxsb2djaGFyPikKLSAgICAgICAgICAgICAgLnB1dChidWZmZXIsIGJ1ZmZlciwg JmRhdGUsIGZtdC5jX3N0cigpLCBmbXQuY19zdHIoKSArIGZtdC5sZW5ndGgoKSk7Ci0gI2Vsc2UK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbG9nNGN4eC9wYXRjaGVzLzE1MC1idWdmaXgtTE9HQ1hYLTM2 NS5wYXRjaCBiL3NyY3BrZ3MvbG9nNGN4eC9wYXRjaGVzLzE1MC1idWdmaXgtTE9HQ1hYLTM2NS5w YXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMGNmOTZiNjdhZTRhLi4wMDAwMDAw MDAwMDAKLS0tIGEvc3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMvMTUwLWJ1Z2ZpeC1MT0dDWFgtMzY1 LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTkgKzAsMCBAQAotRGVzY3JpcHRpb246IGZpeGVz IHRlc3Qgc3VpdGUgdG8gbm90IGV4cGVjdCB0aGUgeWVhciB0byBiZSBiZXR3ZWVuIDIwMDAgYW5k IDIwMDkuCi1PcmlnaW46IHVwc3RyZWFtLCBodHRwOi8vc3ZuLmFwYWNoZS5vcmcvdmlld3ZjP3Zp ZXc9cmV2JnJldj05NTQzMzUKLUJ1ZzogaHR0cHM6Ly9pc3N1ZXMuYXBhY2hlLm9yZy9qaXJhL2Jy b3dzZS9MT0dDWFgtMzY1Ci1Gb3J3YXJkZWQ6IG5vdC1uZWVkZWQKLUFwcGxpZWQtVXBzdHJlYW06 IGNvbW1pdCA5NTQzMzUKLUxhc3QtVXBkYXRlOiAyMDE0LTAzLTE0Ci0tLS0KLVRoaXMgcGF0Y2gg aGVhZGVyIGZvbGxvd3MgREVQLTM6IGh0dHA6Ly9kZXAuZGViaWFuLm5ldC9kZXBzL2RlcDMvCi0t LS0gYS9zcmMvdGVzdC9jcHAvdXRpbC9maWx0ZXIuaAkyMDEwLzA2LzE0IDAwOjI0OjQyCTk1NDMz NAotKysrIGIvc3JjL3Rlc3QvY3BwL3V0aWwvZmlsdGVyLmgJMjAxMC8wNi8xNCAwMDozMDo0Mwk5 NTQzMzUKLUBAIC0zMSw3ICszMSw3IEBACi0gI2RlZmluZSBCQVNJQ19QQVQgIlxcWzB4WzAtOUEt Rl0qXSAoRkFUQUx8RVJST1J8V0FSTnxJTkZPfERFQlVHKSIKLSAjZGVmaW5lIElTTzg2MDFfUEFU ICJbMC05XVxcezRcXH0tWzAtOV1cXHsyXFx9LVswLTldXFx7MlxcfSBbMC05XVxcezJcXH06WzAt OV1cXHsyXFx9OlswLTldXFx7MlxcfSxbMC05XVxcezNcXH0iCi0gI2RlZmluZSBBQlNPTFVURV9E QVRFX0FORF9USU1FX1BBVCBcCi0tICAgICAgICAiWzAtOV1cXHsxLDJcXH0gLiogMjAwWzAtOV0g WzAtOV1cXHsyXFx9OlswLTldXFx7MlxcfTpbMC05XVxcezJcXH0sWzAtOV1cXHszXFx9IgotKyAg ICAgICAgIlswLTldXFx7MSwyXFx9IC4qIDJbMC05XVswLTldWzAtOV0gWzAtOV1cXHsyXFx9Olsw LTldXFx7MlxcfTpbMC05XVxcezJcXH0sWzAtOV1cXHszXFx9IgotICNkZWZpbmUgQUJTT0xVVEVf VElNRV9QQVQgIlswLTJdWzAtOV06WzAtOV1bMC05XTpbMC05XVswLTldLFswLTldWzAtOV1bMC05 XSIKLSAjZGVmaW5lIFJFTEFUSVZFX1RJTUVfUEFUICJeWzAtOV0rIgotIApkaWZmIC0tZ2l0IGEv c3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMvMTcwLWdjYzYtZml4LnBhdGNoIGIvc3JjcGtncy9sb2c0 Y3h4L3BhdGNoZXMvMTcwLWdjYzYtZml4LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp bmRleCBjZmEwYzJmNTMxOWMuLjAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL2xvZzRjeHgvcGF0 Y2hlcy8xNzAtZ2NjNi1maXgucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw4MCArMCwwIEBACi1E ZXNjcmlwdGlvbjogRml4IEZUQkZTIHdpdGggR0NDNgotIEdDQzYgaXMgbW9yZSBwaWNraWVyIG9u IHRydW5jYXRpbmcsIHNvIHRoaXMgcGF0Y2ggZml4ZXMgdGhlIG5hcnJvd2luZyBjb252ZXJzaW9u IGVycm9ycy4KLUF1dGhvcjogVG9iaWFzIEZyb3N0IDx0b2JpQGRlYmlhbi5vcmc+Ci1CdWctRGVi aWFuOiBodHRwczovL2J1Z3MuZGViaWFuLm9yZy9jZ2ktYmluL2J1Z3JlcG9ydC5jZ2k/YnVnPTgx MTc2OAotRm9yd2FyZGVkOiBodHRwczovL2lzc3Vlcy5hcGFjaGUub3JnL2ppcmEvYnJvd3NlL0xP R0NYWC00ODIKLUFwcGxpZWQtVXBzdHJlYW06IHllcywgdGFyZ2V0ZWQgdmVyc2lvbiAwLjExLjAK LUxhc3QtVXBkYXRlOiAyMDE2LTA3LTAxIChEZWJDYW1wMTYpCi0tLS0KLVRoaXMgcGF0Y2ggaGVh ZGVyIGZvbGxvd3MgREVQLTM6IGh0dHA6Ly9kZXAuZGViaWFuLm5ldC9kZXBzL2RlcDMvCi0tLS0g YS9zcmMvbWFpbi9jcHAvbG9jYXRpb25pbmZvLmNwcAotKysrIGIvc3JjL21haW4vY3BwL2xvY2F0 aW9uaW5mby5jcHAKLUBAIC0xNDgsNyArMTQ4LDcgQEAKLSAgICAgaWYgKGxpbmVOdW1iZXIgPT0g LTEgJiYgZmlsZU5hbWUgPT0gTkEgJiYgbWV0aG9kTmFtZSA9PSBOQV9NRVRIT0QpIHsKLSAgICAg ICAgICBvcy53cml0ZU51bGwocCk7Ci0gICAgIH0gZWxzZSB7Ci0tICAgICAgICBjaGFyIHByb2xv Z1tdID0gewotKyAgICAgICAgdW5zaWduZWQgY2hhciBwcm9sb2dbXSA9IHsKLSAgICAgICAgICAw eDcyLCAweDAwLCAweDIxLCAweDZGLCAweDcyLCAweDY3LCAweDJFLCAKLSAgICAgICAgICAweDYx LCAweDcwLCAweDYxLCAweDYzLCAweDY4LCAweDY1LCAweDJFLCAweDZDLCAKLSAgICAgICAgICAw eDZGLCAweDY3LCAweDM0LCAweDZBLCAweDJFLCAweDczLCAweDcwLCAweDY5LCAKLUBAIC0xNjEs NyArMTYxLDcgQEAKLSAgICAgICAgICAgICAgICAgMHg2MSwgMHg3NiwgMHg2MSwgMHgyRiwgMHg2 QywgMHg2MSwgMHg2RSwgMHg2NywgCi0gICAgICAgICAgICAgICAgIDB4MkYsIDB4NTMsIDB4NzQs IDB4NzIsIDB4NjksIDB4NkUsIDB4NjcsIDB4M0IsCi0gICAgICAgICAgMHg3OCwgMHg3MCB9Owot LSAgICAgIG9zLndyaXRlUHJvbG9nKCJvcmcuYXBhY2hlLmxvZzRqLnNwaS5Mb2NhdGlvbkluZm8i LCAyLCBwcm9sb2csIHNpemVvZihwcm9sb2cpLCBwKTsKLSsgICAgICBvcy53cml0ZVByb2xvZygi b3JnLmFwYWNoZS5sb2c0ai5zcGkuTG9jYXRpb25JbmZvIiwgMiwgKGNoYXIgKilwcm9sb2csIHNp emVvZihwcm9sb2cpLCBwKTsKLSAgICAgICAgIGNoYXIqIGxpbmUgPSBwLml0b2EobGluZU51bWJl cik7Ci0gICAgICAgICAvLwotICAgICAgICAgLy8gICBjb25zdHJ1Y3QgSmF2YS1saWtlIGZ1bGxJ bmZvIChyZXBsYWNlICI6OiIgd2l0aCAiLiIpCi0tLS0gYS9zcmMvbWFpbi9jcHAvbG9nZ2luZ2V2 ZW50LmNwcAotKysrIGIvc3JjL21haW4vY3BwL2xvZ2dpbmdldmVudC5jcHAKLUBAIC0yMzYsNyAr MjM2LDcgQEAKLSAKLSAKLSB2b2lkIExvZ2dpbmdFdmVudDo6d3JpdGVQcm9sb2coT2JqZWN0T3V0 cHV0U3RyZWFtJiBvcywgUG9vbCYgcCkgIHsKLS0gICAgIGNoYXIgY2xhc3NEZXNjW10gPSB7Ci0r ICAgICB1bnNpZ25lZCBjaGFyIGNsYXNzRGVzY1tdID0gewotICAgICAgICAgMHg3MiwgMHgwMCwg MHgyMSwgCi0gICAgICAgICAweDZGLCAweDcyLCAweDY3LCAweDJFLCAweDYxLCAweDcwLCAweDYx LCAweDYzLCAKLSAgICAgICAgIDB4NjgsIDB4NjUsIDB4MkUsIDB4NkMsIDB4NkYsIDB4NjcsIDB4 MzQsIDB4NkEsIAotQEAgLTI5Miw3ICsyOTIsNyBAQAotICAgICAgICAgMHgzQiwgMHg3OCwgMHg3 MCB9OyAKLSAKLSAgICAgIG9zLndyaXRlUHJvbG9nKCJvcmcuYXBhY2hlLmxvZzRqLnNwaS5Mb2dn aW5nRXZlbnQiLCAKLS0gICAgICAgIDgsIGNsYXNzRGVzYywgc2l6ZW9mKGNsYXNzRGVzYyksIHAp OwotKyAgICAgICAgOCwgKGNoYXIgKikgY2xhc3NEZXNjLCBzaXplb2YoY2xhc3NEZXNjKSwgcCk7 Ci0gfQotIAotIHZvaWQgTG9nZ2luZ0V2ZW50Ojp3cml0ZShoZWxwZXJzOjpPYmplY3RPdXRwdXRT dHJlYW0mIG9zLCBQb29sJiBwKSBjb25zdCB7Ci0tLS0gYS9zcmMvbWFpbi9jcHAvb2JqZWN0b3V0 cHV0c3RyZWFtLmNwcAotKysrIGIvc3JjL21haW4vY3BwL29iamVjdG91dHB1dHN0cmVhbS5jcHAK LUBAIC0zNiw4ICszNiw4IEBACi0gICAgICAgIG9iamVjdEhhbmRsZSgweDdFMDAwMCksCi0gICAg ICAgIGNsYXNzRGVzY3JpcHRpb25zKG5ldyBDbGFzc0Rlc2NyaXB0aW9uTWFwKCkpCi0gewotLSAg IGNoYXIgc3RhcnRbXSA9IHsgMHhBQywgMHhFRCwgMHgwMCwgMHgwNSB9OwotLSAgIEJ5dGVCdWZm ZXIgYnVmKHN0YXJ0LCBzaXplb2Yoc3RhcnQpKTsKLSsgICB1bnNpZ25lZCBjaGFyIHN0YXJ0W10g PSB7IDB4QUMsIDB4RUQsIDB4MDAsIDB4MDUgfTsKLSsgICBCeXRlQnVmZmVyIGJ1ZigoY2hhciop c3RhcnQsIHNpemVvZihzdGFydCkpOwotICAgIG9zLT53cml0ZShidWYsIHApOwotIH0KLSAKLUBA IC04MSw3ICs4MSw3IEBACi0gICAgIC8vCi0gICAgIC8vICBUQ19PQkpFQ1QgYW5kIHRoZSBjbGFz c0Rlc2MgZm9yIGphdmEudXRpbC5IYXNodGFibGUKLSAgICAgLy8KLS0gICAgY2hhciBwcm9sb2db XSA9IHsKLSsgICAgdW5zaWduZWQgY2hhciBwcm9sb2dbXSA9IHsKLSAgICAgICAgIDB4NzIsIDB4 MDAsIDB4MTMsIDB4NkEsIDB4NjEsIDB4NzYsIDB4NjEsIAotICAgICAgICAgMHgyRSwgMHg3NSwg MHg3NCwgMHg2OSwgMHg2QywgMHgyRSwgMHg0OCwgMHg2MSwgCi0gICAgICAgICAweDczLCAweDY4 LCAweDc0LCAweDYxLCAweDYyLCAweDZDLCAweDY1LCAweDEzLCAKLUBAIC05MCw3ICs5MCw3IEBA Ci0gICAgICAgICAweDY0LCAweDQ2LCAweDYxLCAweDYzLCAweDc0LCAweDZGLCAweDcyLCAweDQ5 LCAKLSAgICAgICAgIDB4MDAsIDB4MDksIDB4NzQsIDB4NjgsIDB4NzIsIDB4NjUsIDB4NzMsIDB4 NjgsIAotICAgICAgICAgMHg2RiwgMHg2QywgMHg2NCwgMHg3OCwgMHg3MCAgfTsKLS0gICAgd3Jp dGVQcm9sb2coImphdmEudXRpbC5IYXNodGFibGUiLCAxLCBwcm9sb2csIHNpemVvZihwcm9sb2cp LCBwKTsKLSsgICAgd3JpdGVQcm9sb2coImphdmEudXRpbC5IYXNodGFibGUiLCAxLCAoY2hhciAq KSBwcm9sb2csIHNpemVvZihwcm9sb2cpLCBwKTsKLSAgICAgLy8KLSAgICAgLy8gICBsb2FkRmFj dG9yID0gMC43NSwgdGhyZXNob2xkID0gNSwgYmxvY2tkYXRhIHN0YXJ0LCBidWNrZXRzLnNpemUg PSA3Ci0gICAgIGNoYXIgZGF0YVtdID0geyAweDNGLCAweDQwLCAweDAwLCAweDAwLCAweDAwLCAw eDAwLCAweDAwLCAweDA1LCAKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbG9nNGN4eC9wYXRjaGVzLzE4 MC1nY2MtZml4LXRlc3RzdWl0ZS5wYXRjaCBiL3NyY3BrZ3MvbG9nNGN4eC9wYXRjaGVzLzE4MC1n Y2MtZml4LXRlc3RzdWl0ZS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzFi NzE0NjdhMTMxLi4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMvMTgw LWdjYy1maXgtdGVzdHN1aXRlLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMjUgKzAsMCBAQAot RGVzY3JpcHRpb246IEZpeCBuYXJyb3dpbmcgZXJyb3JzIGFsc28gZm9yIHRoZSB0ZXN0c3VpdGUK LUF1dGhvcjogVG9iaWFzIEZyb3N0IDx0b2JpQGRlYmlhbi5vcmc+Ci1MYXN0LVVwZGF0ZTogMjAx Ni0xMC0yMwotLS0tCi1UaGlzIHBhdGNoIGhlYWRlciBmb2xsb3dzIERFUC0zOiBodHRwOi8vZGVw LmRlYmlhbi5uZXQvZGVwcy9kZXAzLwotLS0tIGEvc3JjL3Rlc3QvY3BwL3htbC9kb210ZXN0Y2Fz ZS5jcHAKLSsrKyBiL3NyYy90ZXN0L2NwcC94bWwvZG9tdGVzdGNhc2UuY3BwCi1AQCAtMTkwLDcg KzE5MCw3IEBACi0gICAgICAgICAgICAgICAgIERPTUNvbmZpZ3VyYXRvcjo6Y29uZmlndXJlKExP RzRDWFhfVEVTVF9TVFIoImlucHV0L3htbC9ET01UZXN0Q2FzZTMueG1sIikpOwotICAgICAgICAg ICAgICAgICBMT0c0Q1hYX0lORk8obG9nZ2VyLCAiRmlsZSBuYW1lIGlzIGV4cGVjdGVkIHRvIGVu ZCB3aXRoIGEgc3VwZXJzY3JpcHQgMyIpOwotICNpZiBMT0c0Q1hYX0xPR0NIQVJfSVNfVVRGOAot LSAgICAgICAgICAgICAgICBjb25zdCBsb2djaGFyIGZuYW1lW10gPSB7IDB4NkYsIDB4NzUsIDB4 NzQsIDB4NzAsIDB4NzUsIDB4NzQsIDB4MkYsIDB4NjQsIDB4NkYsIDB4NkQsIDB4QzIsIDB4QjMs IDAgfTsKLSsgICAgICAgICAgICAgICAgY29uc3QgbG9nY2hhciBmbmFtZVtdID0geyAweDZGLCAw eDc1LCAweDc0LCAweDcwLCAweDc1LCAweDc0LCAweDJGLCAweDY0LCAweDZGLCAweDZELCAobG9n Y2hhcikweEMyLCAobG9nY2hhcikweEIzLCAwIH07Ci0gI2Vsc2UKLSAgICAgICAgICAgICAgICAg Y29uc3QgbG9nY2hhciBmbmFtZVtdID0geyAweDZGLCAweDc1LCAweDc0LCAweDcwLCAweDc1LCAw eDc0LCAweDJGLCAweDY0LCAweDZGLCAweDZELCAweEIzLCAwIH07Ci0gI2VuZGlmCi1AQCAtMjA5 LDcgKzIwOSw3IEBACi0gICAgICAgICAgICAgICAgIERPTUNvbmZpZ3VyYXRvcjo6Y29uZmlndXJl KExPRzRDWFhfVEVTVF9TVFIoImlucHV0L3htbC9ET01UZXN0Q2FzZTQueG1sIikpOwotICAgICAg ICAgICAgICAgICBMT0c0Q1hYX0lORk8obG9nZ2VyLCAiRmlsZSBuYW1lIGlzIGV4cGVjdGVkIHRv IGVuZCB3aXRoIGFuIGlkZW9ncmFwaGljIDQiKTsKLSAjaWYgTE9HNENYWF9MT0dDSEFSX0lTX1VU RjgKLS0gICAgICAgICAgICAgICAgY29uc3QgbG9nY2hhciBmbmFtZVtdID0geyAweDZGLCAweDc1 LCAweDc0LCAweDcwLCAweDc1LCAweDc0LCAweDJGLCAweDY0LCAweDZGLCAweDZELCAweEUzLCAw eDg2LCAweDk1LCAwIH07Ci0rICAgICAgICAgICAgICAgIGNvbnN0IGxvZ2NoYXIgZm5hbWVbXSA9 IHsgMHg2RiwgKGxvZ2NoYXIpMHg3NSwgMHg3NCwgMHg3MCwgMHg3NSwgMHg3NCwgMHgyRiwgMHg2 NCwgMHg2RiwgMHg2RCwgKGxvZ2NoYXIpMHhFMywgKGxvZ2NoYXIpMHg4NiwgKGxvZ2NoYXIpMHg5 NSwgMCB9OwotICNlbHNlCi0gICAgICAgICAgICAgICAgIGNvbnN0IGxvZ2NoYXIgZm5hbWVbXSA9 IHsgMHg2RiwgMHg3NSwgMHg3NCwgMHg3MCwgMHg3NSwgMHg3NCwgMHgyRiwgMHg2NCwgMHg2Riwg MHg2RCwgMHgzMTk1LCAwIH07Ci0gI2VuZGlmCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xvZzRjeHgv cGF0Y2hlcy9taXNzaW5nLWluY2x1ZGVzLnBhdGNoIGIvc3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMv bWlzc2luZy1pbmNsdWRlcy5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTYz YmZmZDk1YzU3Li4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMvbWlz c2luZy1pbmNsdWRlcy5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDM4ICswLDAgQEAKLWRpZmYg LU5hdXIgYXBhY2hlLWxvZzRjeHgtMC4xMC4wLm9yaWcvc3JjL2V4YW1wbGVzL2NwcC9jb25zb2xl LmNwcCBhcGFjaGUtbG9nNGN4eC0wLjEwLjAvc3JjL2V4YW1wbGVzL2NwcC9jb25zb2xlLmNwcAot LS0tIGEvc3JjL2V4YW1wbGVzL2NwcC9jb25zb2xlLmNwcAkyMDA4LTA0LTAxIDAwOjM0OjUyLjAw MDAwMDAwMCArMDIwMAotKysrIGIvc3JjL2V4YW1wbGVzL2NwcC9jb25zb2xlLmNwcAkyMDA4LTA1 LTA2IDA1OjQwOjUyLjAwMDAwMDAwMCArMDIwMAotQEAgLTE1LDcgKzE1LDEwIEBACi0gICogbGlt aXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCi0gICovCi0gCi0tI2luY2x1ZGUgPHN0ZGxpYi5o PgotKyNpbmNsdWRlIDxjc3RkaW8+Ci0rI2luY2x1ZGUgPGNzdGRsaWI+Ci0rI2luY2x1ZGUgPGNz dHJpbmc+Ci0rI2luY2x1ZGUgPHN0ZGludC5oPgotICNpbmNsdWRlIDxsb2c0Y3h4L2xvZ2dlci5o PgotICNpbmNsdWRlIDxsb2c0Y3h4L2NvbnNvbGVhcHBlbmRlci5oPgotICNpbmNsdWRlIDxsb2c0 Y3h4L3NpbXBsZWxheW91dC5oPgotZGlmZiAtTmF1ciBhcGFjaGUtbG9nNGN4eC0wLjEwLjAub3Jp Zy9zcmMvbWFpbi9jcHAvaW5wdXRzdHJlYW1yZWFkZXIuY3BwIGFwYWNoZS1sb2c0Y3h4LTAuMTAu MC9zcmMvbWFpbi9jcHAvaW5wdXRzdHJlYW1yZWFkZXIuY3BwCi0tLS0gYS9zcmMvbWFpbi9jcHAv aW5wdXRzdHJlYW1yZWFkZXIuY3BwCTIwMDgtMDQtMDEgMDA6MzQ6MDkuMDAwMDAwMDAwICswMjAw Ci0rKysgYi9zcmMvbWFpbi9jcHAvaW5wdXRzdHJlYW1yZWFkZXIuY3BwCTIwMDgtMDUtMDYgMDU6 MzI6MzEuMDAwMDAwMDAwICswMjAwCi1AQCAtMjEsNiArMjEsOCBAQAotICNpbmNsdWRlIDxsb2c0 Y3h4L2hlbHBlcnMvcG9vbC5oPgotICNpbmNsdWRlIDxsb2c0Y3h4L2hlbHBlcnMvYnl0ZWJ1ZmZl ci5oPgotIAotKyNpbmNsdWRlIDxjc3RyaW5nPgotKwotIHVzaW5nIG5hbWVzcGFjZSBsb2c0Y3h4 OwotIHVzaW5nIG5hbWVzcGFjZSBsb2c0Y3h4OjpoZWxwZXJzOwotIAotZGlmZiAtTmF1ciBzcmMv bWFpbi9jcHAvc29ja2V0b3V0cHV0c3RyZWFtLmNwcCBhcGFjaGUtbG9nNGN4eC0wLjEwLjAvc3Jj L21haW4vY3BwL3NvY2tldG91dHB1dHN0cmVhbS5jcHAKLS0tLSBhL3NyYy9tYWluL2NwcC9zb2Nr ZXRvdXRwdXRzdHJlYW0uY3BwCTIwMDgtMDQtMDEgMDA6MzQ6MDkuMDAwMDAwMDAwICswMjAwCi0r KysgYi9zcmMvbWFpbi9jcHAvc29ja2V0b3V0cHV0c3RyZWFtLmNwcAkyMDA4LTA1LTA2IDA1OjM1 OjU1LjAwMDAwMDAwMCArMDIwMAotQEAgLTIwLDYgKzIwLDggQEAKLSAjaW5jbHVkZSA8bG9nNGN4 eC9oZWxwZXJzL3NvY2tldC5oPgotICNpbmNsdWRlIDxsb2c0Y3h4L2hlbHBlcnMvYnl0ZWJ1ZmZl ci5oPgotIAotKyNpbmNsdWRlIDxjc3RyaW5nPgotKwotIHVzaW5nIG5hbWVzcGFjZSBsb2c0Y3h4 OwotIHVzaW5nIG5hbWVzcGFjZSBsb2c0Y3h4OjpoZWxwZXJzOwpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9sb2c0Y3h4L3RlbXBsYXRlIGIvc3JjcGtncy9sb2c0Y3h4L3RlbXBsYXRlCmluZGV4IDJmNDkw NWExNjA5Mi4uOTYzNzQzZjYzNjdhIDEwMDY0NAotLS0gYS9zcmNwa2dzL2xvZzRjeHgvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9sb2c0Y3h4L3RlbXBsYXRlCkBAIC0xLDIyICsxLDIyIEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdsb2c0Y3h4JwogcGtnbmFtZT1sb2c0Y3h4Ci12ZXJzaW9uPTAuMTAu MAotcmV2aXNpb249NAotYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQotbWFrZWRlcGVuZHM9Imxp YnhtbDItZGV2ZWwgYXByLWRldmVsIGFwci11dGlsLWRldmVsIGdkYm0tZGV2ZWwiCi1zaG9ydF9k ZXNjPSJBIEMrKyBMb2dnaW5nIExpYnJhcnkgYmFzZWQgb24gTG9nNEoiCit2ZXJzaW9uPTEuMC4w CityZXZpc2lvbj0xCitidWlsZF9zdHlsZT1jbWFrZQoraG9zdG1ha2VkZXBlbmRzPSJwa2ctY29u ZmlnIHppcCIKK21ha2VkZXBlbmRzPSJsaWJ4bWwyLWRldmVsIGFwci1kZXZlbCBhcHItdXRpbC1k ZXZlbCBnZGJtLWRldmVsIGJvb3N0LWRldmVsIgorc2hvcnRfZGVzYz0iQysrIExvZ2dpbmcgTGli cmFyeSBiYXNlZCBvbiBMb2c0SiIKIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9pZGxp bnV4Lm9yZz4iCiBsaWNlbnNlPSJBcGFjaGUtMi4wIgogaG9tZXBhZ2U9Imh0dHBzOi8vbG9nZ2lu Zy5hcGFjaGUub3JnL2xvZzRjeHgvIgogZGlzdGZpbGVzPSJodHRwczovL2FyY2hpdmUuYXBhY2hl Lm9yZy9kaXN0L2xvZ2dpbmcvbG9nNGN4eC8ke3ZlcnNpb259L2FwYWNoZS1sb2c0Y3h4LSR7dmVy c2lvbn0udGFyLmd6IgotY2hlY2tzdW09MGRlMDM5NjIyMGE5NTY2YTU4MDE2NmU2NmIzOTY3NGNi NDBlZmQyMTc2ZjUyYWQyYzY1NDg2Yzk5YzkyMGM4YworY2hlY2tzdW09NmRmOWYxZjY4MjY1MGRl NjA0NTMwOTQ3M2Q1YjJmZTFmNzk4YTAzY2ViMzZhNzRhNWIyMWY1NTIwOTYyZDMyZgogCiBsb2c0 Y3h4LWRldmVsX3BhY2thZ2UoKSB7CiAJc2hvcnRfZGVzYys9IiAtIGRldmVsb3BtZW50IGZpbGVz IgogCWRlcGVuZHM9IiR7c291cmNlcGtnfT49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKIAlwa2df aW5zdGFsbCgpIHsKIAkJdm1vdmUgdXNyL2luY2x1ZGUKLQkJdm1vdmUgdXNyL2xpYi8qLmEKIAkJ dm1vdmUgdXNyL2xpYi8qLnNvCiAJCXZtb3ZlIHVzci9saWIvcGtnY29uZmlnCiAJfQoKRnJvbSA0 YjgxZjRjNzkyMjgyZmEyYzE5ZTNmNmMxOTdjYWU0ZjgwYWFiZTAxIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBX ZWQsIDEgRmViIDIwMjMgMTU6NTU6MjUgKzAxMDAKU3ViamVjdDogW1BBVENIIDI1LzM5XSBsdWE1 NC1sdWFsZGFwOiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtncy9s dWE1NC1sdWFsZGFwL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9u KCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9sdWE1NC1sdWFsZGFwL3Rl bXBsYXRlIGIvc3JjcGtncy9sdWE1NC1sdWFsZGFwL3RlbXBsYXRlCmluZGV4IDQ0OTJkYmVhYjY1 MC4uOGMwM2VlZjdlZjRkIDEwMDY0NAotLS0gYS9zcmNwa2dzL2x1YTU0LWx1YWxkYXAvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9sdWE1NC1sdWFsZGFwL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnbHVhNTQtbHVhbGRhcCcKIHBrZ25hbWU9bHVhNTQtbHVhbGRh cAogdmVyc2lvbj0xLjIuNQotcmV2aXNpb249MworcmV2aXNpb249NAogY3JlYXRlX3dya3NyYz15 ZXMKIGJ1aWxkX3N0eWxlPWdudS1tYWtlZmlsZQogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmln IgoKRnJvbSBjYjg4OWU0Yzc0ODhlMTQxOTNmN2Y4Yzg1YTZmNzE3NzE4YTQxZWRmIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29t PgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTU6NTY6MjIgKzAxMDAKU3ViamVjdDogW1BBVENIIDI2 LzM5XSBtb25pdG9yaW5nLXBsdWdpbnM6IHJldmJ1bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoK LS0tCiBzcmNwa2dzL21vbml0b3JpbmctcGx1Z2lucy90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBj aGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvbW9uaXRvcmluZy1wbHVnaW5zL3RlbXBsYXRlIGIvc3JjcGtncy9tb25pdG9yaW5nLXBsdWdp bnMvdGVtcGxhdGUKaW5kZXggOWZlYzU1NjJhOWNjLi4yMGZiZDEzYTUwMjAgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvbW9uaXRvcmluZy1wbHVnaW5zL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbW9uaXRv cmluZy1wbHVnaW5zL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAnbW9uaXRvcmluZy1wbHVnaW5zJwogcGtnbmFtZT1tb25pdG9yaW5nLXBsdWdpbnMKIHZlcnNp b249Mi4zLjIKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1 cmUKIGNvbmZpZ3VyZV9hcmdzPSItLWxpYmV4ZWNkaXI9L3Vzci9saWIvbW9uaXRvcmluZy1wbHVn aW5zIgogaG9zdG1ha2VkZXBlbmRzPSJmcGluZyBvcGVuc3NoIHBvc3RmaXggcHJvY3BzLW5nIHNt YmNsaWVudCBuZXQtc25tcCBiaW5kLXV0aWxzIHN1ZG8iCgpGcm9tIGViMGFlMDIyOTUzMGE0NzVj YmUxYjJjNDI2ZTg4Mzg2YTRkODBhZGQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEts YXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAx NTo1NzoxMiArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMjcvMzldIG5zcy1wYW0tbGRhcGQ6IHJldmJ1 bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dzL25zcy1wYW0tbGRhcGQvdGVt cGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24o LSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL25zcy1wYW0tbGRhcGQvdGVtcGxhdGUgYi9zcmNwa2dz L25zcy1wYW0tbGRhcGQvdGVtcGxhdGUKaW5kZXggOTJjYmQ3NTQxN2I0Li4yYjNhMzVhZTg1YTMg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbnNzLXBhbS1sZGFwZC90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L25zcy1wYW0tbGRhcGQvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICduc3MtcGFtLWxkYXBkJwogcGtnbmFtZT1uc3MtcGFtLWxkYXBkCiB2ZXJzaW9uPTAuOS4x MgotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29u ZmlndXJlX2FyZ3M9Ii0tZW5hYmxlLXNhc2wgLS1lbmFibGUta2VyYmVyb3MgLS13aXRoLXBhbS1z ZWNsaWItZGlyPS91c3IvbGliL3NlY3VyaXR5LyIKIGNvbmZfZmlsZXM9Ii9ldGMvbnNsY2QuY29u ZiIKCkZyb20gZDAxNjI3N2ExOWM4Y2I1MWZlZDA1MDMzOGVkNWI0NGE5YTRjNTY1OCBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNv bT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE2OjE2OjEwICswMTAwClN1YmplY3Q6IFtQQVRDSCAy OC8zOV0gcGhwOiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtncy9w aHAvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVs ZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3BocC90ZW1wbGF0ZSBiL3NyY3BrZ3MvcGhw L3RlbXBsYXRlCmluZGV4IDM5ZTRkMTYxYjY0OC4uZTljNmY2MDI0NjMxIDEwMDY0NAotLS0gYS9z cmNwa2dzL3BocC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3BocC90ZW1wbGF0ZQpAQCAtMSw3ICsx LDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3BocCcKIHBrZ25hbWU9cGhwCiB2ZXJzaW9uPTcu NC4zMwotcmV2aXNpb249MQorcmV2aXNpb249MgogaG9zdG1ha2VkZXBlbmRzPSJiaXNvbiBwa2ct Y29uZmlnIGFwYWNoZS1kZXZlbCIKIG1ha2VkZXBlbmRzPSJhcGFjaGUtZGV2ZWwgZW5jaGFudDIt ZGV2ZWwgZnJlZXRkcy1kZXZlbCBmcmVldHlwZS1kZXZlbCBnZGJtLWRldmVsCiAgZ21wLWRldmVs IGxpYmN1cmwtZGV2ZWwgbGlianBlZy10dXJiby1kZXZlbCBsaWJtYXJpYWRiY2xpZW50LWRldmVs CgpGcm9tIDU1ZTZjNmI0YjEyYWM5NmU1Njg4M2IyMzY3Y2I0M2NmYjI4NDM0NDIgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+ CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNjoxNzowOSArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMjkv MzldIHBocDguMDogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3Mv cGhwOC4wL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAx IGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9waHA4LjAvdGVtcGxhdGUgYi9zcmNw a2dzL3BocDguMC90ZW1wbGF0ZQppbmRleCA3NGM1MGRhMGU0NmYuLjFjMjE1ZDFmODQxYSAxMDA2 NDQKLS0tIGEvc3JjcGtncy9waHA4LjAvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9waHA4LjAvdGVt cGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdwaHA4LjAnCiBwa2du YW1lPXBocDguMAogdmVyc2lvbj04LjAuMjUKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIF9waHBf dmVyc2lvbj04LjAKIGhvc3RtYWtlZGVwZW5kcz0iYmlzb24gcGtnLWNvbmZpZyBhcGFjaGUtZGV2 ZWwiCiBtYWtlZGVwZW5kcz0iYXBhY2hlLWRldmVsIGVuY2hhbnQyLWRldmVsIGZyZWV0ZHMtZGV2 ZWwgZnJlZXR5cGUtZGV2ZWwgZ2RibS1kZXZlbAoKRnJvbSA4NjE1YjM5MWUxOGZhZTlhMjI4NmVi ZmVkMWU3ZTQ2NzQzYzI1OWE0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBN b2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTY6MTk6 MTYgKzAxMDAKU3ViamVjdDogW1BBVENIIDMwLzM5XSBwaHA4LjE6IHJldmJ1bXAgZHVlIHRvIG9w ZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dzL3BocDguMS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmls ZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvcGhwOC4xL3RlbXBsYXRlIGIvc3JjcGtncy9waHA4LjEvdGVtcGxhdGUKaW5kZXggZjE5 Njg4YjUyZjZjLi5mMTQ0MTQ2OTdlNzkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcGhwOC4xL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvcGhwOC4xL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAncGhwOC4xJwogcGtnbmFtZT1waHA4LjEKIHZlcnNpb249OC4xLjEyCi1y ZXZpc2lvbj0xCityZXZpc2lvbj0yCiBfcGhwX3ZlcnNpb249OC4xCiBob3N0bWFrZWRlcGVuZHM9 ImJpc29uIHBrZy1jb25maWcgYXBhY2hlLWRldmVsIgogbWFrZWRlcGVuZHM9ImFwYWNoZS1kZXZl bCBlbmNoYW50Mi1kZXZlbCBmcmVldGRzLWRldmVsIGZyZWV0eXBlLWRldmVsIGdkYm0tZGV2ZWwK CkZyb20gZGFlNjVkODhlOWVhYTQzOWU1MDZlZTU1ODQxMTRlNmNlNTE0MjQ2OCBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4K RGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE2OjIwOjA5ICswMTAwClN1YmplY3Q6IFtQQVRDSCAzMS8z OV0gcG9zdGZpeDogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3Mv cG9zdGZpeC90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwg MSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcG9zdGZpeC90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvcG9zdGZpeC90ZW1wbGF0ZQppbmRleCBiMWMyY2Q0ZTgwOTAuLjk5N2EyNDJiOTE5MSAx MDA2NDQKLS0tIGEvc3JjcGtncy9wb3N0Zml4L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcG9zdGZp eC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3Bvc3RmaXgn CiBwa2duYW1lPXBvc3RmaXgKIHZlcnNpb249My43LjQKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIK IGhvc3RtYWtlZGVwZW5kcz0icGVybCBtNCIKIG1ha2VkZXBlbmRzPSJpY3UtZGV2ZWwgbGlibGRh cC1kZXZlbCBsaWJtYXJpYWRiY2xpZW50LWRldmVsIHBjcmUyLWRldmVsCiAgcG9zdGdyZXNxbC1s aWJzLWRldmVsIHNxbGl0ZS1kZXZlbCIKCkZyb20gMzFiM2RmYmE5Y2MyOWFlMzAzN2FiY2U2ZWZm ZTRkMGQxZGMyMzhhZSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4g PGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE2OjIxOjM2ICsw MTAwClN1YmplY3Q6IFtQQVRDSCAzMi8zOV0gcHl0aG9uMy1sZGFwOiB1cGRhdGUgdG8gMy40LjMK CmJ1aWxkIHdhcyBmYWlsaW5nIGFmdGVyIHJldmJ1bXAKcmVtb3ZlIHVubmVjZXNzYXJ5IHNlZCBl eHByZXNzaW9uCi0tLQogc3JjcGtncy9weXRob24zLWxkYXAvdGVtcGxhdGUgfCAxMiArKysrLS0t LS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9weXRob24zLWxkYXAvdGVtcGxhdGUgYi9zcmNwa2dzL3B5dGhv bjMtbGRhcC90ZW1wbGF0ZQppbmRleCBjZmY3ZGYwNTVlNzguLjQxZTRlZGIxZjM1NCAxMDA2NDQK LS0tIGEvc3JjcGtncy9weXRob24zLWxkYXAvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9weXRob24z LWxkYXAvdGVtcGxhdGUKQEAgLTEsMTAgKzEsMTAgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3B5 dGhvbjMtbGRhcCcKIHBrZ25hbWU9cHl0aG9uMy1sZGFwCiBfcGtnbmFtZT1weXRob24tbGRhcAot dmVyc2lvbj0zLjIuMAotcmV2aXNpb249NQordmVyc2lvbj0zLjQuMworcmV2aXNpb249MQogYnVp bGRfc3R5bGU9cHl0aG9uMy1tb2R1bGUKLWhvc3RtYWtlZGVwZW5kcz0icHl0aG9uMy1zZXR1cHRv b2xzIgoraG9zdG1ha2VkZXBlbmRzPSJweXRob24zLXNldHVwdG9vbHMgcHl0aG9uMy13aGVlbCBw eXRob24zLXB5YXNuMS1tb2R1bGVzIgogbWFrZWRlcGVuZHM9InB5dGhvbjMtZGV2ZWwgbGlibGRh cC1kZXZlbCIKIGRlcGVuZHM9InB5dGhvbjMtcHlhc24xLW1vZHVsZXMiCiBjaGVja2RlcGVuZHM9 Im9wZW5sZGFwIG9wZW5sZGFwLXRvb2xzIgpAQCAtMTMsOCArMTMsNCBAQCBtYWludGFpbmVyPSJN aWNoYWVsIEFsZHJpZGdlIDxtYWxkcmlkZ2VAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJQeXRo b24tMi4wIgogaG9tZXBhZ2U9Imh0dHBzOi8vd3d3LnB5dGhvbi1sZGFwLm9yZyIKIGRpc3RmaWxl cz0iJHtQWVBJX1NJVEV9L3AvJHtfcGtnbmFtZX0vJHtfcGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIu Z3oiCi1jaGVja3N1bT03ZDFjNGIxNTM3NWE1MzM1NjRhYWQzZDNkZWFkZTc4OTIyMWU0NTAwNTJi MjFlYmI5NzIwZmI4MjJlY2NkYjhlCi0KLXByZV9idWlsZCgpIHsKLQlzZWQgLWkgInM6XmxpYnMg PSAuKjpsaWJzID0gbGRhcF9yIGxiZXIgc2FzbDIgc3NsIGNyeXB0bzoiIHNldHVwLmNmZwotfQor Y2hlY2tzdW09YWIyNmM1MTlhMGVmMmE0NDNhMmExMDM5MWZhM2M1Y2I1MmQ3ODcxMzIzMzk5ZGI5 NDllYmZhYTlmMjVlZTJhMAoKRnJvbSBkYTQxMmU0ODM4YjRjZTk0YTM2ZjM3NmYzYTIwOWMzNzUy YzZjNWIwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFz bW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTY6MjM6MzkgKzAxMDAKU3Vi amVjdDogW1BBVENIIDMzLzM5XSBxdW90YTogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRl CgotLS0KIHNyY3BrZ3MvcXVvdGEvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBp bnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F1b3RhL3Rl bXBsYXRlIGIvc3JjcGtncy9xdW90YS90ZW1wbGF0ZQppbmRleCBhNWRjN2JiZGI1ZjQuLjU1OWVm YWVlMjk5NCAxMDA2NDQKLS0tIGEvc3JjcGtncy9xdW90YS90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L3F1b3RhL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncXVv dGEnCiBwa2duYW1lPXF1b3RhCiB2ZXJzaW9uPTQuMDkKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIK IGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIG1ha2VfYnVpbGRfYXJncz0iVj0xIgogY29uZl9m aWxlcz0iL2V0Yy9xdW90YWdycGFkbWlucyAvZXRjL3F1b3RhdGFiIC9ldGMvd2FybnF1b3RhLmNv bmYiCgpGcm9tIGMwMTFjOWVjZWRiM2Q1MjAyODE1MGNlZGQ5ZDI0ZDUwNmFlYzc1N2QgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5j b20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNjozNjoyMiArMDEwMApTdWJqZWN0OiBbUEFUQ0gg MzQvMzldIHNlYWhvcnNlOiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3Jj cGtncy9zZWFob3JzZS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlv bigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc2VhaG9yc2UvdGVtcGxh dGUgYi9zcmNwa2dzL3NlYWhvcnNlL3RlbXBsYXRlCmluZGV4IGJlOGJhNDU0YjRhOC4uZGE5MjIz NGQ4MjE2IDEwMDY0NAotLS0gYS9zcmNwa2dzL3NlYWhvcnNlL3RlbXBsYXRlCisrKyBiL3NyY3Br Z3Mvc2VhaG9yc2UvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICdzZWFob3JzZScKIHBrZ25hbWU9c2VhaG9yc2UKIHZlcnNpb249NDMuMAotcmV2aXNpb249MQor cmV2aXNpb249MgogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj1naXIKIGhvc3RtYWtl ZGVwZW5kcz0iZ2NyLWRldmVsIGdldHRleHQgZ2xpYi1kZXZlbCBnbnVwZyBpdHN0b29sIGxpYnNl Y3JldC1kZXZlbAoKRnJvbSA1OTU5ZWU5ODU4MDM3ZjFhYjU1YjIyOWU1NWIzY2ZmYjQ0Y2M2MTA3 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5A Z21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTY6Mzg6MzUgKzAxMDAKU3ViamVjdDog W1BBVENIIDM1LzM5XSBzcXVpZDogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0K IHNyY3BrZ3Mvc3F1aWQvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRp b24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3NxdWlkL3RlbXBsYXRl IGIvc3JjcGtncy9zcXVpZC90ZW1wbGF0ZQppbmRleCA0OWI5ZWI5ZDdiOTEuLjIyMzhkMWM3ZGY1 MiAxMDA2NDQKLS0tIGEvc3JjcGtncy9zcXVpZC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3NxdWlk L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnc3F1aWQnCiBw a2duYW1lPXNxdWlkCiB2ZXJzaW9uPTUuNwotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRf c3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9IgogIC0tc3lzY29uZmRpcj0vZXRj L3NxdWlkCgpGcm9tIDczNzVkNDVmZWVhNjc5MDQwMGMyYTQ3M2UxMjBiOTE4ZjBmNTU4NWQgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFp bC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNjozOTozMCArMDEwMApTdWJqZWN0OiBbUEFU Q0ggMzYvMzldIHNzc2Q6IHJldmJ1bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNw a2dzL3Nzc2QvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyks IDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3Nzc2QvdGVtcGxhdGUgYi9zcmNw a2dzL3Nzc2QvdGVtcGxhdGUKaW5kZXggZWQxYmZlZWEwNDhlLi42OTFlMWI5NThhNWUgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3Mvc3NzZC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3Nzc2QvdGVtcGxhdGUK QEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdzc3NkJwogcGtnbmFtZT1zc3Nk CiB2ZXJzaW9uPTIuOC4yCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiAjIHVwc3RyZWFtIGV4cGxp Y2l0bHkgaGFyZGNvZGVzIHRvIHVzZSBnbGliYzoKICMgaHR0cHM6Ly9naXRodWIuY29tL1NTU0Qv c3NzZC9ibG9iLzIuOC4yL3NyYy91dGlsL25zc19kbF9sb2FkLmMKIGFyY2hzPSJ+Ki1tdXNsIgoK RnJvbSA4MjVmOGM3MzE5N2ZjYTQ2OWYxNGI5ZDM3MzI4YTljYjcxNmYxMjZiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpE YXRlOiBXZWQsIDEgRmViIDIwMjMgMTY6NDE6MzAgKzAxMDAKU3ViamVjdDogW1BBVENIIDM3LzM5 XSBzeWxwaGVlZDogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3Mv c3lscGhlZWQvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyks IDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3N5bHBoZWVkL3RlbXBsYXRlIGIv c3JjcGtncy9zeWxwaGVlZC90ZW1wbGF0ZQppbmRleCA3ZmJmMjUyNzZmYmMuLjI1YWE3NTNlNmQ0 ZCAxMDA2NDQKLS0tIGEvc3JjcGtncy9zeWxwaGVlZC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3N5 bHBoZWVkL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnc3ls cGhlZWQnCiBwa2duYW1lPXN5bHBoZWVkCiB2ZXJzaW9uPTMuNy4wCi1yZXZpc2lvbj04CityZXZp c2lvbj05CiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS1kaXNh YmxlLWNvbXBmYWNlIC0tZGlzYWJsZS1ndGtzcGVsbCAtLWVuYWJsZS1sZGFwIC0td2l0aC1ncGdt ZS1wcmVmaXg9JHtYQlBTX0NST1NTX0JBU0V9L3VzciIKIGhvc3RtYWtlZGVwZW5kcz0iYXV0b21h a2UgbGlidG9vbCBwa2ctY29uZmlnIGZsZXggZ2V0dGV4dC1kZXZlbCBndGsrLWRldmVsIGdwZ21l LWRldmVsIGdsaWItZGV2ZWwiCgpGcm9tIGIyNDc2YjkzN2ZiNGNhOGZhNGY4NDljZWE0ZmYyNzEw NmJlNjFjNjUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFy YXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNjo0Mjo0NyArMDEwMApT dWJqZWN0OiBbUEFUQ0ggMzgvMzldIHZpcnR1b3NvOiB1cGRhdGUgdG8gNy4yLjgKCnRlc3Qgc3Vp dGUgd2FzIGZhaWxpbmcgb24gcmV2YnVtcAoKLSByZW1vdmUgcGF0Y2hlcyB0aGF0IG5vIGxvbmdl ciBhcHBseQotIGFkZCBwYXRjaCB0aGF0IHJlbW92ZXMgZ2l0IHJldmlzaW9uIGZyb20gZ3JhcGhx bAotIGRpc2FibGUgc3RhdGljIGxpYnJhcmllcyBhcyB3ZSdyZSByZW1vdmluZyB0aGVtIGFmdGVy IGluc3RhbGwgYW55d2F5Ci0gYWRkIHdoaWNoIHRvIGhvc3RtYWtlZGVwZW5kcwotIGFkZCBtaXNz aW5nIGNoZWNrZGVwZW5kcwotLS0KIC4uLi92aXJ0dW9zby9wYXRjaGVzL2Fsd2F5cy1pZWVlLWZs b2F0cy5wYXRjaCB8ICAgNDYgLQogc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL2ZpeC1ncmFwaHFs LnBhdGNoICAgIHwgICAxMSArCiAuLi4vdmlydHVvc28vcGF0Y2hlcy9maXgtdXRmOC1iaXR0ZXN0 LnBhdGNoICAgfCAgIDE1IC0KIHNyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9tdXNsLXBhZ2Vfc2l6 ZS5wYXRjaCB8ICAgMzQgLQogLi4uL3JlbW92ZS1vcGVuc3NsLXZlcnNpb24tY2hlY2sucGF0Y2gg ICAgICAgIHwgICA0OCAtCiAuLi4vdmlydHVvc28vcGF0Y2hlcy9zc2wtY29ubmVjdC1zdGF0ZS5w YXRjaCAgfCAgIDE1IC0KIHNyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9zc2wxLjEucGF0Y2ggICAg ICAgICB8IDE0MDAgLS0tLS0tLS0tLS0tLS0tLS0KIHNyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9z c2wxLjFfbW9yZS5wYXRjaCAgICB8ICAgMjAgLQogc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL3Vz ZS1ta3N0ZW1wLnBhdGNoICAgIHwgICAxOCAtCiBzcmNwa2dzL3ZpcnR1b3NvL3RlbXBsYXRlICAg ICAgICAgICAgICAgICAgICAgfCAgIDE2ICstCiAxMCBmaWxlcyBjaGFuZ2VkLCAxOCBpbnNlcnRp b25zKCspLCAxNjA1IGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvdmly dHVvc28vcGF0Y2hlcy9hbHdheXMtaWVlZS1mbG9hdHMucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0 NCBzcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvZml4LWdyYXBocWwucGF0Y2gKIGRlbGV0ZSBtb2Rl IDEwMDY0NCBzcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvZml4LXV0ZjgtYml0dGVzdC5wYXRjaAog ZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9tdXNsLXBhZ2Vfc2l6 ZS5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9yZW1v dmUtb3BlbnNzbC12ZXJzaW9uLWNoZWNrLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtn cy92aXJ0dW9zby9wYXRjaGVzL3NzbC1jb25uZWN0LXN0YXRlLnBhdGNoCiBkZWxldGUgbW9kZSAx MDA2NDQgc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL3NzbDEuMS5wYXRjaAogZGVsZXRlIG1vZGUg MTAwNjQ0IHNyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9zc2wxLjFfbW9yZS5wYXRjaAogZGVsZXRl IG1vZGUgMTAwNjQ0IHNyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy91c2UtbWtzdGVtcC5wYXRjaAoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9hbHdheXMtaWVlZS1mbG9hdHMu cGF0Y2ggYi9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvYWx3YXlzLWllZWUtZmxvYXRzLnBhdGNo CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2OWI1MDM0MjE0ZjcuLjAwMDAwMDAwMDAw MAotLS0gYS9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvYWx3YXlzLWllZWUtZmxvYXRzLnBhdGNo CisrKyAvZGV2L251bGwKQEAgLTEsNDYgKzAsMCBAQAotRnJvbSBiYzhlOTg5MGRlOGM5ODY2ZTZl MWY0OWM4MzU1ZWJlZTkxNTU3OWU0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogcTY2 IDxkYW5pZWxAb2N0YWZvcmdlLm9yZz4KLURhdGU6IFdlZCwgMjkgSmFuIDIwMjAgMTI6NTA6NDYg KzAxMDAKLVN1YmplY3Q6IFtQQVRDSCAxLzJdIGFsd2F5cyB1c2UgSUVFRSBmbG9hdHMKLQotV2Ug ZG9uJ3QgYnVpbGQgb24gYW55IHBsYXRmb3JtcyB3aGVyZSB0aGlzIGlzIG5vdCB0aGUgY2FzZS4K LQotRml4ZXMgcGxhdGZvcm1zIGZvciB3aGljaCB0aGlzIGlzIG5vdCBjaGVja2VkLgotLS0tCi0g bGlic3JjL0RrL0RrbWFyc2hhbC5jIHwgMjAgKy0tLS0tLS0tLS0tLS0tLS0tLS0KLSAxIGZpbGUg Y2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDE5IGRlbGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0IGxp YnNyYy9Eay9Ea21hcnNoYWwuYyBsaWJzcmMvRGsvRGttYXJzaGFsLmMKLWluZGV4IGRhMTVhMjEu LmIyYjZjNzEgMTAwNjQ0Ci0tLS0gYS9saWJzcmMvRGsvRGttYXJzaGFsLmMKLSsrKyBiL2xpYnNy Yy9Eay9Ea21hcnNoYWwuYwotQEAgLTMxLDI1ICszMSw3IEBACi0gIyBpbmNsdWRlIDxuZXRpbmV0 L2luLmg+CQkJIC8qIGZvciBudG9obCwgaHRvbmwgKi8KLSAjZW5kaWYKLSAKLS0jaWYgZGVmaW5l ZCAoaTM4NikgfHwgXAotLSAgICBkZWZpbmVkIChfV0lONjQpIHx8IFwKLS0gICAgZGVmaW5lZCAo X01fSVg4NikgfHwgXAotLSAgICBkZWZpbmVkIChfTV9BTFBIQSkgfHwgXAotLSAgICBkZWZpbmVk IChtYzY4MDAwKSB8fCBcCi0tICAgIGRlZmluZWQgKHNwYXJjKSB8fCBcCi0tICAgIGRlZmluZWQg KF9feDg2XzY0KSB8fCBcCi0tICAgIGRlZmluZWQgKF9fYWxwaGEpIHx8IFwKLS0gICAgZGVmaW5l ZCAoX19wb3dlcnBjKSB8fCBcCi0tICAgIGRlZmluZWQgKG1pcHMpIHx8IFwKLS0gICAgZGVmaW5l ZCAoX19PUzJfXykgfHwgXAotLSAgICBkZWZpbmVkIChfSUJNUjIpCi0tIyBkZWZpbmUgX0lFRUVf RkxPQVRTCi0tI2VsaWYgZGVmaW5lZCAoT1BMX1NPVVJDRSkKLS0jIGluY2x1ZGUgPGxpYnJwYy5o PgotLSNlbHNlCi0tIyBpbmNsdWRlIDxycGMvdHlwZXMuaD4KLS0jIGluY2x1ZGUgPHJwYy94ZHIu aD4KLS0jZW5kaWYKLSsjZGVmaW5lIF9JRUVFX0ZMT0FUUwotIAotIG1hY3JvX2NoYXJfZnVuYyBy ZWFkdGFibGVbMjU2XTsKLSBzZXNfd3JpdGVfZnVuYyB3cml0ZXRhYmxlWzI1Nl07Ci0tLSAKLTIu MjQuMAotCmRpZmYgLS1naXQgYS9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvZml4LWdyYXBocWwu cGF0Y2ggYi9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvZml4LWdyYXBocWwucGF0Y2gKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi5mMDRiM2U0NWM0N2EKLS0tIC9kZXYv bnVsbAorKysgYi9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvZml4LWdyYXBocWwucGF0Y2gKQEAg LTAsMCArMSwxMSBAQAorLS0tIGEvYmluc3JjL2dyYXBocWwvZ3JhcGhxbF9wbHVnaW4uYwkyMDIz LTAyLTAxIDIxOjE0OjE4LjE0ODQ3ODUwMCArMDEwMAorKysrIGIvYmluc3JjL2dyYXBocWwvZ3Jh cGhxbF9wbHVnaW4uYwkyMDIyLTEwLTE5IDE0OjQ0OjE0LjAwMDAwMDAwMCArMDIwMAorQEAgLTE3 Myw3ICsxNzMsNyBAQAorIAorIHN0YXRpYyB1bml0X3ZlcnNpb25fdCBwbHVnaW5fZ3JhcGhxbF92 ZXJzaW9uID0geworICAgIkdyYXBoUUwvU1BBUlFMIEJyaWRnZSIsCS8qITwgVGl0bGUgb2YgdW5p dCwgZmlsbGVkIGJ5IHVuaXQgKi8KKy0gIEdRTF9CUklER0VfVkVSICIgKCIgR0lUX0hFQURfU1RS ICIpIiwJLyohPCBWZXJzaW9uIG51bWJlciwgZmlsbGVkIGJ5IHVuaXQgKi8KKysgIEdRTF9CUklE R0VfVkVSLAkJLyohPCBWZXJzaW9uIG51bWJlciwgZmlsbGVkIGJ5IHVuaXQgKi8KKyAgICJPcGVu TGluayBTb2Z0d2FyZSIsCQkvKiE8IFBsdWdpbidzIGRldmVsb3BlciwgZmlsbGVkIGJ5IHVuaXQg Ki8KKyAgICJTdXBwb3J0IGZ1bmN0aW9ucyBmb3IgR3JhcGhRTC9TUEFSUUwgQnJpZGdlIiwJLyoh PCBBbnkgYWRkaXRpb25hbCBpbmZvLCBmaWxsZWQgYnkgdW5pdCAqLworICAgMCwJCQkJLyohPCBF cnJvciBtZXNzYWdlLCBmaWxsZWQgYnkgdW5pdCBsb2FkZXIgKi8KZGlmZiAtLWdpdCBhL3NyY3Br Z3MvdmlydHVvc28vcGF0Y2hlcy9maXgtdXRmOC1iaXR0ZXN0LnBhdGNoIGIvc3JjcGtncy92aXJ0 dW9zby9wYXRjaGVzL2ZpeC11dGY4LWJpdHRlc3QucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDg1ZTg0YTY3ZWYzYy4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvdmlydHVv c28vcGF0Y2hlcy9maXgtdXRmOC1iaXR0ZXN0LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTUg KzAsMCBAQAotU291cmNlOiBAcHVsbG1vbGwKLVVwc3RyZWFtOiBubwotUmVhc29uOiBleHByZXNz aW9uIHJlcXVpcmVzIGJpbmFyeSBBTkQsIG5vdCBsb2dpY2FsCi0KLS0tLSBhL2xpYnNyYy91dGls L3BjcmVsaWIvcGNyZV9zdHVkeS5jCTIwMTgtMDgtMTYgMDE6MDY6MjEuMDAwMDAwMDAwICswMjAw Ci0rKysgYi9saWJzcmMvdXRpbC9wY3JlbGliL3BjcmVfc3R1ZHkuYwkyMDIwLTAxLTI3IDE1OjQ0 OjU3LjcxNTgyMTM1NSArMDEwMAotQEAgLTQzMiw3ICs0MzIsNyBAQAotICAgICAgICAgICBmb3Ig KGMgPSAwOyBjIDwgMTY7IGMrKykgc3RhcnRfYml0c1tjXSB8PSB0Y29kZVtjXTsKLSAgICAgICAg ICAgZm9yIChjID0gMTI4OyBjIDwgMjU2OyBjKyspCi0gICAgICAgICAgICAgewotLSAgICAgICAg ICAgIGlmICgodGNvZGVbYy84XSAmJiAoMSA8PCAoYyY3KSkpICE9IDApCi0rICAgICAgICAgICAg aWYgKCh0Y29kZVtjLzhdICYgKDEgPDwgKGMmNykpKSAhPSAwKQotICAgICAgICAgICAgICAgewot ICAgICAgICAgICAgICAgaW50IGQgPSAoYyA+PiA2KSB8IDB4YzA7ICAgICAgICAgICAgLyogU2V0 IGJpdCBmb3IgdGhpcyBzdGFydGVyICovCi0gICAgICAgICAgICAgICBzdGFydF9iaXRzW2QvOF0g fD0gKDEgPDwgKGQmNykpOyAgICAvKiBhbmQgdGhlbiBza2lwIG9uIHRvIHRoZSAqLwpkaWZmIC0t Z2l0IGEvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL211c2wtcGFnZV9zaXplLnBhdGNoIGIvc3Jj cGtncy92aXJ0dW9zby9wYXRjaGVzL211c2wtcGFnZV9zaXplLnBhdGNoCmRlbGV0ZWQgZmlsZSBt b2RlIDEwMDY0NAppbmRleCA3M2E5YWJkZDBmMzkuLjAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dz L3ZpcnR1b3NvL3BhdGNoZXMvbXVzbC1wYWdlX3NpemUucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAt MSwzNCArMCwwIEBACi1Gcm9tIDEyNTY2OTgyMWQ5NWZmOTg5YmY5NDE2MWI4ZTI0OTdiZmNhOWQw YWIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBxNjYgPGRhbmllbEBvY3RhZm9yZ2Uu b3JnPgotRGF0ZTogV2VkLCAyOSBKYW4gMjAyMCAxMjo1NDoxNCArMDEwMAotU3ViamVjdDogW1BB VENIIDIvMl0gVXNlIG1vcmUgcG9ydGFibGUgcGFnZSBzaXplIGNoZWNrCi0KLVRoaXMgZml4ZXMg bXVzbCBidWlsZHMuCi0tLS0KLSBsaWJzcmMvRGsvdGxzZi5oIHwgMyArKy0KLSAxIGZpbGUgY2hh bmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCi0KLWRpZmYgLS1naXQgbGlic3Jj L0RrL3Rsc2YuaCBsaWJzcmMvRGsvdGxzZi5oCi1pbmRleCBkZGNlNDc4Li5hOTY4N2Y0IDEwMDY0 NAotLS0tIGEvbGlic3JjL0RrL3Rsc2YuaAotKysrIGIvbGlic3JjL0RrL3Rsc2YuaAotQEAgLTIw LDYgKzIwLDcgQEAKLSAjZGVmaW5lIF9UTFNGX0hfCi0gCi0gI2luY2x1ZGUgPHN5cy90eXBlcy5o PgotKyNpbmNsdWRlIDx1bmlzdGQuaD4KLSAKLSBleHRlcm4gc2l6ZV90IGluaXRfbWVtb3J5X3Bv b2woc2l6ZV90LCB2b2lkICopOwotIGV4dGVybiBzaXplX3QgZ2V0X3VzZWRfc2l6ZSh2b2lkICop OwotQEAgLTE1OSw3ICsxNjAsNyBAQCBleHRlcm4gdm9pZCB0bHNmX2Jhc2VfZnJlZSAodm9pZCAq IGMsIHNpemVfdCBzeik7Ci0gCi0gI2RlZmluZSBERUZBVUxUX0FSRUFfU0laRSAoMTAyNCoxMCkK LSAKLS0jZGVmaW5lIFBBR0VfU0laRSAoZ2V0cGFnZXNpemUoKSkKLSsjZGVmaW5lIFBBR0VfU0la RSAoKGludClzeXNjb25mKF9TQ19QQUdFU0laRSkpCi0gCi0gI2lmbmRlZiBXSU4zMgotICNpZmRl ZiBVU0VfUFJJTlRGCi0tLSAKLTIuMjQuMAotCmRpZmYgLS1naXQgYS9zcmNwa2dzL3ZpcnR1b3Nv L3BhdGNoZXMvcmVtb3ZlLW9wZW5zc2wtdmVyc2lvbi1jaGVjay5wYXRjaCBiL3NyY3BrZ3Mvdmly dHVvc28vcGF0Y2hlcy9yZW1vdmUtb3BlbnNzbC12ZXJzaW9uLWNoZWNrLnBhdGNoCmRlbGV0ZWQg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzMDk0ZmJiNmFiNjQuLjAwMDAwMDAwMDAwMAotLS0gYS9z cmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvcmVtb3ZlLW9wZW5zc2wtdmVyc2lvbi1jaGVjay5wYXRj aAorKysgL2Rldi9udWxsCkBAIC0xLDQ4ICswLDAgQEAKLVNvdXJjZTogQHB1bGxtb2xsCi1VcHN0 cmVhbTogbm8KLVJlYXNvbjogRW5hYmxlIHN1YmRpci1vYmplY3RzIGFuZCBzdHJpcCBvcGVuc3Ns IHZlcnNpb24gY2hlY2sgd2hpY2ggZmFpbHMgZm9yIGxpYnJlc3NsCi0KLS0tLSBhL2NvbmZpZ3Vy ZS5hYwkyMDE4LTA4LTE2IDAxOjA2OjIxLjAwMDAwMDAwMCArMDIwMAotKysrIGIvY29uZmlndXJl LmFjCTIwMjAtMDEtMjcgMTU6MDI6MzYuOTQ2OTIyNjYzICswMTAwCi1AQCAtNTgsNyArNTgsNyBA QAotIGRubAlBTV9JTklUX0FVVE9NQUtFKFsxLjhdKQotIGRubAlBTV9JTklUX0FVVE9NQUtFKFsx LjkgdGFyLXVzdGFyXSkKLSBkbmwKLS1BTV9JTklUX0FVVE9NQUtFKFsxLjkgdGFyLXVzdGFyXSkK LStBTV9JTklUX0FVVE9NQUtFKFsxLjkgdGFyLXVzdGFyIHN1YmRpci1vYmplY3RzXSkKLSAKLSBB TV9NQUlOVEFJTkVSX01PREUKLSAKLUBAIC04NjcsMzIgKzg2Nyw2IEBACi0gCTs7Ci0gZXNhYwot IAotLUFDX01TR19DSEVDS0lORyhbT3BlblNTTCB2ZXJzaW9uXSkKLS1BQ19UUllfQ09NUElMRShb Ci0tI2luY2x1ZGUgPG9wZW5zc2wvb3BlbnNzbHYuaD4KLS1dLCBbCi0tI2lmIE9QRU5TU0xfVkVS U0lPTl9OVU1CRVIgPCAweDAwOTA4MDFmTAotLSNlcnJvciBPcGVuU1NMIHZlcnNpb24gdG9vIG9s ZCAKLS0jZW5kaWYKLS0gICAgXSxbCi0tICAgICAgQUNfTVNHX1JFU1VMVChbPj0gMC45LjhlXSkK LS0gICAgXSxbCi0tICAgICAgQUNfTVNHX0VSUk9SKFtPcGVuU1NMIHZlcnNpb24gMC45LjhlIG9y IGdyZWF0ZXIgaXMgcmVxdWlyZWQuXSkKLS0gICAgXSkKLS0KLS1BQ19NU0dfQ0hFQ0tJTkcoW09w ZW5TU0wgdmVyc2lvbl0pCi0tQUNfVFJZX0NPTVBJTEUoWwotLSNpbmNsdWRlIDxvcGVuc3NsL29w ZW5zc2x2Lmg+Ci0tXSxbCi0tI2lmIE9QRU5TU0xfVkVSU0lPTl9OVU1CRVIgPj0gMHgxMDEwMDAw ZkwKLS0jZXJyb3IgT3BlblNTTCB2ZXJzaW9uIHRvbyBuZXcKLS0jZW5kaWYKLS0gICAgXSxbCi0t ICAgICAgQUNfTVNHX1JFU1VMVChbPCAxLjEuMF0pCi0tICAgIF0sWwotLSAgICAgIEFDX01TR19F UlJPUihbT3BlblNTTCB2ZXJzaW9uIDEuMS4wIG9yIGdyZWF0ZXIgaXMgY3VycmVudGx5IG5vdCBz dXBwb3J0ZWQuXSkKLS0gICAgXSkKLS0KLSBBQ19NU0dfQ0hFQ0tJTkcoW3VzYWJpbGl0eSBvZiB0 aGUgT3BlblNTTCBoZWFkZXIgZmlsZXMgYW5kIGxpYnJhcnkgaW4gJHtvcGVuc3NsX2Rpcn1dKQot IEFDX1RSWV9SVU4oWwotICNpbmNsdWRlIDxvcGVuc3NsL3JzYS5oPgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy92aXJ0dW9zby9wYXRjaGVzL3NzbC1jb25uZWN0LXN0YXRlLnBhdGNoIGIvc3JjcGtncy92 aXJ0dW9zby9wYXRjaGVzL3NzbC1jb25uZWN0LXN0YXRlLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAzOTU2NmUzYjZkZmQuLjAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3Zp cnR1b3NvL3BhdGNoZXMvc3NsLWNvbm5lY3Qtc3RhdGUucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAt MSwxNSArMCwwIEBACi1Tb3VyY2U6IEBwdWxsbW9sbAotVXBzdHJlYW06IG5vCi1SZWFzb246IFVz ZSB0aGUgcHJvcGVyIGludGVyZmFjZSBvZiBsaWJyZXNzbCB3aGljaCBkb2VzIG5vdCBleHBvc2Ug dGhlIGludGVybmFsIHN0cnVjdHVyZSBvZiBTU0wKLQotLS0tIGEvbGlic3JjL1dpL2h0dHAuYwky MDE4LTA4LTE2IDAxOjA2OjIxLjAwMDAwMDAwMCArMDIwMAotKysrIGIvbGlic3JjL1dpL2h0dHAu YwkyMDIwLTAxLTI3IDE1OjA5OjUzLjI4NDkwNTI2NSArMDEwMAotQEAgLTk5NDksNyArOTk0OSw3 IEBACi0gCSAgY2xpX3NzbF9nZXRfZXJyb3Jfc3RyaW5nIChlcnJfYnVmLCBzaXplb2YgKGVycl9i dWYpKTsKLSAJICBzcWxyX25ld19lcnJvciAoIjQyMDAwIiwgIi4uMDAyIiwgIlNTTF9kb19oYW5k c2hha2UgZmFpbGVkICVzIiwgZXJyX2J1Zik7Ci0gCX0KLS0gICAgICBzc2wtPnN0YXRlID0gU1NM X1NUX0FDQ0VQVDsKLSsgICAgICBTU0xfc2V0X2FjY2VwdF9zdGF0ZSAoc3NsKTsKLSAgICAgICB3 aGlsZSAoU1NMX3JlbmVnb3RpYXRlX3BlbmRpbmcgKHNzbCkgJiYgY3RyIDwgMTAwMCkKLSAJewot IAkgIHRpbWVvdXRfdCB0byA9IHsgMCwgMTAwMCB9OwpkaWZmIC0tZ2l0IGEvc3JjcGtncy92aXJ0 dW9zby9wYXRjaGVzL3NzbDEuMS5wYXRjaCBiL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9zc2wx LjEucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDk4ODc0OTk0NjQ4MC4uMDAw MDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9zc2wxLjEucGF0Y2gKKysr IC9kZXYvbnVsbApAQCAtMSwxNDAwICswLDAgQEAKLURlc2NyaXB0aW9uOiBGaXggRlRCRlMgd2l0 aCBvcGVuc3NsIDEuMQotQXV0aG9yOiBTZWJhc3RpYW4gQW5kcnplaiBTaWV3aW9yIDxzZWJhc3Rp YW5AYnJlYWtwb2ludC5jYz4KLUJ1Zy1EZWJpYW46IGh0dHBzOi8vYnVncy5kZWJpYW4ub3JnLzgy ODU5NAotRm9yd2FyZGVkOiBodHRwczovL2dpdGh1Yi5jb20vb3BlbmxpbmsvdmlydHVvc28tb3Bl bnNvdXJjZS9wdWxsLzU4MwotTGFzdC1VcGRhdGU6IE1vIDExLiBGZWIgMTM6NTA6MTcgQ0VUIDIw MTkgKGJ5IEFuZHJlYXMgVGlsbGUgPHRpbGxlQGRlYmlhbi5vcmc+KQotCi0tLS0KLQotRnJvbSA4 MjMwOTJjY2NiZDhlMmFiOWJmYWQ2YzNkM2RmNzkxYTdmZmE3NmZjIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQotRnJvbTogU2ViYXN0aWFuIEFuZHJ6ZWogU2lld2lvciA8c2ViYXN0aWFuQGJyZWFr cG9pbnQuY2M+Ci1EYXRlOiBNb24sIDUgU2VwIDIwMTYgMTA6NDk6NTQgKzAwMDAKLVN1YmplY3Q6 IFtQQVRDSF0gdmlydHVvc28tb3BlbnNvdXJjZTogYnVpbGQgYWdhaW5zdCBvcGVuc3NsIDEuMS4w Ci0KLVNpZ25lZC1vZmYtYnk6IFNlYmFzdGlhbiBBbmRyemVqIFNpZXdpb3IgPHNlYmFzdGlhbkBi cmVha3BvaW50LmNjPgotLS0tCi0gbGlic3JjL0RrL0RrZXJuZWwuYyAgICAgIHwgICA2ICstCi0g bGlic3JjL1dpL2JpZl9jcnlwdG8uYyAgIHwgMTIwICsrKysrKysrKystLS0tLS0tLQotIGxpYnNy Yy9XaS9odHRwLmMgICAgICAgICB8ICAgMiArLQotIGxpYnNyYy9XaS94bWxlbmMuYyAgICAgICB8 IDMxOSArKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQotIGxp YnNyYy9XaS94bWxlbmMuaCAgICAgICB8IDE5MyArKysrKysrKysrKysrKysrKysrKysrKysrKy0t Ci0gbGlic3JjL1dpL3htbGVuY19hbGdvcy5jIHwgMTMyICsrKysrKysrKysrLS0tLS0tLS0tCi0g bGlic3JjL3V0aWwvc3NsZW5naW5lLmMgIHwgICA2ICstCi0gNyBmaWxlcyBjaGFuZ2VkLCA1MjQg aW5zZXJ0aW9ucygrKSwgMjU0IGRlbGV0aW9ucygtKQotCi0tLS0gYS9saWJzcmMvV2kvYmlmX2Ny eXB0by5jCi0rKysgYi9saWJzcmMvV2kvYmlmX2NyeXB0by5jCi1AQCAtMTgxLDIxICsxODEsMjYg QEAgYm94X2htYWMgKGNhZGRyX3QgYm94LCBjYWRkcl90IGtleSwgaW50Ci0gICB1bnNpZ25lZCBj aGFyIHRlbXBbRVZQX01BWF9NRF9TSVpFXTsKLSAgIHVuc2lnbmVkIGludCBzaXplID0gMDsKLSAg IGNhZGRyX3QgcmVzID0gTlVMTDsKLS0gIEhNQUNfQ1RYIGN0eDsKLSsgIEhNQUNfQ1RYICpjdHg7 Ci0gICBjb25zdCBFVlBfTUQgKm1kID0gRVZQX3NoYTEgKCk7Ci0gCi0gICBpZiAoYWxnID09IDEp Ci0gICAgIG1kID0gRVZQX3JpcGVtZDE2MCAoKTsKLSAKLS0gIEhNQUNfSW5pdCAoJmN0eCwga2V5 LCBib3hfbGVuZ3RoIChrZXkpIC0gRFZfU1RSSU5HUCAoa2V5KSA/IDEgOiAwLCBtZCk7Ci0tICBi b3hfaG1hY18xIChib3gsICZjdHgpOwotLSAgSE1BQ19GaW5hbCAoJmN0eCwgdGVtcCwgJnNpemUp OwotKyAgY3R4ID0gSE1BQ19DVFhfbmV3KCk7Ci0rICBpZiAoIWN0eCkKLSsJICByZXR1cm4gcmVz OwotKwotKyAgSE1BQ19Jbml0X2V4IChjdHgsIGtleSwgYm94X2xlbmd0aCAoa2V5KSAtIERWX1NU UklOR1AgKGtleSkgPyAxIDogMCwgbWQsIE5VTEwpOwotKyAgYm94X2htYWNfMSAoYm94LCBjdHgp OwotKyAgSE1BQ19GaW5hbCAoY3R4LCB0ZW1wLCAmc2l6ZSk7Ci0gICBpZiAoc2l6ZSkKLSAgICAg ewotICAgICAgIHJlcyA9IGRrX2FsbG9jX2JveCAoc2l6ZSArIDEsIERWX1NIT1JUX1NUUklORyk7 Ci0gICAgICAgbWVtY3B5IChyZXMsIHRlbXAsIHNpemUpOwotICAgICAgIHJlc1tzaXplXSA9IDA7 Ci0gICAgIH0KLSsgIEhNQUNfQ1RYX2ZyZWUoY3R4KTsKLSAgIHJldHVybiByZXM7Ci0gfQotIAot QEAgLTM0NywxNCArMzUyLDEyIEBAIGFzbjFfcGFyc2VfdG9feG1sIChCSU8gKiBicCwgdW5zaWdu ZWQgY2gKLSAJICAgIHsKLSAJICAgICAgaW50IGlpOwotIAotLQkgICAgICBvcHAgPSBvcDsKLS0J ICAgICAgaWkgPSBkMmlfQVNOMV9CT09MRUFOIChOVUxMLCAoY29uc3QgdW5zaWduZWQgY2hhciAq Kikmb3BwLCBsZW4gKyBobCk7Ci0tCSAgICAgIGlmIChpaSA8IDApCi0rCSAgICAgIGlmIChsZW4g KyBobCA8IDEpCi0gCQl7Ci0gCQkgIGlmIChCSU9fd3JpdGUgKGJwLCAiQmFkIGJvb2xlYW5cbiIs IDEyKSkKLSAJCSAgICBnb3RvIGVuZDsKLSAJCX0KLS0JICAgICAgQklPX3ByaW50ZiAoYnAsICIl ZCIsIGlpKTsKLSsJICAgICAgQklPX3ByaW50ZiAoYnAsICIlZCIsIHBbMF0pOwotIAkgICAgfQot IAkgIGVsc2UgaWYgKHRhZyA9PSBWX0FTTjFfQk1QU1RSSU5HKQotIAkgICAgewotQEAgLTQxNSw3 ICs0MTgsNyBAQCBhc24xX3BhcnNlX3RvX3htbCAoQklPICogYnAsIHVuc2lnbmVkIGNoCi0gCQl9 Ci0gCSAgICAgIGlmIChvcyAhPSBOVUxMKQotIAkJewotLQkJICBNX0FTTjFfT0NURVRfU1RSSU5H X2ZyZWUgKG9zKTsKLSsJCSAgQVNOMV9TVFJJTkdfZnJlZSAob3MpOwotIAkJICBvcyA9IE5VTEw7 Ci0gCQl9Ci0gCSAgICB9Ci1AQCAtNDQ4LDcgKzQ1MSw3IEBAIGFzbjFfcGFyc2VfdG9feG1sIChC SU8gKiBicCwgdW5zaWduZWQgY2gKLSAJCSAgaWYgKEJJT193cml0ZSAoYnAsICJCQUQgSU5URUdF UiIsIDExKSA8PSAwKQotIAkJICAgIGdvdG8gZW5kOwotIAkJfQotLQkgICAgICBNX0FTTjFfSU5U RUdFUl9mcmVlIChicyk7Ci0rCSAgICAgIEFTTjFfU1RSSU5HX2ZyZWUgKGJzKTsKLSAJICAgIH0K LSAJICBlbHNlIGlmICh0YWcgPT0gVl9BU04xX0VOVU1FUkFURUQpCi0gCSAgICB7Ci1AQCAtNDc5 LDcgKzQ4Miw3IEBAIGFzbjFfcGFyc2VfdG9feG1sIChCSU8gKiBicCwgdW5zaWduZWQgY2gKLSAJ CSAgaWYgKEJJT193cml0ZSAoYnAsICJCQUQgRU5VTUVSQVRFRCIsIDExKSA8PSAwKQotIAkJICAg IGdvdG8gZW5kOwotIAkJfQotLQkgICAgICBNX0FTTjFfRU5VTUVSQVRFRF9mcmVlIChicyk7Ci0r CSAgICAgIEFTTjFfU1RSSU5HX2ZyZWUgKGJzKTsKLSAJICAgIH0KLSAJICBlbHNlIGlmIChsZW4g PiAwICYmIGR1bXApCi0gCSAgICB7Ci1AQCAtNTE1LDcgKzUxOCw3IEBAIGVuZDoKLSAgIGlmIChv ICE9IE5VTEwpCi0gICAgIEFTTjFfT0JKRUNUX2ZyZWUgKG8pOwotICAgaWYgKG9zICE9IE5VTEwp Ci0tICAgIE1fQVNOMV9PQ1RFVF9TVFJJTkdfZnJlZSAob3MpOwotKyAgICBBU04xX1NUUklOR19m cmVlIChvcyk7Ci0gICAqcHAgPSBwOwotICAgcmV0dXJuIChyZXQpOwotIH0KLUBAIC03MjMsNyAr NzI2LDcgQEAgYmlvX3RvX3N0cnNlcyAoQklPICogb3V0X2JpbykKLSAgIGludCBsZW4gPSBCSU9f Z2V0X21lbV9kYXRhIChvdXRfYmlvLCAmcHRyKTsKLSAgIGludCB0b19yZWFkID0gbGVuLCByZWFk ZWQgPSAwOwotIAotLSAgdG9fZnJlZSA9ICgoQlVGX01FTSAqKSBvdXRfYmlvLT5wdHIpLT5kYXRh OwotKyAgdG9fZnJlZSA9ICgoQlVGX01FTSAqKSBCSU9fZ2V0X2RhdGEob3V0X2JpbykpLT5kYXRh OwotICAgQklPX3NldF9mbGFncyAob3V0X2JpbywgQklPX0ZMQUdTX01FTV9SRE9OTFkpOwotICAg Q0FUQ0hfV1JJVEVfRkFJTCAoc2VzKQotICAgICB7Ci1AQCAtNzM1LDcgKzczOCw3IEBAIGJpb190 b19zdHJzZXMgKEJJTyAqIG91dF9iaW8pCi0gICAgICAgfSB3aGlsZSAodG9fcmVhZCA+IDApOwot ICAgICB9Ci0gICBFTkRfV1JJVEVfRkFJTCAoc2VzKTsKLS0gICgoQlVGX01FTSAqKSBvdXRfYmlv LT5wdHIpLT5kYXRhID0gdG9fZnJlZTsKLSsgICgoQlVGX01FTSAqKSBCSU9fZ2V0X2RhdGEob3V0 X2JpbykpLT5kYXRhID0gdG9fZnJlZTsKLSAgIEJJT19jbGVhcl9mbGFncyAob3V0X2JpbywgQklP X0ZMQUdTX01FTV9SRE9OTFkpOwotICAgcmV0dXJuIHNlczsKLSB9Ci1AQCAtNzcwLDcgKzc3Myw3 IEBAIGJpZl9zbWltZV92ZXJpZnkgKGNhZGRyX3QgKiBxc3QsIGNhZGRyX3QKLSAgIGlmIChEVl9U WVBFX09GIChtc2cpID09IERWX1NUUklOR19TRVNTSU9OKQotICAgICB7Ci0gICAgICAgaW5fYmlv ID0gc3Ryc2VzX3RvX2JpbyAoKGRrX3Nlc3Npb25fdCAqKSBtc2cpOwotLSAgICAgIHRvX2ZyZWUg PSAoKEJVRl9NRU0gKikgaW5fYmlvLT5wdHIpLT5kYXRhOwotKyAgICAgIHRvX2ZyZWUgPSAoKEJV Rl9NRU0gKikgQklPX2dldF9kYXRhKGluX2JpbykpLT5kYXRhOwotICAgICAgIEJJT19zZXRfZmxh Z3MgKGluX2JpbywgQklPX0ZMQUdTX01FTV9SRE9OTFkpOwotICAgICB9Ci0gICBlbHNlCi1AQCAt NzgwLDcgKzc4Myw3IEBAIGJpZl9zbWltZV92ZXJpZnkgKGNhZGRyX3QgKiBxc3QsIGNhZGRyX3QK LSAgICAgICBwNyA9IFNNSU1FX3JlYWRfUEtDUzcgKGluX2JpbywgJmRhdGFfYmlvKTsKLSAgICAg ICBpZiAodG9fZnJlZSkKLSAJewotLQkgICgoQlVGX01FTSAqKSBpbl9iaW8tPnB0ciktPmRhdGEg PSB0b19mcmVlOwotKwkgICgoQlVGX01FTSAqKSBCSU9fZ2V0X2RhdGEoaW5fYmlvKSktPmRhdGEg PSB0b19mcmVlOwotIAkgIEJJT19jbGVhcl9mbGFncyAoaW5fYmlvLCBCSU9fRkxBR1NfTUVNX1JE T05MWSk7Ci0gCX0KLSAgICAgICBCSU9fZnJlZSAoaW5fYmlvKTsKLUBAIC05MjQsMTYgKzkyNywy MCBAQCBiaWZfc21pbWVfc2lnbiAoY2FkZHJfdCAqIHFzdCwgY2FkZHJfdCAqCi0gICAgIH0KLSAK LSAgIGNlcnRzID0gc2tfWDUwOV9uZXdfbnVsbCAoKTsKLS0gIGlmIChzdG9yZSAmJiBzdG9yZS0+ b2JqcykKLSsKLSsgIGlmIChzdG9yZSAmJiBYNTA5X1NUT1JFX2dldDBfb2JqZWN0cyhzdG9yZSkp Ci0gICAgIHsKLS0gICAgICBmb3IgKGlueCA9IDA7IGlueCA8IHNrX1g1MDlfT0JKRUNUX251bSAo c3RvcmUtPm9ianMpOyBpbngrKykKLSsgICAgICBTVEFDS19PRihYNTA5X09CSkVDVCkgKnN0b3Jl X29ianMgPSBYNTA5X1NUT1JFX2dldDBfb2JqZWN0cyhzdG9yZSk7Ci0rCi0rICAgICAgZm9yIChp bnggPSAwOyBpbnggPCBza19YNTA5X09CSkVDVF9udW0gKHN0b3JlX29ianMpOyBpbngrKykKLSAJ ewotLQkgIFg1MDlfT0JKRUNUICpvYmogPSBza19YNTA5X09CSkVDVF92YWx1ZSAoc3RvcmUtPm9i anMsIGlueCk7Ci0tCSAgaWYgKG9iai0+dHlwZSA9PSBYNTA5X0xVX1g1MDkpCi0tCSAgICBza19Y NTA5X3B1c2ggKGNlcnRzLCBYNTA5X2R1cCAob2JqLT5kYXRhLng1MDkpKTsKLSsJICBYNTA5X09C SkVDVCAqb2JqID0gc2tfWDUwOV9PQkpFQ1RfdmFsdWUgKHN0b3JlX29ianMsIGlueCk7Ci0rCSAg aWYgKFg1MDlfT0JKRUNUX2dldF90eXBlKG9iaikgPT0gWDUwOV9MVV9YNTA5KQotKwkgICAgc2tf WDUwOV9wdXNoIChjZXJ0cywgWDUwOV9kdXAgKFg1MDlfT0JKRUNUX2dldDBfWDUwOShvYmopKSk7 Ci0gCX0KLSAKLSAgICAgfQotKwotICAgaWYgKHN0b3JlKQotICAgICBYNTA5X1NUT1JFX2ZyZWUg KHN0b3JlKTsKLSAgIGluX2JpbyA9IEJJT19uZXdfbWVtX2J1ZiAobXNnLCBib3hfbGVuZ3RoICht c2cpIC0gMSk7Ci1AQCAtMTAwNSwxNSArMTAxMiwxOSBAQCBiaWZfc21pbWVfZW5jcnlwdCAoY2Fk ZHJfdCAqIHFzdCwgY2FkZHJfCi0gICAgIHNxbHJfbmV3X2Vycm9yICgiNDIwMDAiLCAiQ1IwMDYi LCAiTm8gcmVjaXBpZW50IGNlcnRpZmljYXRlcyIpOwotIAotICAgY2VydHMgPSBza19YNTA5X25l d19udWxsICgpOwotLSAgaWYgKHN0b3JlICYmIHN0b3JlLT5vYmpzKQotKwotKyAgaWYgKHN0b3Jl ICYmIFg1MDlfU1RPUkVfZ2V0MF9vYmplY3RzKHN0b3JlKSkKLSAgICAgewotLSAgICAgIGZvciAo aW54ID0gMDsgaW54IDwgc2tfWDUwOV9PQkpFQ1RfbnVtIChzdG9yZS0+b2Jqcyk7IGlueCsrKQot KyAgICAgIFNUQUNLX09GKFg1MDlfT0JKRUNUKSAqc3RvcmVfb2JqcyA9IFg1MDlfU1RPUkVfZ2V0 MF9vYmplY3RzKHN0b3JlKTsKLSsKLSsgICAgICBmb3IgKGlueCA9IDA7IGlueCA8IHNrX1g1MDlf T0JKRUNUX251bSAoc3RvcmVfb2Jqcyk7IGlueCsrKQotIAl7Ci0tCSAgWDUwOV9PQkpFQ1QgKm9i aiA9IHNrX1g1MDlfT0JKRUNUX3ZhbHVlIChzdG9yZS0+b2JqcywgaW54KTsKLS0JICBpZiAob2Jq LT50eXBlID09IFg1MDlfTFVfWDUwOSkKLS0JICAgIHNrX1g1MDlfcHVzaCAoY2VydHMsIFg1MDlf ZHVwIChvYmotPmRhdGEueDUwOSkpOwotKwkgIFg1MDlfT0JKRUNUICpvYmogPSBza19YNTA5X09C SkVDVF92YWx1ZSAoc3RvcmVfb2JqcywgaW54KTsKLSsJICBpZiAoWDUwOV9PQkpFQ1RfZ2V0X3R5 cGUob2JqKSA9PSBYNTA5X0xVX1g1MDkpCi0rCSAgICBza19YNTA5X3B1c2ggKGNlcnRzLCBYNTA5 X2R1cCAoWDUwOV9PQkpFQ1RfZ2V0MF9YNTA5KG9iaikpKTsKLSAJfQotICAgICB9Ci0rCi0gICBp ZiAoc3RvcmUpCi0gICAgIFg1MDlfU1RPUkVfZnJlZSAoc3RvcmUpOwotICAgaW5fYmlvID0gQklP X25ld19tZW1fYnVmIChtc2csIGJveF9sZW5ndGggKG1zZykgLSAxKTsKLUBAIC0xMTgxLDcgKzEx OTIsNyBAQCB4NTA5X2NlcnRpZmljYXRlX3ZlcmlmeV9jYiAoaW50IG9rLCBYNTA5Ci0gICBjaGFy ICpvcHRzID0gKGNoYXIgKikgWDUwOV9TVE9SRV9DVFhfZ2V0X2FwcF9kYXRhIChjdHgpOwotICAg aWYgKCFvayAmJiBvcHRzKQotICAgICB7Ci0tICAgICAgc3dpdGNoIChjdHgtPmVycm9yKQotKyAg ICAgIHN3aXRjaCAoWDUwOV9TVE9SRV9DVFhfZ2V0X2Vycm9yKGN0eCkpCi0gCXsKLSAJY2FzZSBY NTA5X1ZfRVJSX0NFUlRfSEFTX0VYUElSRUQ6Ci0gCSAgaWYgKHN0cnN0ciAob3B0cywgImV4cGly ZWQiKSkKLUBAIC0xMjg3LDcgKzEyOTgsNyBAQCBiaWZfeDUwOV9jZXJ0aWZpY2F0ZV92ZXJpZnkg KGNhZGRyX3QgKiBxCi0gICBpZiAoIWkpCi0gICAgIHsKLSAgICAgICBjb25zdCBjaGFyICplcnJf c3RyOwotLSAgICAgIGVycl9zdHIgPSBYNTA5X3ZlcmlmeV9jZXJ0X2Vycm9yX3N0cmluZyAoY3Nj LT5lcnJvcik7Ci0rICAgICAgZXJyX3N0ciA9IFg1MDlfdmVyaWZ5X2NlcnRfZXJyb3Jfc3RyaW5n IChYNTA5X1NUT1JFX0NUWF9nZXRfZXJyb3IoY3NjKSk7Ci0gICAgICAgKmVycl9yZXQgPSBzcnZf bWFrZV9uZXdfZXJyb3IgKCIyMjAyMyIsICJDUjAxNSIsICJYNTA5IGVycm9yOiAlcyIsIGVycl9z dHIpOwotICAgICB9Ci0gCi1AQCAtMTMwOCwyMCArMTMxOSwxNiBAQCBlcnJfcmV0OgotICNkZWZp bmUgVklSVF9DRVJUX0VYVCAiMi4xNi44NDAuMS4xMTEzLjEiCi0gCi0gc3RhdGljIGNhZGRyX3QK LS1CTl9ib3ggKEJJR05VTSAqIHgpCi0rQk5fYm94IChjb25zdCBCSUdOVU0gKngpCi0gewotICAg c2l6ZV90IGJ1Zl9sZW4sIG47Ci0gICBjYWRkcl90IGJ1ZjsKLSAgIGJ1Zl9sZW4gPSAoc2l6ZV90 KSBCTl9udW1fYnl0ZXMgKHgpOwotLSAgaWYgKGJ1Zl9sZW4gPD0gQk5fQllURVMpCi0tICAgIGJ1 ZiA9IGJveF9udW0gKCh1bnNpZ25lZCBsb25nKSB4LT5kWzBdKTsKLS0gIGVsc2UKLS0gICAgewot LSAgICAgIGJ1ZiA9IGRrX2FsbG9jX2JveCAoYnVmX2xlbiwgRFZfQklOKTsKLS0gICAgICBuID0g Qk5fYm4yYmluICh4LCAodW5zaWduZWQgY2hhciAqKSBidWYpOwotLSAgICAgIGlmIChuICE9IGJ1 Zl9sZW4pCi0tCUdQRl9UOwotLSAgICB9Ci0rICAvKiBkaWQgbm90IGZpZ3VyZSBvdXQgd2hlcmUg YnVmIGlzIGZyZWUoKWVkICovCi0rICBidWYgPSBka19hbGxvY19ib3ggKGJ1Zl9sZW4sIERWX0JJ Tik7Ci0rICBuID0gQk5fYm4yYmluICh4LCAodW5zaWduZWQgY2hhciAqKSBidWYpOwotKyAgaWYg KG4gIT0gYnVmX2xlbikKLSsJICBHUEZfVDsKLSAgIHJldHVybiBidWY7Ci0gfQotIAotQEAgLTE0 OTgsNyArMTUwNSw3IEBAIGJpZl9nZXRfY2VydGlmaWNhdGVfaW5mbyAoY2FkZHJfdCAqIHFzdCwK LSAJaW50IGk7Ci0gCWNoYXIgdG1wWzEwMjRdOwotIAljaGFyICpleHRfb2lkID0gKGNoYXIgKikg KEJPWF9FTEVNRU5UUyAoYXJncykgPiA0ID8gYmlmX3N0cmluZ19hcmcgKHFzdCwgYXJncywgNCwg ImdldF9jZXJ0aWZpY2F0ZV9pbmZvIikgOiBWSVJUX0NFUlRfRVhUKTsKLS0JU1RBQ0tfT0YgKFg1 MDlfRVhURU5TSU9OKSAqIGV4dHMgPSBjZXJ0LT5jZXJ0X2luZm8tPmV4dGVuc2lvbnM7Ci0rCWNv bnN0IFNUQUNLX09GIChYNTA5X0VYVEVOU0lPTikgKiBleHRzID0gWDUwOV9nZXQwX2V4dGVuc2lv bnMoY2VydCk7Ci0gCWZvciAoaSA9IDA7IGkgPCBza19YNTA5X0VYVEVOU0lPTl9udW0gKGV4dHMp OyBpKyspCi0gCSAgewotIAkgICAgWDUwOV9FWFRFTlNJT04gKmV4ID0gc2tfWDUwOV9FWFRFTlNJ T05fdmFsdWUgKGV4dHMsIGkpOwotQEAgLTE1MTAsNyArMTUxNyw3IEBAIGJpZl9nZXRfY2VydGlm aWNhdGVfaW5mbyAoY2FkZHJfdCAqIHFzdCwKLSAJCWNoYXIgKmRhdGFfcHRyOwotIAkJQklPICpt ZW0gPSBCSU9fbmV3IChCSU9fc19tZW0gKCkpOwotIAkJaWYgKCFYNTA5VjNfRVhUX3ByaW50ICht ZW0sIGV4LCAwLCAwKSkKLS0JCSAgTV9BU04xX09DVEVUX1NUUklOR19wcmludCAobWVtLCBleC0+ dmFsdWUpOwotKwkJICBBU04xX1NUUklOR19wcmludCAobWVtLCBYNTA5X0VYVEVOU0lPTl9nZXRf ZGF0YShleCkpOwotIAkJbGVuID0gQklPX2dldF9tZW1fZGF0YSAobWVtLCAmZGF0YV9wdHIpOwot IAkJaWYgKGxlbiA+IDAgJiYgZGF0YV9wdHIpCi0gCQkgIHsKLUBAIC0xNTM3LDE4ICsxNTQ0LDIz IEBAIGJpZl9nZXRfY2VydGlmaWNhdGVfaW5mbyAoY2FkZHJfdCAqIHFzdCwKLSAJaWYgKGspCi0g CSAgewotICNpZmRlZiBFVlBfUEtFWV9SU0EKLS0JICAgIGlmIChrLT50eXBlID09IEVWUF9QS0VZ X1JTQSkKLSsJICAgIGlmIChFVlBfUEtFWV9pZChrKSA9PSBFVlBfUEtFWV9SU0EpCi0gCSAgICAg IHsKLS0JCVJTQSAqeCA9IGstPnBrZXkucnNhOwotLQkJcmV0ID0gbGlzdCAoMywgYm94X2R2X3No b3J0X3N0cmluZyAoIlJTQVB1YmxpY0tleSIpLCBCTl9ib3ggKHgtPmUpLCBCTl9ib3ggKHgtPm4p KTsKLSsJCWNvbnN0IEJJR05VTSAqbiwgKmU7Ci0rCi0rCQlSU0FfZ2V0MF9rZXkoRVZQX1BLRVlf Z2V0MF9SU0EoayksICZuLCAmZSwgTlVMTCk7Ci0rCi0rCQlyZXQgPSBsaXN0ICgzLCBib3hfZHZf c2hvcnRfc3RyaW5nICgiUlNBUHVibGljS2V5IiksIEJOX2JveCAoZSksIEJOX2JveCAobikpOwot IAkgICAgICB9Ci0gCSAgICBlbHNlCi0gI2VuZGlmCi0gI2lmZGVmIEVWUF9QS0VZX0RTQQotLQkg ICAgaWYgKGstPnR5cGUgPT0gRVZQX1BLRVlfRFNBKQotKwkgICAgaWYgKEVWUF9QS0VZX2lkKGsp ID09IEVWUF9QS0VZX0RTQSkKLSAJICAgICAgewotLQkJRFNBICp4ID0gay0+cGtleS5kc2E7Ci0t CQlyZXQgPSBsaXN0ICgyLCBib3hfZHZfc2hvcnRfc3RyaW5nICgiRFNBUHVibGljS2V5IiksIEJO X2JveCAoeC0+cHViX2tleSkpOwotKwkJY29uc3QgQklHTlVNICpwdWJfa2V5OwotKwotKwkJRFNB X2dldDBfa2V5KEVWUF9QS0VZX2dldDBfRFNBKGspLCAmcHViX2tleSwgTlVMTCk7Ci0rCQlyZXQg PSBsaXN0ICgyLCBib3hfZHZfc2hvcnRfc3RyaW5nICgiRFNBUHVibGljS2V5IiksIEJOX2JveCAo cHViX2tleSkpOwotIAkgICAgICB9Ci0gCSAgICBlbHNlCi0gI2VuZGlmCi1AQCAtMTU2NywxMyAr MTU3OSwxMyBAQCBiaWZfZ2V0X2NlcnRpZmljYXRlX2luZm8gKGNhZGRyX3QgKiBxc3QsCi0gCWlu dCBuLCBpLCBsZW47Ci0gCWNoYXIgKnMsICpkYXRhX3B0cjsKLSAJQklPICptZW0gPSBCSU9fbmV3 IChCSU9fc19tZW0gKCkpOwotLQlmb3IgKGkgPSAwOyBOVUxMICE9IHN1YmogJiYgaSA8IHNrX1g1 MDlfTkFNRV9FTlRSWV9udW0oc3Viai0+ZW50cmllcyk7IGkrKykKLSsJZm9yIChpID0gMDsgTlVM TCAhPSBzdWJqICYmIGkgPCBYNTA5X05BTUVfZW50cnlfY291bnQoc3Viaik7IGkrKykKLSAJICB7 Ci0tCSAgICBuZSA9IHNrX1g1MDlfTkFNRV9FTlRSWV92YWx1ZShzdWJqLT5lbnRyaWVzLGkpOwot LQkgICAgbiA9IE9CSl9vYmoybmlkIChuZS0+b2JqZWN0KTsKLSsJICAgIG5lID0gWDUwOV9OQU1F X2dldF9lbnRyeShzdWJqLCBpKTsKLSsJICAgIG4gPSBPQkpfb2JqMm5pZCAoWDUwOV9OQU1FX0VO VFJZX2dldF9vYmplY3QobmUpKTsKLSAJICAgIGlmICgobiA9PSBOSURfdW5kZWYpIHx8ICgocyA9 IChjaGFyICopIE9CSl9uaWQyc24gKG4pKSA9PSBOVUxMKSkKLSAJICAgICAgewotLQkJaTJ0X0FT TjFfT0JKRUNUIChidWZmZXIsIHNpemVvZiAoYnVmZmVyKSwgbmUtPm9iamVjdCk7Ci0rCQlpMnRf QVNOMV9PQkpFQ1QgKGJ1ZmZlciwgc2l6ZW9mIChidWZmZXIpLCBYNTA5X05BTUVfRU5UUllfZ2V0 X29iamVjdChuZSkpOwotIAkJcyA9IGJ1ZmZlcjsKLSAJICAgICAgfQotIAkgICAgaWYgKCFzdHJj bXAgKHMsIGF0dHIpKQotQEAgLTE1ODIsOSArMTU5NCwxMCBAQCBiaWZfZ2V0X2NlcnRpZmljYXRl X2luZm8gKGNhZGRyX3QgKiBxc3QsCi0gCQlicmVhazsKLSAJICAgICAgfQotIAkgIH0KLSsKLSAJ aWYgKG5lX3JldCkKLSAJICB7Ci0tCSAgICBBU04xX1NUUklOR19wcmludCAobWVtLCBuZV9yZXQt PnZhbHVlKTsKLSsJICAgIEFTTjFfU1RSSU5HX3ByaW50IChtZW0sIFg1MDlfTkFNRV9FTlRSWV9n ZXRfZGF0YShuZV9yZXQpKTsKLSAJICAgIGxlbiA9IEJJT19nZXRfbWVtX2RhdGEgKG1lbSwgJmRh dGFfcHRyKTsKLSAJICAgIGlmIChsZW4gPiAwICYmIGRhdGFfcHRyKQotIAkgICAgICB7Ci1AQCAt MTYwNSwxNyArMTYxOCwxNyBAQCBiaWZfZ2V0X2NlcnRpZmljYXRlX2luZm8gKGNhZGRyX3QgKiBx c3QsCi0gCWRrX3NldF90IHNldCA9IE5VTEw7Ci0gCWNhZGRyX3QgdmFsOwotIAlCSU8gKm1lbSA9 IEJJT19uZXcgKEJJT19zX21lbSAoKSk7Ci0tCWZvciAoaSA9IDA7IE5VTEwgIT0gc3ViaiAmJiBp IDwgc2tfWDUwOV9OQU1FX0VOVFJZX251bShzdWJqLT5lbnRyaWVzKTsgaSsrKQotKwlmb3IgKGkg PSAwOyBOVUxMICE9IHN1YmogJiYgaSA8IFg1MDlfTkFNRV9lbnRyeV9jb3VudChzdWJqKTsgaSsr KQotIAkgIHsKLSAJICAgIHZhbCA9IE5VTEw7Ci0tCSAgICBuZSA9IHNrX1g1MDlfTkFNRV9FTlRS WV92YWx1ZShzdWJqLT5lbnRyaWVzLGkpOwotLQkgICAgbiA9IE9CSl9vYmoybmlkIChuZS0+b2Jq ZWN0KTsKLSsJICAgIG5lID0gWDUwOV9OQU1FX2dldF9lbnRyeShzdWJqLCBpKTsKLSsJICAgIG4g PSBPQkpfb2JqMm5pZCAoWDUwOV9OQU1FX0VOVFJZX2dldF9vYmplY3QobmUpKTsKLSAJICAgIGlm ICgobiA9PSBOSURfdW5kZWYpIHx8ICgocyA9IChjaGFyICopIE9CSl9uaWQyc24gKG4pKSA9PSBO VUxMKSkKLSAJICAgICAgewotLQkJaTJ0X0FTTjFfT0JKRUNUIChidWZmZXIsIHNpemVvZiAoYnVm ZmVyKSwgbmUtPm9iamVjdCk7Ci0rCQlpMnRfQVNOMV9PQkpFQ1QgKGJ1ZmZlciwgc2l6ZW9mIChi dWZmZXIpLCBYNTA5X05BTUVfRU5UUllfZ2V0X29iamVjdChuZSkpOwotIAkJcyA9IGJ1ZmZlcjsK LSAJICAgICAgfQotLQkgICAgQVNOMV9TVFJJTkdfcHJpbnQgKG1lbSwgbmUtPnZhbHVlKTsKLSsJ ICAgIEFTTjFfU1RSSU5HX3ByaW50IChtZW0sIFg1MDlfTkFNRV9FTlRSWV9nZXRfZGF0YShuZSkp OwotIAkgICAgbGVuID0gQklPX2dldF9tZW1fZGF0YSAobWVtLCAmZGF0YV9wdHIpOwotIAkgICAg aWYgKGxlbiA+IDAgJiYgZGF0YV9wdHIpCi0gCSAgICAgIHsKLUBAIC0xNjI5LDE4ICsxNjQyLDIy IEBAIGJpZl9nZXRfY2VydGlmaWNhdGVfaW5mbyAoY2FkZHJfdCAqIHFzdCwKLSAJICB9Ci0gCUJJ T19mcmVlIChtZW0pOwotIAlyZXQgPSBsaXN0X3RvX2FycmF5IChka19zZXRfbnJldmVyc2UgKHNl dCkpOwotKwotIAlicmVhazsKLSAgICAgICB9Ci0gICAgIGNhc2UgMTI6Ci0gICAgICAgewotIAlj b25zdCB1bnNpZ25lZCBjaGFyICpzOwotIAlpbnQgaSwgbjsKLS0JY29uc3QgQVNOMV9TVFJJTkcg KnNpZyA9IGNlcnQtPnNpZ25hdHVyZTsKLS0JWDUwOV9BTEdPUiAqc2lnYWxnID0gY2VydC0+c2ln X2FsZzsKLSsJY29uc3QgQVNOMV9TVFJJTkcgKnNpZzsKLSsJY29uc3QgWDUwOV9BTEdPUiAqc2ln YWxnOwotKwljb25zdCBBU04xX09CSkVDVCAqc2lnX2FsZ19hbGdvcml0aG07Ci0gCWNoYXIgYnVm WzgwXTsKLSAJY2FkZHJfdCB2YWw7Ci0gCi0tICAgICAgICBpMnRfQVNOMV9PQkpFQ1QoYnVmLHNp emVvZiAoYnVmKSwgc2lnYWxnLT5hbGdvcml0aG0pOwotKwlYNTA5X2dldDBfc2lnbmF0dXJlKCZz aWcsICZzaWdhbGcsIGNlcnQpOwotKwlYNTA5X0FMR09SX2dldDAoJnNpZ19hbGdfYWxnb3JpdGht LCBOVUxMLCBOVUxMLCBzaWdhbGcpOwotKwlpMnRfQVNOMV9PQkpFQ1QoYnVmLHNpemVvZiAoYnVm KSwgc2lnX2FsZ19hbGdvcml0aG0pOwotIAotIAluID0gc2lnLT5sZW5ndGg7Ci0gCXMgPSBzaWct PmRhdGE7Ci1AQCAtMTY2MCwxMSArMTY3NywxMSBAQCBiaWZfZ2V0X2NlcnRpZmljYXRlX2luZm8g KGNhZGRyX3QgKiBxc3QsCi0gCWlmIChrKQotIAkgIHsKLSAjaWZkZWYgRVZQX1BLRVlfUlNBCi0t CSAgICBpZiAoay0+dHlwZSA9PSBFVlBfUEtFWV9SU0EpCi0rCSAgICBpZiAoRVZQX1BLRVlfaWQo aykgPT0gRVZQX1BLRVlfUlNBKQotIAkgICAgICB7Ci0gCQljaGFyICpkYXRhX3B0cjsKLSAJCWlu dCBsZW47Ci0tCQlSU0EgKnggPSBrLT5wa2V5LnJzYTsKLSsJCVJTQSAqeCA9IEVWUF9QS0VZX2dl dDBfUlNBKGspOwotIAkJYiA9IEJJT19uZXcgKEJJT19zX21lbSgpKTsKLSAJCWkyZF9SU0FfUFVC S0VZX2JpbyAoYiwgeCk7Ci0gCQlsZW4gPSBCSU9fZ2V0X21lbV9kYXRhIChiLCAmZGF0YV9wdHIp OwotLS0tIGEvbGlic3JjL1dpL3htbGVuYy5jCi0rKysgYi9saWJzcmMvV2kveG1sZW5jLmMKLUBA IC0xMjE1LDM2ICsxMjE1LDQ1IEBAIHZvaWQgeGVuY19rZXlfcmVtb3ZlICh4ZW5jX2tleV90ICog a2V5LAotIH0KLSAKLSAKLS1zdGF0aWMgdm9pZAotLWdlbnJzYV9jYihpbnQgcCwgaW50IG4sIHZv aWQgKmFyZykKLS17Ci0tI2lmZGVmIExJTlQKLS0gIHA9bjsKLS0jZW5kaWYKLS19Ci0tCi0gaW50 Ci0gX194ZW5jX2tleV9yc2FfaW5pdCAoY2hhciAqbmFtZSkKLSB7Ci0gICBSU0EgKnJzYSA9IE5V TEw7Ci0tICBpbnQgbnVtPTEwMjQ7Ci0tICB1bnNpZ25lZCBsb25nIGY0PVJTQV9GNDsKLSsgIEJJ R05VTSAqYm4gPSBOVUxMOwotICAgaW50IHI7Ci0rCi0gICB4ZW5jX2tleV90ICogcGtleSA9IHhl bmNfZ2V0X2tleV9ieV9uYW1lIChuYW1lLCAxKTsKLSAgIGlmIChOVUxMID09IHBrZXkpCi0gICAg IFNRTFJfTkVXX0tFWV9FUlJPUiAobmFtZSk7Ci0gCi0tICByc2E9UlNBX2dlbmVyYXRlX2tleShu dW0sZjQsZ2VucnNhX2NiLE5VTEwpOwotKyAgcnNhID0gUlNBX25ldygpOwotKyAgaWYgKCFyc2Ep Ci0rCSAgZ290byBvdXQ7Ci0rICBibiA9IEJOX25ldygpOwotKyAgaWYgKCFibikKLSsJICBnb3Rv IG91dDsKLSsgIGlmICghQk5fc2V0X3dvcmQoYm4sIFJTQV9GNCkpCi0rCSAgZ290byBvdXQ7Ci0r Ci0rICBpZiAoIVJTQV9nZW5lcmF0ZV9rZXlfZXgocnNhLCAxMDI0LCBibiwgTlVMTCkpCi0rCSAg Z290byBvdXQ7Ci0rCi0gICByID0gUlNBX2NoZWNrX2tleShyc2EpOwotKyAgaWYgKHIgIT0gMSkK LSsJICBnb3RvIG91dDsKLSAgIHBrZXktPmtpLnJzYS5wYWQgPSBSU0FfUEtDUzFfUEFERElORzsK LS0gIGlmIChyc2EgPT0gTlVMTCkKLS0gICAgewotLSAgICAgIHNxbHJfbmV3X2Vycm9yICgiNDIw MDAiLCAiWEVOQzA2IiwKLS0JCSAgICAiUlNBIHBhcmFtZXRlcnMgZ2VuZXJhdGlvbiBlcnJvciIp OwotLSAgICB9Ci0gICBwa2V5LT54ZWtfcnNhID0gcnNhOwotICAgcGtleS0+eGVrX3ByaXZhdGVf cnNhID0gcnNhOwotKyAgQk5fZnJlZShibik7Ci0gICByZXR1cm4gMDsKLStvdXQ6Ci0rICBpZiAo Ym4pCi0rCSAgQk5fZnJlZShibik7Ci0rICBpZiAocnNhKQotKwkgIFJTQV9mcmVlKHJzYSk7Ci0r ICBzcWxyX25ld19lcnJvciAoIjQyMDAwIiwgIlhFTkMwNiIsCi0rCQkgICJSU0EgcGFyYW1ldGVy cyBnZW5lcmF0aW9uIGVycm9yIik7Ci0rICByZXR1cm4gLTE7Ci0gfQotIAotIAotQEAgLTE0NTUs MTkgKzE0NjQsMTkgQEAgeGVuY19rZXlfdCAqIHhlbmNfa2V5X2NyZWF0ZV9mcm9tX3g1MDlfYwot IAotICAgaWYgKHBrZXkpCi0gICAgIHsKLS0gICAgICBzd2l0Y2ggKEVWUF9QS0VZX3R5cGUgKHBr ZXktPnR5cGUpKQotKyAgICAgIHN3aXRjaCAoRVZQX1BLRVlfdHlwZSAoRVZQX1BLRVlfaWQocGtl eSkpKQotIAl7Ci0gCWNhc2UgRVZQX1BLRVlfRFNBOgotIAkgIHNpZ25fYWxnb25hbWUgPSBEU0lH X0RTQV9TSEExX0FMR087Ci0gCSAgZW5jX2FsZ29uYW1lID0gWEVOQ19EU0FfQUxHTzsKLS0JICBk c2EgPSBwa2V5LT5wa2V5LmRzYTsKLS0JICBwcml2YXRlX2RzYSA9IHByaXZhdGVfa2V5ID8gcHJp dmF0ZV9rZXktPnBrZXkuZHNhIDogMDsKLSsJICBkc2EgPSBFVlBfUEtFWV9nZXQwX0RTQShwa2V5 KTsKLSsJICBwcml2YXRlX2RzYSA9IHByaXZhdGVfa2V5ID8gRVZQX1BLRVlfZ2V0MF9EU0EocHJp dmF0ZV9rZXkpIDogMDsKLSAJICBicmVhazsKLSAJY2FzZSBFVlBfUEtFWV9SU0E6Ci0gCSAgc2ln bl9hbGdvbmFtZSA9IERTSUdfUlNBX1NIQTFfQUxHTzsKLSAJICBlbmNfYWxnb25hbWUgPSBYRU5D X1JTQV9BTEdPOwotLQkgIHJzYSA9IHBrZXktPnBrZXkucnNhOwotLQkgIHByaXZhdGVfcnNhID0g cHJpdmF0ZV9rZXkgPyBwcml2YXRlX2tleS0+cGtleS5yc2EgOiAwOwotKwkgIHJzYSA9IEVWUF9Q S0VZX2dldDBfUlNBKHBrZXkpOwotKwkgIHByaXZhdGVfcnNhID0gcHJpdmF0ZV9rZXkgPyBFVlBf UEtFWV9nZXQwX1JTQShwcml2YXRlX2tleSkgOiAwOwotIAkgIGJyZWFrOwotIAlkZWZhdWx0Ogot IAkgIGdvdG8gZmluaXNoOwotQEAgLTE1MTYsMTMgKzE1MjUsNiBAQCB4ZW5jX2tleV90ICogeGVu Y19rZXlfY3JlYXRlX2Zyb21feDUwOV9jCi0gICByZXR1cm4gazsKLSB9Ci0gCi0tc3RhdGljIHZv aWQgZGhfY2IoaW50IHAsIGludCBuLCB2b2lkICphcmcpCi0tewotLSNpZmRlZiBMSU5UCi0tICBw PW47Ci0tI2VuZGlmCi0tfQotLQotIHN0YXRpYyAvKnhlbmNfa2V5X0RTQV9jcmVhdGUgKi8KLSBj YWRkcl90IGJpZl94ZW5jX2tleV9kc2FfY3JlYXRlIChjYWRkcl90ICogcXN0LCBjYWRkcl90ICog ZXJyX3IsIHN0YXRlX3Nsb3RfdCAqKiBhcmdzKQotIHsKLUBAIC0xNTg4LDE1ICsxNTkwLDIxIEBA IGNhZGRyX3QgYmlmX3hlbmNfa2V5X0RIX2NyZWF0ZSAoY2FkZHJfdAotICAgICAgIGRoID0gREhf bmV3ICgpOwotICAgICAgIGJuX3AgPSBCTl9iaW4yYm4gKCh1bnNpZ25lZCBjaGFyICopbW9kLCBw X2xlbiwgTlVMTCk7Ci0gICAgICAgYm5fZyA9IEJOX2JpbjJibiAoZ19iaW4sIDEsIE5VTEwpOwot LSAgICAgIGRoLT5wID0gYm5fcDsKLS0gICAgICBkaC0+ZyA9IGJuX2c7Ci0rICAgICAgaWYgKGRo KQotKwkgICAgICBESF9zZXQwX3BxZyhkaCwgYm5fcCwgTlVMTCwgYm5fZyk7Ci0gCi0gICAgICAg ZGtfZnJlZV9ib3ggKG1vZF9iNjQpOwotICAgICAgIGRrX2ZyZWVfYm94IChtb2QpOwotICAgICB9 Ci0gICBlbHNlCi0gICAgIHsKLS0gICAgICBkaCA9IERIX2dlbmVyYXRlX3BhcmFtZXRlcnMgKG51 bSwgZywgZGhfY2IsIE5VTEwpOwotKyAgICAgIGRoID0gREhfbmV3KCk7Ci0rICAgICAgaWYgKGRo KSB7Ci0rCSAgICAgIGlmICghREhfZ2VuZXJhdGVfcGFyYW1ldGVyc19leChkaCwgbnVtLCBnLCBO VUxMKSkgewotKwkJICAgICAgREhfZnJlZShkaCk7Ci0rCQkgICAgICBkaCA9IE5VTEw7Ci0rCSAg ICAgIH0KLSsgICAgICB9Ci0gICAgIH0KLSAgIGlmICghZGgpCi0gICAgIHsKLUBAIC0xNjI2LDcg KzE2MzQsNyBAQCBjYWRkcl90IGJpZl94ZW5jX0RIX2dldF9wYXJhbXMgKGNhZGRyX3QKLSAgIGlu dCBuLCBsZW47Ci0gICBjYWRkcl90IGJ1ZiA9IE5VTEwsIHJldCwgYjY0OwotICAgREggKmRoOwot LSAgQklHTlVNICpudW07Ci0rICBjb25zdCBCSUdOVU0gKm51bTsKLSAKLSAgIG11dGV4X2VudGVy ICh4ZW5jX2tleXNfbXR4KTsKLSAgIGtleSA9IHhlbmNfZ2V0X2tleV9ieV9uYW1lIChuYW1lLCAw KTsKLUBAIC0xNjQxLDE5ICsxNjQ5LDE5IEBAIGNhZGRyX3QgYmlmX3hlbmNfREhfZ2V0X3BhcmFt cyAoY2FkZHJfdAotICAgc3dpdGNoIChwYXJhbSkKLSAgICAgewotICAgCWNhc2UgMToKLS0JIG51 bSA9IGRoLT5wOwotKwkgREhfZ2V0MF9wcWcoZGgsICZudW0sIE5VTEwsIE5VTEwpOwotIAkgYnJl YWs7Ci0gCWNhc2UgMjoKLS0JIG51bSA9IGRoLT5nOwotKwkgREhfZ2V0MF9wcWcoZGgsIE5VTEws IE5VTEwsICZudW0pOwotIAkgYnJlYWs7Ci0gCWNhc2UgMzoKLS0JIG51bSA9IGRoLT5wdWJfa2V5 OwotKwkgREhfZ2V0MF9rZXkoZGgsICZudW0sIE5VTEwpOwotIAkgYnJlYWs7Ci0gCWNhc2UgNDoK LS0JIG51bSA9IGRoLT5wcml2X2tleTsKLSsJIERIX2dldDBfa2V5KGRoLCBOVUxMLCAmbnVtKTsK LSAJIGJyZWFrOwotIAlkZWZhdWx0OgotLQkgbnVtID0gZGgtPnB1Yl9rZXk7Ci0rCSBESF9nZXQw X2tleShkaCwgJm51bSwgTlVMTCk7Ci0gICAgIH0KLSAKLSAgIGJ1Zl9sZW4gPSAoc2l6ZV90KUJO X251bV9ieXRlcyhudW0pOwotQEAgLTE4MTEsNyArMTgxOSwxNSBAQCBjYWRkcl90IGJpZl94ZW5j X2tleV9yc2FfY3JlYXRlIChjYWRkcl90Ci0gICB4ZW5jX2tleV90ICogazsKLSAgIGNhZGRyX3Qg bmFtZSA9IGJpZl9zdHJpbmdfYXJnIChxc3QsIGFyZ3MsIDAsICJ4ZW5jX2tleV9SU0FfY3JlYXRl Iik7Ci0gICBpbnQgbnVtID0gKGludCkgYmlmX2xvbmdfYXJnIChxc3QsIGFyZ3MsIDEsICJ4ZW5j X2tleV9SU0FfY3JlYXRlIik7Ci0tICBSU0EgKnJzYSA9IE5VTEw7Ci0rICBSU0EgKnJzYTsKLSsg IEJJR05VTSAqYm47Ci0rCi0rICByc2EgPSBSU0FfbmV3KCk7Ci0rICBibiA9IEJOX25ldygpOwot KyAgaWYgKCFyc2EgfHwgIWJuKQotKwlnb3RvIG91dDsKLSsgIGlmICghQk5fc2V0X3dvcmQoYm4s IFJTQV9GNCkpCi0rCWdvdG8gb3V0OwotIAotICAgbXV0ZXhfZW50ZXIgKHhlbmNfa2V5c19tdHgp OwotICAgaWYgKE5VTEwgPT0gKGsgPSB4ZW5jX2tleV9jcmVhdGUgKG5hbWUsIFhFTkNfUlNBX0FM R08gLCBEU0lHX1JTQV9TSEExX0FMR08sIDApKSkKLUBAIC0xODIwLDEyICsxODM2LDExIEBAIGNh ZGRyX3QgYmlmX3hlbmNfa2V5X3JzYV9jcmVhdGUgKGNhZGRyX3QKLSAgICAgICBTUUxSX05FV19L RVlfRVhJU1RfRVJST1IgKG5hbWUpOwotICAgICB9Ci0gCi0tICByc2EgPSBSU0FfZ2VuZXJhdGVf a2V5IChudW0sIFJTQV9GNCwgTlVMTCwgTlVMTCk7Ci0tCi0tICBpZiAocnNhID09IE5VTEwpCi0t ICAgIHsKLS0gICAgICBzcWxyX25ld19lcnJvciAoIjQyMDAwIiwgIlhFTkMwNiIsICJSU0EgZ2Vu ZXJhdGlvbiBlcnJvciIpOwotLSAgICB9Ci0rICBpZiAoIVJTQV9nZW5lcmF0ZV9rZXlfZXggKHJz YSwgbnVtLCBibiwgTlVMTCkpIHsKLSsJICBtdXRleF9sZWF2ZSAoeGVuY19rZXlzX210eCk7Ci0r CSAgZ290byBvdXQ7Ci0rICB9Ci0rICBCTl9mcmVlKGJuKTsKLSAKLSAgIGstPnhla19yc2EgPSBS U0FQdWJsaWNLZXlfZHVwIChyc2EpOwotICAgay0+eGVrX3ByaXZhdGVfcnNhID0gcnNhOwotQEAg LTE4MzksNiArMTg1NCwxMyBAQCBjYWRkcl90IGJpZl94ZW5jX2tleV9yc2FfY3JlYXRlIChjYWRk cl90Ci0gCi0gICBtdXRleF9sZWF2ZSAoeGVuY19rZXlzX210eCk7Ci0gICByZXR1cm4gTlVMTDsK LStvdXQ6Ci0rICBpZiAoYm4pCi0rCSAgQk5fZnJlZShibik7Ci0rICBpZiAocnNhKQotKwkgIFJT QV9mcmVlKHJzYSk7Ci0rICBzcWxyX25ld19lcnJvciAoIjQyMDAwIiwgIlhFTkMwNiIsICJSU0Eg Z2VuZXJhdGlvbiBlcnJvciIpOwotKyAgcmV0dXJuIE5VTEw7Ci0gfQotIAotIHhlbmNfa2V5X3Qg KgotQEAgLTIwMzQsNyArMjA1NiwxMyBAQCBpbnQgX194ZW5jX2tleV9kc2FfaW5pdCAoY2hhciAq bmFtZSwgaW50Ci0gICAgIFNRTFJfTkVXX0tFWV9FUlJPUiAobmFtZSk7Ci0gCi0gICBSQU5EX3Bv bGwgKCk7Ci0tICBkc2EgPSBEU0FfZ2VuZXJhdGVfcGFyYW1ldGVycyhudW0sIE5VTEwsIDAsIE5V TEwsIE5VTEwsIGRoX2NiLCBOVUxMKTsKLSsgIGRzYSA9IERTQV9uZXcoKTsKLSsgIGlmIChkc2Ep IHsKLSsJICBpZiAoIURTQV9nZW5lcmF0ZV9wYXJhbWV0ZXJzX2V4KGRzYSwgbnVtLCBOVUxMLCAw LCBOVUxMLCBOVUxMLCBOVUxMKSkgewotKwkJICBEU0FfZnJlZShkc2EpOwotKwkJICBkc2EgPSBO VUxMOwotKwkgIH0KLSsgIH0KLSAgIGlmIChkc2EgPT0gTlVMTCkKLSAgICAgewotICAgICAgIHNx bHJfbmV3X2Vycm9yICgiNDIwMDAiLCAiWEVOQzExIiwKLUBAIC0yMDU4LDcgKzIwODYsMTMgQEAg aW50IF9feGVuY19rZXlfZGhfaW5pdCAoY2hhciAqbmFtZSwgaW50Ci0gICBpZiAoTlVMTCA9PSBw a2V5KQotICAgICBTUUxSX05FV19LRVlfRVJST1IgKG5hbWUpOwotIAotLSAgZGggPSBESF9nZW5l cmF0ZV9wYXJhbWV0ZXJzIChudW0sIGcsIGRoX2NiLCBOVUxMKTsKLSsgIGRoID0gREhfbmV3KCk7 Ci0rICBpZiAoZGgpIHsKLSsJICBpZiAoIURIX2dlbmVyYXRlX3BhcmFtZXRlcnNfZXgoZGgsIG51 bSwgZywgTlVMTCkpIHsKLSsJCSAgREhfZnJlZShkaCk7Ci0rCQkgIGRoID0gTlVMTDsKLSsJICB9 Ci0rICB9Ci0gICBpZiAoIWRoKQotICAgICB7Ci0gICAgICAgc3Fscl9uZXdfZXJyb3IgKCI0MjAw MCIsICJYRU5DMTEiLAotQEAgLTIyODAsMTIgKzIzMTQsMTIgQEAgYmlmX3hlbmNfa2V5X3JzYV9y ZWFkIChjYWRkcl90ICogcXN0LCBjYQotICAgICB7Ci0gICAgICAgaW4gPSBCSU9fbmV3X21lbV9i dWYgKGtleV9iYXNlNjQsIGxlbik7Ci0gICAgICAgcGtleSA9IGQyaV9QVUJLRVlfYmlvIChpbiwg TlVMTCk7Ci0tICAgICAgaWYgKHBrZXkgJiYgcGtleS0+dHlwZSA9PSBFVlBfUEtFWV9SU0EpCi0t CXAgPSBwa2V5LT5wa2V5LnJzYTsKLSsgICAgICBpZiAocGtleSAmJiBFVlBfUEtFWV9pZChwa2V5 KSA9PSBFVlBfUEtFWV9SU0EpCi0rCXAgPSBFVlBfUEtFWV9nZXQwX1JTQShwa2V5KTsKLSAgICAg ICBCSU9fcmVzZXQgKGluKTsKLSAgICAgICBwa2tleSA9IGQyaV9Qcml2YXRlS2V5X2JpbyAoaW4s IE5VTEwpOwotLSAgICAgIGlmIChwa2tleSAmJiBwa2tleS0+dHlwZSA9PSBFVlBfUEtFWV9SU0Ep Ci0tCXIgPSBwa2tleS0+cGtleS5yc2E7Ci0rICAgICAgaWYgKHBra2V5ICYmIEVWUF9QS0VZX2lk KHBra2V5KSA9PSBFVlBfUEtFWV9SU0EpCi0rCXIgPSBFVlBfUEtFWV9nZXQwX1JTQShwa2tleSk7 Ci0gICAgICAgQklPX2ZyZWUgKGluKTsKLSAgICAgfQotICAgZWxzZQotQEAgLTIzMDQsOSArMjMz OCwxMSBAQCBiaWZfeGVuY19rZXlfcnNhX3JlYWQgKGNhZGRyX3QgKiBxc3QsIGNhCi0gCi0gICBp ZiAoIXApCi0gICAgIHsKLSsgICAgICBjb25zdCBCSUdOVU0gKm4sICplOwotKwotKyAgICAgIFJT QV9nZXQwX2tleShyLCAmbiwgJmUsIE5VTEwpOwotICAgICAgIHAgPSBSU0FfbmV3ICgpOwotLSAg ICAgIHAtPm4gPSBCTl9kdXAgKHItPm4pOwotLSAgICAgIHAtPmUgPSBCTl9kdXAgKHItPmUpOwot KyAgICAgIFJTQV9zZXQwX2tleShwLCBCTl9kdXAobiksIEJOX2R1cChlKSwgTlVMTCk7Ci0gICAg IH0KLSAKLSAgIG11dGV4X2VudGVyICh4ZW5jX2tleXNfbXR4KTsKLUBAIC0yMzU1LDE0ICsyMzkx LDEzIEBAIGJpZl94ZW5jX2tleV9yc2FfY29uc3RydWN0IChjYWRkcl90ICogcXMKLSAgIHAgPSBS U0FfbmV3ICgpOwotICAgbiA9IEJOX2JpbjJibiAoKHVuc2lnbmVkIGNoYXIgKikgbW9kLCBib3hf bGVuZ3RoIChtb2QpIC0gMSwgTlVMTCk7Ci0gICBlID0gQk5fYmluMmJuICgodW5zaWduZWQgY2hh ciAqKSBleHAsIGJveF9sZW5ndGggKGV4cCkgLSAxLCBOVUxMKTsKLS0gIHAtPm4gPSBuOwotLSAg cC0+ZSA9IGU7Ci0rICBSU0Ffc2V0MF9rZXkocCwgbiwgZSwgTlVMTCk7Ci0gICBpZiAocGV4cCkK LSAgICAgewotICAgICAgIHBrID0gUlNBX25ldyAoKTsKLS0gICAgICBway0+ZCA9IEJOX2JpbjJi biAoKHVuc2lnbmVkIGNoYXIgKikgcGV4cCwgYm94X2xlbmd0aCAocGV4cCkgLSAxLCBOVUxMKTsK LS0gICAgICBway0+biA9IEJOX2R1cCAobik7Ci0tICAgICAgcGstPmUgPSBCTl9kdXAgKGUpOwot KyAgICAgIFJTQV9zZXQwX2tleShwLCBCTl9kdXAobiksCi0rCQkgICAgICBCTl9kdXAoZSksCi0r CQkgICAgICBCTl9iaW4yYm4gKCh1bnNpZ25lZCBjaGFyICopIHBleHAsIGJveF9sZW5ndGggKHBl eHApIC0gMSwgTlVMTCkpOwotICAgICB9Ci0gICBtdXRleF9lbnRlciAoeGVuY19rZXlzX210eCk7 Ci0gICBrID0geGVuY19rZXlfY3JlYXRlIChuYW1lLCBYRU5DX1JTQV9BTEdPLCBEU0lHX1JTQV9T SEExX0FMR08sIDApOwotQEAgLTQwODYsNyArNDEyMSw3IEBAIHZvaWQgeGVuY190YWdfZnJlZSAo eGVuY190YWdfdCAqIHQpCi0gI2VuZGlmCi0gfQotIAotLXhlbmNfdGFnX3QgKiB4ZW5jX3RhZ19h ZGRfY2hpbGRfQk4gKHhlbmNfdGFnX3QgKiB0YWcsIEJJR05VTSAqIGJuKQotK3N0YXRpYyB4ZW5j X3RhZ190ICogeGVuY190YWdfYWRkX2NoaWxkX0JOICh4ZW5jX3RhZ190ICogdGFnLCBjb25zdCBC SUdOVU0gKiBibikKLSB7Ci0gIGNoYXIgKiBidWZmZXIgPSBka19hbGxvY19ib3ggKEJOX251bV9i eXRlcyAoYm4pLCBEVl9CSU4pOwotICBjaGFyICogYnVmZmVyX2Jhc2U2NCA9IGRrX2FsbG9jX2Jv eCAoYm94X2xlbmd0aCAoYnVmZmVyKSAqIDIsIERWX1NUUklORyk7Ci1AQCAtNDExMSwxMiArNDE0 NiwxNSBAQCBjYWRkcl90ICoqIHhlbmNfZ2VuZXJhdGVfZXh0X2luZm8gKHhlbmNfCi0gICBjYWRk cl90ICoqIGFycmF5OwotICAgaWYgKGtleS0+eGVrX3R5cGUgPT0gRFNJR19LRVlfUlNBKQotICAg ICB7Ci0rICAgICAgY29uc3QgQklHTlVNICpyc2FfbiwgKnJzYV9lOwotKwotKyAgICAgIFJTQV9n ZXQwX2tleShrZXktPmtpLnJzYS5yc2Ffc3QsICZyc2FfbiwgJnJzYV9lLCBOVUxMKTsKLSAgICAg ICB4ZW5jX3RhZ190ICogcnNha2V5dmFsID0geGVuY190YWdfY3JlYXRlIChEU0lHX1VSSSwgIjpS U0FLZXlWYWx1ZSIpOwotICAgICAgIHhlbmNfdGFnX3QgKiByc2Ftb2R1bHVzID0geGVuY190YWdf Y3JlYXRlIChEU0lHX1VSSSwgIjpNb2R1bHVzIik7Ci0gICAgICAgeGVuY190YWdfdCAqIHJzYWV4 cG9uZW50ID0geGVuY190YWdfY3JlYXRlIChEU0lHX1VSSSwgIjpFeHBvbmVudCIpOwotIAotLSAg ICAgIHhlbmNfdGFnX2FkZF9jaGlsZF9CTiAocnNhbW9kdWx1cywga2V5LT5raS5yc2EucnNhX3N0 LT5uKTsKLS0gICAgICB4ZW5jX3RhZ19hZGRfY2hpbGRfQk4gKHJzYWV4cG9uZW50LCBrZXktPmtp LnJzYS5yc2Ffc3QtPmUpOwotKyAgICAgIHhlbmNfdGFnX2FkZF9jaGlsZF9CTiAocnNhbW9kdWx1 cywgcnNhX24pOwotKyAgICAgIHhlbmNfdGFnX2FkZF9jaGlsZF9CTiAocnNhZXhwb25lbnQsIHJz YV9lKTsKLSAKLSAgICAgICB4ZW5jX3RhZ19hZGRfY2hpbGQgKHJzYWtleXZhbCwgeGVuY190YWdf ZmluYWxpemUgKHJzYW1vZHVsdXMpKTsKLSAgICAgICB4ZW5jX3RhZ19hZGRfY2hpbGQgKHJzYWtl eXZhbCwgeGVuY190YWdfZmluYWxpemUgKHJzYWV4cG9uZW50KSk7Ci1AQCAtNDEzNSwxMiArNDE3 MywxNSBAQCBjYWRkcl90ICoqIHhlbmNfZ2VuZXJhdGVfZXh0X2luZm8gKHhlbmNfCi0gICAgICAg eGVuY190YWdfdCAqIGcgPSB4ZW5jX3RhZ19jcmVhdGUgKERTSUdfVVJJLCAiOkciKTsKLSAgICAg ICB4ZW5jX3RhZ190ICogeSA9IHhlbmNfdGFnX2NyZWF0ZSAoRFNJR19VUkksICI6WSIpOwotICAg ICAgIERTQSAqIGRzYSA9IGtleS0+a2kuZHNhLmRzYV9zdDsKLSsgICAgICBjb25zdCBCSUdOVU0g KmRzYV9wLCAqZHNhX3EsICpkc2FfZywgKmRzYV9wdWJfa2V5OwotIAotKyAgICAgIERTQV9nZXQw X3BxZyhkc2EsICZkc2FfcCwgJmRzYV9xLCAmZHNhX2cpOwotKyAgICAgIERTQV9nZXQwX2tleShk c2EsICZkc2FfcHViX2tleSwgTlVMTCk7Ci0gCi0tICAgICAgeGVuY190YWdfYWRkX2NoaWxkX0JO IChwLCBkc2EtPnApOwotLSAgICAgIHhlbmNfdGFnX2FkZF9jaGlsZF9CTiAocCwgZHNhLT5xKTsK LS0gICAgICB4ZW5jX3RhZ19hZGRfY2hpbGRfQk4gKHAsIGRzYS0+Zyk7Ci0tICAgICAgeGVuY190 YWdfYWRkX2NoaWxkX0JOIChwLCBkc2EtPnB1Yl9rZXkpOwotKyAgICAgIHhlbmNfdGFnX2FkZF9j aGlsZF9CTiAocCwgZHNhX3ApOwotKyAgICAgIHhlbmNfdGFnX2FkZF9jaGlsZF9CTiAocCwgZHNh X3EpOwotKyAgICAgIHhlbmNfdGFnX2FkZF9jaGlsZF9CTiAocCwgZHNhX2cpOwotKyAgICAgIHhl bmNfdGFnX2FkZF9jaGlsZF9CTiAocCwgZHNhX3B1Yl9rZXkpOwotIAotICAgICAgIHhlbmNfdGFn X2FkZF9jaGlsZCAoZHNha2V5dmFsLCB4ZW5jX3RhZ19maW5hbGl6ZSAocCkpOwotICAgICAgIHhl bmNfdGFnX2FkZF9jaGlsZCAoZHNha2V5dmFsLCB4ZW5jX3RhZ19maW5hbGl6ZSAocSkpOwotQEAg LTYxODcsNyArNjIyOCw3IEBAIGNhZGRyX3QgeGVuY194NTA5X2dldF9rZXlfaWRlbnRpZmllciAo WDUKLSAKLSAgIHJldCA9IGRrX2FsbG9jX2JveCAoaWtleWlkLT5sZW5ndGgsIERWX0JJTik7Ci0g ICBtZW1jcHkgKHJldCwgaWtleWlkLT5kYXRhLCBpa2V5aWQtPmxlbmd0aCk7Ci0tICBNX0FTTjFf T0NURVRfU1RSSU5HX2ZyZWUoaWtleWlkKTsKLSsgIEFTTjFfU1RSSU5HX2ZyZWUoaWtleWlkKTsK LSAgIHJldHVybiByZXQ7Ci0gfQotIAotQEAgLTYyNDcsNyArNjI4OCw3IEBAIGJpZl94NTA5X2dl dF9zdWJqZWN0IChjYWRkcl90ICogcXN0LCBjYWQKLSAKLSAgIHJldCA9IGRrX2FsbG9jX2JveCAo aWtleWlkLT5sZW5ndGgsIERWX0JJTik7Ci0gICBtZW1jcHkgKHJldCwgaWtleWlkLT5kYXRhLCBp a2V5aWQtPmxlbmd0aCk7Ci0tICBNX0FTTjFfT0NURVRfU1RSSU5HX2ZyZWUoaWtleWlkKTsKLSsg IEFTTjFfU1RSSU5HX2ZyZWUoaWtleWlkKTsKLSAgIHJldHVybiByZXQ7Ci0gfQotIAotQEAgLTY4 MDYsNyArNjg0Nyw3IEBAIGJpZl94ZW5jX3g1MDlfY3NyX2dlbmVyYXRlIChjYWRkcl90ICogcXMK LSAJc2tfWDUwOV9FWFRFTlNJT05fcHVzaChzdF9leHRzLCBleCk7Ci0gICAgIH0KLSAgIFg1MDlf UkVRX2FkZF9leHRlbnNpb25zKHgsIHN0X2V4dHMpOwotLSAgaWYgKCFYNTA5X1JFUV9zaWduICh4 LCBwaywgKHBrLT50eXBlID09IEVWUF9QS0VZX1JTQSA/IEVWUF9tZDUoKSA6IEVWUF9kc3MxKCkp KSkKLSsgIGlmICghWDUwOV9SRVFfc2lnbiAoeCwgcGssIChFVlBfUEtFWV9pZChwaykgPT0gRVZQ X1BLRVlfUlNBID8gRVZQX21kNSgpIDogRVZQX3NoYTEoKSkpKQotICAgICB7Ci0gICAgICAgcGsg PSBOVUxMOyAvKiBrZWVwIG9uZSBpbiB0aGUgeGVuY19rZXkgKi8KLSAgICAgICAqZXJyX3JldCA9 IHNydl9tYWtlX25ld19lcnJvciAoIjQyMDAwIiwgIlhFQ1hYIiwgIkNhbiBub3Qgc2lnbiBjZXJ0 aWZpY2F0ZSA6ICVzIiwgZ2V0X3NzbF9lcnJvcl90ZXh0IChidWYsIHNpemVvZiAoYnVmKSkpOwot QEAgLTY5NDUsMTcgKzY5ODYsMTcgQEAgYmlmX3hlbmNfeDUwOV9mcm9tX2NzciAoY2FkZHJfdCAq IHFzdCwgYwotICAgICAgICplcnJfcmV0ID0gc3J2X21ha2VfbmV3X2Vycm9yICgiNDIwMDAiLCAi WEVDWFgiLCAiQ2FuIG5vdCBzaWduIGNlcnRpZmljYXRlIik7Ci0gICAgICAgZ290byBlcnI7Ci0g ICAgIH0KLS0gIHN3aXRjaCAoRVZQX1BLRVlfdHlwZSAoY2xpX3BrLT50eXBlKSkKLSsgIHN3aXRj aCAoRVZQX1BLRVlfdHlwZSAoRVZQX1BLRVlfaWQoY2xpX3BrKSkpCi0gICAgIHsKLSAgICAgICBj YXNlIEVWUF9QS0VZX0RTQToKLSAJICBzaWduX2FsZ29uYW1lID0gRFNJR19EU0FfU0hBMV9BTEdP OwotIAkgIGVuY19hbGdvbmFtZSA9IFhFTkNfRFNBX0FMR087Ci0tCSAgZHNhID0gY2xpX3BrLT5w a2V5LmRzYTsKLSsJICBkc2EgPSBFVlBfUEtFWV9nZXQwX0RTQShjbGlfcGspOwotIAkgIGJyZWFr OwotICAgICAgIGNhc2UgRVZQX1BLRVlfUlNBOgotIAkgIHNpZ25fYWxnb25hbWUgPSBEU0lHX1JT QV9TSEExX0FMR087Ci0gCSAgZW5jX2FsZ29uYW1lID0gWEVOQ19SU0FfQUxHTzsKLS0JICByc2Eg PSBjbGlfcGstPnBrZXkucnNhOwotKwkgIHJzYSA9IEVWUF9QS0VZX2dldDBfUlNBKGNsaV9wayk7 Ci0gCSAgYnJlYWs7Ci0gICAgICAgZGVmYXVsdDoKLSAJICAqZXJyX3JldCA9IHNydl9tYWtlX25l d19lcnJvciAoIjQyMDAwIiwgIlhFQ1hYIiwgIlRoZSB0eXBlIG9mIHB1YmxpYyBrZXkgaXMgbm90 IHN1cHBvcnRlZCBtdXMgdGJlIFJTQSBvciBEU0EiKTsKLUBAIC03MDMyLDE5ICs3MDczLDE5IEBA IGJpZl94ZW5jX3BrY3MxMl9leHBvcnQgKGNhZGRyX3QgKiBxc3QsIGMKLSAgIGlmIChleHBvcnRf Y2hhaW4pCi0gICAgIHsKLSAgICAgICBpbnQgaTsKLS0gICAgICBYNTA5X1NUT1JFX0NUWCBzdG9y ZV9jdHg7Ci0tICAgICAgWDUwOV9TVE9SRV9DVFhfaW5pdCAoJnN0b3JlX2N0eCwgQ0FfY2VydHMs IHgsIE5VTEwpOwotLSAgICAgIGlmIChYNTA5X3ZlcmlmeV9jZXJ0ICgmc3RvcmVfY3R4KSA+IDAp Ci0tCWNoYWluID0gWDUwOV9TVE9SRV9DVFhfZ2V0MV9jaGFpbiAoJnN0b3JlX2N0eCk7Ci0rICAg ICAgWDUwOV9TVE9SRV9DVFggKmN0eDsKLSsgICAgICBYNTA5X1NUT1JFX0NUWF9pbml0IChjdHgs IENBX2NlcnRzLCB4LCBOVUxMKTsKLSsgICAgICBpZiAoWDUwOV92ZXJpZnlfY2VydCAoY3R4KSA+ IDApCi0rCWNoYWluID0gWDUwOV9TVE9SRV9DVFhfZ2V0MV9jaGFpbiAoY3R4KTsKLSAgICAgICBl bHNlCi0gCXsKLSAJICBjb25zdCBjaGFyICplcnJfc3RyOwotLQkgIGVycl9zdHIgPSBYNTA5X3Zl cmlmeV9jZXJ0X2Vycm9yX3N0cmluZyAoc3RvcmVfY3R4LmVycm9yKTsKLSsJICBlcnJfc3RyID0g WDUwOV92ZXJpZnlfY2VydF9lcnJvcl9zdHJpbmcgKFg1MDlfU1RPUkVfQ1RYX2dldF9lcnJvcihj dHgpKTsKLSAJICAqZXJyX3JldCA9IHNydl9tYWtlX25ld19lcnJvciAoIjIyMDIzIiwgIlhFTkNY IiwgIlg1MDkgZXJyb3I6ICVzIiwgZXJyX3N0cik7Ci0tCSAgWDUwOV9TVE9SRV9DVFhfY2xlYW51 cCAoJnN0b3JlX2N0eCk7Ci0rCSAgWDUwOV9TVE9SRV9DVFhfY2xlYW51cCAoY3R4KTsKLSAJICBn b3RvIGVycjsKLSAJfQotLSAgICAgIFg1MDlfU1RPUkVfQ1RYX2NsZWFudXAgKCZzdG9yZV9jdHgp OwotKyAgICAgIFg1MDlfU1RPUkVfQ1RYX2NsZWFudXAgKGN0eCk7Ci0gICAgICAgaWYgKGNoYWlu KQotIAl7Ci0gCSAgY2VydHMgPSBza19YNTA5X25ld19udWxsICgpOwotQEAgLTcxNTIsMTYgKzcx OTMsMTYgQEAgYmlmX3hlbmNfcHVia2V5X3BlbV9leHBvcnQgKGNhZGRyX3QgKiBxcwotICAgICB7 Ci0gICAgICAgayA9IFg1MDlfZ2V0X3B1YmtleSAoa2V5LT54ZWtfeDUwOSk7Ci0gI2lmZGVmIEVW UF9QS0VZX1JTQQotLSAgICAgIGlmIChrLT50eXBlID09IEVWUF9QS0VZX1JTQSkKLSsgICAgICBp ZiAoRVZQX1BLRVlfaWQoaykgPT0gRVZQX1BLRVlfUlNBKQotIAl7Ci0tCSAgUlNBICogeCA9IGst PnBrZXkucnNhOwotKwkgIFJTQSAqeCA9IEVWUF9QS0VZX2dldDBfUlNBKGspOwotIAkgIFBFTV93 cml0ZV9iaW9fUlNBX1BVQktFWSAoYiwgeCk7Ci0gCX0KLSAjZW5kaWYKLSAjaWZkZWYgRVZQX1BL RVlfRFNBCi0tICAgICAgaWYgKGstPnR5cGUgPT0gRVZQX1BLRVlfRFNBKQotKyAgICAgIGlmIChF VlBfUEtFWV9pZChrKSA9PSBFVlBfUEtFWV9EU0EpCi0gCXsKLS0JICBEU0EgKiB4ID0gay0+cGtl eS5kc2E7Ci0rCSAgRFNBICogeCA9IEVWUF9QS0VZX2dldDBfRFNBKGspOwotIAkgIFBFTV93cml0 ZV9iaW9fRFNBX1BVQktFWSAoYiwgeCk7Ci0gCX0KLSAjZW5kaWYKLUBAIC03MjA4LDE2ICs3MjQ5 LDE2IEBAIGJpZl94ZW5jX3B1YmtleV9kZXJfZXhwb3J0IChjYWRkcl90ICogcXMKLSAgICAgewot ICAgICAgIGsgPSBYNTA5X2dldF9wdWJrZXkgKGtleS0+eGVrX3g1MDkpOwotICNpZmRlZiBFVlBf UEtFWV9SU0EKLS0gICAgICBpZiAoay0+dHlwZSA9PSBFVlBfUEtFWV9SU0EpCi0rICAgICAgaWYg KEVWUF9QS0VZX2lkKGspID09IEVWUF9QS0VZX1JTQSkKLSAJewotLQkgIFJTQSAqIHggPSBrLT5w a2V5LnJzYTsKLSsJICBSU0EgKiB4ID0gRVZQX1BLRVlfZ2V0MF9SU0Eoayk7Ci0gCSAgaTJkX1JT QV9QVUJLRVlfYmlvIChiLCB4KTsKLSAJfQotICNlbmRpZgotICNpZmRlZiBFVlBfUEtFWV9EU0EK LS0gICAgICBpZiAoay0+dHlwZSA9PSBFVlBfUEtFWV9EU0EpCi0rICAgICAgaWYgKEVWUF9QS0VZ X2lkKGspID09IEVWUF9QS0VZX0RTQSkKLSAJewotLQkgIERTQSAqIHggPSBrLT5wa2V5LmRzYTsK LSsJICBEU0EgKiB4ID0gRVZQX1BLRVlfZ2V0MF9EU0Eoayk7Ci0gCSAgaTJkX0RTQV9QVUJLRVlf YmlvIChiLCB4KTsKLSAJfQotICNlbmRpZgotQEAgLTcyNDUsNyArNzI4Niw3IEBAIGVycjoKLSB9 Ci0gCi0gc3RhdGljIGNhZGRyX3QKLS1CTjJiaW5ib3ggKEJJR05VTSAqIHgpCi0rQk4yYmluYm94 IChjb25zdCBCSUdOVU0gKiB4KQotIHsKLSAgIHNpemVfdCBidWZfbGVuLCBuOwotICAgY2FkZHJf dCBidWY7Ci1AQCAtNzI4MCw4ICs3MzIxLDE0IEBAIHN0YXRpYyBjYWRkcl90Ci0geGVuY19yc2Ff cHViX21hZ2ljIChSU0EgKiB4KQotIHsKLSAgIGNhZGRyX3QgcmV0OwotLSAgY2FkZHJfdCBuID0g Qk4yYmluYm94ICh4LT5uKTsgLyogbW9kdWx1cyAqLwotLSAgY2FkZHJfdCBlID0gQk4yYmluYm94 ICh4LT5lKTsgLyogcHVibGljIGV4cG9uZW50ICovCi0rICBjYWRkcl90IG47Ci0rICBjYWRkcl90 IGU7Ci0rICBjb25zdCBCSUdOVU0gKnJzYV9uLCAqcnNhX2U7Ci0rCi0rICBSU0FfZ2V0MF9rZXko eCwgJnJzYV9uLCAmcnNhX2UsIE5VTEwpOwotKyAgbiA9IEJOMmJpbmJveCAocnNhX24pOyAvKiBt b2R1bHVzICovCi0rICBlID0gQk4yYmluYm94IChyc2FfZSk7IC8qIHB1YmxpYyBleHBvbmVudCAq LwotKwotICAgbiA9IHhlbmNfZW5jb2RlX2Jhc2U2NF9iaW5ib3ggKG4sIDEpOwotICAgZSA9IHhl bmNfZW5jb2RlX2Jhc2U2NF9iaW5ib3ggKGUsIDEpOwotICAgcmV0ID0gZGtfYWxsb2NfYm94IChi b3hfbGVuZ3RoIChuKSArIGJveF9sZW5ndGggKGUpICsgNCAvKiB0d28gZG90cyAtIG9uZSB0cmFp bGluZyB6ZXJvICsgUlNBIHByZWZpeCAqLywgRFZfU1RSSU5HKTsKLUBAIC03MzA2LDkgKzczNTMs OSBAQCBiaWZfeGVuY19wdWJrZXlfbWFnaWNfZXhwb3J0IChjYWRkcl90ICoKLSAgICAgewotICAg ICAgIGsgPSBYNTA5X2dldF9wdWJrZXkgKGtleS0+eGVrX3g1MDkpOwotICNpZmRlZiBFVlBfUEtF WV9SU0EKLS0gICAgICBpZiAoay0+dHlwZSA9PSBFVlBfUEtFWV9SU0EpCi0rICAgICAgaWYgKEVW UF9QS0VZX2lkKGspID09IEVWUF9QS0VZX1JTQSkKLSAJewotLQkgIFJTQSAqIHggPSBrLT5wa2V5 LnJzYTsKLSsJICBSU0EgKiB4ID0gRVZQX1BLRVlfZ2V0MF9SU0Eoayk7Ci0gCSAgcmV0ID0geGVu Y19yc2FfcHViX21hZ2ljICh4KTsKLSAJfQotICNlbmRpZgotQEAgLTczNDksMTAgKzczOTYsMTYg QEAgc3RhdGljIGNhZGRyX3QKLSB4ZW5jX3JzYV9wdWJfc3NoX2V4cG9ydCAoUlNBICogeCkKLSB7 Ci0gICBzdGF0aWMgY2hhciAqIHNzaF9oZWFkZXIgPSAiXHgwMFx4MDBceDAwXHgwN3NzaC1yc2Ei OwotKyAgY29uc3QgQklHTlVNICpyc2FfbiwgKnJzYV9lOwotICAgY2FkZHJfdCByZXQ7Ci0gICBp bnQgbGVuLCBwb3M7Ci0tICBjYWRkcl90IG4gPSBCTjJiaW5ib3ggKHgtPm4pOyAvKiBtb2R1bHVz ICovCi0tICBjYWRkcl90IGUgPSBCTjJiaW5ib3ggKHgtPmUpOyAvKiBwdWJsaWMgZXhwb25lbnQg Ki8KLSsgIGNhZGRyX3QgbjsKLSsgIGNhZGRyX3QgZTsKLSsKLSsgIFJTQV9nZXQwX2tleSh4LCAm cnNhX24sICZyc2FfZSwgTlVMTCk7Ci0rICBuID0gQk4yYmluYm94IChyc2Ffbik7IC8qIG1vZHVs dXMgKi8KLSsgIGUgPSBCTjJiaW5ib3ggKHJzYV9lKTsgLyogcHVibGljIGV4cG9uZW50ICovCi0r Ci0gICBsZW4gPSAxMSArIDggKyBib3hfbGVuZ3RoIChuKSArIGJveF9sZW5ndGggKGUpOwotICAg aWYgKG5bMF0gJiAweDgwKQotICAgICBsZW4gKys7Ci1AQCAtNzM4Myw5ICs3NDM2LDkgQEAgYmlm X3hlbmNfcHVia2V5X3NzaF9leHBvcnQgKGNhZGRyX3QgKiBxcwotICAgICB7Ci0gICAgICAgayA9 IFg1MDlfZ2V0X3B1YmtleSAoa2V5LT54ZWtfeDUwOSk7Ci0gI2lmZGVmIEVWUF9QS0VZX1JTQQot LSAgICAgIGlmIChrLT50eXBlID09IEVWUF9QS0VZX1JTQSkKLSsgICAgICBpZiAoRVZQX1BLRVlf aWQoaykgPT0gRVZQX1BLRVlfUlNBKQotIAl7Ci0tCSAgUlNBICogeCA9IGstPnBrZXkucnNhOwot KwkgIFJTQSAqIHggPSBFVlBfUEtFWV9nZXQwX1JTQShrKTsKLSAJICByZXQgPSB4ZW5jX3JzYV9w dWJfc3NoX2V4cG9ydCAoeCk7Ci0gCX0KLSAjZW5kaWYKLUBAIC03NDE4LDcgKzc0NzEsNyBAQCBi aWZfeGVuY19TUEtJX3JlYWQgKGNhZGRyX3QgKiBxc3QsIGNhZGRyCi0gICAgICAgcmV0dXJuIE5V TEw7Ci0gICAgIH0KLSAgIHBrID0gTkVUU0NBUEVfU1BLSV9nZXRfcHVia2V5IChzcGtpKTsKLS0g IGlmICghcGsgfHwgcGstPnR5cGUgIT0gRVZQX1BLRVlfUlNBKQotKyAgaWYgKCFwayB8fCBFVlBf UEtFWV9pZChwaykgIT0gRVZQX1BLRVlfUlNBKQotICAgICB7Ci0gICAgICAgTkVUU0NBUEVfU1BL SV9mcmVlIChzcGtpKTsKLSAgICAgICAqZXJyX3JldCA9IHNydl9tYWtlX25ld19lcnJvciAoIjQy MDAwIiwgIlhFQ1hYIiwgIkNhbiBub3QgcmV0cmlldmUgUlNBIGtleSIpOwotQEAgLTc1OTUsMTQg Kzc2NDgsMTQgQEAgYmlmX3hlbmNfeDUwOV9jYV9jZXJ0c19saXN0IChjYWRkcl90ICogcQotICAg c2VjX2NoZWNrX2RiYSAoKFFJKilxc3QsIG1lKTsKLSAgIGluID0gQklPX25ldyAoQklPX3NfbWVt ICgpKTsKLSAgIG11dGV4X2VudGVyICh4ZW5jX2tleXNfbXR4KTsKLS0gIGNlcnRzID0gQ0FfY2Vy dHMtPm9ianM7Ci0rICBjZXJ0cyA9IFg1MDlfU1RPUkVfZ2V0MF9vYmplY3RzKENBX2NlcnRzKTsK LSAgIGxlbiA9IHNrX1g1MDlfT0JKRUNUX251bSAoY2VydHMpOwotICAgZm9yIChpID0gMDsgaSA8 IGxlbjsgaSsrKQotICAgICB7Ci0gICAgICAgWDUwOV9PQkpFQ1QgKiBvYmogPSBza19YNTA5X09C SkVDVF92YWx1ZSAoY2VydHMsIGkpOwotLSAgICAgIGlmIChvYmotPnR5cGUgPT0gWDUwOV9MVV9Y NTA5KQotKyAgICAgIGlmIChYNTA5X09CSkVDVF9nZXRfdHlwZShvYmopID09IFg1MDlfTFVfWDUw OSkKLSAJewotLQkgIFg1MDkgKnggPSBvYmotPmRhdGEueDUwOTsKLSsJICBYNTA5ICp4ID0gWDUw OV9PQkpFQ1RfZ2V0MF9YNTA5KG9iaik7Ci0gCSAgY2FkZHJfdCBpdG07Ci0gCSAgaW50IGJsZW47 Ci0gCSAgQklPX3Jlc2V0IChpbik7Ci0tLS0gYS9saWJzcmMvV2kveG1sZW5jLmgKLSsrKyBiL2xp YnNyYy9XaS94bWxlbmMuaAotQEAgLTM4LDYgKzM4LDcgQEAKLSAjaW5jbHVkZSA8b3BlbnNzbC9k c2EuaD4KLSAjaW5jbHVkZSA8b3BlbnNzbC9yc2EuaD4KLSAjaW5jbHVkZSA8b3BlbnNzbC9kZXMu aD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9obWFjLmg+Ci0gCi0gI2lmZGVmIEFFU19FTkNfRU5BQkxF Ci0gI2luY2x1ZGUgPG9wZW5zc2wvYWVzLmg+Ci1AQCAtNjMxLDUgKzYzMiwxODMgQEAgY2FkZHJf dCAqIHhtbF9maW5kX2FueV9jaGlsZCAoY2FkZHJfdCAqCi0gCi0gZXh0ZXJuIGRrX211dGV4X3Qg KiB4ZW5jX2tleXNfbXR4OwotIAotKyNpZiBPUEVOU1NMX1ZFUlNJT05fTlVNQkVSIDwgMHgxMDEw MDAwMAotKwotK3N0YXRpYyBpbmxpbmUgSE1BQ19DVFggKkhNQUNfQ1RYX25ldyh2b2lkKQotK3sK LSsJSE1BQ19DVFggKnA7Ci0rCi0rCXAgPSBjYWxsb2MoMSwgc2l6ZW9mKEhNQUNfQ1RYKSk7Ci0r CWlmICghcCkKLSsJCXJldHVybiBwOwotKwlITUFDX0NUWF9pbml0KHApOwotKwlyZXR1cm4gcDsK LSt9Ci0rCi0rc3RhdGljIGlubGluZSB2b2lkIEhNQUNfQ1RYX2ZyZWUoSE1BQ19DVFggKmN0eCkK LSt7Ci0rCUhNQUNfQ1RYX2NsZWFudXAoY3R4KTsKLSsJZnJlZShjdHgpOwotK30KLSsKLStzdGF0 aWMgaW5saW5lIHZvaWQgUlNBX2dldDBfa2V5KGNvbnN0IFJTQSAqciwgY29uc3QgQklHTlVNICoq biwKLSsJCQkJY29uc3QgQklHTlVNICoqZSwgY29uc3QgQklHTlVNICoqZCkKLSt7Ci0rCWlmIChu ICE9IE5VTEwpCi0rCQkqbiA9IHItPm47Ci0rCWlmIChlICE9IE5VTEwpCi0rCQkqZSA9IHItPmU7 Ci0rCWlmIChkICE9IE5VTEwpCi0rCQkqZCA9IHItPmQ7Ci0rfQotKwotK3N0YXRpYyBpbmxpbmUg dm9pZCBSU0FfZ2V0MF9mYWN0b3JzKGNvbnN0IFJTQSAqciwgY29uc3QgQklHTlVNICoqcCwKLSsJ CQkJICAgIGNvbnN0IEJJR05VTSAqKnEpCi0rewotKwlpZiAocCAhPSBOVUxMKQotKwkJKnAgPSBy LT5wOwotKwlpZiAocSAhPSBOVUxMKQotKwkJKnEgPSByLT5xOwotK30KLSsKLStzdGF0aWMgaW5s aW5lIFJTQSAqRVZQX1BLRVlfZ2V0MF9SU0EoRVZQX1BLRVkgKnBrZXkpCi0rewotKwlpZiAocGtl eS0+dHlwZSAhPSBFVlBfUEtFWV9SU0EpCi0rCQlyZXR1cm4gTlVMTDsKLSsJcmV0dXJuIHBrZXkt PnBrZXkucnNhOwotK30KLSsKLStzdGF0aWMgaW5saW5lIHZvaWQgREhfZ2V0MF9rZXkoY29uc3Qg REggKmRoLCBjb25zdCBCSUdOVU0gKipwdWJfa2V5LAotKwkJCSAgICAgICBjb25zdCBCSUdOVU0g Kipwcml2X2tleSkKLSt7Ci0rCWlmIChwdWJfa2V5ICE9IE5VTEwpCi0rCQkqcHViX2tleSA9IGRo LT5wdWJfa2V5OwotKwlpZiAocHJpdl9rZXkgIT0gTlVMTCkKLSsJCSpwcml2X2tleSA9IGRoLT5w cml2X2tleTsKLSt9Ci0rCi0rCi0rc3RhdGljIGlubGluZSB2b2lkIERIX2dldDBfcHFnKGNvbnN0 IERIICpkaCwgY29uc3QgQklHTlVNICoqcCwgY29uc3QgQklHTlVNICoqcSwKLSsJCQkgICAgICAg Y29uc3QgQklHTlVNICoqZykKLSt7Ci0rCWlmIChwICE9IE5VTEwpCi0rCQkqcCA9IGRoLT5wOwot KwlpZiAocSAhPSBOVUxMKQotKwkJKnEgPSBkaC0+cTsKLSsJaWYgKGcgIT0gTlVMTCkKLSsJCSpn ID0gZGgtPmc7Ci0rfQotKwotK3N0YXRpYyBpbmxpbmUgRFNBICpFVlBfUEtFWV9nZXQwX0RTQShF VlBfUEtFWSAqcGtleSkKLSt7Ci0rCWlmIChwa2V5LT50eXBlICE9IEVWUF9QS0VZX0RTQSkKLSsJ CXJldHVybiBOVUxMOwotKwlyZXR1cm4gcGtleS0+cGtleS5kc2E7Ci0rfQotKwotK3N0YXRpYyBp bmxpbmUgaW50IERIX3NldDBfcHFnKERIICpkaCwgQklHTlVNICpwLCBCSUdOVU0gKnEsIEJJR05V TSAqZykKLSt7Ci0rCS8qIElmIHRoZSBmaWVsZHMgcCBhbmQgZyBpbiBkIGFyZSBOVUxMLCB0aGUg Y29ycmVzcG9uZGluZyBpbnB1dAotKwkgKiBwYXJhbWV0ZXJzIE1VU1QgYmUgbm9uLU5VTEwuICBx IG1heSByZW1haW4gTlVMTC4KLSsJICovCi0rCWlmICgoZGgtPnAgPT0gTlVMTCAmJiBwID09IE5V TEwpCi0rCSAgICB8fCAoZGgtPmcgPT0gTlVMTCAmJiBnID09IE5VTEwpKQotKwkJcmV0dXJuIDA7 Ci0rCi0rCWlmIChwICE9IE5VTEwpIHsKLSsJCUJOX2ZyZWUoZGgtPnApOwotKwkJZGgtPnAgPSBw OwotKwl9Ci0rCWlmIChxICE9IE5VTEwpIHsKLSsJCUJOX2ZyZWUoZGgtPnEpOwotKwkJZGgtPnEg PSBxOwotKwl9Ci0rCWlmIChnICE9IE5VTEwpIHsKLSsJCUJOX2ZyZWUoZGgtPmcpOwotKwkJZGgt PmcgPSBnOwotKwl9Ci0rCi0rCWlmIChxICE9IE5VTEwpIHsKLSsJCWRoLT5sZW5ndGggPSBCTl9u dW1fYml0cyhxKTsKLSsJfQotKwotKwlyZXR1cm4gMTsKLSt9Ci0rCi0rc3RhdGljIGlubGluZSBp bnQgUlNBX3NldDBfa2V5KFJTQSAqciwgQklHTlVNICpuLCBCSUdOVU0gKmUsIEJJR05VTSAqZCkK LSt7Ci0rCS8qIElmIHRoZSBmaWVsZHMgbiBhbmQgZSBpbiByIGFyZSBOVUxMLCB0aGUgY29ycmVz cG9uZGluZyBpbnB1dAotKwkgKiBwYXJhbWV0ZXJzIE1VU1QgYmUgbm9uLU5VTEwgZm9yIG4gYW5k IGUuICBkIG1heSBiZQotKwkgKiBsZWZ0IE5VTEwgKGluIGNhc2Ugb25seSB0aGUgcHVibGljIGtl eSBpcyB1c2VkKS4KLSsJICovCi0rCWlmICgoci0+biA9PSBOVUxMICYmIG4gPT0gTlVMTCkKLSsJ ICAgIHx8IChyLT5lID09IE5VTEwgJiYgZSA9PSBOVUxMKSkKLSsJCXJldHVybiAwOwotKwotKwlp ZiAobiAhPSBOVUxMKSB7Ci0rCQlCTl9mcmVlKHItPm4pOwotKwkJci0+biA9IG47Ci0rCX0KLSsJ aWYgKGUgIT0gTlVMTCkgewotKwkJQk5fZnJlZShyLT5lKTsKLSsJCXItPmUgPSBlOwotKwl9Ci0r CWlmIChkICE9IE5VTEwpIHsKLSsJCUJOX2ZyZWUoci0+ZCk7Ci0rCQlyLT5kID0gZDsKLSsJfQot KwotKwlyZXR1cm4gMTsKLSt9Ci0rCi0rc3RhdGljIGlubGluZSB2b2lkIERTQV9nZXQwX3BxZyhj b25zdCBEU0EgKmQsIGNvbnN0IEJJR05VTSAqKnAsCi0rCQkJCWNvbnN0IEJJR05VTSAqKnEsIGNv bnN0IEJJR05VTSAqKmcpCi0rewotKwlpZiAocCAhPSBOVUxMKQotKwkJKnAgPSBkLT5wOwotKwlp ZiAocSAhPSBOVUxMKQotKwkJKnEgPSBkLT5xOwotKwlpZiAoZyAhPSBOVUxMKQotKwkJKmcgPSBk LT5nOwotK30KLSsKLStzdGF0aWMgaW5saW5lIHZvaWQgRFNBX2dldDBfa2V5KGNvbnN0IERTQSAq ZCwgY29uc3QgQklHTlVNICoqcHViX2tleSwKLSsJCQkJY29uc3QgQklHTlVNICoqcHJpdl9rZXkp Ci0rewotKwlpZiAocHViX2tleSAhPSBOVUxMKQotKwkJKnB1Yl9rZXkgPSBkLT5wdWJfa2V5Owot KwlpZiAocHJpdl9rZXkgIT0gTlVMTCkKLSsJCSpwcml2X2tleSA9IGQtPnByaXZfa2V5OwotK30K LSsKLStzdGF0aWMgaW5saW5lIGNvbnN0IFNUQUNLX09GKFg1MDlfRVhURU5TSU9OKSAqWDUwOV9n ZXQwX2V4dGVuc2lvbnMoY29uc3QgWDUwOSAqeCkKLSt7Ci0rCXJldHVybiB4LT5jZXJ0X2luZm8t PmV4dGVuc2lvbnM7Ci0rfQotKwotK3N0YXRpYyBpbmxpbmUgaW50IFg1MDlfdXBfcmVmKFg1MDkg KngpCi0rewotKwlyZXR1cm4gQ1JZUFRPX2FkZCgmeC0+cmVmZXJlbmNlcywgMSwgQ1JZUFRPX0xP Q0tfWDUwOSk7Ci0rfQotKwotK3N0YXRpYyBpbmxpbmUgU1RBQ0tfT0YoWDUwOV9PQkpFQ1QpICpY NTA5X1NUT1JFX2dldDBfb2JqZWN0cyhYNTA5X1NUT1JFICp2KQotK3sKLSsJcmV0dXJuIHYtPm9i anM7Ci0rfQotKwotK3N0YXRpYyBpbmxpbmUgaW50IFg1MDlfT0JKRUNUX2dldF90eXBlKGNvbnN0 IFg1MDlfT0JKRUNUICphKQotK3sKLSsJcmV0dXJuIGEtPnR5cGU7Ci0rfQotKwotK3N0YXRpYyBp bmxpbmUgWDUwOSAqWDUwOV9PQkpFQ1RfZ2V0MF9YNTA5KGNvbnN0IFg1MDlfT0JKRUNUICphKQot K3sKLSsJaWYgKGEgPT0gTlVMTCB8fCBhLT50eXBlICE9IFg1MDlfTFVfWDUwOSkKLSsJCXJldHVy biBOVUxMOwotKwlyZXR1cm4gYS0+ZGF0YS54NTA5OwotK30KLSsKLSsjZW5kaWYKLSsKLSAjZW5k aWYKLSAKLS0tLSBhL2xpYnNyYy9XaS94bWxlbmNfYWxnb3MuYwotKysrIGIvbGlic3JjL1dpL3ht bGVuY19hbGdvcy5jCi1AQCAtMTE0OSw3ICsxMTQ5LDcgQEAgaW50Ci0gZHNpZ19obWFjX3NoYTI1 Nl9kaWdlc3QgKGRrX3Nlc3Npb25fdCAqIHNlc19pbiwgbG9uZyBsZW4sIHhlbmNfa2V5X3QgKiBr ZXksIGNhZGRyX3QgKiBzaWduX291dCkKLSB7Ci0gICB1bnNpZ25lZCBjaGFyICogZGF0YTsKLS0g IEhNQUNfQ1RYIGN0eDsKLSsgIEhNQUNfQ1RYICpjdHg7Ci0gICB1bnNpZ25lZCBjaGFyIGtleV9k YXRhWzMyICogOF07Ci0gICB1bnNpZ25lZCBjaGFyIG1kIFtTSEEyNTZfRElHRVNUX0xFTkdUSCAr IDFdOwotICAgdW5zaWduZWQgY2hhciBtZDY0IFtTSEEyNTZfRElHRVNUX0xFTkdUSCAqIDIgKyAx XTsKLUBAIC0xMTgyLDcgKzExODIsOSBAQCBkc2lnX2htYWNfc2hhMjU2X2RpZ2VzdCAoZGtfc2Vz c2lvbl90ICoKLSAgICAgICBkZWZhdWx0OgotIAkgIHJldHVybiAwOwotICAgICB9Ci0tCi0rICBj dHggPSBITUFDX0NUWF9uZXcoKTsKLSsgIGlmICghY3R4KQotKwkgIHJldHVybiAwOwotIAotICAg ZGF0YSA9ICh1bnNpZ25lZCBjaGFyICopIGRrX2FsbG9jX2JveCAobGVuLCBEVl9DX1NUUklORyk7 Ci0gICBDQVRDSF9SRUFEX0ZBSUwgKHNlc19pbikKLUBAIC0xMTkyLDE0ICsxMTk0LDE1IEBAIGRz aWdfaG1hY19zaGEyNTZfZGlnZXN0IChka19zZXNzaW9uX3QgKgotICAgRkFJTEVECi0gICAgIHsK LSAgICAgICBka19mcmVlX2JveCAoKGJveF90KSBkYXRhKTsKLSsgICAgICBITUFDX0NUWF9mcmVl KGN0eCk7Ci0gICAgICAgcmV0dXJuIDA7Ci0gICAgIH0KLSAgIEVORF9SRUFEX0ZBSUwgKHNlc19p bik7Ci0gCi0tICBITUFDX0luaXQoJmN0eCwgKHZvaWQqKSBrZXlfZGF0YSAsIGtleV9sZW4sIEVW UF9zaGEyNTYgKCkpOwotLSAgSE1BQ19VcGRhdGUoJmN0eCwgZGF0YSwgbGVuKTsKLS0gIEhNQUNf RmluYWwoJmN0eCwgbWQsICZobWFjX2xlbik7Ci0tICBITUFDX2NsZWFudXAoJmN0eCk7Ci0rICBI TUFDX0luaXRfZXgoY3R4LCAodm9pZCopIGtleV9kYXRhICwga2V5X2xlbiwgRVZQX3NoYTI1NiAo KSwgTlVMTCk7Ci0rICBITUFDX1VwZGF0ZShjdHgsIGRhdGEsIGxlbik7Ci0rICBITUFDX0ZpbmFs KGN0eCwgbWQsICZobWFjX2xlbik7Ci0rICBITUFDX0NUWF9mcmVlKGN0eCk7Ci0gCi0gICBpZiAo aG1hY19sZW4gIT0gU0hBMjU2X0RJR0VTVF9MRU5HVEgpCi0gICAgIEdQRl9UOwotQEAgLTEyMjAs NyArMTIyMyw3IEBAIGRzaWdfaG1hY19zaGEyNTZfZGlnZXN0IChka19zZXNzaW9uX3QgKgotIGlu dAotIGRzaWdfaG1hY19zaGEyNTZfdmVyaWZ5IChka19zZXNzaW9uX3QgKiBzZXNfaW4sIGxvbmcg bGVuLCB4ZW5jX2tleV90ICoga2V5LCBjYWRkcl90IGRpZ2VzdCkKLSB7Ci0tICBITUFDX0NUWCBj dHg7Ci0rICBITUFDX0NUWCAqY3R4OwotICAgdW5zaWduZWQgY2hhciAqIGRhdGE7Ci0gICB1bnNp Z25lZCBjaGFyIGtleV9kYXRhWzMgKiA4XTsKLSAgIHVuc2lnbmVkIGNoYXIgbWQgW1NIQTI1Nl9E SUdFU1RfTEVOR1RIICsgMV07Ci1AQCAtMTI0OSw2ICsxMjUyLDkgQEAgZHNpZ19obWFjX3NoYTI1 Nl92ZXJpZnkgKGRrX3Nlc3Npb25fdCAqCi0gCSAgcmV0dXJuIDA7Ci0gICAgIH0KLSAKLSsgIGN0 eCA9IEhNQUNfQ1RYX25ldygpOwotKyAgaWYgKCFjdHgpCi0rCSAgcmV0dXJuIDA7Ci0gCi0gICBk YXRhID0gKHVuc2lnbmVkIGNoYXIgKikgZGtfYWxsb2NfYm94IChsZW4sIERWX0NfU1RSSU5HKTsK LSAgIENBVENIX1JFQURfRkFJTCAoc2VzX2luKQotQEAgLTEyNTgsMTQgKzEyNjQsMTUgQEAgZHNp Z19obWFjX3NoYTI1Nl92ZXJpZnkgKGRrX3Nlc3Npb25fdCAqCi0gICBGQUlMRUQKLSAgICAgewot ICAgICAgIGRrX2ZyZWVfYm94ICgoYm94X3QpIGRhdGEpOwotKyAgICAgIEhNQUNfQ1RYX2ZyZWUo Y3R4KTsKLSAgICAgICByZXR1cm4gMDsKLSAgICAgfQotICAgRU5EX1JFQURfRkFJTCAoc2VzX2lu KTsKLSAKLS0gIEhNQUNfSW5pdCgmY3R4LCAodm9pZCopIGtleV9kYXRhICwga2V5X2xlbiwgRVZQ X3NoYTI1NiAoKSk7Ci0tICBITUFDX1VwZGF0ZSgmY3R4LCBkYXRhLCBsZW4pOwotLSAgSE1BQ19G aW5hbCgmY3R4LCBtZCwgJmhtYWNfbGVuKTsKLS0gIEhNQUNfY2xlYW51cCgmY3R4KTsKLSsgIEhN QUNfSW5pdF9leChjdHgsICh2b2lkKikga2V5X2RhdGEgLCBrZXlfbGVuLCBFVlBfc2hhMjU2ICgp LCBOVUxMKTsKLSsgIEhNQUNfVXBkYXRlKGN0eCwgZGF0YSwgbGVuKTsKLSsgIEhNQUNfRmluYWwo Y3R4LCBtZCwgJmhtYWNfbGVuKTsKLSsgIEhNQUNfQ1RYX2ZyZWUoY3R4KTsKLSAgIGRrX2ZyZWVf Ym94ICgoYm94X3QpIGRhdGEpOwotIAotICAgbGVuMSA9IHhlbmNfZW5jb2RlX2Jhc2U2NCAoKGNo YXIgKiltZCwgbWQ2NCwgaG1hY19sZW4pOwotQEAgLTE1ODYsNyArMTU5Myw3IEBAIGludAotIGRz aWdfaG1hY19zaGExX2RpZ2VzdCAoZGtfc2Vzc2lvbl90ICogc2VzX2luLCBsb25nIGxlbiwgeGVu Y19rZXlfdCAqIGtleSwgY2FkZHJfdCAqIHNpZ25fb3V0KQotIHsKLSAgIHVuc2lnbmVkIGNoYXIg KiBkYXRhOwotLSAgSE1BQ19DVFggY3R4OwotKyAgSE1BQ19DVFggKmN0eDsKLSAgIHVuc2lnbmVk IGNoYXIga2V5X2RhdGFbMzIgKiA4XTsKLSAgIHVuc2lnbmVkIGNoYXIgbWQgW1NIQV9ESUdFU1Rf TEVOR1RIICsgMV07Ci0gICB1bnNpZ25lZCBjaGFyIG1kNjQgW1NIQV9ESUdFU1RfTEVOR1RIICog MiArIDFdOwotQEAgLTE2MjAsNiArMTYyNyw5IEBAIGRzaWdfaG1hY19zaGExX2RpZ2VzdCAoZGtf c2Vzc2lvbl90ICogc2UKLSAJICByZXR1cm4gMDsKLSAgICAgfQotIAotKyAgY3R4ID0gSE1BQ19D VFhfbmV3KCk7Ci0rICBpZiAoIWN0eCkKLSsJICByZXR1cm4gMDsKLSAKLSAgIGRhdGEgPSAodW5z aWduZWQgY2hhciAqKSBka19hbGxvY19ib3ggKGxlbiwgRFZfQ19TVFJJTkcpOwotICAgQ0FUQ0hf UkVBRF9GQUlMIChzZXNfaW4pCi1AQCAtMTYyOSwxNCArMTYzOSwxNSBAQCBkc2lnX2htYWNfc2hh MV9kaWdlc3QgKGRrX3Nlc3Npb25fdCAqIHNlCi0gICBGQUlMRUQKLSAgICAgewotICAgICAgIGRr X2ZyZWVfYm94ICgoYm94X3QpIGRhdGEpOwotKyAgICAgIEhNQUNfQ1RYX2ZyZWUoY3R4KTsKLSAg ICAgICByZXR1cm4gMDsKLSAgICAgfQotICAgRU5EX1JFQURfRkFJTCAoc2VzX2luKTsKLSAKLS0g IEhNQUNfSW5pdCgmY3R4LCAodm9pZCopIGtleV9kYXRhICwga2V5X2xlbiwgRVZQX3NoYTEgKCkp OwotLSAgSE1BQ19VcGRhdGUoJmN0eCwgZGF0YSwgbGVuKTsKLS0gIEhNQUNfRmluYWwoJmN0eCwg bWQsICZobWFjX2xlbik7Ci0tICBITUFDX2NsZWFudXAoJmN0eCk7Ci0rICBITUFDX0luaXRfZXgo Y3R4LCAodm9pZCopIGtleV9kYXRhICwga2V5X2xlbiwgRVZQX3NoYTEgKCksIE5VTEwpOwotKyAg SE1BQ19VcGRhdGUoY3R4LCBkYXRhLCBsZW4pOwotKyAgSE1BQ19GaW5hbChjdHgsIG1kLCAmaG1h Y19sZW4pOwotKyAgSE1BQ19DVFhfZnJlZShjdHgpOwotIAotICAgaWYgKGhtYWNfbGVuICE9IFNI QV9ESUdFU1RfTEVOR1RIKQotICAgICBHUEZfVDsKLUBAIC0xNjU3LDcgKzE2NjgsNyBAQCBkc2ln X2htYWNfc2hhMV9kaWdlc3QgKGRrX3Nlc3Npb25fdCAqIHNlCi0gaW50Ci0gZHNpZ19obWFjX3No YTFfdmVyaWZ5IChka19zZXNzaW9uX3QgKiBzZXNfaW4sIGxvbmcgbGVuLCB4ZW5jX2tleV90ICog a2V5LCBjYWRkcl90IGRpZ2VzdCkKLSB7Ci0tICBITUFDX0NUWCBjdHg7Ci0rICBITUFDX0NUWCAq Y3R4OwotICAgdW5zaWduZWQgY2hhciAqIGRhdGE7Ci0gICB1bnNpZ25lZCBjaGFyIGtleV9kYXRh WzMgKiA4XTsKLSAgIHVuc2lnbmVkIGNoYXIgbWQgW1NIQV9ESUdFU1RfTEVOR1RIICsgMV07Ci1A QCAtMTY4Niw2ICsxNjk3LDkgQEAgZHNpZ19obWFjX3NoYTFfdmVyaWZ5IChka19zZXNzaW9uX3Qg KiBzZQotIAkgIHJldHVybiAwOwotICAgICB9Ci0gCi0rICBjdHggPSBITUFDX0NUWF9uZXcoKTsK LSsgIGlmICghY3R4KQotKwkgIHJldHVybiAwOwotIAotICAgZGF0YSA9ICh1bnNpZ25lZCBjaGFy ICopIGRrX2FsbG9jX2JveCAobGVuLCBEVl9DX1NUUklORyk7Ci0gICBDQVRDSF9SRUFEX0ZBSUwg KHNlc19pbikKLUBAIC0xNjk1LDE0ICsxNzA5LDE1IEBAIGRzaWdfaG1hY19zaGExX3ZlcmlmeSAo ZGtfc2Vzc2lvbl90ICogc2UKLSAgIEZBSUxFRAotICAgICB7Ci0gICAgICAgZGtfZnJlZV9ib3gg KChib3hfdCkgZGF0YSk7Ci0rICAgICAgSE1BQ19DVFhfZnJlZShjdHgpOwotICAgICAgIHJldHVy biAwOwotICAgICB9Ci0gICBFTkRfUkVBRF9GQUlMIChzZXNfaW4pOwotIAotLSAgSE1BQ19Jbml0 KCZjdHgsICh2b2lkKikga2V5X2RhdGEgLCBrZXlfbGVuLCBFVlBfc2hhMSAoKSk7Ci0tICBITUFD X1VwZGF0ZSgmY3R4LCBkYXRhLCBsZW4pOwotLSAgSE1BQ19GaW5hbCgmY3R4LCBtZCwgJmhtYWNf bGVuKTsKLS0gIEhNQUNfY2xlYW51cCgmY3R4KTsKLSsgIEhNQUNfSW5pdF9leChjdHgsICh2b2lk Kikga2V5X2RhdGEgLCBrZXlfbGVuLCBFVlBfc2hhMSAoKSwgTlVMTCk7Ci0rICBITUFDX1VwZGF0 ZShjdHgsIGRhdGEsIGxlbik7Ci0rICBITUFDX0ZpbmFsKGN0eCwgbWQsICZobWFjX2xlbik7Ci0r ICBITUFDX0NUWF9mcmVlKGN0eCk7Ci0gICBka19mcmVlX2JveCAoKGJveF90KSBkYXRhKTsKLSAK LSAgIGxlbjEgPSB4ZW5jX2VuY29kZV9iYXNlNjQgKChjaGFyICopbWQsIG1kNjQsIGhtYWNfbGVu KTsKLUBAIC0xNzYzLDcgKzE3NzgsNyBAQCBpbnQgeGVuY19hZXNfZW5jcnlwdG9yIChka19zZXNz aW9uX3QgKiBzCi0gICBjYWRkcl90IG91dGJ1Zl9iZWc7Ci0gICBpbnQgbGVuOwotICAgY2FkZHJf dCBlbmNvZGVkX291dDsKLS0gIEVWUF9DSVBIRVJfQ1RYIGN0eDsKLSsgIEVWUF9DSVBIRVJfQ1RY ICpjdHg7Ci0gICB1bnNpZ25lZCBjaGFyICogaXZlYyA9ICZrZXktPmtpLmFlcy5pdlswXTsKLSAK LSAgIENBVENIX1JFQURfRkFJTCAoc2VzX2luKQotQEAgLTE3NzgsNyArMTc5Myw3IEBAIGludCB4 ZW5jX2Flc19lbmNyeXB0b3IgKGRrX3Nlc3Npb25fdCAqIHMKLSAgIEVORF9SRUFEX0ZBSUwgKHNl c19pbik7Ci0gCi0gI2lmIDEKLS0gIEVWUF9DSVBIRVJfQ1RYX2luaXQoJmN0eCk7Ci0rICBjdHgg PSBFVlBfQ0lQSEVSX0NUWF9uZXcoKTsKLSAgIG91dGJ1Zl9iZWcgPSBka19hbGxvY19ib3ggKGJv eF9sZW5ndGggKHRleHQpICsgMTYsIERWX0JJTik7Ci0gICBtZW1jcHkgKG91dGJ1Zl9iZWcsIGl2 ZWMsIDE2KTsKLSAgIG91dGJ1ZiA9IG91dGJ1Zl9iZWcgKyAxNjsKLUBAIC0xNzg2LDIwICsxODAx LDE5IEBAIGludCB4ZW5jX2Flc19lbmNyeXB0b3IgKGRrX3Nlc3Npb25fdCAqIHMKLSAgIHN3aXRj aCAoa2V5LT5raS5hZXMuYml0cykKLSAgICAgewotICAgICBjYXNlIDEyODoKLS0gICAgICBFVlBf RW5jcnlwdEluaXRfZXgoJmN0eCwgRVZQX2Flc18xMjhfY2JjKCksIE5VTEwsIGtleS0+a2kuYWVz LmssIGl2ZWMpOwotKyAgICAgIEVWUF9FbmNyeXB0SW5pdF9leChjdHgsIEVWUF9hZXNfMTI4X2Ni YygpLCBOVUxMLCBrZXktPmtpLmFlcy5rLCBpdmVjKTsKLSAgICAgICBicmVhazsKLSAgICAgY2Fz ZSAxOTI6Ci0tICAgICAgRVZQX0VuY3J5cHRJbml0X2V4KCZjdHgsIEVWUF9hZXNfMTkyX2NiYygp LCBOVUxMLCBrZXktPmtpLmFlcy5rLCBpdmVjKTsKLSsgICAgICBFVlBfRW5jcnlwdEluaXRfZXgo Y3R4LCBFVlBfYWVzXzE5Ml9jYmMoKSwgTlVMTCwga2V5LT5raS5hZXMuaywgaXZlYyk7Ci0gICAg ICAgYnJlYWs7Ci0gICAgIGNhc2UgMjU2OgotLSAgICAgIEVWUF9FbmNyeXB0SW5pdF9leCgmY3R4 LCBFVlBfYWVzXzI1Nl9jYmMoKSwgTlVMTCwga2V5LT5raS5hZXMuaywgaXZlYyk7Ci0rICAgICAg RVZQX0VuY3J5cHRJbml0X2V4KGN0eCwgRVZQX2Flc18yNTZfY2JjKCksIE5VTEwsIGtleS0+a2ku YWVzLmssIGl2ZWMpOwotICAgICAgIGJyZWFrOwotICAgICBkZWZhdWx0OgotICAgICAgIEdQRl9U MSAoIlVuc3VwcG9ydGVkIGtleSBzaXplIik7Ci0gICAgIH0KLS0gIGlmKCFFVlBfRW5jcnlwdFVw ZGF0ZSgmY3R4LCAodW5zaWduZWQgY2hhciAqKW91dGJ1ZiwgJm91dGxlbiwgKHVuc2lnbmVkIGNo YXIgKil0ZXh0LCBib3hfbGVuZ3RoICh0ZXh0KSkpCi0rICBpZighRVZQX0VuY3J5cHRVcGRhdGUo Y3R4LCAodW5zaWduZWQgY2hhciAqKW91dGJ1ZiwgJm91dGxlbiwgKHVuc2lnbmVkIGNoYXIgKil0 ZXh0LCBib3hfbGVuZ3RoICh0ZXh0KSkpCi0gICAgIHsKLS0gICAgICBFVlBfQ0lQSEVSX0NUWF9j bGVhbnVwKCZjdHgpOwotICAgICAgIGRrX2ZyZWVfYm94ICh0ZXh0KTsKLSAgICAgICBka19mcmVl X2JveCAob3V0YnVmX2JlZyk7Ci0gICAgICAgeGVuY19yZXBvcnRfZXJyb3IgKHQsIDUwMCwgWEVO Q19FTkNfRVJSLCAiQUVTIGVuY3J5cHRpb24gaW50ZXJuYWwgZXJyb3IgIzIiKTsKLUBAIC0xODEy LDcgKzE4MjYsNyBAQCBpbnQgeGVuY19hZXNfZW5jcnlwdG9yIChka19zZXNzaW9uX3QgKiBzCi0g ICAgICAgeGVuY19yZXBvcnRfZXJyb3IgKHQsIDUwMCwgWEVOQ19FTkNfRVJSLCAiQUVTIGVuY3J5 cHRpb24gaW50ZXJuYWwgZXJyb3IgIzMiKTsKLSAgICAgICB9ICovCi0gICAvKiBvdXRsZW4gKz0g dG1wbGVuOyAqLwotLSAgRVZQX0NJUEhFUl9DVFhfY2xlYW51cCgmY3R4KTsKLSsgIEVWUF9DSVBI RVJfQ1RYX2ZyZWUoY3R4KTsKLSAKLSAjZWxzZQotICAgb3V0YnVmX2JlZyA9IGRrX2FsbG9jX2Jv eCAoYm94X2xlbmd0aCAodGV4dCkgKyAxNiAvKiBpdiAqLywgRFZfQklOKTsKLUBAIC0yMDUwLDYg KzIwNjQsNyBAQCB4ZW5jX3JzYV9kZWNyeXB0b3IgKGRrX3Nlc3Npb25fdCAqIHNlc19pCi0gICBp bnQgbGVuID0gMDsKLSAgIGludCBrZXlzaXplOwotICAgUlNBICogcnNhID0ga2V5LT54ZWtfcHJp dmF0ZV9yc2E7Ci0rICBjb25zdCBCSUdOVU0gKnAsICpxOwotIAotICAgaWYgKCFzZXNsZW4pCi0g ICAgIHsKLUBAIC0yMDYyLDkgKzIwNzcsOSBAQCB4ZW5jX3JzYV9kZWNyeXB0b3IgKGRrX3Nlc3Np b25fdCAqIHNlc19pCi0gICAgICAgeGVuY19yZXBvcnRfZXJyb3IgKHQsIDUwMCArIHN0cmxlbiAo a2V5LT54ZWtfbmFtZSksIFhFTkNfRU5DX0VSUiwgImNvdWxkIG5vdCBtYWtlIFJTQSBkZWNyeXB0 aW9uIFtrZXkgJXMgaXMgbm90IFJTQV0iLCBrZXktPnhla19uYW1lKTsKLSAgICAgICByZXR1cm4g MDsKLSAgICAgfQotKyAgUlNBX2dldDBfZmFjdG9ycyhyc2EsICZwLCAmcSk7Ci0gICBpZiAoIXJz YSB8fAotLSAgICAgICFyc2EtPnAgfHwKLS0gICAgICAhcnNhLT5xKQotKyAgICAgICFwIHx8ICFx KQotICAgICB7Ci0gICAgICAgaWYgKGtleS0+eGVrX3g1MDlfS0kpCi0gCWtleSA9IHhlbmNfZ2V0 X2tleV9ieV9rZXlpZGVudGlmaWVyIChrZXktPnhla194NTA5X0tJLCAxKTsKLS0tLSBhL2xpYnNy Yy91dGlsL3NzbGVuZ2luZS5jCi0rKysgYi9saWJzcmMvdXRpbC9zc2xlbmdpbmUuYwotQEAgLTI5 LDcgKzI5LDExIEBACi0gaW50Ci0gc3NsX2VuZ2luZV9zdGFydHVwICh2b2lkKQotIHsKLS0gIENS WVBUT19tYWxsb2NfaW5pdCAoKTsKLSsjaWYgT1BFTlNTTF9WRVJTSU9OX05VTUJFUiA8IDB4MTAx MDAwMDAgfHwgZGVmaW5lZCBMSUJSRVNTTF9WRVJTSU9OX05VTUJFUgotKwlDUllQVE9fbWFsbG9j X2luaXQgKCk7Ci0rI2Vsc2UKLSsJT1BFTlNTTF9tYWxsb2NfaW5pdCgpOwotKyNlbmRpZgotICAg RVJSX2xvYWRfY3J5cHRvX3N0cmluZ3MoKTsKLSAgIE9wZW5TU0xfYWRkX2FsbF9hbGdvcml0aG1z KCk7Ci0gCi0tLS0gYS9saWJzcmMvV2kvaHR0cC5jCi0rKysgYi9saWJzcmMvV2kvaHR0cC5jCi1A QCAtODg4Niw3ICs4ODg2LDcgQEAgc3NsX3NlcnZlcl9zZXRfY2VydGlmaWNhdGUgKFNTTF9DVFgq IHNzbAotIAkJICBsb2dfZXJyb3IgKCJTU0w6IFRoZSBzdG9yZWQgY2VydGlmaWNhdGUgJyVzJyBj YW4gbm90IGJlIHVzZWQgYXMgZXh0cmEgY2hhaW4gY2VydGlmaWNhdGUiLCB0b2spOwotIAkJICBi cmVhazsKLSAJCX0KLS0JICAgICAgQ1JZUFRPX2FkZCgmay0+eGVrX3g1MDktPnJlZmVyZW5jZXMs IDEsIENSWVBUT19MT0NLX1g1MDkpOwotKwkgICAgICBYNTA5X3VwX3JlZihrLT54ZWtfeDUwOSk7 Ci0gICAgICAgICAgICAgICB0b2sgPSBzdHJ0b2tfciAoTlVMTCwgIiwiLCAmdG9rX3MpOwotIAkg ICAgfQotIAkgIGRrX2ZyZWVfYm94IChzdHIpOwotLS0tIGEvbGlic3JjL0RrL0RrZXJuZWwuYwot KysrIGIvbGlic3JjL0RrL0RrZXJuZWwuYwotQEAgLTUyODAsNyArNTI4MCwxMSBAQCBzc2xfc2Vy dmVyX2luaXQgKCkKLSAgIH0KLSAjZW5kaWYKLSAKLS0gIFNTTGVheV9hZGRfYWxsX2FsZ29yaXRo bXMgKCk7Ci0rI2lmIE9QRU5TU0xfVkVSU0lPTl9OVU1CRVIgPCAweDEwMTAwMDAwCi0rICBTU0xl YXlfYWRkX2FsbF9hbGdvcml0aG1zKCk7Ci0rI2Vsc2UKLSsgIE9wZW5TU0xfYWRkX2FsbF9hbGdv cml0aG1zKCk7Ci0rI2VuZGlmCi0gICBQS0NTMTJfUEJFX2FkZCAoKTsJCS8qIHN0dWIgKi8KLSAK LSAjaWZkZWYgTk9fVEhSRUFECmRpZmYgLS1naXQgYS9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMv c3NsMS4xX21vcmUucGF0Y2ggYi9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvc3NsMS4xX21vcmUu cGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY2ZTUwZWMxMjdiYS4uMDAwMDAw MDAwMDAwCi0tLSBhL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9zc2wxLjFfbW9yZS5wYXRjaAor KysgL2Rldi9udWxsCkBAIC0xLDIwICswLDAgQEAKLURlc2NyaXB0aW9uOiBDb21tZW50IHVua25v d24gZGVmaW5pdGlvbiBpbiBzc2wxLjEgLSBwbGVhc2UgcmV2aWV3IQotQXV0aG9yOiBBbmRyZWFz IFRpbGxlIDx0aWxsZUBkZWJpYW4ub3JnPgotQnVnLURlYmlhbjogaHR0cHM6Ly9idWdzLmRlYmlh bi5vcmcvODI4NTk0Ci1MYXN0LVVwZGF0ZTogTW8gMTEuIEZlYiAxMzo1MDoxNyBDRVQgMjAxOQot Ci0tLS0gYS9saWJzcmMvRGsvRGtlcm5lbC5jCi0rKysgYi9saWJzcmMvRGsvRGtlcm5lbC5jCi1A QCAtNTE2MSwxMCArNTE2MSwxMiBAQCBzc2xfY3R4X3NldF9wcm90b2NvbF9vcHRpb25zKFNTTF9D VFggKmN0Ci0gICAgICAgZWxzZSBpZiAoIXN0cmNhc2VjbXAgKG5hbWUsICJUTFN2MV8yIikgfHwg IXN0cmNhc2VjbXAgKG5hbWUsICJUTFN2MS4yIikpCi0gCW9wdCA9IFNTTF9QUk9UT0NPTF9UTFNW MV8yOwotICNlbmRpZgotKy8qCi0gI2lmIGRlZmluZWQgKFNTTF9PUF9OT19UTFN2MV8zKQotICAg ICAgIGVsc2UgaWYgKCFzdHJjYXNlY21wIChuYW1lLCAiVExTdjFfMyIpIHx8ICFzdHJjYXNlY21w IChuYW1lLCAiVExTdjEuMyIpKQotIAlvcHQgPSBTU0xfUFJPVE9DT0xfVExTVjFfMzsKLSAjZW5k aWYKLSsqLwotICAgICAgIGVsc2UgaWYgKCFzdHJjYXNlY21wIChuYW1lLCAiQUxMIikpCi0gCW9w dCA9IFNTTF9QUk9UT0NPTF9BTEw7Ci0gICAgICAgZWxzZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy92 aXJ0dW9zby9wYXRjaGVzL3VzZS1ta3N0ZW1wLnBhdGNoIGIvc3JjcGtncy92aXJ0dW9zby9wYXRj aGVzL3VzZS1ta3N0ZW1wLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkNzFi N2U0MTdiZDkuLjAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvdXNl LW1rc3RlbXAucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwxOCArMCwwIEBACi1Tb3VyY2U6IEBw dWxsbW9sbAotVXBzdHJlYW06IG5vCi1SZWFzb246IEF2b2lkIG1rdGVtcCgzKSBiZWNhdXNlICJO ZXZlciB1c2UgdGhpcyBmdW5jdGlvbjsgc2VlIEJVR1MuIgotCi0tLS0gYS9saWJzcmMvRGsvRGtz ZXNzdHIuYwkyMDE4LTA4LTE2IDAxOjA2OjIxLjAwMDAwMDAwMCArMDIwMAotKysrIGIvbGlic3Jj L0RrL0Rrc2Vzc3RyLmMJMjAyMC0wMS0yNyAxNToyMjowMC45NTM4NzYyNTEgKzAxMDAKLUBAIC0y OTgsOCArMjk4LDEwIEBACi0gICAgICAgaWYgKCFzZXMyLT5zZXNfZmlsZS0+c2VzX21heF9ibG9j a3NfaW5fbWVtKQotIAl7Ci0gCSAgY2hhciBmbmFtZVtQQVRIX01BWCArIDFdOwotKyAgICAgICAg ICBpbnQgZmQ7Ci0gCSAgc25wcmludGYgKGZuYW1lLCBzaXplb2YgKGZuYW1lKSwgIiVzL3Nlc1hY WFhYWCIsIHNlc190bXBfZGlyKTsKLS0JICBta3RlbXAgKGZuYW1lKTsKLSsJICBmZCA9IG1rc3Rl bXAgKGZuYW1lKTsKLSsgICAgICAgICAgY2xvc2UgKGZkKTsKLSAKLSAjaWYgZGVmaW5lZCAoV0lO MzIpCi0gIyBkZWZpbmUgT1BFTl9GTEFHUyAgCSAgT19DUkVBVCB8IE9fUkRXUiB8IE9fQklOQVJZ IHwgT19FWENMIHwgT19URU1QT1JBUlkKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdmlydHVvc28vdGVt cGxhdGUgYi9zcmNwa2dzL3ZpcnR1b3NvL3RlbXBsYXRlCmluZGV4IDczZTU5MDIzZDM1ZS4uNzgz OTA5ZjBkZTE0IDEwMDY0NAotLS0gYS9zcmNwa2dzL3ZpcnR1b3NvL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3MvdmlydHVvc28vdGVtcGxhdGUKQEAgLTEsMTggKzEsMTggQEAKICMgVGVtcGxhdGUgZmls ZSBmb3IgJ3ZpcnR1b3NvJwogcGtnbmFtZT12aXJ0dW9zbwotdmVyc2lvbj03LjIuNS4xCi1yZXZp c2lvbj0zCit2ZXJzaW9uPTcuMi44CityZXZpc2lvbj0xCiBhcmNocz0ieDg2XzY0KiBhYXJjaDY0 KiBwcGM2NGxlKiIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKLWNvbmZpZ3VyZV9hcmdzPSIt LWVuYWJsZS1zdGF0aWMiCi1ob3N0bWFrZWRlcGVuZHM9ImF1dG9tYWtlIGxpYnRvb2wgZmxleCBn cGVyZiBuZXQtdG9vbHMiCitob3N0bWFrZWRlcGVuZHM9ImF1dG9tYWtlIGxpYnRvb2wgZmxleCBn cGVyZiBuZXQtdG9vbHMgd2hpY2giCiBtYWtlZGVwZW5kcz0ib3BlbnNzbC1kZXZlbCBsaWJsZGFw LWRldmVsIHJlYWRsaW5lLWRldmVsIGxpYnhtbDItZGV2ZWwgbWl0LWtyYjUtZGV2ZWwiCitjaGVj a2RlcGVuZHM9InByb2Nwcy1uZyB1bnppcCBjdXJsIgogc2hvcnRfZGVzYz0iU2NhbGFibGUgY3Jv c3MtcGxhdGZvcm0gc2VydmVyIG9mIHZpcnR1b3NvIgogbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9y cGhhbkB2b2lkbGludXgub3JnPiIKLWxpY2Vuc2U9IkdQTC0yIgorbGljZW5zZT0iR1BMLTIuMC1v bmx5IgogaG9tZXBhZ2U9Imh0dHA6Ly92aXJ0dW9zby5vcGVubGlua3N3LmNvbS93aWtpL21haW4v TWFpbi8iCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9vcGVubGluay92aXJ0dW9zby1v cGVuc291cmNlL2FyY2hpdmUvdiR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09M2U0ODA3ZTk0 MDk4YjgyNjVmOGNmMDA4NjdkMTIxNWJiMWU5ZDBkMjc0ODc4ZTU5YTQyMDc0MmQyZGU0NzFjMgor Y2hlY2tzdW09YjdhOGI3OTk0M2FlZjdkZTFkN2Y3YTk4NDAyNzc0Nzc3NmFiMGI0NGNmNmUxNjBj YmQ2NjA4NWU1YmQ5MWVkNQogIyBjYW5ub3QgZXhlY3V0ZSBiaW5hcnkgZmlsZTogRXhlYyBmb3Jt YXQgZXJyb3IKIG5vY3Jvc3M9Imh0dHBzOi8vYnVpbGQudm9pZGxpbnV4Lm9yZy9idWlsZGVycy9h cm12NmxfYnVpbGRlci9idWlsZHMvMjkxODcvc3RlcHMvc2hlbGxfMy9sb2dzL3N0ZGlvIgogCkBA IC00NSw4ICs0NSw2IEBAIHBvc3RfaW5zdGFsbCgpIHsKIAlybSAke0RFU1RESVJ9L3Vzci9saWIv dmlydG9kYmNfci57YSxzb30KIAlybSAke0RFU1RESVJ9L3Vzci9saWIvdmlydG9kYmN1LnthLHNv fQogCXJtICR7REVTVERJUn0vdXNyL2xpYi92aXJ0b2RiY3Vfci57YSxzb30KLQkjIHJlbW92ZSBz dGF0aWMgbGlicy4KLQlybSAke0RFU1RESVJ9L3Vzci9saWIvdmlydHVvc28tb3BlbnNvdXJjZS0k e3ZlcnNpb24lJS4qfS9ob3N0aW5nLyouYQogfQogCiB2aXJ0dW9zby1iYXNlX3BhY2thZ2UoKSB7 CkBAIC02Miw2ICs2MCw2IEBAIHZpcnR1b3NvLWJhc2VfcGFja2FnZSgpIHsKIAkJCQkke1BLR0RF U1RESVJ9L3Vzci9iaW4vJHtiaW59LXZ0CiAJCWRvbmUKIAkJIyBSZW1vdmUgc3RhdGljIGxpYnMg YW5kIGxpYnRvb2wgYXJjaGl2ZXMuCi0JCXJtIC1mICR7UEtHREVTVERJUn0vdXNyL2xpYi8qLnth LGxhfQorCQlybSAtZiAke1BLR0RFU1RESVJ9L3Vzci9saWIvKi5sYQogCX0KIH0KCkZyb20gNmFm MTE4M2FiMWIxZjE5Mzg2MmYyZTRkZThkZTg1OWE5Yzk5YTc2YSBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2Vk LCAxIEZlYiAyMDIzIDE2OjQzOjU4ICswMTAwClN1YmplY3Q6IFtQQVRDSCAzOS8zOV0geDJnb2Ns aWVudDogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3MveDJnb2Ns aWVudC90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBk ZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MveDJnb2NsaWVudC90ZW1wbGF0ZSBiL3Ny Y3BrZ3MveDJnb2NsaWVudC90ZW1wbGF0ZQppbmRleCBiYTJkNTc3ODFjNGQuLjcwYzlmYWVjNGQ0 ZSAxMDA2NDQKLS0tIGEvc3JjcGtncy94MmdvY2xpZW50L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv eDJnb2NsaWVudC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J3gyZ29jbGllbnQnCiBwa2duYW1lPXgyZ29jbGllbnQKIHZlcnNpb249NC4xLjIuMgotcmV2aXNp b249MgorcmV2aXNpb249MwogYnVpbGRfc3R5bGU9Z251LW1ha2VmaWxlCiBidWlsZF9oZWxwZXI9 cW1ha2UKIG1ha2VfYnVpbGRfYXJncz0iUU1BS0VfQklOQVJZPXFtYWtlLXF0NSBMUkVMRUFTRV9C SU5BUlk9bHJlbGVhc2UtcXQ1Igo= --===============3382452143824836585==--