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 8732 invoked from network); 20 Sep 2020 04:57:29 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 20 Sep 2020 04:57:29 -0000 Content-Type: multipart/mixed; boundary="===============4130047361531460368==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_New_packages=3A_phoc-0=2E4=2E2_calls-0=2E1=2E7_purism-chatty-0=2E1=2E15?= To: ml@inbox.vuxu.org From: julio641742 Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Sun, 20 Sep 2020 06:57:23 +0200 List-Id: Message-ID: <20200920045723.SRkOgoWr5uTMOMznDdj5Cz6XppX6IBs1XT5ebv1A3y4@z> GitHub notification mails are now in MIME to allow UTF8. --===============4130047361531460368== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkganVsaW82NDE3NDIgYWdhaW5zdCBt YXN0ZXIgb24gdGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29t L2p1bGlvNjQxNzQyL3ZvaWQtcGFja2FnZXMgcGhvc2gKaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQt bGludXgvdm9pZC1wYWNrYWdlcy9wdWxsLzI0NTM4CgpOZXcgcGFja2FnZXM6IHBob2MtMC40LjIg Y2FsbHMtMC4xLjcgcHVyaXNtLWNoYXR0eS0wLjEuMTUKR2V0dGluZyByZWFkeSBmb3IgbXkgcGlu ZXBob25lIDopCgpBIHBhdGNoIGZpbGUgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51 eC92b2lkLXBhY2thZ2VzL3B1bGwvMjQ1MzgucGF0Y2ggaXMgYXR0YWNoZWQ= --===============4130047361531460368== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-phosh-24538.patch" RnJvbSBmN2FmYjE1YjQ2ZWU3MTIzODNiNjQwNzBhZGYwZjY3ZWEwOThlNDBkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKdWxpbyBHYWx2YW4gPGp1bGlvQGVwYXpvdGUubmV0PgpEYXRl OiBTYXQsIDI5IEF1ZyAyMDIwIDExOjQ3OjM1IC0wNzAwClN1YmplY3Q6IFtQQVRDSCAwMS8xM10g TmV3IHBhY2thZ2U6IGZlZWRiYWNrZC0wLjAuMCtnaXQyMDIwMDcwNwoKLS0tCiBjb21tb24vc2hs aWJzICAgICAgICAgICAgICB8ICAxICsKIHNyY3BrZ3MvZmVlZGJhY2tkL3RlbXBsYXRlIHwgMzcg KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogc3JjcGtncy9saWJmZWVkYmFj ayAgICAgICAgfCAgMSArCiBzcmNwa2dzL2xpYmZlZWRiYWNrLWRldmVsICB8ICAxICsKIDQgZmls ZXMgY2hhbmdlZCwgNDAgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mv ZmVlZGJhY2tkL3RlbXBsYXRlCiBjcmVhdGUgbW9kZSAxMjAwMDAgc3JjcGtncy9saWJmZWVkYmFj awogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbGliZmVlZGJhY2stZGV2ZWwKCmRpZmYgLS1n aXQgYS9jb21tb24vc2hsaWJzIGIvY29tbW9uL3NobGlicwppbmRleCBjY2ZkMTg3YmZlMC4uNTE2 Nzg0N2ZmZDkgMTAwNjQ0Ci0tLSBhL2NvbW1vbi9zaGxpYnMKKysrIGIvY29tbW9uL3NobGlicwpA QCAtMzk5MSwzICszOTkxLDQgQEAgbGlibmVhdHZuYy5zby4wIG5lYXR2bmMtMC4yLjBfMQogbGli dGRqc29uLnNvLjEuNi4wIGxpYnRkLTEuNi4wXzEKIGxpYkp1ZHkuc28uMSBqdWR5LTEuMC41XzEK IGxpYnNpZ25hbC1wcm90b2NvbC1jLnNvLjIgbGlic2lnbmFsLXByb3RvY29sLWMtMi4zLjNfMgor bGliZmVlZGJhY2stMC4wLnNvLjAgbGliZmVlZGJhY2stMC4wLjArZ2l0MjAyMDA3MDdfMQpkaWZm IC0tZ2l0IGEvc3JjcGtncy9mZWVkYmFja2QvdGVtcGxhdGUgYi9zcmNwa2dzL2ZlZWRiYWNrZC90 ZW1wbGF0ZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uMDEzMTc3NWNj OWQKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2ZlZWRiYWNrZC90ZW1wbGF0ZQpAQCAtMCww ICsxLDM3IEBACisjIFRlbXBsYXRlIGZpbGUgZm9yICdmZWVkYmFja2QnCitwa2duYW1lPWZlZWRi YWNrZAordmVyc2lvbj0wLjAuMCtnaXQyMDIwMDcwNworcmV2aXNpb249MQord3Jrc3JjPSR7cGtn bmFtZX0tdiR7dmVyc2lvbn0KK2J1aWxkX3N0eWxlPW1lc29uCitidWlsZF9oZWxwZXI9Z2lyCito b3N0bWFrZWRlcGVuZHM9InZhbGEgZ2xpYi1kZXZlbCBwa2ctY29uZmlnIgorbWFrZWRlcGVuZHM9 Imdzb3VuZC1kZXZlbCBsaWJndWRldi1kZXZlbCBqc29uLWdsaWItZGV2ZWwiCitkZXBlbmRzPSJk YnVzIgorc2hvcnRfZGVzYz0iRGFlbW9uIHRvIHByb3ZpZGUgaGFwdGljIGZlZWRiYWNrIG9uIGV2 ZW50cyIKK21haW50YWluZXI9Ikp1bGlvIEdhbHZhbiA8anVsaW8tdm9pZEBlcGF6b3RlLm5ldD4i CitsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgoraG9tZXBhZ2U9Imh0dHBzOi8vc291cmNlLnB1 cmkuc20vTGlicmVtNS9mZWVkYmFja2QiCitkaXN0ZmlsZXM9IiR7aG9tZXBhZ2V9Ly0vYXJjaGl2 ZS92JHt2ZXJzaW9ufS8ke3BrZ25hbWV9LXYke3ZlcnNpb259LnRhci5neiIKK2NoZWNrc3VtPTM3 Y2Y0OGNiZGJhZWU4ZTJkMGJlYTQwNmY1YjYzMTdiZjBlM2NkZjc5MjUwZjljZTBhODg0ZTdkMzkw NWE4ZWEKKworcG9zdF9pbnN0YWxsKCkgeworCXZpbnN0YWxsIGRlYmlhbi9mZWVkYmFja2QudWRl diAwNjQ0IHVzci9saWIvdWRldi9ydWxlcy5kIDkwLWZlZWRiYWNrZC5ydWxlcworfQorCitsaWJm ZWVkYmFja19wYWNrYWdlKCkgeworCXNob3J0X2Rlc2MrPSIgLSBzaGFyZWQgbGlicmFyaWVzIgor CXBrZ19pbnN0YWxsKCkgeworCQl2bW92ZSAidXNyL2xpYi8qLnNvLioiCisJfQorfQorCitsaWJm ZWVkYmFjay1kZXZlbF9wYWNrYWdlKCkgeworCWRlcGVuZHM9IiR7c291cmNlcGtnfT49JHt2ZXJz aW9ufV8ke3JldmlzaW9ufSIKKwlzaG9ydF9kZXNjKz0iIC0gZGV2ZWxvcG1lbnQgZmlsZXMiCisJ cGtnX2luc3RhbGwoKSB7CisJCXZtb3ZlIHVzci9pbmNsdWRlCisJCXZtb3ZlIHVzci9saWIvcGtn Y29uZmlnCisJCXZtb3ZlICJ1c3IvbGliLyouc28iCisJfQorfQpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9saWJmZWVkYmFjayBiL3NyY3BrZ3MvbGliZmVlZGJhY2sKbmV3IGZpbGUgbW9kZSAxMjAwMDAK aW5kZXggMDAwMDAwMDAwMDAuLjQ5ZGM5NjVmMWNkCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtn cy9saWJmZWVkYmFjawpAQCAtMCwwICsxIEBACitmZWVkYmFja2QKXCBObyBuZXdsaW5lIGF0IGVu ZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYmZlZWRiYWNrLWRldmVsIGIvc3JjcGtn cy9saWJmZWVkYmFjay1kZXZlbApuZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAw MC4uNDlkYzk2NWYxY2QKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2xpYmZlZWRiYWNrLWRl dmVsCkBAIC0wLDAgKzEgQEAKK2ZlZWRiYWNrZApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK CkZyb20gOWM4NmExZDhmZGY4ZmJjMTU0MTRhMTBmOTUyM2FhNTcxNjg5OTlkOSBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogSnVsaW8gR2FsdmFuIDxqdWxpb0BlcGF6b3RlLm5ldD4KRGF0 ZTogU2F0LCAyOSBBdWcgMjAyMCAxMTo0Nzo1NiAtMDcwMApTdWJqZWN0OiBbUEFUQ0ggMDIvMTNd IE5ldyBwYWNrYWdlOiBwaG9jLTAuNC4yCgotLS0KIHNyY3BrZ3MvcGhvYy90ZW1wbGF0ZSB8IDE2 ICsrKysrKysrKysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCAxNiBpbnNlcnRpb25zKCspCiBjcmVh dGUgbW9kZSAxMDA2NDQgc3JjcGtncy9waG9jL3RlbXBsYXRlCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9waG9jL3RlbXBsYXRlIGIvc3JjcGtncy9waG9jL3RlbXBsYXRlCm5ldyBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDAwMDAwMDAwMDAwLi4wMGM5ZjFmM2FiMAotLS0gL2Rldi9udWxsCisrKyBiL3Ny Y3BrZ3MvcGhvYy90ZW1wbGF0ZQpAQCAtMCwwICsxLDE2IEBACisjIFRlbXBsYXRlIGZpbGUgZm9y ICdwaG9jJworcGtnbmFtZT1waG9jCit2ZXJzaW9uPTAuNC4yCityZXZpc2lvbj0xCit3cmtzcmM9 JHtwa2duYW1lfS12JHt2ZXJzaW9ufQorYnVpbGRfc3R5bGU9bWVzb24KK2NvbmZpZ3VyZV9hcmdz PSItRGVtYmVkLXdscm9vdHM9ZGlzYWJsZWQiCitob3N0bWFrZWRlcGVuZHM9ImdsaWItZGV2ZWwg cGtnLWNvbmZpZyB3YXlsYW5kLWRldmVsIgorbWFrZWRlcGVuZHM9Imdub21lLWRlc2t0b3AtZGV2 ZWwgd2xyb290cy1kZXZlbCIKK2RlcGVuZHM9Im11dHRlciIKK3Nob3J0X2Rlc2M9Ildscm9vdHMg YmFzZWQgUGhvbmUgY29tcG9zaXRvciBmb3IgdGhlIFBob3NoIHNoZWxsIgorbWFpbnRhaW5lcj0i SnVsaW8gR2FsdmFuIDxqdWxpby12b2lkQGVwYXpvdGUubmV0PiIKK2xpY2Vuc2U9IkdQTC0zLjAt b3ItbGF0ZXIiCitob21lcGFnZT0iaHR0cHM6Ly9zb3VyY2UucHVyaS5zbS9MaWJyZW01L3Bob2Mi CitkaXN0ZmlsZXM9IiR7aG9tZXBhZ2V9Ly0vYXJjaGl2ZS92JHt2ZXJzaW9ufS8ke3BrZ25hbWV9 LXYke3ZlcnNpb259LnRhci5neiIKK2NoZWNrc3VtPWJkYjM0NjQ0YzdkNDljOTUzMjM5YzFlOTM5 YmM1ZWUyYmMyNmY2MTg3YjlkNzU2YjcwYjExM2QyNzM0YzcxMmMKCkZyb20gOGM0Y2ZjNmIyYTU1 NjFiNmZjMDBlMjhiZTA0ZGY2MzAzMmFmZTFlNiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogSnVsaW8gR2FsdmFuIDxqdWxpb0BlcGF6b3RlLm5ldD4KRGF0ZTogU2F0LCAyOSBBdWcgMjAy MCAxMTo0ODo0OCAtMDcwMApTdWJqZWN0OiBbUEFUQ0ggMDMvMTNdIE5ldyBwYWNrYWdlOiBzcXVl ZWtib2FyZC0xLjkuMwoKLS0tCiBzcmNwa2dzL3NxdWVla2JvYXJkL3RlbXBsYXRlIHwgMjYgKysr KysrKysrKysrKysrKysrKysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCAyNiBpbnNlcnRpb25zKCsp CiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9zcXVlZWtib2FyZC90ZW1wbGF0ZQoKZGlmZiAt LWdpdCBhL3NyY3BrZ3Mvc3F1ZWVrYm9hcmQvdGVtcGxhdGUgYi9zcmNwa2dzL3NxdWVla2JvYXJk L3RlbXBsYXRlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi44N2E2NzFl NjJkYQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mvc3F1ZWVrYm9hcmQvdGVtcGxhdGUKQEAg LTAsMCArMSwyNiBAQAorIyBUZW1wbGF0ZSBmaWxlIGZvciAnc3F1ZWVrYm9hcmQnCitwa2duYW1l PXNxdWVla2JvYXJkCit2ZXJzaW9uPTEuOS4zCityZXZpc2lvbj0xCit3cmtzcmM9JHtwa2duYW1l fS12JHt2ZXJzaW9ufQorYnVpbGRfc3R5bGU9bWVzb24KK2J1aWxkX2hlbHBlcj1ydXN0Citob3N0 bWFrZWRlcGVuZHM9ImdsaWItZGV2ZWwgZ2V0dGV4dCBwa2ctY29uZmlnIGNhcmdvIHdheWxhbmQt ZGV2ZWwiCittYWtlZGVwZW5kcz0icnVzdCBndGsrMy1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVs IGxpYmZlZWRiYWNrLWRldmVsIgorZGVwZW5kcz0iZmVlZGJhY2tkIgorc2hvcnRfZGVzYz0iRmlu YWwgTGlicmVtNSBrZXlib2FyZCIKK21haW50YWluZXI9Ikp1bGlvIEdhbHZhbiA8anVsaW8tdm9p ZEBlcGF6b3RlLm5ldD4iCitsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgoraG9tZXBhZ2U9Imh0 dHBzOi8vc291cmNlLnB1cmkuc20vTGlicmVtNS9zcXVlZWtib2FyZCIKK2Rpc3RmaWxlcz0iJHto b21lcGFnZX0vLS9hcmNoaXZlL3Yke3ZlcnNpb259LyR7cGtnbmFtZX0tdiR7dmVyc2lvbn0udGFy Lmd6IgorY2hlY2tzdW09Yjk5ZTU2ZmFhY2UzOTg2YmY3NTJlMDhjMTA0Y2VhNjBlZDg5NmQ1MTQy ODQ4NDA2NTUwMzNkZDk0NTdkYjgyNAorCitwcmVfY29uZmlndXJlKCkgeworCWlmIFsgIiRDUk9T U19CVUlMRCIgXTsgdGhlbgorCQl2c2VkIC1pIGNhcmdvX2J1aWxkLnNoIC1lICJzLy1hIC4vLWEg JHtYQlBTX0NST1NTX1JVU1RfVEFSR0VUfS9nIgorCWZpCit9CisKK3Bvc3RfaW5zdGFsbCgpIHsK KwljaG1vZCAreCAke0RFU1RESVJ9L3Vzci9iaW4vc3F1ZWVrYm9hcmQtZW50cnkKK30KCkZyb20g M2ZlNTg1N2VhZWE1NmE5YjE0NTE0ODVjZWZkZTY0ZmI0OWU4NTQ2NCBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogSnVsaW8gR2FsdmFuIDxqdWxpb0BlcGF6b3RlLm5ldD4KRGF0ZTogU2F0 LCAyOSBBdWcgMjAyMCAxMTo0ODo1OSAtMDcwMApTdWJqZWN0OiBbUEFUQ0ggMDQvMTNdIE5ldyBw YWNrYWdlOiBwaG9zaC0wLjQuMwoKLS0tCiBzcmNwa2dzL3Bob3NoL2ZpbGVzL3Bob3NoLmRlc2t0 b3AgICAgICAgICAgIHwgMTEgKysrKysrKysKIHNyY3BrZ3MvcGhvc2gvZmlsZXMvc20ucHVyaS5P U0swLmRlc2t0b3AgICAgfCAxMiArKysrKysrKysKIHNyY3BrZ3MvcGhvc2gvcGF0Y2hlcy8zMmJp dC1idWlsZC1maXgucGF0Y2ggfCAzMCArKysrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvcGhv c2gvdGVtcGxhdGUgICAgICAgICAgICAgICAgICAgICAgfCAyMiArKysrKysrKysrKysrKysKIDQg ZmlsZXMgY2hhbmdlZCwgNzUgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3Br Z3MvcGhvc2gvZmlsZXMvcGhvc2guZGVza3RvcAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mv cGhvc2gvZmlsZXMvc20ucHVyaS5PU0swLmRlc2t0b3AKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNw a2dzL3Bob3NoL3BhdGNoZXMvMzJiaXQtYnVpbGQtZml4LnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2 NDQgc3JjcGtncy9waG9zaC90ZW1wbGF0ZQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcGhvc2gvZmls ZXMvcGhvc2guZGVza3RvcCBiL3NyY3BrZ3MvcGhvc2gvZmlsZXMvcGhvc2guZGVza3RvcApuZXcg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uODQ0NTI4NDUxMTUKLS0tIC9kZXYv bnVsbAorKysgYi9zcmNwa2dzL3Bob3NoL2ZpbGVzL3Bob3NoLmRlc2t0b3AKQEAgLTAsMCArMSwx MSBAQAorW0Rlc2t0b3AgRW50cnldCitOYW1lPVBob3NoCitOYW1lW2VuXT1QaG9zaAorQ29tbWVu dD1UaGlzIHNlc3Npb24gbG9ncyB5b3UgaW50byBQaG9zaAorQ29tbWVudFtlbl09VGhpcyBzZXNz aW9uIGxvZ3MgaW4geW91IGludG8gUGhvc2gKK0V4ZWM9ZGJ1cy1ydW4tc2Vzc2lvbiAvdXNyL2Jp bi9waG9zaAorVHJ5RXhlYz0vdXNyL2Jpbi9waG9zaAorSWNvbj0KK1R5cGU9QXBwbGljYXRpb24K K1gtRGVza3RvcE5hbWVzPVBob3NoCitLZXl3b3Jkcz1sYXVuY2g7UGhvc2g7ZGVza3RvcDtzZXNz aW9uOwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9waG9zaC9maWxlcy9zbS5wdXJpLk9TSzAuZGVza3Rv cCBiL3NyY3BrZ3MvcGhvc2gvZmlsZXMvc20ucHVyaS5PU0swLmRlc2t0b3AKbmV3IGZpbGUgbW9k ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjM5NzQwZjE1NzczCi0tLSAvZGV2L251bGwKKysr IGIvc3JjcGtncy9waG9zaC9maWxlcy9zbS5wdXJpLk9TSzAuZGVza3RvcApAQCAtMCwwICsxLDEy IEBACitbRGVza3RvcCBFbnRyeV0KK1R5cGU9QXBwbGljYXRpb24KK05hbWU9T24tc2NyZWVuIGtl eWJvYXJkCitDb21tZW50PURlZmF1bHQgb24tc2NyZWVuIGtleWJvYXJkCitFeGVjPS91c3IvYmlu L3NxdWVla2JvYXJkCitDYXRlZ29yaWVzPUdOT01FO0NvcmU7CitPbmx5U2hvd0luPUdOT01FOwor Tm9EaXNwbGF5PXRydWUKK1gtR05PTUUtQXV0b3N0YXJ0LVBoYXNlPVBhbmVsCitYLUdOT01FLVBy b3ZpZGVzPWlucHV0bWV0aG9kCitYLUdOT01FLUF1dG9zdGFydC1Ob3RpZnk9dHJ1ZQorWC1HTk9N RS1BdXRvUmVzdGFydD10cnVlCmRpZmYgLS1naXQgYS9zcmNwa2dzL3Bob3NoL3BhdGNoZXMvMzJi aXQtYnVpbGQtZml4LnBhdGNoIGIvc3JjcGtncy9waG9zaC9wYXRjaGVzLzMyYml0LWJ1aWxkLWZp eC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uYTk4ZWNiMGZh YTUKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3Bob3NoL3BhdGNoZXMvMzJiaXQtYnVpbGQt Zml4LnBhdGNoCkBAIC0wLDAgKzEsMzAgQEAKK0Zyb20gZDFkYTVlYTdkMThjNjc5NGM5YTdkMmY0 MTM1NWZlOTBkNDExNWFjMSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206ID0/VVRGLTg/ cT9HdWlkbz0yMEc9QzM9QkNudGhlcj89IDxhZ3hAc2lneGNwdS5vcmc+CitEYXRlOiBUdWUsIDQg QXVnIDIwMjAgMDg6MjI6MzkgKzAyMDAKK1N1YmplY3Q6IFtQQVRDSF0gdGltZXN0YW1wLWxhYmVs OiBVbmJyZWFrIGJ1aWxkIG9uIDMyIGJpdCBwbGF0Zm9ybXMKK01JTUUtVmVyc2lvbjogMS4wCitD b250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLTgKK0NvbnRlbnQtVHJhbnNmZXIt RW5jb2Rpbmc6IDhiaXQKKworVXNlIGEgR18gZm9ybWF0IHNwZWNpZmllciBmb3IgR1RpbWVTcGFu LgorCitTaWduZWQtb2ZmLWJ5OiBHdWlkbyBHw7xudGhlciA8Z3VpZG8uZ3VudGhlckBwdXJpLnNt PgorLS0tCisgc3JjL25vdGlmaWNhdGlvbnMvdGltZXN0YW1wLWxhYmVsLmMgfCAyICstCisgMSBm aWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCisKK2RpZmYgLS1naXQg YS9zcmMvbm90aWZpY2F0aW9ucy90aW1lc3RhbXAtbGFiZWwuYyBiL3NyYy9ub3RpZmljYXRpb25z L3RpbWVzdGFtcC1sYWJlbC5jCitpbmRleCAwYWEwNGNlMC4uYTVhNGQ1ZTcgMTAwNjQ0CistLS0g c3JjL25vdGlmaWNhdGlvbnMvdGltZXN0YW1wLWxhYmVsLmMKKysrKyBzcmMvbm90aWZpY2F0aW9u cy90aW1lc3RhbXAtbGFiZWwuYworQEAgLTI1NSw3ICsyNTUsNyBAQCBwaG9zaF90aW1lc3RhbXBf bGFiZWxfY2FsY190aW1lb3V0IChQaG9zaFRpbWVzdGFtcExhYmVsICpzZWxmKQorICAgICBicmVh azsKKyAgIH0KKyAgIHRpbWVvdXRfZGlmZiA9IGdfZGF0ZV90aW1lX2RpZmZlcmVuY2UgKHRpbWVv dXRfdGltZSwgdGltZV9ub3cpOworLSAgZ19kZWJ1ZyAoInRpbWUgb3V0IGR1cmF0aW9uID0gJWxk IiwgdGltZW91dF9kaWZmKTsKKysgIGdfZGVidWcgKCJ0aW1lIG91dCBkdXJhdGlvbjogJSIgR19H SU5UNjRfRk9STUFULCB0aW1lb3V0X2RpZmYpOworICAgcmV0dXJuIHRpbWVvdXRfZGlmZjsKKyB9 CisgCistLSAKKzIuMjYuMgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9waG9zaC90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvcGhvc2gvdGVtcGxhdGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw MDAuLjQ2MTk5MjAyNDY2Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9waG9zaC90ZW1wbGF0 ZQpAQCAtMCwwICsxLDIyIEBACisjIFRlbXBsYXRlIGZpbGUgZm9yICdwaG9zaCcKK3BrZ25hbWU9 cGhvc2gKK3ZlcnNpb249MC40LjMKK3JldmlzaW9uPTEKK2J1aWxkX3N0eWxlPW1lc29uCitob3N0 bWFrZWRlcGVuZHM9InBob2MgZ2xpYi1kZXZlbCBnZXR0ZXh0IHBrZy1jb25maWcgd2F5bGFuZC1k ZXZlbCIKK21ha2VkZXBlbmRzPSJsaWJmZWVkYmFjay1kZXZlbCBnY3ItZGV2ZWwgZ25vbWUtZGVz a3RvcC1kZXZlbCBwYW0tZGV2ZWwKKyBwb2xraXQtZGV2ZWwgcHVsc2VhdWRpby1kZXZlbCBsaWJz ZWNyZXQtZGV2ZWwgbGliaGFuZHktZGV2ZWwKKyBOZXR3b3JrTWFuYWdlci1kZXZlbCB1cG93ZXIt ZGV2ZWwiCitkZXBlbmRzPSJwaG9jIHNxdWVla2JvYXJkIGdub21lLXNlc3Npb24gZ25vbWUtc2V0 dGluZ3MtZGFlbW9uIGVsb2dpbmQKKyB4b3JnLXNlcnZlci14d2F5bGFuZCBjYW50YXJlbGwtZm9u dHMgZm9udC1hZG9iZS1zb3VyY2UtY29kZS1wcm8iCitzaG9ydF9kZXNjPSJTaGVsbCBQb0MgZm9y IHRoZSBMaWJyZW01IgorbWFpbnRhaW5lcj0iSnVsaW8gR2FsdmFuIDxqdWxpby12b2lkQGVwYXpv dGUubmV0PiIKK2xpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCitob21lcGFnZT0iaHR0cHM6Ly9z b3VyY2UucHVyaS5zbS9MaWJyZW01L3Bob3NoIgorZGlzdGZpbGVzPSJodHRwczovL3JlcG8ucHVy ZW9zLm5ldC9wdXJlb3MvcG9vbC9tYWluL3AvcGhvc2gvcGhvc2hfJHZlcnNpb24udGFyLnh6Igor Y2hlY2tzdW09YzZmYzY4YWFmYWY3ODQxMjYzN2IwZjUwOWFhZmJiY2E4NzdiZGEzZmUxOTUxMWJm MzQwYjgyNGQ3Y2RiZDRlZQorCitwb3N0X2luc3RhbGwoKSB7CisJdmNvcHkgJHtGSUxFU0RJUn0v c20ucHVyaS5PU0swLmRlc2t0b3AgdXNyL3NoYXJlL2FwcGxpY2F0aW9ucworCXZjb3B5ICR7RklM RVNESVJ9L3Bob3NoLmRlc2t0b3AgdXNyL3NoYXJlL3dheWxhbmQtc2Vzc2lvbnMKK30KCkZyb20g ODIzNzVkYmI3MDlhYzdkODliNWRmNzM5OGIyMGEwYTc0ODdiOWMzYSBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogSnVsaW8gR2FsdmFuIDxqdWxpby12b2lkQGVwYXpvdGUubmV0PgpEYXRl OiBTYXQsIDI5IEF1ZyAyMDIwIDE4OjM1OjQ3IC0wNzAwClN1YmplY3Q6IFtQQVRDSCAwNS8xM10g TmV3IHBhY2thZ2U6IGNhbGxzLTAuMS44CgotLS0KIHNyY3BrZ3MvY2FsbHMvdGVtcGxhdGUgfCAx NyArKysrKysrKysrKysrKysrKwogMSBmaWxlIGNoYW5nZWQsIDE3IGluc2VydGlvbnMoKykKIGNy ZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2NhbGxzL3RlbXBsYXRlCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9jYWxscy90ZW1wbGF0ZSBiL3NyY3BrZ3MvY2FsbHMvdGVtcGxhdGUKbmV3IGZpbGUgbW9k ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmMxN2E4NTcwZjE4Ci0tLSAvZGV2L251bGwKKysr IGIvc3JjcGtncy9jYWxscy90ZW1wbGF0ZQpAQCAtMCwwICsxLDE3IEBACisjIFRlbXBsYXRlIGZp bGUgZm9yICdjYWxscycKK3BrZ25hbWU9Y2FsbHMKK3ZlcnNpb249MC4xLjgKK3JldmlzaW9uPTEK K3dya3NyYz0ke3BrZ25hbWV9LXYke3ZlcnNpb259CitidWlsZF9zdHlsZT1tZXNvbgoraG9zdG1h a2VkZXBlbmRzPSJnbGliLWRldmVsIGdldHRleHQgdmFsYSBwa2ctY29uZmlnIHdheWxhbmQtZGV2 ZWwKKyBldm9sdXRpb24tZGF0YS1zZXJ2ZXItZGV2ZWwiCittYWtlZGVwZW5kcz0iZm9sa3MtZGV2 ZWwgbGliaGFuZHktZGV2ZWwgbGlicGVhcy1kZXZlbCBnb20tZGV2ZWwKKyBNb2RlbU1hbmFnZXIt ZGV2ZWwgbGliZmVlZGJhY2stZGV2ZWwiCitkZXBlbmRzPSJOZXR3b3JrTWFuYWdlciBNb2RlbU1h bmFnZXIiCitzaG9ydF9kZXNjPSJQaG9uZSBjYWxsIGFwcGxpY2F0aW9uIgorbWFpbnRhaW5lcj0i SnVsaW8gR2FsdmFuIDxqdWxpby12b2lkQGVwYXpvdGUubmV0PiIKK2xpY2Vuc2U9IkdQTC0zLjAt b3ItbGF0ZXIiCitob21lcGFnZT0iaHR0cHM6Ly9zb3VyY2UucHVyaS5zbS9MaWJyZW01L2NhbGxz IgorZGlzdGZpbGVzPSIke2hvbWVwYWdlfS8tL2FyY2hpdmUvdiR7dmVyc2lvbn0vJHtwa2duYW1l fS12JHt2ZXJzaW9ufS50YXIuZ3oiCitjaGVja3N1bT01OGZkMmM0MzhmYWRlYzgxMmE3MzE4MWZk NmIxYTc5NDc4ODE0YmIxMGJmODE1M2YzYjc5YTRjNjI3MTA3OGE5CgpGcm9tIDY2OTY0MmJhZGE1 OTdkMDQwZjgyNTc2NThmZTQ2YTRlNDBiMGY4YzMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZy b206IEp1bGlvIEdhbHZhbiA8anVsaW8tdm9pZEBlcGF6b3RlLm5ldD4KRGF0ZTogU2F0LCAyOSBB dWcgMjAyMCAxODozNjozNSAtMDcwMApTdWJqZWN0OiBbUEFUQ0ggMDYvMTNdIE5ldyBwYWNrYWdl OiBwdXJpc20tY2hhdHR5LTAuMS4xNQoKLS0tCiBzcmNwa2dzL3B1cmlzbS1jaGF0dHkvdGVtcGxh dGUgfCAyMiArKysrKysrKysrKysrKysrKysrKysrCiAxIGZpbGUgY2hhbmdlZCwgMjIgaW5zZXJ0 aW9ucygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcHVyaXNtLWNoYXR0eS90ZW1wbGF0 ZQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHVyaXNtLWNoYXR0eS90ZW1wbGF0ZSBiL3NyY3BrZ3Mv cHVyaXNtLWNoYXR0eS90ZW1wbGF0ZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw MDAwMC4uZDExYmZjZWE4ODIKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3B1cmlzbS1jaGF0 dHkvdGVtcGxhdGUKQEAgLTAsMCArMSwyMiBAQAorIyBUZW1wbGF0ZSBmaWxlIGZvciAncHVyaXNt LWNoYXR0eScKK3BrZ25hbWU9cHVyaXNtLWNoYXR0eQorX3BrZ25hbWU9Y2hhdHR5Cit2ZXJzaW9u PTAuMS4xNQorcmV2aXNpb249MQord3Jrc3JjPSR7X3BrZ25hbWV9LXYke3ZlcnNpb259CitidWls ZF9zdHlsZT1tZXNvbgoraG9zdG1ha2VkZXBlbmRzPSJnbGliLWRldmVsIHBrZy1jb25maWcgZ2V0 dGV4dCIKK21ha2VkZXBlbmRzPSJsaWJmZWVkYmFjay1kZXZlbCBsaWJoYW5keS1kZXZlbCBldm9s dXRpb24tZGF0YS1zZXJ2ZXItZGV2ZWwKKyBsaWJwdXJwbGUgbGlicHVycGxlLWRldmVsIgorc2hv cnRfZGVzYz0iWE1QUCBhbmQgU01TIG1lc3NhZ2luZyB2aWEgbGlicHVycGxlIGFuZCBNb2RlbW1h bmFnZXIiCittYWludGFpbmVyPSJKdWxpbyBHYWx2YW4gPGp1bGlvLXZvaWRAZXBhem90ZS5uZXQ+ IgorbGljZW5zZT0iR1BMLTMuMC1vci1sYXRlciIKK2hvbWVwYWdlPSJodHRwczovL3NvdXJjZS5w dXJpLnNtL0xpYnJlbTUvY2hhdHR5IgorZGlzdGZpbGVzPSIke2hvbWVwYWdlfS8tL2FyY2hpdmUv diR7dmVyc2lvbn0vJHtfcGtnbmFtZX0tdiR7dmVyc2lvbn0udGFyLmd6IgorY2hlY2tzdW09OWJl MmI3OWEyNjZhN2ZhMWUzZDNlN2JhNDQ3ZmY4OWQyYjllNDQzMTJkNmU1NWYyYTYzZDE5MTM2OTUy OGQ2NAorCitwcmVfY29uZmlndXJlKCkgeworCWlmIFsgIiRDUk9TU19CVUlMRCIgXTsgdGhlbgor CQl2c2VkIC1pIHNyYy9tZXNvbi5idWlsZCAtZSAicy9wdXJwbGVfcGx1Z2RpciA9LiovcHVycGxl X3BsdWdkaXIgPSBcJ1wvdXNyXC8ke1hCUFNfQ1JPU1NfVFJJUExFVH1cL3VzclwvbGliXC9wdXJw bGUtMlwnL2ciCisJZmkKK30KCkZyb20gMjg3NWIzYTVkZTdlNTBmOGUwYTZlZDUyNGJkZDk0ZTE4 MDFiYzQ3OSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogSnVsaW8gR2FsdmFuIDxqdWxp by12b2lkQGVwYXpvdGUubmV0PgpEYXRlOiBTYXQsIDEyIFNlcCAyMDIwIDE1OjA1OjM2IC0wNzAw ClN1YmplY3Q6IFtQQVRDSCAwNy8xM10gTmV3IHBhY2thZ2U6IGtneC0wLjIuMQoKLS0tCiBzcmNw a2dzL2tneC90ZW1wbGF0ZSB8IDE0ICsrKysrKysrKysrKysrCiAxIGZpbGUgY2hhbmdlZCwgMTQg aW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mva2d4L3RlbXBsYXRlCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9rZ3gvdGVtcGxhdGUgYi9zcmNwa2dzL2tneC90ZW1wbGF0ZQpu ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uOThlYzRjYWY3MGUKLS0tIC9k ZXYvbnVsbAorKysgYi9zcmNwa2dzL2tneC90ZW1wbGF0ZQpAQCAtMCwwICsxLDE0IEBACisjIFRl bXBsYXRlIGZpbGUgZm9yICdrZ3gnCitwa2duYW1lPWtneAordmVyc2lvbj0wLjIuMQorcmV2aXNp b249MQorYnVpbGRfc3R5bGU9bWVzb24KK2hvc3RtYWtlZGVwZW5kcz0iZ2xpYi1kZXZlbCBwa2ct Y29uZmlnIGdldHRleHQiCittYWtlZGVwZW5kcz0idnRlMy1kZXZlbCBndGsrMy1kZXZlbCBsaWJo YW5keS1kZXZlbCBsaWJndG9wLWRldmVsIgorZGVwZW5kcz0iZGJ1cyBkZXNrdG9wLWZpbGUtdXRp bHMgZ3NldHRpbmdzLWRlc2t0b3Atc2NoZW1hcyIKK3Nob3J0X2Rlc2M9Ik1pbmltYWwgdGVybWlu YWwgZm9yIEdOT01FIgorbWFpbnRhaW5lcj0iSnVsaW8gR2FsdmFuIDxqdWxpby12b2lkQGVwYXpv dGUubmV0PiIKK2xpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCitob21lcGFnZT0iaHR0cHM6Ly9n aXRsYWIuZ25vbWUub3JnL1phbmRlckJyb3duL2tneCIKK2Rpc3RmaWxlcz0iJHtob21lcGFnZX0v LS9hcmNoaXZlLyR7dmVyc2lvbn0va2d4LSR7dmVyc2lvbn0udGFyLmd6IgorY2hlY2tzdW09NzBh ODE0YjBiYWY3MDA0OWQ1YTIwNzkxZDU4YTMyZTkyNjYxNDI4ZDJkZWVlYjU2ZDkxYjgxY2M0ZGM1 ZTgxYQoKRnJvbSBkYTJlNDVkZGY1ZGRjNjZlM2Q3YmRkZmYyNmE3ZWZlNjk0MTkyNmJmIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWxpbyBHYWx2YW4gPGp1bGlvLXZvaWRAZXBhem90 ZS5uZXQ+CkRhdGU6IFNhdCwgMTIgU2VwIDIwMjAgMTA6NTg6NTAgLTA3MDAKU3ViamVjdDogW1BB VENIIDA4LzEzXSBOZXcgcGFja2FnZTogbW9iaWxlLWNvbmZpZy1maXJlZm94LTEuMC4xCgotLS0K IC4uLi9maWxlcy9kaXN0cm9fbGlua3MuaHRtbCAgICAgICAgICAgICAgICAgICAgICB8ICA1ICsr KysrCiBzcmNwa2dzL21vYmlsZS1jb25maWctZmlyZWZveC90ZW1wbGF0ZSAgICAgICAgICAgfCAx NiArKysrKysrKysrKysrKysrCiAyIGZpbGVzIGNoYW5nZWQsIDIxIGluc2VydGlvbnMoKykKIGNy ZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL21vYmlsZS1jb25maWctZmlyZWZveC9maWxlcy9kaXN0 cm9fbGlua3MuaHRtbAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbW9iaWxlLWNvbmZpZy1m aXJlZm94L3RlbXBsYXRlCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tb2JpbGUtY29uZmlnLWZpcmVm b3gvZmlsZXMvZGlzdHJvX2xpbmtzLmh0bWwgYi9zcmNwa2dzL21vYmlsZS1jb25maWctZmlyZWZv eC9maWxlcy9kaXN0cm9fbGlua3MuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw MDAwMDAwMC4uY2E4OWQwZWNkMDgKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL21vYmlsZS1j b25maWctZmlyZWZveC9maWxlcy9kaXN0cm9fbGlua3MuaHRtbApAQCAtMCwwICsxLDUgQEAKKzxw IGNsYXNzPSJkaXN0cm8tbGlua3MiPgorCTxhIGhyZWY9Imh0dHBzOi8vdm9pZGxpbnV4Lm9yZy8i PmhvbWVwYWdlPC9hPiAtCisJPGEgaHJlZj0iaHR0cHM6Ly9kb2NzLnZvaWRsaW51eC5vcmcvIj5k b2NzPC9hPgorCTxhIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4Ij5yZXBvczwv YT4KKzwvcD4KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbW9iaWxlLWNvbmZpZy1maXJlZm94L3RlbXBs YXRlIGIvc3JjcGtncy9tb2JpbGUtY29uZmlnLWZpcmVmb3gvdGVtcGxhdGUKbmV3IGZpbGUgbW9k ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjhhMTUzMDExNWU4Ci0tLSAvZGV2L251bGwKKysr IGIvc3JjcGtncy9tb2JpbGUtY29uZmlnLWZpcmVmb3gvdGVtcGxhdGUKQEAgLTAsMCArMSwxNiBA QAorIyBUZW1wbGF0ZSBmaWxlIGZvciAnbW9iaWxlLWNvbmZpZy1maXJlZm94JworcGtnbmFtZT1t b2JpbGUtY29uZmlnLWZpcmVmb3gKK3ZlcnNpb249MS4wLjEKK3JldmlzaW9uPTEKK2J1aWxkX3N0 eWxlPWdudS1tYWtlZmlsZQorbWFrZV9pbnN0YWxsX2FyZ3M9IkRJU1RSTz1Wb2lkTGludXgiCitz aG9ydF9kZXNjPSJGaXJlZm94IHR3ZWFrcyBmb3IgbW9iaWxlIGFuZCBwcml2YWN5IgorbWFpbnRh aW5lcj0iSnVsaW8gR2FsdmFuIDxqdWxpby12b2lkQGVwYXpvdGUubmV0PiIKK2xpY2Vuc2U9IkdQ TC0zLjAtb3ItbGF0ZXIiCitob21lcGFnZT0iaHR0cHM6Ly9naXRsYWIuY29tL3Bvc3RtYXJrZXRP Uy9tb2JpbGUtY29uZmlnLWZpcmVmb3giCitkaXN0ZmlsZXM9IiR7aG9tZXBhZ2V9Ly0vYXJjaGl2 ZS8ke3ZlcnNpb259LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIuZ3oiCitjaGVja3N1bT03ZGNl ODM3OTk1OTU2ZjZmMjI0MDQxODUzZTAwNWVlY2IzMzY4Y2QzY2JmZWM2ZmUzZThhMzE1Mzc0N2Rk MGE3CisKK3Bvc3RfZXh0cmFjdCgpIHsKKwljcCAke0ZJTEVTRElSfS9kaXN0cm9fbGlua3MuaHRt bCBzcmMvaG9tZXBhZ2UKK30KCkZyb20gMDFlNDIxNDI2NWYxNDM5NWY5ZmFhMGFiMjEwMTgwZGI3 MzMxMjJmYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogSnVsaW8gR2FsdmFuIDxqdWxp by12b2lkQGVwYXpvdGUubmV0PgpEYXRlOiBTYXQsIDEyIFNlcCAyMDIwIDE0OjQyOjI2IC0wNzAw ClN1YmplY3Q6IFtQQVRDSCAwOS8xM10gTmV3IHBhY2thZ2U6IHBob3NoLWRlc2t0b3AtMC4xCgot LS0KIC4uLi9waG9zaC1kZXNrdG9wL2ZpbGVzLzAwMC1nc2NoZW1hLm92ZXJyaWRlICB8IDIwICsr KysrKysrKwogc3JjcGtncy9waG9zaC1kZXNrdG9wL2ZpbGVzLzAxLXBob2Mtc2NhbGluZyAgIHwg IDUgKysrCiBzcmNwa2dzL3Bob3NoLWRlc2t0b3AvdGVtcGxhdGUgICAgICAgICAgICAgICAgfCA0 NSArKysrKysrKysrKysrKysrKysrCiAzIGZpbGVzIGNoYW5nZWQsIDcwIGluc2VydGlvbnMoKykK IGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3Bob3NoLWRlc2t0b3AvZmlsZXMvMDAwLWdzY2hl bWEub3ZlcnJpZGUKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3Bob3NoLWRlc2t0b3AvZmls ZXMvMDEtcGhvYy1zY2FsaW5nCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9waG9zaC1kZXNr dG9wL3RlbXBsYXRlCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9waG9zaC1kZXNrdG9wL2ZpbGVzLzAw MC1nc2NoZW1hLm92ZXJyaWRlIGIvc3JjcGtncy9waG9zaC1kZXNrdG9wL2ZpbGVzLzAwMC1nc2No ZW1hLm92ZXJyaWRlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi43OWVj NWY2Y2Y2YwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvcGhvc2gtZGVza3RvcC9maWxlcy8w MDAtZ3NjaGVtYS5vdmVycmlkZQpAQCAtMCwwICsxLDIwIEBACitbb3JnLmdub21lLmRlc2t0b3Au YmFja2dyb3VuZF0KK3BpY3R1cmUtdXJpPSdmaWxlOi8vL3Vzci9zaGFyZS9iYWNrZ3JvdW5kcy9n bm9tZS9MaWdodFdhdmVzLmpwZycKKworW29yZy5nbm9tZS5kZXNrdG9wLmludGVyZmFjZV0KK2Ns b2NrLXNob3ctd2Vla2RheT1mYWxzZQorY2xvY2stc2hvdy1kYXRlPWZhbHNlCisKK1tvcmcuZ25v bWUuZGVza3RvcC53bS5wcmVmZXJlbmNlc10KK2J1dHRvbi1sYXlvdXQ9J2FwcG1lbnU6JworCitb b3JnLmdub21lLkVwaXBoYW55XQorc2VhcmNoLWVuZ2luZXM9WygnU2VhcmNoIHRoZSBXZWInLCAn aHR0cHM6Ly9kdWNrZHVja2dvLmNvbS8/cT0lcyZ0PWVwaXBoYW55JywgJycpLCAoJ0R1Y2tEdWNr R28nLCAnaHR0cHM6Ly9kdWNrZHVja2dvLmNvbS8/cT0lcyZ0PWVwaXBoYW55JywgJyFkZGcnKSwg KCdRd2FudCcsICdodHRwczovL3d3dy5xd2FudC5jb20vP3E9JXMnLCAnIXEnKV0KKworW29yZy5n bm9tZS5FcGlwaGFueS53ZWJdCit1c2VyLWFnZW50PSdNb3ppbGxhLzUuMCAoTGludXg7IEFuZHJv aWQgMTA7IFBpeGVsKSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJv bWUvODMuMC40MTAzLjk2IE1vYmlsZSBTYWZhcmkvNTM3LjM2JworCisKK1tvcmcuZ25vbWUuc2V0 dGluZ3MtZGFlbW9uLnBsdWdpbnMucG93ZXJdCitzbGVlcC1pbmFjdGl2ZS1hYy10eXBlPSdub3Ro aW5nJworYW1iaWVudC1lbmFibGVkPWZhbHNlCmRpZmYgLS1naXQgYS9zcmNwa2dzL3Bob3NoLWRl c2t0b3AvZmlsZXMvMDEtcGhvYy1zY2FsaW5nIGIvc3JjcGtncy9waG9zaC1kZXNrdG9wL2ZpbGVz LzAxLXBob2Mtc2NhbGluZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4u ODgwYWYyNDM5ZDMKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3Bob3NoLWRlc2t0b3AvZmls ZXMvMDEtcGhvYy1zY2FsaW5nCkBAIC0wLDAgKzEsNSBAQAorW3NtL3B1cmkvcGhvYy9hcHBsaWNh dGlvbi9maXJlZm94XQorc2NhbGUtdG8tZml0PWZhbHNlCisKK1tzbS9wdXJpL3Bob2MvYXBwbGlj YXRpb24vb3JnLWdub21lLW1hcHNdCitzY2FsZS10by1maXQ9dHJ1ZQpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9waG9zaC1kZXNrdG9wL3RlbXBsYXRlIGIvc3JjcGtncy9waG9zaC1kZXNrdG9wL3RlbXBs YXRlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5kM2I0NmZhYjg2OQot LS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvcGhvc2gtZGVza3RvcC90ZW1wbGF0ZQpAQCAtMCww ICsxLDQ1IEBACisjIFRlbXBsYXRlIGZpbGUgZm9yICdwaG9zaC1kZXNrdG9wJworcGtnbmFtZT1w aG9zaC1kZXNrdG9wCit2ZXJzaW9uPTAuMQorcmV2aXNpb249MQorYnVpbGRfc3R5bGU9bWV0YQor ZGVwZW5kcz0iCisgcGhvc2gKKyBrZ3gKKyBjYWxscworIG1lZ2FwaXhlbHMKKyBwdXJpc20tY2hh dHR5CisgaWlvLXNlbnNvci1wcm94eQorIHhkZy11c2VyLWRpcnMKKyB4ZGctZGVza3RvcC1wb3J0 YWwtZ3RrCisgZ25vbWUtYmFja2dyb3VuZHMKKyBnbm9tZS1jb2xvci1tYW5hZ2VyCisgZ25vbWUt Y29udHJvbC1jZW50ZXIKKyBnbm9tZS1kZXNrdG9wCisgZ25vbWUta2V5cmluZworIGdub21lLW9u bGluZS1hY2NvdW50cworIGdub21lLW9ubGluZS1taW5lcnMKKyBnbm9tZS1jYWxjdWxhdG9yCisg Z25vbWUtY2FsZW5kYXIKKyBnbm9tZS1jbG9ja3MKKyBnbm9tZS1jb250YWN0cworIGdub21lLW1h cHMKKyBnbm9tZS1tdXNpYworIGdub21lLXN5c3RlbS1tb25pdG9yCisgZ2VkaXQKKyBlb2cKKyBl dmluY2UKKyBlcGlwaGFueQorIGV2b2x1dGlvbgorIGdzZXR0aW5ncy1kZXNrdG9wLXNjaGVtYXMK KyBuYXV0aWx1cyIKKworc2hvcnRfZGVzYz0iUGhvc2ggZGVza3RvcCBlbnZpcm9ubWVudCBtZXRh cGFja2FnZSIKK21haW50YWluZXI9Ikp1bGlvIEdhbHZhbiA8anVsaW8tdm9pZEBlcGF6b3RlLm5l dD4iCitsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgoraG9tZXBhZ2U9Imh0dHBzOi8vdm9pZGxp bnV4Lm9yZyIKKworcG9zdF9pbnN0YWxsKCkgeworCXZpbnN0YWxsICR7RklMRVNESVJ9LzAwMC1n c2NoZW1hLm92ZXJyaWRlIDY0NCB1c3Ivc2hhcmUvZ2xpYi0yLjAvc2NoZW1hcyAwMDAtdm9pZC5n c2NoZW1hLm92ZXJyaWRlCisJdmluc3RhbGwgJHtGSUxFU0RJUn0vMDEtcGhvYy1zY2FsaW5nIDY0 NCBldGMvZGNvbmYvZGIvdm9pZC5kCit9CgpGcm9tIDc1ZDQxYzlhNzdmN2Q3ODFkNDBkN2VlNjlm YjBmMjUwNWNkYmE0MGEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEp1bGlvIEdhbHZh biA8anVsaW8tdm9pZEBlcGF6b3RlLm5ldD4KRGF0ZTogU2F0LCAxMiBTZXAgMjAyMCAyMjoxNzo1 OCAtMDcwMApTdWJqZWN0OiBbUEFUQ0ggMTAvMTNdIE5ldyBwYWNrYWdlOiBhdGlub3V0LTAuOS4x CgotLS0KIC4uLi1oYXBweS1ieS1hZGRpbmctZmFsbHRocm91Z2gtY29tbWVudC5wYXRjaCB8IDI1 ICsrKysrKwogLi4uMDItZG8tbm90LXJlbHktb24tQ1ItaW4tbW9kZW0tb3V0cHV0LnBhdGNoIHwg ODQgKysrKysrKysrKysrKysrKysrKwogc3JjcGtncy9hdGlub3V0L3BhdGNoZXMvMDAwMy12ZXJz aW9uLnBhdGNoICAgIHwgMTEgKysrCiBzcmNwa2dzL2F0aW5vdXQvdGVtcGxhdGUgICAgICAgICAg ICAgICAgICAgICAgfCAxMSArKysKIDQgZmlsZXMgY2hhbmdlZCwgMTMxIGluc2VydGlvbnMoKykK IGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2F0aW5vdXQvcGF0Y2hlcy8wMDAxLW1ha2UtZ2Nj LWhhcHB5LWJ5LWFkZGluZy1mYWxsdGhyb3VnaC1jb21tZW50LnBhdGNoCiBjcmVhdGUgbW9kZSAx MDA2NDQgc3JjcGtncy9hdGlub3V0L3BhdGNoZXMvMDAwMi1kby1ub3QtcmVseS1vbi1DUi1pbi1t b2RlbS1vdXRwdXQucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2F0aW5vdXQvcGF0 Y2hlcy8wMDAzLXZlcnNpb24ucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2F0aW5v dXQvdGVtcGxhdGUKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2F0aW5vdXQvcGF0Y2hlcy8wMDAxLW1h a2UtZ2NjLWhhcHB5LWJ5LWFkZGluZy1mYWxsdGhyb3VnaC1jb21tZW50LnBhdGNoIGIvc3JjcGtn cy9hdGlub3V0L3BhdGNoZXMvMDAwMS1tYWtlLWdjYy1oYXBweS1ieS1hZGRpbmctZmFsbHRocm91 Z2gtY29tbWVudC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4u YzBlYmJiNjU2MWQKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2F0aW5vdXQvcGF0Y2hlcy8w MDAxLW1ha2UtZ2NjLWhhcHB5LWJ5LWFkZGluZy1mYWxsdGhyb3VnaC1jb21tZW50LnBhdGNoCkBA IC0wLDAgKzEsMjUgQEAKK0Zyb20gY2EyZTA0ZjhiMDY5ZDI2OTE3MmYwZDU1ZDM3MTZhODA5NTM3 ZjY5NiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IEJlcmFsdCBNZXBwZWxpbmsgPGIu bWVwcGVsaW5rQHJpd28uZXU+CitEYXRlOiBGcmksIDI3IE9jdCAyMDE3IDA5OjEyOjE4ICswMjAw CitTdWJqZWN0OiBbUEFUQ0ggMS8yXSBtYWtlIGdjYyBoYXBweSBieSBhZGRpbmcgZmFsbHRocm91 Z2ggY29tbWVudAorCistLS0KKyBhdGlub3V0LmMgfCAyICstCisgMSBmaWxlIGNoYW5nZWQsIDEg aW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCisKK2RpZmYgLS1naXQgYS9hdGlub3V0LmMgYi9h dGlub3V0LmMKK2luZGV4IGQwNGYzMDAuLjkyNGI1YmMgMTAwNjQ0CistLS0gYXRpbm91dC5jCisr KysgYXRpbm91dC5jCitAQCAtMTUwLDcgKzE1MCw3IEBAIHN0YXRpYyBib29sIGlzX2ZpbmFsX3Jl c3VsdChjb25zdCBjaGFyICogY29uc3QgcmVzcG9uc2UpCisgCQlpZiAoc3RyY21wKCZyZXNwb25z ZVsxXSwgIktcclxuIikgPT0gMCkgeworIAkJCXJldHVybiB0cnVlOworIAkJfQorLQkJLyogbm8g YnJlYWsgKi8KKysJCS8vIGZhbGx0aHJvdWdoCisgCWRlZmF1bHQ6CisgCQlyZXR1cm4gZmFsc2U7 CisgCX0KKy0tIAorMi4yMy4wCisKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXRpbm91dC9wYXRjaGVz LzAwMDItZG8tbm90LXJlbHktb24tQ1ItaW4tbW9kZW0tb3V0cHV0LnBhdGNoIGIvc3JjcGtncy9h dGlub3V0L3BhdGNoZXMvMDAwMi1kby1ub3QtcmVseS1vbi1DUi1pbi1tb2RlbS1vdXRwdXQucGF0 Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmY5NjcxZDA4OWMzCi0t LSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9hdGlub3V0L3BhdGNoZXMvMDAwMi1kby1ub3QtcmVs eS1vbi1DUi1pbi1tb2RlbS1vdXRwdXQucGF0Y2gKQEAgLTAsMCArMSw4NCBAQAorRnJvbSA2NWRh ZTQ2MTgxMTE5ODY3Y2Q4ZTkzY2E1YjMzZDNiMGNmM2RmMDhjIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQorRnJvbTogQmVyYWx0IE1lcHBlbGluayA8Yi5tZXBwZWxpbmtAcml3by5ldT4KK0RhdGU6 IEZyaSwgMjcgT2N0IDIwMTcgMTA6NDI6NTAgKzAyMDAKK1N1YmplY3Q6IFtQQVRDSCAyLzJdIGRv IG5vdCByZWx5IG9uIENSIGluIG1vZGVtIG91dHB1dAorCistLS0KKyBhdGlub3V0LmMgfCAyNCAr KysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyAxIGZpbGUgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygr KSwgMTMgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9hdGlub3V0LmMgYi9hdGlub3V0LmMK K2luZGV4IDkyNGI1YmMuLjRjZDc2ODkgMTAwNjQ0CistLS0gYXRpbm91dC5jCisrKysgYXRpbm91 dC5jCitAQCAtMzQsNyArMzQsNiBAQAorIAorICNkZWZpbmUgTUFYX0xJTkVfTEVOR1RIICg0ICog MTAyNCkKKyBzdGF0aWMgY2hhciBidWZbTUFYX0xJTkVfTEVOR1RIXTsKKy1zdGF0aWMgY2hhciBi dWYyW01BWF9MSU5FX0xFTkdUSF07CisgCisgc3RhdGljIHN0cnVjdCBvcHRpb24gbG9uZ19vcHRp b25zW10gPSB7CisgCXsiaGVscCIsIG5vX2FyZ3VtZW50LCBOVUxMLCAnaCd9LAorQEAgLTEyNSwz NiArMTI0LDM2IEBAIHN0YXRpYyBib29sIGlzX2ZpbmFsX3Jlc3VsdChjb25zdCBjaGFyICogY29u c3QgcmVzcG9uc2UpCisgCQl9CisgCQlyZXR1cm4gZmFsc2U7CisgCWNhc2UgJ0InOgorLQkJaWYg KHN0cmNtcCgmcmVzcG9uc2VbMV0sICJVU1lcclxuIikgPT0gMCkgeworKwkJaWYgKHN0cmNtcCgm cmVzcG9uc2VbMV0sICJVU1lcbiIpID09IDApIHsKKyAJCQlyZXR1cm4gdHJ1ZTsKKy0JCX0KKysg ICAgICAgICAgICAgICAgfQorKwkJCisgCQlyZXR1cm4gZmFsc2U7CisgCisgCWNhc2UgJ0UnOgor LQkJaWYgKHN0cmNtcCgmcmVzcG9uc2VbMV0sICJSUk9SXHJcbiIpID09IDApIHsKKysJCWlmIChz dHJjbXAoJnJlc3BvbnNlWzFdLCAiUlJPUlxuIikgPT0gMCkgeworIAkJCXJldHVybiB0cnVlOwor IAkJfQorIAkJcmV0dXJuIGZhbHNlOworIAljYXNlICdOJzoKKy0JCWlmIChzdHJjbXAoJnJlc3Bv bnNlWzFdLCAiTyBBTlNXRVJcclxuIikgPT0gMCkgeworKwkJaWYgKHN0cmNtcCgmcmVzcG9uc2Vb MV0sICJPIEFOU1dFUlxuIikgPT0gMCkgeworIAkJCXJldHVybiB0cnVlOworIAkJfQorLQkJaWYg KHN0cmNtcCgmcmVzcG9uc2VbMV0sICJPIENBUlJJRVJcclxuIikgPT0gMCkgeworKwkJaWYgKHN0 cmNtcCgmcmVzcG9uc2VbMV0sICJPIENBUlJJRVJcbiIpID09IDApIHsKKyAJCQlyZXR1cm4gdHJ1 ZTsKKyAJCX0KKy0JCWlmIChzdHJjbXAoJnJlc3BvbnNlWzFdLCAiTyBESUFMVE9ORVxyXG4iKSA9 PSAwKSB7CisrCQlpZiAoc3RyY21wKCZyZXNwb25zZVsxXSwgIk8gRElBTFRPTkVcbiIpID09IDAp IHsKKyAJCQlyZXR1cm4gdHJ1ZTsKKyAJCX0KKyAJCXJldHVybiBmYWxzZTsKKyAJY2FzZSAnTyc6 CistCQlpZiAoc3RyY21wKCZyZXNwb25zZVsxXSwgIktcclxuIikgPT0gMCkgeworKwkJaWYgKHN0 cmNtcCgmcmVzcG9uc2VbMV0sICJLXG4iKSA9PSAwKSB7CisgCQkJcmV0dXJuIHRydWU7CisgCQl9 CisgCQkvLyBmYWxsdGhyb3VnaAorIAlkZWZhdWx0OgorIAkJcmV0dXJuIGZhbHNlOworIAl9Cist CisgfQorIAorIGludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCitAQCAtMjQ4LDExICsy NDcsMTAgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKKyAJCQkJZnByaW50Zihz dGRlcnIsICJFT0YgZnJvbSBtb2RlbVxuIik7CisgCQkJCXJldHVybiBFWElUX0ZBSUxVUkU7Cisg CQkJfQorLQkJCXN0cmNweShidWYyLCBsaW5lKTsKKy0JCQlzdHJpcF9jcihidWYyKTsKKy0JCQly ZXMgPSBmcHV0cyhidWYyLCBvdXRwdXQpOworKwkJCXN0cmlwX2NyKGxpbmUpOworKwkJCXJlcyA9 IGZwdXRzKGxpbmUsIG91dHB1dCk7CisgCQkJaWYgKHJlcyA8IDApIHsKKy0JCQkJZnByaW50Zihz dGRlcnIsICJmYWlsZWQgdG8gd3JpdGUgJyVzJyB0byBvdXRwdXQgZmlsZSAocmVzID0gJWQpXG4i LCBidWYyLCByZXMpOworKwkJCQlmcHJpbnRmKHN0ZGVyciwgImZhaWxlZCB0byB3cml0ZSAnJXMn IHRvIG91dHB1dCBmaWxlIChyZXMgPSAlZClcbiIsIGxpbmUsIHJlcyk7CisgCQkJCXJldHVybiBF WElUX0ZBSUxVUkU7CisgCQkJfQorIAkJfSB3aGlsZSAoISBpc19maW5hbF9yZXN1bHQobGluZSkp OworLS0gCisyLjIzLjAKKwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hdGlub3V0L3BhdGNoZXMvMDAw My12ZXJzaW9uLnBhdGNoIGIvc3JjcGtncy9hdGlub3V0L3BhdGNoZXMvMDAwMy12ZXJzaW9uLnBh dGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi4xOGQ5MmRlMDYzMAot LS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvYXRpbm91dC9wYXRjaGVzLzAwMDMtdmVyc2lvbi5w YXRjaApAQCAtMCwwICsxLDExIEBACistLS0gYXRpbm91dC5jCTIwMjAtMDktMTIgMTY6MzE6NDMu MDQ5MDkzMDU1IC0wNzAwCisrKysgYXRpbm91dC5jCTIwMjAtMDktMTIgMTY6MzM6MzQuMjY5MDgx Njg2IC0wNzAwCitAQCAtMTcwLDcgKzE2OSw3IEBACisgCQkJaGVscChhcmd2WzBdKTsKKyAJCQly ZXR1cm4gRVhJVF9TVUNDRVNTOworIAkJY2FzZSAnVic6CistCQkJcHJpbnRmKCJhdGlub3V0IHZl cnNpb24gIiBWRVJTSU9OICJcbiIpOworKwkJCXByaW50ZigiYXRpbm91dCB2ZXJzaW9uIDAuOS4x XG4iKTsKKyAJCQlpZiAoYXJnYyA9PSAyKSB7CisgCQkJCXByaW50ZigiQ29weXJpZ2h0IChDKSAy MDEzIEjDpWtvbiBMw7h2ZGFsIDxobG92ZGFsQHVzZXJzLnNvdXJjZWZvcmdlLm5ldD5cbiIKKyAJ CQkJICAgICAgICJUaGlzIHByb2dyYW0gY29tZXMgd2l0aCBBQlNPTFVURUxZIE5PIFdBUlJBTlRZ LlxuIgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hdGlub3V0L3RlbXBsYXRlIGIvc3JjcGtncy9hdGlu b3V0L3RlbXBsYXRlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5kYjJj MmZmZDIyMwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvYXRpbm91dC90ZW1wbGF0ZQpAQCAt MCwwICsxLDExIEBACisjIFRlbXBsYXRlIGZpbGUgZm9yICdhdGlub3V0JworcGtnbmFtZT1hdGlu b3V0Cit2ZXJzaW9uPTAuOS4xCityZXZpc2lvbj0xCitidWlsZF9zdHlsZT1nbnUtbWFrZWZpbGUK K3Nob3J0X2Rlc2M9IkFUIGNvbW1hbmRzIGFzIGlucHV0IGFyZSBzZW50IHRvIG1vZGVtIGFuZCBy ZXNwb25zZXMgZ2l2ZW4gYXMgb3V0cHV0IgorbWFpbnRhaW5lcj0iSnVsaW8gR2FsdmFuIDxqdWxp by12b2lkQGVwYXpvdGUubmV0PiIKK2xpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCitob21lcGFn ZT0iaHR0cDovL2F0aW5vdXQuc291cmNlZm9yZ2UubmV0L2luZGV4Lmh0bWwiCitkaXN0ZmlsZXM9 Imh0dHBzOi8vbmV0Y29sb2duZS5kbC5zb3VyY2Vmb3JnZS5uZXQvcHJvamVjdC9hdGlub3V0L3Yk e3ZlcnNpb259L2F0aW5vdXQtJHt2ZXJzaW9ufS50YXIuZ3oiCitjaGVja3N1bT00ZDE1YzgyODhh Y2E0MTRlMTFjZDMwNDY4NmIxNzI2OTYxMDRjNWU0MmJmNzc2MzAwMzExYzAwNTYzNDg1NGEyCgpG cm9tIGU2ZmI3OTE5OWRlM2MyYTI3NzMxODc1MTkxODU4YzQ0NDZmN2VhYjQgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IEp1bGlvIEdhbHZhbiA8anVsaW8tdm9pZEBlcGF6b3RlLm5ldD4K RGF0ZTogU2F0LCAxMiBTZXAgMjAyMCAyMjoxODo0NiAtMDcwMApTdWJqZWN0OiBbUEFUQ0ggMTEv MTNdIE5ldyBwYWNrYWdlOiBwaW5lcGhvbmUtd3lzLTAuMS44CgotLS0KIHNyY3BrZ3MvcGluZXBo b25lLXd5cy9maWxlcy93eXMuZGVza3RvcCAgICAgICB8ICAgOSArCiAuLi4tZGFlbW9uLXRvLW9u bHktc3dpdGNoLWNhcmQtcHJvZmlsZXMucGF0Y2ggfCA5MDYgKysrKysrKysrKysrKysrKysrCiBz cmNwa2dzL3BpbmVwaG9uZS13eXMvdGVtcGxhdGUgICAgICAgICAgICAgICAgfCAgMTkgKwogMyBm aWxlcyBjaGFuZ2VkLCA5MzQgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3Br Z3MvcGluZXBob25lLXd5cy9maWxlcy93eXMuZGVza3RvcAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNy Y3BrZ3MvcGluZXBob25lLXd5cy9wYXRjaGVzLzAwMDEtU2ltcGxpZnktZGFlbW9uLXRvLW9ubHkt c3dpdGNoLWNhcmQtcHJvZmlsZXMucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3Bp bmVwaG9uZS13eXMvdGVtcGxhdGUKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3BpbmVwaG9uZS13eXMv ZmlsZXMvd3lzLmRlc2t0b3AgYi9zcmNwa2dzL3BpbmVwaG9uZS13eXMvZmlsZXMvd3lzLmRlc2t0 b3AKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmE2YTlmNjg5NGE5Ci0t LSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9waW5lcGhvbmUtd3lzL2ZpbGVzL3d5cy5kZXNrdG9w CkBAIC0wLDAgKzEsOSBAQAorW0Rlc2t0b3AgRW50cnldCitOYW1lPVd5cworQ29tbWVudD1EYWVt b24gZm9yIG1hbmFnaW5nIFB1bHNlQXVkaW8gZm9yIHBob25lIGNhbGwgYXVkaW8KK0V4ZWM9L3Vz ci9iaW4vd3lzCitOb0Rpc3BsYXk9dHJ1ZQorVGVybWluYWw9ZmFsc2UKK1R5cGU9QXBwbGljYXRp b24KK1N0YXJ0dXBOb3RpZnk9dHJ1ZQorWC1HTk9NRS1BdXRvUmVzdGFydD10cnVlCmRpZmYgLS1n aXQgYS9zcmNwa2dzL3BpbmVwaG9uZS13eXMvcGF0Y2hlcy8wMDAxLVNpbXBsaWZ5LWRhZW1vbi10 by1vbmx5LXN3aXRjaC1jYXJkLXByb2ZpbGVzLnBhdGNoIGIvc3JjcGtncy9waW5lcGhvbmUtd3lz L3BhdGNoZXMvMDAwMS1TaW1wbGlmeS1kYWVtb24tdG8tb25seS1zd2l0Y2gtY2FyZC1wcm9maWxl cy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uOTEyNTdmMmNi YmEKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3BpbmVwaG9uZS13eXMvcGF0Y2hlcy8wMDAx LVNpbXBsaWZ5LWRhZW1vbi10by1vbmx5LXN3aXRjaC1jYXJkLXByb2ZpbGVzLnBhdGNoCkBAIC0w LDAgKzEsOTA2IEBACitGcm9tIGY2NjYxMGQyNjM5NWRlMTVlMzkyOGNmNDI4NDU3M2NhOWNmYWJm MjYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBBcm5hdWQgRmVycmFyaXMgPGFybmF1 ZC5mZXJyYXJpc0Bjb2xsYWJvcmEuY29tPgorRGF0ZTogRnJpLCA2IE1hciAyMDIwIDAyOjAxOjUy ICswMTAwCitTdWJqZWN0OiBbUEFUQ0hdIFNpbXBsaWZ5IGRhZW1vbiB0byBvbmx5IHN3aXRjaCBj YXJkIHByb2ZpbGVzCisKK0FzIGEgUG9DIGZvciB0aGUgUGluZVBob25lLCB3ZSB3YW50IHRvIG9u bHkgc3dpdGNoIGNhcmQgcHJvZmlsZXM6CistIHdoZW4gYSBjYWxsIHN0YXJ0cywgdXNlIHRoZSAi Vm9pY2UgQ2FsbCIgcHJvZmlsZTogYXVkaW8gaXMgb3V0cHV0IG9uCit0aGUgZWFycGllY2UsIGFu ZCB0aGUgaW50ZXJuYWwgbWljcm9waG9uZSBpcyB1bm11dGVkCistIHdoZW4gYSBjYWxsIGlzIHRl cm1pbmF0ZWQsIHN3aXRjaCBiYWNrIHRvIHRoZSBkZWZhdWx0ICJIaUZpIiBwcm9maWxlLAordXNp bmcgdGhlIG1haW4gc3BlYWtlcgorCitUaGlzIHNob3VsZCBmdWxseSBjb3ZlciB0aGUgbW9zdCBi YXNpYyB1c2UtY2FzZS4gSGVhZHNldCB3aWxsIG5vdCB3b3JrLAorYW5kIHRoZXJlIGlzIGFsc28g bm8gc3VwcG9ydCBmb3IgYSAic2lsZW50IG1vZGUiLCBidXQgdGhpcyBpcyBlbm91Z2ggdG8KK2Rl bW9uc3RyYXRlIHZvaWNlIGNhbGxzIGZvciB0aGUgUGluZVBob25lLgorLS0tCitkaWZmIC0tZ2l0 IG1lc29uLmJ1aWxkIG1lc29uLmJ1aWxkCitpbmRleCA1OTM4Y2VjLi43NTE2MjA4IDEwMDY0NAor LS0tIG1lc29uLmJ1aWxkCisrKysgbWVzb24uYnVpbGQKK0BAIC0zMywxMSArMzMsNiBAQCBwcm9q ZWN0ICgKKyAgICAgXSwKKyApCisgCistCistbGlibWNoa19wcm9qID0gc3VicHJvamVjdCgnbGli bWFjaGluZS1jaGVjaycpCistbGlibWNoa19kZXAgPSBsaWJtY2hrX3Byb2ouZ2V0X3ZhcmlhYmxl KCdsaWJtYWNoaW5lX2NoZWNrX2RlcCcpCistCistCisgYXBwX25hbWUgPSBtZXNvbi5wcm9qZWN0 X25hbWUoKQorIAorIHByZWZpeCA9IGdldF9vcHRpb24oJ3ByZWZpeCcpCitAQCAtNjMsMTQgKzU4 LDMgQEAgY29uZmlnX2RhdGEuc2V0X3F1b3RlZCgnREFUQURJUicsIGZ1bGxfZGF0YWRpcikKKyBj b25maWdfZGF0YS5zZXRfcXVvdGVkKCdTWVNDT05GRElSJywgZnVsbF9zeXNjb25mZGlyKQorIAor IHN1YmRpcignc3JjJykKKy0KKy1pbnN0YWxsX3N1YmRpciAoCistICAnbWFjaGluZS1jb25mJywK Ky0gIGluc3RhbGxfZGlyIDogam9pbl9wYXRocyhkYXRhZGlyLCBhcHBfbmFtZSkKKy0pCistCist aW5zdGFsbF9zdWJkaXIgKAorLSAgJ21hY2hpbmUtY2hlY2snLAorLSAgaW5zdGFsbF9kaXIgOiBq b2luX3BhdGhzKGRhdGFkaXIsICdtYWNoaW5lLWNoZWNrJywgYXBwX25hbWUpLAorLSAgc3RyaXBf ZGlyZWN0b3J5IDogdHJ1ZQorLSkKK2RpZmYgLS1naXQgc3JjL21haW4uYyBzcmMvbWFpbi5jCitp bmRleCA1ODdhNWYzLi40NjMxYTMzIDEwMDY0NAorLS0tIHNyYy9tYWluLmMKKysrKyBzcmMvbWFp bi5jCitAQCAtMjMsMTAgKzIzLDggQEAKKyAgKi8KKyAKKyAjaW5jbHVkZSAid3lzLW1vZGVtLmgi CistI2luY2x1ZGUgInd5cy1hdWRpby5oIgorICNpbmNsdWRlICJ1dGlsLmgiCisgI2luY2x1ZGUg ImNvbmZpZy5oIgorLSNpbmNsdWRlICJtY2hrLW1hY2hpbmUtY2hlY2suaCIKKyAKKyAjaW5jbHVk ZSA8bGlibW0tZ2xpYi5oPgorICNpbmNsdWRlIDxnbGliLmg+CitAQCAtNTAsOCArNDgsNiBAQCBz dGF0aWMgR01haW5Mb29wICptYWluX2xvb3AgPSBOVUxMOworIAorIHN0cnVjdCB3eXNfZGF0YQor IHsKKy0gIC8qKiBQdWxzZUF1ZGlvIGludGVyZmFjZSAqLworLSAgV3lzQXVkaW8gKmF1ZGlvOwor ICAgLyoqIElEIGZvciB0aGUgRC1CdXMgd2F0Y2ggKi8KKyAgIGd1aW50IHdhdGNoX2lkOworICAg LyoqIE1vZGVtTWFuYWdlciBvYmplY3QgcHJveHkgKi8KK0BAIC01OSw1MSArNTUsMTEyIEBAIHN0 cnVjdCB3eXNfZGF0YQorICAgLyoqIE1hcCBvZiBELUJ1cyBvYmplY3QgcGF0aHMgdG8gV3lzTW9k ZW1zICovCisgICBHSGFzaFRhYmxlICptb2RlbXM7CisgICAvKiogSG93IG1hbnkgbW9kZW1zIGhh dmUgYXVkaW8sIGluIGVhY2ggZGlyZWN0aW9uICovCistICBndWludCBhdWRpb19jb3VudFsyXTsK KysgIGd1aW50IGF1ZGlvX2NvdW50OworIH07CisgCisrc3RhdGljIGdib29sZWFuCisrdWdseV9z eXN0ZW0gKGNvbnN0IGdjaGFyICpjbWQpCisreworKyAgZ2NoYXIgKm91dCA9IE5VTEwsICplcnIg PSBOVUxMOworKyAgZ2ludCBzdGF0dXM7CisrICBHRXJyb3IgKmVycm9yID0gTlVMTDsKKysgIGdi b29sZWFuIG9rOworKworKyAgZ19kZWJ1ZyAoIkV4ZWN1dGluZyBjb21tYW5kIGAlcyciLCBjbWQp OworKworKyAgb2sgPSBnX3NwYXduX2NvbW1hbmRfbGluZV9zeW5jCisrICAgIChjbWQsICZvdXQs ICZlcnIsICZzdGF0dXMsICZlcnJvcik7CisrCisrICBpZiAoIW9rKQorKyAgICB7CisrICAgICAg Z193YXJuaW5nICgiRXJyb3Igc3Bhd25pbmcgY29tbWFuZCBgJXMnOiAlcyciLAorKyAgICAgICAg ICAgICAgICAgY21kLCBlcnJvci0+bWVzc2FnZSk7CisrICAgICAgZ19lcnJvcl9mcmVlIChlcnJv cik7CisrICAgICAgcmV0dXJuIEZBTFNFOworKyAgICB9CisrCisrICBvayA9IGdfc3Bhd25fY2hl Y2tfZXhpdF9zdGF0dXMgKHN0YXR1cywgJmVycm9yKTsKKysgIGlmIChvaykKKysgICAgeworKyAg ICAgIGdfZGVidWcgKCJDb21tYW5kIGAlcycgZXhlY3V0ZWQgc3VjY2Vzc2Z1bGx5IgorKyAgICAg ICAgICAgICAgICI7IHN0ZG91dDogYCVzJzsgc3RkZXJyOiBgJXMnIiwKKysgICAgICAgICAgICAg ICBjbWQsIG91dCwgZXJyKTsKKysgICAgfQorKyAgZWxzZQorKyAgICB7CisrICAgICAgZ193YXJu aW5nICgiQ29tbWFuZCBgJXMnIGZhaWxlZDogJXMiCisrICAgICAgICAgICAgICAgICAiOyBzdGRv dXQ6IGAlcyc7IHN0ZGVycjogYCVzJyIsCisrICAgICAgICAgICAgICAgICBjbWQsIGVycm9yLT5t ZXNzYWdlLCBvdXQsIGVycik7CisrICAgICAgZ19lcnJvcl9mcmVlIChlcnJvcik7CisrICAgIH0K KysKKysgIGdfZnJlZSAob3V0KTsKKysgIGdfZnJlZSAoZXJyKTsKKysKKysgIHJldHVybiBvazsK Kyt9CisrCisrI2RlZmluZSBVR0xZX0NBUkQgImFsc2FfY2FyZC5wbGF0Zm9ybS1zb3VuZCIKKysK KytzdGF0aWMgZ2Jvb2xlYW4KKyt1Z2x5X3NldF9jYXJkX3Byb2ZpbGUgKGNvbnN0IGdjaGFyICpj YXJkLAorKyAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2NoYXIgKnByb2ZpbGUpCisrewor KyAgZ19hdXRvZnJlZSBnY2hhciAqY21kID0gTlVMTDsKKysKKysgIGNtZCA9IGdfc3RyZHVwX3By aW50ZiAoInBhY3RsIHNldC1jYXJkLXByb2ZpbGUgJyVzJyAnJXMnIiwgY2FyZCwgcHJvZmlsZSk7 CisrCisrICByZXR1cm4gdWdseV9zeXN0ZW0gKGNtZCk7CisrfQorKworK3N0YXRpYyBnYm9vbGVh bgorK3VnbHlfc2V0X3ZvaWNlX2NhbGwgKHZvaWQpCisreworKyAgcmV0dXJuIHVnbHlfc2V0X2Nh cmRfcHJvZmlsZSAoVUdMWV9DQVJELCAiVm9pY2UgQ2FsbCIpOworK30KKysKKytzdGF0aWMgZ2Jv b2xlYW4KKyt1Z2x5X3NldF9oaWZpICh2b2lkKQorK3sKKysgIHJldHVybiB1Z2x5X3NldF9jYXJk X3Byb2ZpbGUgKFVHTFlfQ0FSRCwgIkhpRmkiKTsKKyt9CisgCisgc3RhdGljIHZvaWQKKyB1cGRh dGVfYXVkaW9fY291bnQgKHN0cnVjdCB3eXNfZGF0YSAqZGF0YSwKKy0gICAgICAgICAgICAgICAg ICAgIFd5c0RpcmVjdGlvbiAgICAgZGlyZWN0aW9uLAorICAgICAgICAgICAgICAgICAgICAgZ2lu dCAgICAgICAgICAgICBkZWx0YSkKKyB7CistICBjb25zdCBndWludCBvbGRfY291bnQgPSBkYXRh LT5hdWRpb19jb3VudFtkaXJlY3Rpb25dOworKyAgY29uc3QgZ3VpbnQgb2xkX2NvdW50ID0gZGF0 YS0+YXVkaW9fY291bnQ7CisgCistICBnX2Fzc2VydCAoZGVsdGEgPj0gMCB8fCBkYXRhLT5hdWRp b19jb3VudFtkaXJlY3Rpb25dID4gMCk7CisrICBnX2Fzc2VydCAoZGVsdGEgPj0gMCB8fCBkYXRh LT5hdWRpb19jb3VudCA+IDApOworIAorLSAgZGF0YS0+YXVkaW9fY291bnRbZGlyZWN0aW9uXSAr PSBkZWx0YTsKKysgIGRhdGEtPmF1ZGlvX2NvdW50ICs9IGRlbHRhOworIAorLSAgaWYgKGRhdGEt PmF1ZGlvX2NvdW50W2RpcmVjdGlvbl0gPiAwICYmIG9sZF9jb3VudCA9PSAwKQorKyAgaWYgKGRh dGEtPmF1ZGlvX2NvdW50ID4gMCAmJiBvbGRfY291bnQgPT0gMCkKKyAgICAgeworLSAgICAgIGdf ZGVidWcgKCJBdWRpbyAlcyBub3cgcHJlc2VudCIsCistICAgICAgICAgICAgICAgd3lzX2RpcmVj dGlvbl9nZXRfZGVzY3JpcHRpb24gKGRpcmVjdGlvbikpOworLSAgICAgIHd5c19hdWRpb19lbnN1 cmVfbG9vcGJhY2sgKGRhdGEtPmF1ZGlvLCBkaXJlY3Rpb24pOworKyAgICAgIGdfbWVzc2FnZSAo IkF1ZGlvIG5vdyBwcmVzZW50Iik7CisrICAgICAgdWdseV9zZXRfdm9pY2VfY2FsbCAoKTsKKyAg ICAgfQorLSAgZWxzZSBpZiAoZGF0YS0+YXVkaW9fY291bnRbZGlyZWN0aW9uXSA9PSAwICYmIG9s ZF9jb3VudCA+IDApCisrICBlbHNlIGlmIChkYXRhLT5hdWRpb19jb3VudCA9PSAwICYmIG9sZF9j b3VudCA+IDApCisgICAgIHsKKy0gICAgICBnX2RlYnVnICgiQXVkaW8gJXMgbm93IGFic2VudCIs CistICAgICAgICAgICAgICAgd3lzX2RpcmVjdGlvbl9nZXRfZGVzY3JpcHRpb24gKGRpcmVjdGlv bikpOworLSAgICAgIHd5c19hdWRpb19lbnN1cmVfbm9fbG9vcGJhY2sgKGRhdGEtPmF1ZGlvLCBk aXJlY3Rpb24pOworKyAgICAgIGdfbWVzc2FnZSAoIkF1ZGlvIG5vdyBhYnNlbnQiKTsKKysgICAg ICB1Z2x5X3NldF9oaWZpICgpOworICAgICB9CisgfQorIAorIAorIHN0YXRpYyB2b2lkCisgYXVk aW9fcHJlc2VudF9jYiAoc3RydWN0IHd5c19kYXRhICpkYXRhLAorLSAgICAgICAgICAgICAgICAg IFd5c0RpcmVjdGlvbiAgICAgZGlyZWN0aW9uLAorICAgICAgICAgICAgICAgICAgIFd5c01vZGVt ICAgICAgICAqbW9kZW0pCisgeworLSAgdXBkYXRlX2F1ZGlvX2NvdW50IChkYXRhLCBkaXJlY3Rp b24sICsxKTsKKysgIHVwZGF0ZV9hdWRpb19jb3VudCAoZGF0YSwgKzEpOworIH0KKyAKKyAKKyBz dGF0aWMgdm9pZAorIGF1ZGlvX2Fic2VudF9jYiAoc3RydWN0IHd5c19kYXRhICpkYXRhLAorLSAg ICAgICAgICAgICAgICAgV3lzRGlyZWN0aW9uICAgICBkaXJlY3Rpb24sCisgICAgICAgICAgICAg ICAgICBXeXNNb2RlbSAgICAgICAgKm1vZGVtKQorIHsKKy0gIHVwZGF0ZV9hdWRpb19jb3VudCAo ZGF0YSwgZGlyZWN0aW9uLCAtMSk7CisrICB1cGRhdGVfYXVkaW9fY291bnQgKGRhdGEsIC0xKTsK KyB9CisgCisgCitAQCAtMTIzLDcgKzE4MCw3IEBAIGFkZF9tb2RlbSAoc3RydWN0IHd5c19kYXRh ICpkYXRhLAorICAgICAgIHJldHVybjsKKyAgICAgfQorIAorLSAgZ19kZWJ1ZyAoIkFkZGluZyBu ZXcgdm9pY2UtY2FwYWJsZSBtb2RlbSBgJXMnIiwgcGF0aCk7CisrICBnX21lc3NhZ2UgKCJBZGRp bmcgbmV3IHZvaWNlLWNhcGFibGUgbW9kZW0gYCVzJyIsIHBhdGgpOworIAorICAgZ19hc3NlcnQg KE1NX0lTX09CSkVDVCAob2JqZWN0KSk7CisgICB2b2ljZSA9IG1tX29iamVjdF9nZXRfbW9kZW1f dm9pY2UgKE1NX09CSkVDVCAob2JqZWN0KSk7CitAQCAtMTUzLDcgKzIxMCw3IEBAIGludGVyZmFj ZV9hZGRlZF9jYiAoc3RydWN0IHd5c19kYXRhICpkYXRhLAorIAorICAgaW5mbyA9IGdfZGJ1c19p bnRlcmZhY2VfZ2V0X2luZm8gKGludGVyZmFjZSk7CisgCistICBnX2RlYnVnICgiTW9kZW1NYW5h Z2VyIGludGVyZmFjZSBgJXMnIGZvdW5kIG9uIG9iamVjdCBgJXMnIiwKKysgIGdfbWVzc2FnZSAo Ik1vZGVtTWFuYWdlciBpbnRlcmZhY2UgYCVzJyBmb3VuZCBvbiBvYmplY3QgYCVzJyIsCisgICAg ICAgICAgICBpbmZvLT5uYW1lLAorICAgICAgICAgICAgZ19kYnVzX29iamVjdF9nZXRfb2JqZWN0 X3BhdGggKG9iamVjdCkpOworIAorQEAgLTE4NCw3ICsyNDEsNyBAQCBpbnRlcmZhY2VfcmVtb3Zl ZF9jYiAoc3RydWN0IHd5c19kYXRhICpkYXRhLAorICAgcGF0aCA9IGdfZGJ1c19vYmplY3RfZ2V0 X29iamVjdF9wYXRoIChvYmplY3QpOworICAgaW5mbyA9IGdfZGJ1c19pbnRlcmZhY2VfZ2V0X2lu Zm8gKGludGVyZmFjZSk7CisgCistICBnX2RlYnVnICgiTW9kZW1NYW5hZ2VyIGludGVyZmFjZSBg JXMnIHJlbW92ZWQgb24gb2JqZWN0IGAlcyciLAorKyAgZ19tZXNzYWdlICgiTW9kZW1NYW5hZ2Vy IGludGVyZmFjZSBgJXMnIHJlbW92ZWQgb24gb2JqZWN0IGAlcyciLAorICAgICAgICAgICAgaW5m by0+bmFtZSwgcGF0aCk7CisgCisgICBpZiAoZ19zdHJjbXAwIChpbmZvLT5uYW1lLCBNTV9EQlVT X0lOVEVSRkFDRV9NT0RFTV9WT0lDRSkgPT0gMCkKK0BAIC0yMjksNyArMjg2LDcgQEAgdm9pZAor IG9iamVjdF9hZGRlZF9jYiAoc3RydWN0IHd5c19kYXRhICpkYXRhLAorICAgICAgICAgICAgICAg ICAgR0RCdXNPYmplY3QgICAgICpvYmplY3QpCisgeworLSAgZ19kZWJ1ZyAoIk1vZGVtTWFuYWdl ciBvYmplY3QgYCVzJyBhZGRlZCIsCisrICBnX21lc3NhZ2UgKCJNb2RlbU1hbmFnZXIgb2JqZWN0 IGAlcycgYWRkZWQiLAorICAgICAgICAgICAgZ19kYnVzX29iamVjdF9nZXRfb2JqZWN0X3BhdGgg KG9iamVjdCkpOworIAorICAgYWRkX21tX29iamVjdCAoZGF0YSwgb2JqZWN0KTsKK0BAIC0yNDMs NyArMzAwLDcgQEAgb2JqZWN0X3JlbW92ZWRfY2IgKHN0cnVjdCB3eXNfZGF0YSAqZGF0YSwKKyAg IGNvbnN0IGdjaGFyICpwYXRoOworIAorICAgcGF0aCA9IGdfZGJ1c19vYmplY3RfZ2V0X29iamVj dF9wYXRoIChvYmplY3QpOworLSAgZ19kZWJ1ZyAoIk1vZGVtTWFuYWdlciBvYmplY3QgYCVzJyBy ZW1vdmVkIiwgcGF0aCk7CisrICBnX21lc3NhZ2UgKCJNb2RlbU1hbmFnZXIgb2JqZWN0IGAlcycg cmVtb3ZlZCIsIHBhdGgpOworIAorICAgcmVtb3ZlX21vZGVtX29iamVjdCAoZGF0YSwgcGF0aCwg b2JqZWN0KTsKKyB9CitAQCAtMjg2LDcgKzM0Myw3IEBAIG1tX2FwcGVhcmVkX2NiIChHREJ1c0Nv bm5lY3Rpb24gKmNvbm5lY3Rpb24sCisgICAgICAgICAgICAgICAgIGNvbnN0IGdjaGFyICpuYW1l X293bmVyLAorICAgICAgICAgICAgICAgICBzdHJ1Y3Qgd3lzX2RhdGEgKmRhdGEpCisgeworLSAg Z19kZWJ1ZyAoIk1vZGVtTWFuYWdlciBhcHBlYXJlZCBvbiBELUJ1cyIpOworKyAgZ19tZXNzYWdl ICgiTW9kZW1NYW5hZ2VyIGFwcGVhcmVkIG9uIEQtQnVzIik7CisgCisgICBtbV9tYW5hZ2VyX25l dyAoY29ubmVjdGlvbiwKKyAgICAgICAgICAgICAgICAgICBHX0RCVVNfT0JKRUNUX01BTkFHRVJf Q0xJRU5UX0ZMQUdTX05PTkUsCitAQCAtMzEwLDE4ICszNjcsMTQgQEAgbW1fdmFuaXNoZWRfY2Ig KEdEQnVzQ29ubmVjdGlvbiAqY29ubmVjdGlvbiwKKyAgICAgICAgICAgICAgICAgY29uc3QgZ2No YXIgKm5hbWUsCisgICAgICAgICAgICAgICAgIHN0cnVjdCB3eXNfZGF0YSAqZGF0YSkKKyB7Cist ICBnX2RlYnVnICgiTW9kZW1NYW5hZ2VyIHZhbmlzaGVkIGZyb20gRC1CdXMiKTsKKysgIGdfbWVz c2FnZSAoIk1vZGVtTWFuYWdlciB2YW5pc2hlZCBmcm9tIEQtQnVzIik7CisgICBjbGVhcl9kYnVz IChkYXRhKTsKKyB9CisgCisgCisgc3RhdGljIHZvaWQKKy1zZXRfdXAgKHN0cnVjdCB3eXNfZGF0 YSAqZGF0YSwKKy0gICAgICAgIGNvbnN0IGdjaGFyICpjb2RlYywKKy0gICAgICAgIGNvbnN0IGdj aGFyICptb2RlbSkKKytzZXRfdXAgKHN0cnVjdCB3eXNfZGF0YSAqZGF0YSkKKyB7CistICBkYXRh LT5hdWRpbyA9IHd5c19hdWRpb19uZXcgKGNvZGVjLCBtb2RlbSk7CistCisgICBkYXRhLT5tb2Rl bXMgPSBnX2hhc2hfdGFibGVfbmV3X2Z1bGwgKGdfc3RyX2hhc2gsIGdfc3RyX2VxdWFsLAorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnX2ZyZWUsIGdfb2JqZWN0X3Vu cmVmKTsKKyAKK0BAIC0zMzMsNyArMzg2LDcgQEAgc2V0X3VwIChzdHJ1Y3Qgd3lzX2RhdGEgKmRh dGEsCisgICAgICAgICAgICAgICAgICAgICAgIChHQnVzTmFtZVZhbmlzaGVkQ2FsbGJhY2spbW1f dmFuaXNoZWRfY2IsCisgICAgICAgICAgICAgICAgICAgICAgIGRhdGEsIE5VTEwpOworIAorLSAg Z19kZWJ1ZyAoIldhdGNoaW5nIGZvciBNb2RlbU1hbmFnZXIiKTsKKysgIGdfbWVzc2FnZSAoIldh dGNoaW5nIGZvciBNb2RlbU1hbmFnZXIiKTsKKyB9CisgCisgCitAQCAtMzQzLDIzICszOTYsMTkg QEAgdGVhcl9kb3duIChzdHJ1Y3Qgd3lzX2RhdGEgKmRhdGEpCisgICBjbGVhcl9kYnVzIChkYXRh KTsKKyAgIGdfYnVzX3Vud2F0Y2hfbmFtZSAoZGF0YS0+d2F0Y2hfaWQpOworICAgZ19oYXNoX3Rh YmxlX3VucmVmIChkYXRhLT5tb2RlbXMpOworLSAgZ19vYmplY3RfdW5yZWYgKEdfT0JKRUNUIChk YXRhLT5hdWRpbykpOworIH0KKyAKKyAKKyBzdGF0aWMgdm9pZAorLXJ1biAoY29uc3QgZ2NoYXIg KmNvZGVjLAorLSAgICAgY29uc3QgZ2NoYXIgKm1vZGVtKQorK3J1biAodm9pZCkKKyB7CisgICBz dHJ1Y3Qgd3lzX2RhdGEgZGF0YTsKKyAKKyAgIG1lbXNldCAoJmRhdGEsIDAsIHNpemVvZiAoc3Ry dWN0IHd5c19kYXRhKSk7CistICBzZXRfdXAgKCZkYXRhLCBjb2RlYywgbW9kZW0pOworKyAgc2V0 X3VwICgmZGF0YSk7CisgCisgICBtYWluX2xvb3AgPSBnX21haW5fbG9vcF9uZXcgKE5VTEwsIEZB TFNFKTsKKyAKKy0gIHByaW50ZiAoQVBQTElDQVRJT05fTkFNRSAiIHN0YXJ0ZWQgd2l0aCBjb2Rl YyBgJXMnLCBtb2RlbSBgJXMnXG4iLAorLSAgICAgICAgICBjb2RlYywgbW9kZW0pOworICAgZ19t YWluX2xvb3BfcnVuIChtYWluX2xvb3ApOworIAorICAgZ19tYWluX2xvb3BfdW5yZWYgKG1haW5f bG9vcCk7CitAQCAtMzY4LDMzICs0MTcsNiBAQCBydW4gKGNvbnN0IGdjaGFyICpjb2RlYywKKyAg IHRlYXJfZG93biAoJmRhdGEpOworIH0KKyAKKy0KKy1zdGF0aWMgdm9pZAorLWNoZWNrX21hY2hp bmUgKGNvbnN0IGdjaGFyICptYWNoaW5lKQorLXsKKy0gIGdib29sZWFuIG9rLCBwYXNzZWQ7Cist ICBHRXJyb3IgKmVycm9yID0gTlVMTDsKKy0KKy0gIG9rID0gbWNoa19jaGVja19tYWNoaW5lIChB UFBfREFUQV9OQU1FLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hY2hpbmUsCistICAg ICAgICAgICAgICAgICAgICAgICAgICAgJnBhc3NlZCwKKy0gICAgICAgICAgICAgICAgICAgICAg ICAgICAmZXJyb3IpOworLSAgaWYgKCFvaykKKy0gICAgeworLSAgICAgIGdfd2FybmluZyAoIkVy cm9yIGNoZWNraW5nIG1hY2hpbmUgbmFtZSBhZ2FpbnN0IgorLSAgICAgICAgICAgICAgICAgIiB3 aGl0ZWxpc3QvYmxhY2tsaXN0LCBjb250aW51aW5nIGFueXdheSIpOworLSAgICAgIGdfZXJyb3Jf ZnJlZSAoZXJyb3IpOworLSAgICB9CistICBlbHNlIGlmICghcGFzc2VkKQorLSAgICB7CistICAg ICAgZ19tZXNzYWdlICgiTWFjaGluZSBuYW1lIGAlcycgZGlkIG5vdCBwYXNzIgorLSAgICAgICAg ICAgICAgICAgIiB3aGl0ZWxpc3QvYmxhY2tsaXN0IGNoZWNrLCBleGl0aW5nIiwKKy0gICAgICAg ICAgICAgICAgIG1hY2hpbmUpOworLSAgICAgIGV4aXQgKEVYSVRfU1VDQ0VTUyk7CistICAgIH0K Ky19CistCistCisgc3RhdGljIHZvaWQKKyB0ZXJtaW5hdGUgKGludCBzaWduYWwpCisgeworQEAg LTQ1MiwyMjIgKzQ1MiwxOCBAQCBzZXR1cF9zaWduYWxzICgpCisgfQorIAorIAorLS8qKiBUaGlz IGZ1bmN0aW9uIHdpbGwgY2xvc2UgQGZkICovCistc3RhdGljIGdjaGFyICoKKy1yZWFkX21hY2hp bmVfY29uZl9maWxlIChjb25zdCBnY2hhciAqZmlsZW5hbWUsCistICAgICAgICAgICAgICAgICAg ICAgICAgaW50ICAgICAgICAgIGZkKQorLXsKKy0gIEdJbnB1dFN0cmVhbSAqdW5peF9zdHJlYW07 CistICBHRGF0YUlucHV0U3RyZWFtICpkYXRhX3N0cmVhbTsKKy0gIGdib29sZWFuIHRyeV9hZ2Fp bjsKKy0gIGdjaGFyICpsaW5lOworLSAgR0Vycm9yICplcnJvciA9IE5VTEw7CistCistICBnX2Rl YnVnICgiUmVhZGluZyBtYWNoaW5lIGNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnIiwgZmlsZW5hbWUp OworLQorLSAgdW5peF9zdHJlYW0gPSBnX3VuaXhfaW5wdXRfc3RyZWFtX25ldyAoZmQsIFRSVUUp OworLSAgZ19hc3NlcnQgKHVuaXhfc3RyZWFtICE9IE5VTEwpOworLQorLSAgZGF0YV9zdHJlYW0g PSBnX2RhdGFfaW5wdXRfc3RyZWFtX25ldyAodW5peF9zdHJlYW0pOworLSAgZ19hc3NlcnQgKGRh dGFfc3RyZWFtICE9IE5VTEwpOworLSAgZ19vYmplY3RfdW5yZWYgKHVuaXhfc3RyZWFtKTsKKy0K Ky0gIGRvCistICAgIHsKKy0gICAgICB0cnlfYWdhaW4gPSBGQUxTRTsKKy0KKy0gICAgICBsaW5l ID0gZ19kYXRhX2lucHV0X3N0cmVhbV9yZWFkX2xpbmVfdXRmOAorLSAgICAgICAgKGRhdGFfc3Ry ZWFtLCBOVUxMLCBOVUxMLCAmZXJyb3IpOworLQorLSAgICAgIGlmIChlcnJvcikKKy0gICAgICAg IHsKKy0gICAgICAgICAgZ193YXJuaW5nICgiRXJyb3IgcmVhZGluZyBmcm9tIG1hY2hpbmUiCist ICAgICAgICAgICAgICAgICAgICAgIiBjb25maWd1cmF0aW9uIGZpbGUgYCVzJzogJXMiLAorLSAg ICAgICAgICAgICAgICAgICAgIGZpbGVuYW1lLCBlcnJvci0+bWVzc2FnZSk7CistICAgICAgICAg IGdfZXJyb3JfZnJlZSAoZXJyb3IpOworLSAgICAgICAgfQorLSAgICAgIGVsc2UgaWYgKGxpbmUp CistICAgICAgICB7CistICAgICAgICAgIGdfc3Ryc3RyaXAgKGxpbmUpOworLQorLSAgICAgICAg ICAvLyBTa2lwIGNvbW1lbnRzIGFuZCBlbXB0eSBsaW5lcworLSAgICAgICAgICBpZiAobGluZVsw XSA9PSAnIycgfHwgbGluZVswXSA9PSAnXDAnKQorLSAgICAgICAgICAgIHsKKy0gICAgICAgICAg ICAgIGdfZnJlZSAobGluZSk7CistICAgICAgICAgICAgICB0cnlfYWdhaW4gPSBUUlVFOworLSAg ICAgICAgICAgIH0KKy0gICAgICAgIH0KKy0gICAgfQorLSAgd2hpbGUgKHRyeV9hZ2Fpbik7Cist CistICBnX29iamVjdF91bnJlZiAoZGF0YV9zdHJlYW0pOworLSAgcmV0dXJuIGxpbmU7CistfQor LQorLQorLXN0YXRpYyBnY2hhciAqCistZGlyX21hY2hpbmVfY29uZiAoY29uc3QgZ2NoYXIgKmRp ciwKKy0gICAgICAgICAgICAgICAgICBjb25zdCBnY2hhciAqbWFjaGluZSwKKy0gICAgICAgICAg ICAgICAgICBjb25zdCBnY2hhciAqa2V5KQorLXsKKy0gIGdjaGFyICpmaWxlbmFtZTsKKy0gIGlu dCBmZDsKKy0gIGdjaGFyICp2YWx1ZSA9IE5VTEw7CistCistICBmaWxlbmFtZSA9IGdfYnVpbGRf ZmlsZW5hbWUgKGRpciwgQVBQX0RBVEFfTkFNRSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIm1hY2hpbmUtY29uZiIsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1h Y2hpbmUsIGtleSwgTlVMTCk7CistCistICBnX2RlYnVnICgiVHJ5aW5nIG1hY2hpbmUgY29uZmln dXJhdGlvbiBmaWxlIGAlcyciLAorLSAgICAgICAgICAgZmlsZW5hbWUpOworLQorLSAgZmQgPSBn X29wZW4gKGZpbGVuYW1lLCBPX1JET05MWSwgMCk7CistICBpZiAoZmQgPT0gLTEpCistICAgIHsK Ky0gICAgICBpZiAoZXJybm8gIT0gRU5PRU5UKQorLSAgICAgICAgeworLSAgICAgICAgICAvLyBU aGUgZXJyb3IgaXNuJ3QgdGhhdCB0aGUgZmlsZSBkb2Vzbid0IGV4aXN0CistICAgICAgICAgIGdf d2FybmluZyAoIkVycm9yIG9wZW5pbmcgbWFjaGluZSIKKy0gICAgICAgICAgICAgICAgICAgICAi IGNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnOiAlcyIsCistICAgICAgICAgICAgICAgICAgICAgZmls ZW5hbWUsIGdfc3RyZXJyb3IgKGVycm5vKSk7CistICAgICAgICB9CistICAgIH0KKy0gIGVsc2UK Ky0gICAgeworLSAgICAgIHZhbHVlID0gcmVhZF9tYWNoaW5lX2NvbmZfZmlsZSAoZmlsZW5hbWUs IGZkKTsKKy0gICAgfQorLQorLSAgZ19mcmVlIChmaWxlbmFtZSk7CistICByZXR1cm4gdmFsdWU7 CistfQorLQorLQorLXN0YXRpYyBnY2hhciAqCistbWFjaGluZV9jb25mIChjb25zdCBnY2hhciAq bWFjaGluZSwKKy0gICAgICAgICAgICAgIGNvbnN0IGdjaGFyICprZXkpCisteworLSAgZ2NoYXIg KnZhbHVlID0gTlVMTDsKKy0gIGNvbnN0IGdjaGFyICogY29uc3QgKmRpcnMsICogY29uc3QgKmRp cjsKKy0KKy0KKy0jZGVmaW5lIHRyeV9kaXIoZCkgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFwKKy0gIHZhbHVlID0gZGlyX21hY2hpbmVfY29uZiAoZCwgbWFjaGluZSwga2V5 KTsgICAgICAgICAgIFwKKy0gIGlmICh2YWx1ZSkgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFwKKy0gICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFwKKy0gICAgICByZXR1cm4gdmFsdWU7ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFwKKy0gICAgfQorLQorLQorLSAgdHJ5X2RpciAoZ19nZXRf dXNlcl9jb25maWdfZGlyICgpKTsKKy0KKy0gIGRpcnMgPSBnX2dldF9zeXN0ZW1fY29uZmlnX2Rp cnMgKCk7CistICBmb3IgKGRpciA9IGRpcnM7ICpkaXI7ICsrZGlyKQorLSAgICB7CistICAgICAg dHJ5X2RpciAoKmRpcik7CistICAgIH0KKy0KKy0gIHRyeV9kaXIgKFNZU0NPTkZESVIpOworLSAg dHJ5X2RpciAoREFUQURJUik7CistCistICBkaXJzID0gZ19nZXRfc3lzdGVtX2RhdGFfZGlycyAo KTsKKy0gIGZvciAoZGlyID0gZGlyczsgKmRpcjsgKytkaXIpCistICAgIHsKKy0gICAgICB0cnlf ZGlyICgqZGlyKTsKKy0gICAgfQorLQorLSN1bmRlZiB0cnlfZGlyCistCistICByZXR1cm4gTlVM TDsKKy19CistCistCistc3RhdGljIHZvaWQKKy1lbnN1cmVfYWxzYV9jYXJkIChjb25zdCBnY2hh ciAgKm1hY2hpbmUsCistICAgICAgICAgICAgICAgICAgY29uc3QgZ2NoYXIgICp2YXIsCistICAg ICAgICAgICAgICAgICAgY29uc3QgZ2NoYXIgICprZXksCistICAgICAgICAgICAgICAgICAgICAg ICAgZ2NoYXIgKipuYW1lKQorLXsKKy0gIGNvbnN0IGdjaGFyICplbnY7CistCistICBpZiAoKm5h bWUpCistICAgIHsKKy0gICAgICByZXR1cm47CistICAgIH0KKy0KKy0gIGVudiA9IGdfZ2V0ZW52 ICh2YXIpOworLSAgaWYgKGVudikKKy0gICAgeworLSAgICAgICpuYW1lID0gZ19zdHJkdXAgKGVu dik7CistICAgICAgcmV0dXJuOworLSAgICB9CistCistICBpZiAobWFjaGluZSkKKy0gICAgewor LSAgICAgICpuYW1lID0gbWFjaGluZV9jb25mIChtYWNoaW5lLCBrZXkpOworLSAgICAgIGlmICgq bmFtZSkKKy0gICAgICAgIHsKKy0gICAgICAgICAgcmV0dXJuOworLSAgICAgICAgfQorLSAgICB9 CistCistICBnX3dhcm5pbmcgKCJObyAlcyBzcGVjaWZpZWQgd2l0aCBhIG1hY2hpbmUgY29uZmln dXJhdGlvbiBmaWxlIgorLSAgICAgICAgICAgICAiLCBlbnZpcm9ubWVudCB2YXJpYWJsZSBvciBj b21tYW5kIGxpbmUgb3B0aW9uIgorLSAgICAgICAgICAgICAiOyByZWZ1c2luZyB0byBydW4iLCBr ZXkpOworLSAgZXhpdCAoRVhJVF9TVUNDRVNTKTsKKy19CistCistCisgaW50CisgbWFpbiAoaW50 IGFyZ2MsIGNoYXIgKiphcmd2KQorIHsKKyAgIEdFcnJvciAqZXJyb3IgPSBOVUxMOworICAgR09w dGlvbkNvbnRleHQgKmNvbnRleHQ7CisgICBnYm9vbGVhbiBvazsKKy0gIGdfYXV0b2ZyZWUgZ2No YXIgKmNvZGVjID0gTlVMTDsKKy0gIGdfYXV0b2ZyZWUgZ2NoYXIgKm1vZGVtID0gTlVMTDsKKy0g IGdfYXV0b2ZyZWUgZ2NoYXIgKm1hY2hpbmUgPSBOVUxMOworLQorLSAgR09wdGlvbkVudHJ5IG9w dGlvbnNbXSA9CistICAgIHsKKy0gICAgICB7ICJjb2RlYyIsICdjJywgMCwgR19PUFRJT05fQVJH X1NUUklORywgJmNvZGVjLCAiTmFtZSBvZiB0aGUgY29kZWMncyBBTFNBIGNhcmQiLCAiTkFNRSIg fSwKKy0gICAgICB7ICJtb2RlbSIsICdtJywgMCwgR19PUFRJT05fQVJHX1NUUklORywgJm1vZGVt LCAiTmFtZSBvZiB0aGUgbW9kZW0ncyBBTFNBIGNhcmQiLCAiTkFNRSIgfSwKKy0gICAgICB7IE5V TEwgfQorLSAgICB9OworIAorICAgc2V0bG9jYWxlKExDX0FMTCwgIiIpOworIAorLSAgbWFjaGlu ZSA9IG1jaGtfcmVhZF9tYWNoaW5lIChOVUxMKTsKKy0gIGlmIChtYWNoaW5lKQorLSAgICB7Cist ICAgICAgY2hlY2tfbWFjaGluZSAobWFjaGluZSk7CistICAgIH0KKy0gIGVsc2UKKy0gICAgewor LSAgICAgIGdfd2FybmluZyAoIkNvdWxkIG5vdCByZWFkIG1hY2hpbmUgbmFtZSwgY29udGludWlu ZyB3aXRob3V0IG1hY2hpbmUgY2hlY2siKTsKKy0gICAgfQorLQorLQorLSAgY29udGV4dCA9IGdf b3B0aW9uX2NvbnRleHRfbmV3ICgiLSBzZXQgdXAgUHVsc2VBdWRpbyBsb29wYmFjayBmb3IgcGhv bmUgY2FsbCBhdWRpbyIpOworLSAgZ19vcHRpb25fY29udGV4dF9hZGRfbWFpbl9lbnRyaWVzIChj b250ZXh0LCBvcHRpb25zLCBOVUxMKTsKKy0gIG9rID0gZ19vcHRpb25fY29udGV4dF9wYXJzZSAo Y29udGV4dCwgJmFyZ2MsICZhcmd2LCAmZXJyb3IpOworLSAgaWYgKCFvaykKKy0gICAgeworLSAg ICAgIGdfcHJpbnQgKCJFcnJvciBwYXJzaW5nIG9wdGlvbnM6ICVzXG4iLCBlcnJvci0+bWVzc2Fn ZSk7CistICAgIH0KKy0KKy0KKy0gIGlmIChtYWNoaW5lKQorLSAgICB7CistICAgICAgLyogQ29u dmVydCBhbnkgZGlyZWN0b3J5IHNlcGFyYXRvciBjaGFyYWN0ZXJzIHRvICJfIiAqLworLSAgICAg IGdfc3RyZGVsaW1pdCAobWFjaGluZSwgR19ESVJfU0VQQVJBVE9SX1MsICdfJyk7CistICAgIH0K Ky0KKy0gIGVuc3VyZV9hbHNhX2NhcmQgKG1hY2hpbmUsICJXWVNfQ09ERUMiLCAiY29kZWMiLCAm Y29kZWMpOworLSAgZW5zdXJlX2Fsc2FfY2FyZCAobWFjaGluZSwgIldZU19NT0RFTSIsICJtb2Rl bSIsICZtb2RlbSk7CistCisgICBzZXR1cF9zaWduYWxzICgpOworIAorLSAgcnVuIChjb2RlYywg bW9kZW0pOworKyAgcnVuICgpOworIAorICAgcmV0dXJuIDA7CisgfQorZGlmZiAtLWdpdCBzcmMv bWVzb24uYnVpbGQgc3JjL21lc29uLmJ1aWxkCitpbmRleCA3Yjk5MjM1Li5hOGEzMGQ3IDEwMDY0 NAorLS0tIHNyYy9tZXNvbi5idWlsZAorKysrIHNyYy9tZXNvbi5idWlsZAorQEAgLTIyLDEzICsy MiwxMCBAQAorIGdub21lID0gaW1wb3J0KCdnbm9tZScpCisgCisgd3lzX2RlcHMgPSBbCistICBs aWJtY2hrX2RlcCwKKyAgIGRlcGVuZGVuY3koJ2dvYmplY3QtMi4wJyksCisgICBkZXBlbmRlbmN5 KCdnaW8tdW5peC0yLjAnKSwKKyAgIGRlcGVuZGVuY3koJ01vZGVtTWFuYWdlcicpLAorICAgZGVw ZW5kZW5jeSgnbW0tZ2xpYicpLAorLSAgZGVwZW5kZW5jeSgnbGlicHVsc2UnKSwKKy0gIGRlcGVu ZGVuY3koJ2xpYnB1bHNlLW1haW5sb29wLWdsaWInKSwKKyBdCisgCisgY29uZmlnX2ggPSBjb25m aWd1cmVfZmlsZSAoCitAQCAtMzYsMjAgKzMzLDEzIEBAIGNvbmZpZ19oID0gY29uZmlndXJlX2Zp bGUgKAorICAgY29uZmlndXJhdGlvbjogY29uZmlnX2RhdGEKKyApCisgCistd3lzX2VudW1faGVh ZGVycyA9IGZpbGVzKFsnd3lzLWRpcmVjdGlvbi5oJ10pCistd3lzX2VudW1fc291cmNlcyA9IGdu b21lLm1rZW51bXNfc2ltcGxlKCdlbnVtLXR5cGVzJywKKy0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgc291cmNlcyA6IHd5c19lbnVtX2hlYWRlcnMpCistCisgZXhlY3V0 YWJsZSAoCisgICAnd3lzJywKKyAgIGNvbmZpZ19oLAorLSAgd3lzX2VudW1fc291cmNlcywKKyAg IFsKKyAgICAgJ21haW4uYycsCisgICAgICd1dGlsLmgnLCAndXRpbC5jJywKKy0gICAgJ3d5cy1k aXJlY3Rpb24uaCcsICd3eXMtZGlyZWN0aW9uLmMnLAorICAgICAnd3lzLW1vZGVtLmgnLCAnd3lz LW1vZGVtLmMnLAorLSAgICAnd3lzLWF1ZGlvLmgnLCAnd3lzLWF1ZGlvLmMnLAorICAgXSwKKyAg IGRlcGVuZGVuY2llcyA6IHd5c19kZXBzLAorICAgaW5jbHVkZV9kaXJlY3RvcmllcyA6IGluY2x1 ZGVfZGlyZWN0b3JpZXMoJy4uJyksCitkaWZmIC0tZ2l0IHNyYy93eXMtbW9kZW0uYyBzcmMvd3lz LW1vZGVtLmMKK2luZGV4IDIxMmY5OTIuLjUxYTA1NzUgMTAwNjQ0CistLS0gc3JjL3d5cy1tb2Rl bS5jCisrKysgc3JjL3d5cy1tb2RlbS5jCitAQCAtMjQsMTggKzI0LDEwIEBACisgCisgCisgI2lu Y2x1ZGUgInd5cy1tb2RlbS5oIgorLSNpbmNsdWRlICJ3eXMtZGlyZWN0aW9uLmgiCisgI2luY2x1 ZGUgInV0aWwuaCIKKy0jaW5jbHVkZSAiZW51bS10eXBlcy5oIgorIAorICNpbmNsdWRlIDxnbGli L2dpMThuLmg+CisgCistc3RhdGljIGNvbnN0IGdjaGFyICogY29uc3QgV1lTX01PREVNX0hBU19B VURJT1tdID0KKy0gIHsKKy0gICBbV1lTX0RJUkVDVElPTl9GUk9NX05FVFdPUktdID0gInd5cy1o YXMtYXVkaW8tZnJvbS1uZXR3b3JrIiwKKy0gICBbV1lTX0RJUkVDVElPTl9UT19ORVRXT1JLXSAg ID0gInd5cy1oYXMtYXVkaW8tdG8tbmV0d29yayIKKy0gIH07CistCisgc3RydWN0IF9XeXNNb2Rl bQorIHsKKyAgIEdPYmplY3QgcGFyZW50X2luc3RhbmNlOworQEAgLTQzLDggKzM1LDggQEAgc3Ry dWN0IF9XeXNNb2RlbQorICAgTU1Nb2RlbVZvaWNlICp2b2ljZTsKKyAgIC8qKiBNYXAgb2YgRC1C dXMgb2JqZWN0IHBhdGhzIHRvIE1NQ2FsbCBvYmplY3RzICovCisgICBHSGFzaFRhYmxlICpjYWxs czsKKy0gIC8qKiBIb3cgbWFueSBjYWxscyBoYXZlIGF1ZGlvLCBpbiBlYWNoIGRpcmVjdGlvbiAq LworLSAgZ3VpbnQgYXVkaW9fY291bnRbMl07CisrICAvKiogSG93IG1hbnkgY2FsbHMgaGF2ZSBh dWRpbyAqLworKyAgZ3VpbnQgYXVkaW9fY291bnQ7CisgfTsKKyAKKyBHX0RFRklORV9UWVBFKFd5 c01vZGVtLCB3eXNfbW9kZW0sIEdfVFlQRV9PQkpFQ1QpCitAQCAtNjUsMTUgKzU3LDExIEBAIHN0 YXRpYyBndWludCBzaWduYWxzIFtTSUdOQUxfTEFTVF9TSUdOQUxdOworIAorIAorIHN0YXRpYyBn Ym9vbGVhbgorLWNhbGxfc3RhdGVfaGFzX2F1ZGlvIChXeXNEaXJlY3Rpb24gZGlyZWN0aW9uLAor LSAgICAgICAgICAgICAgICAgICAgICBNTUNhbGxTdGF0ZSAgc3RhdGUpCisrY2FsbF9zdGF0ZV9o YXNfYXVkaW8gKE1NQ2FsbFN0YXRlICBzdGF0ZSkKKyB7CisgICBzd2l0Y2ggKHN0YXRlKQorICAg ICB7CisgICAgIGNhc2UgTU1fQ0FMTF9TVEFURV9SSU5HSU5HX09VVDoKKy0gICAgICByZXR1cm4K Ky0gICAgICAgIChkaXJlY3Rpb24gPT0gV1lTX0RJUkVDVElPTl9GUk9NX05FVFdPUkspCistICAg ICAgICA/IFRSVUUgOiBGQUxTRTsKKyAgICAgY2FzZSBNTV9DQUxMX1NUQVRFX0FDVElWRToKKyAg ICAgICByZXR1cm4gVFJVRTsKKyAgICAgZGVmYXVsdDoKK0BAIC04NCwzOSArNzIsMzUgQEAgY2Fs bF9zdGF0ZV9oYXNfYXVkaW8gKFd5c0RpcmVjdGlvbiBkaXJlY3Rpb24sCisgCisgc3RhdGljIHZv aWQKKyB1cGRhdGVfYXVkaW9fY291bnQgKFd5c01vZGVtICAgICAqc2VsZiwKKy0gICAgICAgICAg ICAgICAgICAgIFd5c0RpcmVjdGlvbiAgZGlyZWN0aW9uLAorICAgICAgICAgICAgICAgICAgICAg Z2ludCAgICAgICAgICBkZWx0YSkKKyB7CistICBjb25zdCBndWludCBvbGRfY291bnQgPSBzZWxm LT5hdWRpb19jb3VudFtkaXJlY3Rpb25dOworKyAgY29uc3QgZ3VpbnQgb2xkX2NvdW50ID0gc2Vs Zi0+YXVkaW9fY291bnQ7CisgCistICBnX2Fzc2VydCAoZGVsdGEgPj0gMCB8fCBzZWxmLT5hdWRp b19jb3VudFtkaXJlY3Rpb25dID4gMCk7CisrICBnX2Fzc2VydCAoZGVsdGEgPj0gMCB8fCBzZWxm LT5hdWRpb19jb3VudCA+IDApOworIAorLSAgc2VsZi0+YXVkaW9fY291bnRbZGlyZWN0aW9uXSAr PSBkZWx0YTsKKysgIHNlbGYtPmF1ZGlvX2NvdW50ICs9IGRlbHRhOworIAorLSAgaWYgKHNlbGYt PmF1ZGlvX2NvdW50W2RpcmVjdGlvbl0gPiAwICYmIG9sZF9jb3VudCA9PSAwKQorKyAgaWYgKHNl bGYtPmF1ZGlvX2NvdW50ID4gMCAmJiBvbGRfY291bnQgPT0gMCkKKyAgICAgeworLSAgICAgIGdf ZGVidWcgKCJNb2RlbSBgJXMnIGF1ZGlvICVzIG5vdyBwcmVzZW50IiwKKy0gICAgICAgICAgICAg ICBtbV9tb2RlbV92b2ljZV9nZXRfcGF0aCAoc2VsZi0+dm9pY2UpLAorLSAgICAgICAgICAgICAg IHd5c19kaXJlY3Rpb25fZ2V0X2Rlc2NyaXB0aW9uIChkaXJlY3Rpb24pKTsKKy0gICAgICBnX3Np Z25hbF9lbWl0X2J5X25hbWUgKHNlbGYsICJhdWRpby1wcmVzZW50IiwgZGlyZWN0aW9uKTsKKysg ICAgICBnX21lc3NhZ2UgKCJNb2RlbSBgJXMnIGF1ZGlvIG5vdyBwcmVzZW50IiwKKysgICAgICAg ICAgICAgICAgIG1tX21vZGVtX3ZvaWNlX2dldF9wYXRoIChzZWxmLT52b2ljZSkpOworKyAgICAg IGdfc2lnbmFsX2VtaXRfYnlfbmFtZSAoc2VsZiwgImF1ZGlvLXByZXNlbnQiKTsKKyAgICAgfQor LSAgZWxzZSBpZiAoc2VsZi0+YXVkaW9fY291bnRbZGlyZWN0aW9uXSA9PSAwICYmIG9sZF9jb3Vu dCA+IDApCisrICBlbHNlIGlmIChzZWxmLT5hdWRpb19jb3VudCA9PSAwICYmIG9sZF9jb3VudCA+ IDApCisgICAgIHsKKy0gICAgICBnX2RlYnVnICgiTW9kZW0gYCVzJyBhdWRpbyBub3cgYWJzZW50 IiwKKy0gICAgICAgICAgICAgICBtbV9tb2RlbV92b2ljZV9nZXRfcGF0aCAoc2VsZi0+dm9pY2Up KTsKKy0gICAgICBnX3NpZ25hbF9lbWl0X2J5X25hbWUgKHNlbGYsICJhdWRpby1hYnNlbnQiLCBk aXJlY3Rpb24pOworKyAgICAgIGdfbWVzc2FnZSAoIk1vZGVtIGAlcycgYXVkaW8gbm93IGFic2Vu dCIsCisrICAgICAgICAgICAgICAgICBtbV9tb2RlbV92b2ljZV9nZXRfcGF0aCAoc2VsZi0+dm9p Y2UpKTsKKysgICAgICBnX3NpZ25hbF9lbWl0X2J5X25hbWUgKHNlbGYsICJhdWRpby1hYnNlbnQi KTsKKyAgICAgfQorIH0KKyAKKyAKKyBzdGF0aWMgZ2Jvb2xlYW4KKy1nZXRfY2FsbF9oYXNfYXVk aW8gKE1NQ2FsbCAgICAgICAqbW1fY2FsbCwKKy0gICAgICAgICAgICAgICAgICAgIFd5c0RpcmVj dGlvbiAgZGlyZWN0aW9uKQorK2dldF9jYWxsX2hhc19hdWRpbyAoTU1DYWxsICptbV9jYWxsKQor IHsKKyAgIGdwb2ludGVyIGRhdGE7CisgCistICBkYXRhID0gZ19vYmplY3RfZ2V0X2RhdGEgKEdf T0JKRUNUIChtbV9jYWxsKSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgV1lTX01PREVN X0hBU19BVURJT1tkaXJlY3Rpb25dKTsKKysgIGRhdGEgPSBnX29iamVjdF9nZXRfZGF0YSAoR19P QkpFQ1QgKG1tX2NhbGwpLCAiYXVkaW8tc3RhdGUiKTsKKyAKKyAgIHJldHVybiAoZ2Jvb2xlYW4p KEdQT0lOVEVSX1RPX1VJTlQgKGRhdGEpKTsKKyB9CitAQCAtMTI0LDQyICsxMDgsMzggQEAgZ2V0 X2NhbGxfaGFzX2F1ZGlvIChNTUNhbGwgICAgICAgKm1tX2NhbGwsCisgCisgc3RhdGljIHZvaWQK KyBzZXRfY2FsbF9oYXNfYXVkaW8gKE1NQ2FsbCAgICAgICAqbW1fY2FsbCwKKy0gICAgICAgICAg ICAgICAgICAgIFd5c0RpcmVjdGlvbiAgZGlyZWN0aW9uLAorICAgICAgICAgICAgICAgICAgICAg Z2Jvb2xlYW4gICAgICBoYXNfYXVkaW8pCisgeworICAgZ19vYmplY3Rfc2V0X2RhdGEgKEdfT0JK RUNUIChtbV9jYWxsKSwKKy0gICAgICAgICAgICAgICAgICAgICBXWVNfTU9ERU1fSEFTX0FVRElP W2RpcmVjdGlvbl0sCisrICAgICAgICAgICAgICAgICAgICAgImF1ZGlvLXN0YXRlIiwKKyAgICAg ICAgICAgICAgICAgICAgICBHVUlOVF9UT19QT0lOVEVSICgoZ3VpbnQpaGFzX2F1ZGlvKSk7Cisg fQorIAorIAorIHN0YXRpYyB2b2lkCistdXBkYXRlX2RpcmVjdGlvbl9zdGF0ZSAoV3lzTW9kZW0g ICAgICpzZWxmLAorLSAgICAgICAgICAgICAgICAgICAgICAgIE1NQ2FsbCAgICAgICAqbW1fY2Fs bCwKKy0gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnY2hhciAgKnBhdGgsCistICAgICAg ICAgICAgICAgICAgICAgICAgV3lzRGlyZWN0aW9uICBkaXJlY3Rpb24sCistICAgICAgICAgICAg ICAgICAgICAgICAgTU1DYWxsU3RhdGUgICBvbGRfc3RhdGUsCistICAgICAgICAgICAgICAgICAg ICAgICAgTU1DYWxsU3RhdGUgICBuZXdfc3RhdGUpCisrdXBkYXRlX2NhbGxfc3RhdGUgKFd5c01v ZGVtICAgICAqc2VsZiwKKysgICAgICAgICAgICAgICAgICAgTU1DYWxsICAgICAgICptbV9jYWxs LAorKyAgICAgICAgICAgICAgICAgICBjb25zdCBnY2hhciAgKnBhdGgsCisrICAgICAgICAgICAg ICAgICAgIE1NQ2FsbFN0YXRlICAgb2xkX3N0YXRlLAorKyAgICAgICAgICAgICAgICAgICBNTUNh bGxTdGF0ZSAgIG5ld19zdGF0ZSkKKyB7CistICBnYm9vbGVhbiBoYWRfYXVkaW8gID0gY2FsbF9z dGF0ZV9oYXNfYXVkaW8gKGRpcmVjdGlvbiwgb2xkX3N0YXRlKTsKKy0gIGdib29sZWFuIGhhdmVf YXVkaW8gPSBjYWxsX3N0YXRlX2hhc19hdWRpbyAoZGlyZWN0aW9uLCBuZXdfc3RhdGUpOworKyAg Z2Jvb2xlYW4gaGFkX2F1ZGlvICA9IGNhbGxfc3RhdGVfaGFzX2F1ZGlvIChvbGRfc3RhdGUpOwor KyAgZ2Jvb2xlYW4gaGF2ZV9hdWRpbyA9IGNhbGxfc3RhdGVfaGFzX2F1ZGlvIChuZXdfc3RhdGUp OworIAorICAgaWYgKCFoYWRfYXVkaW8gJiYgaGF2ZV9hdWRpbykKKyAgICAgeworLSAgICAgIGdf ZGVidWcgKCJDYWxsIGAlcycgZ2FpbmVkIGF1ZGlvICVzIiwgcGF0aCwKKy0gICAgICAgICAgICAg ICB3eXNfZGlyZWN0aW9uX2dldF9kZXNjcmlwdGlvbiAoZGlyZWN0aW9uKSk7CistICAgICAgdXBk YXRlX2F1ZGlvX2NvdW50IChzZWxmLCBkaXJlY3Rpb24sICsxKTsKKysgICAgICBnX21lc3NhZ2Ug KCJDYWxsIGAlcycgZ2FpbmVkIGF1ZGlvIiwgcGF0aCk7CisrICAgICAgdXBkYXRlX2F1ZGlvX2Nv dW50IChzZWxmLCArMSk7CisgICAgIH0KKyAgIGVsc2UgaWYgKGhhZF9hdWRpbyAmJiAhaGF2ZV9h dWRpbykKKyAgICAgeworLSAgICAgIGdfZGVidWcgKCJDYWxsIGAlcycgbG9zdCBhdWRpbyAlcyIs IHBhdGgsCistICAgICAgICAgICAgICAgd3lzX2RpcmVjdGlvbl9nZXRfZGVzY3JpcHRpb24gKGRp cmVjdGlvbikpOworLSAgICAgIHVwZGF0ZV9hdWRpb19jb3VudCAoc2VsZiwgZGlyZWN0aW9uLCAt MSk7CisrICAgICAgZ19tZXNzYWdlICgiQ2FsbCBgJXMnIGxvc3QgYXVkaW8iLCBwYXRoKTsKKysg ICAgICB1cGRhdGVfYXVkaW9fY291bnQgKHNlbGYsIC0xKTsKKyAgICAgfQorIAorICAgaWYgKGhh ZF9hdWRpbyAhPSBoYXZlX2F1ZGlvKQorICAgICB7CistICAgICAgc2V0X2NhbGxfaGFzX2F1ZGlv IChtbV9jYWxsLCBkaXJlY3Rpb24sIGhhdmVfYXVkaW8pOworKyAgICAgIHNldF9jYWxsX2hhc19h dWRpbyAobW1fY2FsbCwgaGF2ZV9hdWRpbyk7CisgICAgIH0KKyB9CisgCitAQCAtMTc0LDM0ICsx NTQsMjggQEAgY2FsbF9zdGF0ZV9jaGFuZ2VkX2NiIChNbUdkYnVzQ2FsbCAgICAgICAqbW1fZ2Ri dXNfY2FsbCwKKyAgIE1NQ2FsbCAqbW1fY2FsbCA9IE1NX0NBTEwgKG1tX2dkYnVzX2NhbGwpOwor ICAgY29uc3QgZ2NoYXIgKiBwYXRoID0gbW1fY2FsbF9nZXRfcGF0aCAobW1fY2FsbCk7CisgCist ICBnX2RlYnVnICgiQ2FsbCBgJXMnIHN0YXRlIGNoYW5nZWQsIG5ldzogJWksIG9sZDogJWkiLAor KyAgZ19tZXNzYWdlICgiQ2FsbCBgJXMnIHN0YXRlIGNoYW5nZWQsIG5ldzogJWksIG9sZDogJWki LAorICAgICAgICAgICAgcGF0aCwgKGludCluZXdfc3RhdGUsIChpbnQpb2xkX3N0YXRlKTsKKyAK KyAgIC8vIEZJWE1FOiBkZWFsIHdpdGggY2FsbHMgYmVpbmcgcHV0IG9uIGhvbGQgKG9uZSBjYWxs IGdvZXMKKyAgIC8vIG5vbi1hdWRpbywgYW5vdGhlciBjYWxsIGdvZXMgYXVkaW8gYWZ0ZXIpCisg CistICB1cGRhdGVfZGlyZWN0aW9uX3N0YXRlIChzZWxmLCBtbV9jYWxsLCBwYXRoLAorLSAgICAg ICAgICAgICAgICAgICAgICAgICAgV1lTX0RJUkVDVElPTl9GUk9NX05FVFdPUkssCistICAgICAg ICAgICAgICAgICAgICAgICAgICBvbGRfc3RhdGUsIG5ld19zdGF0ZSk7CistICB1cGRhdGVfZGly ZWN0aW9uX3N0YXRlIChzZWxmLCBtbV9jYWxsLCBwYXRoLAorLSAgICAgICAgICAgICAgICAgICAg ICAgICAgV1lTX0RJUkVDVElPTl9UT19ORVRXT1JLLAorLSAgICAgICAgICAgICAgICAgICAgICAg ICAgb2xkX3N0YXRlLCBuZXdfc3RhdGUpOworKyAgdXBkYXRlX2NhbGxfc3RhdGUgKHNlbGYsIG1t X2NhbGwsIHBhdGgsIG9sZF9zdGF0ZSwgbmV3X3N0YXRlKTsKKyB9CisgCisgCisgc3RhdGljIHZv aWQKKy1pbml0X2NhbGxfZGlyZWN0aW9uIChXeXNNb2RlbSAgICAgKnNlbGYsCistICAgICAgICAg ICAgICAgICAgICAgTU1DYWxsICAgICAgICptbV9jYWxsLAorLSAgICAgICAgICAgICAgICAgICAg IE1NQ2FsbFN0YXRlICAgc3RhdGUsCistICAgICAgICAgICAgICAgICAgICAgV3lzRGlyZWN0aW9u ICBkaXJlY3Rpb24pCisraW5pdF9jYWxsX2F1ZGlvIChXeXNNb2RlbSAgICAgKnNlbGYsCisrICAg ICAgICAgICAgICAgICBNTUNhbGwgICAgICAgKm1tX2NhbGwsCisrICAgICAgICAgICAgICAgICBN TUNhbGxTdGF0ZSAgIHN0YXRlKQorIHsKKy0gIGdib29sZWFuIGhhc19hdWRpbyA9IGNhbGxfc3Rh dGVfaGFzX2F1ZGlvIChkaXJlY3Rpb24sIHN0YXRlKTsKKysgIGdib29sZWFuIGhhc19hdWRpbyA9 IGNhbGxfc3RhdGVfaGFzX2F1ZGlvIChzdGF0ZSk7CisgCistICBzZXRfY2FsbF9oYXNfYXVkaW8g KG1tX2NhbGwsIGRpcmVjdGlvbiwgaGFzX2F1ZGlvKTsKKysgIHNldF9jYWxsX2hhc19hdWRpbyAo bW1fY2FsbCwgaGFzX2F1ZGlvKTsKKyAKKyAgIGlmIChoYXNfYXVkaW8pCisgICAgIHsKKy0gICAg ICB1cGRhdGVfYXVkaW9fY291bnQgKHNlbGYsIGRpcmVjdGlvbiwgKzEpOworKyAgICAgIHVwZGF0 ZV9hdWRpb19jb3VudCAoc2VsZiwgKzEpOworICAgICB9CisgfQorIAorQEAgLTIyMywxMiArMTk3 LDkgQEAgYWRkX2NhbGwgKFd5c01vZGVtICpzZWxmLAorICAgICAgICAgICAgICAgICAgICAgc2Vs Zik7CisgCisgICBzdGF0ZSA9IG1tX2NhbGxfZ2V0X3N0YXRlIChtbV9jYWxsKTsKKy0gIGluaXRf Y2FsbF9kaXJlY3Rpb24gKHNlbGYsIG1tX2NhbGwsIHN0YXRlLAorLSAgICAgICAgICAgICAgICAg ICAgICAgV1lTX0RJUkVDVElPTl9GUk9NX05FVFdPUkspOworLSAgaW5pdF9jYWxsX2RpcmVjdGlv biAoc2VsZiwgbW1fY2FsbCwgc3RhdGUsCistICAgICAgICAgICAgICAgICAgICAgICBXWVNfRElS RUNUSU9OX1RPX05FVFdPUkspOworKyAgaW5pdF9jYWxsX2F1ZGlvIChzZWxmLCBtbV9jYWxsLCBz dGF0ZSk7CisgCistICBnX2RlYnVnICgiQ2FsbCBgJXMnIGFkZGVkLCBzdGF0ZTogJWkiLCBwYXRo LCAoaW50KXN0YXRlKTsKKysgIGdfbWVzc2FnZSAoIkNhbGwgYCVzJyBhZGRlZCwgc3RhdGU6ICVp IiwgcGF0aCwgKGludClzdGF0ZSk7CisgfQorIAorIAorQEAgLTMyMiwxNiArMjkzLDE0IEBAIGNh bGxfYWRkZWRfY2IgKE1NTW9kZW1Wb2ljZSAgKnZvaWNlLAorIAorIAorIHN0YXRpYyB2b2lkCist Y2xlYXJfY2FsbF9kaXJlY3Rpb24gKFd5c01vZGVtICAgICAqc2VsZiwKKy0gICAgICAgICAgICAg ICAgICAgICAgTU1DYWxsICAgICAgICptbV9jYWxsLAorLSAgICAgICAgICAgICAgICAgICAgICBX eXNEaXJlY3Rpb24gIGRpcmVjdGlvbikKKytjbGVhcl9jYWxsX3N0YXRlIChXeXNNb2RlbSAgICAg KnNlbGYsCisrICAgICAgICAgICAgICAgICAgTU1DYWxsICAgICAgICptbV9jYWxsKQorIHsKKy0g IGdib29sZWFuIGhhc19hdWRpbyA9CistICAgIGdldF9jYWxsX2hhc19hdWRpbyAobW1fY2FsbCwg ZGlyZWN0aW9uKTsKKysgIGdib29sZWFuIGhhc19hdWRpbyA9IGdldF9jYWxsX2hhc19hdWRpbyAo bW1fY2FsbCk7CisgCisgICBpZiAoaGFzX2F1ZGlvKQorICAgICB7CistICAgICAgdXBkYXRlX2F1 ZGlvX2NvdW50IChzZWxmLCBkaXJlY3Rpb24sIC0xKTsKKysgICAgICB1cGRhdGVfYXVkaW9fY291 bnQgKHNlbGYsIC0xKTsKKyAgICAgfQorIH0KKyAKK0BAIC0zNDMsNyArMzEyLDcgQEAgY2FsbF9k ZWxldGVkX2NiIChNTU1vZGVtVm9pY2UgKnZvaWNlLAorIHsKKyAgIE1NQ2FsbCAqbW1fY2FsbDsK KyAKKy0gIGdfZGVidWcgKCJSZW1vdmluZyBjYWxsIGAlcyciLCBwYXRoKTsKKysgIGdfbWVzc2Fn ZSAoIlJlbW92aW5nIGNhbGwgYCVzJyIsIHBhdGgpOworIAorICAgbW1fY2FsbCA9IGdfaGFzaF90 YWJsZV9sb29rdXAgKHNlbGYtPmNhbGxzLCBwYXRoKTsKKyAgIGlmICghbW1fY2FsbCkKK0BAIC0z NTIsMTQgKzMyMSwxMSBAQCBjYWxsX2RlbGV0ZWRfY2IgKE1NTW9kZW1Wb2ljZSAqdm9pY2UsCisg ICAgICAgcmV0dXJuOworICAgICB9CisgCistICBjbGVhcl9jYWxsX2RpcmVjdGlvbiAoc2VsZiwg bW1fY2FsbCwKKy0gICAgICAgICAgICAgICAgICAgICAgICBXWVNfRElSRUNUSU9OX0ZST01fTkVU V09SSyk7CistICBjbGVhcl9jYWxsX2RpcmVjdGlvbiAoc2VsZiwgbW1fY2FsbCwKKy0gICAgICAg ICAgICAgICAgICAgICAgICBXWVNfRElSRUNUSU9OX1RPX05FVFdPUkspOworKyAgY2xlYXJfY2Fs bF9zdGF0ZSAoc2VsZiwgbW1fY2FsbCk7CisgCisgICBnX2hhc2hfdGFibGVfcmVtb3ZlIChzZWxm LT5jYWxscywgcGF0aCk7CisgCistICBnX2RlYnVnICgiQ2FsbCBgJXMnIHJlbW92ZWQiLCBwYXRo KTsKKysgIGdfbWVzc2FnZSAoIkNhbGwgYCVzJyByZW1vdmVkIiwgcGF0aCk7CisgfQorIAorIAor QEAgLTQ0NCwxMSArNDEwLDkgQEAgZGlzcG9zZSAoR09iamVjdCAqb2JqZWN0KQorICAgaWYgKGdf aGFzaF90YWJsZV9zaXplIChzZWxmLT5jYWxscykgPiAwKQorICAgICB7CisgICAgICAgZ19oYXNo X3RhYmxlX3JlbW92ZV9hbGwgKHNlbGYtPmNhbGxzKTsKKy0gICAgICBpZiAoc2VsZi0+YXVkaW9f Y291bnRbV1lTX0RJUkVDVElPTl9GUk9NX05FVFdPUktdID4gMCB8fAorLSAgICAgICAgICBzZWxm LT5hdWRpb19jb3VudFtXWVNfRElSRUNUSU9OX1RPX05FVFdPUktdID4gMCkKKysgICAgICBpZiAo c2VsZi0+YXVkaW9fY291bnQgPiAwKQorICAgICAgICAgeworLSAgICAgICAgICBzZWxmLT5hdWRp b19jb3VudFtXWVNfRElSRUNUSU9OX0ZST01fTkVUV09SS10gPQorLSAgICAgICAgICAgIHNlbGYt PmF1ZGlvX2NvdW50W1dZU19ESVJFQ1RJT05fVE9fTkVUV09SS10gPSAwOworKyAgICAgICAgICBz ZWxmLT5hdWRpb19jb3VudCA9IDA7CisgICAgICAgICAgIGdfc2lnbmFsX2VtaXRfYnlfbmFtZSAo c2VsZiwgImF1ZGlvLWFic2VudCIpOworICAgICAgICAgfQorICAgICB9CitAQCAtNTA0LDggKzQ2 OCw3IEBAIHd5c19tb2RlbV9jbGFzc19pbml0IChXeXNNb2RlbUNsYXNzICprbGFzcykKKyAgICAg ICAgICAgICAgICAgICBHX1NJR05BTF9SVU5fTEFTVCwKKyAgICAgICAgICAgICAgICAgICAwLCBO VUxMLCBOVUxMLCBOVUxMLAorICAgICAgICAgICAgICAgICAgIEdfVFlQRV9OT05FLAorLSAgICAg ICAgICAgICAgICAgIDEsCistICAgICAgICAgICAgICAgICAgV1lTX1RZUEVfRElSRUNUSU9OKTsK KysgICAgICAgICAgICAgICAgICAwKTsKKyAKKyAgIC8qKgorICAgICogV3lzTW9kZW06OmF1ZGlv LWFic2VudDoKK0BAIC01MjAsOCArNDgzLDcgQEAgd3lzX21vZGVtX2NsYXNzX2luaXQgKFd5c01v ZGVtQ2xhc3MgKmtsYXNzKQorICAgICAgICAgICAgICAgICAgIEdfU0lHTkFMX1JVTl9MQVNULAor ICAgICAgICAgICAgICAgICAgIDAsIE5VTEwsIE5VTEwsIE5VTEwsCisgICAgICAgICAgICAgICAg ICAgR19UWVBFX05PTkUsCistICAgICAgICAgICAgICAgICAgMSwKKy0gICAgICAgICAgICAgICAg ICBXWVNfVFlQRV9ESVJFQ1RJT04pOworKyAgICAgICAgICAgICAgICAgIDApOworIH0KKyAKKyAK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcGluZXBob25lLXd5cy90ZW1wbGF0ZSBiL3NyY3BrZ3MvcGlu ZXBob25lLXd5cy90ZW1wbGF0ZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw MC4uYWIzZWFhZDY0YWMKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3BpbmVwaG9uZS13eXMv dGVtcGxhdGUKQEAgLTAsMCArMSwxOSBAQAorIyBUZW1wbGF0ZSBmaWxlIGZvciAncGluZXBob25l LXd5cycKK3BrZ25hbWU9cGluZXBob25lLXd5cworX3BrZ25hbWU9d3lzCit2ZXJzaW9uPTAuMS44 CityZXZpc2lvbj0xCit3cmtzcmM9JHtfcGtnbmFtZX0tdiR7dmVyc2lvbn0KK2J1aWxkX3N0eWxl PW1lc29uCitob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWciCittYWtlZGVwZW5kcz0iZ2xpYi1k ZXZlbCBwdWxzZWF1ZGlvLWRldmVsIE1vZGVtTWFuYWdlci1kZXZlbCIKK3Nob3J0X2Rlc2M9IkRh ZW1vbiB0byBicmluZyB1cCBhbmQgdGFrZSBkb3duIFB1bHNlQXVkaW8gZm9yIHBob25lIGNhbGwg YXVkaW8iCittYWludGFpbmVyPSJKdWxpbyBHYWx2YW4gPGp1bGlvLXZvaWRAZXBhem90ZS5uZXQ+ IgorbGljZW5zZT0iR1BMLTMuMC1vci1sYXRlciIKK2hvbWVwYWdlPSJodHRwczovL3NvdXJjZS5w dXJpLnNtL0xpYnJlbTUvd3lzIgorZGlzdGZpbGVzPSIke2hvbWVwYWdlfS8tL2FyY2hpdmUvdiR7 dmVyc2lvbn0vJHtfcGtnbmFtZX0tdiR7dmVyc2lvbn0udGFyLmd6IgorY2hlY2tzdW09MDdmZDZk MmFlOWVhNWQ2MTg3ZTFjOTlkNWIwZTVjMWQ5Yzc0YmEwMGY0ODY5ZjRhYWUxOTVjZDg3MTRiYTM3 NQorCitwb3N0X2luc3RhbGwoKSB7CisJdmluc3RhbGwgJHtGSUxFU0RJUn0vd3lzLmRlc2t0b3Ag NjQ0IGV0Yy94ZGcvYXV0b3N0YXJ0Cit9CgpGcm9tIDMwYTIwMDk4Y2QzYWU2ODM2MzM3NGQ5MDU3 YTgyMDhkZTdiZDA2ZjQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEp1bGlvIEdhbHZh biA8anVsaW8tdm9pZEBlcGF6b3RlLm5ldD4KRGF0ZTogU2F0LCAxOSBTZXAgMjAyMCAxOToxMjoy NiAtMDcwMApTdWJqZWN0OiBbUEFUQ0ggMTIvMTNdIE5ldyBwYWNrYWdlOiBtZWdhcGl4ZWxzLTAu Ny4wCgotLS0KIHNyY3BrZ3MvbWVnYXBpeGVscy90ZW1wbGF0ZSB8IDEzICsrKysrKysrKysrKysK IDEgZmlsZSBjaGFuZ2VkLCAxMyBpbnNlcnRpb25zKCspCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3Jj cGtncy9tZWdhcGl4ZWxzL3RlbXBsYXRlCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tZWdhcGl4ZWxz L3RlbXBsYXRlIGIvc3JjcGtncy9tZWdhcGl4ZWxzL3RlbXBsYXRlCm5ldyBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5lYmNlNmE5OTNiMQotLS0gL2Rldi9udWxsCisrKyBiL3Ny Y3BrZ3MvbWVnYXBpeGVscy90ZW1wbGF0ZQpAQCAtMCwwICsxLDEzIEBACisjIFRlbXBsYXRlIGZp bGUgZm9yICdtZWdhcGl4ZWxzJworcGtnbmFtZT1tZWdhcGl4ZWxzCit2ZXJzaW9uPTAuNy4wCity ZXZpc2lvbj0xCitidWlsZF9zdHlsZT1tZXNvbgoraG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmln IGdsaWItZGV2ZWwiCittYWtlZGVwZW5kcz0iZ3RrKzMtZGV2ZWwiCitzaG9ydF9kZXNjPSJHVEsr MyBjYW1lcmEgYXBwIGZvciBBUk0gZGV2aWNlcyIKK21haW50YWluZXI9Ikp1bGlvIEdhbHZhbiA8 anVsaW8tdm9pZEBlcGF6b3RlLm5ldD4iCitsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgoraG9t ZXBhZ2U9Imh0dHBzOi8vZ2l0LnNyLmh0L35tYXJ0aWpuYnJhYW0vbWVnYXBpeGVscyIKK2Rpc3Rm aWxlcz0iJHtob21lcGFnZX0vYXJjaGl2ZS8ke3ZlcnNpb259LnRhci5neiIKK2NoZWNrc3VtPTlh NWU1NTU5MjRiMTgzZTdjNGQ3NWQ4YWZkZDEwYTI0YmNmY2FkMjBmODk4ZThkMjdiM2ViMTcxZjMx ZjRkZDMKCkZyb20gZTNmM2EzNmY5ZTg4YzNhNjc2NGIyNzY0ZjkxMWRkNTg4MTJkN2Q5MCBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogSnVsaW8gR2FsdmFuIDxqdWxpby12b2lkQGVwYXpv dGUubmV0PgpEYXRlOiBTYXQsIDE5IFNlcCAyMDIwIDIxOjQ5OjQzIC0wNzAwClN1YmplY3Q6IFtQ QVRDSCAxMy8xM10gTmV3IHBhY2thZ2U6IHB1cnBsZS1tbS1zbXMtMC4xLjcKCi0tLQogLi4uL3Bh dGNoZXMvMDAwMS1TdXBwb3J0LW1lc29uLnBhdGNoICAgICAgICAgIHwgNjMgKysrKysrKysrKysr KysrKysrKwogc3JjcGtncy9wdXJwbGUtbW0tc21zL3RlbXBsYXRlICAgICAgICAgICAgICAgIHwg MTQgKysrKysKIDIgZmlsZXMgY2hhbmdlZCwgNzcgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUg MTAwNjQ0IHNyY3BrZ3MvcHVycGxlLW1tLXNtcy9wYXRjaGVzLzAwMDEtU3VwcG9ydC1tZXNvbi5w YXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcHVycGxlLW1tLXNtcy90ZW1wbGF0ZQoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHVycGxlLW1tLXNtcy9wYXRjaGVzLzAwMDEtU3VwcG9ydC1t ZXNvbi5wYXRjaCBiL3NyY3BrZ3MvcHVycGxlLW1tLXNtcy9wYXRjaGVzLzAwMDEtU3VwcG9ydC1t ZXNvbi5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uNTVlNGVj ZTA4NjkKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3B1cnBsZS1tbS1zbXMvcGF0Y2hlcy8w MDAxLVN1cHBvcnQtbWVzb24ucGF0Y2gKQEAgLTAsMCArMSw2MyBAQAorRnJvbSAxYzQ4OTZmMTVm NjNiYjY3MTllY2U1OWI2MjZmZGRmNTViNzY2YTBlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQor RnJvbTogSnVsaW8gR2FsdmFuIDxqdWxpby12b2lkQGVwYXpvdGUubmV0PgorRGF0ZTogU2F0LCAx OSBTZXAgMjAyMCAyMTozMjoxOSAtMDcwMAorU3ViamVjdDogW1BBVENIXSBTdXBwb3J0IG1lc29u CisKK0kgYW0gdHJ5aW5nIHRvIHBhY2thZ2UgdGhpcyBsaWJyYXJ5IGZvciB2b2lkbGludXggYnV0 IGl0IGZhaWxzIHRvCitjcm9zc2J1aWxkIGF1dG9tYXRpY2FsbHkuIEkgdGhvdWdodCB0aGF0IHdl IGNvdWxkIHVzZSB0aGlzIGZvciBub3cuCistLS0KKyBtZXNvbi5idWlsZCB8IDQyICsrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIDEgZmlsZSBjaGFuZ2VkLCA0MiBp bnNlcnRpb25zKCspCisgY3JlYXRlIG1vZGUgMTAwNjQ0IG1lc29uLmJ1aWxkCisKK2RpZmYgLS1n aXQgYS9tZXNvbi5idWlsZCBiL21lc29uLmJ1aWxkCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5k ZXggMDAwMDAwMC4uOGI2YzkwZQorLS0tIC9kZXYvbnVsbAorKysrIG1lc29uLmJ1aWxkCitAQCAt MCwwICsxLDQyIEBACisrcHJvamVjdCgncHVycGxlLW1tLXNtcycsICdjJywKKysgIHZlcnNpb246 ICcwLjEuNycsCisrKQorKworK2NjID0gbWVzb24uZ2V0X2NvbXBpbGVyKCdjJykKKysKKytwdXJw bGUgPSBkZXBlbmRlbmN5KCdwdXJwbGUnKQorK21tID0gZGVwZW5kZW5jeSgnbW0tZ2xpYicpCisr Z2xpYj0gZGVwZW5kZW5jeSgnZ2xpYi0yLjAnLCB2ZXJzaW9uOiAnPj0yLjUwLjAnKQorKworK3B1 cnBsZV9wbHVnZGlyID0gcHVycGxlLmdldF9wa2djb25maWdfdmFyaWFibGUoJ3BsdWdpbmRpcicp CisrCisrbW1fc21zX2hlYWRlcnMgPSBbCisrICAnbW0tc21zLmgnLAorKyAgJ2l0dS1lMjEyLWlz by5oJywKKytdCisrCisrbW1fc21zX3NvdXJjZXMgPSBbCisrICBtbV9zbXNfaGVhZGVycywKKysg ICdtbS1zbXMuYycsCisrXQorKworK21tX3Ntc19kZXBzID0gWworKyAgcHVycGxlLAorKyAgbW0s CisrICBnbGliLAorK10KKysKKyttbV9zbXNfc2hhcmVkID0gc2hhcmVkX2xpYnJhcnkoCisrICAn bW0tc21zJywKKysgIG1tX3Ntc19zb3VyY2VzLAorKyAgICAgICAgIGRlcGVuZGVuY2llcyA6IG1t X3Ntc19kZXBzLAorKyAgICAgICAgIG5hbWVfcHJlZml4ICA6ICcnLAorKyAgICAgICAgICBpbnN0 YWxsX2RpciA6IHB1cnBsZV9wbHVnZGlyLAorKyAgICAgICAgICAgICAgaW5zdGFsbCA6IHRydWUs CisrKQorKworKworK2ljb25zZGlyID0gam9pbl9wYXRocyhnZXRfb3B0aW9uKCdkYXRhZGlyJyks ICdwaXhtYXBzJywgJ3BpZGdpbicsICdwcm90b2NvbHMnKQorK2ZvcmVhY2ggc2l6ZTogWycxNics ICcyMicsICc0OCddCisrICBpbnN0YWxsX2RhdGEoJ2ljb25zL21tLXNtcy0nICsgc2l6ZSArICdw eC5wbmcnLCByZW5hbWU6ICdtbS1zbXMucG5nJywgaW5zdGFsbF9kaXI6IGljb25zZGlyICsgJy8n ICsgc2l6ZSkKKytlbmRmb3JlYWNoCistLSAKKzIuMjguMAorCmRpZmYgLS1naXQgYS9zcmNwa2dz L3B1cnBsZS1tbS1zbXMvdGVtcGxhdGUgYi9zcmNwa2dzL3B1cnBsZS1tbS1zbXMvdGVtcGxhdGUK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmVlNTc3NzBkMzQ5Ci0tLSAv ZGV2L251bGwKKysrIGIvc3JjcGtncy9wdXJwbGUtbW0tc21zL3RlbXBsYXRlCkBAIC0wLDAgKzEs MTQgQEAKKyMgVGVtcGxhdGUgZmlsZSBmb3IgJ3B1cnBsZS1tbS1zbXMnCitwa2duYW1lPXB1cnBs ZS1tbS1zbXMKK3ZlcnNpb249MC4xLjcKK3JldmlzaW9uPTEKK3dya3NyYz0ke3BrZ25hbWV9LXYk e3ZlcnNpb259CitidWlsZF9zdHlsZT1tZXNvbgoraG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmln IgorbWFrZWRlcGVuZHM9Ik1vZGVtTWFuYWdlci1kZXZlbCBsaWJnbGliLWRldmVsIGxpYnB1cnBs ZS1kZXZlbCIKK3Nob3J0X2Rlc2M9IlB1cnBsZSBTTVMgcGx1Z2luIHVzaW5nIE1vZGVtTWFuYWdl ciIKK21haW50YWluZXI9Ikp1bGlvIEdhbHZhbiA8anVsaW8tdm9pZEBlcGF6b3RlLm5ldD4iCits aWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgoraG9tZXBhZ2U9Imh0dHBzOi8vc291cmNlLnB1cmku c20vTGlicmVtNS9wdXJwbGUtbW0tc21zIgorZGlzdGZpbGVzPSIke2hvbWVwYWdlfS8tL2FyY2hp dmUvdiR7dmVyc2lvbn0vJHtwa2duYW1lfS12JHt2ZXJzaW9ufS50YXIuZ3oiCitjaGVja3N1bT0x MjNkNzFmNDAwNTFlNmFmYzU5ZGM4ZjhmYjZlZmVmMDUyNGE5OWIzNzc4NTZkOTlkNWU2NGQwYjg2 N2FiMmJlCg== --===============4130047361531460368==--