From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: 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, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: from inbox.vuxu.org (inbox.vuxu.org [IPv6:::1]) by inbox.vuxu.org (Postfix) with ESMTP id 640BE28BF3 for ; Tue, 20 Feb 2024 07:55:03 +0100 (CET) Content-Type: multipart/mixed; boundary="===============8790915825132108814==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_webkit2gtk=3A_update_to_2=2E42=2E5?= To: ml@inbox.vuxu.org From: chrysos349 Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Tue, 20 Feb 2024 07:55:03 +0100 List-Id: Message-Id: <20240220065503.640BE28BF3@inbox.vuxu.org> GitHub notification mails are now in MIME to allow UTF8. --===============8790915825132108814== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgY2hyeXNvczM0OSBhZ2FpbnN0IG1h c3RlciBvbiB0aGUgdm9pZC1wYWNrYWdlcyByZXBvc2l0b3J5CgpodHRwczovL2dpdGh1Yi5jb20v Y2hyeXNvczM0OS92b2lkLXBhY2thZ2VzIHdlYmtpdDJndGsKaHR0cHM6Ly9naXRodWIuY29tL3Zv aWQtbGludXgvdm9pZC1wYWNrYWdlcy9wdWxsLzQ4ODM5Cgp3ZWJraXQyZ3RrOiB1cGRhdGUgdG8g Mi40Mi41CltjaSBza2lwXQ0KDQoqKk5PVEVTKioNCi0gYDIuNDIuNWAgKGFuZCBgMi40Mi40YCBi ZWZvcmUgYC41YCB3YXMgcmVsZWFzZWQpIHdhcyB0ZXN0ZWQgYXMgYSBwYXJ0IG9mIGBnbm9tZS00 NS4qYA0KLSBSZXF1aXJlZCBmb3IgYGdub21lLTQ1LipgICgjNDg3NjIpDQotIChDcm9zcyktYnVp bHQgZm9yIGFsbCBhcmNocyB0aGF0IGFyZSBjaGVja2VkIGluIGNpDQoNCiMjIyMgVGVzdGluZyB0 aGUgY2hhbmdlcw0KLSBJIHRlc3RlZCB0aGUgY2hhbmdlcyBpbiB0aGlzIFBSOiAqKllFUyoqDQoN CiMjIyMgTG9jYWwgYnVpbGQgdGVzdGluZw0KLSBJIGJ1aWx0IHRoaXMgUFIgbG9jYWxseSBmb3Ig bXkgbmF0aXZlIGFyY2hpdGVjdHVyZSwgKHg4Nl82NCkNCi0gSSBidWlsdCB0aGlzIFBSIGxvY2Fs bHkgZm9yIHRoZXNlIGFyY2hpdGVjdHVyZXMgKGlmIHN1cHBvcnRlZC4gbWFyayBjcm9zc2J1aWxk cyk6DQogIC0gYWFyY2g2NC1tdXNsIHgNCiAgLSBhYXJjaDY0IHgNCiAgLSBhcm12N2wgeA0KICAt IGFybXY2bC1tdXNsIHgNCiAgLSB4ODZfNjQtbXVzbA0KICAtIGk2ODYNCgoKQSBwYXRjaCBmaWxl IGZyb20gaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9wdWxsLzQ4 ODM5LnBhdGNoIGlzIGF0dGFjaGVk --===============8790915825132108814== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-webkit2gtk-48839.patch" RnJvbSA0YTY4NWU5NmY1ODhjZTA3NjI4NGU0OTJmYzZkNDNmZmRiZjFkMmVlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBjaHJ5c29zMzQ5IDxjaHJ5c29zdG9tMzQ5QGdtYWlsLmNvbT4K RGF0ZTogVHVlLCAyMCBGZWIgMjAyNCAwMDo0OToxMCArMDMwMApTdWJqZWN0OiBbUEFUQ0hdIHdl YmtpdDJndGs6IHVwZGF0ZSB0byAyLjQyLjUKCi0tLQogLi4uL3BhdGNoZXMvYmUtaW1hZ2VidWZm ZXJiYWNrZW5kLnBhdGNoICAgICAgIHwgMjQxIC0tLS0tLS0tLS0tLS0tLS0tLQogLi4uL3dlYmtp dDJndGsvcGF0Y2hlcy9iZS10eXBlZGFycmF5LnBhdGNoICAgIHwgMjA2IC0tLS0tLS0tLS0tLS0t LQogLi4uL3BhdGNoZXMvZGlzYWJsZS1kbWFidWYtbnZpZGlhLnBhdGNoICAgICAgIHwgIDYzICsr KysrCiAuLi4vd2Via2l0Mmd0ay9wYXRjaGVzL2ZpeC1mdGJmcy1pMzg2LnBhdGNoICAgfCAgMTYg KysKIC4uLi9wYXRjaGVzL2ZpeC1yaXNjdjY0LWJ1aWxkLnBhdGNoICAgICAgICAgICB8ICAyOCAt LQogc3JjcGtncy93ZWJraXQyZ3RrL3BhdGNoZXMvaW5pdGlhbC1leGVjLnBhdGNoIHwgIDIzIC0t CiBzcmNwa2dzL3dlYmtpdDJndGsvcGF0Y2hlcy9sZS1jaGVjay5wYXRjaCAgICAgfCAgMjYgLS0K IC4uLi93ZWJraXQyZ3RrL3BhdGNoZXMvcHJlZmVyLXB0aHJlYWQucGF0Y2ggICB8ICAyOCArKwog c3JjcGtncy93ZWJraXQyZ3RrL3BhdGNoZXMvcmVwcm9kdWNpYmxlLnBhdGNoIHwgIDI1ICstCiBz cmNwa2dzL3dlYmtpdDJndGsvdGVtcGxhdGUgICAgICAgICAgICAgICAgICAgfCAgMjcgKy0KIDEw IGZpbGVzIGNoYW5nZWQsIDEyOSBpbnNlcnRpb25zKCspLCA1NTQgZGVsZXRpb25zKC0pCiBkZWxl dGUgbW9kZSAxMDA2NDQgc3JjcGtncy93ZWJraXQyZ3RrL3BhdGNoZXMvYmUtaW1hZ2VidWZmZXJi YWNrZW5kLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy93ZWJraXQyZ3RrL3BhdGNo ZXMvYmUtdHlwZWRhcnJheS5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvd2Via2l0 Mmd0ay9wYXRjaGVzL2Rpc2FibGUtZG1hYnVmLW52aWRpYS5wYXRjaAogY3JlYXRlIG1vZGUgMTAw NjQ0IHNyY3BrZ3Mvd2Via2l0Mmd0ay9wYXRjaGVzL2ZpeC1mdGJmcy1pMzg2LnBhdGNoCiBkZWxl dGUgbW9kZSAxMDA2NDQgc3JjcGtncy93ZWJraXQyZ3RrL3BhdGNoZXMvZml4LXJpc2N2NjQtYnVp bGQucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3dlYmtpdDJndGsvcGF0Y2hlcy9p bml0aWFsLWV4ZWMucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3dlYmtpdDJndGsv cGF0Y2hlcy9sZS1jaGVjay5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvd2Via2l0 Mmd0ay9wYXRjaGVzL3ByZWZlci1wdGhyZWFkLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy93 ZWJraXQyZ3RrL3BhdGNoZXMvYmUtaW1hZ2VidWZmZXJiYWNrZW5kLnBhdGNoIGIvc3JjcGtncy93 ZWJraXQyZ3RrL3BhdGNoZXMvYmUtaW1hZ2VidWZmZXJiYWNrZW5kLnBhdGNoCmRlbGV0ZWQgZmls ZSBtb2RlIDEwMDY0NAppbmRleCBmZDkwY2RiOTliYTNkLi4wMDAwMDAwMDAwMDAwCi0tLSBhL3Ny Y3BrZ3Mvd2Via2l0Mmd0ay9wYXRjaGVzL2JlLWltYWdlYnVmZmVyYmFja2VuZC5wYXRjaAorKysg L2Rldi9udWxsCkBAIC0xLDI0MSArMCwwIEBACi1PcmlnaW5hbCBzb3VyY2U6IEphY2VrIFBpc3pj emVrIDxqYWNlay5waXN6Y3pla0BydW5ib3guY29tPgotCi1kaWZmIC0tZ2l0IGEvU291cmNlL1dl YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvUGl4ZWxCdWZmZXJDb252ZXJzaW9uLmNwcCBiL1NvdXJj ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1BpeGVsQnVmZmVyQ29udmVyc2lvbi5jcHAKLWlu ZGV4IDlhY2YzMDRkLi42MThiN2IyNiAxMDA2NDQKLS0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm b3JtL2dyYXBoaWNzL1BpeGVsQnVmZmVyQ29udmVyc2lvbi5jcHAKLSsrKyBiL1NvdXJjZS9XZWJD b3JlL3BsYXRmb3JtL2dyYXBoaWNzL1BpeGVsQnVmZmVyQ29udmVyc2lvbi5jcHAKLUBAIC0xNDAs OSArMTQwLDE3IEBAIHN0YXRpYyB2b2lkIGNvbnZlcnRJbWFnZVBpeGVsc0FjY2VsZXJhdGVkKGNv bnN0IENvbnN0UGl4ZWxCdWZmZXJDb252ZXJzaW9uVmlldyYKLSBlbnVtIGNsYXNzIFBpeGVsRm9y bWF0Q29udmVyc2lvbiB7IE5vbmUsIFBlcm11dGUgfTsKLSAKLSB0ZW1wbGF0ZTxQaXhlbEZvcm1h dENvbnZlcnNpb24gcGl4ZWxGb3JtYXRDb252ZXJzaW9uPgotKyNpZiBDUFUoQklHX0VORElBTikK LStzdGF0aWMgdm9pZCBjb252ZXJ0U2luZ2xlUGl4ZWxQcmVtdWx0aXBsaWVkVG9QcmVtdWx0aXBs aWVkKFBpeGVsRm9ybWF0IHNvdXJjZVBpeGVsRm9ybWF0LCBjb25zdCB1aW50OF90KiBzb3VyY2VQ aXhlbCwgUGl4ZWxGb3JtYXQgZGVzdGluYXRpb25QaXhlbEZvcm1hdCwgdWludDhfdCogZGVzdGlu YXRpb25QaXhlbCkKLSsjZWxzZQotIHN0YXRpYyB2b2lkIGNvbnZlcnRTaW5nbGVQaXhlbFByZW11 bHRpcGxpZWRUb1ByZW11bHRpcGxpZWQoY29uc3QgdWludDhfdCogc291cmNlUGl4ZWwsIHVpbnQ4 X3QqIGRlc3RpbmF0aW9uUGl4ZWwpCi0rI2VuZGlmCi0gewotKyNpZiBDUFUoQklHX0VORElBTikK LSsgICAgdWludDhfdCBhbHBoYSA9IHNvdXJjZVBpeGVsW3NvdXJjZVBpeGVsRm9ybWF0ID09IFBp eGVsRm9ybWF0OjpBUkdCOCA/IDAgOiAzXTsKLSsjZWxzZQotICAgICB1aW50OF90IGFscGhhID0g c291cmNlUGl4ZWxbM107Ci0rI2VuZGlmCi0gICAgIGlmICghYWxwaGEpIHsKLSAgICAgICAgIHJl aW50ZXJwcmV0X2Nhc3Q8dWludDMyX3QqPihkZXN0aW5hdGlvblBpeGVsKVswXSA9IDA7Ci0gICAg ICAgICByZXR1cm47Ci1AQCAtMTUxLDIzICsxNTgsODEgQEAgc3RhdGljIHZvaWQgY29udmVydFNp bmdsZVBpeGVsUHJlbXVsdGlwbGllZFRvUHJlbXVsdGlwbGllZChjb25zdCB1aW50OF90KiBzb3Vy Y2UKLSAgICAgaWYgY29uc3RleHByIChwaXhlbEZvcm1hdENvbnZlcnNpb24gPT0gUGl4ZWxGb3Jt YXRDb252ZXJzaW9uOjpOb25lKQotICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDx1aW50MzJfdCo+ KGRlc3RpbmF0aW9uUGl4ZWwpWzBdID0gcmVpbnRlcnByZXRfY2FzdDxjb25zdCB1aW50MzJfdCo+ KHNvdXJjZVBpeGVsKVswXTsKLSAgICAgZWxzZSB7Ci0rI2lmIENQVShCSUdfRU5ESUFOKQotKyAg ICAgICAgLy8gU3dhcCBwaXhlbCBjaGFubmVscyBBUkdCIDwtPiBSR0JBLgotKyAgICAgICAgaWYg KGRlc3RpbmF0aW9uUGl4ZWxGb3JtYXQgPT0gUGl4ZWxGb3JtYXQ6OkFSR0I4KQotKyAgICAgICAg ewotKyAgICAgICAgICAgIGRlc3RpbmF0aW9uUGl4ZWxbMF0gPSBzb3VyY2VQaXhlbFszXTsKLSsg ICAgICAgICAgICBkZXN0aW5hdGlvblBpeGVsWzFdID0gc291cmNlUGl4ZWxbMF07Ci0rICAgICAg ICAgICAgZGVzdGluYXRpb25QaXhlbFsyXSA9IHNvdXJjZVBpeGVsWzFdOwotKyAgICAgICAgICAg IGRlc3RpbmF0aW9uUGl4ZWxbM10gPSBzb3VyY2VQaXhlbFsyXTsKLSsgICAgICAgIH0KLSsgICAg ICAgIGVsc2UKLSsgICAgICAgIHsKLSsgICAgICAgICAgICBkZXN0aW5hdGlvblBpeGVsWzBdID0g c291cmNlUGl4ZWxbMV07Ci0rICAgICAgICAgICAgZGVzdGluYXRpb25QaXhlbFsxXSA9IHNvdXJj ZVBpeGVsWzJdOwotKyAgICAgICAgICAgIGRlc3RpbmF0aW9uUGl4ZWxbMl0gPSBzb3VyY2VQaXhl bFszXTsKLSsgICAgICAgICAgICBkZXN0aW5hdGlvblBpeGVsWzNdID0gc291cmNlUGl4ZWxbMF07 Ci0rICAgICAgICB9Ci0rI2Vsc2UKLSAgICAgICAgIC8vIFN3YXAgcGl4ZWwgY2hhbm5lbHMgQkdS QSA8LT4gUkdCQS4KLSAgICAgICAgIGRlc3RpbmF0aW9uUGl4ZWxbMF0gPSBzb3VyY2VQaXhlbFsy XTsKLSAgICAgICAgIGRlc3RpbmF0aW9uUGl4ZWxbMV0gPSBzb3VyY2VQaXhlbFsxXTsKLSAgICAg ICAgIGRlc3RpbmF0aW9uUGl4ZWxbMl0gPSBzb3VyY2VQaXhlbFswXTsKLSAgICAgICAgIGRlc3Rp bmF0aW9uUGl4ZWxbM10gPSBzb3VyY2VQaXhlbFszXTsKLSsjZW5kaWYKLSAgICAgfQotIH0KLSAK LSB0ZW1wbGF0ZTxQaXhlbEZvcm1hdENvbnZlcnNpb24gcGl4ZWxGb3JtYXRDb252ZXJzaW9uPgot KyNpZiBDUFUoQklHX0VORElBTikKLStzdGF0aWMgdm9pZCBjb252ZXJ0U2luZ2xlUGl4ZWxQcmVt dWx0aXBsaWVkVG9VbnByZW11bHRpcGxpZWQoUGl4ZWxGb3JtYXQgc291cmNlUGl4ZWxGb3JtYXQs IGNvbnN0IHVpbnQ4X3QqIHNvdXJjZVBpeGVsLCBQaXhlbEZvcm1hdCBkZXN0aW5hdGlvblBpeGVs Rm9ybWF0LCB1aW50OF90KiBkZXN0aW5hdGlvblBpeGVsKQotKyNlbHNlCi0gc3RhdGljIHZvaWQg Y29udmVydFNpbmdsZVBpeGVsUHJlbXVsdGlwbGllZFRvVW5wcmVtdWx0aXBsaWVkKGNvbnN0IHVp bnQ4X3QqIHNvdXJjZVBpeGVsLCB1aW50OF90KiBkZXN0aW5hdGlvblBpeGVsKQotKyNlbmRpZgot IHsKLSsjaWYgQ1BVKEJJR19FTkRJQU4pCi0rICAgIHVpbnQ4X3QgYWxwaGEgPSBzb3VyY2VQaXhl bFtzb3VyY2VQaXhlbEZvcm1hdCA9PSBQaXhlbEZvcm1hdDo6QVJHQjggPyAwIDogM107Ci0rI2Vs c2UKLSAgICAgdWludDhfdCBhbHBoYSA9IHNvdXJjZVBpeGVsWzNdOwotKyNlbmRpZgotICAgICBp ZiAoIWFscGhhIHx8IGFscGhhID09IDI1NSkgewotKyNpZiBDUFUoQklHX0VORElBTikKLSsgICAg ICAgIGNvbnZlcnRTaW5nbGVQaXhlbFByZW11bHRpcGxpZWRUb1ByZW11bHRpcGxpZWQ8cGl4ZWxG b3JtYXRDb252ZXJzaW9uPihzb3VyY2VQaXhlbEZvcm1hdCwgc291cmNlUGl4ZWwsIGRlc3RpbmF0 aW9uUGl4ZWxGb3JtYXQsIGRlc3RpbmF0aW9uUGl4ZWwpOwotKyNlbHNlCi0gICAgICAgICBjb252 ZXJ0U2luZ2xlUGl4ZWxQcmVtdWx0aXBsaWVkVG9QcmVtdWx0aXBsaWVkPHBpeGVsRm9ybWF0Q29u dmVyc2lvbj4oc291cmNlUGl4ZWwsIGRlc3RpbmF0aW9uUGl4ZWwpOwotKyNlbmRpZgotICAgICAg ICAgcmV0dXJuOwotICAgICB9Ci0gCi0rI2lmIENQVShCSUdfRU5ESUFOKQotKyAgICBVTlVTRURf UEFSQU0oZGVzdGluYXRpb25QaXhlbEZvcm1hdCk7Ci0rICAgIGlmIGNvbnN0ZXhwciAocGl4ZWxG b3JtYXRDb252ZXJzaW9uID09IFBpeGVsRm9ybWF0Q29udmVyc2lvbjo6Tm9uZSkgewotKyAgICAg ICAgaWYgKHNvdXJjZVBpeGVsRm9ybWF0ID09IFBpeGVsRm9ybWF0OjpBUkdCOCkgewotKyAgICAg ICAgICAgIGRlc3RpbmF0aW9uUGl4ZWxbMF0gPSBhbHBoYTsKLSsgICAgICAgICAgICBkZXN0aW5h dGlvblBpeGVsWzFdID0gKHNvdXJjZVBpeGVsWzFdICogMjU1KSAvIGFscGhhOwotKyAgICAgICAg ICAgIGRlc3RpbmF0aW9uUGl4ZWxbMl0gPSAoc291cmNlUGl4ZWxbMl0gKiAyNTUpIC8gYWxwaGE7 Ci0rICAgICAgICAgICAgZGVzdGluYXRpb25QaXhlbFszXSA9IChzb3VyY2VQaXhlbFszXSAqIDI1 NSkgLyBhbHBoYTsKLSsgICAgICAgIH0gZWxzZSB7Ci0rICAgICAgICAgICAgZGVzdGluYXRpb25Q aXhlbFswXSA9IChzb3VyY2VQaXhlbFswXSAqIDI1NSkgLyBhbHBoYTsKLSsgICAgICAgICAgICBk ZXN0aW5hdGlvblBpeGVsWzFdID0gKHNvdXJjZVBpeGVsWzFdICogMjU1KSAvIGFscGhhOwotKyAg ICAgICAgICAgIGRlc3RpbmF0aW9uUGl4ZWxbMl0gPSAoc291cmNlUGl4ZWxbMl0gKiAyNTUpIC8g YWxwaGE7Ci0rICAgICAgICAgICAgZGVzdGluYXRpb25QaXhlbFszXSA9IGFscGhhOwotKyAgICAg ICAgfQotKyAgICB9IGVsc2UgewotKyAgICAgICAgaWYgKHNvdXJjZVBpeGVsRm9ybWF0ID09IFBp eGVsRm9ybWF0OjpBUkdCOCkgewotKyAgICAgICAgICAgIGRlc3RpbmF0aW9uUGl4ZWxbMF0gPSAo c291cmNlUGl4ZWxbMV0gKiAyNTUpIC8gYWxwaGE7Ci0rICAgICAgICAgICAgZGVzdGluYXRpb25Q aXhlbFsxXSA9IChzb3VyY2VQaXhlbFsyXSAqIDI1NSkgLyBhbHBoYTsKLSsgICAgICAgICAgICBk ZXN0aW5hdGlvblBpeGVsWzJdID0gKHNvdXJjZVBpeGVsWzNdICogMjU1KSAvIGFscGhhOwotKyAg ICAgICAgICAgIGRlc3RpbmF0aW9uUGl4ZWxbM10gPSBhbHBoYTsKLSsgICAgICAgIH0gZWxzZSB7 Ci0rICAgICAgICAgICAgZGVzdGluYXRpb25QaXhlbFswXSA9IGFscGhhOwotKyAgICAgICAgICAg IGRlc3RpbmF0aW9uUGl4ZWxbMV0gPSAoc291cmNlUGl4ZWxbMF0gKiAyNTUpIC8gYWxwaGE7Ci0r ICAgICAgICAgICAgZGVzdGluYXRpb25QaXhlbFsyXSA9IChzb3VyY2VQaXhlbFsxXSAqIDI1NSkg LyBhbHBoYTsKLSsgICAgICAgICAgICBkZXN0aW5hdGlvblBpeGVsWzNdID0gKHNvdXJjZVBpeGVs WzJdICogMjU1KSAvIGFscGhhOwotKyAgICAgICAgfQotKyAgICB9Ci0rI2Vsc2UKLSAgICAgaWYg Y29uc3RleHByIChwaXhlbEZvcm1hdENvbnZlcnNpb24gPT0gUGl4ZWxGb3JtYXRDb252ZXJzaW9u OjpOb25lKSB7Ci0gICAgICAgICBkZXN0aW5hdGlvblBpeGVsWzBdID0gKHNvdXJjZVBpeGVsWzBd ICogMjU1KSAvIGFscGhhOwotICAgICAgICAgZGVzdGluYXRpb25QaXhlbFsxXSA9IChzb3VyY2VQ aXhlbFsxXSAqIDI1NSkgLyBhbHBoYTsKLUBAIC0xODAsMTcgKzI0NSw1OCBAQCBzdGF0aWMgdm9p ZCBjb252ZXJ0U2luZ2xlUGl4ZWxQcmVtdWx0aXBsaWVkVG9VbnByZW11bHRpcGxpZWQoY29uc3Qg dWludDhfdCogc291cgotICAgICAgICAgZGVzdGluYXRpb25QaXhlbFsyXSA9IChzb3VyY2VQaXhl bFswXSAqIDI1NSkgLyBhbHBoYTsKLSAgICAgICAgIGRlc3RpbmF0aW9uUGl4ZWxbM10gPSBhbHBo YTsKLSAgICAgfQotKyNlbmRpZgotIH0KLSAKLSB0ZW1wbGF0ZTxQaXhlbEZvcm1hdENvbnZlcnNp b24gcGl4ZWxGb3JtYXRDb252ZXJzaW9uPgotKyNpZiBDUFUoQklHX0VORElBTikKLStzdGF0aWMg dm9pZCBjb252ZXJ0U2luZ2xlUGl4ZWxVbnByZW11bHRpcGxpZWRUb1ByZW11bHRpcGxpZWQoUGl4 ZWxGb3JtYXQgc291cmNlUGl4ZWxGb3JtYXQsIGNvbnN0IHVpbnQ4X3QqIHNvdXJjZVBpeGVsLCBQ aXhlbEZvcm1hdCBkZXN0aW5hdGlvblBpeGVsRm9ybWF0LCB1aW50OF90KiBkZXN0aW5hdGlvblBp eGVsKQotKyNlbHNlCi0gc3RhdGljIHZvaWQgY29udmVydFNpbmdsZVBpeGVsVW5wcmVtdWx0aXBs aWVkVG9QcmVtdWx0aXBsaWVkKGNvbnN0IHVpbnQ4X3QqIHNvdXJjZVBpeGVsLCB1aW50OF90KiBk ZXN0aW5hdGlvblBpeGVsKQotKyNlbmRpZgotIHsKLSsjaWYgQ1BVKEJJR19FTkRJQU4pCi0rICAg IHVpbnQ4X3QgYWxwaGEgPSBzb3VyY2VQaXhlbFtzb3VyY2VQaXhlbEZvcm1hdCA9PSBQaXhlbEZv cm1hdDo6QVJHQjggPyAwIDogM107Ci0rI2Vsc2UKLSAgICAgdWludDhfdCBhbHBoYSA9IHNvdXJj ZVBpeGVsWzNdOwotKyNlbmRpZgotICAgICBpZiAoIWFscGhhIHx8IGFscGhhID09IDI1NSkgewot KyNpZiBDUFUoQklHX0VORElBTikKLSsgICAgICAgIGNvbnZlcnRTaW5nbGVQaXhlbFByZW11bHRp cGxpZWRUb1ByZW11bHRpcGxpZWQ8cGl4ZWxGb3JtYXRDb252ZXJzaW9uPihzb3VyY2VQaXhlbEZv cm1hdCwgc291cmNlUGl4ZWwsIGRlc3RpbmF0aW9uUGl4ZWxGb3JtYXQsIGRlc3RpbmF0aW9uUGl4 ZWwpOwotKyNlbHNlCi0gICAgICAgICBjb252ZXJ0U2luZ2xlUGl4ZWxQcmVtdWx0aXBsaWVkVG9Q cmVtdWx0aXBsaWVkPHBpeGVsRm9ybWF0Q29udmVyc2lvbj4oc291cmNlUGl4ZWwsIGRlc3RpbmF0 aW9uUGl4ZWwpOwotKyNlbmRpZgotICAgICAgICAgcmV0dXJuOwotICAgICB9Ci0gCi0rI2lmIENQ VShCSUdfRU5ESUFOKQotKyAgICBVTlVTRURfUEFSQU0oZGVzdGluYXRpb25QaXhlbEZvcm1hdCk7 Ci0rICAgIGlmIGNvbnN0ZXhwciAocGl4ZWxGb3JtYXRDb252ZXJzaW9uID09IFBpeGVsRm9ybWF0 Q29udmVyc2lvbjo6Tm9uZSkgewotKyAgICAgICAgaWYgKHNvdXJjZVBpeGVsRm9ybWF0ID09IFBp eGVsRm9ybWF0OjpBUkdCOCkgewotKyAgICAgICAgICAgIGRlc3RpbmF0aW9uUGl4ZWxbMF0gPSBh bHBoYTsKLSsgICAgICAgICAgICBkZXN0aW5hdGlvblBpeGVsWzFdID0gKHNvdXJjZVBpeGVsWzFd ICogYWxwaGEgKyAyNTQpIC8gMjU1OwotKyAgICAgICAgICAgIGRlc3RpbmF0aW9uUGl4ZWxbMl0g PSAoc291cmNlUGl4ZWxbMl0gKiBhbHBoYSArIDI1NCkgLyAyNTU7Ci0rICAgICAgICAgICAgZGVz dGluYXRpb25QaXhlbFszXSA9IChzb3VyY2VQaXhlbFszXSAqIGFscGhhICsgMjU0KSAvIDI1NTsK LSsgICAgICAgIH0gZWxzZSB7Ci0rICAgICAgICAgICAgZGVzdGluYXRpb25QaXhlbFswXSA9IChz b3VyY2VQaXhlbFswXSAqIGFscGhhICsgMjU0KSAvIDI1NTsKLSsgICAgICAgICAgICBkZXN0aW5h dGlvblBpeGVsWzFdID0gKHNvdXJjZVBpeGVsWzFdICogYWxwaGEgKyAyNTQpIC8gMjU1OwotKyAg ICAgICAgICAgIGRlc3RpbmF0aW9uUGl4ZWxbMl0gPSAoc291cmNlUGl4ZWxbMl0gKiBhbHBoYSAr IDI1NCkgLyAyNTU7Ci0rICAgICAgICAgICAgZGVzdGluYXRpb25QaXhlbFszXSA9IGFscGhhOwot KyAgICAgICAgfQotKyAgICB9IGVsc2UgewotKyAgICAgICAgaWYgKHNvdXJjZVBpeGVsRm9ybWF0 ID09IFBpeGVsRm9ybWF0OjpBUkdCOCkgewotKyAgICAgICAgICAgIGRlc3RpbmF0aW9uUGl4ZWxb MF0gPSAoc291cmNlUGl4ZWxbMV0gKiBhbHBoYSArIDI1NCkgLyAyNTU7Ci0rICAgICAgICAgICAg ZGVzdGluYXRpb25QaXhlbFsxXSA9IChzb3VyY2VQaXhlbFsyXSAqIGFscGhhICsgMjU0KSAvIDI1 NTsKLSsgICAgICAgICAgICBkZXN0aW5hdGlvblBpeGVsWzJdID0gKHNvdXJjZVBpeGVsWzNdICog YWxwaGEgKyAyNTQpIC8gMjU1OwotKyAgICAgICAgICAgIGRlc3RpbmF0aW9uUGl4ZWxbM10gPSBh bHBoYTsKLSsgICAgICAgIH0gZWxzZSB7Ci0rICAgICAgICAgICAgZGVzdGluYXRpb25QaXhlbFsw XSA9IGFscGhhOwotKyAgICAgICAgICAgIGRlc3RpbmF0aW9uUGl4ZWxbMV0gPSAoc291cmNlUGl4 ZWxbMF0gKiBhbHBoYSArIDI1NCkgLyAyNTU7Ci0rICAgICAgICAgICAgZGVzdGluYXRpb25QaXhl bFsyXSA9IChzb3VyY2VQaXhlbFsxXSAqIGFscGhhICsgMjU0KSAvIDI1NTsKLSsgICAgICAgICAg ICBkZXN0aW5hdGlvblBpeGVsWzNdID0gKHNvdXJjZVBpeGVsWzJdICogYWxwaGEgKyAyNTQpIC8g MjU1OwotKyAgICAgICAgfQotKyAgICB9Ci0rI2Vsc2UKLSAgICAgaWYgY29uc3RleHByIChwaXhl bEZvcm1hdENvbnZlcnNpb24gPT0gUGl4ZWxGb3JtYXRDb252ZXJzaW9uOjpOb25lKSB7Ci0gICAg ICAgICBkZXN0aW5hdGlvblBpeGVsWzBdID0gKHNvdXJjZVBpeGVsWzBdICogYWxwaGEgKyAyNTQp IC8gMjU1OwotICAgICAgICAgZGVzdGluYXRpb25QaXhlbFsxXSA9IChzb3VyY2VQaXhlbFsxXSAq IGFscGhhICsgMjU0KSAvIDI1NTsKLUBAIC0yMDMsMjMgKzMwOSw0OSBAQCBzdGF0aWMgdm9pZCBj b252ZXJ0U2luZ2xlUGl4ZWxVbnByZW11bHRpcGxpZWRUb1ByZW11bHRpcGxpZWQoY29uc3QgdWlu dDhfdCogc291cgotICAgICAgICAgZGVzdGluYXRpb25QaXhlbFsyXSA9IChzb3VyY2VQaXhlbFsw XSAqIGFscGhhICsgMjU0KSAvIDI1NTsKLSAgICAgICAgIGRlc3RpbmF0aW9uUGl4ZWxbM10gPSBh bHBoYTsKLSAgICAgfQotKyNlbmRpZgotIH0KLSAKLSB0ZW1wbGF0ZTxQaXhlbEZvcm1hdENvbnZl cnNpb24gcGl4ZWxGb3JtYXRDb252ZXJzaW9uPgotKyNpZiBDUFUoQklHX0VORElBTikKLStzdGF0 aWMgdm9pZCBjb252ZXJ0U2luZ2xlUGl4ZWxVbnByZW11bHRpcGxpZWRUb1VucHJlbXVsdGlwbGll ZChQaXhlbEZvcm1hdCBzb3VyY2VQaXhlbEZvcm1hdCwgY29uc3QgdWludDhfdCogc291cmNlUGl4 ZWwsIFBpeGVsRm9ybWF0IGRlc3RpbmF0aW9uUGl4ZWxGb3JtYXQsIHVpbnQ4X3QqIGRlc3RpbmF0 aW9uUGl4ZWwpCi0rI2Vsc2UKLSBzdGF0aWMgdm9pZCBjb252ZXJ0U2luZ2xlUGl4ZWxVbnByZW11 bHRpcGxpZWRUb1VucHJlbXVsdGlwbGllZChjb25zdCB1aW50OF90KiBzb3VyY2VQaXhlbCwgdWlu dDhfdCogZGVzdGluYXRpb25QaXhlbCkKLSsjZW5kaWYKLSB7Ci0gICAgIGlmIGNvbnN0ZXhwciAo cGl4ZWxGb3JtYXRDb252ZXJzaW9uID09IFBpeGVsRm9ybWF0Q29udmVyc2lvbjo6Tm9uZSkKLSAg ICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8dWludDMyX3QqPihkZXN0aW5hdGlvblBpeGVsKVswXSA9 IHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgdWludDMyX3QqPihzb3VyY2VQaXhlbClbMF07Ci0gICAg IGVsc2UgewotKyNpZiBDUFUoQklHX0VORElBTikKLSsgICAgICAgIFVOVVNFRF9QQVJBTShzb3Vy Y2VQaXhlbEZvcm1hdCk7Ci0rICAgICAgICAvLyBTd2FwIHBpeGVsIGNoYW5uZWxzIEFSR0IgPC0+ IFJHQkEuCi0rICAgICAgICBpZiAoZGVzdGluYXRpb25QaXhlbEZvcm1hdCA9PSBQaXhlbEZvcm1h dDo6QVJHQjgpIHsKLSsgICAgICAgICAgICBkZXN0aW5hdGlvblBpeGVsWzBdID0gc291cmNlUGl4 ZWxbM107Ci0rICAgICAgICAgICAgZGVzdGluYXRpb25QaXhlbFsxXSA9IHNvdXJjZVBpeGVsWzBd OwotKyAgICAgICAgICAgIGRlc3RpbmF0aW9uUGl4ZWxbMl0gPSBzb3VyY2VQaXhlbFsxXTsKLSsg ICAgICAgICAgICBkZXN0aW5hdGlvblBpeGVsWzNdID0gc291cmNlUGl4ZWxbMl07Ci0rICAgICAg ICB9Ci0rICAgICAgICBlbHNlIHsKLSsgICAgICAgICAgICBkZXN0aW5hdGlvblBpeGVsWzBdID0g c291cmNlUGl4ZWxbMV07Ci0rICAgICAgICAgICAgZGVzdGluYXRpb25QaXhlbFsxXSA9IHNvdXJj ZVBpeGVsWzJdOwotKyAgICAgICAgICAgIGRlc3RpbmF0aW9uUGl4ZWxbMl0gPSBzb3VyY2VQaXhl bFszXTsKLSsgICAgICAgICAgICBkZXN0aW5hdGlvblBpeGVsWzNdID0gc291cmNlUGl4ZWxbMF07 Ci0rICAgICAgICB9Ci0rI2Vsc2UKLSAgICAgICAgIC8vIFN3YXAgcGl4ZWwgY2hhbm5lbHMgQkdS QSA8LT4gUkdCQS4KLSAgICAgICAgIGRlc3RpbmF0aW9uUGl4ZWxbMF0gPSBzb3VyY2VQaXhlbFsy XTsKLSAgICAgICAgIGRlc3RpbmF0aW9uUGl4ZWxbMV0gPSBzb3VyY2VQaXhlbFsxXTsKLSAgICAg ICAgIGRlc3RpbmF0aW9uUGl4ZWxbMl0gPSBzb3VyY2VQaXhlbFswXTsKLSAgICAgICAgIGRlc3Rp bmF0aW9uUGl4ZWxbM10gPSBzb3VyY2VQaXhlbFszXTsKLSsjZW5kaWYKLSAgICAgfQotIH0KLSAK LSsjaWYgQ1BVKEJJR19FTkRJQU4pCi0rdGVtcGxhdGU8dm9pZCAoKmNvbnZlcnRGdW5jdG9yKShQ aXhlbEZvcm1hdCwgY29uc3QgdWludDhfdCosIFBpeGVsRm9ybWF0LCB1aW50OF90Kik+Ci0rI2Vs c2UKLSB0ZW1wbGF0ZTx2b2lkICgqY29udmVydEZ1bmN0b3IpKGNvbnN0IHVpbnQ4X3QqLCB1aW50 OF90Kik+Ci0rI2VuZGlmCi0gc3RhdGljIHZvaWQgY29udmVydEltYWdlUGl4ZWxzVW5hY2NlbGVy YXRlZChjb25zdCBDb25zdFBpeGVsQnVmZmVyQ29udmVyc2lvblZpZXcmIHNvdXJjZSwgY29uc3Qg UGl4ZWxCdWZmZXJDb252ZXJzaW9uVmlldyYgZGVzdGluYXRpb24sIGNvbnN0IEludFNpemUmIGRl c3RpbmF0aW9uU2l6ZSkKLSB7Ci0gICAgIGNvbnN0IHVpbnQ4X3QqIHNvdXJjZVJvd3MgPSBzb3Vy Y2Uucm93czsKLUBAIC0yMjgsNyArMzYwLDExIEBAIHN0YXRpYyB2b2lkIGNvbnZlcnRJbWFnZVBp eGVsc1VuYWNjZWxlcmF0ZWQoY29uc3QgQ29uc3RQaXhlbEJ1ZmZlckNvbnZlcnNpb25WaWV3Ci0g ICAgIHNpemVfdCBieXRlc1BlclJvdyA9IGRlc3RpbmF0aW9uU2l6ZS53aWR0aCgpICogNDsKLSAg ICAgZm9yIChpbnQgeSA9IDA7IHkgPCBkZXN0aW5hdGlvblNpemUuaGVpZ2h0KCk7ICsreSkgewot ICAgICAgICAgZm9yIChzaXplX3QgeCA9IDA7IHggPCBieXRlc1BlclJvdzsgeCArPSA0KQotKyNp ZiBDUFUoQklHX0VORElBTikKLSsgICAgICAgICAgICBjb252ZXJ0RnVuY3Rvcihzb3VyY2UuZm9y bWF0LnBpeGVsRm9ybWF0LCAmc291cmNlUm93c1t4XSwgZGVzdGluYXRpb24uZm9ybWF0LnBpeGVs Rm9ybWF0LCAmZGVzdGluYXRpb25Sb3dzW3hdKTsKLSsjZWxzZQotICAgICAgICAgICAgIGNvbnZl cnRGdW5jdG9yKCZzb3VyY2VSb3dzW3hdLCAmZGVzdGluYXRpb25Sb3dzW3hdKTsKLSsjZW5kaWYK LSAgICAgICAgIHNvdXJjZVJvd3MgKz0gc291cmNlLmJ5dGVzUGVyUm93OwotICAgICAgICAgZGVz dGluYXRpb25Sb3dzICs9IGRlc3RpbmF0aW9uLmJ5dGVzUGVyUm93OwotICAgICB9Ci1kaWZmIC0t Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvUGl4ZWxGb3JtYXQuaCBiL1Nv dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1BpeGVsRm9ybWF0LmgKLWluZGV4IDFjYTcx MWI4Li40YTcxNjhmOCAxMDA2NDQKLS0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo aWNzL1BpeGVsRm9ybWF0LmgKLSsrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz L1BpeGVsRm9ybWF0LmgKLUBAIC0zMyw2ICszMyw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKLSBl bnVtIGNsYXNzIFBpeGVsRm9ybWF0IDogdWludDhfdCB7Ci0gICAgIFJHQkE4LAotICAgICBCR1JB OCwKLSsjaWYgQ1BVKEJJR19FTkRJQU4pCi0rICAgIEFSR0I4ID0gQkdSQTgsIC8vIEJHUkEgd2ls bCBhY3R1YWxseSBiZSBBUkdCIG9uIEJJR19FTkRJQU4KLSsjZW5kaWYKLSAgICAgUkdCMTAsCi0g ICAgIFJHQjEwQTgsCi0gfTsKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvd2Via2l0Mmd0ay9wYXRjaGVz L2JlLXR5cGVkYXJyYXkucGF0Y2ggYi9zcmNwa2dzL3dlYmtpdDJndGsvcGF0Y2hlcy9iZS10eXBl ZGFycmF5LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjYmI3MDY1NjRmZTlj Li4wMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3Mvd2Via2l0Mmd0ay9wYXRjaGVzL2JlLXR5cGVk YXJyYXkucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwyMDYgKzAsMCBAQAotU291cmNlOiBKYWNl ayBQaXN6Y3playA8amFjZWsucGlzemN6ZWtAcnVuYm94LmNvbT4KLQotaHR0cHM6Ly90ZW5mb3Vy Zm94LnRlbmRlcmFwcC5jb20vZGlzY3Vzc2lvbnMvcHJvYmxlbXMvNzUwNS1wcm9ibGVtcy11cGxv YWRpbmctdG8tZmFjZWJvb2sKLQotVXBkYXRlZCBieSBAcTY2LgotCi1kaWZmIC0tZ2l0IGEvU291 cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xMSW50T2ZmbGluZUFzbUNvbmZpZy5oIGIvU291cmNl L0phdmFTY3JpcHRDb3JlL2xsaW50L0xMSW50T2ZmbGluZUFzbUNvbmZpZy5oCi1pbmRleCBlNzZk YWRhMC4uNGRlMmUzZWEgMTAwNjQ0Ci0tLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQv TExJbnRPZmZsaW5lQXNtQ29uZmlnLmgKLSsrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGlu dC9MTEludE9mZmxpbmVBc21Db25maWcuaAotQEAgLTE5OCwzICsxOTgsOSBAQAotICNlbHNlCi0g I2RlZmluZSBPRkZMSU5FX0FTTV9IQVZFX0ZBU1RfVExTIDAKLSAjZW5kaWYKLSsKLSsjaWYgQ1BV KEJJR19FTkRJQU4pCi0rI2RlZmluZSBPRkZMSU5FX0FTTV9CSUdfRU5ESUFOIDEKLSsjZWxzZQot KyNkZWZpbmUgT0ZGTElORV9BU01fQklHX0VORElBTiAwCi0rI2VuZGlmCi1kaWZmIC0tZ2l0IGEv U291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXIzMl82NC5hc20g Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTG93TGV2ZWxJbnRlcnByZXRlcjMyXzY0LmFz bQotaW5kZXggMjI3MTZmODEuLjRmOTM3NGNlIDEwMDY0NAotLS0tIGEvU291cmNlL0phdmFTY3Jp cHRDb3JlL2xsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXIzMl82NC5hc20KLSsrKyBiL1NvdXJjZS9K YXZhU2NyaXB0Q29yZS9sbGludC9Mb3dMZXZlbEludGVycHJldGVyMzJfNjQuYXNtCi1AQCAtMTcz Miw3ICsxNzMyLDExIEBAIGxsaW50T3BXaXRoTWV0YWRhdGEob3BfZ2V0X2J5X3ZhbCwgT3BHZXRC eVZhbCwgbWFjcm8gKHNpemUsIGdldCwgZGlzcGF0Y2gsIG1ldGFkCi0gCi0gLm9wR2V0QnlWYWxO b3REb3VibGU6Ci0gICAgIHN1YmkgQXJyYXlTdG9yYWdlU2hhcGUsIHQyCi0tICAgIGJpYSB0Miwg U2xvd1B1dEFycmF5U3RvcmFnZVNoYXBlIC0gQXJyYXlTdG9yYWdlU2hhcGUsIC5vcEdldEJ5VmFs Tm90SW5kZXhlZFN0b3JhZ2UKLSsgICAgaWYgQklHX0VORElBTgotKyAgICAgICAgYmlhIHQyLCBT bG93UHV0QXJyYXlTdG9yYWdlU2hhcGUgLSBBcnJheVN0b3JhZ2VTaGFwZSwgLm9wR2V0QnlWYWxT bG93Ci0rICAgIGVsc2UKLSsgICAgICAgIGJpYSB0MiwgU2xvd1B1dEFycmF5U3RvcmFnZVNoYXBl IC0gQXJyYXlTdG9yYWdlU2hhcGUsIC5vcEdldEJ5VmFsTm90SW5kZXhlZFN0b3JhZ2UKLSsgICAg ZW5kCi0gICAgIGJpYWVxIHQxLCAtc2l6ZW9mIEluZGV4aW5nSGVhZGVyICsgSW5kZXhpbmdIZWFk ZXI6OnUubGVuZ3Rocy52ZWN0b3JMZW5ndGhbdDNdLCAub3BHZXRCeVZhbFNsb3cKLSAgICAgbG9h ZGkgQXJyYXlTdG9yYWdlOjptX3ZlY3RvciArIFRhZ09mZnNldFt0MywgdDEsIDhdLCB0MgotICAg ICBsb2FkaSBBcnJheVN0b3JhZ2U6Om1fdmVjdG9yICsgUGF5bG9hZE9mZnNldFt0MywgdDEsIDhd LCB0MQotZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9Mb3dMZXZlbElu dGVycHJldGVyNjQuYXNtIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xvd0xldmVsSW50 ZXJwcmV0ZXI2NC5hc20KLWluZGV4IGM0NTMzNTFkLi5lNjE1MjllNSAxMDA2NDQKLS0tLSBhL1Nv dXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9Mb3dMZXZlbEludGVycHJldGVyNjQuYXNtCi0rKysg Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTG93TGV2ZWxJbnRlcnByZXRlcjY0LmFzbQot QEAgLTE4NjcsNyArMTg2NywxMSBAQCBsbGludE9wV2l0aE1ldGFkYXRhKG9wX2dldF9ieV92YWws IE9wR2V0QnlWYWwsIG1hY3JvIChzaXplLCBnZXQsIGRpc3BhdGNoLCBtZXRhZAotICAgICAKLSAu b3BHZXRCeVZhbE5vdERvdWJsZToKLSAgICAgc3ViaSBBcnJheVN0b3JhZ2VTaGFwZSwgdDIKLS0g ICAgYmlhIHQyLCBTbG93UHV0QXJyYXlTdG9yYWdlU2hhcGUgLSBBcnJheVN0b3JhZ2VTaGFwZSwg Lm9wR2V0QnlWYWxOb3RJbmRleGVkU3RvcmFnZQotKyAgICBpZiBCSUdfRU5ESUFOCi0rICAgICAg ICBiaWEgdDIsIFNsb3dQdXRBcnJheVN0b3JhZ2VTaGFwZSAtIEFycmF5U3RvcmFnZVNoYXBlLCAu b3BHZXRCeVZhbFNsb3cKLSsgICAgZWxzZQotKyAgICAgICAgYmlhIHQyLCBTbG93UHV0QXJyYXlT dG9yYWdlU2hhcGUgLSBBcnJheVN0b3JhZ2VTaGFwZSwgLm9wR2V0QnlWYWxOb3RJbmRleGVkU3Rv cmFnZQotKyAgICBlbmQKLSAgICAgYmlhZXEgdDEsIC1zaXplb2YgSW5kZXhpbmdIZWFkZXIgKyBJ bmRleGluZ0hlYWRlcjo6dS5sZW5ndGhzLnZlY3Rvckxlbmd0aFt0M10sIC5vcEdldEJ5VmFsU2xv dwotICAgICBnZXQobV9kc3QsIHQwKQotICAgICBsb2FkcSBBcnJheVN0b3JhZ2U6Om1fdmVjdG9y W3QzLCB0MSwgOF0sIHQyCi1kaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp bWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXcuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50 aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3LmgKLWluZGV4IDg2ZjQ4YTAyLi4xNTQxYjNhOCAx MDA2NDQKLS0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVk QXJyYXlWaWV3LmgKLSsrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJp Y1R5cGVkQXJyYXlWaWV3LmgKLUBAIC0yOSw2ICsyOSw3IEBACi0gI2luY2x1ZGUgIlRocm93U2Nv cGUuaCIKLSAjaW5jbHVkZSAiVG9OYXRpdmVGcm9tVmFsdWUuaCIKLSAjaW5jbHVkZSA8d3RmL0No ZWNrZWRBcml0aG1ldGljLmg+Ci0rI2luY2x1ZGUgPHd0Zi9GbGlwQnl0ZXMuaD4KLSAKLSBuYW1l c3BhY2UgSlNDIHsKLSAKLUBAIC0xNDcsNyArMTQ4LDE4IEBAIHB1YmxpYzoKLSAgICAgCi0gICAg IEpTVmFsdWUgZ2V0SW5kZXhRdWlja2x5KHNpemVfdCBpKSBjb25zdAotICAgICB7Ci0rI2lmIENQ VShCSUdfRU5ESUFOKQotKyAgICAgICAgc3dpdGNoIChBZGFwdG9yOjp0eXBlVmFsdWUpIHsKLSsg ICAgICAgIGNhc2UgVHlwZUZsb2F0MzI6Ci0rICAgICAgICBjYXNlIFR5cGVGbG9hdDY0OgotKyAg ICAgICAgICAgIHJldHVybiBBZGFwdG9yOjp0b0pTVmFsdWUobnVsbHB0ciwgZ2V0SW5kZXhRdWlj a2x5QXNOYXRpdmVWYWx1ZShpKSk7Ci0rICAgICAgICBkZWZhdWx0OgotKyAgICAgICAgICAgIC8v IHR5cGVkIGFycmF5IHZpZXdzIGFyZSBjb21tb25seSBleHBlY3RlZCB0byBiZSBsaXR0bGUgZW5k aWFuIHZpZXdzIG9mIHRoZSB1bmRlcmx5aW5nIGRhdGEKLSsgICAgICAgICAgICByZXR1cm4gQWRh cHRvcjo6dG9KU1ZhbHVlKG51bGxwdHIsIGZsaXBCeXRlcyhnZXRJbmRleFF1aWNrbHlBc05hdGl2 ZVZhbHVlKGkpKSk7Ci0rICAgICAgICB9Ci0rI2Vsc2UKLSAgICAgICAgIHJldHVybiBBZGFwdG9y Ojp0b0pTVmFsdWUobnVsbHB0ciwgZ2V0SW5kZXhRdWlja2x5QXNOYXRpdmVWYWx1ZShpKSk7Ci0r I2VuZGlmCi0gICAgIH0KLSAgICAgCi0gICAgIHZvaWQgc2V0SW5kZXhRdWlja2x5VG9OYXRpdmVW YWx1ZShzaXplX3QgaSwgdHlwZW5hbWUgQWRhcHRvcjo6VHlwZSB2YWx1ZSkKLUBAIC0xNTksNyAr MTcxLDIwIEBAIHB1YmxpYzoKLSAgICAgdm9pZCBzZXRJbmRleFF1aWNrbHkoc2l6ZV90IGksIEpT VmFsdWUgdmFsdWUpCi0gICAgIHsKLSAgICAgICAgIEFTU0VSVCghdmFsdWUuaXNPYmplY3QoKSk7 Ci0rI2lmIENQVShCSUdfRU5ESUFOKQotKyAgICAgICAgc3dpdGNoIChBZGFwdG9yOjp0eXBlVmFs dWUpIHsKLSsgICAgICAgIGNhc2UgVHlwZUZsb2F0MzI6Ci0rICAgICAgICBjYXNlIFR5cGVGbG9h dDY0OgotKyAgICAgICAgICAgIHNldEluZGV4UXVpY2tseVRvTmF0aXZlVmFsdWUoaSwgdG9OYXRp dmVGcm9tVmFsdWU8QWRhcHRvcj4odmFsdWUpKTsKLSsgICAgICAgICAgICBicmVhazsKLSsgICAg ICAgIGRlZmF1bHQ6Ci0rICAgICAgICAgICAgLy8gdHlwZWQgYXJyYXkgdmlld3MgYXJlIGNvbW1v bmx5IGV4cGVjdGVkIHRvIGJlIGxpdHRsZSBlbmRpYW4gdmlld3Mgb2YgdGhlIHVuZGVybHlpbmcg ZGF0YQotKyAgICAgICAgICAgIHNldEluZGV4UXVpY2tseVRvTmF0aXZlVmFsdWUoaSwgZmxpcEJ5 dGVzKHRvTmF0aXZlRnJvbVZhbHVlPEFkYXB0b3I+KHZhbHVlKSkpOwotKyAgICAgICAgICAgIGJy ZWFrOwotKyAgICAgICAgfQotKyNlbHNlCi0gICAgICAgICBzZXRJbmRleFF1aWNrbHlUb05hdGl2 ZVZhbHVlKGksIHRvTmF0aXZlRnJvbVZhbHVlPEFkYXB0b3I+KHZhbHVlKSk7Ci0rI2VuZGlmCi0g ICAgIH0KLSAgICAgCi0gICAgIGJvb2wgc2V0SW5kZXgoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i amVjdCwgc2l6ZV90IGksIEpTVmFsdWUganNWYWx1ZSkKLUBAIC0xNzMsMTggKzE5OCw1NSBAQCBw dWJsaWM6Ci0gICAgICAgICBpZiAoaXNEZXRhY2hlZCgpIHx8IGkgPj0gbV9sZW5ndGgpCi0gICAg ICAgICAgICAgcmV0dXJuIGZhbHNlOwotIAotKyNpZiBDUFUoQklHX0VORElBTikKLSsgICAgICAg IHN3aXRjaCAoQWRhcHRvcjo6dHlwZVZhbHVlKSB7Ci0rICAgICAgICBjYXNlIFR5cGVGbG9hdDMy OgotKyAgICAgICAgY2FzZSBUeXBlRmxvYXQ2NDoKLSsgICAgICAgICAgICBzZXRJbmRleFF1aWNr bHlUb05hdGl2ZVZhbHVlKGksIHZhbHVlKTsKLSsgICAgICAgICAgICBicmVhazsKLSsgICAgICAg IGRlZmF1bHQ6Ci0rICAgICAgICAgICAgLy8gdHlwZWQgYXJyYXkgdmlld3MgYXJlIGNvbW1vbmx5 IGV4cGVjdGVkIHRvIGJlIGxpdHRsZSBlbmRpYW4gdmlld3Mgb2YgdGhlIHVuZGVybHlpbmcgZGF0 YQotKyAgICAgICAgICAgIHNldEluZGV4UXVpY2tseVRvTmF0aXZlVmFsdWUoaSwgZmxpcEJ5dGVz KHZhbHVlKSk7Ci0rICAgICAgICAgICAgYnJlYWs7Ci0rICAgICAgICB9Ci0rI2Vsc2UKLSAgICAg ICAgIHNldEluZGV4UXVpY2tseVRvTmF0aXZlVmFsdWUoaSwgdmFsdWUpOwotKyNlbmRpZgotICAg ICAgICAgcmV0dXJuIHRydWU7Ci0gICAgIH0KLSAKLSAgICAgc3RhdGljIEVsZW1lbnRUeXBlIHRv QWRhcHRvck5hdGl2ZUZyb21WYWx1ZShKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1Zh bHVlIGpzVmFsdWUpCi0gICAgIHsKLSsjaWYgQ1BVKEJJR19FTkRJQU4pCi0rICAgICAgICBzd2l0 Y2ggKEFkYXB0b3I6OnR5cGVWYWx1ZSkgewotKyAgICAgICAgY2FzZSBUeXBlRmxvYXQzMjoKLSsg ICAgICAgIGNhc2UgVHlwZUZsb2F0NjQ6Ci0rICAgICAgICAgICAgcmV0dXJuIHRvTmF0aXZlRnJv bVZhbHVlPEFkYXB0b3I+KGdsb2JhbE9iamVjdCwganNWYWx1ZSk7Ci0rICAgICAgICBkZWZhdWx0 OgotKyAgICAgICAgICAgIC8vIHR5cGVkIGFycmF5IHZpZXdzIGFyZSBjb21tb25seSBleHBlY3Rl ZCB0byBiZSBsaXR0bGUgZW5kaWFuIHZpZXdzIG9mIHRoZSB1bmRlcmx5aW5nIGRhdGEKLSsgICAg ICAgICAgICByZXR1cm4gZmxpcEJ5dGVzKHRvTmF0aXZlRnJvbVZhbHVlPEFkYXB0b3I+KGdsb2Jh bE9iamVjdCwganNWYWx1ZSkpOwotKyAgICAgICAgfQotKyNlbHNlCi0gICAgICAgICByZXR1cm4g dG9OYXRpdmVGcm9tVmFsdWU8QWRhcHRvcj4oZ2xvYmFsT2JqZWN0LCBqc1ZhbHVlKTsKLSsjZW5k aWYKLSAgICAgfQotIAotICAgICBzdGF0aWMgc3RkOjpvcHRpb25hbDxFbGVtZW50VHlwZT4gdG9B ZGFwdG9yTmF0aXZlRnJvbVZhbHVlV2l0aG91dENvZXJjaW9uKEpTVmFsdWUganNWYWx1ZSkKLSAg ICAgewotLSAgICAgICAgcmV0dXJuIHRvTmF0aXZlRnJvbVZhbHVlV2l0aG91dENvZXJjaW9uPEFk YXB0b3I+KGpzVmFsdWUpOwotKyAgICAgICAgYXV0byBvcHQgPSB0b05hdGl2ZUZyb21WYWx1ZVdp dGhvdXRDb2VyY2lvbjxBZGFwdG9yPihqc1ZhbHVlKTsKLSsjaWYgQ1BVKEJJR19FTkRJQU4pCi0r ICAgICAgICBzd2l0Y2ggKEFkYXB0b3I6OnR5cGVWYWx1ZSkgewotKyAgICAgICAgY2FzZSBUeXBl RmxvYXQzMjoKLSsgICAgICAgIGNhc2UgVHlwZUZsb2F0NjQ6Ci0rICAgICAgICAgICAgYnJlYWs7 Ci0rICAgICAgICBkZWZhdWx0OgotKyAgICAgICAgICAgIC8vIHR5cGVkIGFycmF5IHZpZXdzIGFy ZSBjb21tb25seSBleHBlY3RlZCB0byBiZSBsaXR0bGUgZW5kaWFuIHZpZXdzIG9mIHRoZSB1bmRl cmx5aW5nIGRhdGEKLSsgICAgICAgICAgICBpZiAoIW9wdCkKLSsgICAgICAgICAgICAgICAgYnJl YWs7Ci0rICAgICAgICAgICAgcmV0dXJuIHN0ZDo6b3B0aW9uYWw8RWxlbWVudFR5cGU+e2ZsaXBC eXRlcygqb3B0KX07Ci0rICAgICAgICB9Ci0rI2VuZGlmCi0rICAgICAgICByZXR1cm4gb3B0Owot ICAgICB9Ci0gCi0gICAgIHZvaWQgc29ydCgpCi1kaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp cHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b3R5cGVGdW5jdGlvbnMu aCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3 UHJvdG90eXBlRnVuY3Rpb25zLmgKLWluZGV4IGRmMDQzNWY2Li4zMDE3NTYzYyAxMDA2NDQKLS0t LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3 UHJvdG90eXBlRnVuY3Rpb25zLmgKLSsrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l L0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlRnVuY3Rpb25zLmgKLUBAIC0zODUsOSAr Mzg1LDM2IEBAIEFMV0FZU19JTkxJTkUgRW5jb2RlZEpTVmFsdWUgZ2VuZXJpY1R5cGUKLSAKLSAg ICAgc2l6ZV90IHNlYXJjaExlbmd0aCA9IHN0ZDo6bWluPHNpemVfdD4obGVuZ3RoLCB1cGRhdGVk TGVuZ3RoKTsKLSAgICAgaWYgY29uc3RleHByIChWaWV3Q2xhc3M6OkFkYXB0b3I6OmlzRmxvYXQp IHsKLS0gICAgICAgIGlmIChzdGQ6OmlzbmFuKHN0YXRpY19jYXN0PGRvdWJsZT4oKnRhcmdldE9w dGlvbikpKSB7Ci0rICAgICAgICBkb3VibGUgdGFyZ2V0T3B0aW9uTGl0dGxlRW5kaWFuQXNEb3Vi bGU7Ci0rI2lmIENQVShCSUdfRU5ESUFOKQotKyAgICAgICAgc3dpdGNoIChWaWV3Q2xhc3M6OlR5 cGVkQXJyYXlTdG9yYWdlVHlwZSkgewotKyAgICAgICAgY2FzZSBUeXBlRmxvYXQzMjoKLSsgICAg ICAgIGNhc2UgVHlwZUZsb2F0NjQ6Ci0rICAgICAgICAgICAgdGFyZ2V0T3B0aW9uTGl0dGxlRW5k aWFuQXNEb3VibGUgPSBzdGF0aWNfY2FzdDxkb3VibGU+KCp0YXJnZXRPcHRpb24pOwotKyAgICAg ICAgZGVmYXVsdDoKLSsgICAgICAgICAgICAvLyB0eXBlZCBhcnJheSB2aWV3cyBhcmUgY29tbW9u bHkgZXhwZWN0ZWQgdG8gYmUgbGl0dGxlIGVuZGlhbiB2aWV3cyBvZiB0aGUgdW5kZXJseWluZyBk YXRhCi0rICAgICAgICAgICAgdGFyZ2V0T3B0aW9uTGl0dGxlRW5kaWFuQXNEb3VibGUgPSBzdGF0 aWNfY2FzdDxkb3VibGU+KGZsaXBCeXRlcygqdGFyZ2V0T3B0aW9uKSk7Ci0rICAgICAgICB9Ci0r I2Vsc2UKLSsgICAgICAgIHRhcmdldE9wdGlvbkxpdHRsZUVuZGlhbkFzRG91YmxlID0gc3RhdGlj X2Nhc3Q8ZG91YmxlPigqdGFyZ2V0T3B0aW9uKTsKLSsjZW5kaWYKLSsKLSsgICAgICAgIGlmIChz dGQ6OmlzbmFuKHRhcmdldE9wdGlvbkxpdHRsZUVuZGlhbkFzRG91YmxlKSkgewotICAgICAgICAg ICAgIGZvciAoOyBpbmRleCA8IHNlYXJjaExlbmd0aDsgKytpbmRleCkgewotLSAgICAgICAgICAg ICAgICBpZiAoc3RkOjppc25hbihzdGF0aWNfY2FzdDxkb3VibGU+KGFycmF5W2luZGV4XSkpKQot KyAgICAgICAgICAgICAgICBkb3VibGUgYXJyYXlFbGVtZW50TGl0dGxlRW5kaWFuQXNEb3VibGU7 Ci0rI2lmIENQVShCSUdfRU5ESUFOKQotKyAgICAgICAgICAgICAgICBzd2l0Y2ggKFZpZXdDbGFz czo6VHlwZWRBcnJheVN0b3JhZ2VUeXBlKSB7Ci0rICAgICAgICAgICAgICAgIGNhc2UgVHlwZUZs b2F0MzI6Ci0rICAgICAgICAgICAgICAgIGNhc2UgVHlwZUZsb2F0NjQ6Ci0rICAgICAgICAgICAg ICAgICAgICBhcnJheUVsZW1lbnRMaXR0bGVFbmRpYW5Bc0RvdWJsZSA9IHN0YXRpY19jYXN0PGRv dWJsZT4oYXJyYXlbaW5kZXhdKTsKLSsgICAgICAgICAgICAgICAgZGVmYXVsdDoKLSsgICAgICAg ICAgICAgICAgICAgIC8vIHR5cGVkIGFycmF5IHZpZXdzIGFyZSBjb21tb25seSBleHBlY3RlZCB0 byBiZSBsaXR0bGUgZW5kaWFuIHZpZXdzIG9mIHRoZSB1bmRlcmx5aW5nIGRhdGEKLSsgICAgICAg ICAgICAgICAgICAgIGFycmF5RWxlbWVudExpdHRsZUVuZGlhbkFzRG91YmxlID0gc3RhdGljX2Nh c3Q8ZG91YmxlPihmbGlwQnl0ZXMoYXJyYXlbaW5kZXhdKSk7Ci0rICAgICAgICAgICAgICAgIH0K LSsjZWxzZQotKyAgICAgICAgICAgICAgICBhcnJheUVsZW1lbnRMaXR0bGVFbmRpYW5Bc0RvdWJs ZSA9IHN0YXRpY19jYXN0PGRvdWJsZT4oYXJyYXlbaW5kZXhdKTsKLSsjZW5kaWYKLSsgICAgICAg ICAgICAgICAgaWYgKHN0ZDo6aXNuYW4oYXJyYXlFbGVtZW50TGl0dGxlRW5kaWFuQXNEb3VibGUp KQotICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc0Jvb2xlYW4o dHJ1ZSkpOwotICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5j b2RlKGpzQm9vbGVhbihmYWxzZSkpOwpkaWZmIC0tZ2l0IGEvc3JjcGtncy93ZWJraXQyZ3RrL3Bh dGNoZXMvZGlzYWJsZS1kbWFidWYtbnZpZGlhLnBhdGNoIGIvc3JjcGtncy93ZWJraXQyZ3RrL3Bh dGNoZXMvZGlzYWJsZS1kbWFidWYtbnZpZGlhLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAwMDAwMDAuLjY1MmM2MzljZTM4YmYKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNw a2dzL3dlYmtpdDJndGsvcGF0Y2hlcy9kaXNhYmxlLWRtYWJ1Zi1udmlkaWEucGF0Y2gKQEAgLTAs MCArMSw2MyBAQAorRnJvbTogQ2FybG9zIEdhcmNpYSBDYW1wb3MgPGNnYXJjaWFAaWdhbGlhLmNv bT4KK1N1YmplY3Q6IERpc2FibGUgRE1BQnVmIHJlbmRlcmVyIGZvciBOVklESUEgcHJvcHJpZXRh cnkgZHJpdmVycworQnVnOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9 MjYyNjA3CitCdWctRGViaWFuOiBodHRwczovL2J1Z3MuZGViaWFuLm9yZy8xMDM5NzIwCitPcmln aW46IGh0dHBzOi8vZ2l0aHViLmNvbS9XZWJLaXQvV2ViS2l0L3B1bGwvMTg2MTQKK0luZGV4OiB3 ZWJraXRndGsvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvZ3RrL0FjY2VsZXJhdGVkQmFja2luZ1N0 b3JlRE1BQnVmLmNwcAorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PQorLS0tIHdlYmtpdGd0ay5vcmlnL1NvdXJjZS9XZWJL aXQvVUlQcm9jZXNzL2d0ay9BY2NlbGVyYXRlZEJhY2tpbmdTdG9yZURNQUJ1Zi5jcHAKKysrKyB3 ZWJraXRndGsvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvZ3RrL0FjY2VsZXJhdGVkQmFja2luZ1N0 b3JlRE1BQnVmLmNwcAorQEAgLTM4LDExICszOCwxMyBAQAorICNpbmNsdWRlIDxXZWJDb3JlL0dM Q29udGV4dC5oPgorICNpbmNsdWRlIDxXZWJDb3JlL0ludFJlY3QuaD4KKyAjaW5jbHVkZSA8V2Vi Q29yZS9QbGF0Zm9ybURpc3BsYXkuaD4KKysjaW5jbHVkZSA8V2ViQ29yZS9QbGF0Zm9ybURpc3Bs YXlTdXJmYWNlbGVzcy5oPgorICNpbmNsdWRlIDxlcG94eS9lZ2wuaD4KKyAjaW5jbHVkZSA8d3Rm L2dsaWIvR1VuaXF1ZVB0ci5oPgorIAorICNpZiBVU0UoR0JNKQorICNpbmNsdWRlIDxXZWJDb3Jl L0RNQUJ1ZkZvcm1hdC5oPgorKyNpbmNsdWRlIDxXZWJDb3JlL1BsYXRmb3JtRGlzcGxheUdCTS5o PgorICNpbmNsdWRlIDxnYm0uaD4KKyBzdGF0aWMgY29uc3RleHByIHVpbnQ2NF90IHNfZG1hYnVm SW52YWxpZE1vZGlmaWVyID0gdWludDY0X3QoV2ViQ29yZTo6RE1BQnVmRm9ybWF0OjpNb2RpZmll cjo6SW52YWxpZCk7CisgI2Vsc2UKK0BAIC01NSw2ICs1NywyOSBAQCBzdGF0aWMgY29uc3RleHBy IHVpbnQ2NF90IHNfZG1hYnVmSW52YWxpCisgCisgbmFtZXNwYWNlIFdlYktpdCB7CisgCisrc3Rh dGljIGJvb2wgaXNOVklESUEoKQorK3sKKysgICAgY29uc3QgY2hhciogZm9yY2VETUFCdWYgPSBn ZXRlbnYoIldFQktJVF9GT1JDRV9ETUFCVUZfUkVOREVSRVIiKTsKKysgICAgaWYgKGZvcmNlRE1B QnVmICYmIHN0cmNtcChmb3JjZURNQUJ1ZiwgIjAiKSkKKysgICAgICAgIHJldHVybiBmYWxzZTsK KysKKysgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6OlBsYXRmb3JtRGlzcGxheT4gcGxhdGZv cm1EaXNwbGF5OworKyNpZiBVU0UoR0JNKQorKyAgICBjb25zdCBjaGFyKiBkaXNhYmxlR0JNID0g Z2V0ZW52KCJXRUJLSVRfRE1BQlVGX1JFTkRFUkVSX0RJU0FCTEVfR0JNIik7CisrICAgIGlmICgh ZGlzYWJsZUdCTSB8fCAhc3RyY21wKGRpc2FibGVHQk0sICIwIikpIHsKKysgICAgICAgIGlmIChh dXRvKiBkZXZpY2UgPSBXZWJDb3JlOjpQbGF0Zm9ybURpc3BsYXk6OnNoYXJlZERpc3BsYXkoKS5n Ym1EZXZpY2UoKSkKKysgICAgICAgICAgICBwbGF0Zm9ybURpc3BsYXkgPSBXZWJDb3JlOjpQbGF0 Zm9ybURpc3BsYXlHQk06OmNyZWF0ZShkZXZpY2UpOworKyAgICB9CisrI2VuZGlmCisrICAgIGlm ICghcGxhdGZvcm1EaXNwbGF5KQorKyAgICAgICAgcGxhdGZvcm1EaXNwbGF5ID0gV2ViQ29yZTo6 UGxhdGZvcm1EaXNwbGF5U3VyZmFjZWxlc3M6OmNyZWF0ZSgpOworKworKyAgICBXZWJDb3JlOjpH TENvbnRleHQ6OlNjb3BlZEdMQ29udGV4dCBnbENvbnRleHQoV2ViQ29yZTo6R0xDb250ZXh0Ojpj cmVhdGVPZmZzY3JlZW4ocGxhdGZvcm1EaXNwbGF5ID8gKnBsYXRmb3JtRGlzcGxheSA6IFdlYkNv cmU6OlBsYXRmb3JtRGlzcGxheTo6c2hhcmVkRGlzcGxheSgpKSk7CisrICAgIGlmIChzdHJzdHIo cmVpbnRlcnByZXRfY2FzdDxjb25zdCBjaGFyKj4oZ2xHZXRTdHJpbmcoR0xfVkVORE9SKSksICJO VklESUEiKSkKKysgICAgICAgIHJldHVybiB0cnVlOworKyAgICByZXR1cm4gZmFsc2U7CisrfQor KworIE9wdGlvblNldDxETUFCdWZSZW5kZXJlckJ1ZmZlck1vZGU+IEFjY2VsZXJhdGVkQmFja2lu Z1N0b3JlRE1BQnVmOjpyZW5kZXJlckJ1ZmZlck1vZGUoKQorIHsKKyAgICAgc3RhdGljIE9wdGlv blNldDxETUFCdWZSZW5kZXJlckJ1ZmZlck1vZGU+IG1vZGU7CitAQCAtNzAsNiArOTUsOSBAQCBP cHRpb25TZXQ8RE1BQnVmUmVuZGVyZXJCdWZmZXJNb2RlPiBBY2NlCisgICAgICAgICAgICAgcmV0 dXJuOworICAgICAgICAgfQorIAorKyAgICAgICAgaWYgKGlzTlZJRElBKCkpCisrICAgICAgICAg ICAgcmV0dXJuOworKworICAgICAgICAgbW9kZS5hZGQoRE1BQnVmUmVuZGVyZXJCdWZmZXJNb2Rl OjpTaGFyZWRNZW1vcnkpOworIAorICAgICAgICAgY29uc3QgYXV0byYgZWdsRXh0ZW5zaW9ucyA9 IFdlYkNvcmU6OlBsYXRmb3JtRGlzcGxheTo6c2hhcmVkRGlzcGxheSgpLmVnbEV4dGVuc2lvbnMo KTsKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvd2Via2l0Mmd0ay9wYXRjaGVzL2ZpeC1mdGJmcy1pMzg2 LnBhdGNoIGIvc3JjcGtncy93ZWJraXQyZ3RrL3BhdGNoZXMvZml4LWZ0YmZzLWkzODYucGF0Y2gK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMC4uMWI1ZWMwZGExNDJjMAot LS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mvd2Via2l0Mmd0ay9wYXRjaGVzL2ZpeC1mdGJmcy1p Mzg2LnBhdGNoCkBAIC0wLDAgKzEsMTYgQEAKK0Zyb206IEFsYmVydG8gR2FyY2lhIDxiZXJ0b0Bp Z2FsaWEuY29tPgorU3ViamVjdDogRml4IEZUQkZTIGluIGkzODYKK0J1ZzogaHR0cHM6Ly9idWdz LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI2ODczOQorSW5kZXg6IHdlYmtpdGd0ay9Tb3Vy Y2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTG93TGV2ZWxJbnRlcnByZXRlci5jcHAKKz09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT0KKy0tLSB3ZWJraXRndGsub3JpZy9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTG93TGV2 ZWxJbnRlcnByZXRlci5jcHAKKysrKyB3ZWJraXRndGsvU291cmNlL0phdmFTY3JpcHRDb3JlL2xs aW50L0xvd0xldmVsSW50ZXJwcmV0ZXIuY3BwCitAQCAtMzM2LDggKzMzNiw2IEBAIEpTVmFsdWUg Q0xvb3A6OmV4ZWN1dGUoT3Bjb2RlSUQgZW50cnlPcGMKKyAgICAgVU5VU0VEX1ZBUklBQkxFKHQy KTsKKyAgICAgVU5VU0VEX1ZBUklBQkxFKHQzKTsKKyAgICAgVU5VU0VEX1ZBUklBQkxFKHQ1KTsK Ky0gICAgVU5VU0VEX1ZBUklBQkxFKHQ2KTsKKy0gICAgVU5VU0VEX1ZBUklBQkxFKHQ3KTsKKyAK KyAgICAgc3RydWN0IFN0YWNrUG9pbnRlclNjb3BlIHsKKyAgICAgICAgIFN0YWNrUG9pbnRlclNj b3BlKENMb29wU3RhY2smIHN0YWNrKQpkaWZmIC0tZ2l0IGEvc3JjcGtncy93ZWJraXQyZ3RrL3Bh dGNoZXMvZml4LXJpc2N2NjQtYnVpbGQucGF0Y2ggYi9zcmNwa2dzL3dlYmtpdDJndGsvcGF0Y2hl cy9maXgtcmlzY3Y2NC1idWlsZC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg M2Y1OTllYTNjNTY5OC4uMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3dlYmtpdDJndGsvcGF0 Y2hlcy9maXgtcmlzY3Y2NC1idWlsZC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDI4ICswLDAg QEAKLWRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvb2ZmbGluZWFzbS9yaXNjdjY0 LnJiIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL29mZmxpbmVhc20vcmlzY3Y2NC5yYgotaW5kZXgg ODFmMzU2ZDA0YWUxLi40YWJiMTc2MTUwOWQgMTAwNjQ0Ci0tLS0gYS9Tb3VyY2UvSmF2YVNjcmlw dENvcmUvb2ZmbGluZWFzbS9yaXNjdjY0LnJiCi0rKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv b2ZmbGluZWFzbS9yaXNjdjY0LnJiCi1AQCAtMTUyMyw3ICsxNTIzLDggQEAgZGVmIHJpc2N2NjRH ZW5lcmF0ZVdBU01QbGFjZWhvbGRlcnMobGlzdCkKLSAgICAgICAgIGlmIG5vZGUuaXNfYT8gSW5z dHJ1Y3Rpb24KLSAgICAgICAgICAgICBjYXNlIG5vZGUub3Bjb2RlCi0gICAgICAgICAgICAgd2hl biAibG9hZGxpbmthY3FiIiwgImxvYWRsaW5rYWNxaCIsICJsb2FkbGlua2FjcWkiLCAibG9hZGxp bmthY3FxIiwKLS0gICAgICAgICAgICAgICAgICJzdG9yZWNvbmRyZWxiIiwgInN0b3JlY29uZHJl bGgiLCAic3RvcmVjb25kcmVsaSIsICJzdG9yZWNvbmRyZWxxIgotKyAgICAgICAgICAgICAgICAg InN0b3JlY29uZHJlbGIiLCAic3RvcmVjb25kcmVsaCIsICJzdG9yZWNvbmRyZWxpIiwgInN0b3Jl Y29uZHJlbHEiLAotKyAgICAgICAgICAgICAgICAgImxvYWR2IiwgInN0b3JldiIKLSAgICAgICAg ICAgICAgICAgbmV3TGlzdCA8PCBJbnN0cnVjdGlvbi5uZXcobm9kZS5jb2RlT3JpZ2luLCAicnZf ZWJyZWFrIiwgW10sICJXZWJBc3NlbWJseSBwbGFjZWhvbGRlciBmb3Igb3Bjb2RlICN7bm9kZS5v cGNvZGV9IikKLSAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgIG5ld0xpc3QgPDwg bm9kZQotZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtRW5hYmxlLmggYi9Tb3Vy Y2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJsZS5oCi1pbmRleCBlMzBhM2Q4Y2UwNzcuLjkzN2ZkZDQ0 N2Y5MiAxMDA2NDQKLS0tLSBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtRW5hYmxlLmgKLSsrKyBi L1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtRW5hYmxlLmgKLUBAIC02MTYsNyArNjE2LDcgQEAKLSAj dW5kZWYgRU5BQkxFX1dFQkFTU0VNQkxZCi0gI2RlZmluZSBFTkFCTEVfV0VCQVNTRU1CTFkgMQot ICN1bmRlZiBFTkFCTEVfV0VCQVNTRU1CTFlfQjNKSVQKLS0jZGVmaW5lIEVOQUJMRV9XRUJBU1NF TUJMWV9CM0pJVCAwCi0rI2RlZmluZSBFTkFCTEVfV0VCQVNTRU1CTFlfQjNKSVQgMQotICN1bmRl ZiBFTkFCTEVfV0VCQVNTRU1CTFlfQkJRSklUCi0gI2RlZmluZSBFTkFCTEVfV0VCQVNTRU1CTFlf QkJRSklUIDAKLSAjZW5kaWYKLQpkaWZmIC0tZ2l0IGEvc3JjcGtncy93ZWJraXQyZ3RrL3BhdGNo ZXMvaW5pdGlhbC1leGVjLnBhdGNoIGIvc3JjcGtncy93ZWJraXQyZ3RrL3BhdGNoZXMvaW5pdGlh bC1leGVjLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1NzkwODRiZDYwNjUw Li4wMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3Mvd2Via2l0Mmd0ay9wYXRjaGVzL2luaXRpYWwt ZXhlYy5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDIzICswLDAgQEAKLVNvdXJjZTogaHR0cHM6 Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI1NDI4NgotCi1Vc2FnZSBpbml0aWFs LWV4ZWMgVExTIGlzIGluY29tcGF0aWJsZSB3aXRoIGRsb3BlbigpIG9uIG11c2wuCi0KLVNlZSBh bHNvOiBodHRwczovL2dpdGxhYi5mcmVlZGVza3RvcC5vcmcvbWVzYS9tZXNhLy0vY29tbWl0Lzg1 NzBhMmEyODA1ODdhMWU0M2FjMTFhZDQ2YWQ2MmRmZGQ2YzdiMzkKLSAuLi4vcGxhdGZvcm0vZ3Jh cGhpY3MvZ2JtL0dyYXBoaWNzQ29udGV4dEdMQU5HTEVMaW51eC5jcHAgICB8IDYgKysrKystCi0g MSBmaWxlIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQotLS0tIGEvU291 cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ2JtL0dyYXBoaWNzQ29udGV4dEdMQU5HTEVM aW51eC5jcHAJCi0rKysgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nYm0vR3Jh cGhpY3NDb250ZXh0R0xBTkdMRUxpbnV4LmNwcAkKLUBAIC0xMDgsNyArMTA4LDExIEBAIFJlZlB0 cjxQaXhlbEJ1ZmZlcj4gR3JhcGhpY3NDb250ZXh0R0xBTkdMRTo6cmVhZENvbXBvc2l0ZWRSZXN1 bHRzKCkKLSAKLSBib29sIEdyYXBoaWNzQ29udGV4dEdMQU5HTEU6Om1ha2VDb250ZXh0Q3VycmVu dCgpCi0gewotLSAgICBzdGF0aWMgdGhyZWFkX2xvY2FsIFRMU19NT0RFTF9JTklUSUFMX0VYRUMg R3JhcGhpY3NDb250ZXh0R0xBTkdMRSogc19jdXJyZW50Q29udGV4dCB7IG51bGxwdHIgfTsKLSsg ICAgI2lmZGVmIF9fR0xJQkNfXwotKyAgICAgICAgc3RhdGljIHRocmVhZF9sb2NhbCBUTFNfTU9E RUxfSU5JVElBTF9FWEVDIEdyYXBoaWNzQ29udGV4dEdMQU5HTEUqIHNfY3VycmVudENvbnRleHQg eyBudWxscHRyIH07Ci0rICAgICNlbHNlCi0rICAgICAgICBzdGF0aWMgdGhyZWFkX2xvY2FsIEdy YXBoaWNzQ29udGV4dEdMQU5HTEUqIHNfY3VycmVudENvbnRleHQgeyBudWxscHRyIH07Ci0rICAg ICNlbmRpZgotIAotICAgICBpZiAoc19jdXJyZW50Q29udGV4dCA9PSB0aGlzKQotICAgICAgICAg cmV0dXJuIHRydWU7Ci0tLSAKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvd2Via2l0Mmd0ay9wYXRjaGVz L2xlLWNoZWNrLnBhdGNoIGIvc3JjcGtncy93ZWJraXQyZ3RrL3BhdGNoZXMvbGUtY2hlY2sucGF0 Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGM1YTg3M2JlZmQ0YmYuLjAwMDAwMDAw MDAwMDAKLS0tIGEvc3JjcGtncy93ZWJraXQyZ3RrL3BhdGNoZXMvbGUtY2hlY2sucGF0Y2gKKysr IC9kZXYvbnVsbApAQCAtMSwyNiArMCwwIEBACi1Gcm9tIGVmOGY5YTBiNjE1MDk0MDFlNjRjNzE3 YzdjYzZmMDI1ZjFiNDkzMDAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBxNjYgPGRh bmllbEBvY3RhZm9yZ2Uub3JnPgotRGF0ZTogTW9uLCA0IEphbiAyMDIxIDE5OjEyOjI1ICswMTAw Ci1TdWJqZWN0OiBbUEFUQ0hdIHBvcnRhYmxlIGxpdHRsZSBlbmRpYW4gY2hlY2sKLQotLS0tCi0g U291cmNlL1RoaXJkUGFydHkveGRnbWltZS9zcmMveGRnbWltZW1hZ2ljLmMgfCAzICstLQotIDEg ZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMiBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdp dCBTb3VyY2UvVGhpcmRQYXJ0eS94ZGdtaW1lL3NyYy94ZGdtaW1lbWFnaWMuYyBTb3VyY2UvVGhp cmRQYXJ0eS94ZGdtaW1lL3NyYy94ZGdtaW1lbWFnaWMuYwotaW5kZXggM2E2MmI5ZC4uOWJkNGUx ZCAxMDA2NDQKLS0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L3hkZ21pbWUvc3JjL3hkZ21pbWVtYWdp Yy5jCi0rKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS94ZGdtaW1lL3NyYy94ZGdtaW1lbWFnaWMuYwot QEAgLTQ4NSw4ICs0ODUsNyBAQCBfeGRnX21pbWVfbWFnaWNfcGFyc2VfbWFnaWNfbGluZSAoRklM RSAgICAgICAgICAgICAgKm1hZ2ljX2ZpbGUsCi0gCSAgICAgIF94ZGdfbWltZV9tYWdpY19tYXRj aGxldF9mcmVlIChtYXRjaGxldCk7Ci0gCSAgICAgIHJldHVybiBYREdfTUlNRV9NQUdJQ19FUlJP UjsKLSAJICAgIH0KLS0JICAvKiBGSVhNRTogbmVlZCB0byBnZXQgdGhpcyBkZWZpbmVkIGluIGEg PGNvbmZpZy5oPiBzdHlsZSBmaWxlICovCi0tI2lmIExJVFRMRV9FTkRJQU4KLSsjaWYgX19CWVRF X09SREVSX18gPT0gX19PUkRFUl9MSVRUTEVfRU5ESUFOX18KLSAJICBmb3IgKGkgPSAwOyBpIDwg bWF0Y2hsZXQtPnZhbHVlX2xlbmd0aDsgaSA9IGkgKyBtYXRjaGxldC0+d29yZF9zaXplKQotIAkg ICAgewotIAkgICAgICBpZiAobWF0Y2hsZXQtPndvcmRfc2l6ZSA9PSAyKQotLS0gCi0yLjMwLjAK LQpkaWZmIC0tZ2l0IGEvc3JjcGtncy93ZWJraXQyZ3RrL3BhdGNoZXMvcHJlZmVyLXB0aHJlYWQu cGF0Y2ggYi9zcmNwa2dzL3dlYmtpdDJndGsvcGF0Y2hlcy9wcmVmZXItcHRocmVhZC5wYXRjaApu ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwLi5jYjE0NGY2ZGJiNTdmCi0t LSAvZGV2L251bGwKKysrIGIvc3JjcGtncy93ZWJraXQyZ3RrL3BhdGNoZXMvcHJlZmVyLXB0aHJl YWQucGF0Y2gKQEAgLTAsMCArMSwyOCBAQAorRnJvbTogQWxiZXJ0byBHYXJjaWEgPGJlcnRvQGln YWxpYS5jb20+CitEZXNjcmlwdGlvbjogRW5hYmxlIFRIUkVBRFNfUFJFRkVSX1BUSFJFQURfRkxB RworIFRoaXMgZml4ZXMgYSBGVEJGUyBpbiByaXNjdjY0CitCdWc6IGh0dHBzOi8vYnVncy53ZWJr aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODI2MjIKK0J1Zy1EZWJpYW46IGh0dHBzOi8vYnVncy5k ZWJpYW4ub3JnLzg5NTk2OQorT3JpZ2luOiBodHRwczovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2Vz ZXQvMjMxODQzCitJbmRleDogd2Via2l0Z3RrL1NvdXJjZS9jbWFrZS9PcHRpb25zR1RLLmNtYWtl Cis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09CistLS0gd2Via2l0Z3RrLm9yaWcvU291cmNlL2NtYWtlL09wdGlvbnNHVEsu Y21ha2UKKysrKyB3ZWJraXRndGsvU291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UKK0BAIC0x Myw2ICsxMyw4IEBAIGVuZGlmICgpCisgCisgc2V0KFVTRVJfQUdFTlRfQlJBTkRJTkcgIiIgQ0FD SEUgU1RSSU5HICJCcmFuZGluZyB0byBhZGQgdG8gdXNlciBhZ2VudCBzdHJpbmciKQorIAorK3Nl dChUSFJFQURTX1BSRUZFUl9QVEhSRUFEX0ZMQUcgT04pCisrCisgZmluZF9wYWNrYWdlKENhaXJv IDEuMTYuMCBSRVFVSVJFRCkKKyBmaW5kX3BhY2thZ2UoRm9udGNvbmZpZyAyLjEzLjAgUkVRVUlS RUQpCisgZmluZF9wYWNrYWdlKEZyZWV0eXBlIDIuOS4wIFJFUVVJUkVEKQorSW5kZXg6IHdlYmtp dGd0ay9Tb3VyY2UvY21ha2UvT3B0aW9uc0pTQ09ubHkuY21ha2UKKz09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKy0tLSB3 ZWJraXRndGsub3JpZy9Tb3VyY2UvY21ha2UvT3B0aW9uc0pTQ09ubHkuY21ha2UKKysrKyB3ZWJr aXRndGsvU291cmNlL2NtYWtlL09wdGlvbnNKU0NPbmx5LmNtYWtlCitAQCAtMSwzICsxLDQgQEAK KytzZXQoVEhSRUFEU19QUkVGRVJfUFRIUkVBRF9GTEFHIE9OKQorIGZpbmRfcGFja2FnZShUaHJl YWRzIFJFUVVJUkVEKQorIAorIGlmIChNU1ZDKQpkaWZmIC0tZ2l0IGEvc3JjcGtncy93ZWJraXQy Z3RrL3BhdGNoZXMvcmVwcm9kdWNpYmxlLnBhdGNoIGIvc3JjcGtncy93ZWJraXQyZ3RrL3BhdGNo ZXMvcmVwcm9kdWNpYmxlLnBhdGNoCmluZGV4IDJmM2E1NTVjYmNmZDQuLjQ0MmI3ZDJhNmFlZjQg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvd2Via2l0Mmd0ay9wYXRjaGVzL3JlcHJvZHVjaWJsZS5wYXRj aAorKysgYi9zcmNwa2dzL3dlYmtpdDJndGsvcGF0Y2hlcy9yZXByb2R1Y2libGUucGF0Y2gKQEAg LTUsNyArNSw3IEBAIERhdGU6ICAgV2VkIEphbiA1IDE3OjUwOjA3IDIwMjIgKzAxMDAKICAgICBy ZXByb2R1Y2libGUgYnVpbGQKIAogZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz L3NjcmlwdHMvQ29kZUdlbmVyYXRvci5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw dHMvQ29kZUdlbmVyYXRvci5wbQotaW5kZXggYTYwNGJmZDMuLmMyNjdiNDAyIDEwMDY0NAoraW5k ZXggMWU5NTc4NGIuLmViNjQyYTUyIDEwMDY0NAogLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu Z3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yLnBtCiArKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n cy9zY3JpcHRzL0NvZGVHZW5lcmF0b3IucG0KIEBAIC0zMjQsNyArMzI0LDcgQEAgc3ViIE1lcmdl RXh0ZW5kZWRBdHRyaWJ1dGVzRnJvbVN1cHBsZW1lbnRhbApAQCAtMTgsNyArMTgsNyBAQCBpbmRl eCBhNjA0YmZkMy4uYzI2N2I0MDIgMTAwNjQ0CiAgICAgICAgICBmb3IgbXkgJGNvbnRleHRBbGxv d2VkIChAeyRpZGxBdHRyaWJ1dGVzLT57JGV4dGVuZGVkQXR0cmlidXRlTmFtZX0tPnsiY29udGV4 dHNBbGxvd2VkIn19KSB7CiAgICAgICAgICAgICAgaWYgKCRjb250ZXh0QWxsb3dlZCBlcSAkY29u dGV4dCkgewogZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29k ZUdlbmVyYXRvckpTLnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2Vu ZXJhdG9ySlMucG0KLWluZGV4IGJlNWE1ZDUxLi5iZWNiMmIyZiAxMDA2NDQKK2luZGV4IDI3NWZj ZTkxLi44YzE1MzRiZSAxMDA2NDQKIC0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw dHMvQ29kZUdlbmVyYXRvckpTLnBtCiArKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp cHRzL0NvZGVHZW5lcmF0b3JKUy5wbQogQEAgLTMyMTcsNyArMzIxNyw3IEBAIHN1YiBHZW5lcmF0 ZUhlYWRlcgpAQCAtMzAsNyArMzAsNyBAQCBpbmRleCBiZTVhNWQ1MS4uYmVjYjJiMmYgMTAwNjQ0 CiAgICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiB8ICIgLiAkc3RydWN0dXJlRmxh Zyk7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiO1xuIik7Ci1A QCAtNzQzMyw3ICs3NDMzLDcgQEAgc3ViIFdyaXRlRGF0YQorQEAgLTc1MTUsNyArNzUxNSw3IEBA IHN1YiBXcml0ZURhdGEKICAKICAgICAgbXkgQGluY2x1ZGVzID0gKCk7CiAgICAgIG15ICVpbXBs SW5jbHVkZUNvbmRpdGlvbnMgPSAoKTsKQEAgLTM5LDcgKzM5LDcgQEAgaW5kZXggYmU1YTVkNTEu LmJlY2IyYjJmIDEwMDY0NAogICAgICAgICAgbmV4dCBpZiAkaGVhZGVySW5jbHVkZXN7JGluY2x1 ZGV9OwogICAgICAgICAgbmV4dCBpZiAkaGVhZGVyVHJhaWxpbmdJbmNsdWRlc3skaW5jbHVkZX07 CiAgCi1AQCAtNzQ3Myw3ICs3NDczLDcgQEAgc3ViIFdyaXRlRGF0YQorQEAgLTc1NTUsNyArNzU1 NSw3IEBAIHN1YiBXcml0ZURhdGEKICAgICAgJGNvbnRlbnRzID0gam9pbiAiIiwgQGhlYWRlckNv bnRlbnRIZWFkZXI7CiAgCiAgICAgIEBpbmNsdWRlcyA9ICgpOwpAQCAtNDgsNyArNDgsNyBAQCBp bmRleCBiZTVhNWQ1MS4uYmVjYjJiMmYgMTAwNjQ0CiAgICAgICAgICAkaW5jbHVkZSA9ICJcIiRp bmNsdWRlXCIiIHVubGVzcyAkaW5jbHVkZSA9fiAvXlsiPF0vOyAjICIKICAgICAgICAgICRpbmNs dWRlID0gU3Vic3RpdHV0ZUhlYWRlcigkaW5jbHVkZSk7CiAgICAgICAgICBwdXNoIEBpbmNsdWRl cywgJGluY2x1ZGU7Ci1AQCAtNzQ4Nyw3ICs3NDg3LDcgQEAgc3ViIFdyaXRlRGF0YQorQEAgLTc1 NjksNyArNzU2OSw3IEBAIHN1YiBXcml0ZURhdGEKICAgICAgJGNvbnRlbnRzIC49IGpvaW4gIiIs IEBoZWFkZXJDb250ZW50OwogIAogICAgICBAaW5jbHVkZXMgPSAoKTsKQEAgLTU3LDcgKzU3LDcg QEAgaW5kZXggYmU1YTVkNTEuLmJlY2IyYjJmIDEwMDY0NAogICAgICAgICAgJGluY2x1ZGUgPSAi XCIkaW5jbHVkZVwiIiB1bmxlc3MgJGluY2x1ZGUgPX4gL15bIjxdLzsgIyAiCiAgICAgICAgICBw dXNoIEBpbmNsdWRlcywgJGluY2x1ZGU7CiAgICAgIH0KLUBAIC03NTYwLDcgKzc1NjAsNyBAQCBz dWIgR2VuZXJhdGVQcm90b3R5cGVEZWNsYXJhdGlvbgorQEAgLTc2NDIsNyArNzY0Miw3IEBAIHN1 YiBHZW5lcmF0ZVByb3RvdHlwZURlY2xhcmF0aW9uCiAgICAgIGlmICglc3RydWN0dXJlRmxhZ3Mp IHsKICAgICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwgInB1YmxpYzpcbiIpOwogICAgICAgICAg cHVzaChAJG91dHB1dEFycmF5LCAiICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgU3RydWN0 dXJlRmxhZ3MgPSBCYXNlOjpTdHJ1Y3R1cmVGbGFncyIpOwpAQCAtNjYsMTYgKzY2LDMgQEAgaW5k ZXggYmU1YTVkNTEuLmJlY2IyYjJmIDEwMDY0NAogICAgICAgICAgICAgIHB1c2goQCRvdXRwdXRB cnJheSwgIiB8ICIgLiAkc3RydWN0dXJlRmxhZyk7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNo KEAkb3V0cHV0QXJyYXksICI7XG4iKTsKLWRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvdG9vbHMv c2NyaXB0cy92ZXJzaW9uLXN0YW1wLnBsIGIvU291cmNlL2NtYWtlL3Rvb2xzL3NjcmlwdHMvdmVy c2lvbi1zdGFtcC5wbAotaW5kZXggODg4YTQ1MDIuLjU3YWI5YjE2IDEwMDY0NAotLS0tIGEvU291 cmNlL2NtYWtlL3Rvb2xzL3NjcmlwdHMvdmVyc2lvbi1zdGFtcC5wbAotKysrIGIvU291cmNlL2Nt YWtlL3Rvb2xzL3NjcmlwdHMvdmVyc2lvbi1zdGFtcC5wbAotQEAgLTc1LDcgKzc1LDcgQEAgbXkg JFZFUlNJT05fRklMRSA9IEZpbGU6OlNwZWMtPmNhdGZpbGUoRmlsZTo6U3BlYy0+Y2Fub25wYXRo KCRpbnRkaXIpLCAnaW5jbHVkZScKLSAKLSBvcGVuKFZFUlNJT05fSU5GTywgJzwnLCAkVkVSU0lP Tl9GSUxFKSBvciBkaWUgIlVuYWJsZSB0byBvcGVuICRWRVJTSU9OX0ZJTEU6ICQhXG4iOwotIHdo aWxlIChteSAkbGluZSA9IDxWRVJTSU9OX0lORk8+KSB7Ci0tICAgIGZvcmVhY2ggbXkgJGNvbXBv bmVudEtleSAoa2V5cyAlY29tcG9uZW50cykgewotKyAgICBmb3JlYWNoIG15ICRjb21wb25lbnRL ZXkgKHNvcnQga2V5cyAlY29tcG9uZW50cykgewotICAgICAgICAgaWYgKCRsaW5lICF+IG0vJGNv bXBvbmVudEtleS8pIHsKLSAgICAgICAgICAgICBuZXh0OwotICAgICAgICAgfQpkaWZmIC0tZ2l0 IGEvc3JjcGtncy93ZWJraXQyZ3RrL3RlbXBsYXRlIGIvc3JjcGtncy93ZWJraXQyZ3RrL3RlbXBs YXRlCmluZGV4IDlmNjc5OTZlMjA5ZTUuLjVmYzhjNjZkN2EyNzggMTAwNjQ0Ci0tLSBhL3NyY3Br Z3Mvd2Via2l0Mmd0ay90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3dlYmtpdDJndGsvdGVtcGxhdGUK QEAgLTEsMTAgKzEsMTAgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3dlYmtpdDJndGsnCiBwa2du YW1lPXdlYmtpdDJndGsKLXZlcnNpb249Mi40MC4wCi1yZXZpc2lvbj00Cit2ZXJzaW9uPTIuNDIu NQorcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGJ1aWxkX2hlbHBlcj0iZ2lyIgotY29u ZmlndXJlX2FyZ3M9Ii1EUE9SVD1HVEsgLURVU0VfTERfR09MRD1PRkYKK2NvbmZpZ3VyZV9hcmdz PSItRFBPUlQ9R1RLCiAgLURDTUFLRV9MSU5LRVI9JHtYQlBTX0NST1NTX1RSSVBMRVR9LWdjYyAt RENNQUtFX1NLSVBfUlBBVEg9T04KICAtREVOQUJMRV9KT1VSTkFMRF9MT0c9T0ZGIC1EVVNFX1dP RkYyPU9OIC1EVVNFX1dQRV9SRU5ERVJFUj1PTgogIC1ERU5BQkxFX01JTklCUk9XU0VSPSQodm9w dF9pZiBtaW5pYnJvd3NlciBPTiBPRkYpCkBAIC0xNSw3ICsxNSw4IEBAIGNvbmZpZ3VyZV9hcmdz PSItRFBPUlQ9R1RLIC1EVVNFX0xEX0dPTEQ9T0ZGCiAgLURFTkFCTEVfV0FZTEFORF9UQVJHRVQ9 JCh2b3B0X2lmIHdheWxhbmQgT04gT0ZGKQogIC1ERU5BQkxFX1gxMV9UQVJHRVQ9JCh2b3B0X2lm IHgxMSBPTiBPRkYpCiAgLURFTkFCTEVfU0FNUExJTkdfUFJPRklMRVI9JCh2b3B0X2lmIHNhbXBs aW5nX3Byb2ZpbGVyIE9OIE9GRikKLSAtREVOQUJMRV9CVUJCTEVXUkFQX1NBTkRCT1g9JCh2b3B0 X2lmIGJ1YmJsZXdyYXAgT04gT0ZGKSIKKyAtREVOQUJMRV9CVUJCTEVXUkFQX1NBTkRCT1g9JCh2 b3B0X2lmIGJ1YmJsZXdyYXAgT04gT0ZGKQorIC1EVVNFX0pQRUdYTD1PRkYiCiAjIERvbid0IHJl bW92ZSB3aGljaCBmcm9tIGhvc3RtYWtlZGVwZW5kcwogIyBPdGhlcndpc2UsIHRoZXkgaW52b2tl IC91c3IvYmluL2NjYWNoZSAvdXNyL2xpYi9jY2FjaGUvYmluLyRDQwogaG9zdG1ha2VkZXBlbmRz PSJwZXJsIHB5dGhvbjMgcGtnLWNvbmZpZyBncGVyZiBmbGV4IHJ1YnkgZ2V0dGV4dCBnbGliLWRl dmVsCkBAIC0zNiw3ICszNyw3IEBAIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9pZGxp bnV4Lm9yZz4iCiBsaWNlbnNlPSJMR1BMLTIuMS1vci1sYXRlciwgQlNELTItQ2xhdXNlIgogaG9t ZXBhZ2U9Imh0dHBzOi8vd2Via2l0Z3RrLm9yZy8iCiBkaXN0ZmlsZXM9Imh0dHBzOi8vd2Via2l0 Z3RrLm9yZy9yZWxlYXNlcy93ZWJraXRndGstJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1h NDYwN2VhMWJmODk2NjllODliMWNiMmM2M2ZhYWVjNTEzZjkzZGUwOWI2YWU2MGNjNzFkNmE4YWFi N2FiMzkzCitjaGVja3N1bT1iNjQyNzhjMWYyMGI4Y2ZkYmZiNWZmNTczYzM3ZDg3MWFiYTc0YTFk YjI2ZDliMzlmNzRlODk1M2ZlNjFlNzQ5CiBtYWtlX2NoZWNrPW5vICMgVE9ETwogCiByZXBsYWNl cz0id2Via2l0Mmd0ay1jb21tb24+MCIKQEAgLTY5LDYgKzcwLDggQEAgaWYgWyAiJGJ1aWxkX29w dGlvbl9idWJibGV3cmFwIiBdOyB0aGVuCiAJaG9zdG1ha2VkZXBlbmRzKz0iIGJ1YmJsZXdyYXAg eGRnLWRidXMtcHJveHkiCiAJbWFrZWRlcGVuZHMrPSIgbGlic2VjY29tcC1kZXZlbCIKIAlkZXBl bmRzKz0iIGJ1YmJsZXdyYXAgeGRnLWRidXMtcHJveHkiCisJY29uZmlndXJlX2FyZ3MrPSIgLURC V1JBUF9FWEVDVVRBQkxFPS91c3IvYmluL2J3cmFwCisJIC1EREJVU19QUk9YWV9FWEVDVVRBQkxF PS91c3IvYmluL3hkZy1kYnVzLXByb3h5IgogZmkKIAogaWYgWyAiJGJ1aWxkX29wdGlvbl9sdG8i IC1hIC16ICIkYnVpbGRfb3B0aW9uX2NsYW5nIiBdOyB0aGVuCkBAIC0xMjIsNiArMTI1LDggQEAg aWYgWyAiJGJ1aWxkX29wdGlvbl9zYW1wbGluZ19wcm9maWxlciIgLWEgLXogIiRidWlsZF9vcHRp b25faml0IiBdOyB0aGVuCiAJYnJva2VuPSJzYW1wbGluZ19wcm9maWxlciByZXF1aXJlcyBKSVQi CiBmaQogCitfZGVwZW5kcz0iJHtkZXBlbmRzfSIKKwogcHJlX2NvbmZpZ3VyZSgpIHsKIAlpZiBb ICIkYnVpbGRfb3B0aW9uX2NsYW5nIiBdOyB0aGVuCiAJCWV4cG9ydCBDQz1jbGFuZwpAQCAtMTQ3 LDcgKzE1Miw3IEBAIHByZV9jb25maWd1cmUoKSB7CiB9CiAKIHBvc3RfY29uZmlndXJlKCkgewot CW1rZGlyIC1wIHdlYmtpdDJndGstNDAgd2Via2l0Mmd0ay01MAorCW1rZGlyIC1wIHdlYmtpdDJn dGstNDAgd2Via2l0Mmd0ay02MAogCSgKIAkJY2Qgd2Via2l0Mmd0ay00MAogCQljb25maWd1cmVf YXJncz0iJHtjb25maWd1cmVfYXJnc30gLURVU0VfU09VUDI9T04gLURFTkFCTEVfV0VCRFJJVkVS PU9GRiIgXApAQCAtMTU1LDcgKzE2MCw3IEBAIHBvc3RfY29uZmlndXJlKCkgewogCSkKIAogCSgK LQkJY2Qgd2Via2l0Mmd0ay01MAorCQljZCB3ZWJraXQyZ3RrLTYwCiAJCWNvbmZpZ3VyZV9hcmdz PSIke2NvbmZpZ3VyZV9hcmdzfSAtRFVTRV9HVEs0PU9OIC1ERU5BQkxFX1dFQkRSSVZFUj1PRkYi IFwKIAkJZG9fY29uZmlndXJlCiAJKQpAQCAtMTYzLDEyICsxNjgsMTIgQEAgcG9zdF9jb25maWd1 cmUoKSB7CiAKIHBvc3RfYnVpbGQoKSB7CiAJKGNkIHdlYmtpdDJndGstNDAgJiYgTklOSkFfU1RB VFVTPSJbMi8zXVslZi8ldF0gIiBkb19idWlsZCkKLQkoY2Qgd2Via2l0Mmd0ay01MCAmJiBOSU5K QV9TVEFUVVM9IlszLzNdWyVmLyV0XSAiIGRvX2J1aWxkKQorCShjZCB3ZWJraXQyZ3RrLTYwICYm IE5JTkpBX1NUQVRVUz0iWzMvM11bJWYvJXRdICIgZG9fYnVpbGQpCiB9CiAKIHBvc3RfaW5zdGFs bCgpIHsKIAkoY2Qgd2Via2l0Mmd0ay00MCAmJiBkb19pbnN0YWxsKQotCShjZCB3ZWJraXQyZ3Rr LTUwICYmIGRvX2luc3RhbGwpCisJKGNkIHdlYmtpdDJndGstNjAgJiYgZG9faW5zdGFsbCkKIAog CXZsaWNlbnNlIFNvdXJjZS9XZWJDb3JlL0xJQ0VOU0UtQVBQTEUKIAl2bGljZW5zZSBTb3VyY2Uv V2ViQ29yZS9MSUNFTlNFLUxHUEwtMi4xCkBAIC0xOTIsNyArMTk3LDcgQEAgd2Via2l0Mmd0ay1k ZXZlbF9wYWNrYWdlKCkgewogfQogCiBsaWJ3ZWJraXQyZ3RrNDFfcGFja2FnZSgpIHsKLQlkZXBl bmRzPSIke2RlcGVuZHN9IgorCWRlcGVuZHM9IiR7X2RlcGVuZHN9IgogCXNob3J0X2Rlc2M9IkdU SyszIHBvcnQgb2YgdGhlIFdlYktpdCBicm93c2VyIGVuZ2luZSAoc291cDMpIgogCXBrZ19pbnN0 YWxsKCkgewogCQl2bW92ZSB1c3IvYmluL1dlYktpdFdlYkRyaXZlcgpAQCAtMjI4LDcgKzIzMyw3 IEBAIGxpYndlYmtpdDJndGs0MS1kZXZlbF9wYWNrYWdlKCkgewogfQogCiBsaWJ3ZWJraXRndGs2 MF9wYWNrYWdlKCkgewotCWRlcGVuZHM9IiR7ZGVwZW5kc30iCisJZGVwZW5kcz0iJHtfZGVwZW5k c30iCiAJc2hvcnRfZGVzYz0iR1RLNCBwb3J0IG9mIHRoZSBXZWJLaXQgYnJvd3NlciBlbmdpbmUi CiAJcGtnX2luc3RhbGwoKSB7CiAJCXZtb3ZlIHVzci9saWJleGVjL3dlYmtpdGd0ay02LjAK --===============8790915825132108814==--