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 8556 invoked from network); 1 Feb 2023 22:59:58 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 1 Feb 2023 22:59:58 -0000 Content-Type: multipart/mixed; boundary="===============8568984205336553018==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_openldap=3A_update_to_2=2E6=2E3?= To: ml@inbox.vuxu.org From: klarasm Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Wed, 01 Feb 2023 23:59:57 +0100 List-Id: Message-ID: <20230201225957.ymQv3AZgf66xtDhSn4Cm6AIyMGaDRwvw3YyTbAcCG74@z> GitHub notification mails are now in MIME to allow UTF8. --===============8568984205336553018== 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 YmFzZS03LjIuNS4xXzMgKG91dCBvZiBkYXRlLCB0ZXN0IHN1aXRlIGZhaWxzLCBuZXdlc3QgdmVy c2lvbiBpcyA3LjIuOCkNCi0gW3hdIHgyZ29jbGllbnQtNC4xLjIuMl8yDQoNCltjaSBza2lwXSBh Z2Fpbi4gVGhpcyB3aWxsIHByb2JhYmx5IHRha2UgYSBsb25nIHRpbWUgdG8gYnVpbGQuDQo8IS0t DQojIyMjIExvY2FsIGJ1aWxkIHRlc3RpbmcNCi0gSSBidWlsdCB0aGlzIFBSIGxvY2FsbHkgZm9y IG15IG5hdGl2ZSBhcmNoaXRlY3R1cmUsIChBUkNILUxJQkMpDQotIEkgYnVpbHQgdGhpcyBQUiBs b2NhbGx5IGZvciB0aGVzZSBhcmNoaXRlY3R1cmVzIChpZiBzdXBwb3J0ZWQuIG1hcmsgY3Jvc3Ni dWlsZHMpOg0KICAtIGFhcmNoNjQtbXVzbA0KICAtIGFybXY3bA0KICAtIGFybXY2bC1tdXNsDQot LT4NCg0KUGF0Y2hlZCBpc3N1ZSB3aXRoIHRlc3QwNzk6DQpJdCBidWlsZHMgYW5kIHRoZSB0ZXN0 IHN1aXRlIGlzIG9rIG9uIHg4Nl82NC1nbGliYyBidXQgZmFpbHMgb24geDg2XzY0LW11c2wgKGlm IEkgcmVtZW1iZXIgY29ycmVjdGx5IGZyb20gZWFybGllciB0ZXN0aW5nIHRoZSAyLjUgYnJhbmNo IGhhZCB0aGUgc2FtZSB0ZXN0IHN1aXRlIGVycm9yKS4NCltvcGVubGRhcC0yLjYuMy10ZXN0MDc5 LmxvZ10oaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9maWxlcy8x MDUzMDg0My9vcGVubGRhcC0yLjYuMy10ZXN0MDc5LmxvZykNCltvcGVubGRhcC0yLjYuMy1uby10 ZXN0cy5sb2ddKGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvZmls ZXMvMTA1MzA5MDMvb3BlbmxkYXAtMi42LjMtbm8tdGVzdHMubG9nKQ0KW29wZW5sZGFwLTIuNi4z LWFsbC10ZXN0cy5sb2ddKGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2Fn ZXMvZmlsZXMvMTA1MzA5Mjkvb3BlbmxkYXAtMi42LjMtYWxsLXRlc3RzLmxvZykNCg0KSXQgc2Vl bXMgdGhhdCB0ZXN0IDc5IGFsc28gZmFpbHMgb24gYWxwaW5lOiBodHRwczovL2dpdC5hbHBpbmVs aW51eC5vcmcvYXBvcnRzL3RyZWUvbWFpbi9vcGVubGRhcC9BUEtCVUlMRCNuMjI3DQpJJ2xsIGhh dmUgdG8gbG9vayBjbG9zZXIgaW50byB0aGUgc3BlY2lmaWMgdGVzdCBhbmQgd2h5IGl0IGZhaWxz LCBidXQgaWYgaXQncyBub3QgY3JpdGljYWwgaXQgbWF5IGJlIG9rIHRvIGlnbm9yZSBpdC4NCg0K VGhlIHJlc3Qgb2YgdGhlIHRlc3Qgc3VpdGUgZG9lcyBub3Qgc2VlbSB0byBiZSBhIHByb2JsZW0u CgpBIHBhdGNoIGZpbGUgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBh Y2thZ2VzL3B1bGwvNDE5NDgucGF0Y2ggaXMgYXR0YWNoZWQ= --===============8568984205336553018== 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 ZXR0ZXh0LWRldmVsIGd0aystZGV2ZWwgZ3BnbWUtZGV2ZWwgZ2xpYi1kZXZlbCIKCkZyb20gOGUz ZGM3OGE2ODZkOGViYTNkNzEzYWQ1NDY2Nzg0MGFkZmRkZGJiOCBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogS2xhcmEgTW9kaW4gPGtsYXJhc21vZGluQGdtYWlsLmNvbT4KRGF0ZTogV2Vk LCAxIEZlYiAyMDIzIDE2OjQyOjQ3ICswMTAwClN1YmplY3Q6IFtQQVRDSCAzOC8zOV0gdmlydHVv c286IHVwZGF0ZSB0byA3LjIuOAoKLSByZW1vdmUgcGF0Y2hlcyB0aGF0IG5vIGxvbmdlciBhcHBs eQotIGFkZCBwYXRjaCB0aGF0IHJlbW92ZXMgZ2l0IHJldmlzaW9uIGZyb20gZ3JhcGhxbAotIGRp c2FibGUgc3RhdGljIGxpYnJhcmllcyBhcyB3ZSdyZSByZW1vdmluZyB0aGVtIGFmdGVyIGluc3Rh bGwgYW55d2F5Ci0gYWRkIHdoaWNoIHRvIGhvc3RtYWtlZGVwZW5kcwotLS0KIC4uLi92aXJ0dW9z by9wYXRjaGVzL2Fsd2F5cy1pZWVlLWZsb2F0cy5wYXRjaCB8ICAgNDYgLQogc3JjcGtncy92aXJ0 dW9zby9wYXRjaGVzL2ZpeC1ncmFwaHFsLnBhdGNoICAgIHwgICAxMSArCiAuLi4vdmlydHVvc28v cGF0Y2hlcy9maXgtdXRmOC1iaXR0ZXN0LnBhdGNoICAgfCAgIDE1IC0KIHNyY3BrZ3MvdmlydHVv c28vcGF0Y2hlcy9tdXNsLXBhZ2Vfc2l6ZS5wYXRjaCB8ICAgMzQgLQogLi4uL3JlbW92ZS1vcGVu c3NsLXZlcnNpb24tY2hlY2sucGF0Y2ggICAgICAgIHwgICA0OCAtCiAuLi4vdmlydHVvc28vcGF0 Y2hlcy9zc2wtY29ubmVjdC1zdGF0ZS5wYXRjaCAgfCAgIDE1IC0KIHNyY3BrZ3MvdmlydHVvc28v cGF0Y2hlcy9zc2wxLjEucGF0Y2ggICAgICAgICB8IDE0MDAgLS0tLS0tLS0tLS0tLS0tLS0KIHNy Y3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9zc2wxLjFfbW9yZS5wYXRjaCAgICB8ICAgMjAgLQogc3Jj cGtncy92aXJ0dW9zby9wYXRjaGVzL3VzZS1ta3N0ZW1wLnBhdGNoICAgIHwgICAxOCAtCiBzcmNw a2dzL3ZpcnR1b3NvL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAgfCAgIDE1ICstCiAxMCBm aWxlcyBjaGFuZ2VkLCAxNyBpbnNlcnRpb25zKCspLCAxNjA1IGRlbGV0aW9ucygtKQogZGVsZXRl IG1vZGUgMTAwNjQ0IHNyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9hbHdheXMtaWVlZS1mbG9hdHMu cGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvZml4LWdy YXBocWwucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMv Zml4LXV0ZjgtYml0dGVzdC5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvdmlydHVv c28vcGF0Y2hlcy9tdXNsLXBhZ2Vfc2l6ZS5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3Br Z3MvdmlydHVvc28vcGF0Y2hlcy9yZW1vdmUtb3BlbnNzbC12ZXJzaW9uLWNoZWNrLnBhdGNoCiBk ZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL3NzbC1jb25uZWN0LXN0 YXRlLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL3Nz bDEuMS5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9z c2wxLjFfbW9yZS5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvdmlydHVvc28vcGF0 Y2hlcy91c2UtbWtzdGVtcC5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdmlydHVvc28vcGF0 Y2hlcy9hbHdheXMtaWVlZS1mbG9hdHMucGF0Y2ggYi9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMv YWx3YXlzLWllZWUtZmxvYXRzLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2 OWI1MDM0MjE0ZjcuLjAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMv YWx3YXlzLWllZWUtZmxvYXRzLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNDYgKzAsMCBAQAot RnJvbSBiYzhlOTg5MGRlOGM5ODY2ZTZlMWY0OWM4MzU1ZWJlZTkxNTU3OWU0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQotRnJvbTogcTY2IDxkYW5pZWxAb2N0YWZvcmdlLm9yZz4KLURhdGU6IFdl ZCwgMjkgSmFuIDIwMjAgMTI6NTA6NDYgKzAxMDAKLVN1YmplY3Q6IFtQQVRDSCAxLzJdIGFsd2F5 cyB1c2UgSUVFRSBmbG9hdHMKLQotV2UgZG9uJ3QgYnVpbGQgb24gYW55IHBsYXRmb3JtcyB3aGVy ZSB0aGlzIGlzIG5vdCB0aGUgY2FzZS4KLQotRml4ZXMgcGxhdGZvcm1zIGZvciB3aGljaCB0aGlz IGlzIG5vdCBjaGVja2VkLgotLS0tCi0gbGlic3JjL0RrL0RrbWFyc2hhbC5jIHwgMjAgKy0tLS0t LS0tLS0tLS0tLS0tLS0KLSAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDE5IGRlbGV0 aW9ucygtKQotCi1kaWZmIC0tZ2l0IGxpYnNyYy9Eay9Ea21hcnNoYWwuYyBsaWJzcmMvRGsvRGtt YXJzaGFsLmMKLWluZGV4IGRhMTVhMjEuLmIyYjZjNzEgMTAwNjQ0Ci0tLS0gYS9saWJzcmMvRGsv RGttYXJzaGFsLmMKLSsrKyBiL2xpYnNyYy9Eay9Ea21hcnNoYWwuYwotQEAgLTMxLDI1ICszMSw3 IEBACi0gIyBpbmNsdWRlIDxuZXRpbmV0L2luLmg+CQkJIC8qIGZvciBudG9obCwgaHRvbmwgKi8K LSAjZW5kaWYKLSAKLS0jaWYgZGVmaW5lZCAoaTM4NikgfHwgXAotLSAgICBkZWZpbmVkIChfV0lO NjQpIHx8IFwKLS0gICAgZGVmaW5lZCAoX01fSVg4NikgfHwgXAotLSAgICBkZWZpbmVkIChfTV9B TFBIQSkgfHwgXAotLSAgICBkZWZpbmVkIChtYzY4MDAwKSB8fCBcCi0tICAgIGRlZmluZWQgKHNw YXJjKSB8fCBcCi0tICAgIGRlZmluZWQgKF9feDg2XzY0KSB8fCBcCi0tICAgIGRlZmluZWQgKF9f YWxwaGEpIHx8IFwKLS0gICAgZGVmaW5lZCAoX19wb3dlcnBjKSB8fCBcCi0tICAgIGRlZmluZWQg KG1pcHMpIHx8IFwKLS0gICAgZGVmaW5lZCAoX19PUzJfXykgfHwgXAotLSAgICBkZWZpbmVkIChf SUJNUjIpCi0tIyBkZWZpbmUgX0lFRUVfRkxPQVRTCi0tI2VsaWYgZGVmaW5lZCAoT1BMX1NPVVJD RSkKLS0jIGluY2x1ZGUgPGxpYnJwYy5oPgotLSNlbHNlCi0tIyBpbmNsdWRlIDxycGMvdHlwZXMu aD4KLS0jIGluY2x1ZGUgPHJwYy94ZHIuaD4KLS0jZW5kaWYKLSsjZGVmaW5lIF9JRUVFX0ZMT0FU UwotIAotIG1hY3JvX2NoYXJfZnVuYyByZWFkdGFibGVbMjU2XTsKLSBzZXNfd3JpdGVfZnVuYyB3 cml0ZXRhYmxlWzI1Nl07Ci0tLSAKLTIuMjQuMAotCmRpZmYgLS1naXQgYS9zcmNwa2dzL3ZpcnR1 b3NvL3BhdGNoZXMvZml4LWdyYXBocWwucGF0Y2ggYi9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMv Zml4LWdyYXBocWwucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw Li5mMDRiM2U0NWM0N2EKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNo ZXMvZml4LWdyYXBocWwucGF0Y2gKQEAgLTAsMCArMSwxMSBAQAorLS0tIGEvYmluc3JjL2dyYXBo cWwvZ3JhcGhxbF9wbHVnaW4uYwkyMDIzLTAyLTAxIDIxOjE0OjE4LjE0ODQ3ODUwMCArMDEwMAor KysrIGIvYmluc3JjL2dyYXBocWwvZ3JhcGhxbF9wbHVnaW4uYwkyMDIyLTEwLTE5IDE0OjQ0OjE0 LjAwMDAwMDAwMCArMDIwMAorQEAgLTE3Myw3ICsxNzMsNyBAQAorIAorIHN0YXRpYyB1bml0X3Zl cnNpb25fdCBwbHVnaW5fZ3JhcGhxbF92ZXJzaW9uID0geworICAgIkdyYXBoUUwvU1BBUlFMIEJy aWRnZSIsCS8qITwgVGl0bGUgb2YgdW5pdCwgZmlsbGVkIGJ5IHVuaXQgKi8KKy0gIEdRTF9CUklE R0VfVkVSICIgKCIgR0lUX0hFQURfU1RSICIpIiwJLyohPCBWZXJzaW9uIG51bWJlciwgZmlsbGVk IGJ5IHVuaXQgKi8KKysgIEdRTF9CUklER0VfVkVSLAkJLyohPCBWZXJzaW9uIG51bWJlciwgZmls bGVkIGJ5IHVuaXQgKi8KKyAgICJPcGVuTGluayBTb2Z0d2FyZSIsCQkvKiE8IFBsdWdpbidzIGRl dmVsb3BlciwgZmlsbGVkIGJ5IHVuaXQgKi8KKyAgICJTdXBwb3J0IGZ1bmN0aW9ucyBmb3IgR3Jh cGhRTC9TUEFSUUwgQnJpZGdlIiwJLyohPCBBbnkgYWRkaXRpb25hbCBpbmZvLCBmaWxsZWQgYnkg dW5pdCAqLworICAgMCwJCQkJLyohPCBFcnJvciBtZXNzYWdlLCBmaWxsZWQgYnkgdW5pdCBsb2Fk ZXIgKi8KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9maXgtdXRmOC1iaXR0 ZXN0LnBhdGNoIGIvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL2ZpeC11dGY4LWJpdHRlc3QucGF0 Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg1ZTg0YTY3ZWYzYy4uMDAwMDAwMDAw MDAwCi0tLSBhL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9maXgtdXRmOC1iaXR0ZXN0LnBhdGNo CisrKyAvZGV2L251bGwKQEAgLTEsMTUgKzAsMCBAQAotU291cmNlOiBAcHVsbG1vbGwKLVVwc3Ry ZWFtOiBubwotUmVhc29uOiBleHByZXNzaW9uIHJlcXVpcmVzIGJpbmFyeSBBTkQsIG5vdCBsb2dp Y2FsCi0KLS0tLSBhL2xpYnNyYy91dGlsL3BjcmVsaWIvcGNyZV9zdHVkeS5jCTIwMTgtMDgtMTYg MDE6MDY6MjEuMDAwMDAwMDAwICswMjAwCi0rKysgYi9saWJzcmMvdXRpbC9wY3JlbGliL3BjcmVf c3R1ZHkuYwkyMDIwLTAxLTI3IDE1OjQ0OjU3LjcxNTgyMTM1NSArMDEwMAotQEAgLTQzMiw3ICs0 MzIsNyBAQAotICAgICAgICAgICBmb3IgKGMgPSAwOyBjIDwgMTY7IGMrKykgc3RhcnRfYml0c1tj XSB8PSB0Y29kZVtjXTsKLSAgICAgICAgICAgZm9yIChjID0gMTI4OyBjIDwgMjU2OyBjKyspCi0g ICAgICAgICAgICAgewotLSAgICAgICAgICAgIGlmICgodGNvZGVbYy84XSAmJiAoMSA8PCAoYyY3 KSkpICE9IDApCi0rICAgICAgICAgICAgaWYgKCh0Y29kZVtjLzhdICYgKDEgPDwgKGMmNykpKSAh PSAwKQotICAgICAgICAgICAgICAgewotICAgICAgICAgICAgICAgaW50IGQgPSAoYyA+PiA2KSB8 IDB4YzA7ICAgICAgICAgICAgLyogU2V0IGJpdCBmb3IgdGhpcyBzdGFydGVyICovCi0gICAgICAg ICAgICAgICBzdGFydF9iaXRzW2QvOF0gfD0gKDEgPDwgKGQmNykpOyAgICAvKiBhbmQgdGhlbiBz a2lwIG9uIHRvIHRoZSAqLwpkaWZmIC0tZ2l0IGEvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL211 c2wtcGFnZV9zaXplLnBhdGNoIGIvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL211c2wtcGFnZV9z aXplLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3M2E5YWJkZDBmMzkuLjAw MDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvbXVzbC1wYWdlX3NpemUu cGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwzNCArMCwwIEBACi1Gcm9tIDEyNTY2OTgyMWQ5NWZm OTg5YmY5NDE2MWI4ZTI0OTdiZmNhOWQwYWIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9t OiBxNjYgPGRhbmllbEBvY3RhZm9yZ2Uub3JnPgotRGF0ZTogV2VkLCAyOSBKYW4gMjAyMCAxMjo1 NDoxNCArMDEwMAotU3ViamVjdDogW1BBVENIIDIvMl0gVXNlIG1vcmUgcG9ydGFibGUgcGFnZSBz aXplIGNoZWNrCi0KLVRoaXMgZml4ZXMgbXVzbCBidWlsZHMuCi0tLS0KLSBsaWJzcmMvRGsvdGxz Zi5oIHwgMyArKy0KLSAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9u KC0pCi0KLWRpZmYgLS1naXQgbGlic3JjL0RrL3Rsc2YuaCBsaWJzcmMvRGsvdGxzZi5oCi1pbmRl eCBkZGNlNDc4Li5hOTY4N2Y0IDEwMDY0NAotLS0tIGEvbGlic3JjL0RrL3Rsc2YuaAotKysrIGIv bGlic3JjL0RrL3Rsc2YuaAotQEAgLTIwLDYgKzIwLDcgQEAKLSAjZGVmaW5lIF9UTFNGX0hfCi0g Ci0gI2luY2x1ZGUgPHN5cy90eXBlcy5oPgotKyNpbmNsdWRlIDx1bmlzdGQuaD4KLSAKLSBleHRl cm4gc2l6ZV90IGluaXRfbWVtb3J5X3Bvb2woc2l6ZV90LCB2b2lkICopOwotIGV4dGVybiBzaXpl X3QgZ2V0X3VzZWRfc2l6ZSh2b2lkICopOwotQEAgLTE1OSw3ICsxNjAsNyBAQCBleHRlcm4gdm9p ZCB0bHNmX2Jhc2VfZnJlZSAodm9pZCAqIGMsIHNpemVfdCBzeik7Ci0gCi0gI2RlZmluZSBERUZB VUxUX0FSRUFfU0laRSAoMTAyNCoxMCkKLSAKLS0jZGVmaW5lIFBBR0VfU0laRSAoZ2V0cGFnZXNp emUoKSkKLSsjZGVmaW5lIFBBR0VfU0laRSAoKGludClzeXNjb25mKF9TQ19QQUdFU0laRSkpCi0g Ci0gI2lmbmRlZiBXSU4zMgotICNpZmRlZiBVU0VfUFJJTlRGCi0tLSAKLTIuMjQuMAotCmRpZmYg LS1naXQgYS9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvcmVtb3ZlLW9wZW5zc2wtdmVyc2lvbi1j aGVjay5wYXRjaCBiL3NyY3BrZ3MvdmlydHVvc28vcGF0Y2hlcy9yZW1vdmUtb3BlbnNzbC12ZXJz aW9uLWNoZWNrLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzMDk0ZmJiNmFi NjQuLjAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvcmVtb3ZlLW9w ZW5zc2wtdmVyc2lvbi1jaGVjay5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDQ4ICswLDAgQEAK LVNvdXJjZTogQHB1bGxtb2xsCi1VcHN0cmVhbTogbm8KLVJlYXNvbjogRW5hYmxlIHN1YmRpci1v YmplY3RzIGFuZCBzdHJpcCBvcGVuc3NsIHZlcnNpb24gY2hlY2sgd2hpY2ggZmFpbHMgZm9yIGxp YnJlc3NsCi0KLS0tLSBhL2NvbmZpZ3VyZS5hYwkyMDE4LTA4LTE2IDAxOjA2OjIxLjAwMDAwMDAw MCArMDIwMAotKysrIGIvY29uZmlndXJlLmFjCTIwMjAtMDEtMjcgMTU6MDI6MzYuOTQ2OTIyNjYz ICswMTAwCi1AQCAtNTgsNyArNTgsNyBAQAotIGRubAlBTV9JTklUX0FVVE9NQUtFKFsxLjhdKQot IGRubAlBTV9JTklUX0FVVE9NQUtFKFsxLjkgdGFyLXVzdGFyXSkKLSBkbmwKLS1BTV9JTklUX0FV VE9NQUtFKFsxLjkgdGFyLXVzdGFyXSkKLStBTV9JTklUX0FVVE9NQUtFKFsxLjkgdGFyLXVzdGFy IHN1YmRpci1vYmplY3RzXSkKLSAKLSBBTV9NQUlOVEFJTkVSX01PREUKLSAKLUBAIC04NjcsMzIg Kzg2Nyw2IEBACi0gCTs7Ci0gZXNhYwotIAotLUFDX01TR19DSEVDS0lORyhbT3BlblNTTCB2ZXJz aW9uXSkKLS1BQ19UUllfQ09NUElMRShbCi0tI2luY2x1ZGUgPG9wZW5zc2wvb3BlbnNzbHYuaD4K LS1dLCBbCi0tI2lmIE9QRU5TU0xfVkVSU0lPTl9OVU1CRVIgPCAweDAwOTA4MDFmTAotLSNlcnJv ciBPcGVuU1NMIHZlcnNpb24gdG9vIG9sZCAKLS0jZW5kaWYKLS0gICAgXSxbCi0tICAgICAgQUNf TVNHX1JFU1VMVChbPj0gMC45LjhlXSkKLS0gICAgXSxbCi0tICAgICAgQUNfTVNHX0VSUk9SKFtP cGVuU1NMIHZlcnNpb24gMC45LjhlIG9yIGdyZWF0ZXIgaXMgcmVxdWlyZWQuXSkKLS0gICAgXSkK LS0KLS1BQ19NU0dfQ0hFQ0tJTkcoW09wZW5TU0wgdmVyc2lvbl0pCi0tQUNfVFJZX0NPTVBJTEUo WwotLSNpbmNsdWRlIDxvcGVuc3NsL29wZW5zc2x2Lmg+Ci0tXSxbCi0tI2lmIE9QRU5TU0xfVkVS U0lPTl9OVU1CRVIgPj0gMHgxMDEwMDAwZkwKLS0jZXJyb3IgT3BlblNTTCB2ZXJzaW9uIHRvbyBu ZXcKLS0jZW5kaWYKLS0gICAgXSxbCi0tICAgICAgQUNfTVNHX1JFU1VMVChbPCAxLjEuMF0pCi0t ICAgIF0sWwotLSAgICAgIEFDX01TR19FUlJPUihbT3BlblNTTCB2ZXJzaW9uIDEuMS4wIG9yIGdy ZWF0ZXIgaXMgY3VycmVudGx5IG5vdCBzdXBwb3J0ZWQuXSkKLS0gICAgXSkKLS0KLSBBQ19NU0df Q0hFQ0tJTkcoW3VzYWJpbGl0eSBvZiB0aGUgT3BlblNTTCBoZWFkZXIgZmlsZXMgYW5kIGxpYnJh cnkgaW4gJHtvcGVuc3NsX2Rpcn1dKQotIEFDX1RSWV9SVU4oWwotICNpbmNsdWRlIDxvcGVuc3Ns L3JzYS5oPgpkaWZmIC0tZ2l0IGEvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL3NzbC1jb25uZWN0 LXN0YXRlLnBhdGNoIGIvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL3NzbC1jb25uZWN0LXN0YXRl LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzOTU2NmUzYjZkZmQuLjAwMDAw MDAwMDAwMAotLS0gYS9zcmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvc3NsLWNvbm5lY3Qtc3RhdGUu cGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwxNSArMCwwIEBACi1Tb3VyY2U6IEBwdWxsbW9sbAot VXBzdHJlYW06IG5vCi1SZWFzb246IFVzZSB0aGUgcHJvcGVyIGludGVyZmFjZSBvZiBsaWJyZXNz bCB3aGljaCBkb2VzIG5vdCBleHBvc2UgdGhlIGludGVybmFsIHN0cnVjdHVyZSBvZiBTU0wKLQot LS0tIGEvbGlic3JjL1dpL2h0dHAuYwkyMDE4LTA4LTE2IDAxOjA2OjIxLjAwMDAwMDAwMCArMDIw MAotKysrIGIvbGlic3JjL1dpL2h0dHAuYwkyMDIwLTAxLTI3IDE1OjA5OjUzLjI4NDkwNTI2NSAr MDEwMAotQEAgLTk5NDksNyArOTk0OSw3IEBACi0gCSAgY2xpX3NzbF9nZXRfZXJyb3Jfc3RyaW5n IChlcnJfYnVmLCBzaXplb2YgKGVycl9idWYpKTsKLSAJICBzcWxyX25ld19lcnJvciAoIjQyMDAw IiwgIi4uMDAyIiwgIlNTTF9kb19oYW5kc2hha2UgZmFpbGVkICVzIiwgZXJyX2J1Zik7Ci0gCX0K LS0gICAgICBzc2wtPnN0YXRlID0gU1NMX1NUX0FDQ0VQVDsKLSsgICAgICBTU0xfc2V0X2FjY2Vw dF9zdGF0ZSAoc3NsKTsKLSAgICAgICB3aGlsZSAoU1NMX3JlbmVnb3RpYXRlX3BlbmRpbmcgKHNz bCkgJiYgY3RyIDwgMTAwMCkKLSAJewotIAkgIHRpbWVvdXRfdCB0byA9IHsgMCwgMTAwMCB9Owpk aWZmIC0tZ2l0IGEvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL3NzbDEuMS5wYXRjaCBiL3NyY3Br Z3MvdmlydHVvc28vcGF0Y2hlcy9zc2wxLjEucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IDk4ODc0OTk0NjQ4MC4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvdmlydHVvc28v cGF0Y2hlcy9zc2wxLjEucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwxNDAwICswLDAgQEAKLURl c2NyaXB0aW9uOiBGaXggRlRCRlMgd2l0aCBvcGVuc3NsIDEuMQotQXV0aG9yOiBTZWJhc3RpYW4g QW5kcnplaiBTaWV3aW9yIDxzZWJhc3RpYW5AYnJlYWtwb2ludC5jYz4KLUJ1Zy1EZWJpYW46IGh0 dHBzOi8vYnVncy5kZWJpYW4ub3JnLzgyODU5NAotRm9yd2FyZGVkOiBodHRwczovL2dpdGh1Yi5j b20vb3BlbmxpbmsvdmlydHVvc28tb3BlbnNvdXJjZS9wdWxsLzU4MwotTGFzdC1VcGRhdGU6IE1v IDExLiBGZWIgMTM6NTA6MTcgQ0VUIDIwMTkgKGJ5IEFuZHJlYXMgVGlsbGUgPHRpbGxlQGRlYmlh bi5vcmc+KQotCi0tLS0KLQotRnJvbSA4MjMwOTJjY2NiZDhlMmFiOWJmYWQ2YzNkM2RmNzkxYTdm ZmE3NmZjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogU2ViYXN0aWFuIEFuZHJ6ZWog U2lld2lvciA8c2ViYXN0aWFuQGJyZWFrcG9pbnQuY2M+Ci1EYXRlOiBNb24sIDUgU2VwIDIwMTYg MTA6NDk6NTQgKzAwMDAKLVN1YmplY3Q6IFtQQVRDSF0gdmlydHVvc28tb3BlbnNvdXJjZTogYnVp bGQgYWdhaW5zdCBvcGVuc3NsIDEuMS4wCi0KLVNpZ25lZC1vZmYtYnk6IFNlYmFzdGlhbiBBbmRy emVqIFNpZXdpb3IgPHNlYmFzdGlhbkBicmVha3BvaW50LmNjPgotLS0tCi0gbGlic3JjL0RrL0Rr ZXJuZWwuYyAgICAgIHwgICA2ICstCi0gbGlic3JjL1dpL2JpZl9jcnlwdG8uYyAgIHwgMTIwICsr KysrKysrKystLS0tLS0tLQotIGxpYnNyYy9XaS9odHRwLmMgICAgICAgICB8ICAgMiArLQotIGxp YnNyYy9XaS94bWxlbmMuYyAgICAgICB8IDMxOSArKysrKysrKysrKysrKysrKysrKysrKysrKyst LS0tLS0tLS0tLS0tLS0tLS0tLQotIGxpYnNyYy9XaS94bWxlbmMuaCAgICAgICB8IDE5MyArKysr KysrKysrKysrKysrKysrKysrKysrKy0tCi0gbGlic3JjL1dpL3htbGVuY19hbGdvcy5jIHwgMTMy ICsrKysrKysrKysrLS0tLS0tLS0tCi0gbGlic3JjL3V0aWwvc3NsZW5naW5lLmMgIHwgICA2ICst Ci0gNyBmaWxlcyBjaGFuZ2VkLCA1MjQgaW5zZXJ0aW9ucygrKSwgMjU0IGRlbGV0aW9ucygtKQot Ci0tLS0gYS9saWJzcmMvV2kvYmlmX2NyeXB0by5jCi0rKysgYi9saWJzcmMvV2kvYmlmX2NyeXB0 by5jCi1AQCAtMTgxLDIxICsxODEsMjYgQEAgYm94X2htYWMgKGNhZGRyX3QgYm94LCBjYWRkcl90 IGtleSwgaW50Ci0gICB1bnNpZ25lZCBjaGFyIHRlbXBbRVZQX01BWF9NRF9TSVpFXTsKLSAgIHVu c2lnbmVkIGludCBzaXplID0gMDsKLSAgIGNhZGRyX3QgcmVzID0gTlVMTDsKLS0gIEhNQUNfQ1RY IGN0eDsKLSsgIEhNQUNfQ1RYICpjdHg7Ci0gICBjb25zdCBFVlBfTUQgKm1kID0gRVZQX3NoYTEg KCk7Ci0gCi0gICBpZiAoYWxnID09IDEpCi0gICAgIG1kID0gRVZQX3JpcGVtZDE2MCAoKTsKLSAK LS0gIEhNQUNfSW5pdCAoJmN0eCwga2V5LCBib3hfbGVuZ3RoIChrZXkpIC0gRFZfU1RSSU5HUCAo a2V5KSA/IDEgOiAwLCBtZCk7Ci0tICBib3hfaG1hY18xIChib3gsICZjdHgpOwotLSAgSE1BQ19G aW5hbCAoJmN0eCwgdGVtcCwgJnNpemUpOwotKyAgY3R4ID0gSE1BQ19DVFhfbmV3KCk7Ci0rICBp ZiAoIWN0eCkKLSsJICByZXR1cm4gcmVzOwotKwotKyAgSE1BQ19Jbml0X2V4IChjdHgsIGtleSwg Ym94X2xlbmd0aCAoa2V5KSAtIERWX1NUUklOR1AgKGtleSkgPyAxIDogMCwgbWQsIE5VTEwpOwot KyAgYm94X2htYWNfMSAoYm94LCBjdHgpOwotKyAgSE1BQ19GaW5hbCAoY3R4LCB0ZW1wLCAmc2l6 ZSk7Ci0gICBpZiAoc2l6ZSkKLSAgICAgewotICAgICAgIHJlcyA9IGRrX2FsbG9jX2JveCAoc2l6 ZSArIDEsIERWX1NIT1JUX1NUUklORyk7Ci0gICAgICAgbWVtY3B5IChyZXMsIHRlbXAsIHNpemUp OwotICAgICAgIHJlc1tzaXplXSA9IDA7Ci0gICAgIH0KLSsgIEhNQUNfQ1RYX2ZyZWUoY3R4KTsK LSAgIHJldHVybiByZXM7Ci0gfQotIAotQEAgLTM0NywxNCArMzUyLDEyIEBAIGFzbjFfcGFyc2Vf dG9feG1sIChCSU8gKiBicCwgdW5zaWduZWQgY2gKLSAJICAgIHsKLSAJICAgICAgaW50IGlpOwot IAotLQkgICAgICBvcHAgPSBvcDsKLS0JICAgICAgaWkgPSBkMmlfQVNOMV9CT09MRUFOIChOVUxM LCAoY29uc3QgdW5zaWduZWQgY2hhciAqKikmb3BwLCBsZW4gKyBobCk7Ci0tCSAgICAgIGlmIChp aSA8IDApCi0rCSAgICAgIGlmIChsZW4gKyBobCA8IDEpCi0gCQl7Ci0gCQkgIGlmIChCSU9fd3Jp dGUgKGJwLCAiQmFkIGJvb2xlYW5cbiIsIDEyKSkKLSAJCSAgICBnb3RvIGVuZDsKLSAJCX0KLS0J ICAgICAgQklPX3ByaW50ZiAoYnAsICIlZCIsIGlpKTsKLSsJICAgICAgQklPX3ByaW50ZiAoYnAs ICIlZCIsIHBbMF0pOwotIAkgICAgfQotIAkgIGVsc2UgaWYgKHRhZyA9PSBWX0FTTjFfQk1QU1RS SU5HKQotIAkgICAgewotQEAgLTQxNSw3ICs0MTgsNyBAQCBhc24xX3BhcnNlX3RvX3htbCAoQklP ICogYnAsIHVuc2lnbmVkIGNoCi0gCQl9Ci0gCSAgICAgIGlmIChvcyAhPSBOVUxMKQotIAkJewot LQkJICBNX0FTTjFfT0NURVRfU1RSSU5HX2ZyZWUgKG9zKTsKLSsJCSAgQVNOMV9TVFJJTkdfZnJl ZSAob3MpOwotIAkJICBvcyA9IE5VTEw7Ci0gCQl9Ci0gCSAgICB9Ci1AQCAtNDQ4LDcgKzQ1MSw3 IEBAIGFzbjFfcGFyc2VfdG9feG1sIChCSU8gKiBicCwgdW5zaWduZWQgY2gKLSAJCSAgaWYgKEJJ T193cml0ZSAoYnAsICJCQUQgSU5URUdFUiIsIDExKSA8PSAwKQotIAkJICAgIGdvdG8gZW5kOwot IAkJfQotLQkgICAgICBNX0FTTjFfSU5URUdFUl9mcmVlIChicyk7Ci0rCSAgICAgIEFTTjFfU1RS SU5HX2ZyZWUgKGJzKTsKLSAJICAgIH0KLSAJICBlbHNlIGlmICh0YWcgPT0gVl9BU04xX0VOVU1F UkFURUQpCi0gCSAgICB7Ci1AQCAtNDc5LDcgKzQ4Miw3IEBAIGFzbjFfcGFyc2VfdG9feG1sIChC SU8gKiBicCwgdW5zaWduZWQgY2gKLSAJCSAgaWYgKEJJT193cml0ZSAoYnAsICJCQUQgRU5VTUVS QVRFRCIsIDExKSA8PSAwKQotIAkJICAgIGdvdG8gZW5kOwotIAkJfQotLQkgICAgICBNX0FTTjFf RU5VTUVSQVRFRF9mcmVlIChicyk7Ci0rCSAgICAgIEFTTjFfU1RSSU5HX2ZyZWUgKGJzKTsKLSAJ ICAgIH0KLSAJICBlbHNlIGlmIChsZW4gPiAwICYmIGR1bXApCi0gCSAgICB7Ci1AQCAtNTE1LDcg KzUxOCw3IEBAIGVuZDoKLSAgIGlmIChvICE9IE5VTEwpCi0gICAgIEFTTjFfT0JKRUNUX2ZyZWUg KG8pOwotICAgaWYgKG9zICE9IE5VTEwpCi0tICAgIE1fQVNOMV9PQ1RFVF9TVFJJTkdfZnJlZSAo b3MpOwotKyAgICBBU04xX1NUUklOR19mcmVlIChvcyk7Ci0gICAqcHAgPSBwOwotICAgcmV0dXJu IChyZXQpOwotIH0KLUBAIC03MjMsNyArNzI2LDcgQEAgYmlvX3RvX3N0cnNlcyAoQklPICogb3V0 X2JpbykKLSAgIGludCBsZW4gPSBCSU9fZ2V0X21lbV9kYXRhIChvdXRfYmlvLCAmcHRyKTsKLSAg IGludCB0b19yZWFkID0gbGVuLCByZWFkZWQgPSAwOwotIAotLSAgdG9fZnJlZSA9ICgoQlVGX01F TSAqKSBvdXRfYmlvLT5wdHIpLT5kYXRhOwotKyAgdG9fZnJlZSA9ICgoQlVGX01FTSAqKSBCSU9f Z2V0X2RhdGEob3V0X2JpbykpLT5kYXRhOwotICAgQklPX3NldF9mbGFncyAob3V0X2JpbywgQklP X0ZMQUdTX01FTV9SRE9OTFkpOwotICAgQ0FUQ0hfV1JJVEVfRkFJTCAoc2VzKQotICAgICB7Ci1A QCAtNzM1LDcgKzczOCw3IEBAIGJpb190b19zdHJzZXMgKEJJTyAqIG91dF9iaW8pCi0gICAgICAg fSB3aGlsZSAodG9fcmVhZCA+IDApOwotICAgICB9Ci0gICBFTkRfV1JJVEVfRkFJTCAoc2VzKTsK LS0gICgoQlVGX01FTSAqKSBvdXRfYmlvLT5wdHIpLT5kYXRhID0gdG9fZnJlZTsKLSsgICgoQlVG X01FTSAqKSBCSU9fZ2V0X2RhdGEob3V0X2JpbykpLT5kYXRhID0gdG9fZnJlZTsKLSAgIEJJT19j bGVhcl9mbGFncyAob3V0X2JpbywgQklPX0ZMQUdTX01FTV9SRE9OTFkpOwotICAgcmV0dXJuIHNl czsKLSB9Ci1AQCAtNzcwLDcgKzc3Myw3IEBAIGJpZl9zbWltZV92ZXJpZnkgKGNhZGRyX3QgKiBx c3QsIGNhZGRyX3QKLSAgIGlmIChEVl9UWVBFX09GIChtc2cpID09IERWX1NUUklOR19TRVNTSU9O KQotICAgICB7Ci0gICAgICAgaW5fYmlvID0gc3Ryc2VzX3RvX2JpbyAoKGRrX3Nlc3Npb25fdCAq KSBtc2cpOwotLSAgICAgIHRvX2ZyZWUgPSAoKEJVRl9NRU0gKikgaW5fYmlvLT5wdHIpLT5kYXRh OwotKyAgICAgIHRvX2ZyZWUgPSAoKEJVRl9NRU0gKikgQklPX2dldF9kYXRhKGluX2JpbykpLT5k YXRhOwotICAgICAgIEJJT19zZXRfZmxhZ3MgKGluX2JpbywgQklPX0ZMQUdTX01FTV9SRE9OTFkp OwotICAgICB9Ci0gICBlbHNlCi1AQCAtNzgwLDcgKzc4Myw3IEBAIGJpZl9zbWltZV92ZXJpZnkg KGNhZGRyX3QgKiBxc3QsIGNhZGRyX3QKLSAgICAgICBwNyA9IFNNSU1FX3JlYWRfUEtDUzcgKGlu X2JpbywgJmRhdGFfYmlvKTsKLSAgICAgICBpZiAodG9fZnJlZSkKLSAJewotLQkgICgoQlVGX01F TSAqKSBpbl9iaW8tPnB0ciktPmRhdGEgPSB0b19mcmVlOwotKwkgICgoQlVGX01FTSAqKSBCSU9f Z2V0X2RhdGEoaW5fYmlvKSktPmRhdGEgPSB0b19mcmVlOwotIAkgIEJJT19jbGVhcl9mbGFncyAo aW5fYmlvLCBCSU9fRkxBR1NfTUVNX1JET05MWSk7Ci0gCX0KLSAgICAgICBCSU9fZnJlZSAoaW5f YmlvKTsKLUBAIC05MjQsMTYgKzkyNywyMCBAQCBiaWZfc21pbWVfc2lnbiAoY2FkZHJfdCAqIHFz dCwgY2FkZHJfdCAqCi0gICAgIH0KLSAKLSAgIGNlcnRzID0gc2tfWDUwOV9uZXdfbnVsbCAoKTsK LS0gIGlmIChzdG9yZSAmJiBzdG9yZS0+b2JqcykKLSsKLSsgIGlmIChzdG9yZSAmJiBYNTA5X1NU T1JFX2dldDBfb2JqZWN0cyhzdG9yZSkpCi0gICAgIHsKLS0gICAgICBmb3IgKGlueCA9IDA7IGlu eCA8IHNrX1g1MDlfT0JKRUNUX251bSAoc3RvcmUtPm9ianMpOyBpbngrKykKLSsgICAgICBTVEFD S19PRihYNTA5X09CSkVDVCkgKnN0b3JlX29ianMgPSBYNTA5X1NUT1JFX2dldDBfb2JqZWN0cyhz dG9yZSk7Ci0rCi0rICAgICAgZm9yIChpbnggPSAwOyBpbnggPCBza19YNTA5X09CSkVDVF9udW0g KHN0b3JlX29ianMpOyBpbngrKykKLSAJewotLQkgIFg1MDlfT0JKRUNUICpvYmogPSBza19YNTA5 X09CSkVDVF92YWx1ZSAoc3RvcmUtPm9ianMsIGlueCk7Ci0tCSAgaWYgKG9iai0+dHlwZSA9PSBY NTA5X0xVX1g1MDkpCi0tCSAgICBza19YNTA5X3B1c2ggKGNlcnRzLCBYNTA5X2R1cCAob2JqLT5k YXRhLng1MDkpKTsKLSsJICBYNTA5X09CSkVDVCAqb2JqID0gc2tfWDUwOV9PQkpFQ1RfdmFsdWUg KHN0b3JlX29ianMsIGlueCk7Ci0rCSAgaWYgKFg1MDlfT0JKRUNUX2dldF90eXBlKG9iaikgPT0g WDUwOV9MVV9YNTA5KQotKwkgICAgc2tfWDUwOV9wdXNoIChjZXJ0cywgWDUwOV9kdXAgKFg1MDlf T0JKRUNUX2dldDBfWDUwOShvYmopKSk7Ci0gCX0KLSAKLSAgICAgfQotKwotICAgaWYgKHN0b3Jl KQotICAgICBYNTA5X1NUT1JFX2ZyZWUgKHN0b3JlKTsKLSAgIGluX2JpbyA9IEJJT19uZXdfbWVt X2J1ZiAobXNnLCBib3hfbGVuZ3RoIChtc2cpIC0gMSk7Ci1AQCAtMTAwNSwxNSArMTAxMiwxOSBA QCBiaWZfc21pbWVfZW5jcnlwdCAoY2FkZHJfdCAqIHFzdCwgY2FkZHJfCi0gICAgIHNxbHJfbmV3 X2Vycm9yICgiNDIwMDAiLCAiQ1IwMDYiLCAiTm8gcmVjaXBpZW50IGNlcnRpZmljYXRlcyIpOwot IAotICAgY2VydHMgPSBza19YNTA5X25ld19udWxsICgpOwotLSAgaWYgKHN0b3JlICYmIHN0b3Jl LT5vYmpzKQotKwotKyAgaWYgKHN0b3JlICYmIFg1MDlfU1RPUkVfZ2V0MF9vYmplY3RzKHN0b3Jl KSkKLSAgICAgewotLSAgICAgIGZvciAoaW54ID0gMDsgaW54IDwgc2tfWDUwOV9PQkpFQ1RfbnVt IChzdG9yZS0+b2Jqcyk7IGlueCsrKQotKyAgICAgIFNUQUNLX09GKFg1MDlfT0JKRUNUKSAqc3Rv cmVfb2JqcyA9IFg1MDlfU1RPUkVfZ2V0MF9vYmplY3RzKHN0b3JlKTsKLSsKLSsgICAgICBmb3Ig KGlueCA9IDA7IGlueCA8IHNrX1g1MDlfT0JKRUNUX251bSAoc3RvcmVfb2Jqcyk7IGlueCsrKQot IAl7Ci0tCSAgWDUwOV9PQkpFQ1QgKm9iaiA9IHNrX1g1MDlfT0JKRUNUX3ZhbHVlIChzdG9yZS0+ b2JqcywgaW54KTsKLS0JICBpZiAob2JqLT50eXBlID09IFg1MDlfTFVfWDUwOSkKLS0JICAgIHNr X1g1MDlfcHVzaCAoY2VydHMsIFg1MDlfZHVwIChvYmotPmRhdGEueDUwOSkpOwotKwkgIFg1MDlf T0JKRUNUICpvYmogPSBza19YNTA5X09CSkVDVF92YWx1ZSAoc3RvcmVfb2JqcywgaW54KTsKLSsJ ICBpZiAoWDUwOV9PQkpFQ1RfZ2V0X3R5cGUob2JqKSA9PSBYNTA5X0xVX1g1MDkpCi0rCSAgICBz a19YNTA5X3B1c2ggKGNlcnRzLCBYNTA5X2R1cCAoWDUwOV9PQkpFQ1RfZ2V0MF9YNTA5KG9iaikp KTsKLSAJfQotICAgICB9Ci0rCi0gICBpZiAoc3RvcmUpCi0gICAgIFg1MDlfU1RPUkVfZnJlZSAo c3RvcmUpOwotICAgaW5fYmlvID0gQklPX25ld19tZW1fYnVmIChtc2csIGJveF9sZW5ndGggKG1z ZykgLSAxKTsKLUBAIC0xMTgxLDcgKzExOTIsNyBAQCB4NTA5X2NlcnRpZmljYXRlX3ZlcmlmeV9j YiAoaW50IG9rLCBYNTA5Ci0gICBjaGFyICpvcHRzID0gKGNoYXIgKikgWDUwOV9TVE9SRV9DVFhf Z2V0X2FwcF9kYXRhIChjdHgpOwotICAgaWYgKCFvayAmJiBvcHRzKQotICAgICB7Ci0tICAgICAg c3dpdGNoIChjdHgtPmVycm9yKQotKyAgICAgIHN3aXRjaCAoWDUwOV9TVE9SRV9DVFhfZ2V0X2Vy cm9yKGN0eCkpCi0gCXsKLSAJY2FzZSBYNTA5X1ZfRVJSX0NFUlRfSEFTX0VYUElSRUQ6Ci0gCSAg aWYgKHN0cnN0ciAob3B0cywgImV4cGlyZWQiKSkKLUBAIC0xMjg3LDcgKzEyOTgsNyBAQCBiaWZf eDUwOV9jZXJ0aWZpY2F0ZV92ZXJpZnkgKGNhZGRyX3QgKiBxCi0gICBpZiAoIWkpCi0gICAgIHsK LSAgICAgICBjb25zdCBjaGFyICplcnJfc3RyOwotLSAgICAgIGVycl9zdHIgPSBYNTA5X3Zlcmlm eV9jZXJ0X2Vycm9yX3N0cmluZyAoY3NjLT5lcnJvcik7Ci0rICAgICAgZXJyX3N0ciA9IFg1MDlf dmVyaWZ5X2NlcnRfZXJyb3Jfc3RyaW5nIChYNTA5X1NUT1JFX0NUWF9nZXRfZXJyb3IoY3NjKSk7 Ci0gICAgICAgKmVycl9yZXQgPSBzcnZfbWFrZV9uZXdfZXJyb3IgKCIyMjAyMyIsICJDUjAxNSIs ICJYNTA5IGVycm9yOiAlcyIsIGVycl9zdHIpOwotICAgICB9Ci0gCi1AQCAtMTMwOCwyMCArMTMx OSwxNiBAQCBlcnJfcmV0OgotICNkZWZpbmUgVklSVF9DRVJUX0VYVCAiMi4xNi44NDAuMS4xMTEz LjEiCi0gCi0gc3RhdGljIGNhZGRyX3QKLS1CTl9ib3ggKEJJR05VTSAqIHgpCi0rQk5fYm94IChj b25zdCBCSUdOVU0gKngpCi0gewotICAgc2l6ZV90IGJ1Zl9sZW4sIG47Ci0gICBjYWRkcl90IGJ1 ZjsKLSAgIGJ1Zl9sZW4gPSAoc2l6ZV90KSBCTl9udW1fYnl0ZXMgKHgpOwotLSAgaWYgKGJ1Zl9s ZW4gPD0gQk5fQllURVMpCi0tICAgIGJ1ZiA9IGJveF9udW0gKCh1bnNpZ25lZCBsb25nKSB4LT5k WzBdKTsKLS0gIGVsc2UKLS0gICAgewotLSAgICAgIGJ1ZiA9IGRrX2FsbG9jX2JveCAoYnVmX2xl biwgRFZfQklOKTsKLS0gICAgICBuID0gQk5fYm4yYmluICh4LCAodW5zaWduZWQgY2hhciAqKSBi dWYpOwotLSAgICAgIGlmIChuICE9IGJ1Zl9sZW4pCi0tCUdQRl9UOwotLSAgICB9Ci0rICAvKiBk aWQgbm90IGZpZ3VyZSBvdXQgd2hlcmUgYnVmIGlzIGZyZWUoKWVkICovCi0rICBidWYgPSBka19h bGxvY19ib3ggKGJ1Zl9sZW4sIERWX0JJTik7Ci0rICBuID0gQk5fYm4yYmluICh4LCAodW5zaWdu ZWQgY2hhciAqKSBidWYpOwotKyAgaWYgKG4gIT0gYnVmX2xlbikKLSsJICBHUEZfVDsKLSAgIHJl dHVybiBidWY7Ci0gfQotIAotQEAgLTE0OTgsNyArMTUwNSw3IEBAIGJpZl9nZXRfY2VydGlmaWNh dGVfaW5mbyAoY2FkZHJfdCAqIHFzdCwKLSAJaW50IGk7Ci0gCWNoYXIgdG1wWzEwMjRdOwotIAlj aGFyICpleHRfb2lkID0gKGNoYXIgKikgKEJPWF9FTEVNRU5UUyAoYXJncykgPiA0ID8gYmlmX3N0 cmluZ19hcmcgKHFzdCwgYXJncywgNCwgImdldF9jZXJ0aWZpY2F0ZV9pbmZvIikgOiBWSVJUX0NF UlRfRVhUKTsKLS0JU1RBQ0tfT0YgKFg1MDlfRVhURU5TSU9OKSAqIGV4dHMgPSBjZXJ0LT5jZXJ0 X2luZm8tPmV4dGVuc2lvbnM7Ci0rCWNvbnN0IFNUQUNLX09GIChYNTA5X0VYVEVOU0lPTikgKiBl eHRzID0gWDUwOV9nZXQwX2V4dGVuc2lvbnMoY2VydCk7Ci0gCWZvciAoaSA9IDA7IGkgPCBza19Y NTA5X0VYVEVOU0lPTl9udW0gKGV4dHMpOyBpKyspCi0gCSAgewotIAkgICAgWDUwOV9FWFRFTlNJ T04gKmV4ID0gc2tfWDUwOV9FWFRFTlNJT05fdmFsdWUgKGV4dHMsIGkpOwotQEAgLTE1MTAsNyAr MTUxNyw3IEBAIGJpZl9nZXRfY2VydGlmaWNhdGVfaW5mbyAoY2FkZHJfdCAqIHFzdCwKLSAJCWNo YXIgKmRhdGFfcHRyOwotIAkJQklPICptZW0gPSBCSU9fbmV3IChCSU9fc19tZW0gKCkpOwotIAkJ aWYgKCFYNTA5VjNfRVhUX3ByaW50IChtZW0sIGV4LCAwLCAwKSkKLS0JCSAgTV9BU04xX09DVEVU X1NUUklOR19wcmludCAobWVtLCBleC0+dmFsdWUpOwotKwkJICBBU04xX1NUUklOR19wcmludCAo bWVtLCBYNTA5X0VYVEVOU0lPTl9nZXRfZGF0YShleCkpOwotIAkJbGVuID0gQklPX2dldF9tZW1f ZGF0YSAobWVtLCAmZGF0YV9wdHIpOwotIAkJaWYgKGxlbiA+IDAgJiYgZGF0YV9wdHIpCi0gCQkg IHsKLUBAIC0xNTM3LDE4ICsxNTQ0LDIzIEBAIGJpZl9nZXRfY2VydGlmaWNhdGVfaW5mbyAoY2Fk ZHJfdCAqIHFzdCwKLSAJaWYgKGspCi0gCSAgewotICNpZmRlZiBFVlBfUEtFWV9SU0EKLS0JICAg IGlmIChrLT50eXBlID09IEVWUF9QS0VZX1JTQSkKLSsJICAgIGlmIChFVlBfUEtFWV9pZChrKSA9 PSBFVlBfUEtFWV9SU0EpCi0gCSAgICAgIHsKLS0JCVJTQSAqeCA9IGstPnBrZXkucnNhOwotLQkJ cmV0ID0gbGlzdCAoMywgYm94X2R2X3Nob3J0X3N0cmluZyAoIlJTQVB1YmxpY0tleSIpLCBCTl9i b3ggKHgtPmUpLCBCTl9ib3ggKHgtPm4pKTsKLSsJCWNvbnN0IEJJR05VTSAqbiwgKmU7Ci0rCi0r CQlSU0FfZ2V0MF9rZXkoRVZQX1BLRVlfZ2V0MF9SU0EoayksICZuLCAmZSwgTlVMTCk7Ci0rCi0r CQlyZXQgPSBsaXN0ICgzLCBib3hfZHZfc2hvcnRfc3RyaW5nICgiUlNBUHVibGljS2V5IiksIEJO X2JveCAoZSksIEJOX2JveCAobikpOwotIAkgICAgICB9Ci0gCSAgICBlbHNlCi0gI2VuZGlmCi0g I2lmZGVmIEVWUF9QS0VZX0RTQQotLQkgICAgaWYgKGstPnR5cGUgPT0gRVZQX1BLRVlfRFNBKQot KwkgICAgaWYgKEVWUF9QS0VZX2lkKGspID09IEVWUF9QS0VZX0RTQSkKLSAJICAgICAgewotLQkJ RFNBICp4ID0gay0+cGtleS5kc2E7Ci0tCQlyZXQgPSBsaXN0ICgyLCBib3hfZHZfc2hvcnRfc3Ry aW5nICgiRFNBUHVibGljS2V5IiksIEJOX2JveCAoeC0+cHViX2tleSkpOwotKwkJY29uc3QgQklH TlVNICpwdWJfa2V5OwotKwotKwkJRFNBX2dldDBfa2V5KEVWUF9QS0VZX2dldDBfRFNBKGspLCAm cHViX2tleSwgTlVMTCk7Ci0rCQlyZXQgPSBsaXN0ICgyLCBib3hfZHZfc2hvcnRfc3RyaW5nICgi RFNBUHVibGljS2V5IiksIEJOX2JveCAocHViX2tleSkpOwotIAkgICAgICB9Ci0gCSAgICBlbHNl Ci0gI2VuZGlmCi1AQCAtMTU2NywxMyArMTU3OSwxMyBAQCBiaWZfZ2V0X2NlcnRpZmljYXRlX2lu Zm8gKGNhZGRyX3QgKiBxc3QsCi0gCWludCBuLCBpLCBsZW47Ci0gCWNoYXIgKnMsICpkYXRhX3B0 cjsKLSAJQklPICptZW0gPSBCSU9fbmV3IChCSU9fc19tZW0gKCkpOwotLQlmb3IgKGkgPSAwOyBO VUxMICE9IHN1YmogJiYgaSA8IHNrX1g1MDlfTkFNRV9FTlRSWV9udW0oc3Viai0+ZW50cmllcyk7 IGkrKykKLSsJZm9yIChpID0gMDsgTlVMTCAhPSBzdWJqICYmIGkgPCBYNTA5X05BTUVfZW50cnlf Y291bnQoc3Viaik7IGkrKykKLSAJICB7Ci0tCSAgICBuZSA9IHNrX1g1MDlfTkFNRV9FTlRSWV92 YWx1ZShzdWJqLT5lbnRyaWVzLGkpOwotLQkgICAgbiA9IE9CSl9vYmoybmlkIChuZS0+b2JqZWN0 KTsKLSsJICAgIG5lID0gWDUwOV9OQU1FX2dldF9lbnRyeShzdWJqLCBpKTsKLSsJICAgIG4gPSBP Qkpfb2JqMm5pZCAoWDUwOV9OQU1FX0VOVFJZX2dldF9vYmplY3QobmUpKTsKLSAJICAgIGlmICgo biA9PSBOSURfdW5kZWYpIHx8ICgocyA9IChjaGFyICopIE9CSl9uaWQyc24gKG4pKSA9PSBOVUxM KSkKLSAJICAgICAgewotLQkJaTJ0X0FTTjFfT0JKRUNUIChidWZmZXIsIHNpemVvZiAoYnVmZmVy KSwgbmUtPm9iamVjdCk7Ci0rCQlpMnRfQVNOMV9PQkpFQ1QgKGJ1ZmZlciwgc2l6ZW9mIChidWZm ZXIpLCBYNTA5X05BTUVfRU5UUllfZ2V0X29iamVjdChuZSkpOwotIAkJcyA9IGJ1ZmZlcjsKLSAJ ICAgICAgfQotIAkgICAgaWYgKCFzdHJjbXAgKHMsIGF0dHIpKQotQEAgLTE1ODIsOSArMTU5NCwx MCBAQCBiaWZfZ2V0X2NlcnRpZmljYXRlX2luZm8gKGNhZGRyX3QgKiBxc3QsCi0gCQlicmVhazsK LSAJICAgICAgfQotIAkgIH0KLSsKLSAJaWYgKG5lX3JldCkKLSAJICB7Ci0tCSAgICBBU04xX1NU UklOR19wcmludCAobWVtLCBuZV9yZXQtPnZhbHVlKTsKLSsJICAgIEFTTjFfU1RSSU5HX3ByaW50 IChtZW0sIFg1MDlfTkFNRV9FTlRSWV9nZXRfZGF0YShuZV9yZXQpKTsKLSAJICAgIGxlbiA9IEJJ T19nZXRfbWVtX2RhdGEgKG1lbSwgJmRhdGFfcHRyKTsKLSAJICAgIGlmIChsZW4gPiAwICYmIGRh dGFfcHRyKQotIAkgICAgICB7Ci1AQCAtMTYwNSwxNyArMTYxOCwxNyBAQCBiaWZfZ2V0X2NlcnRp ZmljYXRlX2luZm8gKGNhZGRyX3QgKiBxc3QsCi0gCWRrX3NldF90IHNldCA9IE5VTEw7Ci0gCWNh ZGRyX3QgdmFsOwotIAlCSU8gKm1lbSA9IEJJT19uZXcgKEJJT19zX21lbSAoKSk7Ci0tCWZvciAo aSA9IDA7IE5VTEwgIT0gc3ViaiAmJiBpIDwgc2tfWDUwOV9OQU1FX0VOVFJZX251bShzdWJqLT5l bnRyaWVzKTsgaSsrKQotKwlmb3IgKGkgPSAwOyBOVUxMICE9IHN1YmogJiYgaSA8IFg1MDlfTkFN RV9lbnRyeV9jb3VudChzdWJqKTsgaSsrKQotIAkgIHsKLSAJICAgIHZhbCA9IE5VTEw7Ci0tCSAg ICBuZSA9IHNrX1g1MDlfTkFNRV9FTlRSWV92YWx1ZShzdWJqLT5lbnRyaWVzLGkpOwotLQkgICAg biA9IE9CSl9vYmoybmlkIChuZS0+b2JqZWN0KTsKLSsJICAgIG5lID0gWDUwOV9OQU1FX2dldF9l bnRyeShzdWJqLCBpKTsKLSsJICAgIG4gPSBPQkpfb2JqMm5pZCAoWDUwOV9OQU1FX0VOVFJZX2dl dF9vYmplY3QobmUpKTsKLSAJICAgIGlmICgobiA9PSBOSURfdW5kZWYpIHx8ICgocyA9IChjaGFy ICopIE9CSl9uaWQyc24gKG4pKSA9PSBOVUxMKSkKLSAJICAgICAgewotLQkJaTJ0X0FTTjFfT0JK RUNUIChidWZmZXIsIHNpemVvZiAoYnVmZmVyKSwgbmUtPm9iamVjdCk7Ci0rCQlpMnRfQVNOMV9P QkpFQ1QgKGJ1ZmZlciwgc2l6ZW9mIChidWZmZXIpLCBYNTA5X05BTUVfRU5UUllfZ2V0X29iamVj dChuZSkpOwotIAkJcyA9IGJ1ZmZlcjsKLSAJICAgICAgfQotLQkgICAgQVNOMV9TVFJJTkdfcHJp bnQgKG1lbSwgbmUtPnZhbHVlKTsKLSsJICAgIEFTTjFfU1RSSU5HX3ByaW50IChtZW0sIFg1MDlf TkFNRV9FTlRSWV9nZXRfZGF0YShuZSkpOwotIAkgICAgbGVuID0gQklPX2dldF9tZW1fZGF0YSAo bWVtLCAmZGF0YV9wdHIpOwotIAkgICAgaWYgKGxlbiA+IDAgJiYgZGF0YV9wdHIpCi0gCSAgICAg IHsKLUBAIC0xNjI5LDE4ICsxNjQyLDIyIEBAIGJpZl9nZXRfY2VydGlmaWNhdGVfaW5mbyAoY2Fk ZHJfdCAqIHFzdCwKLSAJICB9Ci0gCUJJT19mcmVlIChtZW0pOwotIAlyZXQgPSBsaXN0X3RvX2Fy cmF5IChka19zZXRfbnJldmVyc2UgKHNldCkpOwotKwotIAlicmVhazsKLSAgICAgICB9Ci0gICAg IGNhc2UgMTI6Ci0gICAgICAgewotIAljb25zdCB1bnNpZ25lZCBjaGFyICpzOwotIAlpbnQgaSwg bjsKLS0JY29uc3QgQVNOMV9TVFJJTkcgKnNpZyA9IGNlcnQtPnNpZ25hdHVyZTsKLS0JWDUwOV9B TEdPUiAqc2lnYWxnID0gY2VydC0+c2lnX2FsZzsKLSsJY29uc3QgQVNOMV9TVFJJTkcgKnNpZzsK LSsJY29uc3QgWDUwOV9BTEdPUiAqc2lnYWxnOwotKwljb25zdCBBU04xX09CSkVDVCAqc2lnX2Fs Z19hbGdvcml0aG07Ci0gCWNoYXIgYnVmWzgwXTsKLSAJY2FkZHJfdCB2YWw7Ci0gCi0tICAgICAg ICBpMnRfQVNOMV9PQkpFQ1QoYnVmLHNpemVvZiAoYnVmKSwgc2lnYWxnLT5hbGdvcml0aG0pOwot KwlYNTA5X2dldDBfc2lnbmF0dXJlKCZzaWcsICZzaWdhbGcsIGNlcnQpOwotKwlYNTA5X0FMR09S X2dldDAoJnNpZ19hbGdfYWxnb3JpdGhtLCBOVUxMLCBOVUxMLCBzaWdhbGcpOwotKwlpMnRfQVNO MV9PQkpFQ1QoYnVmLHNpemVvZiAoYnVmKSwgc2lnX2FsZ19hbGdvcml0aG0pOwotIAotIAluID0g c2lnLT5sZW5ndGg7Ci0gCXMgPSBzaWctPmRhdGE7Ci1AQCAtMTY2MCwxMSArMTY3NywxMSBAQCBi aWZfZ2V0X2NlcnRpZmljYXRlX2luZm8gKGNhZGRyX3QgKiBxc3QsCi0gCWlmIChrKQotIAkgIHsK LSAjaWZkZWYgRVZQX1BLRVlfUlNBCi0tCSAgICBpZiAoay0+dHlwZSA9PSBFVlBfUEtFWV9SU0Ep Ci0rCSAgICBpZiAoRVZQX1BLRVlfaWQoaykgPT0gRVZQX1BLRVlfUlNBKQotIAkgICAgICB7Ci0g CQljaGFyICpkYXRhX3B0cjsKLSAJCWludCBsZW47Ci0tCQlSU0EgKnggPSBrLT5wa2V5LnJzYTsK LSsJCVJTQSAqeCA9IEVWUF9QS0VZX2dldDBfUlNBKGspOwotIAkJYiA9IEJJT19uZXcgKEJJT19z X21lbSgpKTsKLSAJCWkyZF9SU0FfUFVCS0VZX2JpbyAoYiwgeCk7Ci0gCQlsZW4gPSBCSU9fZ2V0 X21lbV9kYXRhIChiLCAmZGF0YV9wdHIpOwotLS0tIGEvbGlic3JjL1dpL3htbGVuYy5jCi0rKysg Yi9saWJzcmMvV2kveG1sZW5jLmMKLUBAIC0xMjE1LDM2ICsxMjE1LDQ1IEBAIHZvaWQgeGVuY19r ZXlfcmVtb3ZlICh4ZW5jX2tleV90ICoga2V5LAotIH0KLSAKLSAKLS1zdGF0aWMgdm9pZAotLWdl bnJzYV9jYihpbnQgcCwgaW50IG4sIHZvaWQgKmFyZykKLS17Ci0tI2lmZGVmIExJTlQKLS0gIHA9 bjsKLS0jZW5kaWYKLS19Ci0tCi0gaW50Ci0gX194ZW5jX2tleV9yc2FfaW5pdCAoY2hhciAqbmFt ZSkKLSB7Ci0gICBSU0EgKnJzYSA9IE5VTEw7Ci0tICBpbnQgbnVtPTEwMjQ7Ci0tICB1bnNpZ25l ZCBsb25nIGY0PVJTQV9GNDsKLSsgIEJJR05VTSAqYm4gPSBOVUxMOwotICAgaW50IHI7Ci0rCi0g ICB4ZW5jX2tleV90ICogcGtleSA9IHhlbmNfZ2V0X2tleV9ieV9uYW1lIChuYW1lLCAxKTsKLSAg IGlmIChOVUxMID09IHBrZXkpCi0gICAgIFNRTFJfTkVXX0tFWV9FUlJPUiAobmFtZSk7Ci0gCi0t ICByc2E9UlNBX2dlbmVyYXRlX2tleShudW0sZjQsZ2VucnNhX2NiLE5VTEwpOwotKyAgcnNhID0g UlNBX25ldygpOwotKyAgaWYgKCFyc2EpCi0rCSAgZ290byBvdXQ7Ci0rICBibiA9IEJOX25ldygp OwotKyAgaWYgKCFibikKLSsJICBnb3RvIG91dDsKLSsgIGlmICghQk5fc2V0X3dvcmQoYm4sIFJT QV9GNCkpCi0rCSAgZ290byBvdXQ7Ci0rCi0rICBpZiAoIVJTQV9nZW5lcmF0ZV9rZXlfZXgocnNh LCAxMDI0LCBibiwgTlVMTCkpCi0rCSAgZ290byBvdXQ7Ci0rCi0gICByID0gUlNBX2NoZWNrX2tl eShyc2EpOwotKyAgaWYgKHIgIT0gMSkKLSsJICBnb3RvIG91dDsKLSAgIHBrZXktPmtpLnJzYS5w YWQgPSBSU0FfUEtDUzFfUEFERElORzsKLS0gIGlmIChyc2EgPT0gTlVMTCkKLS0gICAgewotLSAg ICAgIHNxbHJfbmV3X2Vycm9yICgiNDIwMDAiLCAiWEVOQzA2IiwKLS0JCSAgICAiUlNBIHBhcmFt ZXRlcnMgZ2VuZXJhdGlvbiBlcnJvciIpOwotLSAgICB9Ci0gICBwa2V5LT54ZWtfcnNhID0gcnNh OwotICAgcGtleS0+eGVrX3ByaXZhdGVfcnNhID0gcnNhOwotKyAgQk5fZnJlZShibik7Ci0gICBy ZXR1cm4gMDsKLStvdXQ6Ci0rICBpZiAoYm4pCi0rCSAgQk5fZnJlZShibik7Ci0rICBpZiAocnNh KQotKwkgIFJTQV9mcmVlKHJzYSk7Ci0rICBzcWxyX25ld19lcnJvciAoIjQyMDAwIiwgIlhFTkMw NiIsCi0rCQkgICJSU0EgcGFyYW1ldGVycyBnZW5lcmF0aW9uIGVycm9yIik7Ci0rICByZXR1cm4g LTE7Ci0gfQotIAotIAotQEAgLTE0NTUsMTkgKzE0NjQsMTkgQEAgeGVuY19rZXlfdCAqIHhlbmNf a2V5X2NyZWF0ZV9mcm9tX3g1MDlfYwotIAotICAgaWYgKHBrZXkpCi0gICAgIHsKLS0gICAgICBz d2l0Y2ggKEVWUF9QS0VZX3R5cGUgKHBrZXktPnR5cGUpKQotKyAgICAgIHN3aXRjaCAoRVZQX1BL RVlfdHlwZSAoRVZQX1BLRVlfaWQocGtleSkpKQotIAl7Ci0gCWNhc2UgRVZQX1BLRVlfRFNBOgot IAkgIHNpZ25fYWxnb25hbWUgPSBEU0lHX0RTQV9TSEExX0FMR087Ci0gCSAgZW5jX2FsZ29uYW1l ID0gWEVOQ19EU0FfQUxHTzsKLS0JICBkc2EgPSBwa2V5LT5wa2V5LmRzYTsKLS0JICBwcml2YXRl X2RzYSA9IHByaXZhdGVfa2V5ID8gcHJpdmF0ZV9rZXktPnBrZXkuZHNhIDogMDsKLSsJICBkc2Eg PSBFVlBfUEtFWV9nZXQwX0RTQShwa2V5KTsKLSsJICBwcml2YXRlX2RzYSA9IHByaXZhdGVfa2V5 ID8gRVZQX1BLRVlfZ2V0MF9EU0EocHJpdmF0ZV9rZXkpIDogMDsKLSAJICBicmVhazsKLSAJY2Fz ZSBFVlBfUEtFWV9SU0E6Ci0gCSAgc2lnbl9hbGdvbmFtZSA9IERTSUdfUlNBX1NIQTFfQUxHTzsK LSAJICBlbmNfYWxnb25hbWUgPSBYRU5DX1JTQV9BTEdPOwotLQkgIHJzYSA9IHBrZXktPnBrZXku cnNhOwotLQkgIHByaXZhdGVfcnNhID0gcHJpdmF0ZV9rZXkgPyBwcml2YXRlX2tleS0+cGtleS5y c2EgOiAwOwotKwkgIHJzYSA9IEVWUF9QS0VZX2dldDBfUlNBKHBrZXkpOwotKwkgIHByaXZhdGVf cnNhID0gcHJpdmF0ZV9rZXkgPyBFVlBfUEtFWV9nZXQwX1JTQShwcml2YXRlX2tleSkgOiAwOwot IAkgIGJyZWFrOwotIAlkZWZhdWx0OgotIAkgIGdvdG8gZmluaXNoOwotQEAgLTE1MTYsMTMgKzE1 MjUsNiBAQCB4ZW5jX2tleV90ICogeGVuY19rZXlfY3JlYXRlX2Zyb21feDUwOV9jCi0gICByZXR1 cm4gazsKLSB9Ci0gCi0tc3RhdGljIHZvaWQgZGhfY2IoaW50IHAsIGludCBuLCB2b2lkICphcmcp Ci0tewotLSNpZmRlZiBMSU5UCi0tICBwPW47Ci0tI2VuZGlmCi0tfQotLQotIHN0YXRpYyAvKnhl bmNfa2V5X0RTQV9jcmVhdGUgKi8KLSBjYWRkcl90IGJpZl94ZW5jX2tleV9kc2FfY3JlYXRlIChj YWRkcl90ICogcXN0LCBjYWRkcl90ICogZXJyX3IsIHN0YXRlX3Nsb3RfdCAqKiBhcmdzKQotIHsK LUBAIC0xNTg4LDE1ICsxNTkwLDIxIEBAIGNhZGRyX3QgYmlmX3hlbmNfa2V5X0RIX2NyZWF0ZSAo Y2FkZHJfdAotICAgICAgIGRoID0gREhfbmV3ICgpOwotICAgICAgIGJuX3AgPSBCTl9iaW4yYm4g KCh1bnNpZ25lZCBjaGFyICopbW9kLCBwX2xlbiwgTlVMTCk7Ci0gICAgICAgYm5fZyA9IEJOX2Jp bjJibiAoZ19iaW4sIDEsIE5VTEwpOwotLSAgICAgIGRoLT5wID0gYm5fcDsKLS0gICAgICBkaC0+ ZyA9IGJuX2c7Ci0rICAgICAgaWYgKGRoKQotKwkgICAgICBESF9zZXQwX3BxZyhkaCwgYm5fcCwg TlVMTCwgYm5fZyk7Ci0gCi0gICAgICAgZGtfZnJlZV9ib3ggKG1vZF9iNjQpOwotICAgICAgIGRr X2ZyZWVfYm94IChtb2QpOwotICAgICB9Ci0gICBlbHNlCi0gICAgIHsKLS0gICAgICBkaCA9IERI X2dlbmVyYXRlX3BhcmFtZXRlcnMgKG51bSwgZywgZGhfY2IsIE5VTEwpOwotKyAgICAgIGRoID0g REhfbmV3KCk7Ci0rICAgICAgaWYgKGRoKSB7Ci0rCSAgICAgIGlmICghREhfZ2VuZXJhdGVfcGFy YW1ldGVyc19leChkaCwgbnVtLCBnLCBOVUxMKSkgewotKwkJICAgICAgREhfZnJlZShkaCk7Ci0r CQkgICAgICBkaCA9IE5VTEw7Ci0rCSAgICAgIH0KLSsgICAgICB9Ci0gICAgIH0KLSAgIGlmICgh ZGgpCi0gICAgIHsKLUBAIC0xNjI2LDcgKzE2MzQsNyBAQCBjYWRkcl90IGJpZl94ZW5jX0RIX2dl dF9wYXJhbXMgKGNhZGRyX3QKLSAgIGludCBuLCBsZW47Ci0gICBjYWRkcl90IGJ1ZiA9IE5VTEws IHJldCwgYjY0OwotICAgREggKmRoOwotLSAgQklHTlVNICpudW07Ci0rICBjb25zdCBCSUdOVU0g Km51bTsKLSAKLSAgIG11dGV4X2VudGVyICh4ZW5jX2tleXNfbXR4KTsKLSAgIGtleSA9IHhlbmNf Z2V0X2tleV9ieV9uYW1lIChuYW1lLCAwKTsKLUBAIC0xNjQxLDE5ICsxNjQ5LDE5IEBAIGNhZGRy X3QgYmlmX3hlbmNfREhfZ2V0X3BhcmFtcyAoY2FkZHJfdAotICAgc3dpdGNoIChwYXJhbSkKLSAg ICAgewotICAgCWNhc2UgMToKLS0JIG51bSA9IGRoLT5wOwotKwkgREhfZ2V0MF9wcWcoZGgsICZu dW0sIE5VTEwsIE5VTEwpOwotIAkgYnJlYWs7Ci0gCWNhc2UgMjoKLS0JIG51bSA9IGRoLT5nOwot KwkgREhfZ2V0MF9wcWcoZGgsIE5VTEwsIE5VTEwsICZudW0pOwotIAkgYnJlYWs7Ci0gCWNhc2Ug MzoKLS0JIG51bSA9IGRoLT5wdWJfa2V5OwotKwkgREhfZ2V0MF9rZXkoZGgsICZudW0sIE5VTEwp OwotIAkgYnJlYWs7Ci0gCWNhc2UgNDoKLS0JIG51bSA9IGRoLT5wcml2X2tleTsKLSsJIERIX2dl dDBfa2V5KGRoLCBOVUxMLCAmbnVtKTsKLSAJIGJyZWFrOwotIAlkZWZhdWx0OgotLQkgbnVtID0g ZGgtPnB1Yl9rZXk7Ci0rCSBESF9nZXQwX2tleShkaCwgJm51bSwgTlVMTCk7Ci0gICAgIH0KLSAK LSAgIGJ1Zl9sZW4gPSAoc2l6ZV90KUJOX251bV9ieXRlcyhudW0pOwotQEAgLTE4MTEsNyArMTgx OSwxNSBAQCBjYWRkcl90IGJpZl94ZW5jX2tleV9yc2FfY3JlYXRlIChjYWRkcl90Ci0gICB4ZW5j X2tleV90ICogazsKLSAgIGNhZGRyX3QgbmFtZSA9IGJpZl9zdHJpbmdfYXJnIChxc3QsIGFyZ3Ms IDAsICJ4ZW5jX2tleV9SU0FfY3JlYXRlIik7Ci0gICBpbnQgbnVtID0gKGludCkgYmlmX2xvbmdf YXJnIChxc3QsIGFyZ3MsIDEsICJ4ZW5jX2tleV9SU0FfY3JlYXRlIik7Ci0tICBSU0EgKnJzYSA9 IE5VTEw7Ci0rICBSU0EgKnJzYTsKLSsgIEJJR05VTSAqYm47Ci0rCi0rICByc2EgPSBSU0FfbmV3 KCk7Ci0rICBibiA9IEJOX25ldygpOwotKyAgaWYgKCFyc2EgfHwgIWJuKQotKwlnb3RvIG91dDsK LSsgIGlmICghQk5fc2V0X3dvcmQoYm4sIFJTQV9GNCkpCi0rCWdvdG8gb3V0OwotIAotICAgbXV0 ZXhfZW50ZXIgKHhlbmNfa2V5c19tdHgpOwotICAgaWYgKE5VTEwgPT0gKGsgPSB4ZW5jX2tleV9j cmVhdGUgKG5hbWUsIFhFTkNfUlNBX0FMR08gLCBEU0lHX1JTQV9TSEExX0FMR08sIDApKSkKLUBA IC0xODIwLDEyICsxODM2LDExIEBAIGNhZGRyX3QgYmlmX3hlbmNfa2V5X3JzYV9jcmVhdGUgKGNh ZGRyX3QKLSAgICAgICBTUUxSX05FV19LRVlfRVhJU1RfRVJST1IgKG5hbWUpOwotICAgICB9Ci0g Ci0tICByc2EgPSBSU0FfZ2VuZXJhdGVfa2V5IChudW0sIFJTQV9GNCwgTlVMTCwgTlVMTCk7Ci0t Ci0tICBpZiAocnNhID09IE5VTEwpCi0tICAgIHsKLS0gICAgICBzcWxyX25ld19lcnJvciAoIjQy MDAwIiwgIlhFTkMwNiIsICJSU0EgZ2VuZXJhdGlvbiBlcnJvciIpOwotLSAgICB9Ci0rICBpZiAo IVJTQV9nZW5lcmF0ZV9rZXlfZXggKHJzYSwgbnVtLCBibiwgTlVMTCkpIHsKLSsJICBtdXRleF9s ZWF2ZSAoeGVuY19rZXlzX210eCk7Ci0rCSAgZ290byBvdXQ7Ci0rICB9Ci0rICBCTl9mcmVlKGJu KTsKLSAKLSAgIGstPnhla19yc2EgPSBSU0FQdWJsaWNLZXlfZHVwIChyc2EpOwotICAgay0+eGVr X3ByaXZhdGVfcnNhID0gcnNhOwotQEAgLTE4MzksNiArMTg1NCwxMyBAQCBjYWRkcl90IGJpZl94 ZW5jX2tleV9yc2FfY3JlYXRlIChjYWRkcl90Ci0gCi0gICBtdXRleF9sZWF2ZSAoeGVuY19rZXlz X210eCk7Ci0gICByZXR1cm4gTlVMTDsKLStvdXQ6Ci0rICBpZiAoYm4pCi0rCSAgQk5fZnJlZShi bik7Ci0rICBpZiAocnNhKQotKwkgIFJTQV9mcmVlKHJzYSk7Ci0rICBzcWxyX25ld19lcnJvciAo IjQyMDAwIiwgIlhFTkMwNiIsICJSU0EgZ2VuZXJhdGlvbiBlcnJvciIpOwotKyAgcmV0dXJuIE5V TEw7Ci0gfQotIAotIHhlbmNfa2V5X3QgKgotQEAgLTIwMzQsNyArMjA1NiwxMyBAQCBpbnQgX194 ZW5jX2tleV9kc2FfaW5pdCAoY2hhciAqbmFtZSwgaW50Ci0gICAgIFNRTFJfTkVXX0tFWV9FUlJP UiAobmFtZSk7Ci0gCi0gICBSQU5EX3BvbGwgKCk7Ci0tICBkc2EgPSBEU0FfZ2VuZXJhdGVfcGFy YW1ldGVycyhudW0sIE5VTEwsIDAsIE5VTEwsIE5VTEwsIGRoX2NiLCBOVUxMKTsKLSsgIGRzYSA9 IERTQV9uZXcoKTsKLSsgIGlmIChkc2EpIHsKLSsJICBpZiAoIURTQV9nZW5lcmF0ZV9wYXJhbWV0 ZXJzX2V4KGRzYSwgbnVtLCBOVUxMLCAwLCBOVUxMLCBOVUxMLCBOVUxMKSkgewotKwkJICBEU0Ff ZnJlZShkc2EpOwotKwkJICBkc2EgPSBOVUxMOwotKwkgIH0KLSsgIH0KLSAgIGlmIChkc2EgPT0g TlVMTCkKLSAgICAgewotICAgICAgIHNxbHJfbmV3X2Vycm9yICgiNDIwMDAiLCAiWEVOQzExIiwK LUBAIC0yMDU4LDcgKzIwODYsMTMgQEAgaW50IF9feGVuY19rZXlfZGhfaW5pdCAoY2hhciAqbmFt ZSwgaW50Ci0gICBpZiAoTlVMTCA9PSBwa2V5KQotICAgICBTUUxSX05FV19LRVlfRVJST1IgKG5h bWUpOwotIAotLSAgZGggPSBESF9nZW5lcmF0ZV9wYXJhbWV0ZXJzIChudW0sIGcsIGRoX2NiLCBO VUxMKTsKLSsgIGRoID0gREhfbmV3KCk7Ci0rICBpZiAoZGgpIHsKLSsJICBpZiAoIURIX2dlbmVy YXRlX3BhcmFtZXRlcnNfZXgoZGgsIG51bSwgZywgTlVMTCkpIHsKLSsJCSAgREhfZnJlZShkaCk7 Ci0rCQkgIGRoID0gTlVMTDsKLSsJICB9Ci0rICB9Ci0gICBpZiAoIWRoKQotICAgICB7Ci0gICAg ICAgc3Fscl9uZXdfZXJyb3IgKCI0MjAwMCIsICJYRU5DMTEiLAotQEAgLTIyODAsMTIgKzIzMTQs MTIgQEAgYmlmX3hlbmNfa2V5X3JzYV9yZWFkIChjYWRkcl90ICogcXN0LCBjYQotICAgICB7Ci0g ICAgICAgaW4gPSBCSU9fbmV3X21lbV9idWYgKGtleV9iYXNlNjQsIGxlbik7Ci0gICAgICAgcGtl eSA9IGQyaV9QVUJLRVlfYmlvIChpbiwgTlVMTCk7Ci0tICAgICAgaWYgKHBrZXkgJiYgcGtleS0+ dHlwZSA9PSBFVlBfUEtFWV9SU0EpCi0tCXAgPSBwa2V5LT5wa2V5LnJzYTsKLSsgICAgICBpZiAo cGtleSAmJiBFVlBfUEtFWV9pZChwa2V5KSA9PSBFVlBfUEtFWV9SU0EpCi0rCXAgPSBFVlBfUEtF WV9nZXQwX1JTQShwa2V5KTsKLSAgICAgICBCSU9fcmVzZXQgKGluKTsKLSAgICAgICBwa2tleSA9 IGQyaV9Qcml2YXRlS2V5X2JpbyAoaW4sIE5VTEwpOwotLSAgICAgIGlmIChwa2tleSAmJiBwa2tl eS0+dHlwZSA9PSBFVlBfUEtFWV9SU0EpCi0tCXIgPSBwa2tleS0+cGtleS5yc2E7Ci0rICAgICAg aWYgKHBra2V5ICYmIEVWUF9QS0VZX2lkKHBra2V5KSA9PSBFVlBfUEtFWV9SU0EpCi0rCXIgPSBF VlBfUEtFWV9nZXQwX1JTQShwa2tleSk7Ci0gICAgICAgQklPX2ZyZWUgKGluKTsKLSAgICAgfQot ICAgZWxzZQotQEAgLTIzMDQsOSArMjMzOCwxMSBAQCBiaWZfeGVuY19rZXlfcnNhX3JlYWQgKGNh ZGRyX3QgKiBxc3QsIGNhCi0gCi0gICBpZiAoIXApCi0gICAgIHsKLSsgICAgICBjb25zdCBCSUdO VU0gKm4sICplOwotKwotKyAgICAgIFJTQV9nZXQwX2tleShyLCAmbiwgJmUsIE5VTEwpOwotICAg ICAgIHAgPSBSU0FfbmV3ICgpOwotLSAgICAgIHAtPm4gPSBCTl9kdXAgKHItPm4pOwotLSAgICAg IHAtPmUgPSBCTl9kdXAgKHItPmUpOwotKyAgICAgIFJTQV9zZXQwX2tleShwLCBCTl9kdXAobiks IEJOX2R1cChlKSwgTlVMTCk7Ci0gICAgIH0KLSAKLSAgIG11dGV4X2VudGVyICh4ZW5jX2tleXNf bXR4KTsKLUBAIC0yMzU1LDE0ICsyMzkxLDEzIEBAIGJpZl94ZW5jX2tleV9yc2FfY29uc3RydWN0 IChjYWRkcl90ICogcXMKLSAgIHAgPSBSU0FfbmV3ICgpOwotICAgbiA9IEJOX2JpbjJibiAoKHVu c2lnbmVkIGNoYXIgKikgbW9kLCBib3hfbGVuZ3RoIChtb2QpIC0gMSwgTlVMTCk7Ci0gICBlID0g Qk5fYmluMmJuICgodW5zaWduZWQgY2hhciAqKSBleHAsIGJveF9sZW5ndGggKGV4cCkgLSAxLCBO VUxMKTsKLS0gIHAtPm4gPSBuOwotLSAgcC0+ZSA9IGU7Ci0rICBSU0Ffc2V0MF9rZXkocCwgbiwg ZSwgTlVMTCk7Ci0gICBpZiAocGV4cCkKLSAgICAgewotICAgICAgIHBrID0gUlNBX25ldyAoKTsK LS0gICAgICBway0+ZCA9IEJOX2JpbjJibiAoKHVuc2lnbmVkIGNoYXIgKikgcGV4cCwgYm94X2xl bmd0aCAocGV4cCkgLSAxLCBOVUxMKTsKLS0gICAgICBway0+biA9IEJOX2R1cCAobik7Ci0tICAg ICAgcGstPmUgPSBCTl9kdXAgKGUpOwotKyAgICAgIFJTQV9zZXQwX2tleShwLCBCTl9kdXAobiks Ci0rCQkgICAgICBCTl9kdXAoZSksCi0rCQkgICAgICBCTl9iaW4yYm4gKCh1bnNpZ25lZCBjaGFy ICopIHBleHAsIGJveF9sZW5ndGggKHBleHApIC0gMSwgTlVMTCkpOwotICAgICB9Ci0gICBtdXRl eF9lbnRlciAoeGVuY19rZXlzX210eCk7Ci0gICBrID0geGVuY19rZXlfY3JlYXRlIChuYW1lLCBY RU5DX1JTQV9BTEdPLCBEU0lHX1JTQV9TSEExX0FMR08sIDApOwotQEAgLTQwODYsNyArNDEyMSw3 IEBAIHZvaWQgeGVuY190YWdfZnJlZSAoeGVuY190YWdfdCAqIHQpCi0gI2VuZGlmCi0gfQotIAot LXhlbmNfdGFnX3QgKiB4ZW5jX3RhZ19hZGRfY2hpbGRfQk4gKHhlbmNfdGFnX3QgKiB0YWcsIEJJ R05VTSAqIGJuKQotK3N0YXRpYyB4ZW5jX3RhZ190ICogeGVuY190YWdfYWRkX2NoaWxkX0JOICh4 ZW5jX3RhZ190ICogdGFnLCBjb25zdCBCSUdOVU0gKiBibikKLSB7Ci0gIGNoYXIgKiBidWZmZXIg PSBka19hbGxvY19ib3ggKEJOX251bV9ieXRlcyAoYm4pLCBEVl9CSU4pOwotICBjaGFyICogYnVm ZmVyX2Jhc2U2NCA9IGRrX2FsbG9jX2JveCAoYm94X2xlbmd0aCAoYnVmZmVyKSAqIDIsIERWX1NU UklORyk7Ci1AQCAtNDExMSwxMiArNDE0NiwxNSBAQCBjYWRkcl90ICoqIHhlbmNfZ2VuZXJhdGVf ZXh0X2luZm8gKHhlbmNfCi0gICBjYWRkcl90ICoqIGFycmF5OwotICAgaWYgKGtleS0+eGVrX3R5 cGUgPT0gRFNJR19LRVlfUlNBKQotICAgICB7Ci0rICAgICAgY29uc3QgQklHTlVNICpyc2Ffbiwg KnJzYV9lOwotKwotKyAgICAgIFJTQV9nZXQwX2tleShrZXktPmtpLnJzYS5yc2Ffc3QsICZyc2Ff biwgJnJzYV9lLCBOVUxMKTsKLSAgICAgICB4ZW5jX3RhZ190ICogcnNha2V5dmFsID0geGVuY190 YWdfY3JlYXRlIChEU0lHX1VSSSwgIjpSU0FLZXlWYWx1ZSIpOwotICAgICAgIHhlbmNfdGFnX3Qg KiByc2Ftb2R1bHVzID0geGVuY190YWdfY3JlYXRlIChEU0lHX1VSSSwgIjpNb2R1bHVzIik7Ci0g ICAgICAgeGVuY190YWdfdCAqIHJzYWV4cG9uZW50ID0geGVuY190YWdfY3JlYXRlIChEU0lHX1VS SSwgIjpFeHBvbmVudCIpOwotIAotLSAgICAgIHhlbmNfdGFnX2FkZF9jaGlsZF9CTiAocnNhbW9k dWx1cywga2V5LT5raS5yc2EucnNhX3N0LT5uKTsKLS0gICAgICB4ZW5jX3RhZ19hZGRfY2hpbGRf Qk4gKHJzYWV4cG9uZW50LCBrZXktPmtpLnJzYS5yc2Ffc3QtPmUpOwotKyAgICAgIHhlbmNfdGFn X2FkZF9jaGlsZF9CTiAocnNhbW9kdWx1cywgcnNhX24pOwotKyAgICAgIHhlbmNfdGFnX2FkZF9j aGlsZF9CTiAocnNhZXhwb25lbnQsIHJzYV9lKTsKLSAKLSAgICAgICB4ZW5jX3RhZ19hZGRfY2hp bGQgKHJzYWtleXZhbCwgeGVuY190YWdfZmluYWxpemUgKHJzYW1vZHVsdXMpKTsKLSAgICAgICB4 ZW5jX3RhZ19hZGRfY2hpbGQgKHJzYWtleXZhbCwgeGVuY190YWdfZmluYWxpemUgKHJzYWV4cG9u ZW50KSk7Ci1AQCAtNDEzNSwxMiArNDE3MywxNSBAQCBjYWRkcl90ICoqIHhlbmNfZ2VuZXJhdGVf ZXh0X2luZm8gKHhlbmNfCi0gICAgICAgeGVuY190YWdfdCAqIGcgPSB4ZW5jX3RhZ19jcmVhdGUg KERTSUdfVVJJLCAiOkciKTsKLSAgICAgICB4ZW5jX3RhZ190ICogeSA9IHhlbmNfdGFnX2NyZWF0 ZSAoRFNJR19VUkksICI6WSIpOwotICAgICAgIERTQSAqIGRzYSA9IGtleS0+a2kuZHNhLmRzYV9z dDsKLSsgICAgICBjb25zdCBCSUdOVU0gKmRzYV9wLCAqZHNhX3EsICpkc2FfZywgKmRzYV9wdWJf a2V5OwotIAotKyAgICAgIERTQV9nZXQwX3BxZyhkc2EsICZkc2FfcCwgJmRzYV9xLCAmZHNhX2cp OwotKyAgICAgIERTQV9nZXQwX2tleShkc2EsICZkc2FfcHViX2tleSwgTlVMTCk7Ci0gCi0tICAg ICAgeGVuY190YWdfYWRkX2NoaWxkX0JOIChwLCBkc2EtPnApOwotLSAgICAgIHhlbmNfdGFnX2Fk ZF9jaGlsZF9CTiAocCwgZHNhLT5xKTsKLS0gICAgICB4ZW5jX3RhZ19hZGRfY2hpbGRfQk4gKHAs IGRzYS0+Zyk7Ci0tICAgICAgeGVuY190YWdfYWRkX2NoaWxkX0JOIChwLCBkc2EtPnB1Yl9rZXkp OwotKyAgICAgIHhlbmNfdGFnX2FkZF9jaGlsZF9CTiAocCwgZHNhX3ApOwotKyAgICAgIHhlbmNf dGFnX2FkZF9jaGlsZF9CTiAocCwgZHNhX3EpOwotKyAgICAgIHhlbmNfdGFnX2FkZF9jaGlsZF9C TiAocCwgZHNhX2cpOwotKyAgICAgIHhlbmNfdGFnX2FkZF9jaGlsZF9CTiAocCwgZHNhX3B1Yl9r ZXkpOwotIAotICAgICAgIHhlbmNfdGFnX2FkZF9jaGlsZCAoZHNha2V5dmFsLCB4ZW5jX3RhZ19m aW5hbGl6ZSAocCkpOwotICAgICAgIHhlbmNfdGFnX2FkZF9jaGlsZCAoZHNha2V5dmFsLCB4ZW5j X3RhZ19maW5hbGl6ZSAocSkpOwotQEAgLTYxODcsNyArNjIyOCw3IEBAIGNhZGRyX3QgeGVuY194 NTA5X2dldF9rZXlfaWRlbnRpZmllciAoWDUKLSAKLSAgIHJldCA9IGRrX2FsbG9jX2JveCAoaWtl eWlkLT5sZW5ndGgsIERWX0JJTik7Ci0gICBtZW1jcHkgKHJldCwgaWtleWlkLT5kYXRhLCBpa2V5 aWQtPmxlbmd0aCk7Ci0tICBNX0FTTjFfT0NURVRfU1RSSU5HX2ZyZWUoaWtleWlkKTsKLSsgIEFT TjFfU1RSSU5HX2ZyZWUoaWtleWlkKTsKLSAgIHJldHVybiByZXQ7Ci0gfQotIAotQEAgLTYyNDcs NyArNjI4OCw3IEBAIGJpZl94NTA5X2dldF9zdWJqZWN0IChjYWRkcl90ICogcXN0LCBjYWQKLSAK LSAgIHJldCA9IGRrX2FsbG9jX2JveCAoaWtleWlkLT5sZW5ndGgsIERWX0JJTik7Ci0gICBtZW1j cHkgKHJldCwgaWtleWlkLT5kYXRhLCBpa2V5aWQtPmxlbmd0aCk7Ci0tICBNX0FTTjFfT0NURVRf U1RSSU5HX2ZyZWUoaWtleWlkKTsKLSsgIEFTTjFfU1RSSU5HX2ZyZWUoaWtleWlkKTsKLSAgIHJl dHVybiByZXQ7Ci0gfQotIAotQEAgLTY4MDYsNyArNjg0Nyw3IEBAIGJpZl94ZW5jX3g1MDlfY3Ny X2dlbmVyYXRlIChjYWRkcl90ICogcXMKLSAJc2tfWDUwOV9FWFRFTlNJT05fcHVzaChzdF9leHRz LCBleCk7Ci0gICAgIH0KLSAgIFg1MDlfUkVRX2FkZF9leHRlbnNpb25zKHgsIHN0X2V4dHMpOwot LSAgaWYgKCFYNTA5X1JFUV9zaWduICh4LCBwaywgKHBrLT50eXBlID09IEVWUF9QS0VZX1JTQSA/ IEVWUF9tZDUoKSA6IEVWUF9kc3MxKCkpKSkKLSsgIGlmICghWDUwOV9SRVFfc2lnbiAoeCwgcGss IChFVlBfUEtFWV9pZChwaykgPT0gRVZQX1BLRVlfUlNBID8gRVZQX21kNSgpIDogRVZQX3NoYTEo KSkpKQotICAgICB7Ci0gICAgICAgcGsgPSBOVUxMOyAvKiBrZWVwIG9uZSBpbiB0aGUgeGVuY19r ZXkgKi8KLSAgICAgICAqZXJyX3JldCA9IHNydl9tYWtlX25ld19lcnJvciAoIjQyMDAwIiwgIlhF Q1hYIiwgIkNhbiBub3Qgc2lnbiBjZXJ0aWZpY2F0ZSA6ICVzIiwgZ2V0X3NzbF9lcnJvcl90ZXh0 IChidWYsIHNpemVvZiAoYnVmKSkpOwotQEAgLTY5NDUsMTcgKzY5ODYsMTcgQEAgYmlmX3hlbmNf eDUwOV9mcm9tX2NzciAoY2FkZHJfdCAqIHFzdCwgYwotICAgICAgICplcnJfcmV0ID0gc3J2X21h a2VfbmV3X2Vycm9yICgiNDIwMDAiLCAiWEVDWFgiLCAiQ2FuIG5vdCBzaWduIGNlcnRpZmljYXRl Iik7Ci0gICAgICAgZ290byBlcnI7Ci0gICAgIH0KLS0gIHN3aXRjaCAoRVZQX1BLRVlfdHlwZSAo Y2xpX3BrLT50eXBlKSkKLSsgIHN3aXRjaCAoRVZQX1BLRVlfdHlwZSAoRVZQX1BLRVlfaWQoY2xp X3BrKSkpCi0gICAgIHsKLSAgICAgICBjYXNlIEVWUF9QS0VZX0RTQToKLSAJICBzaWduX2FsZ29u YW1lID0gRFNJR19EU0FfU0hBMV9BTEdPOwotIAkgIGVuY19hbGdvbmFtZSA9IFhFTkNfRFNBX0FM R087Ci0tCSAgZHNhID0gY2xpX3BrLT5wa2V5LmRzYTsKLSsJICBkc2EgPSBFVlBfUEtFWV9nZXQw X0RTQShjbGlfcGspOwotIAkgIGJyZWFrOwotICAgICAgIGNhc2UgRVZQX1BLRVlfUlNBOgotIAkg IHNpZ25fYWxnb25hbWUgPSBEU0lHX1JTQV9TSEExX0FMR087Ci0gCSAgZW5jX2FsZ29uYW1lID0g WEVOQ19SU0FfQUxHTzsKLS0JICByc2EgPSBjbGlfcGstPnBrZXkucnNhOwotKwkgIHJzYSA9IEVW UF9QS0VZX2dldDBfUlNBKGNsaV9wayk7Ci0gCSAgYnJlYWs7Ci0gICAgICAgZGVmYXVsdDoKLSAJ ICAqZXJyX3JldCA9IHNydl9tYWtlX25ld19lcnJvciAoIjQyMDAwIiwgIlhFQ1hYIiwgIlRoZSB0 eXBlIG9mIHB1YmxpYyBrZXkgaXMgbm90IHN1cHBvcnRlZCBtdXMgdGJlIFJTQSBvciBEU0EiKTsK LUBAIC03MDMyLDE5ICs3MDczLDE5IEBAIGJpZl94ZW5jX3BrY3MxMl9leHBvcnQgKGNhZGRyX3Qg KiBxc3QsIGMKLSAgIGlmIChleHBvcnRfY2hhaW4pCi0gICAgIHsKLSAgICAgICBpbnQgaTsKLS0g ICAgICBYNTA5X1NUT1JFX0NUWCBzdG9yZV9jdHg7Ci0tICAgICAgWDUwOV9TVE9SRV9DVFhfaW5p dCAoJnN0b3JlX2N0eCwgQ0FfY2VydHMsIHgsIE5VTEwpOwotLSAgICAgIGlmIChYNTA5X3Zlcmlm eV9jZXJ0ICgmc3RvcmVfY3R4KSA+IDApCi0tCWNoYWluID0gWDUwOV9TVE9SRV9DVFhfZ2V0MV9j aGFpbiAoJnN0b3JlX2N0eCk7Ci0rICAgICAgWDUwOV9TVE9SRV9DVFggKmN0eDsKLSsgICAgICBY NTA5X1NUT1JFX0NUWF9pbml0IChjdHgsIENBX2NlcnRzLCB4LCBOVUxMKTsKLSsgICAgICBpZiAo WDUwOV92ZXJpZnlfY2VydCAoY3R4KSA+IDApCi0rCWNoYWluID0gWDUwOV9TVE9SRV9DVFhfZ2V0 MV9jaGFpbiAoY3R4KTsKLSAgICAgICBlbHNlCi0gCXsKLSAJICBjb25zdCBjaGFyICplcnJfc3Ry OwotLQkgIGVycl9zdHIgPSBYNTA5X3ZlcmlmeV9jZXJ0X2Vycm9yX3N0cmluZyAoc3RvcmVfY3R4 LmVycm9yKTsKLSsJICBlcnJfc3RyID0gWDUwOV92ZXJpZnlfY2VydF9lcnJvcl9zdHJpbmcgKFg1 MDlfU1RPUkVfQ1RYX2dldF9lcnJvcihjdHgpKTsKLSAJICAqZXJyX3JldCA9IHNydl9tYWtlX25l d19lcnJvciAoIjIyMDIzIiwgIlhFTkNYIiwgIlg1MDkgZXJyb3I6ICVzIiwgZXJyX3N0cik7Ci0t CSAgWDUwOV9TVE9SRV9DVFhfY2xlYW51cCAoJnN0b3JlX2N0eCk7Ci0rCSAgWDUwOV9TVE9SRV9D VFhfY2xlYW51cCAoY3R4KTsKLSAJICBnb3RvIGVycjsKLSAJfQotLSAgICAgIFg1MDlfU1RPUkVf Q1RYX2NsZWFudXAgKCZzdG9yZV9jdHgpOwotKyAgICAgIFg1MDlfU1RPUkVfQ1RYX2NsZWFudXAg KGN0eCk7Ci0gICAgICAgaWYgKGNoYWluKQotIAl7Ci0gCSAgY2VydHMgPSBza19YNTA5X25ld19u dWxsICgpOwotQEAgLTcxNTIsMTYgKzcxOTMsMTYgQEAgYmlmX3hlbmNfcHVia2V5X3BlbV9leHBv cnQgKGNhZGRyX3QgKiBxcwotICAgICB7Ci0gICAgICAgayA9IFg1MDlfZ2V0X3B1YmtleSAoa2V5 LT54ZWtfeDUwOSk7Ci0gI2lmZGVmIEVWUF9QS0VZX1JTQQotLSAgICAgIGlmIChrLT50eXBlID09 IEVWUF9QS0VZX1JTQSkKLSsgICAgICBpZiAoRVZQX1BLRVlfaWQoaykgPT0gRVZQX1BLRVlfUlNB KQotIAl7Ci0tCSAgUlNBICogeCA9IGstPnBrZXkucnNhOwotKwkgIFJTQSAqeCA9IEVWUF9QS0VZ X2dldDBfUlNBKGspOwotIAkgIFBFTV93cml0ZV9iaW9fUlNBX1BVQktFWSAoYiwgeCk7Ci0gCX0K LSAjZW5kaWYKLSAjaWZkZWYgRVZQX1BLRVlfRFNBCi0tICAgICAgaWYgKGstPnR5cGUgPT0gRVZQ X1BLRVlfRFNBKQotKyAgICAgIGlmIChFVlBfUEtFWV9pZChrKSA9PSBFVlBfUEtFWV9EU0EpCi0g CXsKLS0JICBEU0EgKiB4ID0gay0+cGtleS5kc2E7Ci0rCSAgRFNBICogeCA9IEVWUF9QS0VZX2dl dDBfRFNBKGspOwotIAkgIFBFTV93cml0ZV9iaW9fRFNBX1BVQktFWSAoYiwgeCk7Ci0gCX0KLSAj ZW5kaWYKLUBAIC03MjA4LDE2ICs3MjQ5LDE2IEBAIGJpZl94ZW5jX3B1YmtleV9kZXJfZXhwb3J0 IChjYWRkcl90ICogcXMKLSAgICAgewotICAgICAgIGsgPSBYNTA5X2dldF9wdWJrZXkgKGtleS0+ eGVrX3g1MDkpOwotICNpZmRlZiBFVlBfUEtFWV9SU0EKLS0gICAgICBpZiAoay0+dHlwZSA9PSBF VlBfUEtFWV9SU0EpCi0rICAgICAgaWYgKEVWUF9QS0VZX2lkKGspID09IEVWUF9QS0VZX1JTQSkK LSAJewotLQkgIFJTQSAqIHggPSBrLT5wa2V5LnJzYTsKLSsJICBSU0EgKiB4ID0gRVZQX1BLRVlf Z2V0MF9SU0Eoayk7Ci0gCSAgaTJkX1JTQV9QVUJLRVlfYmlvIChiLCB4KTsKLSAJfQotICNlbmRp ZgotICNpZmRlZiBFVlBfUEtFWV9EU0EKLS0gICAgICBpZiAoay0+dHlwZSA9PSBFVlBfUEtFWV9E U0EpCi0rICAgICAgaWYgKEVWUF9QS0VZX2lkKGspID09IEVWUF9QS0VZX0RTQSkKLSAJewotLQkg IERTQSAqIHggPSBrLT5wa2V5LmRzYTsKLSsJICBEU0EgKiB4ID0gRVZQX1BLRVlfZ2V0MF9EU0Eo ayk7Ci0gCSAgaTJkX0RTQV9QVUJLRVlfYmlvIChiLCB4KTsKLSAJfQotICNlbmRpZgotQEAgLTcy NDUsNyArNzI4Niw3IEBAIGVycjoKLSB9Ci0gCi0gc3RhdGljIGNhZGRyX3QKLS1CTjJiaW5ib3gg KEJJR05VTSAqIHgpCi0rQk4yYmluYm94IChjb25zdCBCSUdOVU0gKiB4KQotIHsKLSAgIHNpemVf dCBidWZfbGVuLCBuOwotICAgY2FkZHJfdCBidWY7Ci1AQCAtNzI4MCw4ICs3MzIxLDE0IEBAIHN0 YXRpYyBjYWRkcl90Ci0geGVuY19yc2FfcHViX21hZ2ljIChSU0EgKiB4KQotIHsKLSAgIGNhZGRy X3QgcmV0OwotLSAgY2FkZHJfdCBuID0gQk4yYmluYm94ICh4LT5uKTsgLyogbW9kdWx1cyAqLwot LSAgY2FkZHJfdCBlID0gQk4yYmluYm94ICh4LT5lKTsgLyogcHVibGljIGV4cG9uZW50ICovCi0r ICBjYWRkcl90IG47Ci0rICBjYWRkcl90IGU7Ci0rICBjb25zdCBCSUdOVU0gKnJzYV9uLCAqcnNh X2U7Ci0rCi0rICBSU0FfZ2V0MF9rZXkoeCwgJnJzYV9uLCAmcnNhX2UsIE5VTEwpOwotKyAgbiA9 IEJOMmJpbmJveCAocnNhX24pOyAvKiBtb2R1bHVzICovCi0rICBlID0gQk4yYmluYm94IChyc2Ff ZSk7IC8qIHB1YmxpYyBleHBvbmVudCAqLwotKwotICAgbiA9IHhlbmNfZW5jb2RlX2Jhc2U2NF9i aW5ib3ggKG4sIDEpOwotICAgZSA9IHhlbmNfZW5jb2RlX2Jhc2U2NF9iaW5ib3ggKGUsIDEpOwot ICAgcmV0ID0gZGtfYWxsb2NfYm94IChib3hfbGVuZ3RoIChuKSArIGJveF9sZW5ndGggKGUpICsg NCAvKiB0d28gZG90cyAtIG9uZSB0cmFpbGluZyB6ZXJvICsgUlNBIHByZWZpeCAqLywgRFZfU1RS SU5HKTsKLUBAIC03MzA2LDkgKzczNTMsOSBAQCBiaWZfeGVuY19wdWJrZXlfbWFnaWNfZXhwb3J0 IChjYWRkcl90ICoKLSAgICAgewotICAgICAgIGsgPSBYNTA5X2dldF9wdWJrZXkgKGtleS0+eGVr X3g1MDkpOwotICNpZmRlZiBFVlBfUEtFWV9SU0EKLS0gICAgICBpZiAoay0+dHlwZSA9PSBFVlBf UEtFWV9SU0EpCi0rICAgICAgaWYgKEVWUF9QS0VZX2lkKGspID09IEVWUF9QS0VZX1JTQSkKLSAJ ewotLQkgIFJTQSAqIHggPSBrLT5wa2V5LnJzYTsKLSsJICBSU0EgKiB4ID0gRVZQX1BLRVlfZ2V0 MF9SU0Eoayk7Ci0gCSAgcmV0ID0geGVuY19yc2FfcHViX21hZ2ljICh4KTsKLSAJfQotICNlbmRp ZgotQEAgLTczNDksMTAgKzczOTYsMTYgQEAgc3RhdGljIGNhZGRyX3QKLSB4ZW5jX3JzYV9wdWJf c3NoX2V4cG9ydCAoUlNBICogeCkKLSB7Ci0gICBzdGF0aWMgY2hhciAqIHNzaF9oZWFkZXIgPSAi XHgwMFx4MDBceDAwXHgwN3NzaC1yc2EiOwotKyAgY29uc3QgQklHTlVNICpyc2FfbiwgKnJzYV9l OwotICAgY2FkZHJfdCByZXQ7Ci0gICBpbnQgbGVuLCBwb3M7Ci0tICBjYWRkcl90IG4gPSBCTjJi aW5ib3ggKHgtPm4pOyAvKiBtb2R1bHVzICovCi0tICBjYWRkcl90IGUgPSBCTjJiaW5ib3ggKHgt PmUpOyAvKiBwdWJsaWMgZXhwb25lbnQgKi8KLSsgIGNhZGRyX3QgbjsKLSsgIGNhZGRyX3QgZTsK LSsKLSsgIFJTQV9nZXQwX2tleSh4LCAmcnNhX24sICZyc2FfZSwgTlVMTCk7Ci0rICBuID0gQk4y YmluYm94IChyc2Ffbik7IC8qIG1vZHVsdXMgKi8KLSsgIGUgPSBCTjJiaW5ib3ggKHJzYV9lKTsg LyogcHVibGljIGV4cG9uZW50ICovCi0rCi0gICBsZW4gPSAxMSArIDggKyBib3hfbGVuZ3RoIChu KSArIGJveF9sZW5ndGggKGUpOwotICAgaWYgKG5bMF0gJiAweDgwKQotICAgICBsZW4gKys7Ci1A QCAtNzM4Myw5ICs3NDM2LDkgQEAgYmlmX3hlbmNfcHVia2V5X3NzaF9leHBvcnQgKGNhZGRyX3Qg KiBxcwotICAgICB7Ci0gICAgICAgayA9IFg1MDlfZ2V0X3B1YmtleSAoa2V5LT54ZWtfeDUwOSk7 Ci0gI2lmZGVmIEVWUF9QS0VZX1JTQQotLSAgICAgIGlmIChrLT50eXBlID09IEVWUF9QS0VZX1JT QSkKLSsgICAgICBpZiAoRVZQX1BLRVlfaWQoaykgPT0gRVZQX1BLRVlfUlNBKQotIAl7Ci0tCSAg UlNBICogeCA9IGstPnBrZXkucnNhOwotKwkgIFJTQSAqIHggPSBFVlBfUEtFWV9nZXQwX1JTQShr KTsKLSAJICByZXQgPSB4ZW5jX3JzYV9wdWJfc3NoX2V4cG9ydCAoeCk7Ci0gCX0KLSAjZW5kaWYK LUBAIC03NDE4LDcgKzc0NzEsNyBAQCBiaWZfeGVuY19TUEtJX3JlYWQgKGNhZGRyX3QgKiBxc3Qs IGNhZGRyCi0gICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgIH0KLSAgIHBrID0gTkVUU0NBUEVfU1BL SV9nZXRfcHVia2V5IChzcGtpKTsKLS0gIGlmICghcGsgfHwgcGstPnR5cGUgIT0gRVZQX1BLRVlf UlNBKQotKyAgaWYgKCFwayB8fCBFVlBfUEtFWV9pZChwaykgIT0gRVZQX1BLRVlfUlNBKQotICAg ICB7Ci0gICAgICAgTkVUU0NBUEVfU1BLSV9mcmVlIChzcGtpKTsKLSAgICAgICAqZXJyX3JldCA9 IHNydl9tYWtlX25ld19lcnJvciAoIjQyMDAwIiwgIlhFQ1hYIiwgIkNhbiBub3QgcmV0cmlldmUg UlNBIGtleSIpOwotQEAgLTc1OTUsMTQgKzc2NDgsMTQgQEAgYmlmX3hlbmNfeDUwOV9jYV9jZXJ0 c19saXN0IChjYWRkcl90ICogcQotICAgc2VjX2NoZWNrX2RiYSAoKFFJKilxc3QsIG1lKTsKLSAg IGluID0gQklPX25ldyAoQklPX3NfbWVtICgpKTsKLSAgIG11dGV4X2VudGVyICh4ZW5jX2tleXNf bXR4KTsKLS0gIGNlcnRzID0gQ0FfY2VydHMtPm9ianM7Ci0rICBjZXJ0cyA9IFg1MDlfU1RPUkVf Z2V0MF9vYmplY3RzKENBX2NlcnRzKTsKLSAgIGxlbiA9IHNrX1g1MDlfT0JKRUNUX251bSAoY2Vy dHMpOwotICAgZm9yIChpID0gMDsgaSA8IGxlbjsgaSsrKQotICAgICB7Ci0gICAgICAgWDUwOV9P QkpFQ1QgKiBvYmogPSBza19YNTA5X09CSkVDVF92YWx1ZSAoY2VydHMsIGkpOwotLSAgICAgIGlm IChvYmotPnR5cGUgPT0gWDUwOV9MVV9YNTA5KQotKyAgICAgIGlmIChYNTA5X09CSkVDVF9nZXRf dHlwZShvYmopID09IFg1MDlfTFVfWDUwOSkKLSAJewotLQkgIFg1MDkgKnggPSBvYmotPmRhdGEu eDUwOTsKLSsJICBYNTA5ICp4ID0gWDUwOV9PQkpFQ1RfZ2V0MF9YNTA5KG9iaik7Ci0gCSAgY2Fk ZHJfdCBpdG07Ci0gCSAgaW50IGJsZW47Ci0gCSAgQklPX3Jlc2V0IChpbik7Ci0tLS0gYS9saWJz cmMvV2kveG1sZW5jLmgKLSsrKyBiL2xpYnNyYy9XaS94bWxlbmMuaAotQEAgLTM4LDYgKzM4LDcg QEAKLSAjaW5jbHVkZSA8b3BlbnNzbC9kc2EuaD4KLSAjaW5jbHVkZSA8b3BlbnNzbC9yc2EuaD4K LSAjaW5jbHVkZSA8b3BlbnNzbC9kZXMuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9obWFjLmg+Ci0g Ci0gI2lmZGVmIEFFU19FTkNfRU5BQkxFCi0gI2luY2x1ZGUgPG9wZW5zc2wvYWVzLmg+Ci1AQCAt NjMxLDUgKzYzMiwxODMgQEAgY2FkZHJfdCAqIHhtbF9maW5kX2FueV9jaGlsZCAoY2FkZHJfdCAq Ci0gCi0gZXh0ZXJuIGRrX211dGV4X3QgKiB4ZW5jX2tleXNfbXR4OwotIAotKyNpZiBPUEVOU1NM X1ZFUlNJT05fTlVNQkVSIDwgMHgxMDEwMDAwMAotKwotK3N0YXRpYyBpbmxpbmUgSE1BQ19DVFgg KkhNQUNfQ1RYX25ldyh2b2lkKQotK3sKLSsJSE1BQ19DVFggKnA7Ci0rCi0rCXAgPSBjYWxsb2Mo MSwgc2l6ZW9mKEhNQUNfQ1RYKSk7Ci0rCWlmICghcCkKLSsJCXJldHVybiBwOwotKwlITUFDX0NU WF9pbml0KHApOwotKwlyZXR1cm4gcDsKLSt9Ci0rCi0rc3RhdGljIGlubGluZSB2b2lkIEhNQUNf Q1RYX2ZyZWUoSE1BQ19DVFggKmN0eCkKLSt7Ci0rCUhNQUNfQ1RYX2NsZWFudXAoY3R4KTsKLSsJ ZnJlZShjdHgpOwotK30KLSsKLStzdGF0aWMgaW5saW5lIHZvaWQgUlNBX2dldDBfa2V5KGNvbnN0 IFJTQSAqciwgY29uc3QgQklHTlVNICoqbiwKLSsJCQkJY29uc3QgQklHTlVNICoqZSwgY29uc3Qg QklHTlVNICoqZCkKLSt7Ci0rCWlmIChuICE9IE5VTEwpCi0rCQkqbiA9IHItPm47Ci0rCWlmIChl ICE9IE5VTEwpCi0rCQkqZSA9IHItPmU7Ci0rCWlmIChkICE9IE5VTEwpCi0rCQkqZCA9IHItPmQ7 Ci0rfQotKwotK3N0YXRpYyBpbmxpbmUgdm9pZCBSU0FfZ2V0MF9mYWN0b3JzKGNvbnN0IFJTQSAq ciwgY29uc3QgQklHTlVNICoqcCwKLSsJCQkJICAgIGNvbnN0IEJJR05VTSAqKnEpCi0rewotKwlp ZiAocCAhPSBOVUxMKQotKwkJKnAgPSByLT5wOwotKwlpZiAocSAhPSBOVUxMKQotKwkJKnEgPSBy LT5xOwotK30KLSsKLStzdGF0aWMgaW5saW5lIFJTQSAqRVZQX1BLRVlfZ2V0MF9SU0EoRVZQX1BL RVkgKnBrZXkpCi0rewotKwlpZiAocGtleS0+dHlwZSAhPSBFVlBfUEtFWV9SU0EpCi0rCQlyZXR1 cm4gTlVMTDsKLSsJcmV0dXJuIHBrZXktPnBrZXkucnNhOwotK30KLSsKLStzdGF0aWMgaW5saW5l IHZvaWQgREhfZ2V0MF9rZXkoY29uc3QgREggKmRoLCBjb25zdCBCSUdOVU0gKipwdWJfa2V5LAot KwkJCSAgICAgICBjb25zdCBCSUdOVU0gKipwcml2X2tleSkKLSt7Ci0rCWlmIChwdWJfa2V5ICE9 IE5VTEwpCi0rCQkqcHViX2tleSA9IGRoLT5wdWJfa2V5OwotKwlpZiAocHJpdl9rZXkgIT0gTlVM TCkKLSsJCSpwcml2X2tleSA9IGRoLT5wcml2X2tleTsKLSt9Ci0rCi0rCi0rc3RhdGljIGlubGlu ZSB2b2lkIERIX2dldDBfcHFnKGNvbnN0IERIICpkaCwgY29uc3QgQklHTlVNICoqcCwgY29uc3Qg QklHTlVNICoqcSwKLSsJCQkgICAgICAgY29uc3QgQklHTlVNICoqZykKLSt7Ci0rCWlmIChwICE9 IE5VTEwpCi0rCQkqcCA9IGRoLT5wOwotKwlpZiAocSAhPSBOVUxMKQotKwkJKnEgPSBkaC0+cTsK LSsJaWYgKGcgIT0gTlVMTCkKLSsJCSpnID0gZGgtPmc7Ci0rfQotKwotK3N0YXRpYyBpbmxpbmUg RFNBICpFVlBfUEtFWV9nZXQwX0RTQShFVlBfUEtFWSAqcGtleSkKLSt7Ci0rCWlmIChwa2V5LT50 eXBlICE9IEVWUF9QS0VZX0RTQSkKLSsJCXJldHVybiBOVUxMOwotKwlyZXR1cm4gcGtleS0+cGtl eS5kc2E7Ci0rfQotKwotK3N0YXRpYyBpbmxpbmUgaW50IERIX3NldDBfcHFnKERIICpkaCwgQklH TlVNICpwLCBCSUdOVU0gKnEsIEJJR05VTSAqZykKLSt7Ci0rCS8qIElmIHRoZSBmaWVsZHMgcCBh bmQgZyBpbiBkIGFyZSBOVUxMLCB0aGUgY29ycmVzcG9uZGluZyBpbnB1dAotKwkgKiBwYXJhbWV0 ZXJzIE1VU1QgYmUgbm9uLU5VTEwuICBxIG1heSByZW1haW4gTlVMTC4KLSsJICovCi0rCWlmICgo ZGgtPnAgPT0gTlVMTCAmJiBwID09IE5VTEwpCi0rCSAgICB8fCAoZGgtPmcgPT0gTlVMTCAmJiBn ID09IE5VTEwpKQotKwkJcmV0dXJuIDA7Ci0rCi0rCWlmIChwICE9IE5VTEwpIHsKLSsJCUJOX2Zy ZWUoZGgtPnApOwotKwkJZGgtPnAgPSBwOwotKwl9Ci0rCWlmIChxICE9IE5VTEwpIHsKLSsJCUJO X2ZyZWUoZGgtPnEpOwotKwkJZGgtPnEgPSBxOwotKwl9Ci0rCWlmIChnICE9IE5VTEwpIHsKLSsJ CUJOX2ZyZWUoZGgtPmcpOwotKwkJZGgtPmcgPSBnOwotKwl9Ci0rCi0rCWlmIChxICE9IE5VTEwp IHsKLSsJCWRoLT5sZW5ndGggPSBCTl9udW1fYml0cyhxKTsKLSsJfQotKwotKwlyZXR1cm4gMTsK LSt9Ci0rCi0rc3RhdGljIGlubGluZSBpbnQgUlNBX3NldDBfa2V5KFJTQSAqciwgQklHTlVNICpu LCBCSUdOVU0gKmUsIEJJR05VTSAqZCkKLSt7Ci0rCS8qIElmIHRoZSBmaWVsZHMgbiBhbmQgZSBp biByIGFyZSBOVUxMLCB0aGUgY29ycmVzcG9uZGluZyBpbnB1dAotKwkgKiBwYXJhbWV0ZXJzIE1V U1QgYmUgbm9uLU5VTEwgZm9yIG4gYW5kIGUuICBkIG1heSBiZQotKwkgKiBsZWZ0IE5VTEwgKGlu IGNhc2Ugb25seSB0aGUgcHVibGljIGtleSBpcyB1c2VkKS4KLSsJICovCi0rCWlmICgoci0+biA9 PSBOVUxMICYmIG4gPT0gTlVMTCkKLSsJICAgIHx8IChyLT5lID09IE5VTEwgJiYgZSA9PSBOVUxM KSkKLSsJCXJldHVybiAwOwotKwotKwlpZiAobiAhPSBOVUxMKSB7Ci0rCQlCTl9mcmVlKHItPm4p OwotKwkJci0+biA9IG47Ci0rCX0KLSsJaWYgKGUgIT0gTlVMTCkgewotKwkJQk5fZnJlZShyLT5l KTsKLSsJCXItPmUgPSBlOwotKwl9Ci0rCWlmIChkICE9IE5VTEwpIHsKLSsJCUJOX2ZyZWUoci0+ ZCk7Ci0rCQlyLT5kID0gZDsKLSsJfQotKwotKwlyZXR1cm4gMTsKLSt9Ci0rCi0rc3RhdGljIGlu bGluZSB2b2lkIERTQV9nZXQwX3BxZyhjb25zdCBEU0EgKmQsIGNvbnN0IEJJR05VTSAqKnAsCi0r CQkJCWNvbnN0IEJJR05VTSAqKnEsIGNvbnN0IEJJR05VTSAqKmcpCi0rewotKwlpZiAocCAhPSBO VUxMKQotKwkJKnAgPSBkLT5wOwotKwlpZiAocSAhPSBOVUxMKQotKwkJKnEgPSBkLT5xOwotKwlp ZiAoZyAhPSBOVUxMKQotKwkJKmcgPSBkLT5nOwotK30KLSsKLStzdGF0aWMgaW5saW5lIHZvaWQg RFNBX2dldDBfa2V5KGNvbnN0IERTQSAqZCwgY29uc3QgQklHTlVNICoqcHViX2tleSwKLSsJCQkJ Y29uc3QgQklHTlVNICoqcHJpdl9rZXkpCi0rewotKwlpZiAocHViX2tleSAhPSBOVUxMKQotKwkJ KnB1Yl9rZXkgPSBkLT5wdWJfa2V5OwotKwlpZiAocHJpdl9rZXkgIT0gTlVMTCkKLSsJCSpwcml2 X2tleSA9IGQtPnByaXZfa2V5OwotK30KLSsKLStzdGF0aWMgaW5saW5lIGNvbnN0IFNUQUNLX09G KFg1MDlfRVhURU5TSU9OKSAqWDUwOV9nZXQwX2V4dGVuc2lvbnMoY29uc3QgWDUwOSAqeCkKLSt7 Ci0rCXJldHVybiB4LT5jZXJ0X2luZm8tPmV4dGVuc2lvbnM7Ci0rfQotKwotK3N0YXRpYyBpbmxp bmUgaW50IFg1MDlfdXBfcmVmKFg1MDkgKngpCi0rewotKwlyZXR1cm4gQ1JZUFRPX2FkZCgmeC0+ cmVmZXJlbmNlcywgMSwgQ1JZUFRPX0xPQ0tfWDUwOSk7Ci0rfQotKwotK3N0YXRpYyBpbmxpbmUg U1RBQ0tfT0YoWDUwOV9PQkpFQ1QpICpYNTA5X1NUT1JFX2dldDBfb2JqZWN0cyhYNTA5X1NUT1JF ICp2KQotK3sKLSsJcmV0dXJuIHYtPm9ianM7Ci0rfQotKwotK3N0YXRpYyBpbmxpbmUgaW50IFg1 MDlfT0JKRUNUX2dldF90eXBlKGNvbnN0IFg1MDlfT0JKRUNUICphKQotK3sKLSsJcmV0dXJuIGEt PnR5cGU7Ci0rfQotKwotK3N0YXRpYyBpbmxpbmUgWDUwOSAqWDUwOV9PQkpFQ1RfZ2V0MF9YNTA5 KGNvbnN0IFg1MDlfT0JKRUNUICphKQotK3sKLSsJaWYgKGEgPT0gTlVMTCB8fCBhLT50eXBlICE9 IFg1MDlfTFVfWDUwOSkKLSsJCXJldHVybiBOVUxMOwotKwlyZXR1cm4gYS0+ZGF0YS54NTA5Owot K30KLSsKLSsjZW5kaWYKLSsKLSAjZW5kaWYKLSAKLS0tLSBhL2xpYnNyYy9XaS94bWxlbmNfYWxn b3MuYwotKysrIGIvbGlic3JjL1dpL3htbGVuY19hbGdvcy5jCi1AQCAtMTE0OSw3ICsxMTQ5LDcg QEAgaW50Ci0gZHNpZ19obWFjX3NoYTI1Nl9kaWdlc3QgKGRrX3Nlc3Npb25fdCAqIHNlc19pbiwg bG9uZyBsZW4sIHhlbmNfa2V5X3QgKiBrZXksIGNhZGRyX3QgKiBzaWduX291dCkKLSB7Ci0gICB1 bnNpZ25lZCBjaGFyICogZGF0YTsKLS0gIEhNQUNfQ1RYIGN0eDsKLSsgIEhNQUNfQ1RYICpjdHg7 Ci0gICB1bnNpZ25lZCBjaGFyIGtleV9kYXRhWzMyICogOF07Ci0gICB1bnNpZ25lZCBjaGFyIG1k IFtTSEEyNTZfRElHRVNUX0xFTkdUSCArIDFdOwotICAgdW5zaWduZWQgY2hhciBtZDY0IFtTSEEy NTZfRElHRVNUX0xFTkdUSCAqIDIgKyAxXTsKLUBAIC0xMTgyLDcgKzExODIsOSBAQCBkc2lnX2ht YWNfc2hhMjU2X2RpZ2VzdCAoZGtfc2Vzc2lvbl90ICoKLSAgICAgICBkZWZhdWx0OgotIAkgIHJl dHVybiAwOwotICAgICB9Ci0tCi0rICBjdHggPSBITUFDX0NUWF9uZXcoKTsKLSsgIGlmICghY3R4 KQotKwkgIHJldHVybiAwOwotIAotICAgZGF0YSA9ICh1bnNpZ25lZCBjaGFyICopIGRrX2FsbG9j X2JveCAobGVuLCBEVl9DX1NUUklORyk7Ci0gICBDQVRDSF9SRUFEX0ZBSUwgKHNlc19pbikKLUBA IC0xMTkyLDE0ICsxMTk0LDE1IEBAIGRzaWdfaG1hY19zaGEyNTZfZGlnZXN0IChka19zZXNzaW9u X3QgKgotICAgRkFJTEVECi0gICAgIHsKLSAgICAgICBka19mcmVlX2JveCAoKGJveF90KSBkYXRh KTsKLSsgICAgICBITUFDX0NUWF9mcmVlKGN0eCk7Ci0gICAgICAgcmV0dXJuIDA7Ci0gICAgIH0K LSAgIEVORF9SRUFEX0ZBSUwgKHNlc19pbik7Ci0gCi0tICBITUFDX0luaXQoJmN0eCwgKHZvaWQq KSBrZXlfZGF0YSAsIGtleV9sZW4sIEVWUF9zaGEyNTYgKCkpOwotLSAgSE1BQ19VcGRhdGUoJmN0 eCwgZGF0YSwgbGVuKTsKLS0gIEhNQUNfRmluYWwoJmN0eCwgbWQsICZobWFjX2xlbik7Ci0tICBI TUFDX2NsZWFudXAoJmN0eCk7Ci0rICBITUFDX0luaXRfZXgoY3R4LCAodm9pZCopIGtleV9kYXRh ICwga2V5X2xlbiwgRVZQX3NoYTI1NiAoKSwgTlVMTCk7Ci0rICBITUFDX1VwZGF0ZShjdHgsIGRh dGEsIGxlbik7Ci0rICBITUFDX0ZpbmFsKGN0eCwgbWQsICZobWFjX2xlbik7Ci0rICBITUFDX0NU WF9mcmVlKGN0eCk7Ci0gCi0gICBpZiAoaG1hY19sZW4gIT0gU0hBMjU2X0RJR0VTVF9MRU5HVEgp Ci0gICAgIEdQRl9UOwotQEAgLTEyMjAsNyArMTIyMyw3IEBAIGRzaWdfaG1hY19zaGEyNTZfZGln ZXN0IChka19zZXNzaW9uX3QgKgotIGludAotIGRzaWdfaG1hY19zaGEyNTZfdmVyaWZ5IChka19z ZXNzaW9uX3QgKiBzZXNfaW4sIGxvbmcgbGVuLCB4ZW5jX2tleV90ICoga2V5LCBjYWRkcl90IGRp Z2VzdCkKLSB7Ci0tICBITUFDX0NUWCBjdHg7Ci0rICBITUFDX0NUWCAqY3R4OwotICAgdW5zaWdu ZWQgY2hhciAqIGRhdGE7Ci0gICB1bnNpZ25lZCBjaGFyIGtleV9kYXRhWzMgKiA4XTsKLSAgIHVu c2lnbmVkIGNoYXIgbWQgW1NIQTI1Nl9ESUdFU1RfTEVOR1RIICsgMV07Ci1AQCAtMTI0OSw2ICsx MjUyLDkgQEAgZHNpZ19obWFjX3NoYTI1Nl92ZXJpZnkgKGRrX3Nlc3Npb25fdCAqCi0gCSAgcmV0 dXJuIDA7Ci0gICAgIH0KLSAKLSsgIGN0eCA9IEhNQUNfQ1RYX25ldygpOwotKyAgaWYgKCFjdHgp Ci0rCSAgcmV0dXJuIDA7Ci0gCi0gICBkYXRhID0gKHVuc2lnbmVkIGNoYXIgKikgZGtfYWxsb2Nf Ym94IChsZW4sIERWX0NfU1RSSU5HKTsKLSAgIENBVENIX1JFQURfRkFJTCAoc2VzX2luKQotQEAg LTEyNTgsMTQgKzEyNjQsMTUgQEAgZHNpZ19obWFjX3NoYTI1Nl92ZXJpZnkgKGRrX3Nlc3Npb25f dCAqCi0gICBGQUlMRUQKLSAgICAgewotICAgICAgIGRrX2ZyZWVfYm94ICgoYm94X3QpIGRhdGEp OwotKyAgICAgIEhNQUNfQ1RYX2ZyZWUoY3R4KTsKLSAgICAgICByZXR1cm4gMDsKLSAgICAgfQot ICAgRU5EX1JFQURfRkFJTCAoc2VzX2luKTsKLSAKLS0gIEhNQUNfSW5pdCgmY3R4LCAodm9pZCop IGtleV9kYXRhICwga2V5X2xlbiwgRVZQX3NoYTI1NiAoKSk7Ci0tICBITUFDX1VwZGF0ZSgmY3R4 LCBkYXRhLCBsZW4pOwotLSAgSE1BQ19GaW5hbCgmY3R4LCBtZCwgJmhtYWNfbGVuKTsKLS0gIEhN QUNfY2xlYW51cCgmY3R4KTsKLSsgIEhNQUNfSW5pdF9leChjdHgsICh2b2lkKikga2V5X2RhdGEg LCBrZXlfbGVuLCBFVlBfc2hhMjU2ICgpLCBOVUxMKTsKLSsgIEhNQUNfVXBkYXRlKGN0eCwgZGF0 YSwgbGVuKTsKLSsgIEhNQUNfRmluYWwoY3R4LCBtZCwgJmhtYWNfbGVuKTsKLSsgIEhNQUNfQ1RY X2ZyZWUoY3R4KTsKLSAgIGRrX2ZyZWVfYm94ICgoYm94X3QpIGRhdGEpOwotIAotICAgbGVuMSA9 IHhlbmNfZW5jb2RlX2Jhc2U2NCAoKGNoYXIgKiltZCwgbWQ2NCwgaG1hY19sZW4pOwotQEAgLTE1 ODYsNyArMTU5Myw3IEBAIGludAotIGRzaWdfaG1hY19zaGExX2RpZ2VzdCAoZGtfc2Vzc2lvbl90 ICogc2VzX2luLCBsb25nIGxlbiwgeGVuY19rZXlfdCAqIGtleSwgY2FkZHJfdCAqIHNpZ25fb3V0 KQotIHsKLSAgIHVuc2lnbmVkIGNoYXIgKiBkYXRhOwotLSAgSE1BQ19DVFggY3R4OwotKyAgSE1B Q19DVFggKmN0eDsKLSAgIHVuc2lnbmVkIGNoYXIga2V5X2RhdGFbMzIgKiA4XTsKLSAgIHVuc2ln bmVkIGNoYXIgbWQgW1NIQV9ESUdFU1RfTEVOR1RIICsgMV07Ci0gICB1bnNpZ25lZCBjaGFyIG1k NjQgW1NIQV9ESUdFU1RfTEVOR1RIICogMiArIDFdOwotQEAgLTE2MjAsNiArMTYyNyw5IEBAIGRz aWdfaG1hY19zaGExX2RpZ2VzdCAoZGtfc2Vzc2lvbl90ICogc2UKLSAJICByZXR1cm4gMDsKLSAg ICAgfQotIAotKyAgY3R4ID0gSE1BQ19DVFhfbmV3KCk7Ci0rICBpZiAoIWN0eCkKLSsJICByZXR1 cm4gMDsKLSAKLSAgIGRhdGEgPSAodW5zaWduZWQgY2hhciAqKSBka19hbGxvY19ib3ggKGxlbiwg RFZfQ19TVFJJTkcpOwotICAgQ0FUQ0hfUkVBRF9GQUlMIChzZXNfaW4pCi1AQCAtMTYyOSwxNCAr MTYzOSwxNSBAQCBkc2lnX2htYWNfc2hhMV9kaWdlc3QgKGRrX3Nlc3Npb25fdCAqIHNlCi0gICBG QUlMRUQKLSAgICAgewotICAgICAgIGRrX2ZyZWVfYm94ICgoYm94X3QpIGRhdGEpOwotKyAgICAg IEhNQUNfQ1RYX2ZyZWUoY3R4KTsKLSAgICAgICByZXR1cm4gMDsKLSAgICAgfQotICAgRU5EX1JF QURfRkFJTCAoc2VzX2luKTsKLSAKLS0gIEhNQUNfSW5pdCgmY3R4LCAodm9pZCopIGtleV9kYXRh ICwga2V5X2xlbiwgRVZQX3NoYTEgKCkpOwotLSAgSE1BQ19VcGRhdGUoJmN0eCwgZGF0YSwgbGVu KTsKLS0gIEhNQUNfRmluYWwoJmN0eCwgbWQsICZobWFjX2xlbik7Ci0tICBITUFDX2NsZWFudXAo JmN0eCk7Ci0rICBITUFDX0luaXRfZXgoY3R4LCAodm9pZCopIGtleV9kYXRhICwga2V5X2xlbiwg RVZQX3NoYTEgKCksIE5VTEwpOwotKyAgSE1BQ19VcGRhdGUoY3R4LCBkYXRhLCBsZW4pOwotKyAg SE1BQ19GaW5hbChjdHgsIG1kLCAmaG1hY19sZW4pOwotKyAgSE1BQ19DVFhfZnJlZShjdHgpOwot IAotICAgaWYgKGhtYWNfbGVuICE9IFNIQV9ESUdFU1RfTEVOR1RIKQotICAgICBHUEZfVDsKLUBA IC0xNjU3LDcgKzE2NjgsNyBAQCBkc2lnX2htYWNfc2hhMV9kaWdlc3QgKGRrX3Nlc3Npb25fdCAq IHNlCi0gaW50Ci0gZHNpZ19obWFjX3NoYTFfdmVyaWZ5IChka19zZXNzaW9uX3QgKiBzZXNfaW4s IGxvbmcgbGVuLCB4ZW5jX2tleV90ICoga2V5LCBjYWRkcl90IGRpZ2VzdCkKLSB7Ci0tICBITUFD X0NUWCBjdHg7Ci0rICBITUFDX0NUWCAqY3R4OwotICAgdW5zaWduZWQgY2hhciAqIGRhdGE7Ci0g ICB1bnNpZ25lZCBjaGFyIGtleV9kYXRhWzMgKiA4XTsKLSAgIHVuc2lnbmVkIGNoYXIgbWQgW1NI QV9ESUdFU1RfTEVOR1RIICsgMV07Ci1AQCAtMTY4Niw2ICsxNjk3LDkgQEAgZHNpZ19obWFjX3No YTFfdmVyaWZ5IChka19zZXNzaW9uX3QgKiBzZQotIAkgIHJldHVybiAwOwotICAgICB9Ci0gCi0r ICBjdHggPSBITUFDX0NUWF9uZXcoKTsKLSsgIGlmICghY3R4KQotKwkgIHJldHVybiAwOwotIAot ICAgZGF0YSA9ICh1bnNpZ25lZCBjaGFyICopIGRrX2FsbG9jX2JveCAobGVuLCBEVl9DX1NUUklO Ryk7Ci0gICBDQVRDSF9SRUFEX0ZBSUwgKHNlc19pbikKLUBAIC0xNjk1LDE0ICsxNzA5LDE1IEBA IGRzaWdfaG1hY19zaGExX3ZlcmlmeSAoZGtfc2Vzc2lvbl90ICogc2UKLSAgIEZBSUxFRAotICAg ICB7Ci0gICAgICAgZGtfZnJlZV9ib3ggKChib3hfdCkgZGF0YSk7Ci0rICAgICAgSE1BQ19DVFhf ZnJlZShjdHgpOwotICAgICAgIHJldHVybiAwOwotICAgICB9Ci0gICBFTkRfUkVBRF9GQUlMIChz ZXNfaW4pOwotIAotLSAgSE1BQ19Jbml0KCZjdHgsICh2b2lkKikga2V5X2RhdGEgLCBrZXlfbGVu LCBFVlBfc2hhMSAoKSk7Ci0tICBITUFDX1VwZGF0ZSgmY3R4LCBkYXRhLCBsZW4pOwotLSAgSE1B Q19GaW5hbCgmY3R4LCBtZCwgJmhtYWNfbGVuKTsKLS0gIEhNQUNfY2xlYW51cCgmY3R4KTsKLSsg IEhNQUNfSW5pdF9leChjdHgsICh2b2lkKikga2V5X2RhdGEgLCBrZXlfbGVuLCBFVlBfc2hhMSAo KSwgTlVMTCk7Ci0rICBITUFDX1VwZGF0ZShjdHgsIGRhdGEsIGxlbik7Ci0rICBITUFDX0ZpbmFs KGN0eCwgbWQsICZobWFjX2xlbik7Ci0rICBITUFDX0NUWF9mcmVlKGN0eCk7Ci0gICBka19mcmVl X2JveCAoKGJveF90KSBkYXRhKTsKLSAKLSAgIGxlbjEgPSB4ZW5jX2VuY29kZV9iYXNlNjQgKChj aGFyICopbWQsIG1kNjQsIGhtYWNfbGVuKTsKLUBAIC0xNzYzLDcgKzE3NzgsNyBAQCBpbnQgeGVu Y19hZXNfZW5jcnlwdG9yIChka19zZXNzaW9uX3QgKiBzCi0gICBjYWRkcl90IG91dGJ1Zl9iZWc7 Ci0gICBpbnQgbGVuOwotICAgY2FkZHJfdCBlbmNvZGVkX291dDsKLS0gIEVWUF9DSVBIRVJfQ1RY IGN0eDsKLSsgIEVWUF9DSVBIRVJfQ1RYICpjdHg7Ci0gICB1bnNpZ25lZCBjaGFyICogaXZlYyA9 ICZrZXktPmtpLmFlcy5pdlswXTsKLSAKLSAgIENBVENIX1JFQURfRkFJTCAoc2VzX2luKQotQEAg LTE3NzgsNyArMTc5Myw3IEBAIGludCB4ZW5jX2Flc19lbmNyeXB0b3IgKGRrX3Nlc3Npb25fdCAq IHMKLSAgIEVORF9SRUFEX0ZBSUwgKHNlc19pbik7Ci0gCi0gI2lmIDEKLS0gIEVWUF9DSVBIRVJf Q1RYX2luaXQoJmN0eCk7Ci0rICBjdHggPSBFVlBfQ0lQSEVSX0NUWF9uZXcoKTsKLSAgIG91dGJ1 Zl9iZWcgPSBka19hbGxvY19ib3ggKGJveF9sZW5ndGggKHRleHQpICsgMTYsIERWX0JJTik7Ci0g ICBtZW1jcHkgKG91dGJ1Zl9iZWcsIGl2ZWMsIDE2KTsKLSAgIG91dGJ1ZiA9IG91dGJ1Zl9iZWcg KyAxNjsKLUBAIC0xNzg2LDIwICsxODAxLDE5IEBAIGludCB4ZW5jX2Flc19lbmNyeXB0b3IgKGRr X3Nlc3Npb25fdCAqIHMKLSAgIHN3aXRjaCAoa2V5LT5raS5hZXMuYml0cykKLSAgICAgewotICAg ICBjYXNlIDEyODoKLS0gICAgICBFVlBfRW5jcnlwdEluaXRfZXgoJmN0eCwgRVZQX2Flc18xMjhf Y2JjKCksIE5VTEwsIGtleS0+a2kuYWVzLmssIGl2ZWMpOwotKyAgICAgIEVWUF9FbmNyeXB0SW5p dF9leChjdHgsIEVWUF9hZXNfMTI4X2NiYygpLCBOVUxMLCBrZXktPmtpLmFlcy5rLCBpdmVjKTsK LSAgICAgICBicmVhazsKLSAgICAgY2FzZSAxOTI6Ci0tICAgICAgRVZQX0VuY3J5cHRJbml0X2V4 KCZjdHgsIEVWUF9hZXNfMTkyX2NiYygpLCBOVUxMLCBrZXktPmtpLmFlcy5rLCBpdmVjKTsKLSsg ICAgICBFVlBfRW5jcnlwdEluaXRfZXgoY3R4LCBFVlBfYWVzXzE5Ml9jYmMoKSwgTlVMTCwga2V5 LT5raS5hZXMuaywgaXZlYyk7Ci0gICAgICAgYnJlYWs7Ci0gICAgIGNhc2UgMjU2OgotLSAgICAg IEVWUF9FbmNyeXB0SW5pdF9leCgmY3R4LCBFVlBfYWVzXzI1Nl9jYmMoKSwgTlVMTCwga2V5LT5r aS5hZXMuaywgaXZlYyk7Ci0rICAgICAgRVZQX0VuY3J5cHRJbml0X2V4KGN0eCwgRVZQX2Flc18y NTZfY2JjKCksIE5VTEwsIGtleS0+a2kuYWVzLmssIGl2ZWMpOwotICAgICAgIGJyZWFrOwotICAg ICBkZWZhdWx0OgotICAgICAgIEdQRl9UMSAoIlVuc3VwcG9ydGVkIGtleSBzaXplIik7Ci0gICAg IH0KLS0gIGlmKCFFVlBfRW5jcnlwdFVwZGF0ZSgmY3R4LCAodW5zaWduZWQgY2hhciAqKW91dGJ1 ZiwgJm91dGxlbiwgKHVuc2lnbmVkIGNoYXIgKil0ZXh0LCBib3hfbGVuZ3RoICh0ZXh0KSkpCi0r ICBpZighRVZQX0VuY3J5cHRVcGRhdGUoY3R4LCAodW5zaWduZWQgY2hhciAqKW91dGJ1ZiwgJm91 dGxlbiwgKHVuc2lnbmVkIGNoYXIgKil0ZXh0LCBib3hfbGVuZ3RoICh0ZXh0KSkpCi0gICAgIHsK LS0gICAgICBFVlBfQ0lQSEVSX0NUWF9jbGVhbnVwKCZjdHgpOwotICAgICAgIGRrX2ZyZWVfYm94 ICh0ZXh0KTsKLSAgICAgICBka19mcmVlX2JveCAob3V0YnVmX2JlZyk7Ci0gICAgICAgeGVuY19y ZXBvcnRfZXJyb3IgKHQsIDUwMCwgWEVOQ19FTkNfRVJSLCAiQUVTIGVuY3J5cHRpb24gaW50ZXJu YWwgZXJyb3IgIzIiKTsKLUBAIC0xODEyLDcgKzE4MjYsNyBAQCBpbnQgeGVuY19hZXNfZW5jcnlw dG9yIChka19zZXNzaW9uX3QgKiBzCi0gICAgICAgeGVuY19yZXBvcnRfZXJyb3IgKHQsIDUwMCwg WEVOQ19FTkNfRVJSLCAiQUVTIGVuY3J5cHRpb24gaW50ZXJuYWwgZXJyb3IgIzMiKTsKLSAgICAg ICB9ICovCi0gICAvKiBvdXRsZW4gKz0gdG1wbGVuOyAqLwotLSAgRVZQX0NJUEhFUl9DVFhfY2xl YW51cCgmY3R4KTsKLSsgIEVWUF9DSVBIRVJfQ1RYX2ZyZWUoY3R4KTsKLSAKLSAjZWxzZQotICAg b3V0YnVmX2JlZyA9IGRrX2FsbG9jX2JveCAoYm94X2xlbmd0aCAodGV4dCkgKyAxNiAvKiBpdiAq LywgRFZfQklOKTsKLUBAIC0yMDUwLDYgKzIwNjQsNyBAQCB4ZW5jX3JzYV9kZWNyeXB0b3IgKGRr X3Nlc3Npb25fdCAqIHNlc19pCi0gICBpbnQgbGVuID0gMDsKLSAgIGludCBrZXlzaXplOwotICAg UlNBICogcnNhID0ga2V5LT54ZWtfcHJpdmF0ZV9yc2E7Ci0rICBjb25zdCBCSUdOVU0gKnAsICpx OwotIAotICAgaWYgKCFzZXNsZW4pCi0gICAgIHsKLUBAIC0yMDYyLDkgKzIwNzcsOSBAQCB4ZW5j X3JzYV9kZWNyeXB0b3IgKGRrX3Nlc3Npb25fdCAqIHNlc19pCi0gICAgICAgeGVuY19yZXBvcnRf ZXJyb3IgKHQsIDUwMCArIHN0cmxlbiAoa2V5LT54ZWtfbmFtZSksIFhFTkNfRU5DX0VSUiwgImNv dWxkIG5vdCBtYWtlIFJTQSBkZWNyeXB0aW9uIFtrZXkgJXMgaXMgbm90IFJTQV0iLCBrZXktPnhl a19uYW1lKTsKLSAgICAgICByZXR1cm4gMDsKLSAgICAgfQotKyAgUlNBX2dldDBfZmFjdG9ycyhy c2EsICZwLCAmcSk7Ci0gICBpZiAoIXJzYSB8fAotLSAgICAgICFyc2EtPnAgfHwKLS0gICAgICAh cnNhLT5xKQotKyAgICAgICFwIHx8ICFxKQotICAgICB7Ci0gICAgICAgaWYgKGtleS0+eGVrX3g1 MDlfS0kpCi0gCWtleSA9IHhlbmNfZ2V0X2tleV9ieV9rZXlpZGVudGlmaWVyIChrZXktPnhla194 NTA5X0tJLCAxKTsKLS0tLSBhL2xpYnNyYy91dGlsL3NzbGVuZ2luZS5jCi0rKysgYi9saWJzcmMv dXRpbC9zc2xlbmdpbmUuYwotQEAgLTI5LDcgKzI5LDExIEBACi0gaW50Ci0gc3NsX2VuZ2luZV9z dGFydHVwICh2b2lkKQotIHsKLS0gIENSWVBUT19tYWxsb2NfaW5pdCAoKTsKLSsjaWYgT1BFTlNT TF9WRVJTSU9OX05VTUJFUiA8IDB4MTAxMDAwMDAgfHwgZGVmaW5lZCBMSUJSRVNTTF9WRVJTSU9O X05VTUJFUgotKwlDUllQVE9fbWFsbG9jX2luaXQgKCk7Ci0rI2Vsc2UKLSsJT1BFTlNTTF9tYWxs b2NfaW5pdCgpOwotKyNlbmRpZgotICAgRVJSX2xvYWRfY3J5cHRvX3N0cmluZ3MoKTsKLSAgIE9w ZW5TU0xfYWRkX2FsbF9hbGdvcml0aG1zKCk7Ci0gCi0tLS0gYS9saWJzcmMvV2kvaHR0cC5jCi0r KysgYi9saWJzcmMvV2kvaHR0cC5jCi1AQCAtODg4Niw3ICs4ODg2LDcgQEAgc3NsX3NlcnZlcl9z ZXRfY2VydGlmaWNhdGUgKFNTTF9DVFgqIHNzbAotIAkJICBsb2dfZXJyb3IgKCJTU0w6IFRoZSBz dG9yZWQgY2VydGlmaWNhdGUgJyVzJyBjYW4gbm90IGJlIHVzZWQgYXMgZXh0cmEgY2hhaW4gY2Vy dGlmaWNhdGUiLCB0b2spOwotIAkJICBicmVhazsKLSAJCX0KLS0JICAgICAgQ1JZUFRPX2FkZCgm ay0+eGVrX3g1MDktPnJlZmVyZW5jZXMsIDEsIENSWVBUT19MT0NLX1g1MDkpOwotKwkgICAgICBY NTA5X3VwX3JlZihrLT54ZWtfeDUwOSk7Ci0gICAgICAgICAgICAgICB0b2sgPSBzdHJ0b2tfciAo TlVMTCwgIiwiLCAmdG9rX3MpOwotIAkgICAgfQotIAkgIGRrX2ZyZWVfYm94IChzdHIpOwotLS0t IGEvbGlic3JjL0RrL0RrZXJuZWwuYwotKysrIGIvbGlic3JjL0RrL0RrZXJuZWwuYwotQEAgLTUy ODAsNyArNTI4MCwxMSBAQCBzc2xfc2VydmVyX2luaXQgKCkKLSAgIH0KLSAjZW5kaWYKLSAKLS0g IFNTTGVheV9hZGRfYWxsX2FsZ29yaXRobXMgKCk7Ci0rI2lmIE9QRU5TU0xfVkVSU0lPTl9OVU1C RVIgPCAweDEwMTAwMDAwCi0rICBTU0xlYXlfYWRkX2FsbF9hbGdvcml0aG1zKCk7Ci0rI2Vsc2UK LSsgIE9wZW5TU0xfYWRkX2FsbF9hbGdvcml0aG1zKCk7Ci0rI2VuZGlmCi0gICBQS0NTMTJfUEJF X2FkZCAoKTsJCS8qIHN0dWIgKi8KLSAKLSAjaWZkZWYgTk9fVEhSRUFECmRpZmYgLS1naXQgYS9z cmNwa2dzL3ZpcnR1b3NvL3BhdGNoZXMvc3NsMS4xX21vcmUucGF0Y2ggYi9zcmNwa2dzL3ZpcnR1 b3NvL3BhdGNoZXMvc3NsMS4xX21vcmUucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDY2ZTUwZWMxMjdiYS4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvdmlydHVvc28vcGF0 Y2hlcy9zc2wxLjFfbW9yZS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDIwICswLDAgQEAKLURl c2NyaXB0aW9uOiBDb21tZW50IHVua25vd24gZGVmaW5pdGlvbiBpbiBzc2wxLjEgLSBwbGVhc2Ug cmV2aWV3IQotQXV0aG9yOiBBbmRyZWFzIFRpbGxlIDx0aWxsZUBkZWJpYW4ub3JnPgotQnVnLURl YmlhbjogaHR0cHM6Ly9idWdzLmRlYmlhbi5vcmcvODI4NTk0Ci1MYXN0LVVwZGF0ZTogTW8gMTEu IEZlYiAxMzo1MDoxNyBDRVQgMjAxOQotCi0tLS0gYS9saWJzcmMvRGsvRGtlcm5lbC5jCi0rKysg Yi9saWJzcmMvRGsvRGtlcm5lbC5jCi1AQCAtNTE2MSwxMCArNTE2MSwxMiBAQCBzc2xfY3R4X3Nl dF9wcm90b2NvbF9vcHRpb25zKFNTTF9DVFggKmN0Ci0gICAgICAgZWxzZSBpZiAoIXN0cmNhc2Vj bXAgKG5hbWUsICJUTFN2MV8yIikgfHwgIXN0cmNhc2VjbXAgKG5hbWUsICJUTFN2MS4yIikpCi0g CW9wdCA9IFNTTF9QUk9UT0NPTF9UTFNWMV8yOwotICNlbmRpZgotKy8qCi0gI2lmIGRlZmluZWQg KFNTTF9PUF9OT19UTFN2MV8zKQotICAgICAgIGVsc2UgaWYgKCFzdHJjYXNlY21wIChuYW1lLCAi VExTdjFfMyIpIHx8ICFzdHJjYXNlY21wIChuYW1lLCAiVExTdjEuMyIpKQotIAlvcHQgPSBTU0xf UFJPVE9DT0xfVExTVjFfMzsKLSAjZW5kaWYKLSsqLwotICAgICAgIGVsc2UgaWYgKCFzdHJjYXNl Y21wIChuYW1lLCAiQUxMIikpCi0gCW9wdCA9IFNTTF9QUk9UT0NPTF9BTEw7Ci0gICAgICAgZWxz ZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL3VzZS1ta3N0ZW1wLnBhdGNo IGIvc3JjcGtncy92aXJ0dW9zby9wYXRjaGVzL3VzZS1ta3N0ZW1wLnBhdGNoCmRlbGV0ZWQgZmls ZSBtb2RlIDEwMDY0NAppbmRleCBkNzFiN2U0MTdiZDkuLjAwMDAwMDAwMDAwMAotLS0gYS9zcmNw a2dzL3ZpcnR1b3NvL3BhdGNoZXMvdXNlLW1rc3RlbXAucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAt MSwxOCArMCwwIEBACi1Tb3VyY2U6IEBwdWxsbW9sbAotVXBzdHJlYW06IG5vCi1SZWFzb246IEF2 b2lkIG1rdGVtcCgzKSBiZWNhdXNlICJOZXZlciB1c2UgdGhpcyBmdW5jdGlvbjsgc2VlIEJVR1Mu IgotCi0tLS0gYS9saWJzcmMvRGsvRGtzZXNzdHIuYwkyMDE4LTA4LTE2IDAxOjA2OjIxLjAwMDAw MDAwMCArMDIwMAotKysrIGIvbGlic3JjL0RrL0Rrc2Vzc3RyLmMJMjAyMC0wMS0yNyAxNToyMjow MC45NTM4NzYyNTEgKzAxMDAKLUBAIC0yOTgsOCArMjk4LDEwIEBACi0gICAgICAgaWYgKCFzZXMy LT5zZXNfZmlsZS0+c2VzX21heF9ibG9ja3NfaW5fbWVtKQotIAl7Ci0gCSAgY2hhciBmbmFtZVtQ QVRIX01BWCArIDFdOwotKyAgICAgICAgICBpbnQgZmQ7Ci0gCSAgc25wcmludGYgKGZuYW1lLCBz aXplb2YgKGZuYW1lKSwgIiVzL3Nlc1hYWFhYWCIsIHNlc190bXBfZGlyKTsKLS0JICBta3RlbXAg KGZuYW1lKTsKLSsJICBmZCA9IG1rc3RlbXAgKGZuYW1lKTsKLSsgICAgICAgICAgY2xvc2UgKGZk KTsKLSAKLSAjaWYgZGVmaW5lZCAoV0lOMzIpCi0gIyBkZWZpbmUgT1BFTl9GTEFHUyAgCSAgT19D UkVBVCB8IE9fUkRXUiB8IE9fQklOQVJZIHwgT19FWENMIHwgT19URU1QT1JBUlkKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvdmlydHVvc28vdGVtcGxhdGUgYi9zcmNwa2dzL3ZpcnR1b3NvL3RlbXBsYXRl CmluZGV4IDczZTU5MDIzZDM1ZS4uYzhiNDZlZjQ5Zjk1IDEwMDY0NAotLS0gYS9zcmNwa2dzL3Zp cnR1b3NvL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvdmlydHVvc28vdGVtcGxhdGUKQEAgLTEsMTgg KzEsMTcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3ZpcnR1b3NvJwogcGtnbmFtZT12aXJ0dW9z bwotdmVyc2lvbj03LjIuNS4xCi1yZXZpc2lvbj0zCit2ZXJzaW9uPTcuMi44CityZXZpc2lvbj0x CiBhcmNocz0ieDg2XzY0KiBhYXJjaDY0KiBwcGM2NGxlKiIKIGJ1aWxkX3N0eWxlPWdudS1jb25m aWd1cmUKLWNvbmZpZ3VyZV9hcmdzPSItLWVuYWJsZS1zdGF0aWMiCi1ob3N0bWFrZWRlcGVuZHM9 ImF1dG9tYWtlIGxpYnRvb2wgZmxleCBncGVyZiBuZXQtdG9vbHMiCitob3N0bWFrZWRlcGVuZHM9 ImF1dG9tYWtlIGxpYnRvb2wgZmxleCBncGVyZiBuZXQtdG9vbHMgd2hpY2giCiBtYWtlZGVwZW5k cz0ib3BlbnNzbC1kZXZlbCBsaWJsZGFwLWRldmVsIHJlYWRsaW5lLWRldmVsIGxpYnhtbDItZGV2 ZWwgbWl0LWtyYjUtZGV2ZWwiCiBzaG9ydF9kZXNjPSJTY2FsYWJsZSBjcm9zcy1wbGF0Zm9ybSBz ZXJ2ZXIgb2YgdmlydHVvc28iCiBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51 eC5vcmc+IgotbGljZW5zZT0iR1BMLTIiCitsaWNlbnNlPSJHUEwtMi4wLW9ubHkiCiBob21lcGFn ZT0iaHR0cDovL3ZpcnR1b3NvLm9wZW5saW5rc3cuY29tL3dpa2kvbWFpbi9NYWluLyIKIGRpc3Rm aWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL29wZW5saW5rL3ZpcnR1b3NvLW9wZW5zb3VyY2UvYXJj aGl2ZS92JHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT0zZTQ4MDdlOTQwOThiODI2NWY4Y2Yw MDg2N2QxMjE1YmIxZTlkMGQyNzQ4NzhlNTlhNDIwNzQyZDJkZTQ3MWMyCitjaGVja3N1bT1iN2E4 Yjc5OTQzYWVmN2RlMWQ3ZjdhOTg0MDI3NzQ3Nzc2YWIwYjQ0Y2Y2ZTE2MGNiZDY2MDg1ZTViZDkx ZWQ1CiAjIGNhbm5vdCBleGVjdXRlIGJpbmFyeSBmaWxlOiBFeGVjIGZvcm1hdCBlcnJvcgogbm9j cm9zcz0iaHR0cHM6Ly9idWlsZC52b2lkbGludXgub3JnL2J1aWxkZXJzL2FybXY2bF9idWlsZGVy L2J1aWxkcy8yOTE4Ny9zdGVwcy9zaGVsbF8zL2xvZ3Mvc3RkaW8iCiAKQEAgLTQ1LDggKzQ0LDYg QEAgcG9zdF9pbnN0YWxsKCkgewogCXJtICR7REVTVERJUn0vdXNyL2xpYi92aXJ0b2RiY19yLnth LHNvfQogCXJtICR7REVTVERJUn0vdXNyL2xpYi92aXJ0b2RiY3Uue2Esc299CiAJcm0gJHtERVNU RElSfS91c3IvbGliL3ZpcnRvZGJjdV9yLnthLHNvfQotCSMgcmVtb3ZlIHN0YXRpYyBsaWJzLgot CXJtICR7REVTVERJUn0vdXNyL2xpYi92aXJ0dW9zby1vcGVuc291cmNlLSR7dmVyc2lvbiUlLip9 L2hvc3RpbmcvKi5hCiB9CiAKIHZpcnR1b3NvLWJhc2VfcGFja2FnZSgpIHsKQEAgLTYyLDYgKzU5 LDYgQEAgdmlydHVvc28tYmFzZV9wYWNrYWdlKCkgewogCQkJCSR7UEtHREVTVERJUn0vdXNyL2Jp bi8ke2Jpbn0tdnQKIAkJZG9uZQogCQkjIFJlbW92ZSBzdGF0aWMgbGlicyBhbmQgbGlidG9vbCBh cmNoaXZlcy4KLQkJcm0gLWYgJHtQS0dERVNURElSfS91c3IvbGliLyoue2EsbGF9CisJCXJtIC1m ICR7UEtHREVTVERJUn0vdXNyL2xpYi8qLmxhCiAJfQogfQoKRnJvbSAyNGI5M2ViMGNlMjY2YmNj YTI2YjI3NjgyYTNhZTc2ZWQxZDgzNzQ3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBL bGFyYSBNb2RpbiA8a2xhcmFzbW9kaW5AZ21haWwuY29tPgpEYXRlOiBXZWQsIDEgRmViIDIwMjMg MTY6NDM6NTggKzAxMDAKU3ViamVjdDogW1BBVENIIDM5LzM5XSB4MmdvY2xpZW50OiByZXZidW1w IGR1ZSB0byBvcGVubGRhcCB1cGRhdGUKCi0tLQogc3JjcGtncy94MmdvY2xpZW50L3RlbXBsYXRl IHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy94MmdvY2xpZW50L3RlbXBsYXRlIGIvc3JjcGtncy94MmdvY2xp ZW50L3RlbXBsYXRlCmluZGV4IGJhMmQ1Nzc4MWM0ZC4uNzBjOWZhZWM0ZDRlIDEwMDY0NAotLS0g YS9zcmNwa2dzL3gyZ29jbGllbnQvdGVtcGxhdGUKKysrIGIvc3JjcGtncy94MmdvY2xpZW50L3Rl bXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAneDJnb2NsaWVudCcK IHBrZ25hbWU9eDJnb2NsaWVudAogdmVyc2lvbj00LjEuMi4yCi1yZXZpc2lvbj0yCityZXZpc2lv bj0zCiBidWlsZF9zdHlsZT1nbnUtbWFrZWZpbGUKIGJ1aWxkX2hlbHBlcj1xbWFrZQogbWFrZV9i dWlsZF9hcmdzPSJRTUFLRV9CSU5BUlk9cW1ha2UtcXQ1IExSRUxFQVNFX0JJTkFSWT1scmVsZWFz ZS1xdDUiCg== --===============8568984205336553018==--