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 12640 invoked from network); 1 Feb 2023 23:33:44 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 1 Feb 2023 23:33:44 -0000 Content-Type: multipart/mixed; boundary="===============2958739314864818580==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_openldap=3A_update_to_2=2E6=2E3?= To: ml@inbox.vuxu.org From: klarasm Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Thu, 02 Feb 2023 00:33:44 +0100 List-Id: Message-ID: <20230201233344.IE5vF50KuzKu0DrEmXZOK2CE4hZd3qLaF37jpQC8wWA@z> GitHub notification mails are now in MIME to allow UTF8. --===============2958739314864818580== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkga2xhcmFzbSBhZ2FpbnN0IG1hc3Rl ciBvbiB0aGUgdm9pZC1wYWNrYWdlcyByZXBvc2l0b3J5CgpodHRwczovL2dpdGh1Yi5jb20va2xh cmFzbS92b2lkLXBhY2thZ2VzIG9wZW5sZGFwLTIuNgpodHRwczovL2dpdGh1Yi5jb20vdm9pZC1s aW51eC92b2lkLXBhY2thZ2VzL3B1bGwvNDE5NDgKCm9wZW5sZGFwOiB1cGRhdGUgdG8gMi42LjMK VGhlIDIuNCBicmFuY2ggaXMgbm90IG1haW50YWluZWQgYW55bW9yZSBhbmQgSSBkb24ndCBrbm93 IGlmIHRoZXJlJ3MgbXVjaCBhZHZhbnRhZ2UgdG8gZ29pbmcgdG8gMi41IGluc3RlYWQgb2YgMi42 DQoNClNvbWUgc2hhcmVkIGxpYnJhcmllcyBoYXZlIGNoYW5nZWQgbmFtZSBzbyB0aGlzIHVwZGF0 ZXMgY29tbW9uL3NobGlicy4NCg0KQXMgdGhpcyBpcyBhIG1ham9yIHVwZGF0ZSB0aGUgbGRhcCBk YXRhYmFzZSBzaG91bGQgYmUgYmFja2VkIHVwIGFuZCByZWNyZWF0ZWQgYXMgcGVyIGh0dHBzOi8v d3d3Lm9wZW5sZGFwLm9yZy9kb2MvYWRtaW4yNi9tYWludGVuYW5jZS5odG1sDQoNCiMjIyMgVGVz dGluZyB0aGUgY2hhbmdlcw0KLSBJIHRlc3RlZCB0aGUgY2hhbmdlcyBpbiB0aGlzIFBSOiBpbiBw cm9ncmVzcw0KDQpJIGhhdmUgdXBncmFkZWQgbXkgbGRhcCBzZXR1cCB0byB0aGlzIHZlcnNpb24u IEl0J3Mgbm90IHZlcnkgY29tcGxpY2F0ZWQgc28gbWF5IG5vdCBiZSBncmVhdCBmb3IgY292ZXJh Z2UuDQpCYXNpY2FsbHk6DQotIHR3byBub2Rlcywgd2l0aCBub3JtYWwgc3luY3JlcGwgYW5kIGdz c2FwaS9rZXJiZXJvcyBmb3IgYXV0aGVudGljYXRpb24NCi0gdGhlIGxkYXAgZGlyZWN0b3J5IGlz IHVzZWQgYXMgZGF0YWJhc2UgYmFja2VuZCBmb3IgbXkga2VyYmVyb3Mgc2V0dXANCi0gSSBoYXZl IGEgZmV3IG1hY2hpbmVzIHNldHVwIHdpdGgga2VyYmVyb3MgZm9yIGF1dGhlbnRpY2F0aW9uIGFu ZCBsZGFwIGFzIGlkIHByb3ZpZGVyIChzb21lIHdpdGggc3NzZCBhbmQgc29tZSB3aXRoIG5zbGNk KQ0KDQpTbyBmYXIgaXQgc2VlbXMgcHJvbWlzaW5nIGJ1dCB3aWxsIHRlc3QgbW9yZS4gSSB3b3Vs ZCBhcHByZWNpYXRlIGlmIGFueW9uZSBlbHNlIGNvdWxkIHRlc3QgYXMgd2VsbC4NCg0KSSBoYXZl IHByb2JhYmx5IG1pc3NlZCBwYWNrYWdlcyB0aGF0IG5lZWQgdG8gYmUgcmV2YnVtcGVkIHNvIHBs ZWFzZSBwb2ludCB0aGVtIG91dCBpbiB0aGF0IGNhc2UuDQoNClBhY2thZ2VzIHRoYXQgZGVwZW5k IG9uIGxpYmxkYXA6DQotIFt4XSBGcmVlUkFESVVTLTMuMC4yM18xIChvdXQgb2YgZGF0ZSwgbmV3 ZXN0IHZlcnNpb24gaXMgMy4yLjEpDQotIFt4XSBhbHBpbmUtMi4yNl8xDQotIFt4XSBhbmp1dGEt My4zNC4wXzQgKGZpeCBmYXVsdHkgZGV0ZWN0aW9uIG9mIHdlYmtpdDJndGspDQotIFt4XSBhcGFj aGUtMi40LjU0XzIgKG91dCBvZiBkYXRlLCBuZXdlc3QgdmVyc2lvbiBpcyAyLjQuNTUpDQotIFt4 XSBhcHItdXRpbC1sZGFwLTEuNi4xXzEzICh1cGRhdGUgdG8gMS42LjIpDQotIFt4XSBhdWRpdC0z LjAuM180IChvdXQgb2YgZGF0ZSwgbmV3ZXN0IHZlcnNpb24gaXMgMy4wLjkpDQotIFt4XSBhdXRv ZnMtNS4xLjhfMiAob3V0IG9mIGRhdGUsIG5ld2VzdCB2ZXJzaW9uIGlzIDUuMS45KQ0KLSBbeF0g Y2xhd3MtbWFpbC00LjEuMV8xDQotIFt4XSBjeXJ1cy1zYXNsLTIuMS4yN185IChvdXQgb2YgZGF0 ZSwgbmV3ZXN0IHZlcnNpb24gaXMgMi4xLjI4KQ0KLSBbeF0gZG92ZWNvdC1wbHVnaW4tbGRhcC0y LjMuMjBfMQ0KLSBbeF0gZG92ZWNvdC1wbHVnaW4tcGlnZW9uaG9sZS1sZGFwLTAuNS4yMF8xDQot IFt4XSBldm9sdXRpb24tMy40Ni4yXzENCi0gW3hdIGV2b2x1dGlvbi1kYXRhLXNlcnZlci0zLjQ2 LjJfMQ0KLSBbeF0gZ251cGctMi4zLjhfMQ0KLSBbeF0gZ251cGcxLTEuNC4yM18xDQotIFt4XSBr bGRhcC0yMi4wOC4yXzENCi0gW3hdIGxkYXB2aS0xLjdfMTENCi0gW3hdIGxpYm5mc2lkbWFwLTIu NS40XzINCi0gW3hdIGxpYnJlb2ZmaWNlLWNvbW1vbi03LjQuMy4yXzENCi0gW3hdIGxpZ2h0dHBk LTEuNC42OF8xDQotIFt4XSBsb2c0Y3h4LTAuMTAuMF80ICh1cGRhdGUgdG8gMS4wLjApDQotIFt4 XSBsdWE1NC1sdWFsZGFwLTEuMi41XzMgKG91dCBvZiBkYXRlLCBuZXdlc3QgdmVyc2lvbiBpcyAx LjMuMCkNCi0gW3hdIG1pdC1rcmI1LWxpYnMtMS4xOC4zXzIgKHVwZGF0ZSB0byAxLjIwLjEpDQot IFt4XSBtb25pdG9yaW5nLXBsdWdpbnMtMi4zLjFfMQ0KLSBbeF0gbnNzLXBhbS1sZGFwZC0wLjku MTJfMQ0KLSBbeF0gcGhwLWxkYXAtNy40LjMzXzENCi0gW3hdIHBocDguMC1sZGFwLTguMC4yNV8x IChvdXQgb2YgZGF0ZSwgbmV3ZXN0IHZlcnNpb24gaXMgOC4wLjI3KQ0KLSBbeF0gcGhwOC4xLWxk YXAtOC4xLjEyXzEgKG91dCBvZiBkYXRlLCBuZXdlc3QgdmVyc2lvbiBpbiBicmFuY2ggaXMgOC4x LjE0LiA4LjIuMSBpcyBhbHNvIGF2YWlsYWJsZSkNCi0gW3hdIHBvc3RmaXgtMy43LjNfMQ0KLSBb eF0gcHl0aG9uMy1sZGFwLTMuMi4wXzUgKHVwZGF0ZSB0byAzLjQuMykNCi0gW3hdIHF1b3RhLTQu MDlfMQ0KLSBbeF0gc2FtYmEtNC4xNC4xMl8yIChvdXQgb2YgZGF0ZSwgbmV3ZXN0IHZlcnNpb24g aXMgNC4xNy41KQ0KLSBbeF0gc2VhaG9yc2UtNDMuMF8xDQotIFt4XSBzcXVpZC01LjNfMSAob3V0 IG9mIGRhdGUsIGxhdGVzdCB2ZXJzaW9uIGlzIDUuNykNCi0gW3hdIHNzc2QtMi40LjBfNSAob3V0 IG9mIGRhdGUsIGxhdGVzdCB2ZXJzaW9uIGlzIDIuOC4yKQ0KLSBbeF0gc3lscGhlZWQtMy43LjBf OCAob3V0IG9mIGRhdGUsIGxhdGVzdCB2ZXJzaW9uIGlzIDcuMi44KQ0KLSBbIF0gdmlydHVvc28t YmFzZS03LjIuNS4xXzMgKHVwZGF0ZSB0byA3LjIuOCwgdGVzdCBzdWl0ZSBzdGlsbCBmYWlscykN Ci0gW3hdIHgyZ29jbGllbnQtNC4xLjIuMl8yDQoNCltjaSBza2lwXSBhZ2Fpbi4gVGhpcyB3aWxs IHByb2JhYmx5IHRha2UgYSBsb25nIHRpbWUgdG8gYnVpbGQuDQo8IS0tDQojIyMjIExvY2FsIGJ1 aWxkIHRlc3RpbmcNCi0gSSBidWlsdCB0aGlzIFBSIGxvY2FsbHkgZm9yIG15IG5hdGl2ZSBhcmNo aXRlY3R1cmUsIChBUkNILUxJQkMpDQotIEkgYnVpbHQgdGhpcyBQUiBsb2NhbGx5IGZvciB0aGVz ZSBhcmNoaXRlY3R1cmVzIChpZiBzdXBwb3J0ZWQuIG1hcmsgY3Jvc3NidWlsZHMpOg0KICAtIGFh cmNoNjQtbXVzbA0KICAtIGFybXY3bA0KICAtIGFybXY2bC1tdXNsDQotLT4NCg0KUGF0Y2hlZCBp c3N1ZSB3aXRoIHRlc3QwNzk6DQpJdCBidWlsZHMgYW5kIHRoZSB0ZXN0IHN1aXRlIGlzIG9rIG9u IHg4Nl82NC1nbGliYyBidXQgZmFpbHMgb24geDg2XzY0LW11c2wgKGlmIEkgcmVtZW1iZXIgY29y cmVjdGx5IGZyb20gZWFybGllciB0ZXN0aW5nIHRoZSAyLjUgYnJhbmNoIGhhZCB0aGUgc2FtZSB0 ZXN0IHN1aXRlIGVycm9yKS4NCltvcGVubGRhcC0yLjYuMy10ZXN0MDc5LmxvZ10oaHR0cHM6Ly9n aXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9maWxlcy8xMDUzMDg0My9vcGVubGRh cC0yLjYuMy10ZXN0MDc5LmxvZykNCltvcGVubGRhcC0yLjYuMy1uby10ZXN0cy5sb2ddKGh0dHBz Oi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvZmlsZXMvMTA1MzA5MDMvb3Bl bmxkYXAtMi42LjMtbm8tdGVzdHMubG9nKQ0KW29wZW5sZGFwLTIuNi4zLWFsbC10ZXN0cy5sb2dd KGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvZmlsZXMvMTA1MzA5 Mjkvb3BlbmxkYXAtMi42LjMtYWxsLXRlc3RzLmxvZykNCg0KSXQgc2VlbXMgdGhhdCB0ZXN0IDc5 IGFsc28gZmFpbHMgb24gYWxwaW5lOiBodHRwczovL2dpdC5hbHBpbmVsaW51eC5vcmcvYXBvcnRz L3RyZWUvbWFpbi9vcGVubGRhcC9BUEtCVUlMRCNuMjI3DQpJJ2xsIGhhdmUgdG8gbG9vayBjbG9z ZXIgaW50byB0aGUgc3BlY2lmaWMgdGVzdCBhbmQgd2h5IGl0IGZhaWxzLCBidXQgaWYgaXQncyBu b3QgY3JpdGljYWwgaXQgbWF5IGJlIG9rIHRvIGlnbm9yZSBpdC4NCg0KVGhlIHJlc3Qgb2YgdGhl IHRlc3Qgc3VpdGUgZG9lcyBub3Qgc2VlbSB0byBiZSBhIHByb2JsZW0uCgpBIHBhdGNoIGZpbGUg ZnJvbSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBhY2thZ2VzL3B1bGwvNDE5 NDgucGF0Y2ggaXMgYXR0YWNoZWQ= --===============2958739314864818580== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-openldap-2.6-41948.patch" RnJvbSAyMzM5NmFkZDUxNTY2ZDIyMmIzMzc5MmQwNGU5ZTNmMzc3MTlhM2I0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpE YXRlOiBXZWQsIDIgTm92IDIwMjIgMjE6MDQ6NDYgKzAxMDAKU3ViamVjdDogW1BBVENIIDAxLzM5 XSBvcGVubGRhcDogdXBkYXRlIHRvIDIuNi4zCgotIHVwZGF0ZSBjb21tb24vc2hsaWJzCi0gYWRk IHNsYXBkLmxkaWYgdG8gY29uZl9maWxlcwotIGFkZCBtb3JlIG9wdGlvbnMgdG8gcnVuaXQgc2Vy dmljZQotIGFkZCBwYXRjaCBmaXhpbmcgdGVzdDA3OSBvbiBtdXNsIChmb3Igc29tZSByZWFzb24g YXJndW1lbnRzIGFyZQogIGlnbm9yZWQgaWYgcGxhY2VkIGFmdGVyIHRoZSBmaWx0ZXIpCi0tLQog Y29tbW9uL3NobGlicyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA1ICstCiBz cmNwa2dzL29wZW5sZGFwL2ZpbGVzL3NsYXBkL3J1biAgICAgICAgICAgICAgfCAgIDIgKy0KIC4u Li9maXgtdGVzdDA3OS1tdXNsLWlnbm9yZWQtcGFyYW1zLnBhdGNoICAgICB8IDEwNiArKysrKysr KysrKysrKysrKysKIHNyY3BrZ3Mvb3BlbmxkYXAvdGVtcGxhdGUgICAgICAgICAgICAgICAgICAg ICB8ICAgOCArLQogNCBmaWxlcyBjaGFuZ2VkLCAxMTMgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlv bnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL29wZW5sZGFwL3BhdGNoZXMvZml4LXRl c3QwNzktbXVzbC1pZ25vcmVkLXBhcmFtcy5wYXRjaAoKZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxp YnMgYi9jb21tb24vc2hsaWJzCmluZGV4IDUyM2ZkMTVhZjczNC4uOTBiMjUwMTMyZDRmIDEwMDY0 NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9zaGxpYnMKQEAgLTcwMCw5ICs3MDAs OCBAQCBsaWJnbm9tZS1ibHVldG9vdGguc28uMTMgZ25vbWUtYmx1ZXRvb3RoMS0zLjEyLjBfMQog bGliZ25vbWUtYmx1ZXRvb3RoLTMuMC5zby4xMyBnbm9tZS1ibHVldG9vdGgtNDIuMV8xCiBsaWJn bm9tZS1ibHVldG9vdGgtdWktMy4wLnNvLjEzIGdub21lLWJsdWV0b290aC00Mi4xXzEKIGxpYnNh c2wyLnNvLjMgbGlic2FzbC0yLjEuMjZfMQotbGlibGJlci0yLjQuc28uMiBsaWJsZGFwLTIuNC4y MV8xCi1saWJsZGFwLTIuNC5zby4yIGxpYmxkYXAtMi40LjIxXzEKLWxpYmxkYXBfci0yLjQuc28u MiBsaWJsZGFwLTIuNC4yMV8xCitsaWJsYmVyLnNvLjIgbGlibGRhcC0yLjYuM18xCitsaWJsZGFw LnNvLjIgbGlibGRhcC0yLjYuM18xCiBsaWJldmVudC0yLjEuc28uNyBsaWJldmVudC0yLjEuMTFf MQogbGliZXZlbnRfY29yZS0yLjEuc28uNyBsaWJldmVudC0yLjEuMTFfMQogbGliZXZlbnRfZXh0 cmEtMi4xLnNvLjcgbGliZXZlbnQtMi4xLjExXzEKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvb3Blbmxk YXAvZmlsZXMvc2xhcGQvcnVuIGIvc3JjcGtncy9vcGVubGRhcC9maWxlcy9zbGFwZC9ydW4KaW5k ZXggZjdhZGRmY2JlZWEzLi40ZmEyMjUzYjE4MjUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvb3Blbmxk YXAvZmlsZXMvc2xhcGQvcnVuCisrKyBiL3NyY3BrZ3Mvb3BlbmxkYXAvZmlsZXMvc2xhcGQvcnVu CkBAIC03LDQgKzcsNCBAQCBpZiBbICEgLWQgL3J1bi9vcGVubGRhcCBdOyB0aGVuCiAJY2hvd24g JExEQVBVU0VSOiRMREFQR1JPVVAgL3J1bi9vcGVubGRhcAogZmkKIGV4ZWMgMj4mMQotZXhlYyBz bGFwZCAtdSAkTERBUFVTRVIgLWcgJExEQVBHUk9VUCAtZCAwCitleGVjIHNsYXBkIC11ICRMREFQ VVNFUiAtZyAkTERBUEdST1VQIC1kIDAgJHtMREFQVVJMUzorLWggIiRMREFQVVJMUyJ9ICRMREFQ T1BUUwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9vcGVubGRhcC9wYXRjaGVzL2ZpeC10ZXN0MDc5LW11 c2wtaWdub3JlZC1wYXJhbXMucGF0Y2ggYi9zcmNwa2dzL29wZW5sZGFwL3BhdGNoZXMvZml4LXRl c3QwNzktbXVzbC1pZ25vcmVkLXBhcmFtcy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCAwMDAwMDAwMDAwMDAuLjhiYTE4MzI5MDFjOAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mv b3BlbmxkYXAvcGF0Y2hlcy9maXgtdGVzdDA3OS1tdXNsLWlnbm9yZWQtcGFyYW1zLnBhdGNoCkBA IC0wLDAgKzEsMTA2IEBACistLS0gYS90ZXN0cy9zY3JpcHRzL3Rlc3QwNzktcHJveHktdGltZW91 dAkyMDIzLTAxLTMxIDIzOjM3OjE5LjM3ODMyNDAzOCArMDEwMAorKysrIGIvdGVzdHMvc2NyaXB0 cy90ZXN0MDc5LXByb3h5LXRpbWVvdXQJMjAyMy0wMS0zMSAyMzo0NzoyNS4yODkwNTIyNDAgKzAx MDAKK0BAIC0xMzksMTAgKzEzOSwxMCBAQAorIAorIGVjaG8gIkNoZWNraW5nIHRoYXQgcHJveHkg aGFzIGNyZWF0ZWQgY29ubmVjdGlvbnMgdG93YXJkcyBiYWNrZW5kICh0aW1lX3Qgbm93PWBkYXRl ICslc2ApIgorIAorLSRMREFQU0VBUkNIIC1iICJjbj1Db25uZWN0aW9ucyxjbj1kYXRhYmFzZSAy LGNuPWRhdGFiYXNlcyxjbj1tb25pdG9yIiAtcyBvbmUgLUxMTCBvbG1EYkNvbm5VUkkgXAorKyRM REFQU0VBUkNIIC1iICJjbj1Db25uZWN0aW9ucyxjbj1kYXRhYmFzZSAyLGNuPWRhdGFiYXNlcyxj bj1tb25pdG9yIiAtcyBvbmUgLUxMTCBcCisgICAgICAgICAtRCAiY249TWFuYWdlcixkYz1sb2Nh bCxkYz1jb20iIFwKKyAgICAgICAgIC1IICRVUkkyIFwKKy0gICAgICAgIC13ICRQQVNTV0QgMj4m MSB8IHRlZSAtYSAkVEVTVE9VVCB8IGdyZXAgbGRhcDovLyR7TE9DQUxIT1NUfTokUE9SVDEgPi9k ZXYvbnVsbAorKyAgICAgICAgLXcgJFBBU1NXRCBvbG1EYkNvbm5VUkkgMj4mMSB8IHRlZSAtYSAk VEVTVE9VVCB8IGdyZXAgbGRhcDovLyR7TE9DQUxIT1NUfTokUE9SVDEgPi9kZXYvbnVsbAorIFJD PSQ/CisgaWYgdGVzdCAkUkMgIT0gMCA7IHRoZW4KKyAgICAgZWNobyAiRXJyb3I6IExEQVAgY29u bmVjdGlvbiB0byByZW1vdGUgTERBUCBzZXJ2ZXIgaXMgbm90IGZvdW5kICgkUkMpIgorQEAgLTE1 MCwxMCArMTUwLDEwIEBACisgICAgIGV4aXQgJFJDCisgZmkKKyAKKy0kTERBUFNFQVJDSCAtYiAi Y249Q29ubmVjdGlvbnMsY249ZGF0YWJhc2UgMyxjbj1kYXRhYmFzZXMsY249bW9uaXRvciIgLXMg b25lIC1MTEwgb2xtRGJDb25uVVJJIFwKKyskTERBUFNFQVJDSCAtYiAiY249Q29ubmVjdGlvbnMs Y249ZGF0YWJhc2UgMyxjbj1kYXRhYmFzZXMsY249bW9uaXRvciIgLXMgb25lIC1MTEwgXAorICAg ICAgICAgLUQgImNuPU1hbmFnZXIsZGM9bG9jYWwsZGM9Y29tIiBcCisgICAgICAgICAtSCAkVVJJ MiBcCistICAgICAgICAtdyAkUEFTU1dEIDI+JjEgfCB0ZWUgLWEgJFRFU1RPVVQgfCBncmVwIGxk YXA6Ly8ke0xPQ0FMSE9TVH06JFBPUlQxID4vZGV2L251bGwKKysgICAgICAgIC13ICRQQVNTV0Qg b2xtRGJDb25uVVJJIDI+JjEgfCB0ZWUgLWEgJFRFU1RPVVQgfCBncmVwIGxkYXA6Ly8ke0xPQ0FM SE9TVH06JFBPUlQxID4vZGV2L251bGwKKyBSQz0kPworIGlmIHRlc3QgJFJDICE9IDAgOyB0aGVu CisgICAgIGVjaG8gIkVycm9yOiBMREFQIGNvbm5lY3Rpb24gdG8gcmVtb3RlIExEQVAgc2VydmVy IGlzIG5vdCBmb3VuZCAoJFJDKSIKK0BAIC0xNzEsMTAgKzE3MSwxMCBAQAorIAorIGVjaG8gIkNo ZWNraW5nIHRoYXQgcHJveHkgaGFzIGNsb3NlZCBleHBpcmVkIGNvbm5lY3Rpb25zIHRvd2FyZHMg dGhlIHJlbW90ZSBMREFQIHNlcnZlciAodGltZV90IG5vdz1gZGF0ZSArJXNgKSIKKyAKKy0kTERB UFNFQVJDSCAtYiAiY249Q29ubmVjdGlvbnMsY249ZGF0YWJhc2UgMixjbj1kYXRhYmFzZXMsY249 bW9uaXRvciIgLXMgb25lIC1MTEwgb2xtRGJDb25uVVJJIFwKKyskTERBUFNFQVJDSCAtYiAiY249 Q29ubmVjdGlvbnMsY249ZGF0YWJhc2UgMixjbj1kYXRhYmFzZXMsY249bW9uaXRvciIgLXMgb25l IC1MTEwgXAorICAgICAgICAgLUQgImNuPU1hbmFnZXIsZGM9bG9jYWwsZGM9Y29tIiBcCisgICAg ICAgICAtSCAkVVJJMiBcCistICAgICAgICAtdyAkUEFTU1dEIDI+JjEgfCB0ZWUgLWEgJFRFU1RP VVQgfCBncmVwIGxkYXA6Ly8ke0xPQ0FMSE9TVH06JFBPUlQxID4vZGV2L251bGwKKysgICAgICAg IC13ICRQQVNTV0Qgb2xtRGJDb25uVVJJIDI+JjEgfCB0ZWUgLWEgJFRFU1RPVVQgfCBncmVwIGxk YXA6Ly8ke0xPQ0FMSE9TVH06JFBPUlQxID4vZGV2L251bGwKKyBSQz0kPworIGlmIHRlc3QgJFJD ICE9IDEgOyB0aGVuCisgICAgIGVjaG8gIkVycm9yOiBMREFQIGNvbm5lY3Rpb24gdG8gcmVtb3Rl IExEQVAgc2VydmVyIHdhcyBub3QgY2xvc2VkIgorQEAgLTE4MiwxMCArMTgyLDEwIEBACisgICAg IGV4aXQgJFJDCisgZmkKKyAKKy0kTERBUFNFQVJDSCAtYiAiY249Q29ubmVjdGlvbnMsY249ZGF0 YWJhc2UgMyxjbj1kYXRhYmFzZXMsY249bW9uaXRvciIgLXMgb25lIC1MTEwgb2xtRGJDb25uVVJJ IFwKKyskTERBUFNFQVJDSCAtYiAiY249Q29ubmVjdGlvbnMsY249ZGF0YWJhc2UgMyxjbj1kYXRh YmFzZXMsY249bW9uaXRvciIgLXMgb25lIC1MTEwgXAorICAgICAgICAgLUQgImNuPU1hbmFnZXIs ZGM9bG9jYWwsZGM9Y29tIiBcCisgICAgICAgICAtSCAkVVJJMiBcCistICAgICAgICAtdyAkUEFT U1dEIDI+JjEgfCB0ZWUgLWEgJFRFU1RPVVQgfCBncmVwIGxkYXA6Ly8ke0xPQ0FMSE9TVH06JFBP UlQxID4vZGV2L251bGwKKysgICAgICAgIC13ICRQQVNTV0Qgb2xtRGJDb25uVVJJIDI+JjEgfCB0 ZWUgLWEgJFRFU1RPVVQgfCBncmVwIGxkYXA6Ly8ke0xPQ0FMSE9TVH06JFBPUlQxID4vZGV2L251 bGwKKyBSQz0kPworIGlmIHRlc3QgJFJDICE9IDEgOyB0aGVuCisgICAgIGVjaG8gIkVycm9yOiBM REFQIGNvbm5lY3Rpb24gdG8gcmVtb3RlIExEQVAgc2VydmVyIHdhcyBub3QgY2xvc2VkIgorQEAg LTIzNSwxMCArMjM1LDEwIEBACisgCisgZWNobyAiQ2hlY2tpbmcgdGhhdCBwcm94eSBoYXMgY3Jl YXRlZCBjb25uZWN0aW9ucyB0b3dhcmRzIGJhY2tlbmQgKHRpbWVfdCBub3c9YGRhdGUgKyVzYCki CisgCistJExEQVBTRUFSQ0ggLWIgImNuPUNvbm5lY3Rpb25zLGNuPWRhdGFiYXNlIDIsY249ZGF0 YWJhc2VzLGNuPW1vbml0b3IiIC1zIG9uZSAtTExMIG9sbURiQ29ublVSSSBcCisrJExEQVBTRUFS Q0ggLWIgImNuPUNvbm5lY3Rpb25zLGNuPWRhdGFiYXNlIDIsY249ZGF0YWJhc2VzLGNuPW1vbml0 b3IiIC1zIG9uZSAtTExMIFwKKyAgICAgICAgIC1EICJjbj1NYW5hZ2VyLGRjPWxvY2FsLGRjPWNv bSIgXAorICAgICAgICAgLUggJFVSSTIgXAorLSAgICAgICAgLXcgJFBBU1NXRCAyPiYxIHwgdGVl IC1hICRURVNUT1VUIHwgZ3JlcCBsZGFwOi8vJHtMT0NBTEhPU1R9OiRQT1JUMSA+L2Rldi9udWxs CisrICAgICAgICAtdyAkUEFTU1dEIG9sbURiQ29ublVSSSAyPiYxIHwgdGVlIC1hICRURVNUT1VU IHwgZ3JlcCBsZGFwOi8vJHtMT0NBTEhPU1R9OiRQT1JUMSA+L2Rldi9udWxsCisgUkM9JD8KKyBp ZiB0ZXN0ICRSQyAhPSAwIDsgdGhlbgorICAgICBlY2hvICJFcnJvcjogTERBUCBjb25uZWN0aW9u IHRvIHJlbW90ZSBMREFQIHNlcnZlciBpcyBub3QgZm91bmQgKCRSQykiCitAQCAtMjQ2LDEwICsy NDYsMTAgQEAKKyAgICAgZXhpdCAkUkMKKyBmaQorIAorLSRMREFQU0VBUkNIIC1iICJjbj1Db25u ZWN0aW9ucyxjbj1kYXRhYmFzZSAzLGNuPWRhdGFiYXNlcyxjbj1tb25pdG9yIiAtcyBvbmUgLUxM TCBvbG1EYkNvbm5VUkkgXAorKyRMREFQU0VBUkNIIC1iICJjbj1Db25uZWN0aW9ucyxjbj1kYXRh YmFzZSAzLGNuPWRhdGFiYXNlcyxjbj1tb25pdG9yIiAtcyBvbmUgLUxMTCBcCisgICAgICAgICAt RCAiY249TWFuYWdlcixkYz1sb2NhbCxkYz1jb20iIFwKKyAgICAgICAgIC1IICRVUkkyIFwKKy0g ICAgICAgIC13ICRQQVNTV0QgMj4mMSB8IHRlZSAtYSAkVEVTVE9VVCB8IGdyZXAgbGRhcDovLyR7 TE9DQUxIT1NUfTokUE9SVDEgPi9kZXYvbnVsbAorKyAgICAgICAgLXcgJFBBU1NXRCBvbG1EYkNv bm5VUkkgMj4mMSB8IHRlZSAtYSAkVEVTVE9VVCB8IGdyZXAgbGRhcDovLyR7TE9DQUxIT1NUfTok UE9SVDEgPi9kZXYvbnVsbAorIFJDPSQ/CisgaWYgdGVzdCAkUkMgIT0gMCA7IHRoZW4KKyAgICAg ZWNobyAiRXJyb3I6IExEQVAgY29ubmVjdGlvbiB0byByZW1vdGUgTERBUCBzZXJ2ZXIgaXMgbm90 IGZvdW5kICgkUkMpIgorQEAgLTMzOSwxMCArMzM5LDEwIEBACisgTk9XPWBkYXRlICslc2AKKyBz bGVlcCBgZXhwciAkQ09OTl9FWFBJUkVTIC0gJE5PVyAtIDJgCisgZWNobyAiQ2hlY2sgdGhhdCBj b25uZWN0aW9uIGlzIHN0aWxsIGFsaXZlIGR1ZSB0byBpZGxlLXRpbWVvdXQgcmVzZXQgKHRpbWVf dCBub3c9YGRhdGUgKyVzYCkiCistJExEQVBTRUFSQ0ggLWIgImNuPUNvbm5lY3Rpb25zLGNuPWRh dGFiYXNlIDIsY249ZGF0YWJhc2VzLGNuPW1vbml0b3IiIC1zIG9uZSAtTExMIG9sbURiQ29ublVS SSBcCisrJExEQVBTRUFSQ0ggLWIgImNuPUNvbm5lY3Rpb25zLGNuPWRhdGFiYXNlIDIsY249ZGF0 YWJhc2VzLGNuPW1vbml0b3IiIC1zIG9uZSAtTExMIFwKKyAgICAgICAgIC1EICJjbj1NYW5hZ2Vy LGRjPWxvY2FsLGRjPWNvbSIgXAorICAgICAgICAgLUggJFVSSTIgXAorLSAgICAgICAgLXcgJFBB U1NXRCAyPiYxIHwgdGVlIC1hICRURVNUT1VUIHwgZ3JlcCBsZGFwOi8vJHtMT0NBTEhPU1R9OiRQ T1JUMSA+L2Rldi9udWxsCisrICAgICAgICAtdyAkUEFTU1dEIG9sbURiQ29ublVSSSAyPiYxIHwg dGVlIC1hICRURVNUT1VUIHwgZ3JlcCBsZGFwOi8vJHtMT0NBTEhPU1R9OiRQT1JUMSA+L2Rldi9u dWxsCisgUkM9JD8KKyBpZiB0ZXN0ICRSQyAhPSAwIDsgdGhlbgorICAgICBlY2hvICJFcnJvcjog TERBUCBjb25uZWN0aW9uIHRvIHJlbW90ZSBMREFQIHNlcnZlciBpcyBub3QgZm91bmQgKCRSQyki CitAQCAtMzU0LDEwICszNTQsMTAgQEAKKyBOT1c9YGRhdGUgKyVzYAorIHNsZWVwIGBleHByICRD T05OX0VYUElSRVMgLSAkTk9XICsgMmAKKyBlY2hvICJDaGVjayB0aGF0IGNvbm5lY3Rpb24gaXMg Y2xvc2VkIGFmdGVyIGV4dGVuZGVkIGlkbGUtdGltZW91dCBoYXMgcGFzc2VkICh0aW1lX3Qgbm93 PWBkYXRlICslc2ApIgorLSRMREFQU0VBUkNIIC1iICJjbj1Db25uZWN0aW9ucyxjbj1kYXRhYmFz ZSAyLGNuPWRhdGFiYXNlcyxjbj1tb25pdG9yIiAtcyBvbmUgLUxMTCBvbG1EYkNvbm5VUkkgXAor KyRMREFQU0VBUkNIIC1iICJjbj1Db25uZWN0aW9ucyxjbj1kYXRhYmFzZSAyLGNuPWRhdGFiYXNl cyxjbj1tb25pdG9yIiAtcyBvbmUgLUxMTCBcCisgICAgICAgICAtRCAiY249TWFuYWdlcixkYz1s b2NhbCxkYz1jb20iIFwKKyAgICAgICAgIC1IICRVUkkyIFwKKy0gICAgICAgIC13ICRQQVNTV0Qg IDI+JjEgfCB0ZWUgLWEgJFRFU1RPVVQgfCBncmVwIGxkYXA6Ly8ke0xPQ0FMSE9TVH06JFBPUlQx ID4vZGV2L251bGwKKysgICAgICAgIC13ICRQQVNTV0QgIG9sbURiQ29ublVSSSAyPiYxIHwgdGVl IC1hICRURVNUT1VUIHwgZ3JlcCBsZGFwOi8vJHtMT0NBTEhPU1R9OiRQT1JUMSA+L2Rldi9udWxs CisgUkM9JD8KKyBpZiB0ZXN0ICRSQyAhPSAxIDsgdGhlbgorICAgICBlY2hvICJFcnJvcjogTERB UCBjb25uZWN0aW9uIHRvIHJlbW90ZSBMREFQIHNlcnZlciB3YXMgbm90IGNsb3NlZCIKZGlmZiAt LWdpdCBhL3NyY3BrZ3Mvb3BlbmxkYXAvdGVtcGxhdGUgYi9zcmNwa2dzL29wZW5sZGFwL3RlbXBs YXRlCmluZGV4IDg1ZmU3OWQ3N2QxZS4uMzBkMmQ5ODkzY2I4IDEwMDY0NAotLS0gYS9zcmNwa2dz L29wZW5sZGFwL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvb3BlbmxkYXAvdGVtcGxhdGUKQEAgLTEs NiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdvcGVubGRhcCcKIHBrZ25hbWU9b3Blbmxk YXAKLXZlcnNpb249Mi40LjU4Cit2ZXJzaW9uPTIuNi4zCiByZXZpc2lvbj0xCiBidWlsZF9zdHls ZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS1wcmVmaXg9L3VzcgpAQCAtMTYsMTMg KzE2LDEzIEBAIGNvbmZpZ3VyZV9hcmdzPSItLXByZWZpeD0vdXNyCiBob3N0bWFrZWRlcGVuZHM9 InBrZy1jb25maWcgZ3JvZmYiCiBtYWtlZGVwZW5kcz0ib3BlbnNzbC1kZXZlbCBsaWJzYXNsLWRl dmVsIGRiLWRldmVsIGxpYmx0ZGwtZGV2ZWwiCiBkZXBlbmRzPSJvcGVubGRhcC10b29scz49JHt2 ZXJzaW9ufV8ke3JldmlzaW9ufSIKLWNvbmZfZmlsZXM9Ii9ldGMvb3BlbmxkYXAvbGRhcC5jb25m IC9ldGMvb3BlbmxkYXAvc2xhcGQuY29uZiIKK2NvbmZfZmlsZXM9Ii9ldGMvb3BlbmxkYXAvbGRh cC5jb25mIC9ldGMvb3BlbmxkYXAvc2xhcGQuY29uZiAvZXRjL29wZW5sZGFwL3NsYXBkLmxkaWYi CiBzaG9ydF9kZXNjPSJPcGVuTERBUCAoTGlnaHR3ZWlnaHQgRGlyZWN0b3J5IEFjY2VzcyBQcm90 b2NvbCkiCiBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+IgogbGlj ZW5zZT0iT0xEQVAtMi4wIgogaG9tZXBhZ2U9Imh0dHA6Ly93d3cub3BlbmxkYXAub3JnIgogZGlz dGZpbGVzPSJodHRwczovL3d3dy5vcGVubGRhcC5vcmcvc29mdHdhcmUvZG93bmxvYWQvT3BlbkxE QVAvb3BlbmxkYXAtcmVsZWFzZS9vcGVubGRhcC0ke3ZlcnNpb259LnRneiIKLWNoZWNrc3VtPTU3 YjU5MjU0YmUxNWQwYmY2YTlhYjNkNTE0YzFjMDU3NzdiMDIxMjMyOTE1MzMxMzRhODdjOTQ0Njhm OGY0N2IKK2NoZWNrc3VtPWQyYTJhMWQ3MWRmM2Q3NzM5NmIxYzE2YWQ3NTAyZTY3NGRmNDQ2ZTA2 MDcyYjBlNWE0ZTk0MWMzZDA2YzBkNDYKIAogc3lzdGVtX2FjY291bnRzPSJsZGFwIgogbGRhcF9o b21lZGlyPSIvdmFyL2xpYi9vcGVubGRhcCIKQEAgLTM4LDcgKzM4LDcgQEAgcG9zdF9pbnN0YWxs KCkgewogCXZsaWNlbnNlIExJQ0VOU0UKIAljaG1vZCA3NTUgJHtERVNURElSfS91c3IvbGliLyou c28uKgogCXZta2RpciB1c3Ivc2hhcmUvZXhhbXBsZXMvb3BlbmxkYXAKLQltdiAke0RFU1RESVJ9 L2V0Yy9vcGVubGRhcC8qLntleGFtcGxlLGRlZmF1bHR9ICR7REVTVERJUn0vdXNyL3NoYXJlL2V4 YW1wbGVzL29wZW5sZGFwCisJbXYgJHtERVNURElSfS9ldGMvb3BlbmxkYXAvKi5kZWZhdWx0ICR7 REVTVERJUn0vdXNyL3NoYXJlL2V4YW1wbGVzL29wZW5sZGFwCiAJY2htb2QgMDY0NCAke0RFU1RE SVJ9L3Vzci9zaGFyZS9leGFtcGxlcy9vcGVubGRhcC8qCiB9CiAKCkZyb20gOGU5OTJkMDMwODdh YmU0YTIwNGIwMDdmZGQzNDg5ZjFmYWZjZGI4YyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAy MDIzIDAwOjI1OjM2ICswMTAwClN1YmplY3Q6IFtQQVRDSCAwMi8zOV0gY3lydXMtc2FzbDogcmV2 YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3MvY3lydXMtc2FzbC90ZW1w bGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY3lydXMtc2FzbC90ZW1wbGF0ZSBiL3NyY3BrZ3MvY3ly dXMtc2FzbC90ZW1wbGF0ZQppbmRleCBiMjU5MTUyMTM5ZmQuLmQ5NjQ2ZWQ4YTY0MiAxMDA2NDQK LS0tIGEvc3JjcGtncy9jeXJ1cy1zYXNsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvY3lydXMtc2Fz bC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2N5cnVzLXNh c2wnCiBwa2duYW1lPWN5cnVzLXNhc2wKIHZlcnNpb249Mi4xLjI3Ci1yZXZpc2lvbj05CityZXZp c2lvbj0xMAogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZGlz YWJsZS1zdGF0aWMgLS1lbmFibGUtc2hhcmVkIC0tZW5hYmxlLWNoZWNrYXBvcAogIC0tZW5hYmxl LWNyYW0gLS1lbmFibGUtZGlnZXN0IC0tZGlzYWJsZS1vdHAgLS1kaXNhYmxlLXNycAoKRnJvbSA2 YWQ4OTAxYjA2YzllYWFmODQ5ZGY2ODNjNDkzZjNhMzEwYzA2ZTY2IE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBX ZWQsIDEgRmViIDIwMjMgMDA6MjY6MDggKzAxMDAKU3ViamVjdDogW1BBVENIIDAzLzM5XSBtaXQt a3JiNTogdXBkYXRlIHRvIDEuMjAuMQoKQSByZWJ1aWxkIHRyaWdnZXJkIGJ5IHVwZGF0ZSB0byBv cGVubGRhcC0yLjYuMyBoYWQgc29tZSBlcnJvcnMgaW4gdGhlCnRlc3Qgc3VpdGUuClJlbW92ZSBw YXRjaCBmb3IgbGlicmVzc2wuCi0tLQogc3JjcGtncy9taXQta3JiNS9wYXRjaGVzL2xpYnJlc3Ns LnBhdGNoIHwgMzggLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogc3JjcGtncy9taXQta3JiNS90 ZW1wbGF0ZSAgICAgICAgICAgICAgIHwgIDYgKystLQogMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2Vy dGlvbnMoKyksIDQxIGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbWl0 LWtyYjUvcGF0Y2hlcy9saWJyZXNzbC5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbWl0LWty YjUvcGF0Y2hlcy9saWJyZXNzbC5wYXRjaCBiL3NyY3BrZ3MvbWl0LWtyYjUvcGF0Y2hlcy9saWJy ZXNzbC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNmViMGRiZmNhZjNkLi4w MDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9taXQta3JiNS9wYXRjaGVzL2xpYnJlc3NsLnBhdGNo CisrKyAvZGV2L251bGwKQEAgLTEsMzggKzAsMCBAQAotLS0tIGEvc3JjL3BsdWdpbnMvcHJlYXV0 aC9wa2luaXQvcGtpbml0X2NyeXB0b19vcGVuc3NsLmMJMjAxOS0wMS0wOCAxNzowMjozNy4wMDAw MDAwMDAgKzAxMDAKLSsrKyBiL3NyYy9wbHVnaW5zL3ByZWF1dGgvcGtpbml0L3BraW5pdF9jcnlw dG9fb3BlbnNzbC5jCTIwMTktMDUtMTEgMTY6Mjk6MzcuMDAxNDU4MDg0ICswMjAwCi1AQCAtMTg5 LDcgKzE4OSw3IEBACi0gICAgICgqX3g1MDlfcHApID0gUEtDUzdfY2VydF9mcm9tX3NpZ25lcl9p bmZvKF9wNyxfc2kpCi0gI2VuZGlmCi0gCi0tI2lmIE9QRU5TU0xfVkVSU0lPTl9OVU1CRVIgPCAw eDEwMTAwMDAwTAotKyNpZiBPUEVOU1NMX1ZFUlNJT05fTlVNQkVSIDwgMHgxMDEwMDAwMEwgfHwg ZGVmaW5lZChMSUJSRVNTTF9WRVJTSU9OX05VTUJFUikKLSAKLSAvKiAxLjEgc3RhbmRhcmRpemVz IGNvbnN0cnVjdG9yIGFuZCBkZXN0cnVjdG9yIG5hbWVzLCByZW5hbWluZwotICAqIEVWUF9NRF9D VFhfe2NyZWF0ZSxkZXN0cm95fSBhbmQgZGVwcmVjYXRpbmcgQVNOMV9TVFJJTkdfZGF0YS4gKi8K LUBAIC0zMDUzLDcgKzMwNTMsNyBAQAotICAgICByZXR1cm4gcmV0dmFsOwotIH0KLSAKLS0jaWYg T1BFTlNTTF9WRVJTSU9OX05VTUJFUiA+PSAweDEwMTAwMDAwTAotKyNpZiBPUEVOU1NMX1ZFUlNJ T05fTlVNQkVSID49IDB4MTAxMDAwMDBMIHx8IGRlZmluZWQoTElCUkVTU0xfVkVSU0lPTl9OVU1C RVIpCi0gCi0gLyoKLSAgKiBXZSBuZWVkIHRvIGRlY29kZSBEb21haW5QYXJhbWV0ZXJzIGZyb20g UkZDIDMyNzkgc2VjdGlvbiAyLjMuMy4gIFdlIHdvdWxkCi1AQCAtMzA3OSw3ICszMDc5LDcgQEAK LSBBU04xX1NFUVVFTkNFKERIdnBhcmFtcykgPSB7Ci0gICAgIEFTTjFfU0lNUExFKGludF9kaHZw YXJhbXMsIHNlZWQsIEFTTjFfQklUX1NUUklORyksCi0gICAgIEFTTjFfU0lNUExFKGludF9kaHZw YXJhbXMsIGNvdW50ZXIsIEJJR05VTSkKLS19IHN0YXRpY19BU04xX1NFUVVFTkNFX0VORF9uYW1l KGludF9kaHZwYXJhbXMsIERIdnBhcmFtcykKLSt9IEFTTjFfU0VRVUVOQ0VfRU5EX25hbWUoaW50 X2RodnBhcmFtcywgREh2cGFyYW1zKQotIAotIEFTTjFfU0VRVUVOQ0UoREh4cGFyYW1zKSA9IHsK LSAgICAgQVNOMV9TSU1QTEUoaW50X2RoeDk0Ml9kaCwgcCwgQklHTlVNKSwKLUBAIC0zMDg3LDcg KzMwODcsNyBAQAotICAgICBBU04xX09QVChpbnRfZGh4OTQyX2RoLCBxLCBCSUdOVU0pLAotICAg ICBBU04xX09QVChpbnRfZGh4OTQyX2RoLCBqLCBCSUdOVU0pLAotICAgICBBU04xX09QVChpbnRf ZGh4OTQyX2RoLCB2cGFyYW1zLCBESHZwYXJhbXMpLAotLX0gc3RhdGljX0FTTjFfU0VRVUVOQ0Vf RU5EX25hbWUoaW50X2RoeDk0Ml9kaCwgREh4cGFyYW1zKQotK30gQVNOMV9TRVFVRU5DRV9FTkRf bmFtZShpbnRfZGh4OTQyX2RoLCBESHhwYXJhbXMpCi0gCi0gc3RhdGljIERIICoKLSBkZWNvZGVf ZGhfcGFyYW1zKGNvbnN0IHVpbnQ4X3QgKnAsIHVuc2lnbmVkIGludCBsZW4pCmRpZmYgLS1naXQg YS9zcmNwa2dzL21pdC1rcmI1L3RlbXBsYXRlIGIvc3JjcGtncy9taXQta3JiNS90ZW1wbGF0ZQpp bmRleCBhNjdiYWUxOTc2NGEuLmU3NjdjZjliYTkzNCAxMDA2NDQKLS0tIGEvc3JjcGtncy9taXQt a3JiNS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL21pdC1rcmI1L3RlbXBsYXRlCkBAIC0yLDggKzIs OCBAQAogIyBpZiB0aGVyZSBpcyBhIGJ1bXAgaW4gLnNvIHZlcnNpb24sCiAjIGFsc28gdXBkYXRl IHNyY3BrZ3MvbGliZ3NzZ2x1ZS9maWxlcy9nc3NhcGlfbWVjaC5jb25mCiBwa2duYW1lPW1pdC1r cmI1Ci12ZXJzaW9uPTEuMTguMwotcmV2aXNpb249MgordmVyc2lvbj0xLjIwLjEKK3JldmlzaW9u PTEKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGhvc3RtYWtlZGVwZW5kcz0iZTJmc3Byb2dz LWRldmVsIGZsZXggcGVybCBwa2ctY29uZmlnIgogbWFrZWRlcGVuZHM9ImUyZnNwcm9ncy1kZXZl bCBsaWJsZGFwLWRldmVsIgpAQCAtMTIsNyArMTIsNyBAQCBtYWludGFpbmVyPSJPcnBoYW5lZCA8 b3JwaGFuQHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iTUlUIgogaG9tZXBhZ2U9Imh0dHA6Ly93 ZWIubWl0LmVkdS9rZXJiZXJvcyIKIGRpc3RmaWxlcz0iJHtob21lcGFnZX0vZGlzdC9rcmI1LyR7 dmVyc2lvbiUuKn0va3JiNS0ke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPWU2MTc4M2MyOTJi NWVmZDlhZmI0NWM1NTVhODBkZDI2N2FjNjdlZWJhYmNhNDIxODUzNjJiZWU2YzRmYmQ3MTkKK2No ZWNrc3VtPTcwNGFlZDQ5YjE5ZWI1YTcxNzhiMzRiMjg3MzYyMGVjMjk5ZGIwODc1MmQ2YTg1NzRm OTVkNDE4NzlhYjg4NTEKIAogcG9zdF9wYXRjaCgpIHsKIAl2c2VkIC1lICIvTERGTEFHUz0vZCIg LWkgc3JjL2J1aWxkLXRvb2xzL2tyYjUtY29uZmlnLmluCgpGcm9tIGQzYzZkYjIyNTVhNmE4N2Fh ZDg0MDM4NjdmYzFmZThlZWUxMGEzYTcgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEts YXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAw MjoxOTozMyArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMDQvMzldIGV2b2x1dGlvbi1kYXRhLXNlcnZl cjogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3MvZXZvbHV0aW9u LWRhdGEtc2VydmVyL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9u KCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1z ZXJ2ZXIvdGVtcGxhdGUgYi9zcmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZQpp bmRleCBiZjFkYjI4OGNkMTIuLjM1ZjRmMGIwMDljNyAxMDA2NDQKLS0tIGEvc3JjcGtncy9ldm9s dXRpb24tZGF0YS1zZXJ2ZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1z ZXJ2ZXIvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdldm9s dXRpb24tZGF0YS1zZXJ2ZXInCiBwa2duYW1lPWV2b2x1dGlvbi1kYXRhLXNlcnZlcgogdmVyc2lv bj0zLjQ2LjMKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBidWls ZF9oZWxwZXI9ImdpciBxZW11IgogY29uZmlndXJlX2FyZ3M9IiAtRFNZU0NPTkZfSU5TVEFMTF9E SVI9L2V0YwoKRnJvbSA5N2ZlNTVkNmY3ZDZhMWVmODUwNDFhMDFmYjRlMzc3MjMzNmE3ZjIxIE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21h aWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMDI6MjA6MTkgKzAxMDAKU3ViamVjdDogW1BB VENIIDA1LzM5XSBnbnVwZzogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNy Y3BrZ3MvZ251cGcvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24o KyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dudXBnL3RlbXBsYXRlIGIv c3JjcGtncy9nbnVwZy90ZW1wbGF0ZQppbmRleCBjN2NiZTY4OWYyM2EuLjQ2YjU5NmYwY2FjOCAx MDA2NDQKLS0tIGEvc3JjcGtncy9nbnVwZy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dudXBnL3Rl bXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ251cGcnCiBwa2du YW1lPWdudXBnCiB2ZXJzaW9uPTIuNC4wCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiAjIFdlJ3Jl IGJ1aWxkaW5nIG91dHNpZGUgb2YgdGhlIHNvdXJjZSB0cmVlLCBiZWNhdXNlIHVwc3RyZWFtIHRv bGQgdXMgdG86CiAjIGh0dHBzOi8vZGV2LmdudXBnLm9yZy9UNjMxMyMxNjYzMzkKIGJ1aWxkX3dy a3NyYz1idWlsZAoKRnJvbSBkODg4ZjllYTQ0ZThlYTIwYjhlNzI1ZmMyZDRkY2JmZWM4Yzc0NTgx IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5A Z21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTU6MTM6MjUgKzAxMDAKU3ViamVjdDog W1BBVENIIDA2LzM5XSBGcmVlUkFESVVTOiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUK Ci0tLQogc3JjcGtncy9GcmVlUkFESVVTL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQs IDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9GcmVl UkFESVVTL3RlbXBsYXRlIGIvc3JjcGtncy9GcmVlUkFESVVTL3RlbXBsYXRlCmluZGV4IGI0M2Fh YTFmMmU2ZS4uMTE2MGM0Y2NiY2NjIDEwMDY0NAotLS0gYS9zcmNwa2dzL0ZyZWVSQURJVVMvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9GcmVlUkFESVVTL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnRnJlZVJBRElVUycKIHBrZ25hbWU9RnJlZVJBRElVUwogdmVy c2lvbj0zLjAuMjMKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWdudS1jb25m aWd1cmUKIG1ha2VkZXBlbmRzPSJ0YWxsb2MtZGV2ZWwgb3BlbnNzbC1kZXZlbCBtaXQta3JiNS1k ZXZlbCBwYW0tZGV2ZWwgXAogIGxpYm1hcmlhZGJjbGllbnQtZGV2ZWwgcG9zdGdyZXNxbC1saWJz LWRldmVsIGpzb24tYy1kZXZlbCIKCkZyb20gMjBmOWYxMDNkMzgzMGIyMTk1Y2ZkYmE1M2VkOTZm ODU5N2E3MjViNSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGts YXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE1OjE0OjMxICswMTAw ClN1YmplY3Q6IFtQQVRDSCAwNy8zOV0gYWxwaW5lOiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1 ZHBhdGUKCmFsc28gZG9uJ3QgaW5zdGFsbCBBcGFjaGUtMi4wIGxpY2Vuc2UKLS0tCiBzcmNwa2dz L2FscGluZS90ZW1wbGF0ZSB8IDYgKy0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24o KyksIDUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hbHBpbmUvdGVtcGxhdGUg Yi9zcmNwa2dzL2FscGluZS90ZW1wbGF0ZQppbmRleCAwMmM0Zjk0NDUxNWMuLjAyMjk1ODk4M2Ix MyAxMDA2NDQKLS0tIGEvc3JjcGtncy9hbHBpbmUvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9hbHBp bmUvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdhbHBpbmUn CiBwa2duYW1lPWFscGluZQogdmVyc2lvbj0yLjI2Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBf Z2l0aGFzaD05NzI2YzA5OGE3MzllZGZkY2E2MjE4YmM1ZGVlMTA0YzMxMDk1N2U5CiBfZ2l0c2hv cnQ9IiR7X2dpdGhhc2g6MDo3fSIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKQEAgLTI5LDcg KzI5LDMgQEAgZG9fYnVpbGQoKSB7CiAJCUNDPSIkQlVJTERfQ0MiIENGTEFHUz0iJEJVSUxEX0NG TEFHUyIgQ1BQRkxBR1M9IExERkxBR1M9IiRCVUlMRF9MREZMQUdTIgogCW1ha2UgJHttYWtlam9i c30gYWxsIENDPSIkQ0MiCiB9Ci0KLXBvc3RfaW5zdGFsbCgpIHsKLQl2bGljZW5zZSBOT1RJQ0UK LX0KCkZyb20gMWFkNDk3MmMwNWIyZDlkNjU4YmI0ZjBhZGNmZDc0Nzg1MWFjZDEzZiBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNv bT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE1OjE4OjI3ICswMTAwClN1YmplY3Q6IFtQQVRDSCAw OC8zOV0gYW5qdXRhOiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUKCmFsc28gZml4IGRl dGVjdGlvbiBvZiB3ZWJraXQyZ3RrCi0tLQogc3JjcGtncy9hbmp1dGEvcGF0Y2hlcy9maXgtd2Vi a2l0Mmd0ay1kZXRlY3Rpb24ucGF0Y2ggfCAxMSArKysrKysrKysrKwogc3JjcGtncy9hbmp1dGEv dGVtcGxhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiAyIGZpbGVz IGNoYW5nZWQsIDEzIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAx MDA2NDQgc3JjcGtncy9hbmp1dGEvcGF0Y2hlcy9maXgtd2Via2l0Mmd0ay1kZXRlY3Rpb24ucGF0 Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2FuanV0YS9wYXRjaGVzL2ZpeC13ZWJraXQyZ3RrLWRl dGVjdGlvbi5wYXRjaCBiL3NyY3BrZ3MvYW5qdXRhL3BhdGNoZXMvZml4LXdlYmtpdDJndGstZGV0 ZWN0aW9uLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uMTdj MGRiOTExY2JhCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9hbmp1dGEvcGF0Y2hlcy9maXgt d2Via2l0Mmd0ay1kZXRlY3Rpb24ucGF0Y2gKQEAgLTAsMCArMSwxMSBAQAorLS0tIGEvY29uZmln dXJlLmFjCTIwMTktMDktMDggMTk6MzM6NTcuMDAwMDAwMDAwICswMjAwCisrKysgYi9jb25maWd1 cmUuYWMJMjAyMy0wMi0wMSAyMjo0MTo1NC42Mzk5NDM4OTcgKzAxMDAKK0BAIC0yNDYsNyArMjQ2 LDcgQEAKKyAJCSp3ZWJraXQyZ3RrLTMuMCopCisgCQkJQUNfREVGSU5FKFtIQVZFX1dFQktJVDJd LCBbMV0sIFtEZWZpbmVkIGlmIGRldmhlbHAgaXMgYnVpbHQgYWdhaW5zdCB3ZWJraXRndGsyXSkK KyAJCQk7OworLQkJKndlYmtpdDJndGstNC4wKikKKysJCSp3ZWJraXQyZ3RrLTQuKikKKyAJCQlB Q19ERUZJTkUoW0hBVkVfV0VCS0lUMl0sIFsxXSwgW0RlZmluZWQgaWYgZGV2aGVscCBpcyBidWls dCBhZ2FpbnN0IHdlYmtpdGd0azJdKQorIAkJCTs7CisgCQllc2FjCmRpZmYgLS1naXQgYS9zcmNw a2dzL2FuanV0YS90ZW1wbGF0ZSBiL3NyY3BrZ3MvYW5qdXRhL3RlbXBsYXRlCmluZGV4IGI0NmQ1 OGFlYWZlMy4uMDc3N2UxYjkyZTU3IDEwMDY0NAotLS0gYS9zcmNwa2dzL2FuanV0YS90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL2FuanV0YS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ2FuanV0YScKIHBrZ25hbWU9YW5qdXRhCiB2ZXJzaW9uPTMuMzQuMAotcmV2 aXNpb249NAorcmV2aXNpb249NQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogYnVpbGRfaGVs cGVyPSJnaXIgcWVtdSIKIGNvbmZpZ3VyZV9hcmdzPSItLWRpc2FibGUtY29tcGlsZS13YXJuaW5n cyAtLWRpc2FibGUtc2NoZW1hcy1jb21waWxlCkBAIC0xNCw3ICsxNCw3IEBAIGhvc3RtYWtlZGVw ZW5kcz0icGtnLWNvbmZpZyBpbnRsdG9vbCBmbGV4IGl0c3Rvb2wgcHl0aG9uMyBhdXRvZ2VuIGds aWItZGV2ZWwKIG1ha2VkZXBlbmRzPSJndGtzb3VyY2V2aWV3LWRldmVsIGxpYnhtbDItZGV2ZWwg dnRlMy1kZXZlbCBnanMtZGV2ZWwKICBsaWJ4c2x0LWRldmVsIGdsYWRlMy1kZXZlbCBncmFwaHZp ei1kZXZlbCB2YWxhLWRldmVsCiAgbGliZ2RhLWRldmVsIGRldmhlbHAtZGV2ZWwgc3FsaXRlLWRl dmVsIGFwci11dGlsLWRldmVsCi0gbmVvbi1kZXZlbCBzdWJ2ZXJzaW9uLWRldmVsIHB5dGhvbjMt ZGV2ZWwgZ2RsLWRldmVsIgorIG5lb24tZGV2ZWwgc3VidmVyc2lvbi1kZXZlbCBweXRob24zLWRl dmVsIGdkbC1kZXZlbCB3ZWJraXQyZ3RrLWRldmVsIgogZGVwZW5kcz0iYXV0b2dlbiIKIHNob3J0 X2Rlc2M9IkdOT01FIEludGVncmF0ZWQgRGV2ZWxvcG1lbnQgRW52aXJvbm1lbnQiCiBtYWludGFp bmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgoKRnJvbSAzMGVlMzk4YjE2 ZDU5NTliZGIzN2M3YmVkMmUyYWQ0ZWQ1NTI3NjRkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmVi IDIwMjMgMTU6MTk6NDUgKzAxMDAKU3ViamVjdDogW1BBVENIIDA5LzM5XSBhcGFjaGU6IHJldmJ1 bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dzL2FwYWNoZS90ZW1wbGF0ZSB8 IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvYXBhY2hlL3RlbXBsYXRlIGIvc3JjcGtncy9hcGFjaGUvdGVtcGxh dGUKaW5kZXggNjI5YWQxOGIzNGE1Li5hNjYxYmY3MWQ1YzEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mv YXBhY2hlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvYXBhY2hlL3RlbXBsYXRlCkBAIC0xLDcgKzEs NyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnYXBhY2hlJwogcGtnbmFtZT1hcGFjaGUKIHZlcnNp b249Mi40LjU0Ci1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1nbnUtY29uZmln dXJlCiBjb25maWd1cmVfYXJncz0iLS1wcmVmaXg9IC0tc2JpbmRpcj0vdXNyL2JpbiAtLWVuYWJs ZS1waWUgLS1lbmFibGUtbW9kdWxlcz1hbGwKICAtLWVuYWJsZS1tb2RzLXNoYXJlZD1hbGwgLS1l bmFibGUtYXV0aG4tZGJtIC0tZW5hYmxlLWF1dGhuLWFub24KCkZyb20gMzUyZGExZWMxMDJmZjcy NzMwYWFlN2YzZjE0ZTNkZDBkM2RiZGE5ZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog S2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIz IDE1OjI1OjMzICswMTAwClN1YmplY3Q6IFtQQVRDSCAxMC8zOV0gYXByLXV0aWw6IHVwZGF0ZSB0 byAxLjYuMgoKZmFpbGVkIHRvIGRvd25sb2FkIGRpc3RmaWxlcyB3aGVuIHJldmJ1bXBpbmcKCi0g dXBkYXRlIG1pcnJvcgotIHJlbW92ZSB1cHN0cmVhbWVkIHBhdGNoCi0tLQogc3JjcGtncy9hcHIt dXRpbC9wYXRjaGVzL215c3FsLnBhdGNoIHwgMTUgLS0tLS0tLS0tLS0tLS0tCiBzcmNwa2dzL2Fw ci11dGlsL3RlbXBsYXRlICAgICAgICAgICAgfCAgOCArKysrLS0tLQogMiBmaWxlcyBjaGFuZ2Vk LCA0IGluc2VydGlvbnMoKyksIDE5IGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNy Y3BrZ3MvYXByLXV0aWwvcGF0Y2hlcy9teXNxbC5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv YXByLXV0aWwvcGF0Y2hlcy9teXNxbC5wYXRjaCBiL3NyY3BrZ3MvYXByLXV0aWwvcGF0Y2hlcy9t eXNxbC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYmYxNzkyZWQ2ZWJiLi4w MDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9hcHItdXRpbC9wYXRjaGVzL215c3FsLnBhdGNoCisr KyAvZGV2L251bGwKQEAgLTEsMTUgKzAsMCBAQAotZml4ZXM6IGh0dHBzOi8vZ2l0aHViLmNvbS92 b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvaXNzdWVzLzM5NTEwCi10YWtlbiBmcm9tIHVwc3RyZWFt OiBodHRwczovL3N2bi5hcGFjaGUub3JnL3ZpZXd2Yy9hcHIvYXByL3RydW5rL2RiZC9hcHJfZGJk X215c3FsLmM/cjE9MTg3MjA1OSZyMj0xODcyMDYwJmRpZmZfZm9ybWF0PWgKLQotLS0tIGEvZGJk L2Fwcl9kYmRfbXlzcWwuYwotKysrIGIvZGJkL2Fwcl9kYmRfbXlzcWwuYwotQEAgLTEyNjIsNyAr MTI2Miw5IEBACi0gCi0gc3RhdGljIHZvaWQgZGJkX215c3FsX2luaXQoYXByX3Bvb2xfdCAqcG9v bCkKLSB7Ci0rI2lmIE1ZU1FMX1ZFUlNJT05fSUQgPCAxMDAwMDAKLSAgICAgbXlfaW5pdCgpOwot KyNlbmRpZgotICAgICBteXNxbF90aHJlYWRfaW5pdCgpOwotIAotICAgICAvKiBGSVhNRTogdGhp cyBpcyBhIGd1ZXNzOyBmaW5kIG91dCB3aGF0IGl0IHJlYWxseSBkb2VzICovCmRpZmYgLS1naXQg YS9zcmNwa2dzL2Fwci11dGlsL3RlbXBsYXRlIGIvc3JjcGtncy9hcHItdXRpbC90ZW1wbGF0ZQpp bmRleCBmMWNkNDM2MzM2NWEuLjVlOTAwOTg1MWJhNCAxMDA2NDQKLS0tIGEvc3JjcGtncy9hcHIt dXRpbC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2Fwci11dGlsL3RlbXBsYXRlCkBAIC0xLDcgKzEs NyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnYXByLXV0aWwnCiBwa2duYW1lPWFwci11dGlsCi12 ZXJzaW9uPTEuNi4xCi1yZXZpc2lvbj0xMwordmVyc2lvbj0xLjYuMgorcmV2aXNpb249MQogYnVp bGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9IgogIC0td2l0aC1wZ3NxbCAt LXdpdGgtbGRhcApAQCAtMTcsOCArMTcsOCBAQCBzaG9ydF9kZXNjPSJBcGFjaGUgUG9ydGFibGUg UnVudGltZSBVdGlsaXR5IExpYnJhcnkiCiBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZv aWRsaW51eC5vcmc+IgogbGljZW5zZT0iQXBhY2hlLTIuMCIKIGhvbWVwYWdlPSJodHRwczovL2Fw ci5hcGFjaGUub3JnLyIKLWRpc3RmaWxlcz0iaHR0cHM6Ly93d3cuYXBhY2hlLm9yZy9kaXN0L2Fw ci8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLmJ6MiIKLWNoZWNrc3VtPWQzZTEyZjdiNmFkMTI2 ODc1NzJhM2EzOTQ3NTU0NWEwNzI2MDhmNGJhMDNhNmNlOGEzNzc4ZjYwN2RkMDAzNWIKK2Rpc3Rm aWxlcz0iaHR0cHM6Ly9kb3dubG9hZHMuYXBhY2hlLm9yZy9hcHIvJHtwa2duYW1lfS0ke3ZlcnNp b259LnRhci5iejIiCitjaGVja3N1bT00ZmU1NzQ0M2E3OTA1MDI3ZTEzNzA3Yzg3NWM1ZGU2Zjlm YzZlMmU1YTI3MjVkNjk1YjI1YThhMTBjMmQyN2UwCiAjIGZhaWxzIHRvIGJ1aWxkIHRlc3RzCiBt YWtlX2NoZWNrPW5vCiAKCkZyb20gMGUwNmJlZDg1NDk0ODdkN2M2MmUxZDg0M2VkMzRkZWQ4MmVm YjMxNSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21v ZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE1OjI2OjU0ICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAxMS8zOV0gYXVkaXQ6IHJldmJ1bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoK LS0tCiBzcmNwa2dzL2F1ZGl0L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5z ZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hdWRpdC90ZW1w bGF0ZSBiL3NyY3BrZ3MvYXVkaXQvdGVtcGxhdGUKaW5kZXggN2UxZTRkYWIyZjQ1Li4zMzRkNTY3 ZjM3ODEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYXVkaXQvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9h dWRpdC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2F1ZGl0 JwogcGtnbmFtZT1hdWRpdAogdmVyc2lvbj0zLjAuMwotcmV2aXNpb249NAorcmV2aXNpb249NQog YnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tbGliZGlyPS91c3Iv bGliIC0tZW5hYmxlLXNoYXJlZD1hdWRpdCAtLWVuYWJsZS1nc3NhcGkta3JiNQogIC0td2l0aC1h cHBhcm1vciAtLXdpdGgtbGliY2FwLW5nIC0td2l0aC1weXRob24zIgoKRnJvbSBjM2JmOTIyNDlj N2JiM2RlYTRjYzhhYzU3ZDg1NjEyMjExMzQxZDMwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmVi IDIwMjMgMTU6Mjg6MTUgKzAxMDAKU3ViamVjdDogW1BBVENIIDEyLzM5XSBhdXRvZnM6IHJldmJ1 bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dzL2F1dG9mcy90ZW1wbGF0ZSB8 IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvYXV0b2ZzL3RlbXBsYXRlIGIvc3JjcGtncy9hdXRvZnMvdGVtcGxh dGUKaW5kZXggYTlhYmM2MGU2NGU4Li41ZjYzZDBhZDkyY2EgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mv YXV0b2ZzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvYXV0b2ZzL3RlbXBsYXRlCkBAIC0xLDcgKzEs NyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnYXV0b2ZzJwogcGtnbmFtZT1hdXRvZnMKIHZlcnNp b249NS4xLjgKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1 cmUKIG1ha2VfYnVpbGRfYXJncz0iRE9OVFNUUklQPTEiCiBjb25maWd1cmVfYXJncz0iLS13aXRo LWxpYnRpcnBjIC0td2l0aC1tYXBkaXI9L2V0Yy9hdXRvZnMgLS1zYmluZGlyPS91c3IvYmluIgoK RnJvbSBhNzg0ZGNmYjdmOWMyNzg3NGRjNDI4MTRjNGJkNzVlYzIxODU5ZGE2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpE YXRlOiBXZWQsIDEgRmViIDIwMjMgMTU6Mjk6MDQgKzAxMDAKU3ViamVjdDogW1BBVENIIDEzLzM5 XSBjbGF3cy1tYWlsOiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtn cy9jbGF3cy1tYWlsL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9u KCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9jbGF3cy1tYWlsL3RlbXBs YXRlIGIvc3JjcGtncy9jbGF3cy1tYWlsL3RlbXBsYXRlCmluZGV4IDBmZDg3ZGY3ODAzZS4uYjk4 OWViZjFkOGU0IDEwMDY0NAotLS0gYS9zcmNwa2dzL2NsYXdzLW1haWwvdGVtcGxhdGUKKysrIGIv c3JjcGtncy9jbGF3cy1tYWlsL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnY2xhd3MtbWFpbCcKIHBrZ25hbWU9Y2xhd3MtbWFpbAogdmVyc2lvbj00LjEuMQot cmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmln dXJlX2FyZ3M9Ii0tZGlzYWJsZS1zdGF0aWMgLS1kaXNhYmxlLXB5dGhvbi1wbHVnaW4gLS1kaXNh YmxlLXBlcmwtcGx1Z2luCiAgLS1lbmFibGUtZW5jaGFudCAtLWVuYWJsZS1nbnV0bHMiCgpGcm9t IDZmYWMyNjc4NzY2YzA5NzVkNTRiZTUxN2E3NTM3YjUyMTRjYzYzM2UgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6 IFdlZCwgMSBGZWIgMjAyMyAxNTozMToxNiArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTQvMzldIGRv dmVjb3Q6IHJldmJ1bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dzL2RvdmVj b3QvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVs ZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2RvdmVjb3QvdGVtcGxhdGUgYi9zcmNwa2dz L2RvdmVjb3QvdGVtcGxhdGUKaW5kZXggNDVmNDEwNDkzNDM2Li43ODdiMjliNmVhYjggMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvZG92ZWNvdC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2RvdmVjb3QvdGVt cGxhdGUKQEAgLTIsNyArMiw3IEBACiAjIHJldmJ1bXAgZG92ZWNvdC1wbHVnaW4tcGlnZW9uaG9s ZSB3aGVuIHVwZGF0aW5nIGRvdmVjb3QhCiBwa2duYW1lPWRvdmVjb3QKIHZlcnNpb249Mi4zLjIw Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25m aWd1cmVfYXJncz0iLS13aXRoLW1vZHVsZWRpcj0vdXNyL2xpYi9kb3ZlY290L21vZHVsZXMgLS13 aXRoLXNxbD1wbHVnaW4KICAtLWRpc2FibGUtc3RhdGljIC0td2l0aC1wYW0gLS13aXRoLW15c3Fs IC0td2l0aC1wZ3NxbCAtLXdpdGgtbHVjZW5lCgpGcm9tIGI1YmM5NWZjZmZlZTYyY2RjOWFlNGFk YWY1NGQ4Zjc4OTg1NzI5MzMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1v ZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNTozMjoz MiArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTUvMzldIGRvdmVjb3QtcGx1Z2luLXBpZ2VvbmhvbGU6 IHJldmJ1bXAgZHVlIHRvIG9wZW5sZGFwCiB1cGRhdGUKCi0tLQogc3JjcGtncy9kb3ZlY290LXBs dWdpbi1waWdlb25ob2xlL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0 aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9kb3ZlY290LXBsdWdp bi1waWdlb25ob2xlL3RlbXBsYXRlIGIvc3JjcGtncy9kb3ZlY290LXBsdWdpbi1waWdlb25ob2xl L3RlbXBsYXRlCmluZGV4IGFjMTMzMjFlNDUwOC4uZTRkMTY4Y2M0Zjc4IDEwMDY0NAotLS0gYS9z cmNwa2dzL2RvdmVjb3QtcGx1Z2luLXBpZ2VvbmhvbGUvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9k b3ZlY290LXBsdWdpbi1waWdlb25ob2xlL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAnZG92ZWNvdC1wbHVnaW4tcGlnZW9uaG9sZScKIHBrZ25hbWU9ZG92ZWNv dC1wbHVnaW4tcGlnZW9uaG9sZQogdmVyc2lvbj0wLjUuMjAKLXJldmlzaW9uPTEKK3JldmlzaW9u PTIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSItLXByZWZpeD0v dXNyCiAgLS13aXRoLWRvdmVjb3Q9JHtYQlBTX0NST1NTX0JBU0V9L3Vzci9saWIvZG92ZWNvdAoK RnJvbSA1MzQ5ODc2MTg0YTQ1NzMwYWRkYWIxOWQwODRkNjBlM2Y1MDgwNGQ5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpE YXRlOiBXZWQsIDEgRmViIDIwMjMgMTU6MzM6NDUgKzAxMDAKU3ViamVjdDogW1BBVENIIDE2LzM5 XSBldm9sdXRpb246IHJldmJ1bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dz L2V2b2x1dGlvbi90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigr KSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXZvbHV0aW9uL3RlbXBsYXRl IGIvc3JjcGtncy9ldm9sdXRpb24vdGVtcGxhdGUKaW5kZXggYjlhNjNhZjA5OTU1Li41YmQyOTE3 M2FjMjYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZXZvbHV0aW9uL3RlbXBsYXRlCisrKyBiL3NyY3Br Z3MvZXZvbHV0aW9uL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAnZXZvbHV0aW9uJwogcGtnbmFtZT1ldm9sdXRpb24KIHZlcnNpb249My40Ni4zCi1yZXZpc2lv bj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1jbWFrZQogYnVpbGRfaGVscGVyPSJxZW11Igog Y29uZmlndXJlX2FyZ3M9Ii1EU1lTQ09ORl9JTlNUQUxMX0RJUj0vZXRjCgpGcm9tIDhkZTFjYmQ3 ZGRiN2I4ZDFiZGQ4MTVlZmU1MzlhMTJmZmEzNTA4MGQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBG ZWIgMjAyMyAxNTozNToyNyArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTcvMzldIGdudXBnMTogcmV2 YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3MvZ251cGcxL3RlbXBsYXRl IHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9nbnVwZzEvdGVtcGxhdGUgYi9zcmNwa2dzL2dudXBnMS90ZW1w bGF0ZQppbmRleCBjMGM4Mzc0Nzc5MzkuLmU4NjE0NzAwNmFhMSAxMDA2NDQKLS0tIGEvc3JjcGtn cy9nbnVwZzEvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbnVwZzEvdGVtcGxhdGUKQEAgLTEsNyAr MSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbnVwZzEnCiBwa2duYW1lPWdudXBnMQogdmVy c2lvbj0xLjQuMjMKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWdudS1jb25m aWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSItLWVuYWJsZS10aHJlYWRzPXBvc2l4IC0tZW5hYmxlLW5v ZXhlY3N0YWNrCiAgZ251cGdfY3ZfcmVnZXhfYnJva2VuPW5vIgoKRnJvbSBhYTU2MGYxNTI5Nzc2 NmQxNTQyZTkwNzkwMGM4ZTJhYWYwNzFkZjkwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIw MjMgMTU6MzY6NTAgKzAxMDAKU3ViamVjdDogW1BBVENIIDE4LzM5XSBrbGRhcDogcmV2YnVtcCBk dWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3Mva2xkYXAvdGVtcGxhdGUgfCAyICst CiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2tsZGFwL3RlbXBsYXRlIGIvc3JjcGtncy9rbGRhcC90ZW1wbGF0ZQppbmRl eCBjNGY2YWNkYjg3ZGIuLjA0NDM5YmZkMjJjMSAxMDA2NDQKLS0tIGEvc3JjcGtncy9rbGRhcC90 ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2tsZGFwL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAna2xkYXAnCiBwa2duYW1lPWtsZGFwCiB2ZXJzaW9uPTIyLjEyLjEK LXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBob3N0bWFrZWRlcGVu ZHM9ImV4dHJhLWNtYWtlLW1vZHVsZXMgcXQ1LXFtYWtlIHF0NS1ob3N0LXRvb2xzIHB5dGhvbjMK ICBnZXR0ZXh0IGtjb3JlYWRkb25zIGtkb2N0b29scyIKCkZyb20gODRhMDIzNGNiNTk3YWQ2ZDFm ODJlZDEzZmI4Nzc4ODI1M2NmYmQzZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xh cmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE1 OjM3OjI3ICswMTAwClN1YmplY3Q6IFtQQVRDSCAxOS8zOV0gbGRhcHZpOiByZXZidW1wIGR1ZSB0 byBvcGVubGRhcCB1cGRhdGUKCmFsc28gZml4IHNvbWUgbGludGluZyBwcm9ibGVtcwotLS0KIHNy Y3BrZ3MvbGRhcHZpL3RlbXBsYXRlIHwgOCArKysrLS0tLQogMSBmaWxlIGNoYW5nZWQsIDQgaW5z ZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xkYXB2aS90 ZW1wbGF0ZSBiL3NyY3BrZ3MvbGRhcHZpL3RlbXBsYXRlCmluZGV4IDFkZGEzYzJhZTZlOC4uODg0 MDFiNzIyMTk3IDEwMDY0NAotLS0gYS9zcmNwa2dzL2xkYXB2aS90ZW1wbGF0ZQorKysgYi9zcmNw a2dzL2xkYXB2aS90ZW1wbGF0ZQpAQCAtMSwxNSArMSwxNSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAnbGRhcHZpJwogcGtnbmFtZT1sZGFwdmkKIHZlcnNpb249MS43Ci1yZXZpc2lvbj0xMQorcmV2 aXNpb249MTIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSItLXdp dGgtc2hhIgotbWFpbnRhaW5lcj0iTGVhaCBOZXVraXJjaGVuIDxsZWFoQHZ1eHUub3JnPiIKIGhv c3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyIKIG1ha2VkZXBlbmRzPSJuY3Vyc2VzLWRldmVsIHJl YWRsaW5lLWRldmVsIGxpYnNhc2wtZGV2ZWwgcG9wdC1kZXZlbCBsaWJsZGFwLWRldmVsIGdsaWIt ZGV2ZWwiCi1saWNlbnNlPSJHUEwtMiIKK3Nob3J0X2Rlc2M9IkludGVyYWN0aXZlIExEQVAgY2xp ZW50IGZvciBVbml4IHRlcm1pbmFscyIKK21haW50YWluZXI9IkxlYWggTmV1a2lyY2hlbiA8bGVh aEB2dXh1Lm9yZz4iCitsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHA6 Ly93d3cubGljaHRlYmxhdS5jb20vbGRhcHZpLyIKLXNob3J0X2Rlc2M9IkFuIGludGVyYWN0aXZl IExEQVAgY2xpZW50IGZvciBVbml4IHRlcm1pbmFscyIKIGRpc3RmaWxlcz0iaHR0cDovL3d3dy5s aWNodGVibGF1LmNvbS9kb3dubG9hZC9sZGFwdmktJHt2ZXJzaW9ufS50YXIuZ3oiCiBjaGVja3N1 bT02ZjYyZTkyZDIwZmYyYWMwZDA2MTI1MDI0YTkxNGI4NjIyZTViOGEwYTBjMmQzOTBiZjNlNzk5 MGNiZDJlMTUzCiAKCkZyb20gNjJlNWQ1YmUyNDIzOGIzZTQwMzBhODI1NzA1YTM1ZGY0ZDRhNmQw OCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGlu QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE1OjQwOjM0ICswMTAwClN1YmplY3Q6 IFtQQVRDSCAyMC8zOV0gbmZzLXV0aWxzOiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUK Ci0tLQogc3JjcGtncy9uZnMtdXRpbHMvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwg MSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL25mcy11 dGlscy90ZW1wbGF0ZSBiL3NyY3BrZ3MvbmZzLXV0aWxzL3RlbXBsYXRlCmluZGV4IDI1MmE3MzU1 YjY4My4uMWVhMjM3ODFjYWZmIDEwMDY0NAotLS0gYS9zcmNwa2dzL25mcy11dGlscy90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL25mcy11dGlscy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ25mcy11dGlscycKIHBrZ25hbWU9bmZzLXV0aWxzCiB2ZXJzaW9uPTIu Ni4yCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBj b25maWd1cmVfYXJncz0iLS13aXRoLXN0YXRkdXNlcj1ub2JvZHkgLS1lbmFibGUtZ3NzIC0tZW5h YmxlLW5mc3Y0CiAgLS13aXRoLXN0YXRlZGlyPS92YXIvbGliL25mcyAtLWVuYWJsZS1saWJtb3Vu dC1tb3VudCAtLWVuYWJsZS1zdmNnc3MKCkZyb20gNDdiZmVhYzFiMWFmMjBhNDUzYzA0N2E2MTA0 OTg3YTZlOGJkY2FhNiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4g PGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE1OjQxOjMxICsw MTAwClN1YmplY3Q6IFtQQVRDSCAyMS8zOV0gbGlicmVvZmZpY2U6IHJldmJ1bXAgZHVlIHRvIG9w ZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dzL2xpYnJlb2ZmaWNlL3RlbXBsYXRlIHwgMiArLQog MSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9saWJyZW9mZmljZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvbGlicmVvZmZpY2UvdGVt cGxhdGUKaW5kZXggMzEzZDMyYTQ3ZmFkLi5lOWRmYzU0NDMyYWQgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvbGlicmVvZmZpY2UvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9saWJyZW9mZmljZS90ZW1wbGF0 ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2xpYnJlb2ZmaWNlJwogcGtn bmFtZT1saWJyZW9mZmljZQogdmVyc2lvbj03LjQuMy4yCi1yZXZpc2lvbj0xCityZXZpc2lvbj0y CiBidWlsZF9zdHlsZT1tZXRhCiBtYWtlX2J1aWxkX3RhcmdldD0iYnVpbGQiCiBub2Nyb3NzPSJT ZXZlcmFsIGRlcGVuZGVuY2llcyBhcmUgbm9jcm9zcz15ZXMiCgpGcm9tIGNkZGNmOTgzNzA2NTdh YjJmMGJmNjBkZGFjY2IzNWZhMWI4NWViYzMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IEtsYXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAy MyAxNTo0NTo1MSArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMjIvMzldIHNhbWJhOiByZXZidW1wIGR1 ZSB0byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtncy9zYW1iYS90ZW1wbGF0ZSB8IDIgKy0K IDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdp dCBhL3NyY3BrZ3Mvc2FtYmEvdGVtcGxhdGUgYi9zcmNwa2dzL3NhbWJhL3RlbXBsYXRlCmluZGV4 IDNiYTkzMjY4OTczZC4uM2UxMTk5YjcwYzVlIDEwMDY0NAotLS0gYS9zcmNwa2dzL3NhbWJhL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3Mvc2FtYmEvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdzYW1iYScKIHBrZ25hbWU9c2FtYmEKIHZlcnNpb249NC4xNC4xMgot cmV2aXNpb249MgorcmV2aXNpb249MwogYnVpbGRfc3R5bGU9d2FmMwogYnVpbGRfaGVscGVyPSJx ZW11IgogY29uZmlndXJlX3NjcmlwdD0iYnVpbGR0b29scy9iaW4vd2FmIgoKRnJvbSBjOWE2ZjU0 ZGI0ZjEzOWRhZjRmYTZmYWNhMTc4N2UxNDJhODI2ZDM0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEg RmViIDIwMjMgMTU6NTE6MjQgKzAxMDAKU3ViamVjdDogW1BBVENIIDIzLzM5XSBsaWdodHRwOiBy ZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtncy9saWdodHRwZC90ZW1w bGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGlnaHR0cGQvdGVtcGxhdGUgYi9zcmNwa2dzL2xpZ2h0 dHBkL3RlbXBsYXRlCmluZGV4IGZjODRkOTQwMDc0OS4uYzY4OGFhY2EzMWY3IDEwMDY0NAotLS0g YS9zcmNwa2dzL2xpZ2h0dHBkL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbGlnaHR0cGQvdGVtcGxh dGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdsaWdodHRwZCcKIHBrZ25h bWU9bGlnaHR0cGQKIHZlcnNpb249MS40LjY4Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWls ZF9zdHlsZT1tZXNvbgogY29uZmlndXJlX2FyZ3M9Ii1Ed2l0aF9icm90bGk9ZGlzYWJsZWQgLUR3 aXRoX2J6aXA9ZGlzYWJsZWQKICAtRHdpdGhfa3JiNT1lbmFibGVkIC1Ed2l0aF9sZGFwPWVuYWJs ZWQKCkZyb20gOTEyMTQ2ZjRlODAyY2QzODNjYzA1ZTY1Y2ZmYjE3YmY1ZmVlOTViMiBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNv bT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE1OjUzOjUzICswMTAwClN1YmplY3Q6IFtQQVRDSCAy NC8zOV0gbG9nNGN4eDogdXBkYXRlIHRvIDEuMC4wCgotIGZpeCBhIGxpbnRpbmcgaXNzdWUKLSBm aXggc3VicGFjYWtnZQotLS0KIC4uLi9wYXRjaGVzLzEwMC1idWdmaXgtTE9HQ1hYLTI4NC5wYXRj aCAgICAgICB8IDE3IC0tLS0KIC4uLi9wYXRjaGVzLzE1MC1idWdmaXgtTE9HQ1hYLTM2NS5wYXRj aCAgICAgICB8IDE5IC0tLS0tCiBzcmNwa2dzL2xvZzRjeHgvcGF0Y2hlcy8xNzAtZ2NjNi1maXgu cGF0Y2ggICAgfCA4MCAtLS0tLS0tLS0tLS0tLS0tLS0tCiAuLi4vcGF0Y2hlcy8xODAtZ2NjLWZp eC10ZXN0c3VpdGUucGF0Y2ggICAgICAgfCAyNSAtLS0tLS0KIC4uLi9sb2c0Y3h4L3BhdGNoZXMv bWlzc2luZy1pbmNsdWRlcy5wYXRjaCAgICB8IDM4IC0tLS0tLS0tLQogc3JjcGtncy9sb2c0Y3h4 L3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAgIHwgMTMgKystCiA2IGZpbGVzIGNoYW5nZWQs IDYgaW5zZXJ0aW9ucygrKSwgMTg2IGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNy Y3BrZ3MvbG9nNGN4eC9wYXRjaGVzLzEwMC1idWdmaXgtTE9HQ1hYLTI4NC5wYXRjaAogZGVsZXRl IG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbG9nNGN4eC9wYXRjaGVzLzE1MC1idWdmaXgtTE9HQ1hYLTM2 NS5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbG9nNGN4eC9wYXRjaGVzLzE3MC1n Y2M2LWZpeC5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbG9nNGN4eC9wYXRjaGVz LzE4MC1nY2MtZml4LXRlc3RzdWl0ZS5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mv bG9nNGN4eC9wYXRjaGVzL21pc3NpbmctaW5jbHVkZXMucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNw a2dzL2xvZzRjeHgvcGF0Y2hlcy8xMDAtYnVnZml4LUxPR0NYWC0yODQucGF0Y2ggYi9zcmNwa2dz L2xvZzRjeHgvcGF0Y2hlcy8xMDAtYnVnZml4LUxPR0NYWC0yODQucGF0Y2gKZGVsZXRlZCBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IGZjZmYzMzBmMzZkNy4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3Br Z3MvbG9nNGN4eC9wYXRjaGVzLzEwMC1idWdmaXgtTE9HQ1hYLTI4NC5wYXRjaAorKysgL2Rldi9u dWxsCkBAIC0xLDE3ICswLDAgQEAKLSMhIC9iaW4vc2ggL3Vzci9zaGFyZS9kcGF0Y2gvZHBhdGNo LXJ1bgotIyMgMTAwLWJ1Z2ZpeC1MT0dDWFgtMjg0LmRwYXRjaCBieSAgPG1hdHRoZXdAbG9jYWxo b3N0PgotIyMKLSMjIEFsbCBsaW5lcyBiZWdpbm5pbmcgd2l0aCBgIyMgRFA6JyBhcmUgYSBkZXNj cmlwdGlvbiBvZiB0aGUgcGF0Y2guCi0jIyBEUDogRml4ZXMgYnVpbGQgZXJyb3Igb24gQUlYIHdp dGggeGxjX3IKLQotLS0tIGEvc3JjL3Rlc3QvY3BwL2hlbHBlcnMvZGF0ZXRpbWVkYXRlZm9ybWF0 dGVzdGNhc2UuY3BwCTIwMDgtMDMtMzEgMTU6MzM6MDkuMDAwMDAwMDAwIC0wNzAwCi0rKysgYi9z cmMvdGVzdC9jcHAvaGVscGVycy9kYXRldGltZWRhdGVmb3JtYXR0ZXN0Y2FzZS5jcHAJMjAwOC0w Ny0xNyAwNjo0OTo0My4wMDAwMDAwMDAgLTA3MDAKLUBAIC0xODEsNyArMTgxLDcgQEAKLSAgICAg ICAgIC8vICBvdXRwdXQgdGhlIHVzaW5nIFNUTAotICAgICAgICAgLy8KLSAgICAgICAgIHN0ZDo6 YmFzaWNfb3N0cmluZ3N0cmVhbTxsb2djaGFyPiBidWZmZXI7Ci0tI2lmIGRlZmluZWQoX1VTRUZB QykKLSsjaWYgZGVmaW5lZChfTVNDX1ZFUikgJiYgX01TQ19WRVIgPCAxMzAwCi0gICAgICAgICAg X1VTRUZBQyhsb2NhbGUsIHN0ZDo6dGltZV9wdXQ8bG9nY2hhcj4pCi0gICAgICAgICAgICAgIC5w dXQoYnVmZmVyLCBidWZmZXIsICZkYXRlLCBmbXQuY19zdHIoKSwgZm10LmNfc3RyKCkgKyBmbXQu bGVuZ3RoKCkpOwotICNlbHNlCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xvZzRjeHgvcGF0Y2hlcy8x NTAtYnVnZml4LUxPR0NYWC0zNjUucGF0Y2ggYi9zcmNwa2dzL2xvZzRjeHgvcGF0Y2hlcy8xNTAt YnVnZml4LUxPR0NYWC0zNjUucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDBj Zjk2YjY3YWU0YS4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvbG9nNGN4eC9wYXRjaGVzLzE1 MC1idWdmaXgtTE9HQ1hYLTM2NS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDE5ICswLDAgQEAK LURlc2NyaXB0aW9uOiBmaXhlcyB0ZXN0IHN1aXRlIHRvIG5vdCBleHBlY3QgdGhlIHllYXIgdG8g YmUgYmV0d2VlbiAyMDAwIGFuZCAyMDA5LgotT3JpZ2luOiB1cHN0cmVhbSwgaHR0cDovL3N2bi5h cGFjaGUub3JnL3ZpZXd2Yz92aWV3PXJldiZyZXY9OTU0MzM1Ci1CdWc6IGh0dHBzOi8vaXNzdWVz LmFwYWNoZS5vcmcvamlyYS9icm93c2UvTE9HQ1hYLTM2NQotRm9yd2FyZGVkOiBub3QtbmVlZGVk Ci1BcHBsaWVkLVVwc3RyZWFtOiBjb21taXQgOTU0MzM1Ci1MYXN0LVVwZGF0ZTogMjAxNC0wMy0x NAotLS0tCi1UaGlzIHBhdGNoIGhlYWRlciBmb2xsb3dzIERFUC0zOiBodHRwOi8vZGVwLmRlYmlh bi5uZXQvZGVwcy9kZXAzLwotLS0tIGEvc3JjL3Rlc3QvY3BwL3V0aWwvZmlsdGVyLmgJMjAxMC8w Ni8xNCAwMDoyNDo0Mgk5NTQzMzQKLSsrKyBiL3NyYy90ZXN0L2NwcC91dGlsL2ZpbHRlci5oCTIw MTAvMDYvMTQgMDA6MzA6NDMJOTU0MzM1Ci1AQCAtMzEsNyArMzEsNyBAQAotICNkZWZpbmUgQkFT SUNfUEFUICJcXFsweFswLTlBLUZdKl0gKEZBVEFMfEVSUk9SfFdBUk58SU5GT3xERUJVRykiCi0g I2RlZmluZSBJU084NjAxX1BBVCAiWzAtOV1cXHs0XFx9LVswLTldXFx7MlxcfS1bMC05XVxcezJc XH0gWzAtOV1cXHsyXFx9OlswLTldXFx7MlxcfTpbMC05XVxcezJcXH0sWzAtOV1cXHszXFx9Igot ICNkZWZpbmUgQUJTT0xVVEVfREFURV9BTkRfVElNRV9QQVQgXAotLSAgICAgICAgIlswLTldXFx7 MSwyXFx9IC4qIDIwMFswLTldIFswLTldXFx7MlxcfTpbMC05XVxcezJcXH06WzAtOV1cXHsyXFx9 LFswLTldXFx7M1xcfSIKLSsgICAgICAgICJbMC05XVxcezEsMlxcfSAuKiAyWzAtOV1bMC05XVsw LTldIFswLTldXFx7MlxcfTpbMC05XVxcezJcXH06WzAtOV1cXHsyXFx9LFswLTldXFx7M1xcfSIK LSAjZGVmaW5lIEFCU09MVVRFX1RJTUVfUEFUICJbMC0yXVswLTldOlswLTldWzAtOV06WzAtOV1b MC05XSxbMC05XVswLTldWzAtOV0iCi0gI2RlZmluZSBSRUxBVElWRV9USU1FX1BBVCAiXlswLTld KyIKLSAKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbG9nNGN4eC9wYXRjaGVzLzE3MC1nY2M2LWZpeC5w YXRjaCBiL3NyY3BrZ3MvbG9nNGN4eC9wYXRjaGVzLzE3MC1nY2M2LWZpeC5wYXRjaApkZWxldGVk IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2ZhMGMyZjUzMTljLi4wMDAwMDAwMDAwMDAKLS0tIGEv c3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMvMTcwLWdjYzYtZml4LnBhdGNoCisrKyAvZGV2L251bGwK QEAgLTEsODAgKzAsMCBAQAotRGVzY3JpcHRpb246IEZpeCBGVEJGUyB3aXRoIEdDQzYKLSBHQ0M2 IGlzIG1vcmUgcGlja2llciBvbiB0cnVuY2F0aW5nLCBzbyB0aGlzIHBhdGNoIGZpeGVzIHRoZSBu YXJyb3dpbmcgY29udmVyc2lvbiBlcnJvcnMuCi1BdXRob3I6IFRvYmlhcyBGcm9zdCA8dG9iaUBk ZWJpYW4ub3JnPgotQnVnLURlYmlhbjogaHR0cHM6Ly9idWdzLmRlYmlhbi5vcmcvY2dpLWJpbi9i dWdyZXBvcnQuY2dpP2J1Zz04MTE3NjgKLUZvcndhcmRlZDogaHR0cHM6Ly9pc3N1ZXMuYXBhY2hl Lm9yZy9qaXJhL2Jyb3dzZS9MT0dDWFgtNDgyCi1BcHBsaWVkLVVwc3RyZWFtOiB5ZXMsIHRhcmdl dGVkIHZlcnNpb24gMC4xMS4wCi1MYXN0LVVwZGF0ZTogMjAxNi0wNy0wMSAoRGViQ2FtcDE2KQot LS0tCi1UaGlzIHBhdGNoIGhlYWRlciBmb2xsb3dzIERFUC0zOiBodHRwOi8vZGVwLmRlYmlhbi5u ZXQvZGVwcy9kZXAzLwotLS0tIGEvc3JjL21haW4vY3BwL2xvY2F0aW9uaW5mby5jcHAKLSsrKyBi L3NyYy9tYWluL2NwcC9sb2NhdGlvbmluZm8uY3BwCi1AQCAtMTQ4LDcgKzE0OCw3IEBACi0gICAg IGlmIChsaW5lTnVtYmVyID09IC0xICYmIGZpbGVOYW1lID09IE5BICYmIG1ldGhvZE5hbWUgPT0g TkFfTUVUSE9EKSB7Ci0gICAgICAgICAgb3Mud3JpdGVOdWxsKHApOwotICAgICB9IGVsc2Ugewot LSAgICAgICAgY2hhciBwcm9sb2dbXSA9IHsKLSsgICAgICAgIHVuc2lnbmVkIGNoYXIgcHJvbG9n W10gPSB7Ci0gICAgICAgICAgMHg3MiwgMHgwMCwgMHgyMSwgMHg2RiwgMHg3MiwgMHg2NywgMHgy RSwgCi0gICAgICAgICAgMHg2MSwgMHg3MCwgMHg2MSwgMHg2MywgMHg2OCwgMHg2NSwgMHgyRSwg MHg2QywgCi0gICAgICAgICAgMHg2RiwgMHg2NywgMHgzNCwgMHg2QSwgMHgyRSwgMHg3MywgMHg3 MCwgMHg2OSwgCi1AQCAtMTYxLDcgKzE2MSw3IEBACi0gICAgICAgICAgICAgICAgIDB4NjEsIDB4 NzYsIDB4NjEsIDB4MkYsIDB4NkMsIDB4NjEsIDB4NkUsIDB4NjcsIAotICAgICAgICAgICAgICAg ICAweDJGLCAweDUzLCAweDc0LCAweDcyLCAweDY5LCAweDZFLCAweDY3LCAweDNCLAotICAgICAg ICAgIDB4NzgsIDB4NzAgfTsKLS0gICAgICBvcy53cml0ZVByb2xvZygib3JnLmFwYWNoZS5sb2c0 ai5zcGkuTG9jYXRpb25JbmZvIiwgMiwgcHJvbG9nLCBzaXplb2YocHJvbG9nKSwgcCk7Ci0rICAg ICAgb3Mud3JpdGVQcm9sb2coIm9yZy5hcGFjaGUubG9nNGouc3BpLkxvY2F0aW9uSW5mbyIsIDIs IChjaGFyICopcHJvbG9nLCBzaXplb2YocHJvbG9nKSwgcCk7Ci0gICAgICAgICBjaGFyKiBsaW5l ID0gcC5pdG9hKGxpbmVOdW1iZXIpOwotICAgICAgICAgLy8KLSAgICAgICAgIC8vICAgY29uc3Ry dWN0IEphdmEtbGlrZSBmdWxsSW5mbyAocmVwbGFjZSAiOjoiIHdpdGggIi4iKQotLS0tIGEvc3Jj L21haW4vY3BwL2xvZ2dpbmdldmVudC5jcHAKLSsrKyBiL3NyYy9tYWluL2NwcC9sb2dnaW5nZXZl bnQuY3BwCi1AQCAtMjM2LDcgKzIzNiw3IEBACi0gCi0gCi0gdm9pZCBMb2dnaW5nRXZlbnQ6Ondy aXRlUHJvbG9nKE9iamVjdE91dHB1dFN0cmVhbSYgb3MsIFBvb2wmIHApICB7Ci0tICAgICBjaGFy IGNsYXNzRGVzY1tdID0gewotKyAgICAgdW5zaWduZWQgY2hhciBjbGFzc0Rlc2NbXSA9IHsKLSAg ICAgICAgIDB4NzIsIDB4MDAsIDB4MjEsIAotICAgICAgICAgMHg2RiwgMHg3MiwgMHg2NywgMHgy RSwgMHg2MSwgMHg3MCwgMHg2MSwgMHg2MywgCi0gICAgICAgICAweDY4LCAweDY1LCAweDJFLCAw eDZDLCAweDZGLCAweDY3LCAweDM0LCAweDZBLCAKLUBAIC0yOTIsNyArMjkyLDcgQEAKLSAgICAg ICAgIDB4M0IsIDB4NzgsIDB4NzAgfTsgCi0gCi0gICAgICBvcy53cml0ZVByb2xvZygib3JnLmFw YWNoZS5sb2c0ai5zcGkuTG9nZ2luZ0V2ZW50IiwgCi0tICAgICAgICA4LCBjbGFzc0Rlc2MsIHNp emVvZihjbGFzc0Rlc2MpLCBwKTsKLSsgICAgICAgIDgsIChjaGFyICopIGNsYXNzRGVzYywgc2l6 ZW9mKGNsYXNzRGVzYyksIHApOwotIH0KLSAKLSB2b2lkIExvZ2dpbmdFdmVudDo6d3JpdGUoaGVs cGVyczo6T2JqZWN0T3V0cHV0U3RyZWFtJiBvcywgUG9vbCYgcCkgY29uc3QgewotLS0tIGEvc3Jj L21haW4vY3BwL29iamVjdG91dHB1dHN0cmVhbS5jcHAKLSsrKyBiL3NyYy9tYWluL2NwcC9vYmpl Y3RvdXRwdXRzdHJlYW0uY3BwCi1AQCAtMzYsOCArMzYsOCBAQAotICAgICAgICBvYmplY3RIYW5k bGUoMHg3RTAwMDApLAotICAgICAgICBjbGFzc0Rlc2NyaXB0aW9ucyhuZXcgQ2xhc3NEZXNjcmlw dGlvbk1hcCgpKQotIHsKLS0gICBjaGFyIHN0YXJ0W10gPSB7IDB4QUMsIDB4RUQsIDB4MDAsIDB4 MDUgfTsKLS0gICBCeXRlQnVmZmVyIGJ1ZihzdGFydCwgc2l6ZW9mKHN0YXJ0KSk7Ci0rICAgdW5z aWduZWQgY2hhciBzdGFydFtdID0geyAweEFDLCAweEVELCAweDAwLCAweDA1IH07Ci0rICAgQnl0 ZUJ1ZmZlciBidWYoKGNoYXIqKXN0YXJ0LCBzaXplb2Yoc3RhcnQpKTsKLSAgICBvcy0+d3JpdGUo YnVmLCBwKTsKLSB9Ci0gCi1AQCAtODEsNyArODEsNyBAQAotICAgICAvLwotICAgICAvLyAgVENf T0JKRUNUIGFuZCB0aGUgY2xhc3NEZXNjIGZvciBqYXZhLnV0aWwuSGFzaHRhYmxlCi0gICAgIC8v Ci0tICAgIGNoYXIgcHJvbG9nW10gPSB7Ci0rICAgIHVuc2lnbmVkIGNoYXIgcHJvbG9nW10gPSB7 Ci0gICAgICAgICAweDcyLCAweDAwLCAweDEzLCAweDZBLCAweDYxLCAweDc2LCAweDYxLCAKLSAg ICAgICAgIDB4MkUsIDB4NzUsIDB4NzQsIDB4NjksIDB4NkMsIDB4MkUsIDB4NDgsIDB4NjEsIAot ICAgICAgICAgMHg3MywgMHg2OCwgMHg3NCwgMHg2MSwgMHg2MiwgMHg2QywgMHg2NSwgMHgxMywg Ci1AQCAtOTAsNyArOTAsNyBAQAotICAgICAgICAgMHg2NCwgMHg0NiwgMHg2MSwgMHg2MywgMHg3 NCwgMHg2RiwgMHg3MiwgMHg0OSwgCi0gICAgICAgICAweDAwLCAweDA5LCAweDc0LCAweDY4LCAw eDcyLCAweDY1LCAweDczLCAweDY4LCAKLSAgICAgICAgIDB4NkYsIDB4NkMsIDB4NjQsIDB4Nzgs IDB4NzAgIH07Ci0tICAgIHdyaXRlUHJvbG9nKCJqYXZhLnV0aWwuSGFzaHRhYmxlIiwgMSwgcHJv bG9nLCBzaXplb2YocHJvbG9nKSwgcCk7Ci0rICAgIHdyaXRlUHJvbG9nKCJqYXZhLnV0aWwuSGFz aHRhYmxlIiwgMSwgKGNoYXIgKikgcHJvbG9nLCBzaXplb2YocHJvbG9nKSwgcCk7Ci0gICAgIC8v Ci0gICAgIC8vICAgbG9hZEZhY3RvciA9IDAuNzUsIHRocmVzaG9sZCA9IDUsIGJsb2NrZGF0YSBz dGFydCwgYnVja2V0cy5zaXplID0gNwotICAgICBjaGFyIGRhdGFbXSA9IHsgMHgzRiwgMHg0MCwg MHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwNSwgCmRpZmYgLS1naXQgYS9zcmNwa2dz L2xvZzRjeHgvcGF0Y2hlcy8xODAtZ2NjLWZpeC10ZXN0c3VpdGUucGF0Y2ggYi9zcmNwa2dzL2xv ZzRjeHgvcGF0Y2hlcy8xODAtZ2NjLWZpeC10ZXN0c3VpdGUucGF0Y2gKZGVsZXRlZCBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IDcxYjcxNDY3YTEzMS4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3Mv bG9nNGN4eC9wYXRjaGVzLzE4MC1nY2MtZml4LXRlc3RzdWl0ZS5wYXRjaAorKysgL2Rldi9udWxs CkBAIC0xLDI1ICswLDAgQEAKLURlc2NyaXB0aW9uOiBGaXggbmFycm93aW5nIGVycm9ycyBhbHNv IGZvciB0aGUgdGVzdHN1aXRlCi1BdXRob3I6IFRvYmlhcyBGcm9zdCA8dG9iaUBkZWJpYW4ub3Jn PgotTGFzdC1VcGRhdGU6IDIwMTYtMTAtMjMKLS0tLQotVGhpcyBwYXRjaCBoZWFkZXIgZm9sbG93 cyBERVAtMzogaHR0cDovL2RlcC5kZWJpYW4ubmV0L2RlcHMvZGVwMy8KLS0tLSBhL3NyYy90ZXN0 L2NwcC94bWwvZG9tdGVzdGNhc2UuY3BwCi0rKysgYi9zcmMvdGVzdC9jcHAveG1sL2RvbXRlc3Rj YXNlLmNwcAotQEAgLTE5MCw3ICsxOTAsNyBAQAotICAgICAgICAgICAgICAgICBET01Db25maWd1 cmF0b3I6OmNvbmZpZ3VyZShMT0c0Q1hYX1RFU1RfU1RSKCJpbnB1dC94bWwvRE9NVGVzdENhc2Uz LnhtbCIpKTsKLSAgICAgICAgICAgICAgICAgTE9HNENYWF9JTkZPKGxvZ2dlciwgIkZpbGUgbmFt ZSBpcyBleHBlY3RlZCB0byBlbmQgd2l0aCBhIHN1cGVyc2NyaXB0IDMiKTsKLSAjaWYgTE9HNENY WF9MT0dDSEFSX0lTX1VURjgKLS0gICAgICAgICAgICAgICAgY29uc3QgbG9nY2hhciBmbmFtZVtd ID0geyAweDZGLCAweDc1LCAweDc0LCAweDcwLCAweDc1LCAweDc0LCAweDJGLCAweDY0LCAweDZG LCAweDZELCAweEMyLCAweEIzLCAwIH07Ci0rICAgICAgICAgICAgICAgIGNvbnN0IGxvZ2NoYXIg Zm5hbWVbXSA9IHsgMHg2RiwgMHg3NSwgMHg3NCwgMHg3MCwgMHg3NSwgMHg3NCwgMHgyRiwgMHg2 NCwgMHg2RiwgMHg2RCwgKGxvZ2NoYXIpMHhDMiwgKGxvZ2NoYXIpMHhCMywgMCB9OwotICNlbHNl Ci0gICAgICAgICAgICAgICAgIGNvbnN0IGxvZ2NoYXIgZm5hbWVbXSA9IHsgMHg2RiwgMHg3NSwg MHg3NCwgMHg3MCwgMHg3NSwgMHg3NCwgMHgyRiwgMHg2NCwgMHg2RiwgMHg2RCwgMHhCMywgMCB9 OwotICNlbmRpZgotQEAgLTIwOSw3ICsyMDksNyBAQAotICAgICAgICAgICAgICAgICBET01Db25m aWd1cmF0b3I6OmNvbmZpZ3VyZShMT0c0Q1hYX1RFU1RfU1RSKCJpbnB1dC94bWwvRE9NVGVzdENh c2U0LnhtbCIpKTsKLSAgICAgICAgICAgICAgICAgTE9HNENYWF9JTkZPKGxvZ2dlciwgIkZpbGUg bmFtZSBpcyBleHBlY3RlZCB0byBlbmQgd2l0aCBhbiBpZGVvZ3JhcGhpYyA0Iik7Ci0gI2lmIExP RzRDWFhfTE9HQ0hBUl9JU19VVEY4Ci0tICAgICAgICAgICAgICAgIGNvbnN0IGxvZ2NoYXIgZm5h bWVbXSA9IHsgMHg2RiwgMHg3NSwgMHg3NCwgMHg3MCwgMHg3NSwgMHg3NCwgMHgyRiwgMHg2NCwg MHg2RiwgMHg2RCwgMHhFMywgMHg4NiwgMHg5NSwgMCB9OwotKyAgICAgICAgICAgICAgICBjb25z dCBsb2djaGFyIGZuYW1lW10gPSB7IDB4NkYsIChsb2djaGFyKTB4NzUsIDB4NzQsIDB4NzAsIDB4 NzUsIDB4NzQsIDB4MkYsIDB4NjQsIDB4NkYsIDB4NkQsIChsb2djaGFyKTB4RTMsIChsb2djaGFy KTB4ODYsIChsb2djaGFyKTB4OTUsIDAgfTsKLSAjZWxzZQotICAgICAgICAgICAgICAgICBjb25z dCBsb2djaGFyIGZuYW1lW10gPSB7IDB4NkYsIDB4NzUsIDB4NzQsIDB4NzAsIDB4NzUsIDB4NzQs IDB4MkYsIDB4NjQsIDB4NkYsIDB4NkQsIDB4MzE5NSwgMCB9OwotICNlbmRpZgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9sb2c0Y3h4L3BhdGNoZXMvbWlzc2luZy1pbmNsdWRlcy5wYXRjaCBiL3NyY3Br Z3MvbG9nNGN4eC9wYXRjaGVzL21pc3NpbmctaW5jbHVkZXMucGF0Y2gKZGVsZXRlZCBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IGE2M2JmZmQ5NWM1Ny4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3Mv bG9nNGN4eC9wYXRjaGVzL21pc3NpbmctaW5jbHVkZXMucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAt MSwzOCArMCwwIEBACi1kaWZmIC1OYXVyIGFwYWNoZS1sb2c0Y3h4LTAuMTAuMC5vcmlnL3NyYy9l eGFtcGxlcy9jcHAvY29uc29sZS5jcHAgYXBhY2hlLWxvZzRjeHgtMC4xMC4wL3NyYy9leGFtcGxl cy9jcHAvY29uc29sZS5jcHAKLS0tLSBhL3NyYy9leGFtcGxlcy9jcHAvY29uc29sZS5jcHAJMjAw OC0wNC0wMSAwMDozNDo1Mi4wMDAwMDAwMDAgKzAyMDAKLSsrKyBiL3NyYy9leGFtcGxlcy9jcHAv Y29uc29sZS5jcHAJMjAwOC0wNS0wNiAwNTo0MDo1Mi4wMDAwMDAwMDAgKzAyMDAKLUBAIC0xNSw3 ICsxNSwxMCBAQAotICAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgotICAqLwotIAot LSNpbmNsdWRlIDxzdGRsaWIuaD4KLSsjaW5jbHVkZSA8Y3N0ZGlvPgotKyNpbmNsdWRlIDxjc3Rk bGliPgotKyNpbmNsdWRlIDxjc3RyaW5nPgotKyNpbmNsdWRlIDxzdGRpbnQuaD4KLSAjaW5jbHVk ZSA8bG9nNGN4eC9sb2dnZXIuaD4KLSAjaW5jbHVkZSA8bG9nNGN4eC9jb25zb2xlYXBwZW5kZXIu aD4KLSAjaW5jbHVkZSA8bG9nNGN4eC9zaW1wbGVsYXlvdXQuaD4KLWRpZmYgLU5hdXIgYXBhY2hl LWxvZzRjeHgtMC4xMC4wLm9yaWcvc3JjL21haW4vY3BwL2lucHV0c3RyZWFtcmVhZGVyLmNwcCBh cGFjaGUtbG9nNGN4eC0wLjEwLjAvc3JjL21haW4vY3BwL2lucHV0c3RyZWFtcmVhZGVyLmNwcAot LS0tIGEvc3JjL21haW4vY3BwL2lucHV0c3RyZWFtcmVhZGVyLmNwcAkyMDA4LTA0LTAxIDAwOjM0 OjA5LjAwMDAwMDAwMCArMDIwMAotKysrIGIvc3JjL21haW4vY3BwL2lucHV0c3RyZWFtcmVhZGVy LmNwcAkyMDA4LTA1LTA2IDA1OjMyOjMxLjAwMDAwMDAwMCArMDIwMAotQEAgLTIxLDYgKzIxLDgg QEAKLSAjaW5jbHVkZSA8bG9nNGN4eC9oZWxwZXJzL3Bvb2wuaD4KLSAjaW5jbHVkZSA8bG9nNGN4 eC9oZWxwZXJzL2J5dGVidWZmZXIuaD4KLSAKLSsjaW5jbHVkZSA8Y3N0cmluZz4KLSsKLSB1c2lu ZyBuYW1lc3BhY2UgbG9nNGN4eDsKLSB1c2luZyBuYW1lc3BhY2UgbG9nNGN4eDo6aGVscGVyczsK LSAKLWRpZmYgLU5hdXIgc3JjL21haW4vY3BwL3NvY2tldG91dHB1dHN0cmVhbS5jcHAgYXBhY2hl LWxvZzRjeHgtMC4xMC4wL3NyYy9tYWluL2NwcC9zb2NrZXRvdXRwdXRzdHJlYW0uY3BwCi0tLS0g YS9zcmMvbWFpbi9jcHAvc29ja2V0b3V0cHV0c3RyZWFtLmNwcAkyMDA4LTA0LTAxIDAwOjM0OjA5 LjAwMDAwMDAwMCArMDIwMAotKysrIGIvc3JjL21haW4vY3BwL3NvY2tldG91dHB1dHN0cmVhbS5j cHAJMjAwOC0wNS0wNiAwNTozNTo1NS4wMDAwMDAwMDAgKzAyMDAKLUBAIC0yMCw2ICsyMCw4IEBA Ci0gI2luY2x1ZGUgPGxvZzRjeHgvaGVscGVycy9zb2NrZXQuaD4KLSAjaW5jbHVkZSA8bG9nNGN4 eC9oZWxwZXJzL2J5dGVidWZmZXIuaD4KLSAKLSsjaW5jbHVkZSA8Y3N0cmluZz4KLSsKLSB1c2lu ZyBuYW1lc3BhY2UgbG9nNGN4eDsKLSB1c2luZyBuYW1lc3BhY2UgbG9nNGN4eDo6aGVscGVyczsK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbG9nNGN4eC90ZW1wbGF0ZSBiL3NyY3BrZ3MvbG9nNGN4eC90 ZW1wbGF0ZQppbmRleCAyZjQ5MDVhMTYwOTIuLmFlNzA5MTc1MzVlMCAxMDA2NDQKLS0tIGEvc3Jj cGtncy9sb2c0Y3h4L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbG9nNGN4eC90ZW1wbGF0ZQpAQCAt MSwyMiArMSwyMSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbG9nNGN4eCcKIHBrZ25hbWU9bG9n NGN4eAotdmVyc2lvbj0wLjEwLjAKLXJldmlzaW9uPTQKLWJ1aWxkX3N0eWxlPWdudS1jb25maWd1 cmUKLW1ha2VkZXBlbmRzPSJsaWJ4bWwyLWRldmVsIGFwci1kZXZlbCBhcHItdXRpbC1kZXZlbCBn ZGJtLWRldmVsIgotc2hvcnRfZGVzYz0iQSBDKysgTG9nZ2luZyBMaWJyYXJ5IGJhc2VkIG9uIExv ZzRKIgordmVyc2lvbj0xLjAuMAorcmV2aXNpb249MQorYnVpbGRfc3R5bGU9Y21ha2UKK21ha2Vk ZXBlbmRzPSJsaWJ4bWwyLWRldmVsIGFwci1kZXZlbCBhcHItdXRpbC1kZXZlbCBnZGJtLWRldmVs IHBrZy1jb25maWcgYm9vc3QtZGV2ZWwgemlwIgorc2hvcnRfZGVzYz0iQysrIExvZ2dpbmcgTGli cmFyeSBiYXNlZCBvbiBMb2c0SiIKIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9pZGxp bnV4Lm9yZz4iCiBsaWNlbnNlPSJBcGFjaGUtMi4wIgogaG9tZXBhZ2U9Imh0dHBzOi8vbG9nZ2lu Zy5hcGFjaGUub3JnL2xvZzRjeHgvIgogZGlzdGZpbGVzPSJodHRwczovL2FyY2hpdmUuYXBhY2hl Lm9yZy9kaXN0L2xvZ2dpbmcvbG9nNGN4eC8ke3ZlcnNpb259L2FwYWNoZS1sb2c0Y3h4LSR7dmVy c2lvbn0udGFyLmd6IgotY2hlY2tzdW09MGRlMDM5NjIyMGE5NTY2YTU4MDE2NmU2NmIzOTY3NGNi NDBlZmQyMTc2ZjUyYWQyYzY1NDg2Yzk5YzkyMGM4YworY2hlY2tzdW09NmRmOWYxZjY4MjY1MGRl NjA0NTMwOTQ3M2Q1YjJmZTFmNzk4YTAzY2ViMzZhNzRhNWIyMWY1NTIwOTYyZDMyZgogCiBsb2c0 Y3h4LWRldmVsX3BhY2thZ2UoKSB7CiAJc2hvcnRfZGVzYys9IiAtIGRldmVsb3BtZW50IGZpbGVz IgogCWRlcGVuZHM9IiR7c291cmNlcGtnfT49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKIAlwa2df aW5zdGFsbCgpIHsKIAkJdm1vdmUgdXNyL2luY2x1ZGUKLQkJdm1vdmUgdXNyL2xpYi8qLmEKIAkJ dm1vdmUgdXNyL2xpYi8qLnNvCiAJCXZtb3ZlIHVzci9saWIvcGtnY29uZmlnCiAJfQoKRnJvbSA2 M2E4MDQ2NTdhMjA0YWU2ZDZlNDgzZWFhYjMxNzRhODc1YjlkYzcxIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBX ZWQsIDEgRmViIDIwMjMgMTU6NTU6MjUgKzAxMDAKU3ViamVjdDogW1BBVENIIDI1LzM5XSBsdWE1 NC1sdWFsZGFwOiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtncy9s dWE1NC1sdWFsZGFwL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9u KCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9sdWE1NC1sdWFsZGFwL3Rl bXBsYXRlIGIvc3JjcGtncy9sdWE1NC1sdWFsZGFwL3RlbXBsYXRlCmluZGV4IDQ0OTJkYmVhYjY1 MC4uOGMwM2VlZjdlZjRkIDEwMDY0NAotLS0gYS9zcmNwa2dzL2x1YTU0LWx1YWxkYXAvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9sdWE1NC1sdWFsZGFwL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnbHVhNTQtbHVhbGRhcCcKIHBrZ25hbWU9bHVhNTQtbHVhbGRh cAogdmVyc2lvbj0xLjIuNQotcmV2aXNpb249MworcmV2aXNpb249NAogY3JlYXRlX3dya3NyYz15 ZXMKIGJ1aWxkX3N0eWxlPWdudS1tYWtlZmlsZQogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmln IgoKRnJvbSA5ZWRmNGVhOTJkZjUzOWNkMjlhYTZhNjFkYzFkZmYyODExZmNjZDA1IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29t PgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTU6NTY6MjIgKzAxMDAKU3ViamVjdDogW1BBVENIIDI2 LzM5XSBtb25pdG9yaW5nLXBsdWdpbnM6IHJldmJ1bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoK LS0tCiBzcmNwa2dzL21vbml0b3JpbmctcGx1Z2lucy90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBj aGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvbW9uaXRvcmluZy1wbHVnaW5zL3RlbXBsYXRlIGIvc3JjcGtncy9tb25pdG9yaW5nLXBsdWdp bnMvdGVtcGxhdGUKaW5kZXggOWZlYzU1NjJhOWNjLi4yMGZiZDEzYTUwMjAgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvbW9uaXRvcmluZy1wbHVnaW5zL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbW9uaXRv cmluZy1wbHVnaW5zL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAnbW9uaXRvcmluZy1wbHVnaW5zJwogcGtnbmFtZT1tb25pdG9yaW5nLXBsdWdpbnMKIHZlcnNp b249Mi4zLjIKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1 cmUKIGNvbmZpZ3VyZV9hcmdzPSItLWxpYmV4ZWNkaXI9L3Vzci9saWIvbW9uaXRvcmluZy1wbHVn aW5zIgogaG9zdG1ha2VkZXBlbmRzPSJmcGluZyBvcGVuc3NoIHBvc3RmaXggcHJvY3BzLW5nIHNt YmNsaWVudCBuZXQtc25tcCBiaW5kLXV0aWxzIHN1ZG8iCgpGcm9tIDU4YzlhNjRmNjk1NTZmNmEz NGZhZmQxNTVmOTMzN2IxMzcyYmEzNmQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEts YXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAx NTo1NzoxMiArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMjcvMzldIG5zcy1wYW0tbGRhcGQ6IHJldmJ1 bXAgZHVlIHRvIG9wZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dzL25zcy1wYW0tbGRhcGQvdGVt cGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24o LSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL25zcy1wYW0tbGRhcGQvdGVtcGxhdGUgYi9zcmNwa2dz L25zcy1wYW0tbGRhcGQvdGVtcGxhdGUKaW5kZXggOTJjYmQ3NTQxN2I0Li4yYjNhMzVhZTg1YTMg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbnNzLXBhbS1sZGFwZC90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L25zcy1wYW0tbGRhcGQvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICduc3MtcGFtLWxkYXBkJwogcGtnbmFtZT1uc3MtcGFtLWxkYXBkCiB2ZXJzaW9uPTAuOS4x MgotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29u ZmlndXJlX2FyZ3M9Ii0tZW5hYmxlLXNhc2wgLS1lbmFibGUta2VyYmVyb3MgLS13aXRoLXBhbS1z ZWNsaWItZGlyPS91c3IvbGliL3NlY3VyaXR5LyIKIGNvbmZfZmlsZXM9Ii9ldGMvbnNsY2QuY29u ZiIKCkZyb20gODczN2NhZDQxZDA1OTRmOWZlZDhiNjQwMDFhZmM3Mjg2OWQ2ZTM2NCBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNv bT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE2OjE2OjEwICswMTAwClN1YmplY3Q6IFtQQVRDSCAy OC8zOV0gcGhwOiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtncy9w aHAvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVs ZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3BocC90ZW1wbGF0ZSBiL3NyY3BrZ3MvcGhw L3RlbXBsYXRlCmluZGV4IDM5ZTRkMTYxYjY0OC4uZTljNmY2MDI0NjMxIDEwMDY0NAotLS0gYS9z cmNwa2dzL3BocC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3BocC90ZW1wbGF0ZQpAQCAtMSw3ICsx LDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3BocCcKIHBrZ25hbWU9cGhwCiB2ZXJzaW9uPTcu NC4zMwotcmV2aXNpb249MQorcmV2aXNpb249MgogaG9zdG1ha2VkZXBlbmRzPSJiaXNvbiBwa2ct Y29uZmlnIGFwYWNoZS1kZXZlbCIKIG1ha2VkZXBlbmRzPSJhcGFjaGUtZGV2ZWwgZW5jaGFudDIt ZGV2ZWwgZnJlZXRkcy1kZXZlbCBmcmVldHlwZS1kZXZlbCBnZGJtLWRldmVsCiAgZ21wLWRldmVs IGxpYmN1cmwtZGV2ZWwgbGlianBlZy10dXJiby1kZXZlbCBsaWJtYXJpYWRiY2xpZW50LWRldmVs CgpGcm9tIGZlNTA2OTE1Mzc5NTdmZGY5YWE4ZjAxNGUwZGViMDYzN2Y5NmVhNzYgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+ CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNjoxNzowOSArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMjkv MzldIHBocDguMDogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3Mv cGhwOC4wL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAx IGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9waHA4LjAvdGVtcGxhdGUgYi9zcmNw a2dzL3BocDguMC90ZW1wbGF0ZQppbmRleCA3NGM1MGRhMGU0NmYuLjFjMjE1ZDFmODQxYSAxMDA2 NDQKLS0tIGEvc3JjcGtncy9waHA4LjAvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9waHA4LjAvdGVt cGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdwaHA4LjAnCiBwa2du YW1lPXBocDguMAogdmVyc2lvbj04LjAuMjUKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIF9waHBf dmVyc2lvbj04LjAKIGhvc3RtYWtlZGVwZW5kcz0iYmlzb24gcGtnLWNvbmZpZyBhcGFjaGUtZGV2 ZWwiCiBtYWtlZGVwZW5kcz0iYXBhY2hlLWRldmVsIGVuY2hhbnQyLWRldmVsIGZyZWV0ZHMtZGV2 ZWwgZnJlZXR5cGUtZGV2ZWwgZ2RibS1kZXZlbAoKRnJvbSAxNDEzNzgwYzM1NWU0Njg0OWEyYTcw M2VkMTM5NTM5ZjUyYjRiZmE1IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBN b2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTY6MTk6 MTYgKzAxMDAKU3ViamVjdDogW1BBVENIIDMwLzM5XSBwaHA4LjE6IHJldmJ1bXAgZHVlIHRvIG9w ZW5sZGFwIHVwZGF0ZQoKLS0tCiBzcmNwa2dzL3BocDguMS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmls ZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvcGhwOC4xL3RlbXBsYXRlIGIvc3JjcGtncy9waHA4LjEvdGVtcGxhdGUKaW5kZXggZjE5 Njg4YjUyZjZjLi5mMTQ0MTQ2OTdlNzkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcGhwOC4xL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvcGhwOC4xL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAncGhwOC4xJwogcGtnbmFtZT1waHA4LjEKIHZlcnNpb249OC4xLjEyCi1y ZXZpc2lvbj0xCityZXZpc2lvbj0yCiBfcGhwX3ZlcnNpb249OC4xCiBob3N0bWFrZWRlcGVuZHM9 ImJpc29uIHBrZy1jb25maWcgYXBhY2hlLWRldmVsIgogbWFrZWRlcGVuZHM9ImFwYWNoZS1kZXZl bCBlbmNoYW50Mi1kZXZlbCBmcmVldGRzLWRldmVsIGZyZWV0eXBlLWRldmVsIGdkYm0tZGV2ZWwK CkZyb20gYzM1YWUwMzA0YzNlZjU5NjFiNzM1NGM4ZGE4YzZlNDRlYWRjOTdlNyBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4K RGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE2OjIwOjA5ICswMTAwClN1YmplY3Q6IFtQQVRDSCAzMS8z OV0gcG9zdGZpeDogcmV2YnVtcCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3Mv cG9zdGZpeC90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwg MSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcG9zdGZpeC90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvcG9zdGZpeC90ZW1wbGF0ZQppbmRleCBiMWMyY2Q0ZTgwOTAuLjk5N2EyNDJiOTE5MSAx MDA2NDQKLS0tIGEvc3JjcGtncy9wb3N0Zml4L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcG9zdGZp eC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3Bvc3RmaXgn CiBwa2duYW1lPXBvc3RmaXgKIHZlcnNpb249My43LjQKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIK IGhvc3RtYWtlZGVwZW5kcz0icGVybCBtNCIKIG1ha2VkZXBlbmRzPSJpY3UtZGV2ZWwgbGlibGRh cC1kZXZlbCBsaWJtYXJpYWRiY2xpZW50LWRldmVsIHBjcmUyLWRldmVsCiAgcG9zdGdyZXNxbC1s aWJzLWRldmVsIHNxbGl0ZS1kZXZlbCIKCkZyb20gM2YwMmJmNDgyMzBlZDMwMzhlZDc5YWQ0NmE2 ZWE5MmUwYTNkYzFmYiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS2xhcmEgTW9kaW4g PGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAxIEZlYiAyMDIzIDE2OjIxOjM2ICsw MTAwClN1YmplY3Q6IFtQQVRDSCAzMi8zOV0gcHl0aG9uMy1sZGFwOiB1cGRhdGUgdG8gMy40LjMK CmJ1aWxkIHdhcyBmYWlsaW5nIGFmdGVyIHJldmJ1bXAKLS0tCiBzcmNwa2dzL3B5dGhvbjMtbGRh cC90ZW1wbGF0ZSB8IDggKysrKy0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyks IDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9weXRob24zLWxkYXAvdGVtcGxh dGUgYi9zcmNwa2dzL3B5dGhvbjMtbGRhcC90ZW1wbGF0ZQppbmRleCBjZmY3ZGYwNTVlNzguLjk2 MGIzZDY4ZWJmMCAxMDA2NDQKLS0tIGEvc3JjcGtncy9weXRob24zLWxkYXAvdGVtcGxhdGUKKysr IGIvc3JjcGtncy9weXRob24zLWxkYXAvdGVtcGxhdGUKQEAgLTEsMTAgKzEsMTAgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ3B5dGhvbjMtbGRhcCcKIHBrZ25hbWU9cHl0aG9uMy1sZGFwCiBfcGtn bmFtZT1weXRob24tbGRhcAotdmVyc2lvbj0zLjIuMAotcmV2aXNpb249NQordmVyc2lvbj0zLjQu MworcmV2aXNpb249MQogYnVpbGRfc3R5bGU9cHl0aG9uMy1tb2R1bGUKLWhvc3RtYWtlZGVwZW5k cz0icHl0aG9uMy1zZXR1cHRvb2xzIgoraG9zdG1ha2VkZXBlbmRzPSJweXRob24zLXNldHVwdG9v bHMgcHl0aG9uMy13aGVlbCBweXRob24zLXB5YXNuMS1tb2R1bGVzIgogbWFrZWRlcGVuZHM9InB5 dGhvbjMtZGV2ZWwgbGlibGRhcC1kZXZlbCIKIGRlcGVuZHM9InB5dGhvbjMtcHlhc24xLW1vZHVs ZXMiCiBjaGVja2RlcGVuZHM9Im9wZW5sZGFwIG9wZW5sZGFwLXRvb2xzIgpAQCAtMTMsNyArMTMs NyBAQCBtYWludGFpbmVyPSJNaWNoYWVsIEFsZHJpZGdlIDxtYWxkcmlkZ2VAdm9pZGxpbnV4Lm9y Zz4iCiBsaWNlbnNlPSJQeXRob24tMi4wIgogaG9tZXBhZ2U9Imh0dHBzOi8vd3d3LnB5dGhvbi1s ZGFwLm9yZyIKIGRpc3RmaWxlcz0iJHtQWVBJX1NJVEV9L3AvJHtfcGtnbmFtZX0vJHtfcGtnbmFt ZX0tJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT03ZDFjNGIxNTM3NWE1MzM1NjRhYWQzZDNk ZWFkZTc4OTIyMWU0NTAwNTJiMjFlYmI5NzIwZmI4MjJlY2NkYjhlCitjaGVja3N1bT1hYjI2YzUx OWEwZWYyYTQ0M2EyYTEwMzkxZmEzYzVjYjUyZDc4NzEzMjMzOTlkYjk0OWViZmFhOWYyNWVlMmEw CiAKIHByZV9idWlsZCgpIHsKIAlzZWQgLWkgInM6XmxpYnMgPSAuKjpsaWJzID0gbGRhcF9yIGxi ZXIgc2FzbDIgc3NsIGNyeXB0bzoiIHNldHVwLmNmZwoKRnJvbSBjNTFkOGEyZjI4YzU5YjAxYmI5 NmIzNDNiMTc3MTIyMTNjNjY0OThhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFy YSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTY6 MjM6MzkgKzAxMDAKU3ViamVjdDogW1BBVENIIDMzLzM5XSBxdW90YTogcmV2YnVtcCBkdWUgdG8g b3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3MvcXVvdGEvdGVtcGxhdGUgfCAyICstCiAxIGZp bGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9z cmNwa2dzL3F1b3RhL3RlbXBsYXRlIGIvc3JjcGtncy9xdW90YS90ZW1wbGF0ZQppbmRleCBhNWRj N2JiZGI1ZjQuLjU1OWVmYWVlMjk5NCAxMDA2NDQKLS0tIGEvc3JjcGtncy9xdW90YS90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL3F1b3RhL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0 ZSBmaWxlIGZvciAncXVvdGEnCiBwa2duYW1lPXF1b3RhCiB2ZXJzaW9uPTQuMDkKLXJldmlzaW9u PTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIG1ha2VfYnVpbGRfYXJn cz0iVj0xIgogY29uZl9maWxlcz0iL2V0Yy9xdW90YWdycGFkbWlucyAvZXRjL3F1b3RhdGFiIC9l dGMvd2FybnF1b3RhLmNvbmYiCgpGcm9tIDViNmQ2MDMyMGNhZDMzZTA1NWFiMDg5NTg0NjBmNWQx M2Y2ZGFkNDEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1vZGluIDxrbGFy YXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNjozNjoyMiArMDEwMApT dWJqZWN0OiBbUEFUQ0ggMzQvMzldIHNlYWhvcnNlOiByZXZidW1wIGR1ZSB0byBvcGVubGRhcCB1 cGRhdGUgYW5kIGFsbG93CiBidWlsZGluZyB3aXRoIEdudVBHLTIuNC54CgpUaGlzIHBhdGNoIGlz IHRha2VuIGZyb20gdXBzdHJlYW0gYnV0IGlzIG5vdCBpbiBhbnkgcmVsZWFzZWQgdmVyc2lvbiB5 ZXQKLS0tCiAuLi4vcGF0Y2hlcy9hbGxvdy1idWlsZGluZy13aXRoLWdwZy0yLjQucGF0Y2ggICAg ICAgfCAxMyArKysrKysrKysrKysrCiBzcmNwa2dzL3NlYWhvcnNlL3RlbXBsYXRlICAgICAgICAg ICAgICAgICAgICAgICAgICAgfCAgMiArLQogMiBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25z KCspLCAxIGRlbGV0aW9uKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9zZWFob3JzZS9w YXRjaGVzL2FsbG93LWJ1aWxkaW5nLXdpdGgtZ3BnLTIuNC5wYXRjaAoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3Mvc2VhaG9yc2UvcGF0Y2hlcy9hbGxvdy1idWlsZGluZy13aXRoLWdwZy0yLjQucGF0Y2gg Yi9zcmNwa2dzL3NlYWhvcnNlL3BhdGNoZXMvYWxsb3ctYnVpbGRpbmctd2l0aC1ncGctMi40LnBh dGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uYmI5MDRkMTA0NTFm Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9zZWFob3JzZS9wYXRjaGVzL2FsbG93LWJ1aWxk aW5nLXdpdGgtZ3BnLTIuNC5wYXRjaApAQCAtMCwwICsxLDEzIEBACitkaWZmIC0tZ2l0IGEvbWVz b24uYnVpbGQgYi9tZXNvbi5idWlsZAoraW5kZXggZTI5YjUzMjIzNmU1NTQzNjgyODMyNzI1ZDc5 ZGVhMGM3ZTQ5ZjhiZi4uMjNkMGI1NGY1NjdjMTEyMjQ5ZmM3MmRkYjkxYWM4ZTQwMjE4YzYwYiAx MDA2NDQKKy0tLSBhL21lc29uLmJ1aWxkCisrKysgYi9tZXNvbi5idWlsZAorQEAgLTI2LDcgKzI2 LDcgQEAgZW5kaWYKKyAjIERlcGVuZGVuY2llcworIG1pbl9nbGliX3ZlcnNpb24gPSAnMi42NicK KyBtaW5fZ2NyX3ZlcnNpb24gPSAnMy4zOCcKKy1hY2NlcHRlZF9ncGdfdmVyc2lvbnMgPSBbICcy LjIuMCcsICcyLjMuMCcgXQorK2FjY2VwdGVkX2dwZ192ZXJzaW9ucyA9IFsgJzIuMi4wJywgJzIu My4wJywgJzIuNC4wJyBdCisgZ3BnX2NoZWNrX3ZlcnNpb24gPSBmaW5kX3Byb2dyYW0oJ2J1aWxk LWF1eCcgLyAnZ3BnX2NoZWNrX3ZlcnNpb24ucHknKQorIAorIGdsaWJfZGVwcyA9IFsKZGlmZiAt LWdpdCBhL3NyY3BrZ3Mvc2VhaG9yc2UvdGVtcGxhdGUgYi9zcmNwa2dzL3NlYWhvcnNlL3RlbXBs YXRlCmluZGV4IGJlOGJhNDU0YjRhOC4uZGE5MjIzNGQ4MjE2IDEwMDY0NAotLS0gYS9zcmNwa2dz L3NlYWhvcnNlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvc2VhaG9yc2UvdGVtcGxhdGUKQEAgLTEs NyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdzZWFob3JzZScKIHBrZ25hbWU9c2VhaG9y c2UKIHZlcnNpb249NDMuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9bWVz b24KIGJ1aWxkX2hlbHBlcj1naXIKIGhvc3RtYWtlZGVwZW5kcz0iZ2NyLWRldmVsIGdldHRleHQg Z2xpYi1kZXZlbCBnbnVwZyBpdHN0b29sIGxpYnNlY3JldC1kZXZlbAoKRnJvbSBmODRmODRlNzZk ZDVlM2Q3YmVmNmFhNzA1ODMyZjUxZjZkYmZmMjk0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiBLbGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmVi IDIwMjMgMTY6Mzg6MzUgKzAxMDAKU3ViamVjdDogW1BBVENIIDM1LzM5XSBzcXVpZDogcmV2YnVt cCBkdWUgdG8gb3BlbmxkYXAgdXBkYXRlCgotLS0KIHNyY3BrZ3Mvc3F1aWQvdGVtcGxhdGUgfCAy ICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL3NxdWlkL3RlbXBsYXRlIGIvc3JjcGtncy9zcXVpZC90ZW1wbGF0ZQpp bmRleCA2MjY5NzI1MjViYzAuLjA4NWM5Mzg1YmNlYiAxMDA2NDQKLS0tIGEvc3JjcGtncy9zcXVp ZC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3NxdWlkL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnc3F1aWQnCiBwa2duYW1lPXNxdWlkCiB2ZXJzaW9uPTUuMwot cmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmln dXJlX2FyZ3M9IgogIC0tc2JpbmRpcj0vdXNyL2JpbgoKRnJvbSAzZGRiYjY0MjBmZTAxNzA5Mjgz ZWM0Y2Y5MGQ0MjE0NjlmN2MzMjU0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFy YSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTY6 Mzk6MzAgKzAxMDAKU3ViamVjdDogW1BBVENIIDM2LzM5XSBzc3NkOiByZXZidW1wIGR1ZSB0byBv cGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtncy9zc3NkL3RlbXBsYXRlIHwgMiArLQogMSBmaWxl IGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9zc3NkL3RlbXBsYXRlIGIvc3JjcGtncy9zc3NkL3RlbXBsYXRlCmluZGV4IDNiZmViMzJl ZjEwZC4uNDRlNmYzYjlhNjlkIDEwMDY0NAotLS0gYS9zcmNwa2dzL3Nzc2QvdGVtcGxhdGUKKysr IGIvc3JjcGtncy9zc3NkL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxl IGZvciAnc3NzZCcKIHBrZ25hbWU9c3NzZAogdmVyc2lvbj0yLjQuMAotcmV2aXNpb249NQorcmV2 aXNpb249NgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogIyBjb25maWd1cmUgY2hlY2tzIHN5 cy52ZXJzaW9uWzozXSBmb3IgUHl0aG9uIHZlcnNpb25pbmcsIHNvIDMuMTAgYmVjb21lcyAzLjE7 CiAjIHVudGlsIHRoaXMgaXMgZml4ZWQgdXBzdHJlYW0sIG1hbnVhbGx5IGRlZmluZSBhbV9jdl9w eXRob25fdmVyc2lvbiB0byBjaXJjdW12ZW50CgpGcm9tIDE4NzY4NzE5NDlhMTMxZDEwZjM2ODBj NmM4YTI3NzUwZmEyNDdhNGIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEtsYXJhIE1v ZGluIDxrbGFyYXNtb2RpbkBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMSBGZWIgMjAyMyAxNjo0MToz MCArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMzcvMzldIHN5bHBoZWVkOiByZXZidW1wIGR1ZSB0byBv cGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtncy9zeWxwaGVlZC90ZW1wbGF0ZSB8IDIgKy0KIDEg ZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3Mvc3lscGhlZWQvdGVtcGxhdGUgYi9zcmNwa2dzL3N5bHBoZWVkL3RlbXBsYXRlCmlu ZGV4IDdmYmYyNTI3NmZiYy4uMjVhYTc1M2U2ZDRkIDEwMDY0NAotLS0gYS9zcmNwa2dzL3N5bHBo ZWVkL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvc3lscGhlZWQvdGVtcGxhdGUKQEAgLTEsNyArMSw3 IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdzeWxwaGVlZCcKIHBrZ25hbWU9c3lscGhlZWQKIHZl cnNpb249My43LjAKLXJldmlzaW9uPTgKK3JldmlzaW9uPTkKIGJ1aWxkX3N0eWxlPWdudS1jb25m aWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSItLWRpc2FibGUtY29tcGZhY2UgLS1kaXNhYmxlLWd0a3Nw ZWxsIC0tZW5hYmxlLWxkYXAgLS13aXRoLWdwZ21lLXByZWZpeD0ke1hCUFNfQ1JPU1NfQkFTRX0v dXNyIgogaG9zdG1ha2VkZXBlbmRzPSJhdXRvbWFrZSBsaWJ0b29sIHBrZy1jb25maWcgZmxleCBn ZXR0ZXh0LWRldmVsIGd0aystZGV2ZWwgZ3BnbWUtZGV2ZWwgZ2xpYi1kZXZlbCIKCkZyb20gOTQw NGIyZGQwYTBkMjU4MmZjMjJlN2NiMmEyOTk3YjgzNDQ3NDczNiBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2Vk LCAxIEZlYiAyMDIzIDE2OjQyOjQ3ICswMTAwClN1YmplY3Q6IFtQQVRDSCAzOC8zOV0gdmlydHVv c286IHVwZGF0ZSB0byA3LjIuOAoKdGVzdCBzdWl0ZSB3YXMgZmFpbGluZyBvbiByZXZidW1wCgot IHJlbW92ZSBwYXRjaGVzIHRoYXQgbm8gbG9uZ2VyIGFwcGx5Ci0gYWRkIHBhdGNoIHRoYXQgcmVt b3ZlcyBnaXQgcmV2aXNpb24gZnJvbSBncmFwaHFsCi0gZGlzYWJsZSBzdGF0aWMgbGlicmFyaWVz IGFzIHdlJ3JlIHJlbW92aW5nIHRoZW0gYWZ0ZXIgaW5zdGFsbCBhbnl3YXkKLSBhZGQgd2hpY2gg dG8gaG9zdG1ha2VkZXBlbmRzCi0gYWRkIG1pc3NpbmcgY2hlY2tkZXBlbmRzCi0tLQogLi4uL3Zp cnR1b3NvL3BhdGNoZXMvYWx3YXlzLWllZWUtZmxvYXRzLnBhdGNoIHwgICA0NiAtCiBzcmNwa2dz L3ZpcnR1b3NvL3BhdGNoZXMvZml4LWdyYXBocWwucGF0Y2ggICAgfCAgIDExICsKIC4uLi92aXJ0 dW9zby9wYXRjaGVzL2ZpeC11dGY4LWJpdHRlc3QucGF0Y2ggICB8ICAgMTUgLQogc3JjcGtncy92 aXJ0dW9zby9wYXRjaGVzL211c2wtcGFnZV9zaXplLnBhdGNoIHwgICAzNCAtCiAuLi4vcmVtb3Zl LW9wZW5zc2wtdmVyc2lvbi1jaGVjay5wYXRjaCAgICAgICAgfCAgIDQ4IC0KIC4uLi92aXJ0dW9z by9wYXRjaGVzL3NzbC1jb25uZWN0LXN0YXRlLnBhdGNoICB8ICAgMTUgLQogc3JjcGtncy92aXJ0 dW9zby9wYXRjaGVzL3NzbDEuMS5wYXRjaCAgICAgICAgIHwgMTQwMCAtLS0tLS0tLS0tLS0tLS0t LQogc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL3NzbDEuMV9tb3JlLnBhdGNoICAgIHwgICAyMCAt CiBzcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvdXNlLW1rc3RlbXAucGF0Y2ggICAgfCAgIDE4IC0K IHNyY3BrZ3MvdmlydHVvc28vdGVtcGxhdGUgICAgICAgICAgICAgICAgICAgICB8ICAgMTYgKy0K IDEwIGZpbGVzIGNoYW5nZWQsIDE4IGluc2VydGlvbnMoKyksIDE2MDUgZGVsZXRpb25zKC0pCiBk ZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL2Fsd2F5cy1pZWVlLWZs b2F0cy5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9m aXgtZ3JhcGhxbC5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvdmlydHVvc28vcGF0 Y2hlcy9maXgtdXRmOC1iaXR0ZXN0LnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy92 aXJ0dW9zby9wYXRjaGVzL211c2wtcGFnZV9zaXplLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQg c3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL3JlbW92ZS1vcGVuc3NsLXZlcnNpb24tY2hlY2sucGF0 Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvc3NsLWNvbm5l Y3Qtc3RhdGUucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3ZpcnR1b3NvL3BhdGNo ZXMvc3NsMS4xLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy92aXJ0dW9zby9wYXRj aGVzL3NzbDEuMV9tb3JlLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy92aXJ0dW9z by9wYXRjaGVzL3VzZS1ta3N0ZW1wLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy92aXJ0dW9z by9wYXRjaGVzL2Fsd2F5cy1pZWVlLWZsb2F0cy5wYXRjaCBiL3NyY3BrZ3MvdmlydHVvc28vcGF0 Y2hlcy9hbHdheXMtaWVlZS1mbG9hdHMucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDY5YjUwMzQyMTRmNy4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvdmlydHVvc28vcGF0 Y2hlcy9hbHdheXMtaWVlZS1mbG9hdHMucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw0NiArMCww IEBACi1Gcm9tIGJjOGU5ODkwZGU4Yzk4NjZlNmUxZjQ5YzgzNTVlYmVlOTE1NTc5ZTQgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBxNjYgPGRhbmllbEBvY3RhZm9yZ2Uub3JnPgotRGF0 ZTogV2VkLCAyOSBKYW4gMjAyMCAxMjo1MDo0NiArMDEwMAotU3ViamVjdDogW1BBVENIIDEvMl0g YWx3YXlzIHVzZSBJRUVFIGZsb2F0cwotCi1XZSBkb24ndCBidWlsZCBvbiBhbnkgcGxhdGZvcm1z IHdoZXJlIHRoaXMgaXMgbm90IHRoZSBjYXNlLgotCi1GaXhlcyBwbGF0Zm9ybXMgZm9yIHdoaWNo IHRoaXMgaXMgbm90IGNoZWNrZWQuCi0tLS0KLSBsaWJzcmMvRGsvRGttYXJzaGFsLmMgfCAyMCAr LS0tLS0tLS0tLS0tLS0tLS0tLQotIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMTkg ZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1naXQgbGlic3JjL0RrL0RrbWFyc2hhbC5jIGxpYnNyYy9E ay9Ea21hcnNoYWwuYwotaW5kZXggZGExNWEyMS4uYjJiNmM3MSAxMDA2NDQKLS0tLSBhL2xpYnNy Yy9Eay9Ea21hcnNoYWwuYwotKysrIGIvbGlic3JjL0RrL0RrbWFyc2hhbC5jCi1AQCAtMzEsMjUg KzMxLDcgQEAKLSAjIGluY2x1ZGUgPG5ldGluZXQvaW4uaD4JCQkgLyogZm9yIG50b2hsLCBodG9u bCAqLwotICNlbmRpZgotIAotLSNpZiBkZWZpbmVkIChpMzg2KSB8fCBcCi0tICAgIGRlZmluZWQg KF9XSU42NCkgfHwgXAotLSAgICBkZWZpbmVkIChfTV9JWDg2KSB8fCBcCi0tICAgIGRlZmluZWQg KF9NX0FMUEhBKSB8fCBcCi0tICAgIGRlZmluZWQgKG1jNjgwMDApIHx8IFwKLS0gICAgZGVmaW5l ZCAoc3BhcmMpIHx8IFwKLS0gICAgZGVmaW5lZCAoX194ODZfNjQpIHx8IFwKLS0gICAgZGVmaW5l ZCAoX19hbHBoYSkgfHwgXAotLSAgICBkZWZpbmVkIChfX3Bvd2VycGMpIHx8IFwKLS0gICAgZGVm aW5lZCAobWlwcykgfHwgXAotLSAgICBkZWZpbmVkIChfX09TMl9fKSB8fCBcCi0tICAgIGRlZmlu ZWQgKF9JQk1SMikKLS0jIGRlZmluZSBfSUVFRV9GTE9BVFMKLS0jZWxpZiBkZWZpbmVkIChPUExf U09VUkNFKQotLSMgaW5jbHVkZSA8bGlicnBjLmg+Ci0tI2Vsc2UKLS0jIGluY2x1ZGUgPHJwYy90 eXBlcy5oPgotLSMgaW5jbHVkZSA8cnBjL3hkci5oPgotLSNlbmRpZgotKyNkZWZpbmUgX0lFRUVf RkxPQVRTCi0gCi0gbWFjcm9fY2hhcl9mdW5jIHJlYWR0YWJsZVsyNTZdOwotIHNlc193cml0ZV9m dW5jIHdyaXRldGFibGVbMjU2XTsKLS0tIAotMi4yNC4wCi0KZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv dmlydHVvc28vcGF0Y2hlcy9maXgtZ3JhcGhxbC5wYXRjaCBiL3NyY3BrZ3MvdmlydHVvc28vcGF0 Y2hlcy9maXgtZ3JhcGhxbC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw MDAwMDAuLmYwNGIzZTQ1YzQ3YQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvdmlydHVvc28v cGF0Y2hlcy9maXgtZ3JhcGhxbC5wYXRjaApAQCAtMCwwICsxLDExIEBACistLS0gYS9iaW5zcmMv Z3JhcGhxbC9ncmFwaHFsX3BsdWdpbi5jCTIwMjMtMDItMDEgMjE6MTQ6MTguMTQ4NDc4NTAwICsw MTAwCisrKysgYi9iaW5zcmMvZ3JhcGhxbC9ncmFwaHFsX3BsdWdpbi5jCTIwMjItMTAtMTkgMTQ6 NDQ6MTQuMDAwMDAwMDAwICswMjAwCitAQCAtMTczLDcgKzE3Myw3IEBACisgCisgc3RhdGljIHVu aXRfdmVyc2lvbl90IHBsdWdpbl9ncmFwaHFsX3ZlcnNpb24gPSB7CisgICAiR3JhcGhRTC9TUEFS UUwgQnJpZGdlIiwJLyohPCBUaXRsZSBvZiB1bml0LCBmaWxsZWQgYnkgdW5pdCAqLworLSAgR1FM X0JSSURHRV9WRVIgIiAoIiBHSVRfSEVBRF9TVFIgIikiLAkvKiE8IFZlcnNpb24gbnVtYmVyLCBm aWxsZWQgYnkgdW5pdCAqLworKyAgR1FMX0JSSURHRV9WRVIsCQkvKiE8IFZlcnNpb24gbnVtYmVy LCBmaWxsZWQgYnkgdW5pdCAqLworICAgIk9wZW5MaW5rIFNvZnR3YXJlIiwJCS8qITwgUGx1Z2lu J3MgZGV2ZWxvcGVyLCBmaWxsZWQgYnkgdW5pdCAqLworICAgIlN1cHBvcnQgZnVuY3Rpb25zIGZv ciBHcmFwaFFML1NQQVJRTCBCcmlkZ2UiLAkvKiE8IEFueSBhZGRpdGlvbmFsIGluZm8sIGZpbGxl ZCBieSB1bml0ICovCisgICAwLAkJCQkvKiE8IEVycm9yIG1lc3NhZ2UsIGZpbGxlZCBieSB1bml0 IGxvYWRlciAqLwpkaWZmIC0tZ2l0IGEvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL2ZpeC11dGY4 LWJpdHRlc3QucGF0Y2ggYi9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvZml4LXV0ZjgtYml0dGVz dC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODVlODRhNjdlZjNjLi4wMDAw MDAwMDAwMDAKLS0tIGEvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL2ZpeC11dGY4LWJpdHRlc3Qu cGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwxNSArMCwwIEBACi1Tb3VyY2U6IEBwdWxsbW9sbAot VXBzdHJlYW06IG5vCi1SZWFzb246IGV4cHJlc3Npb24gcmVxdWlyZXMgYmluYXJ5IEFORCwgbm90 IGxvZ2ljYWwKLQotLS0tIGEvbGlic3JjL3V0aWwvcGNyZWxpYi9wY3JlX3N0dWR5LmMJMjAxOC0w OC0xNiAwMTowNjoyMS4wMDAwMDAwMDAgKzAyMDAKLSsrKyBiL2xpYnNyYy91dGlsL3BjcmVsaWIv cGNyZV9zdHVkeS5jCTIwMjAtMDEtMjcgMTU6NDQ6NTcuNzE1ODIxMzU1ICswMTAwCi1AQCAtNDMy LDcgKzQzMiw3IEBACi0gICAgICAgICAgIGZvciAoYyA9IDA7IGMgPCAxNjsgYysrKSBzdGFydF9i aXRzW2NdIHw9IHRjb2RlW2NdOwotICAgICAgICAgICBmb3IgKGMgPSAxMjg7IGMgPCAyNTY7IGMr KykKLSAgICAgICAgICAgICB7Ci0tICAgICAgICAgICAgaWYgKCh0Y29kZVtjLzhdICYmICgxIDw8 IChjJjcpKSkgIT0gMCkKLSsgICAgICAgICAgICBpZiAoKHRjb2RlW2MvOF0gJiAoMSA8PCAoYyY3 KSkpICE9IDApCi0gICAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICBpbnQgZCA9IChjID4+ IDYpIHwgMHhjMDsgICAgICAgICAgICAvKiBTZXQgYml0IGZvciB0aGlzIHN0YXJ0ZXIgKi8KLSAg ICAgICAgICAgICAgIHN0YXJ0X2JpdHNbZC84XSB8PSAoMSA8PCAoZCY3KSk7ICAgIC8qIGFuZCB0 aGVuIHNraXAgb24gdG8gdGhlICovCmRpZmYgLS1naXQgYS9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNo ZXMvbXVzbC1wYWdlX3NpemUucGF0Y2ggYi9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvbXVzbC1w YWdlX3NpemUucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDczYTlhYmRkMGYz OS4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9tdXNsLXBhZ2Vf c2l6ZS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDM0ICswLDAgQEAKLUZyb20gMTI1NjY5ODIx ZDk1ZmY5ODliZjk0MTYxYjhlMjQ5N2JmY2E5ZDBhYiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK LUZyb206IHE2NiA8ZGFuaWVsQG9jdGFmb3JnZS5vcmc+Ci1EYXRlOiBXZWQsIDI5IEphbiAyMDIw IDEyOjU0OjE0ICswMTAwCi1TdWJqZWN0OiBbUEFUQ0ggMi8yXSBVc2UgbW9yZSBwb3J0YWJsZSBw YWdlIHNpemUgY2hlY2sKLQotVGhpcyBmaXhlcyBtdXNsIGJ1aWxkcy4KLS0tLQotIGxpYnNyYy9E ay90bHNmLmggfCAzICsrLQotIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDEgZGVs ZXRpb24oLSkKLQotZGlmZiAtLWdpdCBsaWJzcmMvRGsvdGxzZi5oIGxpYnNyYy9Eay90bHNmLmgK LWluZGV4IGRkY2U0NzguLmE5Njg3ZjQgMTAwNjQ0Ci0tLS0gYS9saWJzcmMvRGsvdGxzZi5oCi0r KysgYi9saWJzcmMvRGsvdGxzZi5oCi1AQCAtMjAsNiArMjAsNyBAQAotICNkZWZpbmUgX1RMU0Zf SF8KLSAKLSAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+Ci0rI2luY2x1ZGUgPHVuaXN0ZC5oPgotIAot IGV4dGVybiBzaXplX3QgaW5pdF9tZW1vcnlfcG9vbChzaXplX3QsIHZvaWQgKik7Ci0gZXh0ZXJu IHNpemVfdCBnZXRfdXNlZF9zaXplKHZvaWQgKik7Ci1AQCAtMTU5LDcgKzE2MCw3IEBAIGV4dGVy biB2b2lkIHRsc2ZfYmFzZV9mcmVlICh2b2lkICogYywgc2l6ZV90IHN6KTsKLSAKLSAjZGVmaW5l IERFRkFVTFRfQVJFQV9TSVpFICgxMDI0KjEwKQotIAotLSNkZWZpbmUgUEFHRV9TSVpFIChnZXRw YWdlc2l6ZSgpKQotKyNkZWZpbmUgUEFHRV9TSVpFICgoaW50KXN5c2NvbmYoX1NDX1BBR0VTSVpF KSkKLSAKLSAjaWZuZGVmIFdJTjMyCi0gI2lmZGVmIFVTRV9QUklOVEYKLS0tIAotMi4yNC4wCi0K ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9yZW1vdmUtb3BlbnNzbC12ZXJz aW9uLWNoZWNrLnBhdGNoIGIvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL3JlbW92ZS1vcGVuc3Ns LXZlcnNpb24tY2hlY2sucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDMwOTRm YmI2YWI2NC4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9yZW1v dmUtb3BlbnNzbC12ZXJzaW9uLWNoZWNrLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNDggKzAs MCBAQAotU291cmNlOiBAcHVsbG1vbGwKLVVwc3RyZWFtOiBubwotUmVhc29uOiBFbmFibGUgc3Vi ZGlyLW9iamVjdHMgYW5kIHN0cmlwIG9wZW5zc2wgdmVyc2lvbiBjaGVjayB3aGljaCBmYWlscyBm b3IgbGlicmVzc2wKLQotLS0tIGEvY29uZmlndXJlLmFjCTIwMTgtMDgtMTYgMDE6MDY6MjEuMDAw MDAwMDAwICswMjAwCi0rKysgYi9jb25maWd1cmUuYWMJMjAyMC0wMS0yNyAxNTowMjozNi45NDY5 MjI2NjMgKzAxMDAKLUBAIC01OCw3ICs1OCw3IEBACi0gZG5sCUFNX0lOSVRfQVVUT01BS0UoWzEu OF0pCi0gZG5sCUFNX0lOSVRfQVVUT01BS0UoWzEuOSB0YXItdXN0YXJdKQotIGRubAotLUFNX0lO SVRfQVVUT01BS0UoWzEuOSB0YXItdXN0YXJdKQotK0FNX0lOSVRfQVVUT01BS0UoWzEuOSB0YXIt dXN0YXIgc3ViZGlyLW9iamVjdHNdKQotIAotIEFNX01BSU5UQUlORVJfTU9ERQotIAotQEAgLTg2 NywzMiArODY3LDYgQEAKLSAJOzsKLSBlc2FjCi0gCi0tQUNfTVNHX0NIRUNLSU5HKFtPcGVuU1NM IHZlcnNpb25dKQotLUFDX1RSWV9DT01QSUxFKFsKLS0jaW5jbHVkZSA8b3BlbnNzbC9vcGVuc3Ns di5oPgotLV0sIFsKLS0jaWYgT1BFTlNTTF9WRVJTSU9OX05VTUJFUiA8IDB4MDA5MDgwMWZMCi0t I2Vycm9yIE9wZW5TU0wgdmVyc2lvbiB0b28gb2xkIAotLSNlbmRpZgotLSAgICBdLFsKLS0gICAg ICBBQ19NU0dfUkVTVUxUKFs+PSAwLjkuOGVdKQotLSAgICBdLFsKLS0gICAgICBBQ19NU0dfRVJS T1IoW09wZW5TU0wgdmVyc2lvbiAwLjkuOGUgb3IgZ3JlYXRlciBpcyByZXF1aXJlZC5dKQotLSAg ICBdKQotLQotLUFDX01TR19DSEVDS0lORyhbT3BlblNTTCB2ZXJzaW9uXSkKLS1BQ19UUllfQ09N UElMRShbCi0tI2luY2x1ZGUgPG9wZW5zc2wvb3BlbnNzbHYuaD4KLS1dLFsKLS0jaWYgT1BFTlNT TF9WRVJTSU9OX05VTUJFUiA+PSAweDEwMTAwMDBmTAotLSNlcnJvciBPcGVuU1NMIHZlcnNpb24g dG9vIG5ldwotLSNlbmRpZgotLSAgICBdLFsKLS0gICAgICBBQ19NU0dfUkVTVUxUKFs8IDEuMS4w XSkKLS0gICAgXSxbCi0tICAgICAgQUNfTVNHX0VSUk9SKFtPcGVuU1NMIHZlcnNpb24gMS4xLjAg b3IgZ3JlYXRlciBpcyBjdXJyZW50bHkgbm90IHN1cHBvcnRlZC5dKQotLSAgICBdKQotLQotIEFD X01TR19DSEVDS0lORyhbdXNhYmlsaXR5IG9mIHRoZSBPcGVuU1NMIGhlYWRlciBmaWxlcyBhbmQg bGlicmFyeSBpbiAke29wZW5zc2xfZGlyfV0pCi0gQUNfVFJZX1JVTihbCi0gI2luY2x1ZGUgPG9w ZW5zc2wvcnNhLmg+CmRpZmYgLS1naXQgYS9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvc3NsLWNv bm5lY3Qtc3RhdGUucGF0Y2ggYi9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvc3NsLWNvbm5lY3Qt c3RhdGUucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDM5NTY2ZTNiNmRmZC4u MDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9zc2wtY29ubmVjdC1z dGF0ZS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDE1ICswLDAgQEAKLVNvdXJjZTogQHB1bGxt b2xsCi1VcHN0cmVhbTogbm8KLVJlYXNvbjogVXNlIHRoZSBwcm9wZXIgaW50ZXJmYWNlIG9mIGxp YnJlc3NsIHdoaWNoIGRvZXMgbm90IGV4cG9zZSB0aGUgaW50ZXJuYWwgc3RydWN0dXJlIG9mIFNT TAotCi0tLS0gYS9saWJzcmMvV2kvaHR0cC5jCTIwMTgtMDgtMTYgMDE6MDY6MjEuMDAwMDAwMDAw ICswMjAwCi0rKysgYi9saWJzcmMvV2kvaHR0cC5jCTIwMjAtMDEtMjcgMTU6MDk6NTMuMjg0OTA1 MjY1ICswMTAwCi1AQCAtOTk0OSw3ICs5OTQ5LDcgQEAKLSAJICBjbGlfc3NsX2dldF9lcnJvcl9z dHJpbmcgKGVycl9idWYsIHNpemVvZiAoZXJyX2J1ZikpOwotIAkgIHNxbHJfbmV3X2Vycm9yICgi NDIwMDAiLCAiLi4wMDIiLCAiU1NMX2RvX2hhbmRzaGFrZSBmYWlsZWQgJXMiLCBlcnJfYnVmKTsK LSAJfQotLSAgICAgIHNzbC0+c3RhdGUgPSBTU0xfU1RfQUNDRVBUOwotKyAgICAgIFNTTF9zZXRf YWNjZXB0X3N0YXRlIChzc2wpOwotICAgICAgIHdoaWxlIChTU0xfcmVuZWdvdGlhdGVfcGVuZGlu ZyAoc3NsKSAmJiBjdHIgPCAxMDAwKQotIAl7Ci0gCSAgdGltZW91dF90IHRvID0geyAwLCAxMDAw IH07CmRpZmYgLS1naXQgYS9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvc3NsMS4xLnBhdGNoIGIv c3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL3NzbDEuMS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAx MDA2NDQKaW5kZXggOTg4NzQ5OTQ2NDgwLi4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy92aXJ0 dW9zby9wYXRjaGVzL3NzbDEuMS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDE0MDAgKzAsMCBA QAotRGVzY3JpcHRpb246IEZpeCBGVEJGUyB3aXRoIG9wZW5zc2wgMS4xCi1BdXRob3I6IFNlYmFz dGlhbiBBbmRyemVqIFNpZXdpb3IgPHNlYmFzdGlhbkBicmVha3BvaW50LmNjPgotQnVnLURlYmlh bjogaHR0cHM6Ly9idWdzLmRlYmlhbi5vcmcvODI4NTk0Ci1Gb3J3YXJkZWQ6IGh0dHBzOi8vZ2l0 aHViLmNvbS9vcGVubGluay92aXJ0dW9zby1vcGVuc291cmNlL3B1bGwvNTgzCi1MYXN0LVVwZGF0 ZTogTW8gMTEuIEZlYiAxMzo1MDoxNyBDRVQgMjAxOSAoYnkgQW5kcmVhcyBUaWxsZSA8dGlsbGVA ZGViaWFuLm9yZz4pCi0KLS0tLQotCi1Gcm9tIDgyMzA5MmNjY2JkOGUyYWI5YmZhZDZjM2QzZGY3 OTFhN2ZmYTc2ZmMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBTZWJhc3RpYW4gQW5k cnplaiBTaWV3aW9yIDxzZWJhc3RpYW5AYnJlYWtwb2ludC5jYz4KLURhdGU6IE1vbiwgNSBTZXAg MjAxNiAxMDo0OTo1NCArMDAwMAotU3ViamVjdDogW1BBVENIXSB2aXJ0dW9zby1vcGVuc291cmNl OiBidWlsZCBhZ2FpbnN0IG9wZW5zc2wgMS4xLjAKLQotU2lnbmVkLW9mZi1ieTogU2ViYXN0aWFu IEFuZHJ6ZWogU2lld2lvciA8c2ViYXN0aWFuQGJyZWFrcG9pbnQuY2M+Ci0tLS0KLSBsaWJzcmMv RGsvRGtlcm5lbC5jICAgICAgfCAgIDYgKy0KLSBsaWJzcmMvV2kvYmlmX2NyeXB0by5jICAgfCAx MjAgKysrKysrKysrKy0tLS0tLS0tCi0gbGlic3JjL1dpL2h0dHAuYyAgICAgICAgIHwgICAyICst Ci0gbGlic3JjL1dpL3htbGVuYy5jICAgICAgIHwgMzE5ICsrKysrKysrKysrKysrKysrKysrKysr KysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCi0gbGlic3JjL1dpL3htbGVuYy5oICAgICAgIHwgMTkz ICsrKysrKysrKysrKysrKysrKysrKysrKysrLS0KLSBsaWJzcmMvV2kveG1sZW5jX2FsZ29zLmMg fCAxMzIgKysrKysrKysrKystLS0tLS0tLS0KLSBsaWJzcmMvdXRpbC9zc2xlbmdpbmUuYyAgfCAg IDYgKy0KLSA3IGZpbGVzIGNoYW5nZWQsIDUyNCBpbnNlcnRpb25zKCspLCAyNTQgZGVsZXRpb25z KC0pCi0KLS0tLSBhL2xpYnNyYy9XaS9iaWZfY3J5cHRvLmMKLSsrKyBiL2xpYnNyYy9XaS9iaWZf Y3J5cHRvLmMKLUBAIC0xODEsMjEgKzE4MSwyNiBAQCBib3hfaG1hYyAoY2FkZHJfdCBib3gsIGNh ZGRyX3Qga2V5LCBpbnQKLSAgIHVuc2lnbmVkIGNoYXIgdGVtcFtFVlBfTUFYX01EX1NJWkVdOwot ICAgdW5zaWduZWQgaW50IHNpemUgPSAwOwotICAgY2FkZHJfdCByZXMgPSBOVUxMOwotLSAgSE1B Q19DVFggY3R4OwotKyAgSE1BQ19DVFggKmN0eDsKLSAgIGNvbnN0IEVWUF9NRCAqbWQgPSBFVlBf c2hhMSAoKTsKLSAKLSAgIGlmIChhbGcgPT0gMSkKLSAgICAgbWQgPSBFVlBfcmlwZW1kMTYwICgp OwotIAotLSAgSE1BQ19Jbml0ICgmY3R4LCBrZXksIGJveF9sZW5ndGggKGtleSkgLSBEVl9TVFJJ TkdQIChrZXkpID8gMSA6IDAsIG1kKTsKLS0gIGJveF9obWFjXzEgKGJveCwgJmN0eCk7Ci0tICBI TUFDX0ZpbmFsICgmY3R4LCB0ZW1wLCAmc2l6ZSk7Ci0rICBjdHggPSBITUFDX0NUWF9uZXcoKTsK LSsgIGlmICghY3R4KQotKwkgIHJldHVybiByZXM7Ci0rCi0rICBITUFDX0luaXRfZXggKGN0eCwg a2V5LCBib3hfbGVuZ3RoIChrZXkpIC0gRFZfU1RSSU5HUCAoa2V5KSA/IDEgOiAwLCBtZCwgTlVM TCk7Ci0rICBib3hfaG1hY18xIChib3gsIGN0eCk7Ci0rICBITUFDX0ZpbmFsIChjdHgsIHRlbXAs ICZzaXplKTsKLSAgIGlmIChzaXplKQotICAgICB7Ci0gICAgICAgcmVzID0gZGtfYWxsb2NfYm94 IChzaXplICsgMSwgRFZfU0hPUlRfU1RSSU5HKTsKLSAgICAgICBtZW1jcHkgKHJlcywgdGVtcCwg c2l6ZSk7Ci0gICAgICAgcmVzW3NpemVdID0gMDsKLSAgICAgfQotKyAgSE1BQ19DVFhfZnJlZShj dHgpOwotICAgcmV0dXJuIHJlczsKLSB9Ci0gCi1AQCAtMzQ3LDE0ICszNTIsMTIgQEAgYXNuMV9w YXJzZV90b194bWwgKEJJTyAqIGJwLCB1bnNpZ25lZCBjaAotIAkgICAgewotIAkgICAgICBpbnQg aWk7Ci0gCi0tCSAgICAgIG9wcCA9IG9wOwotLQkgICAgICBpaSA9IGQyaV9BU04xX0JPT0xFQU4g KE5VTEwsIChjb25zdCB1bnNpZ25lZCBjaGFyICoqKSZvcHAsIGxlbiArIGhsKTsKLS0JICAgICAg aWYgKGlpIDwgMCkKLSsJICAgICAgaWYgKGxlbiArIGhsIDwgMSkKLSAJCXsKLSAJCSAgaWYgKEJJ T193cml0ZSAoYnAsICJCYWQgYm9vbGVhblxuIiwgMTIpKQotIAkJICAgIGdvdG8gZW5kOwotIAkJ fQotLQkgICAgICBCSU9fcHJpbnRmIChicCwgIiVkIiwgaWkpOwotKwkgICAgICBCSU9fcHJpbnRm IChicCwgIiVkIiwgcFswXSk7Ci0gCSAgICB9Ci0gCSAgZWxzZSBpZiAodGFnID09IFZfQVNOMV9C TVBTVFJJTkcpCi0gCSAgICB7Ci1AQCAtNDE1LDcgKzQxOCw3IEBAIGFzbjFfcGFyc2VfdG9feG1s IChCSU8gKiBicCwgdW5zaWduZWQgY2gKLSAJCX0KLSAJICAgICAgaWYgKG9zICE9IE5VTEwpCi0g CQl7Ci0tCQkgIE1fQVNOMV9PQ1RFVF9TVFJJTkdfZnJlZSAob3MpOwotKwkJICBBU04xX1NUUklO R19mcmVlIChvcyk7Ci0gCQkgIG9zID0gTlVMTDsKLSAJCX0KLSAJICAgIH0KLUBAIC00NDgsNyAr NDUxLDcgQEAgYXNuMV9wYXJzZV90b194bWwgKEJJTyAqIGJwLCB1bnNpZ25lZCBjaAotIAkJICBp ZiAoQklPX3dyaXRlIChicCwgIkJBRCBJTlRFR0VSIiwgMTEpIDw9IDApCi0gCQkgICAgZ290byBl bmQ7Ci0gCQl9Ci0tCSAgICAgIE1fQVNOMV9JTlRFR0VSX2ZyZWUgKGJzKTsKLSsJICAgICAgQVNO MV9TVFJJTkdfZnJlZSAoYnMpOwotIAkgICAgfQotIAkgIGVsc2UgaWYgKHRhZyA9PSBWX0FTTjFf RU5VTUVSQVRFRCkKLSAJICAgIHsKLUBAIC00NzksNyArNDgyLDcgQEAgYXNuMV9wYXJzZV90b194 bWwgKEJJTyAqIGJwLCB1bnNpZ25lZCBjaAotIAkJICBpZiAoQklPX3dyaXRlIChicCwgIkJBRCBF TlVNRVJBVEVEIiwgMTEpIDw9IDApCi0gCQkgICAgZ290byBlbmQ7Ci0gCQl9Ci0tCSAgICAgIE1f QVNOMV9FTlVNRVJBVEVEX2ZyZWUgKGJzKTsKLSsJICAgICAgQVNOMV9TVFJJTkdfZnJlZSAoYnMp OwotIAkgICAgfQotIAkgIGVsc2UgaWYgKGxlbiA+IDAgJiYgZHVtcCkKLSAJICAgIHsKLUBAIC01 MTUsNyArNTE4LDcgQEAgZW5kOgotICAgaWYgKG8gIT0gTlVMTCkKLSAgICAgQVNOMV9PQkpFQ1Rf ZnJlZSAobyk7Ci0gICBpZiAob3MgIT0gTlVMTCkKLS0gICAgTV9BU04xX09DVEVUX1NUUklOR19m cmVlIChvcyk7Ci0rICAgIEFTTjFfU1RSSU5HX2ZyZWUgKG9zKTsKLSAgICpwcCA9IHA7Ci0gICBy ZXR1cm4gKHJldCk7Ci0gfQotQEAgLTcyMyw3ICs3MjYsNyBAQCBiaW9fdG9fc3Ryc2VzIChCSU8g KiBvdXRfYmlvKQotICAgaW50IGxlbiA9IEJJT19nZXRfbWVtX2RhdGEgKG91dF9iaW8sICZwdHIp OwotICAgaW50IHRvX3JlYWQgPSBsZW4sIHJlYWRlZCA9IDA7Ci0gCi0tICB0b19mcmVlID0gKChC VUZfTUVNICopIG91dF9iaW8tPnB0ciktPmRhdGE7Ci0rICB0b19mcmVlID0gKChCVUZfTUVNICop IEJJT19nZXRfZGF0YShvdXRfYmlvKSktPmRhdGE7Ci0gICBCSU9fc2V0X2ZsYWdzIChvdXRfYmlv LCBCSU9fRkxBR1NfTUVNX1JET05MWSk7Ci0gICBDQVRDSF9XUklURV9GQUlMIChzZXMpCi0gICAg IHsKLUBAIC03MzUsNyArNzM4LDcgQEAgYmlvX3RvX3N0cnNlcyAoQklPICogb3V0X2JpbykKLSAg ICAgICB9IHdoaWxlICh0b19yZWFkID4gMCk7Ci0gICAgIH0KLSAgIEVORF9XUklURV9GQUlMIChz ZXMpOwotLSAgKChCVUZfTUVNICopIG91dF9iaW8tPnB0ciktPmRhdGEgPSB0b19mcmVlOwotKyAg KChCVUZfTUVNICopIEJJT19nZXRfZGF0YShvdXRfYmlvKSktPmRhdGEgPSB0b19mcmVlOwotICAg QklPX2NsZWFyX2ZsYWdzIChvdXRfYmlvLCBCSU9fRkxBR1NfTUVNX1JET05MWSk7Ci0gICByZXR1 cm4gc2VzOwotIH0KLUBAIC03NzAsNyArNzczLDcgQEAgYmlmX3NtaW1lX3ZlcmlmeSAoY2FkZHJf dCAqIHFzdCwgY2FkZHJfdAotICAgaWYgKERWX1RZUEVfT0YgKG1zZykgPT0gRFZfU1RSSU5HX1NF U1NJT04pCi0gICAgIHsKLSAgICAgICBpbl9iaW8gPSBzdHJzZXNfdG9fYmlvICgoZGtfc2Vzc2lv bl90ICopIG1zZyk7Ci0tICAgICAgdG9fZnJlZSA9ICgoQlVGX01FTSAqKSBpbl9iaW8tPnB0cikt PmRhdGE7Ci0rICAgICAgdG9fZnJlZSA9ICgoQlVGX01FTSAqKSBCSU9fZ2V0X2RhdGEoaW5fYmlv KSktPmRhdGE7Ci0gICAgICAgQklPX3NldF9mbGFncyAoaW5fYmlvLCBCSU9fRkxBR1NfTUVNX1JE T05MWSk7Ci0gICAgIH0KLSAgIGVsc2UKLUBAIC03ODAsNyArNzgzLDcgQEAgYmlmX3NtaW1lX3Zl cmlmeSAoY2FkZHJfdCAqIHFzdCwgY2FkZHJfdAotICAgICAgIHA3ID0gU01JTUVfcmVhZF9QS0NT NyAoaW5fYmlvLCAmZGF0YV9iaW8pOwotICAgICAgIGlmICh0b19mcmVlKQotIAl7Ci0tCSAgKChC VUZfTUVNICopIGluX2Jpby0+cHRyKS0+ZGF0YSA9IHRvX2ZyZWU7Ci0rCSAgKChCVUZfTUVNICop IEJJT19nZXRfZGF0YShpbl9iaW8pKS0+ZGF0YSA9IHRvX2ZyZWU7Ci0gCSAgQklPX2NsZWFyX2Zs YWdzIChpbl9iaW8sIEJJT19GTEFHU19NRU1fUkRPTkxZKTsKLSAJfQotICAgICAgIEJJT19mcmVl IChpbl9iaW8pOwotQEAgLTkyNCwxNiArOTI3LDIwIEBAIGJpZl9zbWltZV9zaWduIChjYWRkcl90 ICogcXN0LCBjYWRkcl90ICoKLSAgICAgfQotIAotICAgY2VydHMgPSBza19YNTA5X25ld19udWxs ICgpOwotLSAgaWYgKHN0b3JlICYmIHN0b3JlLT5vYmpzKQotKwotKyAgaWYgKHN0b3JlICYmIFg1 MDlfU1RPUkVfZ2V0MF9vYmplY3RzKHN0b3JlKSkKLSAgICAgewotLSAgICAgIGZvciAoaW54ID0g MDsgaW54IDwgc2tfWDUwOV9PQkpFQ1RfbnVtIChzdG9yZS0+b2Jqcyk7IGlueCsrKQotKyAgICAg IFNUQUNLX09GKFg1MDlfT0JKRUNUKSAqc3RvcmVfb2JqcyA9IFg1MDlfU1RPUkVfZ2V0MF9vYmpl Y3RzKHN0b3JlKTsKLSsKLSsgICAgICBmb3IgKGlueCA9IDA7IGlueCA8IHNrX1g1MDlfT0JKRUNU X251bSAoc3RvcmVfb2Jqcyk7IGlueCsrKQotIAl7Ci0tCSAgWDUwOV9PQkpFQ1QgKm9iaiA9IHNr X1g1MDlfT0JKRUNUX3ZhbHVlIChzdG9yZS0+b2JqcywgaW54KTsKLS0JICBpZiAob2JqLT50eXBl ID09IFg1MDlfTFVfWDUwOSkKLS0JICAgIHNrX1g1MDlfcHVzaCAoY2VydHMsIFg1MDlfZHVwIChv YmotPmRhdGEueDUwOSkpOwotKwkgIFg1MDlfT0JKRUNUICpvYmogPSBza19YNTA5X09CSkVDVF92 YWx1ZSAoc3RvcmVfb2JqcywgaW54KTsKLSsJICBpZiAoWDUwOV9PQkpFQ1RfZ2V0X3R5cGUob2Jq KSA9PSBYNTA5X0xVX1g1MDkpCi0rCSAgICBza19YNTA5X3B1c2ggKGNlcnRzLCBYNTA5X2R1cCAo WDUwOV9PQkpFQ1RfZ2V0MF9YNTA5KG9iaikpKTsKLSAJfQotIAotICAgICB9Ci0rCi0gICBpZiAo c3RvcmUpCi0gICAgIFg1MDlfU1RPUkVfZnJlZSAoc3RvcmUpOwotICAgaW5fYmlvID0gQklPX25l d19tZW1fYnVmIChtc2csIGJveF9sZW5ndGggKG1zZykgLSAxKTsKLUBAIC0xMDA1LDE1ICsxMDEy LDE5IEBAIGJpZl9zbWltZV9lbmNyeXB0IChjYWRkcl90ICogcXN0LCBjYWRkcl8KLSAgICAgc3Fs cl9uZXdfZXJyb3IgKCI0MjAwMCIsICJDUjAwNiIsICJObyByZWNpcGllbnQgY2VydGlmaWNhdGVz Iik7Ci0gCi0gICBjZXJ0cyA9IHNrX1g1MDlfbmV3X251bGwgKCk7Ci0tICBpZiAoc3RvcmUgJiYg c3RvcmUtPm9ianMpCi0rCi0rICBpZiAoc3RvcmUgJiYgWDUwOV9TVE9SRV9nZXQwX29iamVjdHMo c3RvcmUpKQotICAgICB7Ci0tICAgICAgZm9yIChpbnggPSAwOyBpbnggPCBza19YNTA5X09CSkVD VF9udW0gKHN0b3JlLT5vYmpzKTsgaW54KyspCi0rICAgICAgU1RBQ0tfT0YoWDUwOV9PQkpFQ1Qp ICpzdG9yZV9vYmpzID0gWDUwOV9TVE9SRV9nZXQwX29iamVjdHMoc3RvcmUpOwotKwotKyAgICAg IGZvciAoaW54ID0gMDsgaW54IDwgc2tfWDUwOV9PQkpFQ1RfbnVtIChzdG9yZV9vYmpzKTsgaW54 KyspCi0gCXsKLS0JICBYNTA5X09CSkVDVCAqb2JqID0gc2tfWDUwOV9PQkpFQ1RfdmFsdWUgKHN0 b3JlLT5vYmpzLCBpbngpOwotLQkgIGlmIChvYmotPnR5cGUgPT0gWDUwOV9MVV9YNTA5KQotLQkg ICAgc2tfWDUwOV9wdXNoIChjZXJ0cywgWDUwOV9kdXAgKG9iai0+ZGF0YS54NTA5KSk7Ci0rCSAg WDUwOV9PQkpFQ1QgKm9iaiA9IHNrX1g1MDlfT0JKRUNUX3ZhbHVlIChzdG9yZV9vYmpzLCBpbngp OwotKwkgIGlmIChYNTA5X09CSkVDVF9nZXRfdHlwZShvYmopID09IFg1MDlfTFVfWDUwOSkKLSsJ ICAgIHNrX1g1MDlfcHVzaCAoY2VydHMsIFg1MDlfZHVwIChYNTA5X09CSkVDVF9nZXQwX1g1MDko b2JqKSkpOwotIAl9Ci0gICAgIH0KLSsKLSAgIGlmIChzdG9yZSkKLSAgICAgWDUwOV9TVE9SRV9m cmVlIChzdG9yZSk7Ci0gICBpbl9iaW8gPSBCSU9fbmV3X21lbV9idWYgKG1zZywgYm94X2xlbmd0 aCAobXNnKSAtIDEpOwotQEAgLTExODEsNyArMTE5Miw3IEBAIHg1MDlfY2VydGlmaWNhdGVfdmVy aWZ5X2NiIChpbnQgb2ssIFg1MDkKLSAgIGNoYXIgKm9wdHMgPSAoY2hhciAqKSBYNTA5X1NUT1JF X0NUWF9nZXRfYXBwX2RhdGEgKGN0eCk7Ci0gICBpZiAoIW9rICYmIG9wdHMpCi0gICAgIHsKLS0g ICAgICBzd2l0Y2ggKGN0eC0+ZXJyb3IpCi0rICAgICAgc3dpdGNoIChYNTA5X1NUT1JFX0NUWF9n ZXRfZXJyb3IoY3R4KSkKLSAJewotIAljYXNlIFg1MDlfVl9FUlJfQ0VSVF9IQVNfRVhQSVJFRDoK LSAJICBpZiAoc3Ryc3RyIChvcHRzLCAiZXhwaXJlZCIpKQotQEAgLTEyODcsNyArMTI5OCw3IEBA IGJpZl94NTA5X2NlcnRpZmljYXRlX3ZlcmlmeSAoY2FkZHJfdCAqIHEKLSAgIGlmICghaSkKLSAg ICAgewotICAgICAgIGNvbnN0IGNoYXIgKmVycl9zdHI7Ci0tICAgICAgZXJyX3N0ciA9IFg1MDlf dmVyaWZ5X2NlcnRfZXJyb3Jfc3RyaW5nIChjc2MtPmVycm9yKTsKLSsgICAgICBlcnJfc3RyID0g WDUwOV92ZXJpZnlfY2VydF9lcnJvcl9zdHJpbmcgKFg1MDlfU1RPUkVfQ1RYX2dldF9lcnJvcihj c2MpKTsKLSAgICAgICAqZXJyX3JldCA9IHNydl9tYWtlX25ld19lcnJvciAoIjIyMDIzIiwgIkNS MDE1IiwgIlg1MDkgZXJyb3I6ICVzIiwgZXJyX3N0cik7Ci0gICAgIH0KLSAKLUBAIC0xMzA4LDIw ICsxMzE5LDE2IEBAIGVycl9yZXQ6Ci0gI2RlZmluZSBWSVJUX0NFUlRfRVhUICIyLjE2Ljg0MC4x LjExMTMuMSIKLSAKLSBzdGF0aWMgY2FkZHJfdAotLUJOX2JveCAoQklHTlVNICogeCkKLStCTl9i b3ggKGNvbnN0IEJJR05VTSAqeCkKLSB7Ci0gICBzaXplX3QgYnVmX2xlbiwgbjsKLSAgIGNhZGRy X3QgYnVmOwotICAgYnVmX2xlbiA9IChzaXplX3QpIEJOX251bV9ieXRlcyAoeCk7Ci0tICBpZiAo YnVmX2xlbiA8PSBCTl9CWVRFUykKLS0gICAgYnVmID0gYm94X251bSAoKHVuc2lnbmVkIGxvbmcp IHgtPmRbMF0pOwotLSAgZWxzZQotLSAgICB7Ci0tICAgICAgYnVmID0gZGtfYWxsb2NfYm94IChi dWZfbGVuLCBEVl9CSU4pOwotLSAgICAgIG4gPSBCTl9ibjJiaW4gKHgsICh1bnNpZ25lZCBjaGFy ICopIGJ1Zik7Ci0tICAgICAgaWYgKG4gIT0gYnVmX2xlbikKLS0JR1BGX1Q7Ci0tICAgIH0KLSsg IC8qIGRpZCBub3QgZmlndXJlIG91dCB3aGVyZSBidWYgaXMgZnJlZSgpZWQgKi8KLSsgIGJ1ZiA9 IGRrX2FsbG9jX2JveCAoYnVmX2xlbiwgRFZfQklOKTsKLSsgIG4gPSBCTl9ibjJiaW4gKHgsICh1 bnNpZ25lZCBjaGFyICopIGJ1Zik7Ci0rICBpZiAobiAhPSBidWZfbGVuKQotKwkgIEdQRl9UOwot ICAgcmV0dXJuIGJ1ZjsKLSB9Ci0gCi1AQCAtMTQ5OCw3ICsxNTA1LDcgQEAgYmlmX2dldF9jZXJ0 aWZpY2F0ZV9pbmZvIChjYWRkcl90ICogcXN0LAotIAlpbnQgaTsKLSAJY2hhciB0bXBbMTAyNF07 Ci0gCWNoYXIgKmV4dF9vaWQgPSAoY2hhciAqKSAoQk9YX0VMRU1FTlRTIChhcmdzKSA+IDQgPyBi aWZfc3RyaW5nX2FyZyAocXN0LCBhcmdzLCA0LCAiZ2V0X2NlcnRpZmljYXRlX2luZm8iKSA6IFZJ UlRfQ0VSVF9FWFQpOwotLQlTVEFDS19PRiAoWDUwOV9FWFRFTlNJT04pICogZXh0cyA9IGNlcnQt PmNlcnRfaW5mby0+ZXh0ZW5zaW9uczsKLSsJY29uc3QgU1RBQ0tfT0YgKFg1MDlfRVhURU5TSU9O KSAqIGV4dHMgPSBYNTA5X2dldDBfZXh0ZW5zaW9ucyhjZXJ0KTsKLSAJZm9yIChpID0gMDsgaSA8 IHNrX1g1MDlfRVhURU5TSU9OX251bSAoZXh0cyk7IGkrKykKLSAJICB7Ci0gCSAgICBYNTA5X0VY VEVOU0lPTiAqZXggPSBza19YNTA5X0VYVEVOU0lPTl92YWx1ZSAoZXh0cywgaSk7Ci1AQCAtMTUx MCw3ICsxNTE3LDcgQEAgYmlmX2dldF9jZXJ0aWZpY2F0ZV9pbmZvIChjYWRkcl90ICogcXN0LAot IAkJY2hhciAqZGF0YV9wdHI7Ci0gCQlCSU8gKm1lbSA9IEJJT19uZXcgKEJJT19zX21lbSAoKSk7 Ci0gCQlpZiAoIVg1MDlWM19FWFRfcHJpbnQgKG1lbSwgZXgsIDAsIDApKQotLQkJICBNX0FTTjFf T0NURVRfU1RSSU5HX3ByaW50IChtZW0sIGV4LT52YWx1ZSk7Ci0rCQkgIEFTTjFfU1RSSU5HX3By aW50IChtZW0sIFg1MDlfRVhURU5TSU9OX2dldF9kYXRhKGV4KSk7Ci0gCQlsZW4gPSBCSU9fZ2V0 X21lbV9kYXRhIChtZW0sICZkYXRhX3B0cik7Ci0gCQlpZiAobGVuID4gMCAmJiBkYXRhX3B0cikK LSAJCSAgewotQEAgLTE1MzcsMTggKzE1NDQsMjMgQEAgYmlmX2dldF9jZXJ0aWZpY2F0ZV9pbmZv IChjYWRkcl90ICogcXN0LAotIAlpZiAoaykKLSAJICB7Ci0gI2lmZGVmIEVWUF9QS0VZX1JTQQot LQkgICAgaWYgKGstPnR5cGUgPT0gRVZQX1BLRVlfUlNBKQotKwkgICAgaWYgKEVWUF9QS0VZX2lk KGspID09IEVWUF9QS0VZX1JTQSkKLSAJICAgICAgewotLQkJUlNBICp4ID0gay0+cGtleS5yc2E7 Ci0tCQlyZXQgPSBsaXN0ICgzLCBib3hfZHZfc2hvcnRfc3RyaW5nICgiUlNBUHVibGljS2V5Iiks IEJOX2JveCAoeC0+ZSksIEJOX2JveCAoeC0+bikpOwotKwkJY29uc3QgQklHTlVNICpuLCAqZTsK LSsKLSsJCVJTQV9nZXQwX2tleShFVlBfUEtFWV9nZXQwX1JTQShrKSwgJm4sICZlLCBOVUxMKTsK LSsKLSsJCXJldCA9IGxpc3QgKDMsIGJveF9kdl9zaG9ydF9zdHJpbmcgKCJSU0FQdWJsaWNLZXki KSwgQk5fYm94IChlKSwgQk5fYm94IChuKSk7Ci0gCSAgICAgIH0KLSAJICAgIGVsc2UKLSAjZW5k aWYKLSAjaWZkZWYgRVZQX1BLRVlfRFNBCi0tCSAgICBpZiAoay0+dHlwZSA9PSBFVlBfUEtFWV9E U0EpCi0rCSAgICBpZiAoRVZQX1BLRVlfaWQoaykgPT0gRVZQX1BLRVlfRFNBKQotIAkgICAgICB7 Ci0tCQlEU0EgKnggPSBrLT5wa2V5LmRzYTsKLS0JCXJldCA9IGxpc3QgKDIsIGJveF9kdl9zaG9y dF9zdHJpbmcgKCJEU0FQdWJsaWNLZXkiKSwgQk5fYm94ICh4LT5wdWJfa2V5KSk7Ci0rCQljb25z dCBCSUdOVU0gKnB1Yl9rZXk7Ci0rCi0rCQlEU0FfZ2V0MF9rZXkoRVZQX1BLRVlfZ2V0MF9EU0Eo ayksICZwdWJfa2V5LCBOVUxMKTsKLSsJCXJldCA9IGxpc3QgKDIsIGJveF9kdl9zaG9ydF9zdHJp bmcgKCJEU0FQdWJsaWNLZXkiKSwgQk5fYm94IChwdWJfa2V5KSk7Ci0gCSAgICAgIH0KLSAJICAg IGVsc2UKLSAjZW5kaWYKLUBAIC0xNTY3LDEzICsxNTc5LDEzIEBAIGJpZl9nZXRfY2VydGlmaWNh dGVfaW5mbyAoY2FkZHJfdCAqIHFzdCwKLSAJaW50IG4sIGksIGxlbjsKLSAJY2hhciAqcywgKmRh dGFfcHRyOwotIAlCSU8gKm1lbSA9IEJJT19uZXcgKEJJT19zX21lbSAoKSk7Ci0tCWZvciAoaSA9 IDA7IE5VTEwgIT0gc3ViaiAmJiBpIDwgc2tfWDUwOV9OQU1FX0VOVFJZX251bShzdWJqLT5lbnRy aWVzKTsgaSsrKQotKwlmb3IgKGkgPSAwOyBOVUxMICE9IHN1YmogJiYgaSA8IFg1MDlfTkFNRV9l bnRyeV9jb3VudChzdWJqKTsgaSsrKQotIAkgIHsKLS0JICAgIG5lID0gc2tfWDUwOV9OQU1FX0VO VFJZX3ZhbHVlKHN1YmotPmVudHJpZXMsaSk7Ci0tCSAgICBuID0gT0JKX29iajJuaWQgKG5lLT5v YmplY3QpOwotKwkgICAgbmUgPSBYNTA5X05BTUVfZ2V0X2VudHJ5KHN1YmosIGkpOwotKwkgICAg biA9IE9CSl9vYmoybmlkIChYNTA5X05BTUVfRU5UUllfZ2V0X29iamVjdChuZSkpOwotIAkgICAg aWYgKChuID09IE5JRF91bmRlZikgfHwgKChzID0gKGNoYXIgKikgT0JKX25pZDJzbiAobikpID09 IE5VTEwpKQotIAkgICAgICB7Ci0tCQlpMnRfQVNOMV9PQkpFQ1QgKGJ1ZmZlciwgc2l6ZW9mIChi dWZmZXIpLCBuZS0+b2JqZWN0KTsKLSsJCWkydF9BU04xX09CSkVDVCAoYnVmZmVyLCBzaXplb2Yg KGJ1ZmZlciksIFg1MDlfTkFNRV9FTlRSWV9nZXRfb2JqZWN0KG5lKSk7Ci0gCQlzID0gYnVmZmVy OwotIAkgICAgICB9Ci0gCSAgICBpZiAoIXN0cmNtcCAocywgYXR0cikpCi1AQCAtMTU4Miw5ICsx NTk0LDEwIEBAIGJpZl9nZXRfY2VydGlmaWNhdGVfaW5mbyAoY2FkZHJfdCAqIHFzdCwKLSAJCWJy ZWFrOwotIAkgICAgICB9Ci0gCSAgfQotKwotIAlpZiAobmVfcmV0KQotIAkgIHsKLS0JICAgIEFT TjFfU1RSSU5HX3ByaW50IChtZW0sIG5lX3JldC0+dmFsdWUpOwotKwkgICAgQVNOMV9TVFJJTkdf cHJpbnQgKG1lbSwgWDUwOV9OQU1FX0VOVFJZX2dldF9kYXRhKG5lX3JldCkpOwotIAkgICAgbGVu ID0gQklPX2dldF9tZW1fZGF0YSAobWVtLCAmZGF0YV9wdHIpOwotIAkgICAgaWYgKGxlbiA+IDAg JiYgZGF0YV9wdHIpCi0gCSAgICAgIHsKLUBAIC0xNjA1LDE3ICsxNjE4LDE3IEBAIGJpZl9nZXRf Y2VydGlmaWNhdGVfaW5mbyAoY2FkZHJfdCAqIHFzdCwKLSAJZGtfc2V0X3Qgc2V0ID0gTlVMTDsK LSAJY2FkZHJfdCB2YWw7Ci0gCUJJTyAqbWVtID0gQklPX25ldyAoQklPX3NfbWVtICgpKTsKLS0J Zm9yIChpID0gMDsgTlVMTCAhPSBzdWJqICYmIGkgPCBza19YNTA5X05BTUVfRU5UUllfbnVtKHN1 YmotPmVudHJpZXMpOyBpKyspCi0rCWZvciAoaSA9IDA7IE5VTEwgIT0gc3ViaiAmJiBpIDwgWDUw OV9OQU1FX2VudHJ5X2NvdW50KHN1YmopOyBpKyspCi0gCSAgewotIAkgICAgdmFsID0gTlVMTDsK LS0JICAgIG5lID0gc2tfWDUwOV9OQU1FX0VOVFJZX3ZhbHVlKHN1YmotPmVudHJpZXMsaSk7Ci0t CSAgICBuID0gT0JKX29iajJuaWQgKG5lLT5vYmplY3QpOwotKwkgICAgbmUgPSBYNTA5X05BTUVf Z2V0X2VudHJ5KHN1YmosIGkpOwotKwkgICAgbiA9IE9CSl9vYmoybmlkIChYNTA5X05BTUVfRU5U UllfZ2V0X29iamVjdChuZSkpOwotIAkgICAgaWYgKChuID09IE5JRF91bmRlZikgfHwgKChzID0g KGNoYXIgKikgT0JKX25pZDJzbiAobikpID09IE5VTEwpKQotIAkgICAgICB7Ci0tCQlpMnRfQVNO MV9PQkpFQ1QgKGJ1ZmZlciwgc2l6ZW9mIChidWZmZXIpLCBuZS0+b2JqZWN0KTsKLSsJCWkydF9B U04xX09CSkVDVCAoYnVmZmVyLCBzaXplb2YgKGJ1ZmZlciksIFg1MDlfTkFNRV9FTlRSWV9nZXRf b2JqZWN0KG5lKSk7Ci0gCQlzID0gYnVmZmVyOwotIAkgICAgICB9Ci0tCSAgICBBU04xX1NUUklO R19wcmludCAobWVtLCBuZS0+dmFsdWUpOwotKwkgICAgQVNOMV9TVFJJTkdfcHJpbnQgKG1lbSwg WDUwOV9OQU1FX0VOVFJZX2dldF9kYXRhKG5lKSk7Ci0gCSAgICBsZW4gPSBCSU9fZ2V0X21lbV9k YXRhIChtZW0sICZkYXRhX3B0cik7Ci0gCSAgICBpZiAobGVuID4gMCAmJiBkYXRhX3B0cikKLSAJ ICAgICAgewotQEAgLTE2MjksMTggKzE2NDIsMjIgQEAgYmlmX2dldF9jZXJ0aWZpY2F0ZV9pbmZv IChjYWRkcl90ICogcXN0LAotIAkgIH0KLSAJQklPX2ZyZWUgKG1lbSk7Ci0gCXJldCA9IGxpc3Rf dG9fYXJyYXkgKGRrX3NldF9ucmV2ZXJzZSAoc2V0KSk7Ci0rCi0gCWJyZWFrOwotICAgICAgIH0K LSAgICAgY2FzZSAxMjoKLSAgICAgICB7Ci0gCWNvbnN0IHVuc2lnbmVkIGNoYXIgKnM7Ci0gCWlu dCBpLCBuOwotLQljb25zdCBBU04xX1NUUklORyAqc2lnID0gY2VydC0+c2lnbmF0dXJlOwotLQlY NTA5X0FMR09SICpzaWdhbGcgPSBjZXJ0LT5zaWdfYWxnOwotKwljb25zdCBBU04xX1NUUklORyAq c2lnOwotKwljb25zdCBYNTA5X0FMR09SICpzaWdhbGc7Ci0rCWNvbnN0IEFTTjFfT0JKRUNUICpz aWdfYWxnX2FsZ29yaXRobTsKLSAJY2hhciBidWZbODBdOwotIAljYWRkcl90IHZhbDsKLSAKLS0g ICAgICAgIGkydF9BU04xX09CSkVDVChidWYsc2l6ZW9mIChidWYpLCBzaWdhbGctPmFsZ29yaXRo bSk7Ci0rCVg1MDlfZ2V0MF9zaWduYXR1cmUoJnNpZywgJnNpZ2FsZywgY2VydCk7Ci0rCVg1MDlf QUxHT1JfZ2V0MCgmc2lnX2FsZ19hbGdvcml0aG0sIE5VTEwsIE5VTEwsIHNpZ2FsZyk7Ci0rCWky dF9BU04xX09CSkVDVChidWYsc2l6ZW9mIChidWYpLCBzaWdfYWxnX2FsZ29yaXRobSk7Ci0gCi0g CW4gPSBzaWctPmxlbmd0aDsKLSAJcyA9IHNpZy0+ZGF0YTsKLUBAIC0xNjYwLDExICsxNjc3LDEx IEBAIGJpZl9nZXRfY2VydGlmaWNhdGVfaW5mbyAoY2FkZHJfdCAqIHFzdCwKLSAJaWYgKGspCi0g CSAgewotICNpZmRlZiBFVlBfUEtFWV9SU0EKLS0JICAgIGlmIChrLT50eXBlID09IEVWUF9QS0VZ X1JTQSkKLSsJICAgIGlmIChFVlBfUEtFWV9pZChrKSA9PSBFVlBfUEtFWV9SU0EpCi0gCSAgICAg IHsKLSAJCWNoYXIgKmRhdGFfcHRyOwotIAkJaW50IGxlbjsKLS0JCVJTQSAqeCA9IGstPnBrZXku cnNhOwotKwkJUlNBICp4ID0gRVZQX1BLRVlfZ2V0MF9SU0Eoayk7Ci0gCQliID0gQklPX25ldyAo QklPX3NfbWVtKCkpOwotIAkJaTJkX1JTQV9QVUJLRVlfYmlvIChiLCB4KTsKLSAJCWxlbiA9IEJJ T19nZXRfbWVtX2RhdGEgKGIsICZkYXRhX3B0cik7Ci0tLS0gYS9saWJzcmMvV2kveG1sZW5jLmMK LSsrKyBiL2xpYnNyYy9XaS94bWxlbmMuYwotQEAgLTEyMTUsMzYgKzEyMTUsNDUgQEAgdm9pZCB4 ZW5jX2tleV9yZW1vdmUgKHhlbmNfa2V5X3QgKiBrZXksCi0gfQotIAotIAotLXN0YXRpYyB2b2lk Ci0tZ2VucnNhX2NiKGludCBwLCBpbnQgbiwgdm9pZCAqYXJnKQotLXsKLS0jaWZkZWYgTElOVAot LSAgcD1uOwotLSNlbmRpZgotLX0KLS0KLSBpbnQKLSBfX3hlbmNfa2V5X3JzYV9pbml0IChjaGFy ICpuYW1lKQotIHsKLSAgIFJTQSAqcnNhID0gTlVMTDsKLS0gIGludCBudW09MTAyNDsKLS0gIHVu c2lnbmVkIGxvbmcgZjQ9UlNBX0Y0OwotKyAgQklHTlVNICpibiA9IE5VTEw7Ci0gICBpbnQgcjsK LSsKLSAgIHhlbmNfa2V5X3QgKiBwa2V5ID0geGVuY19nZXRfa2V5X2J5X25hbWUgKG5hbWUsIDEp OwotICAgaWYgKE5VTEwgPT0gcGtleSkKLSAgICAgU1FMUl9ORVdfS0VZX0VSUk9SIChuYW1lKTsK LSAKLS0gIHJzYT1SU0FfZ2VuZXJhdGVfa2V5KG51bSxmNCxnZW5yc2FfY2IsTlVMTCk7Ci0rICBy c2EgPSBSU0FfbmV3KCk7Ci0rICBpZiAoIXJzYSkKLSsJICBnb3RvIG91dDsKLSsgIGJuID0gQk5f bmV3KCk7Ci0rICBpZiAoIWJuKQotKwkgIGdvdG8gb3V0OwotKyAgaWYgKCFCTl9zZXRfd29yZChi biwgUlNBX0Y0KSkKLSsJICBnb3RvIG91dDsKLSsKLSsgIGlmICghUlNBX2dlbmVyYXRlX2tleV9l eChyc2EsIDEwMjQsIGJuLCBOVUxMKSkKLSsJICBnb3RvIG91dDsKLSsKLSAgIHIgPSBSU0FfY2hl Y2tfa2V5KHJzYSk7Ci0rICBpZiAociAhPSAxKQotKwkgIGdvdG8gb3V0OwotICAgcGtleS0+a2ku cnNhLnBhZCA9IFJTQV9QS0NTMV9QQURESU5HOwotLSAgaWYgKHJzYSA9PSBOVUxMKQotLSAgICB7 Ci0tICAgICAgc3Fscl9uZXdfZXJyb3IgKCI0MjAwMCIsICJYRU5DMDYiLAotLQkJICAgICJSU0Eg cGFyYW1ldGVycyBnZW5lcmF0aW9uIGVycm9yIik7Ci0tICAgIH0KLSAgIHBrZXktPnhla19yc2Eg PSByc2E7Ci0gICBwa2V5LT54ZWtfcHJpdmF0ZV9yc2EgPSByc2E7Ci0rICBCTl9mcmVlKGJuKTsK LSAgIHJldHVybiAwOwotK291dDoKLSsgIGlmIChibikKLSsJICBCTl9mcmVlKGJuKTsKLSsgIGlm IChyc2EpCi0rCSAgUlNBX2ZyZWUocnNhKTsKLSsgIHNxbHJfbmV3X2Vycm9yICgiNDIwMDAiLCAi WEVOQzA2IiwKLSsJCSAgIlJTQSBwYXJhbWV0ZXJzIGdlbmVyYXRpb24gZXJyb3IiKTsKLSsgIHJl dHVybiAtMTsKLSB9Ci0gCi0gCi1AQCAtMTQ1NSwxOSArMTQ2NCwxOSBAQCB4ZW5jX2tleV90ICog eGVuY19rZXlfY3JlYXRlX2Zyb21feDUwOV9jCi0gCi0gICBpZiAocGtleSkKLSAgICAgewotLSAg ICAgIHN3aXRjaCAoRVZQX1BLRVlfdHlwZSAocGtleS0+dHlwZSkpCi0rICAgICAgc3dpdGNoIChF VlBfUEtFWV90eXBlIChFVlBfUEtFWV9pZChwa2V5KSkpCi0gCXsKLSAJY2FzZSBFVlBfUEtFWV9E U0E6Ci0gCSAgc2lnbl9hbGdvbmFtZSA9IERTSUdfRFNBX1NIQTFfQUxHTzsKLSAJICBlbmNfYWxn b25hbWUgPSBYRU5DX0RTQV9BTEdPOwotLQkgIGRzYSA9IHBrZXktPnBrZXkuZHNhOwotLQkgIHBy aXZhdGVfZHNhID0gcHJpdmF0ZV9rZXkgPyBwcml2YXRlX2tleS0+cGtleS5kc2EgOiAwOwotKwkg IGRzYSA9IEVWUF9QS0VZX2dldDBfRFNBKHBrZXkpOwotKwkgIHByaXZhdGVfZHNhID0gcHJpdmF0 ZV9rZXkgPyBFVlBfUEtFWV9nZXQwX0RTQShwcml2YXRlX2tleSkgOiAwOwotIAkgIGJyZWFrOwot IAljYXNlIEVWUF9QS0VZX1JTQToKLSAJICBzaWduX2FsZ29uYW1lID0gRFNJR19SU0FfU0hBMV9B TEdPOwotIAkgIGVuY19hbGdvbmFtZSA9IFhFTkNfUlNBX0FMR087Ci0tCSAgcnNhID0gcGtleS0+ cGtleS5yc2E7Ci0tCSAgcHJpdmF0ZV9yc2EgPSBwcml2YXRlX2tleSA/IHByaXZhdGVfa2V5LT5w a2V5LnJzYSA6IDA7Ci0rCSAgcnNhID0gRVZQX1BLRVlfZ2V0MF9SU0EocGtleSk7Ci0rCSAgcHJp dmF0ZV9yc2EgPSBwcml2YXRlX2tleSA/IEVWUF9QS0VZX2dldDBfUlNBKHByaXZhdGVfa2V5KSA6 IDA7Ci0gCSAgYnJlYWs7Ci0gCWRlZmF1bHQ6Ci0gCSAgZ290byBmaW5pc2g7Ci1AQCAtMTUxNiwx MyArMTUyNSw2IEBAIHhlbmNfa2V5X3QgKiB4ZW5jX2tleV9jcmVhdGVfZnJvbV94NTA5X2MKLSAg IHJldHVybiBrOwotIH0KLSAKLS1zdGF0aWMgdm9pZCBkaF9jYihpbnQgcCwgaW50IG4sIHZvaWQg KmFyZykKLS17Ci0tI2lmZGVmIExJTlQKLS0gIHA9bjsKLS0jZW5kaWYKLS19Ci0tCi0gc3RhdGlj IC8qeGVuY19rZXlfRFNBX2NyZWF0ZSAqLwotIGNhZGRyX3QgYmlmX3hlbmNfa2V5X2RzYV9jcmVh dGUgKGNhZGRyX3QgKiBxc3QsIGNhZGRyX3QgKiBlcnJfciwgc3RhdGVfc2xvdF90ICoqIGFyZ3Mp Ci0gewotQEAgLTE1ODgsMTUgKzE1OTAsMjEgQEAgY2FkZHJfdCBiaWZfeGVuY19rZXlfREhfY3Jl YXRlIChjYWRkcl90Ci0gICAgICAgZGggPSBESF9uZXcgKCk7Ci0gICAgICAgYm5fcCA9IEJOX2Jp bjJibiAoKHVuc2lnbmVkIGNoYXIgKiltb2QsIHBfbGVuLCBOVUxMKTsKLSAgICAgICBibl9nID0g Qk5fYmluMmJuIChnX2JpbiwgMSwgTlVMTCk7Ci0tICAgICAgZGgtPnAgPSBibl9wOwotLSAgICAg IGRoLT5nID0gYm5fZzsKLSsgICAgICBpZiAoZGgpCi0rCSAgICAgIERIX3NldDBfcHFnKGRoLCBi bl9wLCBOVUxMLCBibl9nKTsKLSAKLSAgICAgICBka19mcmVlX2JveCAobW9kX2I2NCk7Ci0gICAg ICAgZGtfZnJlZV9ib3ggKG1vZCk7Ci0gICAgIH0KLSAgIGVsc2UKLSAgICAgewotLSAgICAgIGRo ID0gREhfZ2VuZXJhdGVfcGFyYW1ldGVycyAobnVtLCBnLCBkaF9jYiwgTlVMTCk7Ci0rICAgICAg ZGggPSBESF9uZXcoKTsKLSsgICAgICBpZiAoZGgpIHsKLSsJICAgICAgaWYgKCFESF9nZW5lcmF0 ZV9wYXJhbWV0ZXJzX2V4KGRoLCBudW0sIGcsIE5VTEwpKSB7Ci0rCQkgICAgICBESF9mcmVlKGRo KTsKLSsJCSAgICAgIGRoID0gTlVMTDsKLSsJICAgICAgfQotKyAgICAgIH0KLSAgICAgfQotICAg aWYgKCFkaCkKLSAgICAgewotQEAgLTE2MjYsNyArMTYzNCw3IEBAIGNhZGRyX3QgYmlmX3hlbmNf REhfZ2V0X3BhcmFtcyAoY2FkZHJfdAotICAgaW50IG4sIGxlbjsKLSAgIGNhZGRyX3QgYnVmID0g TlVMTCwgcmV0LCBiNjQ7Ci0gICBESCAqZGg7Ci0tICBCSUdOVU0gKm51bTsKLSsgIGNvbnN0IEJJ R05VTSAqbnVtOwotIAotICAgbXV0ZXhfZW50ZXIgKHhlbmNfa2V5c19tdHgpOwotICAga2V5ID0g eGVuY19nZXRfa2V5X2J5X25hbWUgKG5hbWUsIDApOwotQEAgLTE2NDEsMTkgKzE2NDksMTkgQEAg Y2FkZHJfdCBiaWZfeGVuY19ESF9nZXRfcGFyYW1zIChjYWRkcl90Ci0gICBzd2l0Y2ggKHBhcmFt KQotICAgICB7Ci0gICAJY2FzZSAxOgotLQkgbnVtID0gZGgtPnA7Ci0rCSBESF9nZXQwX3BxZyhk aCwgJm51bSwgTlVMTCwgTlVMTCk7Ci0gCSBicmVhazsKLSAJY2FzZSAyOgotLQkgbnVtID0gZGgt Pmc7Ci0rCSBESF9nZXQwX3BxZyhkaCwgTlVMTCwgTlVMTCwgJm51bSk7Ci0gCSBicmVhazsKLSAJ Y2FzZSAzOgotLQkgbnVtID0gZGgtPnB1Yl9rZXk7Ci0rCSBESF9nZXQwX2tleShkaCwgJm51bSwg TlVMTCk7Ci0gCSBicmVhazsKLSAJY2FzZSA0OgotLQkgbnVtID0gZGgtPnByaXZfa2V5OwotKwkg REhfZ2V0MF9rZXkoZGgsIE5VTEwsICZudW0pOwotIAkgYnJlYWs7Ci0gCWRlZmF1bHQ6Ci0tCSBu dW0gPSBkaC0+cHViX2tleTsKLSsJIERIX2dldDBfa2V5KGRoLCAmbnVtLCBOVUxMKTsKLSAgICAg fQotIAotICAgYnVmX2xlbiA9IChzaXplX3QpQk5fbnVtX2J5dGVzKG51bSk7Ci1AQCAtMTgxMSw3 ICsxODE5LDE1IEBAIGNhZGRyX3QgYmlmX3hlbmNfa2V5X3JzYV9jcmVhdGUgKGNhZGRyX3QKLSAg IHhlbmNfa2V5X3QgKiBrOwotICAgY2FkZHJfdCBuYW1lID0gYmlmX3N0cmluZ19hcmcgKHFzdCwg YXJncywgMCwgInhlbmNfa2V5X1JTQV9jcmVhdGUiKTsKLSAgIGludCBudW0gPSAoaW50KSBiaWZf bG9uZ19hcmcgKHFzdCwgYXJncywgMSwgInhlbmNfa2V5X1JTQV9jcmVhdGUiKTsKLS0gIFJTQSAq cnNhID0gTlVMTDsKLSsgIFJTQSAqcnNhOwotKyAgQklHTlVNICpibjsKLSsKLSsgIHJzYSA9IFJT QV9uZXcoKTsKLSsgIGJuID0gQk5fbmV3KCk7Ci0rICBpZiAoIXJzYSB8fCAhYm4pCi0rCWdvdG8g b3V0OwotKyAgaWYgKCFCTl9zZXRfd29yZChibiwgUlNBX0Y0KSkKLSsJZ290byBvdXQ7Ci0gCi0g ICBtdXRleF9lbnRlciAoeGVuY19rZXlzX210eCk7Ci0gICBpZiAoTlVMTCA9PSAoayA9IHhlbmNf a2V5X2NyZWF0ZSAobmFtZSwgWEVOQ19SU0FfQUxHTyAsIERTSUdfUlNBX1NIQTFfQUxHTywgMCkp KQotQEAgLTE4MjAsMTIgKzE4MzYsMTEgQEAgY2FkZHJfdCBiaWZfeGVuY19rZXlfcnNhX2NyZWF0 ZSAoY2FkZHJfdAotICAgICAgIFNRTFJfTkVXX0tFWV9FWElTVF9FUlJPUiAobmFtZSk7Ci0gICAg IH0KLSAKLS0gIHJzYSA9IFJTQV9nZW5lcmF0ZV9rZXkgKG51bSwgUlNBX0Y0LCBOVUxMLCBOVUxM KTsKLS0KLS0gIGlmIChyc2EgPT0gTlVMTCkKLS0gICAgewotLSAgICAgIHNxbHJfbmV3X2Vycm9y ICgiNDIwMDAiLCAiWEVOQzA2IiwgIlJTQSBnZW5lcmF0aW9uIGVycm9yIik7Ci0tICAgIH0KLSsg IGlmICghUlNBX2dlbmVyYXRlX2tleV9leCAocnNhLCBudW0sIGJuLCBOVUxMKSkgewotKwkgIG11 dGV4X2xlYXZlICh4ZW5jX2tleXNfbXR4KTsKLSsJICBnb3RvIG91dDsKLSsgIH0KLSsgIEJOX2Zy ZWUoYm4pOwotIAotICAgay0+eGVrX3JzYSA9IFJTQVB1YmxpY0tleV9kdXAgKHJzYSk7Ci0gICBr LT54ZWtfcHJpdmF0ZV9yc2EgPSByc2E7Ci1AQCAtMTgzOSw2ICsxODU0LDEzIEBAIGNhZGRyX3Qg YmlmX3hlbmNfa2V5X3JzYV9jcmVhdGUgKGNhZGRyX3QKLSAKLSAgIG11dGV4X2xlYXZlICh4ZW5j X2tleXNfbXR4KTsKLSAgIHJldHVybiBOVUxMOwotK291dDoKLSsgIGlmIChibikKLSsJICBCTl9m cmVlKGJuKTsKLSsgIGlmIChyc2EpCi0rCSAgUlNBX2ZyZWUocnNhKTsKLSsgIHNxbHJfbmV3X2Vy cm9yICgiNDIwMDAiLCAiWEVOQzA2IiwgIlJTQSBnZW5lcmF0aW9uIGVycm9yIik7Ci0rICByZXR1 cm4gTlVMTDsKLSB9Ci0gCi0geGVuY19rZXlfdCAqCi1AQCAtMjAzNCw3ICsyMDU2LDEzIEBAIGlu dCBfX3hlbmNfa2V5X2RzYV9pbml0IChjaGFyICpuYW1lLCBpbnQKLSAgICAgU1FMUl9ORVdfS0VZ X0VSUk9SIChuYW1lKTsKLSAKLSAgIFJBTkRfcG9sbCAoKTsKLS0gIGRzYSA9IERTQV9nZW5lcmF0 ZV9wYXJhbWV0ZXJzKG51bSwgTlVMTCwgMCwgTlVMTCwgTlVMTCwgZGhfY2IsIE5VTEwpOwotKyAg ZHNhID0gRFNBX25ldygpOwotKyAgaWYgKGRzYSkgewotKwkgIGlmICghRFNBX2dlbmVyYXRlX3Bh cmFtZXRlcnNfZXgoZHNhLCBudW0sIE5VTEwsIDAsIE5VTEwsIE5VTEwsIE5VTEwpKSB7Ci0rCQkg IERTQV9mcmVlKGRzYSk7Ci0rCQkgIGRzYSA9IE5VTEw7Ci0rCSAgfQotKyAgfQotICAgaWYgKGRz YSA9PSBOVUxMKQotICAgICB7Ci0gICAgICAgc3Fscl9uZXdfZXJyb3IgKCI0MjAwMCIsICJYRU5D MTEiLAotQEAgLTIwNTgsNyArMjA4NiwxMyBAQCBpbnQgX194ZW5jX2tleV9kaF9pbml0IChjaGFy ICpuYW1lLCBpbnQKLSAgIGlmIChOVUxMID09IHBrZXkpCi0gICAgIFNRTFJfTkVXX0tFWV9FUlJP UiAobmFtZSk7Ci0gCi0tICBkaCA9IERIX2dlbmVyYXRlX3BhcmFtZXRlcnMgKG51bSwgZywgZGhf Y2IsIE5VTEwpOwotKyAgZGggPSBESF9uZXcoKTsKLSsgIGlmIChkaCkgewotKwkgIGlmICghREhf Z2VuZXJhdGVfcGFyYW1ldGVyc19leChkaCwgbnVtLCBnLCBOVUxMKSkgewotKwkJICBESF9mcmVl KGRoKTsKLSsJCSAgZGggPSBOVUxMOwotKwkgIH0KLSsgIH0KLSAgIGlmICghZGgpCi0gICAgIHsK LSAgICAgICBzcWxyX25ld19lcnJvciAoIjQyMDAwIiwgIlhFTkMxMSIsCi1AQCAtMjI4MCwxMiAr MjMxNCwxMiBAQCBiaWZfeGVuY19rZXlfcnNhX3JlYWQgKGNhZGRyX3QgKiBxc3QsIGNhCi0gICAg IHsKLSAgICAgICBpbiA9IEJJT19uZXdfbWVtX2J1ZiAoa2V5X2Jhc2U2NCwgbGVuKTsKLSAgICAg ICBwa2V5ID0gZDJpX1BVQktFWV9iaW8gKGluLCBOVUxMKTsKLS0gICAgICBpZiAocGtleSAmJiBw a2V5LT50eXBlID09IEVWUF9QS0VZX1JTQSkKLS0JcCA9IHBrZXktPnBrZXkucnNhOwotKyAgICAg IGlmIChwa2V5ICYmIEVWUF9QS0VZX2lkKHBrZXkpID09IEVWUF9QS0VZX1JTQSkKLSsJcCA9IEVW UF9QS0VZX2dldDBfUlNBKHBrZXkpOwotICAgICAgIEJJT19yZXNldCAoaW4pOwotICAgICAgIHBr a2V5ID0gZDJpX1ByaXZhdGVLZXlfYmlvIChpbiwgTlVMTCk7Ci0tICAgICAgaWYgKHBra2V5ICYm IHBra2V5LT50eXBlID09IEVWUF9QS0VZX1JTQSkKLS0JciA9IHBra2V5LT5wa2V5LnJzYTsKLSsg ICAgICBpZiAocGtrZXkgJiYgRVZQX1BLRVlfaWQocGtrZXkpID09IEVWUF9QS0VZX1JTQSkKLSsJ ciA9IEVWUF9QS0VZX2dldDBfUlNBKHBra2V5KTsKLSAgICAgICBCSU9fZnJlZSAoaW4pOwotICAg ICB9Ci0gICBlbHNlCi1AQCAtMjMwNCw5ICsyMzM4LDExIEBAIGJpZl94ZW5jX2tleV9yc2FfcmVh ZCAoY2FkZHJfdCAqIHFzdCwgY2EKLSAKLSAgIGlmICghcCkKLSAgICAgewotKyAgICAgIGNvbnN0 IEJJR05VTSAqbiwgKmU7Ci0rCi0rICAgICAgUlNBX2dldDBfa2V5KHIsICZuLCAmZSwgTlVMTCk7 Ci0gICAgICAgcCA9IFJTQV9uZXcgKCk7Ci0tICAgICAgcC0+biA9IEJOX2R1cCAoci0+bik7Ci0t ICAgICAgcC0+ZSA9IEJOX2R1cCAoci0+ZSk7Ci0rICAgICAgUlNBX3NldDBfa2V5KHAsIEJOX2R1 cChuKSwgQk5fZHVwKGUpLCBOVUxMKTsKLSAgICAgfQotIAotICAgbXV0ZXhfZW50ZXIgKHhlbmNf a2V5c19tdHgpOwotQEAgLTIzNTUsMTQgKzIzOTEsMTMgQEAgYmlmX3hlbmNfa2V5X3JzYV9jb25z dHJ1Y3QgKGNhZGRyX3QgKiBxcwotICAgcCA9IFJTQV9uZXcgKCk7Ci0gICBuID0gQk5fYmluMmJu ICgodW5zaWduZWQgY2hhciAqKSBtb2QsIGJveF9sZW5ndGggKG1vZCkgLSAxLCBOVUxMKTsKLSAg IGUgPSBCTl9iaW4yYm4gKCh1bnNpZ25lZCBjaGFyICopIGV4cCwgYm94X2xlbmd0aCAoZXhwKSAt IDEsIE5VTEwpOwotLSAgcC0+biA9IG47Ci0tICBwLT5lID0gZTsKLSsgIFJTQV9zZXQwX2tleShw LCBuLCBlLCBOVUxMKTsKLSAgIGlmIChwZXhwKQotICAgICB7Ci0gICAgICAgcGsgPSBSU0FfbmV3 ICgpOwotLSAgICAgIHBrLT5kID0gQk5fYmluMmJuICgodW5zaWduZWQgY2hhciAqKSBwZXhwLCBi b3hfbGVuZ3RoIChwZXhwKSAtIDEsIE5VTEwpOwotLSAgICAgIHBrLT5uID0gQk5fZHVwIChuKTsK LS0gICAgICBway0+ZSA9IEJOX2R1cCAoZSk7Ci0rICAgICAgUlNBX3NldDBfa2V5KHAsIEJOX2R1 cChuKSwKLSsJCSAgICAgIEJOX2R1cChlKSwKLSsJCSAgICAgIEJOX2JpbjJibiAoKHVuc2lnbmVk IGNoYXIgKikgcGV4cCwgYm94X2xlbmd0aCAocGV4cCkgLSAxLCBOVUxMKSk7Ci0gICAgIH0KLSAg IG11dGV4X2VudGVyICh4ZW5jX2tleXNfbXR4KTsKLSAgIGsgPSB4ZW5jX2tleV9jcmVhdGUgKG5h bWUsIFhFTkNfUlNBX0FMR08sIERTSUdfUlNBX1NIQTFfQUxHTywgMCk7Ci1AQCAtNDA4Niw3ICs0 MTIxLDcgQEAgdm9pZCB4ZW5jX3RhZ19mcmVlICh4ZW5jX3RhZ190ICogdCkKLSAjZW5kaWYKLSB9 Ci0gCi0teGVuY190YWdfdCAqIHhlbmNfdGFnX2FkZF9jaGlsZF9CTiAoeGVuY190YWdfdCAqIHRh ZywgQklHTlVNICogYm4pCi0rc3RhdGljIHhlbmNfdGFnX3QgKiB4ZW5jX3RhZ19hZGRfY2hpbGRf Qk4gKHhlbmNfdGFnX3QgKiB0YWcsIGNvbnN0IEJJR05VTSAqIGJuKQotIHsKLSAgY2hhciAqIGJ1 ZmZlciA9IGRrX2FsbG9jX2JveCAoQk5fbnVtX2J5dGVzIChibiksIERWX0JJTik7Ci0gIGNoYXIg KiBidWZmZXJfYmFzZTY0ID0gZGtfYWxsb2NfYm94IChib3hfbGVuZ3RoIChidWZmZXIpICogMiwg RFZfU1RSSU5HKTsKLUBAIC00MTExLDEyICs0MTQ2LDE1IEBAIGNhZGRyX3QgKiogeGVuY19nZW5l cmF0ZV9leHRfaW5mbyAoeGVuY18KLSAgIGNhZGRyX3QgKiogYXJyYXk7Ci0gICBpZiAoa2V5LT54 ZWtfdHlwZSA9PSBEU0lHX0tFWV9SU0EpCi0gICAgIHsKLSsgICAgICBjb25zdCBCSUdOVU0gKnJz YV9uLCAqcnNhX2U7Ci0rCi0rICAgICAgUlNBX2dldDBfa2V5KGtleS0+a2kucnNhLnJzYV9zdCwg JnJzYV9uLCAmcnNhX2UsIE5VTEwpOwotICAgICAgIHhlbmNfdGFnX3QgKiByc2FrZXl2YWwgPSB4 ZW5jX3RhZ19jcmVhdGUgKERTSUdfVVJJLCAiOlJTQUtleVZhbHVlIik7Ci0gICAgICAgeGVuY190 YWdfdCAqIHJzYW1vZHVsdXMgPSB4ZW5jX3RhZ19jcmVhdGUgKERTSUdfVVJJLCAiOk1vZHVsdXMi KTsKLSAgICAgICB4ZW5jX3RhZ190ICogcnNhZXhwb25lbnQgPSB4ZW5jX3RhZ19jcmVhdGUgKERT SUdfVVJJLCAiOkV4cG9uZW50Iik7Ci0gCi0tICAgICAgeGVuY190YWdfYWRkX2NoaWxkX0JOIChy c2Ftb2R1bHVzLCBrZXktPmtpLnJzYS5yc2Ffc3QtPm4pOwotLSAgICAgIHhlbmNfdGFnX2FkZF9j aGlsZF9CTiAocnNhZXhwb25lbnQsIGtleS0+a2kucnNhLnJzYV9zdC0+ZSk7Ci0rICAgICAgeGVu Y190YWdfYWRkX2NoaWxkX0JOIChyc2Ftb2R1bHVzLCByc2Ffbik7Ci0rICAgICAgeGVuY190YWdf YWRkX2NoaWxkX0JOIChyc2FleHBvbmVudCwgcnNhX2UpOwotIAotICAgICAgIHhlbmNfdGFnX2Fk ZF9jaGlsZCAocnNha2V5dmFsLCB4ZW5jX3RhZ19maW5hbGl6ZSAocnNhbW9kdWx1cykpOwotICAg ICAgIHhlbmNfdGFnX2FkZF9jaGlsZCAocnNha2V5dmFsLCB4ZW5jX3RhZ19maW5hbGl6ZSAocnNh ZXhwb25lbnQpKTsKLUBAIC00MTM1LDEyICs0MTczLDE1IEBAIGNhZGRyX3QgKiogeGVuY19nZW5l cmF0ZV9leHRfaW5mbyAoeGVuY18KLSAgICAgICB4ZW5jX3RhZ190ICogZyA9IHhlbmNfdGFnX2Ny ZWF0ZSAoRFNJR19VUkksICI6RyIpOwotICAgICAgIHhlbmNfdGFnX3QgKiB5ID0geGVuY190YWdf Y3JlYXRlIChEU0lHX1VSSSwgIjpZIik7Ci0gICAgICAgRFNBICogZHNhID0ga2V5LT5raS5kc2Eu ZHNhX3N0OwotKyAgICAgIGNvbnN0IEJJR05VTSAqZHNhX3AsICpkc2FfcSwgKmRzYV9nLCAqZHNh X3B1Yl9rZXk7Ci0gCi0rICAgICAgRFNBX2dldDBfcHFnKGRzYSwgJmRzYV9wLCAmZHNhX3EsICZk c2FfZyk7Ci0rICAgICAgRFNBX2dldDBfa2V5KGRzYSwgJmRzYV9wdWJfa2V5LCBOVUxMKTsKLSAK LS0gICAgICB4ZW5jX3RhZ19hZGRfY2hpbGRfQk4gKHAsIGRzYS0+cCk7Ci0tICAgICAgeGVuY190 YWdfYWRkX2NoaWxkX0JOIChwLCBkc2EtPnEpOwotLSAgICAgIHhlbmNfdGFnX2FkZF9jaGlsZF9C TiAocCwgZHNhLT5nKTsKLS0gICAgICB4ZW5jX3RhZ19hZGRfY2hpbGRfQk4gKHAsIGRzYS0+cHVi X2tleSk7Ci0rICAgICAgeGVuY190YWdfYWRkX2NoaWxkX0JOIChwLCBkc2FfcCk7Ci0rICAgICAg eGVuY190YWdfYWRkX2NoaWxkX0JOIChwLCBkc2FfcSk7Ci0rICAgICAgeGVuY190YWdfYWRkX2No aWxkX0JOIChwLCBkc2FfZyk7Ci0rICAgICAgeGVuY190YWdfYWRkX2NoaWxkX0JOIChwLCBkc2Ff cHViX2tleSk7Ci0gCi0gICAgICAgeGVuY190YWdfYWRkX2NoaWxkIChkc2FrZXl2YWwsIHhlbmNf dGFnX2ZpbmFsaXplIChwKSk7Ci0gICAgICAgeGVuY190YWdfYWRkX2NoaWxkIChkc2FrZXl2YWws IHhlbmNfdGFnX2ZpbmFsaXplIChxKSk7Ci1AQCAtNjE4Nyw3ICs2MjI4LDcgQEAgY2FkZHJfdCB4 ZW5jX3g1MDlfZ2V0X2tleV9pZGVudGlmaWVyIChYNQotIAotICAgcmV0ID0gZGtfYWxsb2NfYm94 IChpa2V5aWQtPmxlbmd0aCwgRFZfQklOKTsKLSAgIG1lbWNweSAocmV0LCBpa2V5aWQtPmRhdGEs IGlrZXlpZC0+bGVuZ3RoKTsKLS0gIE1fQVNOMV9PQ1RFVF9TVFJJTkdfZnJlZShpa2V5aWQpOwot KyAgQVNOMV9TVFJJTkdfZnJlZShpa2V5aWQpOwotICAgcmV0dXJuIHJldDsKLSB9Ci0gCi1AQCAt NjI0Nyw3ICs2Mjg4LDcgQEAgYmlmX3g1MDlfZ2V0X3N1YmplY3QgKGNhZGRyX3QgKiBxc3QsIGNh ZAotIAotICAgcmV0ID0gZGtfYWxsb2NfYm94IChpa2V5aWQtPmxlbmd0aCwgRFZfQklOKTsKLSAg IG1lbWNweSAocmV0LCBpa2V5aWQtPmRhdGEsIGlrZXlpZC0+bGVuZ3RoKTsKLS0gIE1fQVNOMV9P Q1RFVF9TVFJJTkdfZnJlZShpa2V5aWQpOwotKyAgQVNOMV9TVFJJTkdfZnJlZShpa2V5aWQpOwot ICAgcmV0dXJuIHJldDsKLSB9Ci0gCi1AQCAtNjgwNiw3ICs2ODQ3LDcgQEAgYmlmX3hlbmNfeDUw OV9jc3JfZ2VuZXJhdGUgKGNhZGRyX3QgKiBxcwotIAlza19YNTA5X0VYVEVOU0lPTl9wdXNoKHN0 X2V4dHMsIGV4KTsKLSAgICAgfQotICAgWDUwOV9SRVFfYWRkX2V4dGVuc2lvbnMoeCwgc3RfZXh0 cyk7Ci0tICBpZiAoIVg1MDlfUkVRX3NpZ24gKHgsIHBrLCAocGstPnR5cGUgPT0gRVZQX1BLRVlf UlNBID8gRVZQX21kNSgpIDogRVZQX2RzczEoKSkpKQotKyAgaWYgKCFYNTA5X1JFUV9zaWduICh4 LCBwaywgKEVWUF9QS0VZX2lkKHBrKSA9PSBFVlBfUEtFWV9SU0EgPyBFVlBfbWQ1KCkgOiBFVlBf c2hhMSgpKSkpCi0gICAgIHsKLSAgICAgICBwayA9IE5VTEw7IC8qIGtlZXAgb25lIGluIHRoZSB4 ZW5jX2tleSAqLwotICAgICAgICplcnJfcmV0ID0gc3J2X21ha2VfbmV3X2Vycm9yICgiNDIwMDAi LCAiWEVDWFgiLCAiQ2FuIG5vdCBzaWduIGNlcnRpZmljYXRlIDogJXMiLCBnZXRfc3NsX2Vycm9y X3RleHQgKGJ1Ziwgc2l6ZW9mIChidWYpKSk7Ci1AQCAtNjk0NSwxNyArNjk4NiwxNyBAQCBiaWZf eGVuY194NTA5X2Zyb21fY3NyIChjYWRkcl90ICogcXN0LCBjCi0gICAgICAgKmVycl9yZXQgPSBz cnZfbWFrZV9uZXdfZXJyb3IgKCI0MjAwMCIsICJYRUNYWCIsICJDYW4gbm90IHNpZ24gY2VydGlm aWNhdGUiKTsKLSAgICAgICBnb3RvIGVycjsKLSAgICAgfQotLSAgc3dpdGNoIChFVlBfUEtFWV90 eXBlIChjbGlfcGstPnR5cGUpKQotKyAgc3dpdGNoIChFVlBfUEtFWV90eXBlIChFVlBfUEtFWV9p ZChjbGlfcGspKSkKLSAgICAgewotICAgICAgIGNhc2UgRVZQX1BLRVlfRFNBOgotIAkgIHNpZ25f YWxnb25hbWUgPSBEU0lHX0RTQV9TSEExX0FMR087Ci0gCSAgZW5jX2FsZ29uYW1lID0gWEVOQ19E U0FfQUxHTzsKLS0JICBkc2EgPSBjbGlfcGstPnBrZXkuZHNhOwotKwkgIGRzYSA9IEVWUF9QS0VZ X2dldDBfRFNBKGNsaV9wayk7Ci0gCSAgYnJlYWs7Ci0gICAgICAgY2FzZSBFVlBfUEtFWV9SU0E6 Ci0gCSAgc2lnbl9hbGdvbmFtZSA9IERTSUdfUlNBX1NIQTFfQUxHTzsKLSAJICBlbmNfYWxnb25h bWUgPSBYRU5DX1JTQV9BTEdPOwotLQkgIHJzYSA9IGNsaV9way0+cGtleS5yc2E7Ci0rCSAgcnNh ID0gRVZQX1BLRVlfZ2V0MF9SU0EoY2xpX3BrKTsKLSAJICBicmVhazsKLSAgICAgICBkZWZhdWx0 OgotIAkgICplcnJfcmV0ID0gc3J2X21ha2VfbmV3X2Vycm9yICgiNDIwMDAiLCAiWEVDWFgiLCAi VGhlIHR5cGUgb2YgcHVibGljIGtleSBpcyBub3Qgc3VwcG9ydGVkIG11cyB0YmUgUlNBIG9yIERT QSIpOwotQEAgLTcwMzIsMTkgKzcwNzMsMTkgQEAgYmlmX3hlbmNfcGtjczEyX2V4cG9ydCAoY2Fk ZHJfdCAqIHFzdCwgYwotICAgaWYgKGV4cG9ydF9jaGFpbikKLSAgICAgewotICAgICAgIGludCBp OwotLSAgICAgIFg1MDlfU1RPUkVfQ1RYIHN0b3JlX2N0eDsKLS0gICAgICBYNTA5X1NUT1JFX0NU WF9pbml0ICgmc3RvcmVfY3R4LCBDQV9jZXJ0cywgeCwgTlVMTCk7Ci0tICAgICAgaWYgKFg1MDlf dmVyaWZ5X2NlcnQgKCZzdG9yZV9jdHgpID4gMCkKLS0JY2hhaW4gPSBYNTA5X1NUT1JFX0NUWF9n ZXQxX2NoYWluICgmc3RvcmVfY3R4KTsKLSsgICAgICBYNTA5X1NUT1JFX0NUWCAqY3R4OwotKyAg ICAgIFg1MDlfU1RPUkVfQ1RYX2luaXQgKGN0eCwgQ0FfY2VydHMsIHgsIE5VTEwpOwotKyAgICAg IGlmIChYNTA5X3ZlcmlmeV9jZXJ0IChjdHgpID4gMCkKLSsJY2hhaW4gPSBYNTA5X1NUT1JFX0NU WF9nZXQxX2NoYWluIChjdHgpOwotICAgICAgIGVsc2UKLSAJewotIAkgIGNvbnN0IGNoYXIgKmVy cl9zdHI7Ci0tCSAgZXJyX3N0ciA9IFg1MDlfdmVyaWZ5X2NlcnRfZXJyb3Jfc3RyaW5nIChzdG9y ZV9jdHguZXJyb3IpOwotKwkgIGVycl9zdHIgPSBYNTA5X3ZlcmlmeV9jZXJ0X2Vycm9yX3N0cmlu ZyAoWDUwOV9TVE9SRV9DVFhfZ2V0X2Vycm9yKGN0eCkpOwotIAkgICplcnJfcmV0ID0gc3J2X21h a2VfbmV3X2Vycm9yICgiMjIwMjMiLCAiWEVOQ1giLCAiWDUwOSBlcnJvcjogJXMiLCBlcnJfc3Ry KTsKLS0JICBYNTA5X1NUT1JFX0NUWF9jbGVhbnVwICgmc3RvcmVfY3R4KTsKLSsJICBYNTA5X1NU T1JFX0NUWF9jbGVhbnVwIChjdHgpOwotIAkgIGdvdG8gZXJyOwotIAl9Ci0tICAgICAgWDUwOV9T VE9SRV9DVFhfY2xlYW51cCAoJnN0b3JlX2N0eCk7Ci0rICAgICAgWDUwOV9TVE9SRV9DVFhfY2xl YW51cCAoY3R4KTsKLSAgICAgICBpZiAoY2hhaW4pCi0gCXsKLSAJICBjZXJ0cyA9IHNrX1g1MDlf bmV3X251bGwgKCk7Ci1AQCAtNzE1MiwxNiArNzE5MywxNiBAQCBiaWZfeGVuY19wdWJrZXlfcGVt X2V4cG9ydCAoY2FkZHJfdCAqIHFzCi0gICAgIHsKLSAgICAgICBrID0gWDUwOV9nZXRfcHVia2V5 IChrZXktPnhla194NTA5KTsKLSAjaWZkZWYgRVZQX1BLRVlfUlNBCi0tICAgICAgaWYgKGstPnR5 cGUgPT0gRVZQX1BLRVlfUlNBKQotKyAgICAgIGlmIChFVlBfUEtFWV9pZChrKSA9PSBFVlBfUEtF WV9SU0EpCi0gCXsKLS0JICBSU0EgKiB4ID0gay0+cGtleS5yc2E7Ci0rCSAgUlNBICp4ID0gRVZQ X1BLRVlfZ2V0MF9SU0Eoayk7Ci0gCSAgUEVNX3dyaXRlX2Jpb19SU0FfUFVCS0VZIChiLCB4KTsK LSAJfQotICNlbmRpZgotICNpZmRlZiBFVlBfUEtFWV9EU0EKLS0gICAgICBpZiAoay0+dHlwZSA9 PSBFVlBfUEtFWV9EU0EpCi0rICAgICAgaWYgKEVWUF9QS0VZX2lkKGspID09IEVWUF9QS0VZX0RT QSkKLSAJewotLQkgIERTQSAqIHggPSBrLT5wa2V5LmRzYTsKLSsJICBEU0EgKiB4ID0gRVZQX1BL RVlfZ2V0MF9EU0Eoayk7Ci0gCSAgUEVNX3dyaXRlX2Jpb19EU0FfUFVCS0VZIChiLCB4KTsKLSAJ fQotICNlbmRpZgotQEAgLTcyMDgsMTYgKzcyNDksMTYgQEAgYmlmX3hlbmNfcHVia2V5X2Rlcl9l eHBvcnQgKGNhZGRyX3QgKiBxcwotICAgICB7Ci0gICAgICAgayA9IFg1MDlfZ2V0X3B1YmtleSAo a2V5LT54ZWtfeDUwOSk7Ci0gI2lmZGVmIEVWUF9QS0VZX1JTQQotLSAgICAgIGlmIChrLT50eXBl ID09IEVWUF9QS0VZX1JTQSkKLSsgICAgICBpZiAoRVZQX1BLRVlfaWQoaykgPT0gRVZQX1BLRVlf UlNBKQotIAl7Ci0tCSAgUlNBICogeCA9IGstPnBrZXkucnNhOwotKwkgIFJTQSAqIHggPSBFVlBf UEtFWV9nZXQwX1JTQShrKTsKLSAJICBpMmRfUlNBX1BVQktFWV9iaW8gKGIsIHgpOwotIAl9Ci0g I2VuZGlmCi0gI2lmZGVmIEVWUF9QS0VZX0RTQQotLSAgICAgIGlmIChrLT50eXBlID09IEVWUF9Q S0VZX0RTQSkKLSsgICAgICBpZiAoRVZQX1BLRVlfaWQoaykgPT0gRVZQX1BLRVlfRFNBKQotIAl7 Ci0tCSAgRFNBICogeCA9IGstPnBrZXkuZHNhOwotKwkgIERTQSAqIHggPSBFVlBfUEtFWV9nZXQw X0RTQShrKTsKLSAJICBpMmRfRFNBX1BVQktFWV9iaW8gKGIsIHgpOwotIAl9Ci0gI2VuZGlmCi1A QCAtNzI0NSw3ICs3Mjg2LDcgQEAgZXJyOgotIH0KLSAKLSBzdGF0aWMgY2FkZHJfdAotLUJOMmJp bmJveCAoQklHTlVNICogeCkKLStCTjJiaW5ib3ggKGNvbnN0IEJJR05VTSAqIHgpCi0gewotICAg c2l6ZV90IGJ1Zl9sZW4sIG47Ci0gICBjYWRkcl90IGJ1ZjsKLUBAIC03MjgwLDggKzczMjEsMTQg QEAgc3RhdGljIGNhZGRyX3QKLSB4ZW5jX3JzYV9wdWJfbWFnaWMgKFJTQSAqIHgpCi0gewotICAg Y2FkZHJfdCByZXQ7Ci0tICBjYWRkcl90IG4gPSBCTjJiaW5ib3ggKHgtPm4pOyAvKiBtb2R1bHVz ICovCi0tICBjYWRkcl90IGUgPSBCTjJiaW5ib3ggKHgtPmUpOyAvKiBwdWJsaWMgZXhwb25lbnQg Ki8KLSsgIGNhZGRyX3QgbjsKLSsgIGNhZGRyX3QgZTsKLSsgIGNvbnN0IEJJR05VTSAqcnNhX24s ICpyc2FfZTsKLSsKLSsgIFJTQV9nZXQwX2tleSh4LCAmcnNhX24sICZyc2FfZSwgTlVMTCk7Ci0r ICBuID0gQk4yYmluYm94IChyc2Ffbik7IC8qIG1vZHVsdXMgKi8KLSsgIGUgPSBCTjJiaW5ib3gg KHJzYV9lKTsgLyogcHVibGljIGV4cG9uZW50ICovCi0rCi0gICBuID0geGVuY19lbmNvZGVfYmFz ZTY0X2JpbmJveCAobiwgMSk7Ci0gICBlID0geGVuY19lbmNvZGVfYmFzZTY0X2JpbmJveCAoZSwg MSk7Ci0gICByZXQgPSBka19hbGxvY19ib3ggKGJveF9sZW5ndGggKG4pICsgYm94X2xlbmd0aCAo ZSkgKyA0IC8qIHR3byBkb3RzIC0gb25lIHRyYWlsaW5nIHplcm8gKyBSU0EgcHJlZml4ICovLCBE Vl9TVFJJTkcpOwotQEAgLTczMDYsOSArNzM1Myw5IEBAIGJpZl94ZW5jX3B1YmtleV9tYWdpY19l eHBvcnQgKGNhZGRyX3QgKgotICAgICB7Ci0gICAgICAgayA9IFg1MDlfZ2V0X3B1YmtleSAoa2V5 LT54ZWtfeDUwOSk7Ci0gI2lmZGVmIEVWUF9QS0VZX1JTQQotLSAgICAgIGlmIChrLT50eXBlID09 IEVWUF9QS0VZX1JTQSkKLSsgICAgICBpZiAoRVZQX1BLRVlfaWQoaykgPT0gRVZQX1BLRVlfUlNB KQotIAl7Ci0tCSAgUlNBICogeCA9IGstPnBrZXkucnNhOwotKwkgIFJTQSAqIHggPSBFVlBfUEtF WV9nZXQwX1JTQShrKTsKLSAJICByZXQgPSB4ZW5jX3JzYV9wdWJfbWFnaWMgKHgpOwotIAl9Ci0g I2VuZGlmCi1AQCAtNzM0OSwxMCArNzM5NiwxNiBAQCBzdGF0aWMgY2FkZHJfdAotIHhlbmNfcnNh X3B1Yl9zc2hfZXhwb3J0IChSU0EgKiB4KQotIHsKLSAgIHN0YXRpYyBjaGFyICogc3NoX2hlYWRl ciA9ICJceDAwXHgwMFx4MDBceDA3c3NoLXJzYSI7Ci0rICBjb25zdCBCSUdOVU0gKnJzYV9uLCAq cnNhX2U7Ci0gICBjYWRkcl90IHJldDsKLSAgIGludCBsZW4sIHBvczsKLS0gIGNhZGRyX3QgbiA9 IEJOMmJpbmJveCAoeC0+bik7IC8qIG1vZHVsdXMgKi8KLS0gIGNhZGRyX3QgZSA9IEJOMmJpbmJv eCAoeC0+ZSk7IC8qIHB1YmxpYyBleHBvbmVudCAqLwotKyAgY2FkZHJfdCBuOwotKyAgY2FkZHJf dCBlOwotKwotKyAgUlNBX2dldDBfa2V5KHgsICZyc2FfbiwgJnJzYV9lLCBOVUxMKTsKLSsgIG4g PSBCTjJiaW5ib3ggKHJzYV9uKTsgLyogbW9kdWx1cyAqLwotKyAgZSA9IEJOMmJpbmJveCAocnNh X2UpOyAvKiBwdWJsaWMgZXhwb25lbnQgKi8KLSsKLSAgIGxlbiA9IDExICsgOCArIGJveF9sZW5n dGggKG4pICsgYm94X2xlbmd0aCAoZSk7Ci0gICBpZiAoblswXSAmIDB4ODApCi0gICAgIGxlbiAr KzsKLUBAIC03MzgzLDkgKzc0MzYsOSBAQCBiaWZfeGVuY19wdWJrZXlfc3NoX2V4cG9ydCAoY2Fk ZHJfdCAqIHFzCi0gICAgIHsKLSAgICAgICBrID0gWDUwOV9nZXRfcHVia2V5IChrZXktPnhla194 NTA5KTsKLSAjaWZkZWYgRVZQX1BLRVlfUlNBCi0tICAgICAgaWYgKGstPnR5cGUgPT0gRVZQX1BL RVlfUlNBKQotKyAgICAgIGlmIChFVlBfUEtFWV9pZChrKSA9PSBFVlBfUEtFWV9SU0EpCi0gCXsK LS0JICBSU0EgKiB4ID0gay0+cGtleS5yc2E7Ci0rCSAgUlNBICogeCA9IEVWUF9QS0VZX2dldDBf UlNBKGspOwotIAkgIHJldCA9IHhlbmNfcnNhX3B1Yl9zc2hfZXhwb3J0ICh4KTsKLSAJfQotICNl bmRpZgotQEAgLTc0MTgsNyArNzQ3MSw3IEBAIGJpZl94ZW5jX1NQS0lfcmVhZCAoY2FkZHJfdCAq IHFzdCwgY2FkZHIKLSAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgfQotICAgcGsgPSBORVRTQ0FQ RV9TUEtJX2dldF9wdWJrZXkgKHNwa2kpOwotLSAgaWYgKCFwayB8fCBway0+dHlwZSAhPSBFVlBf UEtFWV9SU0EpCi0rICBpZiAoIXBrIHx8IEVWUF9QS0VZX2lkKHBrKSAhPSBFVlBfUEtFWV9SU0Ep Ci0gICAgIHsKLSAgICAgICBORVRTQ0FQRV9TUEtJX2ZyZWUgKHNwa2kpOwotICAgICAgICplcnJf cmV0ID0gc3J2X21ha2VfbmV3X2Vycm9yICgiNDIwMDAiLCAiWEVDWFgiLCAiQ2FuIG5vdCByZXRy aWV2ZSBSU0Ega2V5Iik7Ci1AQCAtNzU5NSwxNCArNzY0OCwxNCBAQCBiaWZfeGVuY194NTA5X2Nh X2NlcnRzX2xpc3QgKGNhZGRyX3QgKiBxCi0gICBzZWNfY2hlY2tfZGJhICgoUUkqKXFzdCwgbWUp OwotICAgaW4gPSBCSU9fbmV3IChCSU9fc19tZW0gKCkpOwotICAgbXV0ZXhfZW50ZXIgKHhlbmNf a2V5c19tdHgpOwotLSAgY2VydHMgPSBDQV9jZXJ0cy0+b2JqczsKLSsgIGNlcnRzID0gWDUwOV9T VE9SRV9nZXQwX29iamVjdHMoQ0FfY2VydHMpOwotICAgbGVuID0gc2tfWDUwOV9PQkpFQ1RfbnVt IChjZXJ0cyk7Ci0gICBmb3IgKGkgPSAwOyBpIDwgbGVuOyBpKyspCi0gICAgIHsKLSAgICAgICBY NTA5X09CSkVDVCAqIG9iaiA9IHNrX1g1MDlfT0JKRUNUX3ZhbHVlIChjZXJ0cywgaSk7Ci0tICAg ICAgaWYgKG9iai0+dHlwZSA9PSBYNTA5X0xVX1g1MDkpCi0rICAgICAgaWYgKFg1MDlfT0JKRUNU X2dldF90eXBlKG9iaikgPT0gWDUwOV9MVV9YNTA5KQotIAl7Ci0tCSAgWDUwOSAqeCA9IG9iai0+ ZGF0YS54NTA5OwotKwkgIFg1MDkgKnggPSBYNTA5X09CSkVDVF9nZXQwX1g1MDkob2JqKTsKLSAJ ICBjYWRkcl90IGl0bTsKLSAJICBpbnQgYmxlbjsKLSAJICBCSU9fcmVzZXQgKGluKTsKLS0tLSBh L2xpYnNyYy9XaS94bWxlbmMuaAotKysrIGIvbGlic3JjL1dpL3htbGVuYy5oCi1AQCAtMzgsNiAr MzgsNyBAQAotICNpbmNsdWRlIDxvcGVuc3NsL2RzYS5oPgotICNpbmNsdWRlIDxvcGVuc3NsL3Jz YS5oPgotICNpbmNsdWRlIDxvcGVuc3NsL2Rlcy5oPgotKyNpbmNsdWRlIDxvcGVuc3NsL2htYWMu aD4KLSAKLSAjaWZkZWYgQUVTX0VOQ19FTkFCTEUKLSAjaW5jbHVkZSA8b3BlbnNzbC9hZXMuaD4K LUBAIC02MzEsNSArNjMyLDE4MyBAQCBjYWRkcl90ICogeG1sX2ZpbmRfYW55X2NoaWxkIChjYWRk cl90ICoKLSAKLSBleHRlcm4gZGtfbXV0ZXhfdCAqIHhlbmNfa2V5c19tdHg7Ci0gCi0rI2lmIE9Q RU5TU0xfVkVSU0lPTl9OVU1CRVIgPCAweDEwMTAwMDAwCi0rCi0rc3RhdGljIGlubGluZSBITUFD X0NUWCAqSE1BQ19DVFhfbmV3KHZvaWQpCi0rewotKwlITUFDX0NUWCAqcDsKLSsKLSsJcCA9IGNh bGxvYygxLCBzaXplb2YoSE1BQ19DVFgpKTsKLSsJaWYgKCFwKQotKwkJcmV0dXJuIHA7Ci0rCUhN QUNfQ1RYX2luaXQocCk7Ci0rCXJldHVybiBwOwotK30KLSsKLStzdGF0aWMgaW5saW5lIHZvaWQg SE1BQ19DVFhfZnJlZShITUFDX0NUWCAqY3R4KQotK3sKLSsJSE1BQ19DVFhfY2xlYW51cChjdHgp OwotKwlmcmVlKGN0eCk7Ci0rfQotKwotK3N0YXRpYyBpbmxpbmUgdm9pZCBSU0FfZ2V0MF9rZXko Y29uc3QgUlNBICpyLCBjb25zdCBCSUdOVU0gKipuLAotKwkJCQljb25zdCBCSUdOVU0gKiplLCBj b25zdCBCSUdOVU0gKipkKQotK3sKLSsJaWYgKG4gIT0gTlVMTCkKLSsJCSpuID0gci0+bjsKLSsJ aWYgKGUgIT0gTlVMTCkKLSsJCSplID0gci0+ZTsKLSsJaWYgKGQgIT0gTlVMTCkKLSsJCSpkID0g ci0+ZDsKLSt9Ci0rCi0rc3RhdGljIGlubGluZSB2b2lkIFJTQV9nZXQwX2ZhY3RvcnMoY29uc3Qg UlNBICpyLCBjb25zdCBCSUdOVU0gKipwLAotKwkJCQkgICAgY29uc3QgQklHTlVNICoqcSkKLSt7 Ci0rCWlmIChwICE9IE5VTEwpCi0rCQkqcCA9IHItPnA7Ci0rCWlmIChxICE9IE5VTEwpCi0rCQkq cSA9IHItPnE7Ci0rfQotKwotK3N0YXRpYyBpbmxpbmUgUlNBICpFVlBfUEtFWV9nZXQwX1JTQShF VlBfUEtFWSAqcGtleSkKLSt7Ci0rCWlmIChwa2V5LT50eXBlICE9IEVWUF9QS0VZX1JTQSkKLSsJ CXJldHVybiBOVUxMOwotKwlyZXR1cm4gcGtleS0+cGtleS5yc2E7Ci0rfQotKwotK3N0YXRpYyBp bmxpbmUgdm9pZCBESF9nZXQwX2tleShjb25zdCBESCAqZGgsIGNvbnN0IEJJR05VTSAqKnB1Yl9r ZXksCi0rCQkJICAgICAgIGNvbnN0IEJJR05VTSAqKnByaXZfa2V5KQotK3sKLSsJaWYgKHB1Yl9r ZXkgIT0gTlVMTCkKLSsJCSpwdWJfa2V5ID0gZGgtPnB1Yl9rZXk7Ci0rCWlmIChwcml2X2tleSAh PSBOVUxMKQotKwkJKnByaXZfa2V5ID0gZGgtPnByaXZfa2V5OwotK30KLSsKLSsKLStzdGF0aWMg aW5saW5lIHZvaWQgREhfZ2V0MF9wcWcoY29uc3QgREggKmRoLCBjb25zdCBCSUdOVU0gKipwLCBj b25zdCBCSUdOVU0gKipxLAotKwkJCSAgICAgICBjb25zdCBCSUdOVU0gKipnKQotK3sKLSsJaWYg KHAgIT0gTlVMTCkKLSsJCSpwID0gZGgtPnA7Ci0rCWlmIChxICE9IE5VTEwpCi0rCQkqcSA9IGRo LT5xOwotKwlpZiAoZyAhPSBOVUxMKQotKwkJKmcgPSBkaC0+ZzsKLSt9Ci0rCi0rc3RhdGljIGlu bGluZSBEU0EgKkVWUF9QS0VZX2dldDBfRFNBKEVWUF9QS0VZICpwa2V5KQotK3sKLSsJaWYgKHBr ZXktPnR5cGUgIT0gRVZQX1BLRVlfRFNBKQotKwkJcmV0dXJuIE5VTEw7Ci0rCXJldHVybiBwa2V5 LT5wa2V5LmRzYTsKLSt9Ci0rCi0rc3RhdGljIGlubGluZSBpbnQgREhfc2V0MF9wcWcoREggKmRo LCBCSUdOVU0gKnAsIEJJR05VTSAqcSwgQklHTlVNICpnKQotK3sKLSsJLyogSWYgdGhlIGZpZWxk cyBwIGFuZCBnIGluIGQgYXJlIE5VTEwsIHRoZSBjb3JyZXNwb25kaW5nIGlucHV0Ci0rCSAqIHBh cmFtZXRlcnMgTVVTVCBiZSBub24tTlVMTC4gIHEgbWF5IHJlbWFpbiBOVUxMLgotKwkgKi8KLSsJ aWYgKChkaC0+cCA9PSBOVUxMICYmIHAgPT0gTlVMTCkKLSsJICAgIHx8IChkaC0+ZyA9PSBOVUxM ICYmIGcgPT0gTlVMTCkpCi0rCQlyZXR1cm4gMDsKLSsKLSsJaWYgKHAgIT0gTlVMTCkgewotKwkJ Qk5fZnJlZShkaC0+cCk7Ci0rCQlkaC0+cCA9IHA7Ci0rCX0KLSsJaWYgKHEgIT0gTlVMTCkgewot KwkJQk5fZnJlZShkaC0+cSk7Ci0rCQlkaC0+cSA9IHE7Ci0rCX0KLSsJaWYgKGcgIT0gTlVMTCkg ewotKwkJQk5fZnJlZShkaC0+Zyk7Ci0rCQlkaC0+ZyA9IGc7Ci0rCX0KLSsKLSsJaWYgKHEgIT0g TlVMTCkgewotKwkJZGgtPmxlbmd0aCA9IEJOX251bV9iaXRzKHEpOwotKwl9Ci0rCi0rCXJldHVy biAxOwotK30KLSsKLStzdGF0aWMgaW5saW5lIGludCBSU0Ffc2V0MF9rZXkoUlNBICpyLCBCSUdO VU0gKm4sIEJJR05VTSAqZSwgQklHTlVNICpkKQotK3sKLSsJLyogSWYgdGhlIGZpZWxkcyBuIGFu ZCBlIGluIHIgYXJlIE5VTEwsIHRoZSBjb3JyZXNwb25kaW5nIGlucHV0Ci0rCSAqIHBhcmFtZXRl cnMgTVVTVCBiZSBub24tTlVMTCBmb3IgbiBhbmQgZS4gIGQgbWF5IGJlCi0rCSAqIGxlZnQgTlVM TCAoaW4gY2FzZSBvbmx5IHRoZSBwdWJsaWMga2V5IGlzIHVzZWQpLgotKwkgKi8KLSsJaWYgKChy LT5uID09IE5VTEwgJiYgbiA9PSBOVUxMKQotKwkgICAgfHwgKHItPmUgPT0gTlVMTCAmJiBlID09 IE5VTEwpKQotKwkJcmV0dXJuIDA7Ci0rCi0rCWlmIChuICE9IE5VTEwpIHsKLSsJCUJOX2ZyZWUo ci0+bik7Ci0rCQlyLT5uID0gbjsKLSsJfQotKwlpZiAoZSAhPSBOVUxMKSB7Ci0rCQlCTl9mcmVl KHItPmUpOwotKwkJci0+ZSA9IGU7Ci0rCX0KLSsJaWYgKGQgIT0gTlVMTCkgewotKwkJQk5fZnJl ZShyLT5kKTsKLSsJCXItPmQgPSBkOwotKwl9Ci0rCi0rCXJldHVybiAxOwotK30KLSsKLStzdGF0 aWMgaW5saW5lIHZvaWQgRFNBX2dldDBfcHFnKGNvbnN0IERTQSAqZCwgY29uc3QgQklHTlVNICoq cCwKLSsJCQkJY29uc3QgQklHTlVNICoqcSwgY29uc3QgQklHTlVNICoqZykKLSt7Ci0rCWlmIChw ICE9IE5VTEwpCi0rCQkqcCA9IGQtPnA7Ci0rCWlmIChxICE9IE5VTEwpCi0rCQkqcSA9IGQtPnE7 Ci0rCWlmIChnICE9IE5VTEwpCi0rCQkqZyA9IGQtPmc7Ci0rfQotKwotK3N0YXRpYyBpbmxpbmUg dm9pZCBEU0FfZ2V0MF9rZXkoY29uc3QgRFNBICpkLCBjb25zdCBCSUdOVU0gKipwdWJfa2V5LAot KwkJCQljb25zdCBCSUdOVU0gKipwcml2X2tleSkKLSt7Ci0rCWlmIChwdWJfa2V5ICE9IE5VTEwp Ci0rCQkqcHViX2tleSA9IGQtPnB1Yl9rZXk7Ci0rCWlmIChwcml2X2tleSAhPSBOVUxMKQotKwkJ KnByaXZfa2V5ID0gZC0+cHJpdl9rZXk7Ci0rfQotKwotK3N0YXRpYyBpbmxpbmUgY29uc3QgU1RB Q0tfT0YoWDUwOV9FWFRFTlNJT04pICpYNTA5X2dldDBfZXh0ZW5zaW9ucyhjb25zdCBYNTA5ICp4 KQotK3sKLSsJcmV0dXJuIHgtPmNlcnRfaW5mby0+ZXh0ZW5zaW9uczsKLSt9Ci0rCi0rc3RhdGlj IGlubGluZSBpbnQgWDUwOV91cF9yZWYoWDUwOSAqeCkKLSt7Ci0rCXJldHVybiBDUllQVE9fYWRk KCZ4LT5yZWZlcmVuY2VzLCAxLCBDUllQVE9fTE9DS19YNTA5KTsKLSt9Ci0rCi0rc3RhdGljIGlu bGluZSBTVEFDS19PRihYNTA5X09CSkVDVCkgKlg1MDlfU1RPUkVfZ2V0MF9vYmplY3RzKFg1MDlf U1RPUkUgKnYpCi0rewotKwlyZXR1cm4gdi0+b2JqczsKLSt9Ci0rCi0rc3RhdGljIGlubGluZSBp bnQgWDUwOV9PQkpFQ1RfZ2V0X3R5cGUoY29uc3QgWDUwOV9PQkpFQ1QgKmEpCi0rewotKwlyZXR1 cm4gYS0+dHlwZTsKLSt9Ci0rCi0rc3RhdGljIGlubGluZSBYNTA5ICpYNTA5X09CSkVDVF9nZXQw X1g1MDkoY29uc3QgWDUwOV9PQkpFQ1QgKmEpCi0rewotKwlpZiAoYSA9PSBOVUxMIHx8IGEtPnR5 cGUgIT0gWDUwOV9MVV9YNTA5KQotKwkJcmV0dXJuIE5VTEw7Ci0rCXJldHVybiBhLT5kYXRhLng1 MDk7Ci0rfQotKwotKyNlbmRpZgotKwotICNlbmRpZgotIAotLS0tIGEvbGlic3JjL1dpL3htbGVu Y19hbGdvcy5jCi0rKysgYi9saWJzcmMvV2kveG1sZW5jX2FsZ29zLmMKLUBAIC0xMTQ5LDcgKzEx NDksNyBAQCBpbnQKLSBkc2lnX2htYWNfc2hhMjU2X2RpZ2VzdCAoZGtfc2Vzc2lvbl90ICogc2Vz X2luLCBsb25nIGxlbiwgeGVuY19rZXlfdCAqIGtleSwgY2FkZHJfdCAqIHNpZ25fb3V0KQotIHsK LSAgIHVuc2lnbmVkIGNoYXIgKiBkYXRhOwotLSAgSE1BQ19DVFggY3R4OwotKyAgSE1BQ19DVFgg KmN0eDsKLSAgIHVuc2lnbmVkIGNoYXIga2V5X2RhdGFbMzIgKiA4XTsKLSAgIHVuc2lnbmVkIGNo YXIgbWQgW1NIQTI1Nl9ESUdFU1RfTEVOR1RIICsgMV07Ci0gICB1bnNpZ25lZCBjaGFyIG1kNjQg W1NIQTI1Nl9ESUdFU1RfTEVOR1RIICogMiArIDFdOwotQEAgLTExODIsNyArMTE4Miw5IEBAIGRz aWdfaG1hY19zaGEyNTZfZGlnZXN0IChka19zZXNzaW9uX3QgKgotICAgICAgIGRlZmF1bHQ6Ci0g CSAgcmV0dXJuIDA7Ci0gICAgIH0KLS0KLSsgIGN0eCA9IEhNQUNfQ1RYX25ldygpOwotKyAgaWYg KCFjdHgpCi0rCSAgcmV0dXJuIDA7Ci0gCi0gICBkYXRhID0gKHVuc2lnbmVkIGNoYXIgKikgZGtf YWxsb2NfYm94IChsZW4sIERWX0NfU1RSSU5HKTsKLSAgIENBVENIX1JFQURfRkFJTCAoc2VzX2lu KQotQEAgLTExOTIsMTQgKzExOTQsMTUgQEAgZHNpZ19obWFjX3NoYTI1Nl9kaWdlc3QgKGRrX3Nl c3Npb25fdCAqCi0gICBGQUlMRUQKLSAgICAgewotICAgICAgIGRrX2ZyZWVfYm94ICgoYm94X3Qp IGRhdGEpOwotKyAgICAgIEhNQUNfQ1RYX2ZyZWUoY3R4KTsKLSAgICAgICByZXR1cm4gMDsKLSAg ICAgfQotICAgRU5EX1JFQURfRkFJTCAoc2VzX2luKTsKLSAKLS0gIEhNQUNfSW5pdCgmY3R4LCAo dm9pZCopIGtleV9kYXRhICwga2V5X2xlbiwgRVZQX3NoYTI1NiAoKSk7Ci0tICBITUFDX1VwZGF0 ZSgmY3R4LCBkYXRhLCBsZW4pOwotLSAgSE1BQ19GaW5hbCgmY3R4LCBtZCwgJmhtYWNfbGVuKTsK LS0gIEhNQUNfY2xlYW51cCgmY3R4KTsKLSsgIEhNQUNfSW5pdF9leChjdHgsICh2b2lkKikga2V5 X2RhdGEgLCBrZXlfbGVuLCBFVlBfc2hhMjU2ICgpLCBOVUxMKTsKLSsgIEhNQUNfVXBkYXRlKGN0 eCwgZGF0YSwgbGVuKTsKLSsgIEhNQUNfRmluYWwoY3R4LCBtZCwgJmhtYWNfbGVuKTsKLSsgIEhN QUNfQ1RYX2ZyZWUoY3R4KTsKLSAKLSAgIGlmIChobWFjX2xlbiAhPSBTSEEyNTZfRElHRVNUX0xF TkdUSCkKLSAgICAgR1BGX1Q7Ci1AQCAtMTIyMCw3ICsxMjIzLDcgQEAgZHNpZ19obWFjX3NoYTI1 Nl9kaWdlc3QgKGRrX3Nlc3Npb25fdCAqCi0gaW50Ci0gZHNpZ19obWFjX3NoYTI1Nl92ZXJpZnkg KGRrX3Nlc3Npb25fdCAqIHNlc19pbiwgbG9uZyBsZW4sIHhlbmNfa2V5X3QgKiBrZXksIGNhZGRy X3QgZGlnZXN0KQotIHsKLS0gIEhNQUNfQ1RYIGN0eDsKLSsgIEhNQUNfQ1RYICpjdHg7Ci0gICB1 bnNpZ25lZCBjaGFyICogZGF0YTsKLSAgIHVuc2lnbmVkIGNoYXIga2V5X2RhdGFbMyAqIDhdOwot ICAgdW5zaWduZWQgY2hhciBtZCBbU0hBMjU2X0RJR0VTVF9MRU5HVEggKyAxXTsKLUBAIC0xMjQ5 LDYgKzEyNTIsOSBAQCBkc2lnX2htYWNfc2hhMjU2X3ZlcmlmeSAoZGtfc2Vzc2lvbl90ICoKLSAJ ICByZXR1cm4gMDsKLSAgICAgfQotIAotKyAgY3R4ID0gSE1BQ19DVFhfbmV3KCk7Ci0rICBpZiAo IWN0eCkKLSsJICByZXR1cm4gMDsKLSAKLSAgIGRhdGEgPSAodW5zaWduZWQgY2hhciAqKSBka19h bGxvY19ib3ggKGxlbiwgRFZfQ19TVFJJTkcpOwotICAgQ0FUQ0hfUkVBRF9GQUlMIChzZXNfaW4p Ci1AQCAtMTI1OCwxNCArMTI2NCwxNSBAQCBkc2lnX2htYWNfc2hhMjU2X3ZlcmlmeSAoZGtfc2Vz c2lvbl90ICoKLSAgIEZBSUxFRAotICAgICB7Ci0gICAgICAgZGtfZnJlZV9ib3ggKChib3hfdCkg ZGF0YSk7Ci0rICAgICAgSE1BQ19DVFhfZnJlZShjdHgpOwotICAgICAgIHJldHVybiAwOwotICAg ICB9Ci0gICBFTkRfUkVBRF9GQUlMIChzZXNfaW4pOwotIAotLSAgSE1BQ19Jbml0KCZjdHgsICh2 b2lkKikga2V5X2RhdGEgLCBrZXlfbGVuLCBFVlBfc2hhMjU2ICgpKTsKLS0gIEhNQUNfVXBkYXRl KCZjdHgsIGRhdGEsIGxlbik7Ci0tICBITUFDX0ZpbmFsKCZjdHgsIG1kLCAmaG1hY19sZW4pOwot LSAgSE1BQ19jbGVhbnVwKCZjdHgpOwotKyAgSE1BQ19Jbml0X2V4KGN0eCwgKHZvaWQqKSBrZXlf ZGF0YSAsIGtleV9sZW4sIEVWUF9zaGEyNTYgKCksIE5VTEwpOwotKyAgSE1BQ19VcGRhdGUoY3R4 LCBkYXRhLCBsZW4pOwotKyAgSE1BQ19GaW5hbChjdHgsIG1kLCAmaG1hY19sZW4pOwotKyAgSE1B Q19DVFhfZnJlZShjdHgpOwotICAgZGtfZnJlZV9ib3ggKChib3hfdCkgZGF0YSk7Ci0gCi0gICBs ZW4xID0geGVuY19lbmNvZGVfYmFzZTY0ICgoY2hhciAqKW1kLCBtZDY0LCBobWFjX2xlbik7Ci1A QCAtMTU4Niw3ICsxNTkzLDcgQEAgaW50Ci0gZHNpZ19obWFjX3NoYTFfZGlnZXN0IChka19zZXNz aW9uX3QgKiBzZXNfaW4sIGxvbmcgbGVuLCB4ZW5jX2tleV90ICoga2V5LCBjYWRkcl90ICogc2ln bl9vdXQpCi0gewotICAgdW5zaWduZWQgY2hhciAqIGRhdGE7Ci0tICBITUFDX0NUWCBjdHg7Ci0r ICBITUFDX0NUWCAqY3R4OwotICAgdW5zaWduZWQgY2hhciBrZXlfZGF0YVszMiAqIDhdOwotICAg dW5zaWduZWQgY2hhciBtZCBbU0hBX0RJR0VTVF9MRU5HVEggKyAxXTsKLSAgIHVuc2lnbmVkIGNo YXIgbWQ2NCBbU0hBX0RJR0VTVF9MRU5HVEggKiAyICsgMV07Ci1AQCAtMTYyMCw2ICsxNjI3LDkg QEAgZHNpZ19obWFjX3NoYTFfZGlnZXN0IChka19zZXNzaW9uX3QgKiBzZQotIAkgIHJldHVybiAw OwotICAgICB9Ci0gCi0rICBjdHggPSBITUFDX0NUWF9uZXcoKTsKLSsgIGlmICghY3R4KQotKwkg IHJldHVybiAwOwotIAotICAgZGF0YSA9ICh1bnNpZ25lZCBjaGFyICopIGRrX2FsbG9jX2JveCAo bGVuLCBEVl9DX1NUUklORyk7Ci0gICBDQVRDSF9SRUFEX0ZBSUwgKHNlc19pbikKLUBAIC0xNjI5 LDE0ICsxNjM5LDE1IEBAIGRzaWdfaG1hY19zaGExX2RpZ2VzdCAoZGtfc2Vzc2lvbl90ICogc2UK LSAgIEZBSUxFRAotICAgICB7Ci0gICAgICAgZGtfZnJlZV9ib3ggKChib3hfdCkgZGF0YSk7Ci0r ICAgICAgSE1BQ19DVFhfZnJlZShjdHgpOwotICAgICAgIHJldHVybiAwOwotICAgICB9Ci0gICBF TkRfUkVBRF9GQUlMIChzZXNfaW4pOwotIAotLSAgSE1BQ19Jbml0KCZjdHgsICh2b2lkKikga2V5 X2RhdGEgLCBrZXlfbGVuLCBFVlBfc2hhMSAoKSk7Ci0tICBITUFDX1VwZGF0ZSgmY3R4LCBkYXRh LCBsZW4pOwotLSAgSE1BQ19GaW5hbCgmY3R4LCBtZCwgJmhtYWNfbGVuKTsKLS0gIEhNQUNfY2xl YW51cCgmY3R4KTsKLSsgIEhNQUNfSW5pdF9leChjdHgsICh2b2lkKikga2V5X2RhdGEgLCBrZXlf bGVuLCBFVlBfc2hhMSAoKSwgTlVMTCk7Ci0rICBITUFDX1VwZGF0ZShjdHgsIGRhdGEsIGxlbik7 Ci0rICBITUFDX0ZpbmFsKGN0eCwgbWQsICZobWFjX2xlbik7Ci0rICBITUFDX0NUWF9mcmVlKGN0 eCk7Ci0gCi0gICBpZiAoaG1hY19sZW4gIT0gU0hBX0RJR0VTVF9MRU5HVEgpCi0gICAgIEdQRl9U OwotQEAgLTE2NTcsNyArMTY2OCw3IEBAIGRzaWdfaG1hY19zaGExX2RpZ2VzdCAoZGtfc2Vzc2lv bl90ICogc2UKLSBpbnQKLSBkc2lnX2htYWNfc2hhMV92ZXJpZnkgKGRrX3Nlc3Npb25fdCAqIHNl c19pbiwgbG9uZyBsZW4sIHhlbmNfa2V5X3QgKiBrZXksIGNhZGRyX3QgZGlnZXN0KQotIHsKLS0g IEhNQUNfQ1RYIGN0eDsKLSsgIEhNQUNfQ1RYICpjdHg7Ci0gICB1bnNpZ25lZCBjaGFyICogZGF0 YTsKLSAgIHVuc2lnbmVkIGNoYXIga2V5X2RhdGFbMyAqIDhdOwotICAgdW5zaWduZWQgY2hhciBt ZCBbU0hBX0RJR0VTVF9MRU5HVEggKyAxXTsKLUBAIC0xNjg2LDYgKzE2OTcsOSBAQCBkc2lnX2ht YWNfc2hhMV92ZXJpZnkgKGRrX3Nlc3Npb25fdCAqIHNlCi0gCSAgcmV0dXJuIDA7Ci0gICAgIH0K LSAKLSsgIGN0eCA9IEhNQUNfQ1RYX25ldygpOwotKyAgaWYgKCFjdHgpCi0rCSAgcmV0dXJuIDA7 Ci0gCi0gICBkYXRhID0gKHVuc2lnbmVkIGNoYXIgKikgZGtfYWxsb2NfYm94IChsZW4sIERWX0Nf U1RSSU5HKTsKLSAgIENBVENIX1JFQURfRkFJTCAoc2VzX2luKQotQEAgLTE2OTUsMTQgKzE3MDks MTUgQEAgZHNpZ19obWFjX3NoYTFfdmVyaWZ5IChka19zZXNzaW9uX3QgKiBzZQotICAgRkFJTEVE Ci0gICAgIHsKLSAgICAgICBka19mcmVlX2JveCAoKGJveF90KSBkYXRhKTsKLSsgICAgICBITUFD X0NUWF9mcmVlKGN0eCk7Ci0gICAgICAgcmV0dXJuIDA7Ci0gICAgIH0KLSAgIEVORF9SRUFEX0ZB SUwgKHNlc19pbik7Ci0gCi0tICBITUFDX0luaXQoJmN0eCwgKHZvaWQqKSBrZXlfZGF0YSAsIGtl eV9sZW4sIEVWUF9zaGExICgpKTsKLS0gIEhNQUNfVXBkYXRlKCZjdHgsIGRhdGEsIGxlbik7Ci0t ICBITUFDX0ZpbmFsKCZjdHgsIG1kLCAmaG1hY19sZW4pOwotLSAgSE1BQ19jbGVhbnVwKCZjdHgp OwotKyAgSE1BQ19Jbml0X2V4KGN0eCwgKHZvaWQqKSBrZXlfZGF0YSAsIGtleV9sZW4sIEVWUF9z aGExICgpLCBOVUxMKTsKLSsgIEhNQUNfVXBkYXRlKGN0eCwgZGF0YSwgbGVuKTsKLSsgIEhNQUNf RmluYWwoY3R4LCBtZCwgJmhtYWNfbGVuKTsKLSsgIEhNQUNfQ1RYX2ZyZWUoY3R4KTsKLSAgIGRr X2ZyZWVfYm94ICgoYm94X3QpIGRhdGEpOwotIAotICAgbGVuMSA9IHhlbmNfZW5jb2RlX2Jhc2U2 NCAoKGNoYXIgKiltZCwgbWQ2NCwgaG1hY19sZW4pOwotQEAgLTE3NjMsNyArMTc3OCw3IEBAIGlu dCB4ZW5jX2Flc19lbmNyeXB0b3IgKGRrX3Nlc3Npb25fdCAqIHMKLSAgIGNhZGRyX3Qgb3V0YnVm X2JlZzsKLSAgIGludCBsZW47Ci0gICBjYWRkcl90IGVuY29kZWRfb3V0OwotLSAgRVZQX0NJUEhF Ul9DVFggY3R4OwotKyAgRVZQX0NJUEhFUl9DVFggKmN0eDsKLSAgIHVuc2lnbmVkIGNoYXIgKiBp dmVjID0gJmtleS0+a2kuYWVzLml2WzBdOwotIAotICAgQ0FUQ0hfUkVBRF9GQUlMIChzZXNfaW4p Ci1AQCAtMTc3OCw3ICsxNzkzLDcgQEAgaW50IHhlbmNfYWVzX2VuY3J5cHRvciAoZGtfc2Vzc2lv bl90ICogcwotICAgRU5EX1JFQURfRkFJTCAoc2VzX2luKTsKLSAKLSAjaWYgMQotLSAgRVZQX0NJ UEhFUl9DVFhfaW5pdCgmY3R4KTsKLSsgIGN0eCA9IEVWUF9DSVBIRVJfQ1RYX25ldygpOwotICAg b3V0YnVmX2JlZyA9IGRrX2FsbG9jX2JveCAoYm94X2xlbmd0aCAodGV4dCkgKyAxNiwgRFZfQklO KTsKLSAgIG1lbWNweSAob3V0YnVmX2JlZywgaXZlYywgMTYpOwotICAgb3V0YnVmID0gb3V0YnVm X2JlZyArIDE2OwotQEAgLTE3ODYsMjAgKzE4MDEsMTkgQEAgaW50IHhlbmNfYWVzX2VuY3J5cHRv ciAoZGtfc2Vzc2lvbl90ICogcwotICAgc3dpdGNoIChrZXktPmtpLmFlcy5iaXRzKQotICAgICB7 Ci0gICAgIGNhc2UgMTI4OgotLSAgICAgIEVWUF9FbmNyeXB0SW5pdF9leCgmY3R4LCBFVlBfYWVz XzEyOF9jYmMoKSwgTlVMTCwga2V5LT5raS5hZXMuaywgaXZlYyk7Ci0rICAgICAgRVZQX0VuY3J5 cHRJbml0X2V4KGN0eCwgRVZQX2Flc18xMjhfY2JjKCksIE5VTEwsIGtleS0+a2kuYWVzLmssIGl2 ZWMpOwotICAgICAgIGJyZWFrOwotICAgICBjYXNlIDE5MjoKLS0gICAgICBFVlBfRW5jcnlwdElu aXRfZXgoJmN0eCwgRVZQX2Flc18xOTJfY2JjKCksIE5VTEwsIGtleS0+a2kuYWVzLmssIGl2ZWMp OwotKyAgICAgIEVWUF9FbmNyeXB0SW5pdF9leChjdHgsIEVWUF9hZXNfMTkyX2NiYygpLCBOVUxM LCBrZXktPmtpLmFlcy5rLCBpdmVjKTsKLSAgICAgICBicmVhazsKLSAgICAgY2FzZSAyNTY6Ci0t ICAgICAgRVZQX0VuY3J5cHRJbml0X2V4KCZjdHgsIEVWUF9hZXNfMjU2X2NiYygpLCBOVUxMLCBr ZXktPmtpLmFlcy5rLCBpdmVjKTsKLSsgICAgICBFVlBfRW5jcnlwdEluaXRfZXgoY3R4LCBFVlBf YWVzXzI1Nl9jYmMoKSwgTlVMTCwga2V5LT5raS5hZXMuaywgaXZlYyk7Ci0gICAgICAgYnJlYWs7 Ci0gICAgIGRlZmF1bHQ6Ci0gICAgICAgR1BGX1QxICgiVW5zdXBwb3J0ZWQga2V5IHNpemUiKTsK LSAgICAgfQotLSAgaWYoIUVWUF9FbmNyeXB0VXBkYXRlKCZjdHgsICh1bnNpZ25lZCBjaGFyICop b3V0YnVmLCAmb3V0bGVuLCAodW5zaWduZWQgY2hhciAqKXRleHQsIGJveF9sZW5ndGggKHRleHQp KSkKLSsgIGlmKCFFVlBfRW5jcnlwdFVwZGF0ZShjdHgsICh1bnNpZ25lZCBjaGFyICopb3V0YnVm LCAmb3V0bGVuLCAodW5zaWduZWQgY2hhciAqKXRleHQsIGJveF9sZW5ndGggKHRleHQpKSkKLSAg ICAgewotLSAgICAgIEVWUF9DSVBIRVJfQ1RYX2NsZWFudXAoJmN0eCk7Ci0gICAgICAgZGtfZnJl ZV9ib3ggKHRleHQpOwotICAgICAgIGRrX2ZyZWVfYm94IChvdXRidWZfYmVnKTsKLSAgICAgICB4 ZW5jX3JlcG9ydF9lcnJvciAodCwgNTAwLCBYRU5DX0VOQ19FUlIsICJBRVMgZW5jcnlwdGlvbiBp bnRlcm5hbCBlcnJvciAjMiIpOwotQEAgLTE4MTIsNyArMTgyNiw3IEBAIGludCB4ZW5jX2Flc19l bmNyeXB0b3IgKGRrX3Nlc3Npb25fdCAqIHMKLSAgICAgICB4ZW5jX3JlcG9ydF9lcnJvciAodCwg NTAwLCBYRU5DX0VOQ19FUlIsICJBRVMgZW5jcnlwdGlvbiBpbnRlcm5hbCBlcnJvciAjMyIpOwot ICAgICAgIH0gKi8KLSAgIC8qIG91dGxlbiArPSB0bXBsZW47ICovCi0tICBFVlBfQ0lQSEVSX0NU WF9jbGVhbnVwKCZjdHgpOwotKyAgRVZQX0NJUEhFUl9DVFhfZnJlZShjdHgpOwotIAotICNlbHNl Ci0gICBvdXRidWZfYmVnID0gZGtfYWxsb2NfYm94IChib3hfbGVuZ3RoICh0ZXh0KSArIDE2IC8q IGl2ICovLCBEVl9CSU4pOwotQEAgLTIwNTAsNiArMjA2NCw3IEBAIHhlbmNfcnNhX2RlY3J5cHRv ciAoZGtfc2Vzc2lvbl90ICogc2VzX2kKLSAgIGludCBsZW4gPSAwOwotICAgaW50IGtleXNpemU7 Ci0gICBSU0EgKiByc2EgPSBrZXktPnhla19wcml2YXRlX3JzYTsKLSsgIGNvbnN0IEJJR05VTSAq cCwgKnE7Ci0gCi0gICBpZiAoIXNlc2xlbikKLSAgICAgewotQEAgLTIwNjIsOSArMjA3Nyw5IEBA IHhlbmNfcnNhX2RlY3J5cHRvciAoZGtfc2Vzc2lvbl90ICogc2VzX2kKLSAgICAgICB4ZW5jX3Jl cG9ydF9lcnJvciAodCwgNTAwICsgc3RybGVuIChrZXktPnhla19uYW1lKSwgWEVOQ19FTkNfRVJS LCAiY291bGQgbm90IG1ha2UgUlNBIGRlY3J5cHRpb24gW2tleSAlcyBpcyBub3QgUlNBXSIsIGtl eS0+eGVrX25hbWUpOwotICAgICAgIHJldHVybiAwOwotICAgICB9Ci0rICBSU0FfZ2V0MF9mYWN0 b3JzKHJzYSwgJnAsICZxKTsKLSAgIGlmICghcnNhIHx8Ci0tICAgICAgIXJzYS0+cCB8fAotLSAg ICAgICFyc2EtPnEpCi0rICAgICAgIXAgfHwgIXEpCi0gICAgIHsKLSAgICAgICBpZiAoa2V5LT54 ZWtfeDUwOV9LSSkKLSAJa2V5ID0geGVuY19nZXRfa2V5X2J5X2tleWlkZW50aWZpZXIgKGtleS0+ eGVrX3g1MDlfS0ksIDEpOwotLS0tIGEvbGlic3JjL3V0aWwvc3NsZW5naW5lLmMKLSsrKyBiL2xp YnNyYy91dGlsL3NzbGVuZ2luZS5jCi1AQCAtMjksNyArMjksMTEgQEAKLSBpbnQKLSBzc2xfZW5n aW5lX3N0YXJ0dXAgKHZvaWQpCi0gewotLSAgQ1JZUFRPX21hbGxvY19pbml0ICgpOwotKyNpZiBP UEVOU1NMX1ZFUlNJT05fTlVNQkVSIDwgMHgxMDEwMDAwMCB8fCBkZWZpbmVkIExJQlJFU1NMX1ZF UlNJT05fTlVNQkVSCi0rCUNSWVBUT19tYWxsb2NfaW5pdCAoKTsKLSsjZWxzZQotKwlPUEVOU1NM X21hbGxvY19pbml0KCk7Ci0rI2VuZGlmCi0gICBFUlJfbG9hZF9jcnlwdG9fc3RyaW5ncygpOwot ICAgT3BlblNTTF9hZGRfYWxsX2FsZ29yaXRobXMoKTsKLSAKLS0tLSBhL2xpYnNyYy9XaS9odHRw LmMKLSsrKyBiL2xpYnNyYy9XaS9odHRwLmMKLUBAIC04ODg2LDcgKzg4ODYsNyBAQCBzc2xfc2Vy dmVyX3NldF9jZXJ0aWZpY2F0ZSAoU1NMX0NUWCogc3NsCi0gCQkgIGxvZ19lcnJvciAoIlNTTDog VGhlIHN0b3JlZCBjZXJ0aWZpY2F0ZSAnJXMnIGNhbiBub3QgYmUgdXNlZCBhcyBleHRyYSBjaGFp biBjZXJ0aWZpY2F0ZSIsIHRvayk7Ci0gCQkgIGJyZWFrOwotIAkJfQotLQkgICAgICBDUllQVE9f YWRkKCZrLT54ZWtfeDUwOS0+cmVmZXJlbmNlcywgMSwgQ1JZUFRPX0xPQ0tfWDUwOSk7Ci0rCSAg ICAgIFg1MDlfdXBfcmVmKGstPnhla194NTA5KTsKLSAgICAgICAgICAgICAgIHRvayA9IHN0cnRv a19yIChOVUxMLCAiLCIsICZ0b2tfcyk7Ci0gCSAgICB9Ci0gCSAgZGtfZnJlZV9ib3ggKHN0cik7 Ci0tLS0gYS9saWJzcmMvRGsvRGtlcm5lbC5jCi0rKysgYi9saWJzcmMvRGsvRGtlcm5lbC5jCi1A QCAtNTI4MCw3ICs1MjgwLDExIEBAIHNzbF9zZXJ2ZXJfaW5pdCAoKQotICAgfQotICNlbmRpZgot IAotLSAgU1NMZWF5X2FkZF9hbGxfYWxnb3JpdGhtcyAoKTsKLSsjaWYgT1BFTlNTTF9WRVJTSU9O X05VTUJFUiA8IDB4MTAxMDAwMDAKLSsgIFNTTGVheV9hZGRfYWxsX2FsZ29yaXRobXMoKTsKLSsj ZWxzZQotKyAgT3BlblNTTF9hZGRfYWxsX2FsZ29yaXRobXMoKTsKLSsjZW5kaWYKLSAgIFBLQ1Mx Ml9QQkVfYWRkICgpOwkJLyogc3R1YiAqLwotIAotICNpZmRlZiBOT19USFJFQUQKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9zc2wxLjFfbW9yZS5wYXRjaCBiL3NyY3BrZ3Mv dmlydHVvc28vcGF0Y2hlcy9zc2wxLjFfbW9yZS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2 NDQKaW5kZXggNjZlNTBlYzEyN2JhLi4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy92aXJ0dW9z by9wYXRjaGVzL3NzbDEuMV9tb3JlLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMjAgKzAsMCBA QAotRGVzY3JpcHRpb246IENvbW1lbnQgdW5rbm93biBkZWZpbml0aW9uIGluIHNzbDEuMSAtIHBs ZWFzZSByZXZpZXchCi1BdXRob3I6IEFuZHJlYXMgVGlsbGUgPHRpbGxlQGRlYmlhbi5vcmc+Ci1C dWctRGViaWFuOiBodHRwczovL2J1Z3MuZGViaWFuLm9yZy84Mjg1OTQKLUxhc3QtVXBkYXRlOiBN byAxMS4gRmViIDEzOjUwOjE3IENFVCAyMDE5Ci0KLS0tLSBhL2xpYnNyYy9Eay9Ea2VybmVsLmMK LSsrKyBiL2xpYnNyYy9Eay9Ea2VybmVsLmMKLUBAIC01MTYxLDEwICs1MTYxLDEyIEBAIHNzbF9j dHhfc2V0X3Byb3RvY29sX29wdGlvbnMoU1NMX0NUWCAqY3QKLSAgICAgICBlbHNlIGlmICghc3Ry Y2FzZWNtcCAobmFtZSwgIlRMU3YxXzIiKSB8fCAhc3RyY2FzZWNtcCAobmFtZSwgIlRMU3YxLjIi KSkKLSAJb3B0ID0gU1NMX1BST1RPQ09MX1RMU1YxXzI7Ci0gI2VuZGlmCi0rLyoKLSAjaWYgZGVm aW5lZCAoU1NMX09QX05PX1RMU3YxXzMpCi0gICAgICAgZWxzZSBpZiAoIXN0cmNhc2VjbXAgKG5h bWUsICJUTFN2MV8zIikgfHwgIXN0cmNhc2VjbXAgKG5hbWUsICJUTFN2MS4zIikpCi0gCW9wdCA9 IFNTTF9QUk9UT0NPTF9UTFNWMV8zOwotICNlbmRpZgotKyovCi0gICAgICAgZWxzZSBpZiAoIXN0 cmNhc2VjbXAgKG5hbWUsICJBTEwiKSkKLSAJb3B0ID0gU1NMX1BST1RPQ09MX0FMTDsKLSAgICAg ICBlbHNlCmRpZmYgLS1naXQgYS9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvdXNlLW1rc3RlbXAu cGF0Y2ggYi9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvdXNlLW1rc3RlbXAucGF0Y2gKZGVsZXRl ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ3MWI3ZTQxN2JkOS4uMDAwMDAwMDAwMDAwCi0tLSBh L3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy91c2UtbWtzdGVtcC5wYXRjaAorKysgL2Rldi9udWxs CkBAIC0xLDE4ICswLDAgQEAKLVNvdXJjZTogQHB1bGxtb2xsCi1VcHN0cmVhbTogbm8KLVJlYXNv bjogQXZvaWQgbWt0ZW1wKDMpIGJlY2F1c2UgIk5ldmVyIHVzZSB0aGlzIGZ1bmN0aW9uOyBzZWUg QlVHUy4iCi0KLS0tLSBhL2xpYnNyYy9Eay9Ea3Nlc3N0ci5jCTIwMTgtMDgtMTYgMDE6MDY6MjEu MDAwMDAwMDAwICswMjAwCi0rKysgYi9saWJzcmMvRGsvRGtzZXNzdHIuYwkyMDIwLTAxLTI3IDE1 OjIyOjAwLjk1Mzg3NjI1MSArMDEwMAotQEAgLTI5OCw4ICsyOTgsMTAgQEAKLSAgICAgICBpZiAo IXNlczItPnNlc19maWxlLT5zZXNfbWF4X2Jsb2Nrc19pbl9tZW0pCi0gCXsKLSAJICBjaGFyIGZu YW1lW1BBVEhfTUFYICsgMV07Ci0rICAgICAgICAgIGludCBmZDsKLSAJICBzbnByaW50ZiAoZm5h bWUsIHNpemVvZiAoZm5hbWUpLCAiJXMvc2VzWFhYWFhYIiwgc2VzX3RtcF9kaXIpOwotLQkgIG1r dGVtcCAoZm5hbWUpOwotKwkgIGZkID0gbWtzdGVtcCAoZm5hbWUpOwotKyAgICAgICAgICBjbG9z ZSAoZmQpOwotIAotICNpZiBkZWZpbmVkIChXSU4zMikKLSAjIGRlZmluZSBPUEVOX0ZMQUdTICAJ ICBPX0NSRUFUIHwgT19SRFdSIHwgT19CSU5BUlkgfCBPX0VYQ0wgfCBPX1RFTVBPUkFSWQpkaWZm IC0tZ2l0IGEvc3JjcGtncy92aXJ0dW9zby90ZW1wbGF0ZSBiL3NyY3BrZ3MvdmlydHVvc28vdGVt cGxhdGUKaW5kZXggNzNlNTkwMjNkMzVlLi43ODM5MDlmMGRlMTQgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvdmlydHVvc28vdGVtcGxhdGUKKysrIGIvc3JjcGtncy92aXJ0dW9zby90ZW1wbGF0ZQpAQCAt MSwxOCArMSwxOCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAndmlydHVvc28nCiBwa2duYW1lPXZp cnR1b3NvCi12ZXJzaW9uPTcuMi41LjEKLXJldmlzaW9uPTMKK3ZlcnNpb249Ny4yLjgKK3Jldmlz aW9uPTEKIGFyY2hzPSJ4ODZfNjQqIGFhcmNoNjQqIHBwYzY0bGUqIgogYnVpbGRfc3R5bGU9Z251 LWNvbmZpZ3VyZQotY29uZmlndXJlX2FyZ3M9Ii0tZW5hYmxlLXN0YXRpYyIKLWhvc3RtYWtlZGVw ZW5kcz0iYXV0b21ha2UgbGlidG9vbCBmbGV4IGdwZXJmIG5ldC10b29scyIKK2hvc3RtYWtlZGVw ZW5kcz0iYXV0b21ha2UgbGlidG9vbCBmbGV4IGdwZXJmIG5ldC10b29scyB3aGljaCIKIG1ha2Vk ZXBlbmRzPSJvcGVuc3NsLWRldmVsIGxpYmxkYXAtZGV2ZWwgcmVhZGxpbmUtZGV2ZWwgbGlieG1s Mi1kZXZlbCBtaXQta3JiNS1kZXZlbCIKK2NoZWNrZGVwZW5kcz0icHJvY3BzLW5nIHVuemlwIGN1 cmwiCiBzaG9ydF9kZXNjPSJTY2FsYWJsZSBjcm9zcy1wbGF0Zm9ybSBzZXJ2ZXIgb2YgdmlydHVv c28iCiBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+IgotbGljZW5z ZT0iR1BMLTIiCitsaWNlbnNlPSJHUEwtMi4wLW9ubHkiCiBob21lcGFnZT0iaHR0cDovL3ZpcnR1 b3NvLm9wZW5saW5rc3cuY29tL3dpa2kvbWFpbi9NYWluLyIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9n aXRodWIuY29tL29wZW5saW5rL3ZpcnR1b3NvLW9wZW5zb3VyY2UvYXJjaGl2ZS92JHt2ZXJzaW9u fS50YXIuZ3oiCi1jaGVja3N1bT0zZTQ4MDdlOTQwOThiODI2NWY4Y2YwMDg2N2QxMjE1YmIxZTlk MGQyNzQ4NzhlNTlhNDIwNzQyZDJkZTQ3MWMyCitjaGVja3N1bT1iN2E4Yjc5OTQzYWVmN2RlMWQ3 ZjdhOTg0MDI3NzQ3Nzc2YWIwYjQ0Y2Y2ZTE2MGNiZDY2MDg1ZTViZDkxZWQ1CiAjIGNhbm5vdCBl eGVjdXRlIGJpbmFyeSBmaWxlOiBFeGVjIGZvcm1hdCBlcnJvcgogbm9jcm9zcz0iaHR0cHM6Ly9i dWlsZC52b2lkbGludXgub3JnL2J1aWxkZXJzL2FybXY2bF9idWlsZGVyL2J1aWxkcy8yOTE4Ny9z dGVwcy9zaGVsbF8zL2xvZ3Mvc3RkaW8iCiAKQEAgLTQ1LDggKzQ1LDYgQEAgcG9zdF9pbnN0YWxs KCkgewogCXJtICR7REVTVERJUn0vdXNyL2xpYi92aXJ0b2RiY19yLnthLHNvfQogCXJtICR7REVT VERJUn0vdXNyL2xpYi92aXJ0b2RiY3Uue2Esc299CiAJcm0gJHtERVNURElSfS91c3IvbGliL3Zp cnRvZGJjdV9yLnthLHNvfQotCSMgcmVtb3ZlIHN0YXRpYyBsaWJzLgotCXJtICR7REVTVERJUn0v dXNyL2xpYi92aXJ0dW9zby1vcGVuc291cmNlLSR7dmVyc2lvbiUlLip9L2hvc3RpbmcvKi5hCiB9 CiAKIHZpcnR1b3NvLWJhc2VfcGFja2FnZSgpIHsKQEAgLTYyLDYgKzYwLDYgQEAgdmlydHVvc28t YmFzZV9wYWNrYWdlKCkgewogCQkJCSR7UEtHREVTVERJUn0vdXNyL2Jpbi8ke2Jpbn0tdnQKIAkJ ZG9uZQogCQkjIFJlbW92ZSBzdGF0aWMgbGlicyBhbmQgbGlidG9vbCBhcmNoaXZlcy4KLQkJcm0g LWYgJHtQS0dERVNURElSfS91c3IvbGliLyoue2EsbGF9CisJCXJtIC1mICR7UEtHREVTVERJUn0v dXNyL2xpYi8qLmxhCiAJfQogfQoKRnJvbSBmMjljOGZlY2JlOThjMWIwZjA4NDNmZGI5ZTg5ZmVk MjZhYTFiY2UxIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLbGFyYSBNb2RpbiA8a2xh cmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMgMTY6NDM6NTggKzAxMDAK U3ViamVjdDogW1BBVENIIDM5LzM5XSB4MmdvY2xpZW50OiByZXZidW1wIGR1ZSB0byBvcGVubGRh cCB1cGRhdGUKCi0tLQogc3JjcGtncy94MmdvY2xpZW50L3RlbXBsYXRlIHwgMiArLQogMSBmaWxl IGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy94MmdvY2xpZW50L3RlbXBsYXRlIGIvc3JjcGtncy94MmdvY2xpZW50L3RlbXBsYXRlCmlu ZGV4IGJhMmQ1Nzc4MWM0ZC4uNzBjOWZhZWM0ZDRlIDEwMDY0NAotLS0gYS9zcmNwa2dzL3gyZ29j bGllbnQvdGVtcGxhdGUKKysrIGIvc3JjcGtncy94MmdvY2xpZW50L3RlbXBsYXRlCkBAIC0xLDcg KzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAneDJnb2NsaWVudCcKIHBrZ25hbWU9eDJnb2Ns aWVudAogdmVyc2lvbj00LjEuMi4yCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHls ZT1nbnUtbWFrZWZpbGUKIGJ1aWxkX2hlbHBlcj1xbWFrZQogbWFrZV9idWlsZF9hcmdzPSJRTUFL RV9CSU5BUlk9cW1ha2UtcXQ1IExSRUxFQVNFX0JJTkFSWT1scmVsZWFzZS1xdDUiCg== --===============2958739314864818580==--