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 11678 invoked from network); 15 Nov 2021 14:51:53 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 15 Nov 2021 14:51:53 -0000 Content-Type: multipart/mixed; boundary="===============0371231664671341540==" MIME-Version: 1.0 Subject: =?utf8?q?=5BPR_PATCH=5D_chromium=3A_update_to_96=2E0=2E4664=2E45=2E?= To: ml@inbox.vuxu.org From: Duncaen Reply-to: ml@inbox.vuxu.org Message-ID: Date: Mon, 15 Nov 2021 15:51:53 +0100 List-Id: GitHub notification mails are now in MIME to allow UTF8. --===============0371231664671341540== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYSBuZXcgcHVsbCByZXF1ZXN0IGJ5IER1bmNhZW4gYWdhaW5zdCBtYXN0ZXIgb24g dGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29tL0R1bmNhZW4v dm9pZC1wYWNrYWdlcyBjaHJvbWl1bS05NgpodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92 b2lkLXBhY2thZ2VzL3B1bGwvMzQwOTQKCmNocm9taXVtOiB1cGRhdGUgdG8gOTYuMC40NjY0LjQ1 LgotIGVuYWJsZSBhYXJjaDY0KiBjcm9zcyBidWlsZA0KLSB1c2UgYC1mZGVidWctcHJlZml4LW1h cGAgZm9yIGJldHRlciBjY2FjaGUgaGl0cyB3aXRoIC1vIGRlYnVnDQoNCg0KKiBbIF0geDg2XzY0 LWdsaWJjDQoqIFsgXSB4ODZfNjQtbXVzbA0KKiBbIF0gaTY4Ni1nbGliYw0KKiBbIF0gYWFyY2g2 NC1tdXNsCgpBIHBhdGNoIGZpbGUgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92 b2lkLXBhY2thZ2VzL3B1bGwvMzQwOTQucGF0Y2ggaXMgYXR0YWNoZWQ= --===============0371231664671341540== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-chromium-96-34094.patch" RnJvbSBhNGFmNzhkNjNiY2RiZjExZjA3Mjg4NWU5YjgyNTc5MjI4Njk5YWQ2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBEdW5jYWVuIDxkdW5jYWVuQHZvaWRsaW51eC5vcmc+CkRhdGU6 IFN1biwgMjYgU2VwIDIwMjEgMTU6NDc6MjkgKzAyMDAKU3ViamVjdDogW1BBVENIXSBjaHJvbWl1 bTogdXBkYXRlIHRvIDk2LjAuNDY2NC40NS4KCi0gZW5hYmxlIGFhcmNoNjQqIGNyb3NzIGJ1aWxk Ci0gdXNlIC1mZGVidWctcHJlZml4LW1hcCBmb3IgYmV0dGVyIGNjYWNoZSBoaXRzIHdpdGggLW8g ZGVidWcKLS0tCiAuLi4vcGF0Y2hlcy9jaHJvbWl1bS05NS1oYXJmYnV6ei0zLnBhdGNoICAgICAg fCAgMzEgLQogLi4uL3BhdGNoZXMvY2hyb21pdW0tOTUtcXVpY2hlLWluY2x1ZGUucGF0Y2ggIHwg IDI1IC0KIC4uLi9jaHJvbWl1bS05Ni1Db21tYW5kTGluZS1pbmNsdWRlLnBhdGNoICAgICB8ICAy NCArCiAuLi4vY2hyb21pdW0tOTYtQ291cG9uREItaW5jbHVkZS5wYXRjaCAgICAgICAgfCAgMjUg KwogLi4ubS05Ni1Ecm1SZW5kZXJOb2RlUGF0aEZpbmRlci1pbmNsdWRlLnBhdGNoIHwgIDI0ICsK IC4uLml1bS05Ni1SZXN0cmljdGVkQ29va2llTWFuYWdlci10dXBsZS5wYXRjaCB8ICAzMSArCiBz cmNwa2dzL2Nocm9taXVtL3BhdGNoZXMvY3Jvc3MtYnVpbGQucGF0Y2ggICAgfCAgNjUgKysKIC4u Li9wYXRjaGVzL296b25lLXgxMS1maXgtVkEtQVBJLnBhdGNoICAgICAgICB8IDY3MSAtLS0tLS0t LS0tLS0tLS0tLS0KIHNyY3BrZ3MvY2hyb21pdW0vcGF0Y2hlcy9weXRob24zLjEwLnBhdGNoICAg ICB8ICA1NyAtLQogc3JjcGtncy9jaHJvbWl1bS9wYXRjaGVzL3NuZGlvLnBhdGNoICAgICAgICAg IHwgICA5IC0KIC4uLi12aXNpYmlsaXR5LW9mLWJ1aWxkLWNvbmZpZy1mcmVldHlwZS5wYXRjaCB8 ICAzMSArCiAuLi4vcGF0Y2hlcy91bmJ1bmRsZWQtY3Jvc3MtdG9vbGNoYWluLnBhdGNoICAgfCAg MTIgKwogc3JjcGtncy9jaHJvbWl1bS90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgIHwgMTM4 ICsrKy0KIDEzIGZpbGVzIGNoYW5nZWQsIDMxOCBpbnNlcnRpb25zKCspLCA4MjUgZGVsZXRpb25z KC0pCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9jaHJvbWl1bS9wYXRjaGVzL2Nocm9taXVt LTk1LWhhcmZidXp6LTMucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2Nocm9taXVt L3BhdGNoZXMvY2hyb21pdW0tOTUtcXVpY2hlLWluY2x1ZGUucGF0Y2gKIGNyZWF0ZSBtb2RlIDEw MDY0NCBzcmNwa2dzL2Nocm9taXVtL3BhdGNoZXMvY2hyb21pdW0tOTYtQ29tbWFuZExpbmUtaW5j bHVkZS5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvY2hyb21pdW0vcGF0Y2hlcy9j aHJvbWl1bS05Ni1Db3Vwb25EQi1pbmNsdWRlLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3Jj cGtncy9jaHJvbWl1bS9wYXRjaGVzL2Nocm9taXVtLTk2LURybVJlbmRlck5vZGVQYXRoRmluZGVy LWluY2x1ZGUucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2Nocm9taXVtL3BhdGNo ZXMvY2hyb21pdW0tOTYtUmVzdHJpY3RlZENvb2tpZU1hbmFnZXItdHVwbGUucGF0Y2gKIGNyZWF0 ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2Nocm9taXVtL3BhdGNoZXMvY3Jvc3MtYnVpbGQucGF0Y2gK IGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2Nocm9taXVtL3BhdGNoZXMvb3pvbmUteDExLWZp eC1WQS1BUEkucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2Nocm9taXVtL3BhdGNo ZXMvcHl0aG9uMy4xMC5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvY2hyb21pdW0v cGF0Y2hlcy91bmJ1bmRsZS1maXgtdmlzaWJpbGl0eS1vZi1idWlsZC1jb25maWctZnJlZXR5cGUu cGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2Nocm9taXVtL3BhdGNoZXMvdW5idW5k bGVkLWNyb3NzLXRvb2xjaGFpbi5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY2hyb21pdW0v cGF0Y2hlcy9jaHJvbWl1bS05NS1oYXJmYnV6ei0zLnBhdGNoIGIvc3JjcGtncy9jaHJvbWl1bS9w YXRjaGVzL2Nocm9taXVtLTk1LWhhcmZidXp6LTMucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDMzZmU5NTU2YWFmMy4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvY2hyb21p dW0vcGF0Y2hlcy9jaHJvbWl1bS05NS1oYXJmYnV6ei0zLnBhdGNoCisrKyAvZGV2L251bGwKQEAg LTEsMzEgKzAsMCBAQAotRnJvbSA5ZTAwZTcwMjYzM2M0N2M1OTBhODY5YmM2NmI1YzJjZWVjMDlk YTUwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogRG9taW5payBSw7Z0dHNjaGVzIDxk cm90dEBjaHJvbWl1bS5vcmc+Ci1EYXRlOiBUdWUsIDI4IFNlcCAyMDIxIDE1OjMxOjUwICswMDAw Ci1TdWJqZWN0OiBbUEFUQ0hdIFJvbGwgc3JjL3RoaXJkX3BhcnR5L2hhcmZidXp6LW5nL3NyYy8g NjYwMmNiYjcwLi5hNTJjNmRmMzggKDgwIGNvbW1pdHMpCi0KLUZpeGVkOiAxMjUyMjg0Ci1DaGFu Z2UtSWQ6IEllMmZmOTlkYTVlNDFjYTk3Yjg4ODFlMWJkM2UxNTg4ODFmNGQ1YThlCi1SZXZpZXdl ZC1vbjogaHR0cHM6Ly9jaHJvbWl1bS1yZXZpZXcuZ29vZ2xlc291cmNlLmNvbS9jL2Nocm9taXVt L3NyYy8rLzMxOTAyNTIKLUNvbW1pdC1RdWV1ZTogRG9taW5payBSw7Z0dHNjaGVzIDxkcm90dEBj aHJvbWl1bS5vcmc+Ci1Db21taXQtUXVldWU6IENhbGRlciBLaXRhZ2F3YSA8Y2tpdGFnYXdhQGNo cm9taXVtLm9yZz4KLUF1dG8tU3VibWl0OiBEb21pbmlrIFLDtnR0c2NoZXMgPGRyb3R0QGNocm9t aXVtLm9yZz4KLVJldmlld2VkLWJ5OiBDYWxkZXIgS2l0YWdhd2EgPGNraXRhZ2F3YUBjaHJvbWl1 bS5vcmc+Ci1SZXZpZXdlZC1ieTogQW5kZXJzIEhhcnR2b2xsIFJ1dWQgPGFuZHJ1dWRAY2hyb21p dW0ub3JnPgotQ3ItQ29tbWl0LVBvc2l0aW9uOiByZWZzL2hlYWRzL21haW5AeyM5MjU3NzZ9Ci0K LShvbmx5IGNvbXBvbmVudHMvcGFpbnRfcHJldmlldy9jb21tb24vc3Vic2V0X2ZvbnQuY2MpCi0t LS0KLQotZGlmZiAtLWdpdCBhL2NvbXBvbmVudHMvcGFpbnRfcHJldmlldy9jb21tb24vc3Vic2V0 X2ZvbnQuY2MgYi9jb21wb25lbnRzL3BhaW50X3ByZXZpZXcvY29tbW9uL3N1YnNldF9mb250LmNj Ci1pbmRleCA0NWRhZWE3YjEuLjQzYTQ0OGUgMTAwNjQ0Ci0tLS0gYS9jb21wb25lbnRzL3BhaW50 X3ByZXZpZXcvY29tbW9uL3N1YnNldF9mb250LmNjCi0rKysgYi9jb21wb25lbnRzL3BhaW50X3By ZXZpZXcvY29tbW9uL3N1YnNldF9mb250LmNjCi1AQCAtNzksNyArNzksNyBAQAotICAgLy8gUmV0 YWluIGFsbCB2YXJpYXRpb24gaW5mb3JtYXRpb24gZm9yIE9wZW5UeXBlIHZhcmlhdGlvbiBmb250 cy4gU2VlOgotICAgLy8gaHR0cHM6Ly9kb2NzLm1pY3Jvc29mdC5jb20vZW4tdXMvdHlwb2dyYXBo eS9vcGVudHlwZS9zcGVjL290dmFyb3ZlcnZpZXcKLSAgIGhiX3NldF90KiBza2lwX3N1YnNldCA9 Ci0tICAgICAgaGJfc3Vic2V0X2lucHV0X25vX3N1YnNldF90YWJsZXNfc2V0KGlucHV0LmdldCgp KTsgIC8vIE93bmVkIGJ5IHxpbnB1dHwuCi0rICAgICAgaGJfc3Vic2V0X2lucHV0X3NldChpbnB1 dC5nZXQoKSwgSEJfU1VCU0VUX1NFVFNfTk9fU1VCU0VUX1RBQkxFX1RBRyk7Ci0gICBoYl9zZXRf YWRkKHNraXBfc3Vic2V0LCBIQl9UQUcoJ2EnLCAndicsICdhJywgJ3InKSk7Ci0gICBoYl9zZXRf YWRkKHNraXBfc3Vic2V0LCBIQl9UQUcoJ2MnLCAndicsICdhJywgJ3InKSk7Ci0gICBoYl9zZXRf YWRkKHNraXBfc3Vic2V0LCBIQl9UQUcoJ2YnLCAndicsICdhJywgJ3InKSk7CmRpZmYgLS1naXQg YS9zcmNwa2dzL2Nocm9taXVtL3BhdGNoZXMvY2hyb21pdW0tOTUtcXVpY2hlLWluY2x1ZGUucGF0 Y2ggYi9zcmNwa2dzL2Nocm9taXVtL3BhdGNoZXMvY2hyb21pdW0tOTUtcXVpY2hlLWluY2x1ZGUu cGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDRiYmQ0NWNmYzA5NC4uMDAwMDAw MDAwMDAwCi0tLSBhL3NyY3BrZ3MvY2hyb21pdW0vcGF0Y2hlcy9jaHJvbWl1bS05NS1xdWljaGUt aW5jbHVkZS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDI1ICswLDAgQEAKLUZyb20gYTlkOTg2 MjAzYmNmYmFhYjg0ZjI3MGMxZGM2YzNhYmI0YzQ1MGVlMSBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKLUZyb206IFN0ZXBoYW4gSGFydG1hbm4gPHN0aGEwOUBnb29nbGVtYWlsLmNvbT4KLURhdGU6 IEZyaSwgMTcgU2VwIDIwMjEgMTQ6NTc6MzMgKzAwMDAKLVN1YmplY3Q6IFtQQVRDSF0gSVdZVTog YWRkIHN0ZGRlZi5oIGZvciBzaXplX3QgaW4gV2luZG93TWFuYWdlcgotCi0tLS0KLSBuZXQvdGhp cmRfcGFydHkvcXVpY2hlL3NyYy9odHRwMi9hZGFwdGVyL3dpbmRvd19tYW5hZ2VyLmggfCAyICsr Ci0gMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKQotCi1kaWZmIC0tZ2l0IGEvbmV0L3Ro aXJkX3BhcnR5L3F1aWNoZS9zcmMvaHR0cDIvYWRhcHRlci93aW5kb3dfbWFuYWdlci5oIGIvbmV0 L3RoaXJkX3BhcnR5L3F1aWNoZS9zcmMvaHR0cDIvYWRhcHRlci93aW5kb3dfbWFuYWdlci5oCi1p bmRleCBmMTU5ODJkLi41YTc3MDFlIDEwMDY0NAotLS0tIGEvbmV0L3RoaXJkX3BhcnR5L3F1aWNo ZS9zcmMvaHR0cDIvYWRhcHRlci93aW5kb3dfbWFuYWdlci5oCi0rKysgYi9uZXQvdGhpcmRfcGFy dHkvcXVpY2hlL3NyYy9odHRwMi9hZGFwdGVyL3dpbmRvd19tYW5hZ2VyLmgKLUBAIC0xLDYgKzEs OCBAQAotICNpZm5kZWYgUVVJQ0hFX0hUVFAyX0FEQVBURVJfV0lORE9XX01BTkFHRVJfSF8KLSAj ZGVmaW5lIFFVSUNIRV9IVFRQMl9BREFQVEVSX1dJTkRPV19NQU5BR0VSX0hfCi0gCi0rI2luY2x1 ZGUgPHN0ZGRlZi5oPgotKwotICNpbmNsdWRlIDxmdW5jdGlvbmFsPgotIAotICNpbmNsdWRlICJj b21tb24vcGxhdGZvcm0vYXBpL3F1aWNoZV9leHBvcnQuaCIKLS0tIAotMi4zMi4wCi0KZGlmZiAt LWdpdCBhL3NyY3BrZ3MvY2hyb21pdW0vcGF0Y2hlcy9jaHJvbWl1bS05Ni1Db21tYW5kTGluZS1p bmNsdWRlLnBhdGNoIGIvc3JjcGtncy9jaHJvbWl1bS9wYXRjaGVzL2Nocm9taXVtLTk2LUNvbW1h bmRMaW5lLWluY2x1ZGUucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw MDAwLi4yZDdiN2U5MDIzNzYKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2Nocm9taXVtL3Bh dGNoZXMvY2hyb21pdW0tOTYtQ29tbWFuZExpbmUtaW5jbHVkZS5wYXRjaApAQCAtMCwwICsxLDI0 IEBACitGcm9tIDM5ZTZlNzc3OThkODYwMzNlNWViMWZiMmEyY2FmMjBhNWJjYTIyNjIgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBTdGVwaGFuIEhhcnRtYW5uIDxzdGhhMDlAZ29vZ2xl bWFpbC5jb20+CitEYXRlOiBTYXQsIDkgT2N0IDIwMjEgMDg6Mjc6MDQgKzAwMDAKK1N1YmplY3Q6 IFtQQVRDSF0gSVdZVTogYWRkIG1lbW9yeSBmb3Igc3RkOjp1bmlxdWVfcHRyIGluIGJhc2U6OkNv bW1hbmRMaW5lCisKKy0tLQorIGJhc2UvY29tbWFuZF9saW5lLmggfCAxICsKKyAxIGZpbGUgY2hh bmdlZCwgMSBpbnNlcnRpb24oKykKKworZGlmZiAtLWdpdCBhL2Jhc2UvY29tbWFuZF9saW5lLmgg Yi9iYXNlL2NvbW1hbmRfbGluZS5oCitpbmRleCA3MDY3MjZhLi5hZDAyODEyIDEwMDY0NAorLS0t IGEvYmFzZS9jb21tYW5kX2xpbmUuaAorKysrIGIvYmFzZS9jb21tYW5kX2xpbmUuaAorQEAgLTE5 LDYgKzE5LDcgQEAKKyAjaW5jbHVkZSA8c3RkZGVmLmg+CisgI2luY2x1ZGUgPGZ1bmN0aW9uYWw+ CisgI2luY2x1ZGUgPG1hcD4KKysjaW5jbHVkZSA8bWVtb3J5PgorICNpbmNsdWRlIDxzdHJpbmc+ CisgI2luY2x1ZGUgPHZlY3Rvcj4KKyAKKy0tIAorMi4zMi4wCisKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvY2hyb21pdW0vcGF0Y2hlcy9jaHJvbWl1bS05Ni1Db3Vwb25EQi1pbmNsdWRlLnBhdGNoIGIv c3JjcGtncy9jaHJvbWl1bS9wYXRjaGVzL2Nocm9taXVtLTk2LUNvdXBvbkRCLWluY2x1ZGUucGF0 Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi40MWFjZmIzMWI5NmUK LS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2Nocm9taXVtL3BhdGNoZXMvY2hyb21pdW0tOTYt Q291cG9uREItaW5jbHVkZS5wYXRjaApAQCAtMCwwICsxLDI1IEBACitGcm9tIDNhN2I4ZGQwZmNj ZWZmY2ZkMGVhN2UzMTg2ZDI4NTBkZWVkN2EwMGIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitG cm9tOiBTdGVwaGFuIEhhcnRtYW5uIDxzdGhhMDlAZ29vZ2xlbWFpbC5jb20+CitEYXRlOiBXZWQs IDYgT2N0IDIwMjEgMTU6MzY6NDcgKzAwMDAKK1N1YmplY3Q6IFtQQVRDSF0gSVdZVTogYWRkIHZl Y3RvciBmb3Igc3RkOjp2ZWN0b3IgaW4gQ291cG9uREIKKworLS0tCisgY2hyb21lL2Jyb3dzZXIv Y29tbWVyY2UvY291cG9ucy9jb3Vwb25fZGIuaCB8IDIgKysKKyAxIGZpbGUgY2hhbmdlZCwgMiBp bnNlcnRpb25zKCspCisKK2RpZmYgLS1naXQgYS9jaHJvbWUvYnJvd3Nlci9jb21tZXJjZS9jb3Vw b25zL2NvdXBvbl9kYi5oIGIvY2hyb21lL2Jyb3dzZXIvY29tbWVyY2UvY291cG9ucy9jb3Vwb25f ZGIuaAoraW5kZXggZjA3NThmNC4uOTNlMmRkMyAxMDA2NDQKKy0tLSBhL2Nocm9tZS9icm93c2Vy L2NvbW1lcmNlL2NvdXBvbnMvY291cG9uX2RiLmgKKysrKyBiL2Nocm9tZS9icm93c2VyL2NvbW1l cmNlL2NvdXBvbnMvY291cG9uX2RiLmgKK0BAIC01LDYgKzUsOCBAQAorICNpZm5kZWYgQ0hST01F X0JST1dTRVJfQ09NTUVSQ0VfQ09VUE9OU19DT1VQT05fREJfSF8KKyAjZGVmaW5lIENIUk9NRV9C Uk9XU0VSX0NPTU1FUkNFX0NPVVBPTlNfQ09VUE9OX0RCX0hfCisgCisrI2luY2x1ZGUgPHZlY3Rv cj4KKysKKyAjaW5jbHVkZSAiYmFzZS9jYWxsYmFja19oZWxwZXJzLmgiCisgI2luY2x1ZGUgImJh c2UvbWVtb3J5L3dlYWtfcHRyLmgiCisgI2luY2x1ZGUgInVybC9ndXJsLmgiCistLSAKKzIuMzIu MAorCmRpZmYgLS1naXQgYS9zcmNwa2dzL2Nocm9taXVtL3BhdGNoZXMvY2hyb21pdW0tOTYtRHJt UmVuZGVyTm9kZVBhdGhGaW5kZXItaW5jbHVkZS5wYXRjaCBiL3NyY3BrZ3MvY2hyb21pdW0vcGF0 Y2hlcy9jaHJvbWl1bS05Ni1Ecm1SZW5kZXJOb2RlUGF0aEZpbmRlci1pbmNsdWRlLnBhdGNoCm5l dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uZmQ0NGViMmM5MWEwCi0tLSAv ZGV2L251bGwKKysrIGIvc3JjcGtncy9jaHJvbWl1bS9wYXRjaGVzL2Nocm9taXVtLTk2LURybVJl bmRlck5vZGVQYXRoRmluZGVyLWluY2x1ZGUucGF0Y2gKQEAgLTAsMCArMSwyNCBAQAorRnJvbSA5 ZTM2YjNjMjg5MzVmYjUwZDQzY2NlZjQ0M2JlNzg2YThlM2Y4YTVmIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQorRnJvbTogU3RlcGhhbiBIYXJ0bWFubiA8c3RoYTA5QGdvb2dsZW1haWwuY29tPgor RGF0ZTogU2F0LCA5IE9jdCAyMDIxIDE2OjE3OjM0ICswMDAwCitTdWJqZWN0OiBbUEFUQ0hdIElX WVU6IGFkZCBzdHJpbmcuaCBmb3IgbWVtY21wIGluIHVpOjogRHJtUmVuZGVyTm9kZVBhdGhGaW5k ZXIKKworLS0tCisgdWkvb3pvbmUvcGxhdGZvcm0vd2F5bGFuZC9ncHUvZHJtX3JlbmRlcl9ub2Rl X3BhdGhfZmluZGVyLmNjIHwgMSArCisgMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspCisK K2RpZmYgLS1naXQgYS91aS9vem9uZS9wbGF0Zm9ybS93YXlsYW5kL2dwdS9kcm1fcmVuZGVyX25v ZGVfcGF0aF9maW5kZXIuY2MgYi91aS9vem9uZS9wbGF0Zm9ybS93YXlsYW5kL2dwdS9kcm1fcmVu ZGVyX25vZGVfcGF0aF9maW5kZXIuY2MKK2luZGV4IDA2Nzc2YTcuLmQ1YjdiNzEgMTAwNjQ0Cist LS0gYS91aS9vem9uZS9wbGF0Zm9ybS93YXlsYW5kL2dwdS9kcm1fcmVuZGVyX25vZGVfcGF0aF9m aW5kZXIuY2MKKysrKyBiL3VpL296b25lL3BsYXRmb3JtL3dheWxhbmQvZ3B1L2RybV9yZW5kZXJf bm9kZV9wYXRoX2ZpbmRlci5jYworQEAgLTUsNiArNSw3IEBACisgI2luY2x1ZGUgInVpL296b25l L3BsYXRmb3JtL3dheWxhbmQvZ3B1L2RybV9yZW5kZXJfbm9kZV9wYXRoX2ZpbmRlci5oIgorIAor ICNpbmNsdWRlIDxmY250bC5oPgorKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyAjaW5jbHVkZSA8c3lz L3N0YXQuaD4KKyAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisgI2luY2x1ZGUgPHVuaXN0ZC5oPgor LS0gCisyLjMyLjAKKwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9jaHJvbWl1bS9wYXRjaGVzL2Nocm9t aXVtLTk2LVJlc3RyaWN0ZWRDb29raWVNYW5hZ2VyLXR1cGxlLnBhdGNoIGIvc3JjcGtncy9jaHJv bWl1bS9wYXRjaGVzL2Nocm9taXVtLTk2LVJlc3RyaWN0ZWRDb29raWVNYW5hZ2VyLXR1cGxlLnBh dGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uY2JkY2E0NGI3Mzhk Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9jaHJvbWl1bS9wYXRjaGVzL2Nocm9taXVtLTk2 LVJlc3RyaWN0ZWRDb29raWVNYW5hZ2VyLXR1cGxlLnBhdGNoCkBAIC0wLDAgKzEsMzEgQEAKK0Zy b20gODZiMTg4NjY3M2MzZTc1ZDNhN2I4YzgwMmIzZTlmYTZlYTk0NWExZSBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKK0Zyb206IEpvc2UgRGFwZW5hIFBheiA8amRhcGVuYUBpZ2FsaWEuY29tPgor RGF0ZTogRnJpLCAwOCBPY3QgMjAyMSAwNjozMjo1NSArMDAwMAorU3ViamVjdDogW1BBVENIXSBs aWJzdGRjKys6IG5vIGltcGxpY2l0IGNvbnZlcnNpb24gZnJvbSB0dXBsZSBjcmVhdGVkIHdpdGgg c3RkOjp0aWUgdG8gYW4gc3RkOjpwYWlyIGluIHJlc3RyaWN0ZWQgY29va2llIG1hbmFnZXIuCisK K0ZpeCBjb21waWxhdGlvbiBlcnJvcjoKKyAgICAuLi8uLi9zZXJ2aWNlcy9uZXR3b3JrL3Jlc3Ry aWN0ZWRfY29va2llX21hbmFnZXIuY2M6MTY0OjMwOiBlcnJvcjogbm8gbWF0Y2ggZm9yIOKAmG9w ZXJhdG9yW13igJkgKG9wZXJhbmQgdHlwZXMgYXJlIOKAmG5ldHdvcms6OkNvb2tpZUFjY2Vzc2Vz QnlVUkxBbmRTaXRl4oCZIHtha2Eg4oCYc3RkOjptYXA8c3RkOjpwYWlyPEdVUkwsIG5ldDo6U2l0 ZUZvckNvb2tpZXM+LCBzdGQ6OnVuaXF1ZV9wdHI8c3RkOjpzZXQ8bmV0OjpDb29raWVXaXRoQWNj ZXNzUmVzdWx0LCBuZXR3b3JrOjpDb29raWVXaXRoQWNjZXNzUmVzdWx0Q29tcGFyZXI+ID4gPuKA mX0gYW5kIOKAmHN0ZDo6dHVwbGU8Y29uc3QgR1VSTCYsIGNvbnN0IG5ldDo6U2l0ZUZvckNvb2tp ZXMmPuKAmSkKKworVGhlcmUgaXMgbm8gY29udmVyc2lvbiBmcm9tIHR1cGxlIHRvIHBhaXIuCisK K0J1ZzogOTU3NTE5CitDaGFuZ2UtSWQ6IElkZjI5YzdiMjE4OTVhZTI4ZjQ1YjM1ZDYxOTNhYjRh YzU1NTk0NWM4CitSZXZpZXdlZC1vbjogaHR0cHM6Ly9jaHJvbWl1bS1yZXZpZXcuZ29vZ2xlc291 cmNlLmNvbS9jL2Nocm9taXVtL3NyYy8rLzMyMTE3NTIKK1Jldmlld2VkLWJ5OiBSb2JiaWUgTWNF bHJhdGggPHJtY2VscmF0aEBjaHJvbWl1bS5vcmc+CitDb21taXQtUXVldWU6IEpvc8OpIERhcGVu YSBQYXogPGpkYXBlbmFAaWdhbGlhLmNvbT4KK0NyLUNvbW1pdC1Qb3NpdGlvbjogcmVmcy9oZWFk cy9tYWluQHsjOTI5NTk3fQorLS0tCisKK2RpZmYgLS1naXQgYS9zZXJ2aWNlcy9uZXR3b3JrL3Jl c3RyaWN0ZWRfY29va2llX21hbmFnZXIuY2MgYi9zZXJ2aWNlcy9uZXR3b3JrL3Jlc3RyaWN0ZWRf Y29va2llX21hbmFnZXIuY2MKK2luZGV4IDQyNTQyNmYuLmM4YzEwYzYgMTAwNjQ0CistLS0gYS9z ZXJ2aWNlcy9uZXR3b3JrL3Jlc3RyaWN0ZWRfY29va2llX21hbmFnZXIuY2MKKysrKyBiL3NlcnZp Y2VzL25ldHdvcmsvcmVzdHJpY3RlZF9jb29raWVfbWFuYWdlci5jYworQEAgLTE2MSw3ICsxNjEs NyBAQAorICAgICBjb25zdCBHVVJMJiB1cmwsCisgICAgIGNvbnN0IG5ldDo6U2l0ZUZvckNvb2tp ZXMmIHNpdGVfZm9yX2Nvb2tpZXMpIHsKKyAgIHN0ZDo6dW5pcXVlX3B0cjxDb29raWVBY2Nlc3Nl cz4mIGVudHJ5ID0KKy0gICAgICByZWNlbnRfY29va2llX2FjY2Vzc2VzX1tzdGQ6OnRpZSh1cmws IHNpdGVfZm9yX2Nvb2tpZXMpXTsKKysgICAgICByZWNlbnRfY29va2llX2FjY2Vzc2VzX1tzdGQ6 Om1ha2VfcGFpcih1cmwsIHNpdGVfZm9yX2Nvb2tpZXMpXTsKKyAgIGlmICghZW50cnkpIHsKKyAg ICAgZW50cnkgPSBzdGQ6Om1ha2VfdW5pcXVlPENvb2tpZUFjY2Vzc2VzPigpOworICAgfQpkaWZm IC0tZ2l0IGEvc3JjcGtncy9jaHJvbWl1bS9wYXRjaGVzL2Nyb3NzLWJ1aWxkLnBhdGNoIGIvc3Jj cGtncy9jaHJvbWl1bS9wYXRjaGVzL2Nyb3NzLWJ1aWxkLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uNjNiODkzOTVjYjgwCi0tLSAvZGV2L251bGwKKysrIGIv c3JjcGtncy9jaHJvbWl1bS9wYXRjaGVzL2Nyb3NzLWJ1aWxkLnBhdGNoCkBAIC0wLDAgKzEsNjUg QEAKKy0tLSBhL2J1aWxkL2NvbmZpZy9jb21waWxlci9CVUlMRC5nbi5vcmlnCisrKysgYi9idWls ZC9jb25maWcvY29tcGlsZXIvQlVJTEQuZ24KK0BAIC01OCw2ICs1OCwxMCBAQAorIH0KKyAKKyBk ZWNsYXJlX2FyZ3MoKSB7CisrICBpc19tdXNsID0gZmFsc2UKKyt9CisrCisrZGVjbGFyZV9hcmdz KCkgeworICAgIyBOb3JtYWxseSwgQW5kcm9pZCBidWlsZHMgYXJlIGxpZ2h0bHkgb3B0aW1pemVk LCBldmVuIGZvciBkZWJ1ZyBidWlsZHMsIHRvCisgICAjIGtlZXAgYmluYXJ5IHNpemUgZG93bi4g U2V0dGluZyB0aGlzIGZsYWcgdG8gdHJ1ZSBkaXNhYmxlcyBzdWNoIG9wdGltaXphdGlvbgorICAg YW5kcm9pZF9mdWxsX2RlYnVnID0gZmFsc2UKK0BAIC04ODAsOCArODg0LDEzIEBACisgICAgICAg fQorICAgICB9IGVsc2UgaWYgKGN1cnJlbnRfY3B1ID09ICJhcm02NCIpIHsKKyAgICAgICBpZiAo aXNfY2xhbmcgJiYgIWlzX2FuZHJvaWQgJiYgIWlzX25hY2wgJiYgIWlzX2Z1Y2hzaWEpIHsKKy0g ICAgICAgIGNmbGFncyArPSBbICItLXRhcmdldD1hYXJjaDY0LWxpbnV4LWdudSIgXQorLSAgICAg ICAgbGRmbGFncyArPSBbICItLXRhcmdldD1hYXJjaDY0LWxpbnV4LWdudSIgXQorKyAgICAgICAg aWYgKGlzX211c2wpIHsKKysgICAgICAgICAgY2ZsYWdzICs9IFsgIi0tdGFyZ2V0PWFhcmNoNjQt bGludXgtbXVzbCIgXQorKyAgICAgICAgICBsZGZsYWdzICs9IFsgIi0tdGFyZ2V0PWFhcmNoNjQt bGludXgtbXVzbCIgXQorKyAgICAgICAgfSBlbHNlIHsKKysgICAgICAgICAgY2ZsYWdzICs9IFsg Ii0tdGFyZ2V0PWFhcmNoNjQtbGludXgtZ251IiBdCisrICAgICAgICAgIGxkZmxhZ3MgKz0gWyAi LS10YXJnZXQ9YWFyY2g2NC1saW51eC1nbnUiIF0KKysgICAgICAgIH0KKyAgICAgICB9CisgICAg IH0gZWxzZSBpZiAoY3VycmVudF9jcHUgPT0gIm1pcHNlbCIgJiYgIWlzX25hY2wpIHsKKyAgICAg ICBsZGZsYWdzICs9IFsgIi1XbCwtLWhhc2gtc3R5bGU9c3lzdiIgXQorLS0tIGEvYnVpbGQvdG9v bGNoYWluL2xpbnV4L3VuYnVuZGxlL0JVSUxELmduLm9yaWcKKysrKyBiL2J1aWxkL3Rvb2xjaGFp bi9saW51eC91bmJ1bmRsZS9CVUlMRC5nbgorQEAgLTM5LDMgKzM5LDIyIEBACisgICAgIGN1cnJl bnRfb3MgPSBob3N0X29zCisgICB9CisgfQorKworK2djY190b29sY2hhaW4oInY4X3NuYXBzaG90 X2Nyb3NzIikgeworKyAgY2MgPSBnZXRlbnYoIkJVSUxEX0NDIikKKysgIGN4eCA9IGdldGVudigi QlVJTERfQ1hYIikKKysgIGFyID0gZ2V0ZW52KCJCVUlMRF9BUiIpCisrICBubSA9IGdldGVudigi QlVJTERfTk0iKQorKyAgbGQgPSBjeHgKKysKKysgIGV4dHJhX2NmbGFncyA9IGdldGVudigiQlVJ TERfQ0ZMQUdTIikKKysgIGV4dHJhX2NwcGZsYWdzID0gZ2V0ZW52KCJCVUlMRF9DUFBGTEFHUyIp CisrICBleHRyYV9jeHhmbGFncyA9IGdldGVudigiQlVJTERfQ1hYRkxBR1MiKQorKyAgZXh0cmFf bGRmbGFncyA9IGdldGVudigiQlVJTERfTERGTEFHUyIpCisrCisrICB0b29sY2hhaW5fYXJncyA9 IHsKKysgICAgY3VycmVudF9jcHUgPSBob3N0X2NwdQorKyAgICBjdXJyZW50X29zID0gaG9zdF9v cworKyAgICB2OF9jdXJyZW50X2NwdSA9IHRhcmdldF9jcHUKKysgIH0KKyt9CistLS0gYS9idWls ZC9jb25maWcvbGludXgvcGtnX2NvbmZpZy5nbmkub3JpZworKysrIGIvYnVpbGQvY29uZmlnL2xp bnV4L3BrZ19jb25maWcuZ25pCitAQCAtOTEsNyArOTEsNyBAQAorICAgYXNzZXJ0KGRlZmluZWQo aW52b2tlci5wYWNrYWdlcyksCisgICAgICAgICAgIlZhcmlhYmxlIHxwYWNrYWdlc3wgbXVzdCBi ZSBkZWZpbmVkIHRvIGJlIGEgbGlzdCBpbiBwa2dfY29uZmlnLiIpCisgICBjb25maWcodGFyZ2V0 X25hbWUpIHsKKy0gICAgaWYgKGhvc3RfdG9vbGNoYWluID09IGN1cnJlbnRfdG9vbGNoYWluKSB7 CisrICAgIGlmIChjdXJyZW50X2NwdSAhPSB0YXJnZXRfY3B1KSB7CisgICAgICAgYXJncyA9IGhv c3RfcGtnX2NvbmZpZ19hcmdzICsgaW52b2tlci5wYWNrYWdlcworICAgICB9IGVsc2UgeworICAg ICAgIGFyZ3MgPSBwa2dfY29uZmlnX2FyZ3MgKyBpbnZva2VyLnBhY2thZ2VzCmRpZmYgLS1naXQg YS9zcmNwa2dzL2Nocm9taXVtL3BhdGNoZXMvb3pvbmUteDExLWZpeC1WQS1BUEkucGF0Y2ggYi9z cmNwa2dzL2Nocm9taXVtL3BhdGNoZXMvb3pvbmUteDExLWZpeC1WQS1BUEkucGF0Y2gKZGVsZXRl ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDYxZDcyYmZiMDEzNy4uMDAwMDAwMDAwMDAwCi0tLSBh L3NyY3BrZ3MvY2hyb21pdW0vcGF0Y2hlcy9vem9uZS14MTEtZml4LVZBLUFQSS5wYXRjaAorKysg L2Rldi9udWxsCkBAIC0xLDY3MSArMCwwIEBACi1Gcm9tIGE0ZGU5ODYxMDJhNDVlMjljM2VmNTk2 ZjIyNzA0YmRjYTI0NGMyNmMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBNYWtzaW0g U2lzb3YgPG1zaXNvdkBpZ2FsaWEuY29tPgotRGF0ZTogRnJpLCAxNyBTZXAgMjAyMSAwODo0NTo1 NSArMDAwMAotU3ViamVjdDogW1BBVENIXSBvem9uZS94MTE6IGZpeCBWQS1BUEkuCi0KLVRoaXMg cGF0Y2ggZml4ZXMgVkEtQVBJIHVzYWdlIHdpdGggT3pvbmUvWDExIGJhY2tlbmQgKHdoaWNoCi1p cyBvdXIgZGVmYXVsdCBiYWNrZW5kIG5vdyBhcyBYMTEgaGFzIGJlZW4gZGVwcmVjYXRlZCAtCi1j cnJldi5jb20vYy8zMTE0MDcxKSkuCi0KLW5vbi1Pem9uZSBYMTEgaXMgZGlzYWJsZWQgbm93IGFu ZCBPem9uZSBpcyBhbHdheXMgdXNlZAotb24gTGludXguIEhvd2V2ZXIsIFZBLUFQSSBpbXBsZW1l bnRhdGlvbiBpcyBub3QgT3pvbmUgZnJpZW5kbHkKLXlldCBhbmQgcmVxdWlyZXMgbWFqb3IgcmVm YWN0b3JpbmcuIEJ1dCBnaXZlbiB0aGF0IFZBLUFQSQotaW1wbGVtZW50YXRpb24gb24gTGludXgg d29ya2VkIG9ubHkgd2l0aCBYMTEsIGl0J3MgZmluZSBmb3IKLW5vdyB0byBjaGFuZ2UgVVNFX1gx MSBhbmQgIUlzVXNpbmdPem9uZVBsYXRmb3JtIHRvCi1CVUlMREZMQUcoT1pPTkVfUExBVEZPUk1f WDExKSBhbmQgZmFpbCBWQS1BUEkgaW5pdGlhbGl6YXRpb24KLWluIFZBRGlzcGxheVN0YXRlOjpJ bml0aWFsaXplIGZvciBPem9uZS9MaW51eCBvdGhlciB0aGFuCi1ub24tWDExIGJhY2tlbmRzLgot Ci1CdWc6IDExMjE5NDgKLUNoYW5nZS1JZDogSWY4NWQyODkyMzVlNmQzNTgxMDNkOWZhMmJiZTBm NzQxZmI1OTlhMjYKLVJldmlld2VkLW9uOiBodHRwczovL2Nocm9taXVtLXJldmlldy5nb29nbGVz b3VyY2UuY29tL2MvY2hyb21pdW0vc3JjLysvMzE0MTg3OAotQ29tbWl0LVF1ZXVlOiBNYWtzaW0g U2lzb3YgPG1zaXNvdkBpZ2FsaWEuY29tPgotUmV2aWV3ZWQtYnk6IEFuZHJlcyBDYWxkZXJvbiBK YXJhbWlsbG8gPGFuZHJlc2NqQGNocm9taXVtLm9yZz4KLVJldmlld2VkLWJ5OiBSb2JlcnQgS3Jv ZWdlciA8cmprcm9lZ2VAY2hyb21pdW0ub3JnPgotUmV2aWV3ZWQtYnk6IFhpYW9oYW4gV2FuZyA8 eGh3YW5nQGNocm9taXVtLm9yZz4KLVJldmlld2VkLWJ5OiBBbGV4YW5kZXIgRHVuYWV2IDxhZHVu YWV2QGlnYWxpYS5jb20+Ci1Dci1Db21taXQtUG9zaXRpb246IHJlZnMvaGVhZHMvbWFpbkB7Izky MjQ2Nn0KLS0tLQotIG1lZGlhL0JVSUxELmduICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB8ICAzIC0KLSBtZWRpYS9ncHUvQlVJTEQuZ24gICAgICAgICAgICAgICAgICAgICAgICAgICAg fCAgNSArLQotIG1lZGlhL2dwdS9hcmdzLmduaSAgICAgICAgICAgICAgICAgICAgICAgICAgICB8 IDEzICsrKy0KLSBtZWRpYS9ncHUvdmFhcGkvQlVJTEQuZ24gICAgICAgICAgICAgICAgICAgICAg fCAgOCArLQotIG1lZGlhL2dwdS92YWFwaS92YV9zdHViX2hlYWRlci5mcmFnbWVudCAgICAgICB8 ICA2ICstCi0gbWVkaWEvZ3B1L3ZhYXBpL3ZhYXBpX3BpY3R1cmVfZmFjdG9yeS5jYyAgICAgIHwg NzIgKysrKysrKystLS0tLS0tLS0tCi0gLi4uL3ZhYXBpX3BpY3R1cmVfbmF0aXZlX3BpeG1hcF9h bmdsZS5jYyAgICAgIHwgIDIgLQotIG1lZGlhL2dwdS92YWFwaS92YWFwaV9waWN0dXJlX3RmcC5j YyAgICAgICAgICB8ICAyIC0KLSAuLi4vdmFhcGkvdmFhcGlfdmlkZW9fZGVjb2RlX2FjY2VsZXJh dG9yLmNjICAgfCAgOSArLS0KLSAuLi52YWFwaV92aWRlb19kZWNvZGVfYWNjZWxlcmF0b3JfdW5p dHRlc3QuY2MgfCAxMSArLS0KLSBtZWRpYS9ncHUvdmFhcGkvdmFhcGlfd3JhcHBlci5jYyAgICAg ICAgICAgICAgfCA3NiArKysrKysrKystLS0tLS0tLS0tCi0gbWVkaWEvZ3B1L3ZhYXBpL3ZhYXBp X3dyYXBwZXIuaCAgICAgICAgICAgICAgIHwgIDggKy0KLSB1aS9vem9uZS9wbGF0Zm9ybS94MTEv b3pvbmVfcGxhdGZvcm1feDExLmNjICAgfCAgMyArCi0gdWkvb3pvbmUvcHVibGljL296b25lX3Bs YXRmb3JtLmggICAgICAgICAgICAgIHwgMTAgKysrCi0gMTQgZmlsZXMgY2hhbmdlZCwgMTA4IGlu c2VydGlvbnMoKyksIDEyMCBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdpdCBhL21lZGlhL0JVSUxE LmduIGIvbWVkaWEvQlVJTEQuZ24KLWluZGV4IGRiZWUxZDQzMzguLmQ1YzE1OGMwOGYgMTAwNjQ0 Ci0tLS0gYS9tZWRpYS9CVUlMRC5nbgotKysrIGIvbWVkaWEvQlVJTEQuZ24KLUBAIC0xMzAsOSAr MTMwLDYgQEAgY29tcG9uZW50KCJtZWRpYSIpIHsKLSAgICAgcHVibGljX2RlcHMgKz0gWyAiLy9t ZWRpYS9iYXNlL21hYyIgXQotICAgfQotIAotLSAgaWYgKHVzZV94MTEpIHsKLS0gICAgZGVwcyAr PSBbICIvL3VpL2Jhc2UveCIgXQotLSAgfQotICAgaWYgKHVzZV9vem9uZSkgewotICAgICBkZXBz ICs9IFsgIi8vdWkvb3pvbmUiIF0KLSAgIH0KLWRpZmYgLS1naXQgYS9tZWRpYS9ncHUvQlVJTEQu Z24gYi9tZWRpYS9ncHUvQlVJTEQuZ24KLWluZGV4IGM3NDk5NDg1YWMuLjNmZWRjNzg5NDggMTAw NjQ0Ci0tLS0gYS9tZWRpYS9ncHUvQlVJTEQuZ24KLSsrKyBiL21lZGlhL2dwdS9CVUlMRC5nbgot QEAgLTIwLDYgKzIwLDcgQEAgYnVpbGRmbGFnX2hlYWRlcigiYnVpbGRmbGFncyIpIHsKLSAgICAg IlVTRV9WQUFQSV9JTUFHRV9DT0RFQ1M9JHVzZV92YWFwaV9pbWFnZV9jb2RlY3MiLAotICAgICAi VVNFX1Y0TDJfQ09ERUM9JHVzZV92NGwyX2NvZGVjIiwKLSAgICAgIlVTRV9MSUJWNEwyPSR1c2Vf djRscGx1Z2luIiwKLSsgICAgIlVTRV9WQUFQSV9YMTE9JHVzZV92YWFwaV94MTEiLAotICAgXQot IH0KLSAKLUBAIC0yMTUsOSArMjE2LDcgQEAgY29tcG9uZW50KCJncHUiKSB7Ci0gICAgICAgIndp bmRvd3Mvc3VwcG9ydGVkX3Byb2ZpbGVfaGVscGVycy5jYyIsCi0gICAgICAgIndpbmRvd3Mvc3Vw cG9ydGVkX3Byb2ZpbGVfaGVscGVycy5oIiwKLSAgICAgXQotLSAgICBjb25maWdzICs9IFsKLS0g ICAgICAiLy90aGlyZF9wYXJ0eS9raHJvbm9zOmtocm9ub3NfaGVhZGVycyIsCi0tICAgIF0KLSsg ICAgY29uZmlncyArPSBbICIvL3RoaXJkX3BhcnR5L2tocm9ub3M6a2hyb25vc19oZWFkZXJzIiBd Ci0gICAgIHB1YmxpY19kZXBzICs9IFsgIi8vbWVkaWEvYmFzZS93aW46bWVkaWFfZm91bmRhdGlv bl91dGlsIiBdCi0gICAgIGRlcHMgKz0gWwotICAgICAgICIvL2dwdS9pcGMvY29tbW9uOmNvbW1v biIsCi1kaWZmIC0tZ2l0IGEvbWVkaWEvZ3B1L2FyZ3MuZ25pIGIvbWVkaWEvZ3B1L2FyZ3MuZ25p Ci1pbmRleCA0MDA0OTM3OTQ5Li4yZjUzODQzOTE4IDEwMDY0NAotLS0tIGEvbWVkaWEvZ3B1L2Fy Z3MuZ25pCi0rKysgYi9tZWRpYS9ncHUvYXJncy5nbmkKLUBAIC0zLDcgKzMsMTUgQEAKLSAjIGZv dW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCi0gCi0gaW1wb3J0KCIvL2J1aWxkL2NvbmZpZy9jaHJv bWVvcy91aV9tb2RlLmduaSIpCi0taW1wb3J0KCIvL2J1aWxkL2NvbmZpZy91aS5nbmkiKQotK2lt cG9ydCgiLy9idWlsZC9jb25maWcvb3pvbmUuZ25pIikKLSsKLStkZWNsYXJlX2FyZ3MoKSB7Ci0r ICAjIEluZGljYXRlcyBpZiBYMTEgVkEtQVBJLWJhc2VkIGhhcmR3YXJlIGFjY2VsZXJhdGlvbiBp cyB0byBiZSB1c2VkLgotKyAgIyBTZWUgYWxzbyB0aGUgY29tbWVudCBuZWFyIHRoZSB8dXNlX3Zh YXBpfCBhcmcuCi0rICB1c2VfdmFhcGlfeDExID0KLSsgICAgICBpc19saW51eCAmJiBvem9uZV9w bGF0Zm9ybV94MTEgJiYgIWlzX2Nocm9tZWNhc3QgJiYgIWlzX2Nocm9tZW9zX2xhY3JvcyAmJgot KyAgICAgICh0YXJnZXRfY3B1ID09ICJ4ODYiIHx8IHRhcmdldF9jcHUgPT0gIng2NCIpCi0rfQot IAotIGRlY2xhcmVfYXJncygpIHsKLSAgICMgSW5kaWNhdGVzIGlmIFY0TCBwbHVnaW4gaXMgdXNl ZC4KLUBAIC0yMSw4ICsyOSw3IEBAIGRlY2xhcmVfYXJncygpIHsKLSAgICMgaXMgdHlwaWNhbGx5 IHRoZSBjYXNlIG9uIHg4Ni1iYXNlZCBDaHJvbWVPUyBkZXZpY2VzLgotICAgIyBWQS1BUEkgc2hv dWxkIGFsc28gYmUgY29tcGlsZWQgYnkgZGVmYXVsdCBvbiB4MTEtdXNpbmcgbGludXggZGV2aWNl cwotICAgIyB1c2luZyB4ODYveDY0LgotLSAgdXNlX3ZhYXBpID0KLS0gICAgICBpc19saW51eCAm JiB1c2VfeDExICYmICh0YXJnZXRfY3B1ID09ICJ4ODYiIHx8IHRhcmdldF9jcHUgPT0gIng2NCIp Ci0rICB1c2VfdmFhcGkgPSB1c2VfdmFhcGlfeDExCi0gCi0gICAjIEluZGljYXRlcyBpZiBDaHJv bWVPUyBwcm90ZWN0ZWQgbWVkaWEgc3VwcG9ydCBleGlzdHMuIFRoaXMgaXMgdXNlZAotICAgIyB0 byBlbmFibGUgdGhlIENETSBkYWVtb24gaW4gQ2hyb21lIE9TIGFzIHdlbGwgYXMgc3VwcG9ydCBm b3IKLWRpZmYgLS1naXQgYS9tZWRpYS9ncHUvdmFhcGkvQlVJTEQuZ24gYi9tZWRpYS9ncHUvdmFh cGkvQlVJTEQuZ24KLWluZGV4IGIxMWQyYzYwZmEuLjBjMjUyMGRkNmIgMTAwNjQ0Ci0tLS0gYS9t ZWRpYS9ncHUvdmFhcGkvQlVJTEQuZ24KLSsrKyBiL21lZGlhL2dwdS92YWFwaS9CVUlMRC5nbgot QEAgLTE3LDcgKzE3LDcgQEAgYXNzZXJ0KHVzZV92YWFwaSkKLSBnZW5lcmF0ZV9zdHVicygibGli dmFfc3R1YnMiKSB7Ci0gICBleHRyYV9oZWFkZXIgPSAidmFfc3R1Yl9oZWFkZXIuZnJhZ21lbnQi Ci0gICBzaWdzID0gWyAidmEuc2lncyIgXQotLSAgaWYgKHVzZV94MTEpIHsKLSsgIGlmICh1c2Vf dmFhcGlfeDExKSB7Ci0gICAgIHNpZ3MgKz0gWyAidmFfeDExLnNpZ3MiIF0KLSAgIH0KLSAgIGlm IChpc19jaHJvbWVvc19hc2gpIHsKLUBAIC0xMzEsMTQgKzEzMSwxNCBAQCBzb3VyY2Vfc2V0KCJ2 YWFwaSIpIHsKLSAgICAgXQotICAgfQotIAotLSAgaWYgKHVzZV94MTEgfHwgdXNlX296b25lIHx8 IHVzZV9lZ2wpIHsKLSsgIGlmICh1c2Vfb3pvbmUgfHwgdXNlX2VnbCkgewotICAgICBzb3VyY2Vz ICs9IFsKLSAgICAgICAidmFhcGlfcGljdHVyZV9uYXRpdmVfcGl4bWFwLmNjIiwKLSAgICAgICAi dmFhcGlfcGljdHVyZV9uYXRpdmVfcGl4bWFwLmgiLAotICAgICBdCi0gICB9Ci0gCi0tICBpZiAo dXNlX3gxMSkgewotKyAgaWYgKHVzZV92YWFwaV94MTEpIHsKLSAgICAgZGVwcyArPSBbICIvL3Vp L2dmeC94IiBdCi0gICAgIHNvdXJjZXMgKz0gWwotICAgICAgICJ2YWFwaV9waWN0dXJlX25hdGl2 ZV9waXhtYXBfYW5nbGUuY2MiLAotQEAgLTE5Nyw3ICsxOTcsNyBAQCBzb3VyY2Vfc2V0KCJjb21t b24iKSB7Ci0gICAgIGRlcHMgKz0gWyAiLy91aS9vem9uZSIgXQotICAgfQotIAotLSAgaWYgKHVz ZV94MTEpIHsKLSsgIGlmICh1c2VfdmFhcGlfeDExKSB7Ci0gICAgIGRlcHMgKz0gWyAiLy91aS9n ZngveCIgXQotICAgfQotIAotZGlmZiAtLWdpdCBhL21lZGlhL2dwdS92YWFwaS92YV9zdHViX2hl YWRlci5mcmFnbWVudCBiL21lZGlhL2dwdS92YWFwaS92YV9zdHViX2hlYWRlci5mcmFnbWVudAot aW5kZXggYmVkMTk4NDg0ZC4uZThjNDZjNWU4MSAxMDA2NDQKLS0tLSBhL21lZGlhL2dwdS92YWFw aS92YV9zdHViX2hlYWRlci5mcmFnbWVudAotKysrIGIvbWVkaWEvZ3B1L3ZhYXBpL3ZhX3N0dWJf aGVhZGVyLmZyYWdtZW50Ci1AQCAtMSwxMiArMSwxNCBAQAotIC8vIFRoZSBleHRyYSBpbmNsdWRl IGhlYWRlciBuZWVkZWQgaW4gdGhlIGdlbmVyYXRlZCBzdHViIGZpbGUgZm9yIGRlZmluaW5nCi0g Ly8gdmFyaW91cyBsaWJ2YSB0eXBlcy4KLSAKLSsjaW5jbHVkZSAibWVkaWEvZ3B1L2J1aWxkZmxh Z3MuaCIKLSsKLSBleHRlcm4gIkMiIHsKLSAKLSAjaW5jbHVkZSA8dmEvdmFfZHJtLmg+Ci0gI2lu Y2x1ZGUgPHZhL3ZhLmg+Ci0tI2lmIGRlZmluZWQoVVNFX1gxMSkKLSsjaWYgQlVJTERGTEFHKFVT RV9WQUFQSV9YMTEpCi0gI2luY2x1ZGUgPHZhL3ZhX3gxMS5oPgotLSNlbmRpZgotKyNlbmRpZiAg Ly8gQlVJTERGTEFHKFVTRV9WQUFQSV9YMTEpCi0gCi0gfQotZGlmZiAtLWdpdCBhL21lZGlhL2dw dS92YWFwaS92YWFwaV9waWN0dXJlX2ZhY3RvcnkuY2MgYi9tZWRpYS9ncHUvdmFhcGkvdmFhcGlf cGljdHVyZV9mYWN0b3J5LmNjCi1pbmRleCA3MTkwMzViODdjLi45YzdkNzM4N2QyIDEwMDY0NAot LS0tIGEvbWVkaWEvZ3B1L3ZhYXBpL3ZhYXBpX3BpY3R1cmVfZmFjdG9yeS5jYwotKysrIGIvbWVk aWEvZ3B1L3ZhYXBpL3ZhYXBpX3BpY3R1cmVfZmFjdG9yeS5jYwotQEAgLTEwLDEzICsxMCwxMyBA QAotICNpbmNsdWRlICJ1aS9iYXNlL3VpX2Jhc2VfZmVhdHVyZXMuaCIKLSAjaW5jbHVkZSAidWkv Z2wvZ2xfYmluZGluZ3MuaCIKLSAKLS0jaWYgZGVmaW5lZChVU0VfWDExKQotLSNpbmNsdWRlICJt ZWRpYS9ncHUvdmFhcGkvdmFhcGlfcGljdHVyZV9uYXRpdmVfcGl4bWFwX2FuZ2xlLmgiCi0tI2lu Y2x1ZGUgIm1lZGlhL2dwdS92YWFwaS92YWFwaV9waWN0dXJlX3RmcC5oIgotLSNlbmRpZgotICNp ZiBkZWZpbmVkKFVTRV9PWk9ORSkKLSAjaW5jbHVkZSAibWVkaWEvZ3B1L3ZhYXBpL3ZhYXBpX3Bp Y3R1cmVfbmF0aXZlX3BpeG1hcF9vem9uZS5oIgotLSNlbmRpZgotKyNlbmRpZiAgLy8gZGVmaW5l ZChVU0VfT1pPTkUpCi0rI2lmIEJVSUxERkxBRyhVU0VfVkFBUElfWDExKQotKyNpbmNsdWRlICJt ZWRpYS9ncHUvdmFhcGkvdmFhcGlfcGljdHVyZV9uYXRpdmVfcGl4bWFwX2FuZ2xlLmgiCi0rI2lu Y2x1ZGUgIm1lZGlhL2dwdS92YWFwaS92YWFwaV9waWN0dXJlX3RmcC5oIgotKyNlbmRpZiAgLy8g QlVJTERGTEFHKFVTRV9WQUFQSV9YMTEpCi0gI2lmIGRlZmluZWQoVVNFX0VHTCkKLSAjaW5jbHVk ZSAibWVkaWEvZ3B1L3ZhYXBpL3ZhYXBpX3BpY3R1cmVfbmF0aXZlX3BpeG1hcF9lZ2wuaCIKLSAj ZW5kaWYKLUBAIC00NiwxNSArNDYsMTMgQEAgVmFhcGlQaWN0dXJlRmFjdG9yeTo6VmFhcGlQaWN0 dXJlRmFjdG9yeSgpIHsKLSAgIHZhYXBpX2ltcGxfcGFpcnNfLmluc2VydCgKLSAgICAgICBzdGQ6 Om1ha2VfcGFpcihnbDo6a0dMSW1wbGVtZW50YXRpb25FR0xHTEVTMiwKLSAgICAgICAgICAgICAg ICAgICAgICBWYWFwaVBpY3R1cmVGYWN0b3J5OjprVmFhcGlJbXBsZW1lbnRhdGlvbkRybSkpOwot LSNpZiBkZWZpbmVkKFVTRV9YMTEpCi0rI2lmIEJVSUxERkxBRyhVU0VfVkFBUElfWDExKQotICAg dmFhcGlfaW1wbF9wYWlyc18uaW5zZXJ0KAotICAgICAgIHN0ZDo6bWFrZV9wYWlyKGdsOjprR0xJ bXBsZW1lbnRhdGlvbkVHTEFOR0xFLAotICAgICAgICAgICAgICAgICAgICAgIFZhYXBpUGljdHVy ZUZhY3Rvcnk6OmtWYWFwaUltcGxlbWVudGF0aW9uQW5nbGUpKTsKLS0gIGlmICghZmVhdHVyZXM6 OklzVXNpbmdPem9uZVBsYXRmb3JtKCkpIHsKLS0gICAgdmFhcGlfaW1wbF9wYWlyc18uaW5zZXJ0 KAotLSAgICAgICAgc3RkOjptYWtlX3BhaXIoZ2w6OmtHTEltcGxlbWVudGF0aW9uRGVza3RvcEdM LAotLSAgICAgICAgICAgICAgICAgICAgICAgVmFhcGlQaWN0dXJlRmFjdG9yeTo6a1ZhYXBpSW1w bGVtZW50YXRpb25YMTEpKTsKLS0gIH0KLSsgIHZhYXBpX2ltcGxfcGFpcnNfLmluc2VydCgKLSsg ICAgICBzdGQ6Om1ha2VfcGFpcihnbDo6a0dMSW1wbGVtZW50YXRpb25EZXNrdG9wR0wsCi0rICAg ICAgICAgICAgICAgICAgICAgVmFhcGlQaWN0dXJlRmFjdG9yeTo6a1ZhYXBpSW1wbGVtZW50YXRp b25YMTEpKTsKLSAjZW5kaWYKLSAKLSAgIERldGVybWluZVBpY3R1cmVDcmVhdGlvbkFuZERvd25s b2FkaW5nTWVjaGFuaXNtKCk7Ci1AQCAtOTYsMTkgKzk0LDE5IEBAIFZhYXBpUGljdHVyZUZhY3Rv cnk6OkdldFZhYXBpSW1wbGVtZW50YXRpb24oZ2w6OkdMSW1wbGVtZW50YXRpb24gZ2xfaW1wbCkg ewotIH0KLSAKLSB1aW50MzJfdCBWYWFwaVBpY3R1cmVGYWN0b3J5OjpHZXRHTFRleHR1cmVUYXJn ZXQoKSB7Ci0tI2lmIGRlZmluZWQoVVNFX09aT05FKQotLSAgaWYgKGZlYXR1cmVzOjpJc1VzaW5n T3pvbmVQbGF0Zm9ybSgpKQotLSAgICByZXR1cm4gR0xfVEVYVFVSRV9FWFRFUk5BTF9PRVM7Ci0t I2VuZGlmCi0rI2lmIEJVSUxERkxBRyhVU0VfVkFBUElfWDExKQotICAgcmV0dXJuIEdMX1RFWFRV UkVfMkQ7Ci0rI2Vsc2UKLSsgIHJldHVybiBHTF9URVhUVVJFX0VYVEVSTkFMX09FUzsKLSsjZW5k aWYKLSB9Ci0gCi0gZ2Z4OjpCdWZmZXJGb3JtYXQgVmFhcGlQaWN0dXJlRmFjdG9yeTo6R2V0QnVm ZmVyRm9ybWF0KCkgewotLSNpZiBkZWZpbmVkKFVTRV9PWk9ORSkKLS0gIGlmIChmZWF0dXJlczo6 SXNVc2luZ096b25lUGxhdGZvcm0oKSkKLS0gICAgcmV0dXJuIGdmeDo6QnVmZmVyRm9ybWF0OjpZ VVZfNDIwX0JJUExBTkFSOwotLSNlbmRpZgotKyNpZiBCVUlMREZMQUcoVVNFX1ZBQVBJX1gxMSkK LSAgIHJldHVybiBnZng6OkJ1ZmZlckZvcm1hdDo6UkdCWF84ODg4OwotKyNlbHNlCi0rICByZXR1 cm4gZ2Z4OjpCdWZmZXJGb3JtYXQ6OllVVl80MjBfQklQTEFOQVI7Ci0rI2VuZGlmCi0gfQotIAot IHZvaWQgVmFhcGlQaWN0dXJlRmFjdG9yeTo6RGV0ZXJtaW5lUGljdHVyZUNyZWF0aW9uQW5kRG93 bmxvYWRpbmdNZWNoYW5pc20oKSB7Ci1AQCAtMTE2LDUxICsxMTQsNDMgQEAgdm9pZCBWYWFwaVBp Y3R1cmVGYWN0b3J5OjpEZXRlcm1pbmVQaWN0dXJlQ3JlYXRpb25BbmREb3dubG9hZGluZ01lY2hh bmlzbSgpIHsKLSAjaWYgZGVmaW5lZChVU0VfT1pPTkUpCi0gICAgIC8vIFdlIGNhbiBiZSBjYWxs ZWQgd2l0aG91dCBHTCBpbml0aWFsaXplZCwgd2hpY2ggaXMgdmFsaWQgaWYgd2UgdXNlIE96b25l LgotICAgICBjYXNlIGtWYWFwaUltcGxlbWVudGF0aW9uTm9uZToKLS0gICAgICBpZiAoZmVhdHVy ZXM6OklzVXNpbmdPem9uZVBsYXRmb3JtKCkpIHsKLS0gICAgICAgIGNyZWF0ZV9waWN0dXJlX2Ni XyA9IGJhc2U6OkJpbmRSZXBlYXRpbmcoCi0tICAgICAgICAgICAgJkNyZWF0ZVZhYXBpUGljdHVy ZU5hdGl2ZUltcGw8VmFhcGlQaWN0dXJlTmF0aXZlUGl4bWFwT3pvbmU+KTsKLS0gICAgICAgIG5l ZWRzX3ZwcF9mb3JfZG93bmxvYWRpbmdfID0gdHJ1ZTsKLS0gICAgICB9Ci0tCi0tICAgICAgLy8g VGhpcyBpcyByZWFjaGVkIGJ5IHVuaXQgdGVzdHMgd2hpY2ggZG9uJ3QgcmVxdWlyZSBjcmVhdGVf cGljdHVyZV9jYl8KLS0gICAgICAvLyB0byBiZSBpbml0aWFsaXplZCBvciBjYWxsZWQuCi0rICAg ICAgY3JlYXRlX3BpY3R1cmVfY2JfID0gYmFzZTo6QmluZFJlcGVhdGluZygKLSsgICAgICAgICAg JkNyZWF0ZVZhYXBpUGljdHVyZU5hdGl2ZUltcGw8VmFhcGlQaWN0dXJlTmF0aXZlUGl4bWFwT3pv bmU+KTsKLSsgICAgICBuZWVkc192cHBfZm9yX2Rvd25sb2FkaW5nXyA9IHRydWU7Ci0gICAgICAg YnJlYWs7Ci0gI2VuZGlmICAvLyBkZWZpbmVkKFVTRV9PWk9ORSkKLS0jaWYgZGVmaW5lZChVU0Vf WDExKQotKyNpZiBCVUlMREZMQUcoVVNFX1ZBQVBJX1gxMSkKLSAgICAgY2FzZSBrVmFhcGlJbXBs ZW1lbnRhdGlvblgxMToKLS0gICAgICBEQ0hFQ0soIWZlYXR1cmVzOjpJc1VzaW5nT3pvbmVQbGF0 Zm9ybSgpKTsKLSAgICAgICBjcmVhdGVfcGljdHVyZV9jYl8gPQotICAgICAgICAgICBiYXNlOjpC aW5kUmVwZWF0aW5nKCZDcmVhdGVWYWFwaVBpY3R1cmVOYXRpdmVJbXBsPFZhYXBpVEZQUGljdHVy ZT4pOwotICAgICAgIC8vIE5laXRoZXIgVmFhcGlURlBQaWN0dXJlIG9yIFZhYXBpUGljdHVyZU5h dGl2ZVBpeG1hcEFuZ2xlIG5lZWRzIHRoZSBWUFAuCi0gICAgICAgbmVlZHNfdnBwX2Zvcl9kb3du bG9hZGluZ18gPSBmYWxzZTsKLSAgICAgICBicmVhazsKLSAgICAgY2FzZSBrVmFhcGlJbXBsZW1l bnRhdGlvbkFuZ2xlOgotLSAgICAgIERDSEVDSyghZmVhdHVyZXM6OklzVXNpbmdPem9uZVBsYXRm b3JtKCkpOwotICAgICAgIGNyZWF0ZV9waWN0dXJlX2NiXyA9IGJhc2U6OkJpbmRSZXBlYXRpbmco Ci0gICAgICAgICAgICZDcmVhdGVWYWFwaVBpY3R1cmVOYXRpdmVJbXBsPFZhYXBpUGljdHVyZU5h dGl2ZVBpeG1hcEFuZ2xlPik7Ci0gICAgICAgLy8gTmVpdGhlciBWYWFwaVRGUFBpY3R1cmUgb3Ig VmFhcGlQaWN0dXJlTmF0aXZlUGl4bWFwQW5nbGUgbmVlZHMgdGhlIFZQUC4KLSAgICAgICBuZWVk c192cHBfZm9yX2Rvd25sb2FkaW5nXyA9IGZhbHNlOwotICAgICAgIGJyZWFrOwotLSNlbmRpZiAg Ly8gZGVmaW5lZChVU0VfWDExKQotKyNlbmRpZiAgLy8gQlVJTERGTEFHKFVTRV9WQUFQSV9YMTEp Ci0gICAgIGNhc2Uga1ZhYXBpSW1wbGVtZW50YXRpb25Ecm06Ci0gI2lmIGRlZmluZWQoVVNFX09a T05FKQotLSAgICAgIGlmIChmZWF0dXJlczo6SXNVc2luZ096b25lUGxhdGZvcm0oKSkgewotLSAg ICAgICAgY3JlYXRlX3BpY3R1cmVfY2JfID0gYmFzZTo6QmluZFJlcGVhdGluZygKLS0gICAgICAg ICAgICAmQ3JlYXRlVmFhcGlQaWN0dXJlTmF0aXZlSW1wbDxWYWFwaVBpY3R1cmVOYXRpdmVQaXht YXBPem9uZT4pOwotLSAgICAgICAgbmVlZHNfdnBwX2Zvcl9kb3dubG9hZGluZ18gPSB0cnVlOwot LSAgICAgICAgYnJlYWs7Ci0tICAgICAgfQotLSNlbmRpZiAgLy8gZGVmaW5lZChVU0VfT1pPTkUp Ci0tI2lmIGRlZmluZWQoVVNFX0VHTCkKLSsgICAgICBjcmVhdGVfcGljdHVyZV9jYl8gPSBiYXNl OjpCaW5kUmVwZWF0aW5nKAotKyAgICAgICAgICAmQ3JlYXRlVmFhcGlQaWN0dXJlTmF0aXZlSW1w bDxWYWFwaVBpY3R1cmVOYXRpdmVQaXhtYXBPem9uZT4pOwotKyAgICAgIG5lZWRzX3ZwcF9mb3Jf ZG93bmxvYWRpbmdfID0gdHJ1ZTsKLSsgICAgICBicmVhazsKLSsjZWxpZiBkZWZpbmVkKFVTRV9F R0wpCi0gICAgICAgY3JlYXRlX3BpY3R1cmVfY2JfID0gYmFzZTo6QmluZFJlcGVhdGluZygKLSAg ICAgICAgICAgJkNyZWF0ZVZhYXBpUGljdHVyZU5hdGl2ZUltcGw8VmFhcGlQaWN0dXJlTmF0aXZl UGl4bWFwRWdsPik7Ci0gICAgICAgbmVlZHNfdnBwX2Zvcl9kb3dubG9hZGluZ18gPSB0cnVlOwot ICAgICAgIGJyZWFrOwotLSNlbmRpZiAgLy8gZGVmaW5lZChVU0VfRUdMKQotKyNlbHNlCi0gICAg ICAgLy8gb3pvbmUgb3IgZWdsIG11c3QgYmUgdXNlZCB0byB1c2UgdGhlIERSTSBpbXBsZW1lbnRh dGlvbi4KLS0gICAgICBOT1RSRUFDSEVEKCk7Ci0rICAgICAgRkFMTFRIUk9VR0g7Ci0rI2VuZGlm Ci0gICAgIGRlZmF1bHQ6Ci0gICAgICAgTk9UUkVBQ0hFRCgpOwotKyAgICAgIGJyZWFrOwotICAg fQotIH0KLSAKLWRpZmYgLS1naXQgYS9tZWRpYS9ncHUvdmFhcGkvdmFhcGlfcGljdHVyZV9uYXRp dmVfcGl4bWFwX2FuZ2xlLmNjIGIvbWVkaWEvZ3B1L3ZhYXBpL3ZhYXBpX3BpY3R1cmVfbmF0aXZl X3BpeG1hcF9hbmdsZS5jYwotaW5kZXggOWRlMGM5M2I0NC4uZTViOTkwODQ5MCAxMDA2NDQKLS0t LSBhL21lZGlhL2dwdS92YWFwaS92YWFwaV9waWN0dXJlX25hdGl2ZV9waXhtYXBfYW5nbGUuY2MK LSsrKyBiL21lZGlhL2dwdS92YWFwaS92YWFwaV9waWN0dXJlX25hdGl2ZV9waXhtYXBfYW5nbGUu Y2MKLUBAIC02LDcgKzYsNiBAQAotIAotICNpbmNsdWRlICJtZWRpYS9ncHUvdmFhcGkvdmFfc3Vy ZmFjZS5oIgotICNpbmNsdWRlICJtZWRpYS9ncHUvdmFhcGkvdmFhcGlfd3JhcHBlci5oIgotLSNp bmNsdWRlICJ1aS9iYXNlL3VpX2Jhc2VfZmVhdHVyZXMuaCIKLSAjaW5jbHVkZSAidWkvZ2Z4L3gv Y29ubmVjdGlvbi5oIgotICNpbmNsdWRlICJ1aS9nZngveC9mdXR1cmUuaCIKLSAjaW5jbHVkZSAi dWkvZ2Z4L3gveHByb3RvLmgiCi1AQCAtOTIsNyArOTEsNiBAQCBTdGF0dXMgVmFhcGlQaWN0dXJl TmF0aXZlUGl4bWFwQW5nbGU6OkFsbG9jYXRlKGdmeDo6QnVmZmVyRm9ybWF0IGZvcm1hdCkgewot ICAgaWYgKCFtYWtlX2NvbnRleHRfY3VycmVudF9jYl8gfHwgIW1ha2VfY29udGV4dF9jdXJyZW50 X2NiXy5SdW4oKSkKLSAgICAgcmV0dXJuIFN0YXR1c0NvZGU6OmtWYWFwaUJhZENvbnRleHQ7Ci0g Ci0tICBEQ0hFQ0soIWZlYXR1cmVzOjpJc1VzaW5nT3pvbmVQbGF0Zm9ybSgpKTsKLSAgIGF1dG8g aW1hZ2UgPQotICAgICAgIGJhc2U6Ok1ha2VSZWZDb3VudGVkPGdsOjpHTEltYWdlRUdMUGl4bWFw Pih2aXNpYmxlX3NpemVfLCBmb3JtYXQpOwotICAgaWYgKCFpbWFnZSkKLWRpZmYgLS1naXQgYS9t ZWRpYS9ncHUvdmFhcGkvdmFhcGlfcGljdHVyZV90ZnAuY2MgYi9tZWRpYS9ncHUvdmFhcGkvdmFh cGlfcGljdHVyZV90ZnAuY2MKLWluZGV4IDNmN2UyMjFkOGEuLjExOTE0ZTM2NDAgMTAwNjQ0Ci0t LS0gYS9tZWRpYS9ncHUvdmFhcGkvdmFhcGlfcGljdHVyZV90ZnAuY2MKLSsrKyBiL21lZGlhL2dw dS92YWFwaS92YWFwaV9waWN0dXJlX3RmcC5jYwotQEAgLTYsNyArNiw2IEBACi0gCi0gI2luY2x1 ZGUgIm1lZGlhL2dwdS92YWFwaS92YV9zdXJmYWNlLmgiCi0gI2luY2x1ZGUgIm1lZGlhL2dwdS92 YWFwaS92YWFwaV93cmFwcGVyLmgiCi0tI2luY2x1ZGUgInVpL2Jhc2UvdWlfYmFzZV9mZWF0dXJl cy5oIgotICNpbmNsdWRlICJ1aS9nZngveC9jb25uZWN0aW9uLmgiCi0gI2luY2x1ZGUgInVpL2dm eC94L2Z1dHVyZS5oIgotICNpbmNsdWRlICJ1aS9nbC9nbF9iaW5kaW5ncy5oIgotQEAgLTM3LDcg KzM2LDYgQEAgVmFhcGlURlBQaWN0dXJlOjpWYWFwaVRGUFBpY3R1cmUoCi0gICAgICAgY29ubmVj dGlvbl8oeDExOjpDb25uZWN0aW9uOjpHZXQoKSksCi0gICAgICAgeF9waXhtYXBfKHgxMTo6UGl4 bWFwOjpOb25lKSB7Ci0gICBEQ0hFQ0tfQ0FMTEVEX09OX1ZBTElEX1NFUVVFTkNFKHNlcXVlbmNl X2NoZWNrZXJfKTsKLS0gIERDSEVDSyghZmVhdHVyZXM6OklzVXNpbmdPem9uZVBsYXRmb3JtKCkp OwotICAgRENIRUNLKHRleHR1cmVfaWQpOwotICAgRENIRUNLKGNsaWVudF90ZXh0dXJlX2lkKTsK LSB9Ci1kaWZmIC0tZ2l0IGEvbWVkaWEvZ3B1L3ZhYXBpL3ZhYXBpX3ZpZGVvX2RlY29kZV9hY2Nl bGVyYXRvci5jYyBiL21lZGlhL2dwdS92YWFwaS92YWFwaV92aWRlb19kZWNvZGVfYWNjZWxlcmF0 b3IuY2MKLWluZGV4IDc1MTRmZTRmZGQuLmU0Y2Q3YzhkODkgMTAwNjQ0Ci0tLS0gYS9tZWRpYS9n cHUvdmFhcGkvdmFhcGlfdmlkZW9fZGVjb2RlX2FjY2VsZXJhdG9yLmNjCi0rKysgYi9tZWRpYS9n cHUvdmFhcGkvdmFhcGlfdmlkZW9fZGVjb2RlX2FjY2VsZXJhdG9yLmNjCi1AQCAtMTg0LDEyICsx ODQsNiBAQCBib29sIFZhYXBpVmlkZW9EZWNvZGVBY2NlbGVyYXRvcjo6SW5pdGlhbGl6ZShjb25z dCBDb25maWcmIGNvbmZpZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBDbGllbnQqIGNsaWVudCkgewotICAgRENIRUNLKHRhc2tfcnVubmVyXy0+QmVsb25n c1RvQ3VycmVudFRocmVhZCgpKTsKLSAKLS0jaWYgZGVmaW5lZChVU0VfWDExKQotLSAgLy8gVE9E TyhjcmJ1Zy8xMTE2NzAxKTogaW1wbGVtZW50IGRlY29kZSBhY2NlbGVyYXRpb24gd2hlbiBydW5u aW5nIHdpdGggT3pvbmUuCi0tICBpZiAoZmVhdHVyZXM6OklzVXNpbmdPem9uZVBsYXRmb3JtKCkp Ci0tICAgIHJldHVybiBmYWxzZTsKLS0jZW5kaWYKLS0KLSAgIHZhYXBpX3BpY3R1cmVfZmFjdG9y eV8gPSBzdGQ6Om1ha2VfdW5pcXVlPFZhYXBpUGljdHVyZUZhY3Rvcnk+KCk7Ci0gCi0gICBpZiAo Y29uZmlnLmlzX2VuY3J5cHRlZCgpKSB7Ci1AQCAtMTIxMywxMiArMTIwNywxMSBAQCBWYWFwaVZp ZGVvRGVjb2RlQWNjZWxlcmF0b3I6OkdldFN1cHBvcnRlZFByb2ZpbGVzKCkgewotIAotIFZhYXBp VmlkZW9EZWNvZGVBY2NlbGVyYXRvcjo6QnVmZmVyQWxsb2NhdGlvbk1vZGUKLSBWYWFwaVZpZGVv RGVjb2RlQWNjZWxlcmF0b3I6OkRlY2lkZUJ1ZmZlckFsbG9jYXRpb25Nb2RlKCkgewotLSNpZiBk ZWZpbmVkKFVTRV9YMTEpCi0rI2lmIEJVSUxERkxBRyhVU0VfVkFBUElfWDExKQotICAgLy8gVGhl IElNUE9SVCBtb2RlIGlzIHVzZWQgZm9yIEFuZHJvaWQgb24gQ2hyb21lIE9TLCBzbyB0aGlzIGRv ZXNuJ3QgYXBwbHkKLSAgIC8vIGhlcmUuCi0gICBEQ0hFQ0tfTkUob3V0cHV0X21vZGVfLCBWaWRl b0RlY29kZUFjY2VsZXJhdG9yOjpDb25maWc6Ok91dHB1dE1vZGU6OklNUE9SVCk7Ci0gICAvLyBU T0RPKGNyYnVnLzExMTY3MDEpOiBnZXQgdmlkZW8gZGVjb2RlIGFjY2VsZXJhdGlvbiB3b3JraW5n IHdpdGggb3pvbmUuCi0tICBEQ0hFQ0soIWZlYXR1cmVzOjpJc1VzaW5nT3pvbmVQbGF0Zm9ybSgp KTsKLSAgIC8vIEZvciBILjI2NCBvbiBvbGRlciBkZXZpY2VzLCBhbm90aGVyICsxIGlzIGV4cGVy aW1lbnRhbGx5IG5lZWRlZCBmb3IKLSAgIC8vIGhpZ2gtdG8taGlnaCByZXNvbHV0aW9uIGNoYW5n ZXMuCi0gICAvLyBUT0RPKG1jYXNhcyk6IEZpZ3VyZSBvdXQgd2h5IGFuZCB3aHkgb25seSBIMjY0 LCBzZWUgY3JidWcuY29tLzkxMjI5NSBhbmQKLWRpZmYgLS1naXQgYS9tZWRpYS9ncHUvdmFhcGkv dmFhcGlfdmlkZW9fZGVjb2RlX2FjY2VsZXJhdG9yX3VuaXR0ZXN0LmNjIGIvbWVkaWEvZ3B1L3Zh YXBpL3ZhYXBpX3ZpZGVvX2RlY29kZV9hY2NlbGVyYXRvcl91bml0dGVzdC5jYwotaW5kZXggNWI5 YTU0MzM4Ni4uODI2YmIxMDNiMSAxMDA2NDQKLS0tLSBhL21lZGlhL2dwdS92YWFwaS92YWFwaV92 aWRlb19kZWNvZGVfYWNjZWxlcmF0b3JfdW5pdHRlc3QuY2MKLSsrKyBiL21lZGlhL2dwdS92YWFw aS92YWFwaV92aWRlb19kZWNvZGVfYWNjZWxlcmF0b3JfdW5pdHRlc3QuY2MKLUBAIC0xNyw3ICsx Nyw2IEBACi0gI2luY2x1ZGUgIm1lZGlhL2dwdS92YWFwaS92YWFwaV93cmFwcGVyLmgiCi0gI2lu Y2x1ZGUgInRlc3RpbmcvZ21vY2svaW5jbHVkZS9nbW9jay9nbW9jay5oIgotICNpbmNsdWRlICJ0 ZXN0aW5nL2d0ZXN0L2luY2x1ZGUvZ3Rlc3QvZ3Rlc3QuaCIKLS0jaW5jbHVkZSAidWkvYmFzZS91 aV9iYXNlX2ZlYXR1cmVzLmgiCi0gCi0gdXNpbmcgYmFzZTo6dGVzdDo6UnVuQ2xvc3VyZTsKLSB1 c2luZyA6OnRlc3Rpbmc6Ol87Ci1AQCAtNDE2LDEyICs0MTUsMTAgQEAgVEVTVF9QKFZhYXBpVmlk ZW9EZWNvZGVBY2NlbGVyYXRvclRlc3QsIFN1cHBvcnRlZFBsYXRmb3JtcykgewotICAgICAgICAg ICAgIG1vY2tfdmFhcGlfcGljdHVyZV9mYWN0b3J5Xy0+R2V0VmFhcGlJbXBsZW1lbnRhdGlvbigK LSAgICAgICAgICAgICAgICAgZ2w6OmtHTEltcGxlbWVudGF0aW9uRUdMR0xFUzIpKTsKLSAKLS0j aWYgZGVmaW5lZChVU0VfWDExKQotLSAgaWYgKCFmZWF0dXJlczo6SXNVc2luZ096b25lUGxhdGZv cm0oKSkgewotLSAgICBFWFBFQ1RfRVEoVmFhcGlQaWN0dXJlRmFjdG9yeTo6a1ZhYXBpSW1wbGVt ZW50YXRpb25YMTEsCi0tICAgICAgICAgICAgICBtb2NrX3ZhYXBpX3BpY3R1cmVfZmFjdG9yeV8t PkdldFZhYXBpSW1wbGVtZW50YXRpb24oCi0tICAgICAgICAgICAgICAgICAgZ2w6OmtHTEltcGxl bWVudGF0aW9uRGVza3RvcEdMKSk7Ci0tICB9Ci0rI2lmIEJVSUxERkxBRyhVU0VfVkFBUElfWDEx KQotKyAgRVhQRUNUX0VRKFZhYXBpUGljdHVyZUZhY3Rvcnk6OmtWYWFwaUltcGxlbWVudGF0aW9u WDExLAotKyAgICAgICAgICAgIG1vY2tfdmFhcGlfcGljdHVyZV9mYWN0b3J5Xy0+R2V0VmFhcGlJ bXBsZW1lbnRhdGlvbigKLSsgICAgICAgICAgICAgICAgZ2w6OmtHTEltcGxlbWVudGF0aW9uRGVz a3RvcEdMKSk7Ci0gI2VuZGlmCi0gfQotIAotZGlmZiAtLWdpdCBhL21lZGlhL2dwdS92YWFwaS92 YWFwaV93cmFwcGVyLmNjIGIvbWVkaWEvZ3B1L3ZhYXBpL3ZhYXBpX3dyYXBwZXIuY2MKLWluZGV4 IDc1NGQyNTg4NDguLmU1MjhiMGY4NGQgMTAwNjQ0Ci0tLS0gYS9tZWRpYS9ncHUvdmFhcGkvdmFh cGlfd3JhcHBlci5jYwotKysrIGIvbWVkaWEvZ3B1L3ZhYXBpL3ZhYXBpX3dyYXBwZXIuY2MKLUBA IC02NSw3ICs2NSw3IEBACi0gI2luY2x1ZGUgInVpL2dsL2dsX2JpbmRpbmdzLmgiCi0gI2luY2x1 ZGUgInVpL2dsL2dsX2ltcGxlbWVudGF0aW9uLmgiCi0gCi0tI2lmIGRlZmluZWQoVVNFX1gxMSkK LSsjaWYgQlVJTERGTEFHKFVTRV9WQUFQSV9YMTEpCi0gdHlwZWRlZiBYSUQgRHJhd2FibGU7Ci0g Ci0gZXh0ZXJuICJDIiB7Ci1AQCAtNzMsNyArNzMsNyBAQCBleHRlcm4gIkMiIHsKLSB9Ci0gCi0g I2luY2x1ZGUgInVpL2dmeC94L2Nvbm5lY3Rpb24uaCIgIC8vIG5vZ25jaGVjawotLSNlbmRpZgot KyNlbmRpZiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBCVUlMREZMQUcoVVNFX1ZBQVBJ X1gxMSkKLSAKLSAjaWYgZGVmaW5lZChVU0VfT1pPTkUpCi0gI2luY2x1ZGUgInVpL296b25lL3B1 YmxpYy9vem9uZV9wbGF0Zm9ybS5oIgotQEAgLTg3LDE0ICs4NywxNCBAQCB1c2luZyBtZWRpYV9n cHVfdmFhcGk6OmtNb2R1bGVWYV9wcm90OwotIAotIHVzaW5nIG1lZGlhX2dwdV92YWFwaTo6a01v ZHVsZVZhOwotIHVzaW5nIG1lZGlhX2dwdV92YWFwaTo6a01vZHVsZVZhX2RybTsKLS0jaWYgZGVm aW5lZChVU0VfWDExKQotKyNpZiBCVUlMREZMQUcoVVNFX1ZBQVBJX1gxMSkKLSB1c2luZyBtZWRp YV9ncHVfdmFhcGk6OmtNb2R1bGVWYV94MTE7Ci0tI2VuZGlmCi0rI2VuZGlmICAvLyBCVUlMREZM QUcoVVNFX1ZBQVBJX1gxMSkKLSB1c2luZyBtZWRpYV9ncHVfdmFhcGk6OkluaXRpYWxpemVTdHVi czsKLSB1c2luZyBtZWRpYV9ncHVfdmFhcGk6OklzVmFJbml0aWFsaXplZDsKLS0jaWYgZGVmaW5l ZChVU0VfWDExKQotKyNpZiBCVUlMREZMQUcoVVNFX1ZBQVBJX1gxMSkKLSB1c2luZyBtZWRpYV9n cHVfdmFhcGk6OklzVmFfeDExSW5pdGlhbGl6ZWQ7Ci0tI2VuZGlmCi0rI2VuZGlmICAvLyBCVUlM REZMQUcoVVNFX1ZBQVBJX1gxMSkKLSB1c2luZyBtZWRpYV9ncHVfdmFhcGk6OklzVmFfZHJtSW5p dGlhbGl6ZWQ7Ci0gdXNpbmcgbWVkaWFfZ3B1X3ZhYXBpOjpTdHViUGF0aE1hcDsKLSAKLUBAIC01 NTksMTAgKzU1OSwyMCBAQCBWQURpc3BsYXlTdGF0ZTo6VkFEaXNwbGF5U3RhdGUoKQotIGJvb2wg VkFEaXNwbGF5U3RhdGU6OkluaXRpYWxpemUoKSB7Ci0gICBiYXNlOjpBdXRvTG9jayBhdXRvX2xv Y2sodmFfbG9ja18pOwotIAotKyNpZiBkZWZpbmVkKFVTRV9PWk9ORSkgJiYgZGVmaW5lZChPU19M SU5VWCkKLSsgIC8vIFRPRE8oY3JidWcuY29tLzExMTY3MDEpOiBhZGQgdmFhcGkgc3VwcG9ydCBm b3Igb3RoZXIgT3pvbmUgcGxhdGZvcm1zIG9uCi0rICAvLyBMaW51eC4gU2VlIGNvbW1lbnQgaW4g T3pvbmVQbGF0Zm9ybTo6UGxhdGZvcm1Qcm9wZXJ0aWVzOjpzdXBwb3J0c192YWFwaQotKyAgLy8g Zm9yIG1vcmUgZGV0YWlscy4gVGhpcyB3aWxsIGFsc28gcmVxdWlyZSByZXZpc2l0aW5nIGV2ZXJ5 dGhpbmcgdGhhdCdzCi0rICAvLyBndWFyZGVkIGJ5IFVTRV9WQUFQSV9YMTEuIEZvciBleGFtcGxl LCBpZiBVU0VfVkFBUElfWDExIGlzIHRydWUsIGJ1dCB0aGUKLSsgIC8vIHVzZXIgY2hvb3NlcyB0 aGUgV2F5bGFuZCBiYWNrZW5kIGZvciBPem9uZSBhdCBydW50aW1lLCB0aGVuIG1hbnkgdGhpbmdz IChpZgotKyAgLy8gbm90IGFsbCkgdGhhdCB3ZSBkbyBmb3IgWDExIHdvbid0IGFwcGx5LgotKyAg aWYgKCF1aTo6T3pvbmVQbGF0Zm9ybTo6R2V0SW5zdGFuY2UoKS0+R2V0UGxhdGZvcm1Qcm9wZXJ0 aWVzKCkuc3VwcG9ydHNfdmFhcGkpCi0rICAgIHJldHVybiBmYWxzZTsKLSsjZW5kaWYKLSsKLSAg IGJvb2wgbGlicmFyaWVzX2luaXRpYWxpemVkID0gSXNWYUluaXRpYWxpemVkKCkgJiYgSXNWYV9k cm1Jbml0aWFsaXplZCgpOwotLSNpZiBkZWZpbmVkKFVTRV9YMTEpCi0tICBpZiAoIWZlYXR1cmVz OjpJc1VzaW5nT3pvbmVQbGF0Zm9ybSgpKQotLSAgICBsaWJyYXJpZXNfaW5pdGlhbGl6ZWQgPSBs aWJyYXJpZXNfaW5pdGlhbGl6ZWQgJiYgSXNWYV94MTFJbml0aWFsaXplZCgpOwotKyNpZiBCVUlM REZMQUcoVVNFX1ZBQVBJX1gxMSkKLSsgIGxpYnJhcmllc19pbml0aWFsaXplZCA9IGxpYnJhcmll c19pbml0aWFsaXplZCAmJiBJc1ZhX3gxMUluaXRpYWxpemVkKCk7Ci0gI2VuZGlmCi0gICBpZiAo IWxpYnJhcmllc19pbml0aWFsaXplZCkKLSAgICAgcmV0dXJuIGZhbHNlOwotQEAgLTU3NywzNCAr NTg3LDI1IEBAIGJvb2wgVkFEaXNwbGF5U3RhdGU6OkluaXRpYWxpemUoKSB7Ci0gICByZXR1cm4g c3VjY2VzczsKLSB9Ci0gCi0tI2lmIGRlZmluZWQoVVNFX1gxMSkKLSsjaWYgQlVJTERGTEFHKFVT RV9WQUFQSV9YMTEpCi0gCi0gYWJzbDo6b3B0aW9uYWw8VkFEaXNwbGF5PiBHZXRWQURpc3BsYXlT dGF0ZVgxMShjb25zdCBiYXNlOjpTY29wZWRGRCYgZHJtX2ZkKSB7Ci0tICBib29sIHVzZV9kcm1f YXNfZmFsbGJhY2sgPSBmYWxzZTsKLSAgIHN3aXRjaCAoZ2w6OkdldEdMSW1wbGVtZW50YXRpb24o KSkgewotICAgICBjYXNlIGdsOjprR0xJbXBsZW1lbnRhdGlvbkVHTEdMRVMyOgotICAgICAgIHJl dHVybiB2YUdldERpc3BsYXlEUk0oZHJtX2ZkLmdldCgpKTsKLSAKLSAgICAgY2FzZSBnbDo6a0dM SW1wbGVtZW50YXRpb25Ob25lOgotLSAgICAgIHVzZV9kcm1fYXNfZmFsbGJhY2sgPSB0cnVlOwot LSAgICAgIEZBTExUSFJPVUdIOwotIAotICAgICBjYXNlIGdsOjprR0xJbXBsZW1lbnRhdGlvbkRl c2t0b3BHTDogewotLSAgICAgIGlmICghZmVhdHVyZXM6OklzVXNpbmdPem9uZVBsYXRmb3JtKCkp IHsKLS0gICAgICAgIFZBRGlzcGxheSBkaXNwbGF5ID0KLS0gICAgICAgICAgICB2YUdldERpc3Bs YXkoeDExOjpDb25uZWN0aW9uOjpHZXQoKS0+R2V0WGxpYkRpc3BsYXkoKSk7Ci0tICAgICAgICBp ZiAodmFEaXNwbGF5SXNWYWxpZChkaXNwbGF5KSkKLS0gICAgICAgICAgcmV0dXJuIGRpc3BsYXk7 Ci0tICAgICAgICByZXR1cm4gdmFHZXREaXNwbGF5RFJNKGRybV9mZC5nZXQoKSk7Ci0tICAgICAg fQotLSAgICAgIGJyZWFrOwotKyAgICAgIFZBRGlzcGxheSBkaXNwbGF5ID0KLSsgICAgICAgICAg dmFHZXREaXNwbGF5KHgxMTo6Q29ubmVjdGlvbjo6R2V0KCktPkdldFhsaWJEaXNwbGF5KCkpOwot KyAgICAgIGlmICh2YURpc3BsYXlJc1ZhbGlkKGRpc3BsYXkpKQotKyAgICAgICAgcmV0dXJuIGRp c3BsYXk7Ci0rICAgICAgcmV0dXJuIHZhR2V0RGlzcGxheURSTShkcm1fZmQuZ2V0KCkpOwotICAg ICB9Ci0gCi0tICAgIGNhc2UgZ2w6OmtHTEltcGxlbWVudGF0aW9uRUdMQU5HTEU6IHsKLS0gICAg ICBpZiAoIWZlYXR1cmVzOjpJc1VzaW5nT3pvbmVQbGF0Zm9ybSgpKQotLSAgICAgICAgcmV0dXJu IHZhR2V0RGlzcGxheSh4MTE6OkNvbm5lY3Rpb246OkdldCgpLT5HZXRYbGliRGlzcGxheSgpKTsK LS0gICAgICBicmVhazsKLS0gICAgfQotKyAgICBjYXNlIGdsOjprR0xJbXBsZW1lbnRhdGlvbkVH TEFOR0xFOgotKyAgICAgIHJldHVybiB2YUdldERpc3BsYXkoeDExOjpDb25uZWN0aW9uOjpHZXQo KS0+R2V0WGxpYkRpc3BsYXkoKSk7Ci0gCi0gICAgIGRlZmF1bHQ6Ci0gICAgICAgTE9HKFdBUk5J TkcpIDw8ICJWQUFQSSB2aWRlbyBhY2NlbGVyYXRpb24gbm90IGF2YWlsYWJsZSBmb3IgIgotQEAg LTYxMiwxMCArNjEzLDYgQEAgYWJzbDo6b3B0aW9uYWw8VkFEaXNwbGF5PiBHZXRWQURpc3BsYXlT dGF0ZVgxMShjb25zdCBiYXNlOjpTY29wZWRGRCYgZHJtX2ZkKSB7Ci0gICAgICAgICAgICAgICAg ICAgICAgICAgICBnbDo6R2V0R0xJbXBsZW1lbnRhdGlvblBhcnRzKCkpOwotICAgICAgIHJldHVy biBhYnNsOjpudWxsb3B0OwotICAgfQotLQotLSAgaWYgKHVzZV9kcm1fYXNfZmFsbGJhY2spCi0t ICAgIHJldHVybiB2YUdldERpc3BsYXlEUk0oZHJtX2ZkLmdldCgpKTsKLS0gIHJldHVybiBhYnNs OjpudWxsb3B0OwotIH0KLSAKLSAjZWxzZQotQEAgLTYzMywxMSArNjMwLDExIEBAIGFic2w6Om9w dGlvbmFsPFZBRGlzcGxheT4gR2V0VkFEaXNwbGF5U3RhdGUoY29uc3QgYmFzZTo6U2NvcGVkRkQm IGRybV9mZCkgewotICAgfQotIH0KLSAKLS0jZW5kaWYgIC8vIGRlZmluZWQoVVNFX1gxMSkKLSsj ZW5kaWYgIC8vIEJVSUxERkxBRyhVU0VfVkFBUElfWDExKQotIAotIGJvb2wgVkFEaXNwbGF5U3Rh dGU6OkluaXRpYWxpemVWYURpc3BsYXlfTG9ja2VkKCkgewotICAgYWJzbDo6b3B0aW9uYWw8VkFE aXNwbGF5PiBkaXNwbGF5ID0KLS0jaWYgZGVmaW5lZChVU0VfWDExKQotKyNpZiBCVUlMREZMQUco VVNFX1ZBQVBJX1gxMSkKLSAgICAgICBHZXRWQURpc3BsYXlTdGF0ZVgxMShkcm1fZmRfKTsKLSAj ZWxzZQotICAgICAgIEdldFZBRGlzcGxheVN0YXRlKGRybV9mZF8pOwotQEAgLTcwMiwxMCArNjk5 LDkgQEAgYm9vbCBWQURpc3BsYXlTdGF0ZTo6SW5pdGlhbGl6ZU9uY2UoKSB7Ci0gICBpZiAoIUlu aXRpYWxpemVWYURpc3BsYXlfTG9ja2VkKCkgfHwgIUluaXRpYWxpemVWYURyaXZlcl9Mb2NrZWQo KSkKLSAgICAgcmV0dXJuIGZhbHNlOwotIAotLSNpZiBkZWZpbmVkKFVTRV9YMTEpCi0rI2lmIEJV SUxERkxBRyhVU0VfVkFBUElfWDExKQotICAgaWYgKGdsOjpHZXRHTEltcGxlbWVudGF0aW9uKCkg PT0gZ2w6OmtHTEltcGxlbWVudGF0aW9uRUdMQU5HTEUgJiYKLSAgICAgICBpbXBsZW1lbnRhdGlv bl90eXBlXyA9PSBWQUltcGxlbWVudGF0aW9uOjprSW50ZWxJSEQpIHsKLS0gICAgRENIRUNLKCFm ZWF0dXJlczo6SXNVc2luZ096b25lUGxhdGZvcm0oKSk7Ci0gICAgIGNvbnN0ZXhwciBjaGFyIGxp YnZhX2RyaXZlcl9pbXBsX2VudltdID0gIkxJQlZBX0RSSVZFUl9OQU1FIjsKLSAgICAgLy8gVE9E TyhjcmJ1Zy8xMTE2NzAzKSBUaGUgbGlidmEgaW50ZWwtbWVkaWEgZHJpdmVyIGhhcyBhIGtub3du IHNlZ2ZhdWx0IGluCi0gICAgIC8vIHZhUHV0U3VyZmFjZSwgc28gdW50aWwgdGhpcyBpcyBmaXhl ZCwgZmFsbCBiYWNrIHRvIHRoZSBpOTY1IGRyaXZlci4gVGhlcmUKLUBAIC03MjIsNyArNzE4LDcg QEAgYm9vbCBWQURpc3BsYXlTdGF0ZTo6SW5pdGlhbGl6ZU9uY2UoKSB7Ci0gICAgIGlmICghSW5p dGlhbGl6ZVZhRGlzcGxheV9Mb2NrZWQoKSB8fCAhSW5pdGlhbGl6ZVZhRHJpdmVyX0xvY2tlZCgp KQotICAgICAgIHJldHVybiBmYWxzZTsKLSAgIH0KLS0jZW5kaWYgIC8vIFVTRV9YMTEKLSsjZW5k aWYgIC8vIEJVSUxERkxBRyhVU0VfVkFBUElfWDExKQotIAotICAgcmV0dXJuIHRydWU7Ci0gfQot QEAgLTI0NTIsMTEgKzI0NDgsMTAgQEAgYm9vbCBWYWFwaVdyYXBwZXI6Ok1hcEFuZENvcHlBbmRF eGVjdXRlKAotICAgcmV0dXJuIEV4ZWN1dGVfTG9ja2VkKHZhX3N1cmZhY2VfaWQsIHZhX2J1ZmZl cl9pZHMpOwotIH0KLSAKLS0jaWYgZGVmaW5lZChVU0VfWDExKQotKyNpZiBCVUlMREZMQUcoVVNF X1ZBQVBJX1gxMSkKLSBib29sIFZhYXBpV3JhcHBlcjo6UHV0U3VyZmFjZUludG9QaXhtYXAoVkFT dXJmYWNlSUQgdmFfc3VyZmFjZV9pZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgeDExOjpQaXhtYXAgeF9waXhtYXAsCi0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGdmeDo6U2l6ZSBkZXN0X3NpemUpIHsKLS0gIERDSEVDSyghZmVhdHVy ZXM6OklzVXNpbmdPem9uZVBsYXRmb3JtKCkpOwotICAgYmFzZTo6QXV0b0xvY2sgYXV0b19sb2Nr KCp2YV9sb2NrXyk7Ci0gCi0gICBWQVN0YXR1cyB2YV9yZXMgPSB2YVN5bmNTdXJmYWNlKHZhX2Rp c3BsYXlfLCB2YV9zdXJmYWNlX2lkKTsKLUBAIC0yNDcwLDcgKzI0NjUsNyBAQCBib29sIFZhYXBp V3JhcHBlcjo6UHV0U3VyZmFjZUludG9QaXhtYXAoVkFTdXJmYWNlSUQgdmFfc3VyZmFjZV9pZCwK LSAgIFZBX1NVQ0NFU1NfT1JfUkVUVVJOKHZhX3JlcywgVmFhcGlGdW5jdGlvbnM6OmtWQVB1dFN1 cmZhY2UsIGZhbHNlKTsKLSAgIHJldHVybiB0cnVlOwotIH0KLS0jZW5kaWYgIC8vIFVTRV9YMTEK LSsjZW5kaWYgIC8vIEJVSUxERkxBRyhVU0VfVkFBUElfWDExKQotIAotIHN0ZDo6dW5pcXVlX3B0 cjxTY29wZWRWQUltYWdlPiBWYWFwaVdyYXBwZXI6OkNyZWF0ZVZhSW1hZ2UoCi0gICAgIFZBU3Vy ZmFjZUlEIHZhX3N1cmZhY2VfaWQsCi1AQCAtMjg0NCw5ICsyODM5LDggQEAgdm9pZCBWYWFwaVdy YXBwZXI6OlByZVNhbmRib3hJbml0aWFsaXphdGlvbigpIHsKLSAKLSAgIHBhdGhzW2tNb2R1bGVW YV0ucHVzaF9iYWNrKHN0ZDo6c3RyaW5nKCJsaWJ2YS5zby4iKSArIHZhX3N1ZmZpeCk7Ci0gICBw YXRoc1trTW9kdWxlVmFfZHJtXS5wdXNoX2JhY2soc3RkOjpzdHJpbmcoImxpYnZhLWRybS5zby4i KSArIHZhX3N1ZmZpeCk7Ci0tI2lmIGRlZmluZWQoVVNFX1gxMSkKLS0gIGlmICghZmVhdHVyZXM6 OklzVXNpbmdPem9uZVBsYXRmb3JtKCkpCi0tICAgIHBhdGhzW2tNb2R1bGVWYV94MTFdLnB1c2hf YmFjayhzdGQ6OnN0cmluZygibGlidmEteDExLnNvLiIpICsgdmFfc3VmZml4KTsKLSsjaWYgQlVJ TERGTEFHKFVTRV9WQUFQSV9YMTEpCi0rICBwYXRoc1trTW9kdWxlVmFfeDExXS5wdXNoX2JhY2so c3RkOjpzdHJpbmcoImxpYnZhLXgxMS5zby4iKSArIHZhX3N1ZmZpeCk7Ci0gI2VuZGlmCi0gI2lm IEJVSUxERkxBRyhJU19DSFJPTUVPU19BU0gpCi0gICBwYXRoc1trTW9kdWxlVmFfcHJvdF0ucHVz aF9iYWNrKHN0ZDo6c3RyaW5nKCJsaWJ2YS5zby4iKSArIHZhX3N1ZmZpeCk7Ci1kaWZmIC0tZ2l0 IGEvbWVkaWEvZ3B1L3ZhYXBpL3ZhYXBpX3dyYXBwZXIuaCBiL21lZGlhL2dwdS92YWFwaS92YWFw aV93cmFwcGVyLmgKLWluZGV4IDBlM2RhNTM2MjQuLjg4ZmZjZDA3OTkgMTAwNjQ0Ci0tLS0gYS9t ZWRpYS9ncHUvdmFhcGkvdmFhcGlfd3JhcHBlci5oCi0rKysgYi9tZWRpYS9ncHUvdmFhcGkvdmFh cGlfd3JhcHBlci5oCi1AQCAtMzYsOSArMzYsOSBAQAotICNpbmNsdWRlICJ0aGlyZF9wYXJ0eS9h YnNlaWwtY3BwL2Fic2wvdHlwZXMvb3B0aW9uYWwuaCIKLSAjaW5jbHVkZSAidWkvZ2Z4L2dlb21l dHJ5L3NpemUuaCIKLSAKLS0jaWYgZGVmaW5lZChVU0VfWDExKQotKyNpZiBCVUlMREZMQUcoVVNF X1ZBQVBJX1gxMSkKLSAjaW5jbHVkZSAidWkvZ2Z4L3gveHByb3RvLmgiICAvLyBub2duY2hlY2sK LS0jZW5kaWYgIC8vIFVTRV9YMTEKLSsjZW5kaWYgICAgICAgICAgICAgICAgICAgICAgICAvLyBC VUlMREZMQUcoVVNFX1ZBQVBJX1gxMSkKLSAKLSBuYW1lc3BhY2UgZ2Z4IHsKLSBlbnVtIGNsYXNz IEJ1ZmZlckZvcm1hdDsKLUBAIC00MjYsMTMgKzQyNiwxMyBAQCBjbGFzcyBNRURJQV9HUFVfRVhQ T1JUIFZhYXBpV3JhcHBlcgotICAgICAgIGNvbnN0IHN0ZDo6dmVjdG9yPHN0ZDo6cGFpcjxWQUJ1 ZmZlcklELCBWQUJ1ZmZlckRlc2NyaXB0b3I+PiYgdmFfYnVmZmVycykKLSAgICAgICBXQVJOX1VO VVNFRF9SRVNVTFQ7Ci0gCi0tI2lmIGRlZmluZWQoVVNFX1gxMSkKLSsjaWYgQlVJTERGTEFHKFVT RV9WQUFQSV9YMTEpCi0gICAvLyBQdXQgZGF0YSBmcm9tIHx2YV9zdXJmYWNlX2lkfCBpbnRvIHx4 X3BpeG1hcHwgb2Ygc2l6ZQotICAgLy8gfGRlc3Rfc2l6ZXwsIGNvbnZlcnRpbmcvc2NhbGluZyB0 byBpdC4KLSAgIGJvb2wgUHV0U3VyZmFjZUludG9QaXhtYXAoVkFTdXJmYWNlSUQgdmFfc3VyZmFj ZV9pZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeDExOjpQaXhtYXAgeF9waXhtYXAs Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdmeDo6U2l6ZSBkZXN0X3NpemUpIFdBUk5f VU5VU0VEX1JFU1VMVDsKLS0jZW5kaWYgIC8vIFVTRV9YMTEKLSsjZW5kaWYgIC8vIEJVSUxERkxB RyhVU0VfVkFBUElfWDExKQotIAotICAgLy8gQ3JlYXRlcyBhIFNjb3BlZFZBSW1hZ2UgZnJvbSBh IFZBU3VyZmFjZSB8dmFfc3VyZmFjZV9pZHwgYW5kIG1hcCBpdCBpbnRvCi0gICAvLyBtZW1vcnkg d2l0aCB0aGUgZ2l2ZW4gfGZvcm1hdHwgYW5kIHxzaXplfC4gSWYgfGZvcm1hdHwgaXMgbm90IGVx dWFsIHRvIHRoZQotZGlmZiAtLWdpdCBhL3VpL296b25lL3BsYXRmb3JtL3gxMS9vem9uZV9wbGF0 Zm9ybV94MTEuY2MgYi91aS9vem9uZS9wbGF0Zm9ybS94MTEvb3pvbmVfcGxhdGZvcm1feDExLmNj Ci1pbmRleCA4ODg5ODI4ZTBmLi45NjNkYzdhMGNkIDEwMDY0NAotLS0tIGEvdWkvb3pvbmUvcGxh dGZvcm0veDExL296b25lX3BsYXRmb3JtX3gxMS5jYwotKysrIGIvdWkvb3pvbmUvcGxhdGZvcm0v eDExL296b25lX3BsYXRmb3JtX3gxMS5jYwotQEAgLTIwOCw2ICsyMDgsOSBAQCBjbGFzcyBPem9u ZVBsYXRmb3JtWDExIDogcHVibGljIE96b25lUGxhdGZvcm0sCi0gICAgICAgcHJvcGVydGllcy0+ c3VwcG9ydHNfZ2xvYmFsX2FwcGxpY2F0aW9uX21lbnVzID0gdHJ1ZTsKLSAgICAgICBwcm9wZXJ0 aWVzLT5hcHBfbW9kYWxfZGlhbG9nc191c2VfZXZlbnRfYmxvY2tlciA9IHRydWU7Ci0gICAgICAg cHJvcGVydGllcy0+ZmV0Y2hfYnVmZmVyX2Zvcm1hdHNfZm9yX2dtYl9vbl9ncHUgPSB0cnVlOwot KyNpZiBkZWZpbmVkKE9TX0xJTlVYKQotKyAgICAgIHByb3BlcnRpZXMtPnN1cHBvcnRzX3ZhYXBp ID0gdHJ1ZTsKLSsjZW5kaWYKLSAKLSAgICAgICBpbml0aWFsaXNlZCA9IHRydWU7Ci0gICAgIH0K LWRpZmYgLS1naXQgYS91aS9vem9uZS9wdWJsaWMvb3pvbmVfcGxhdGZvcm0uaCBiL3VpL296b25l L3B1YmxpYy9vem9uZV9wbGF0Zm9ybS5oCi1pbmRleCBkZjk1ZjA3NDg2Li4yZDdmNDRiYmZhIDEw MDY0NAotLS0tIGEvdWkvb3pvbmUvcHVibGljL296b25lX3BsYXRmb3JtLmgKLSsrKyBiL3VpL296 b25lL3B1YmxpYy9vem9uZV9wbGF0Zm9ybS5oCi1AQCAtMTUsNiArMTUsNyBAQAotICNpbmNsdWRl ICJiYXNlL21hY3Jvcy5oIgotICNpbmNsdWRlICJiYXNlL21lc3NhZ2VfbG9vcC9tZXNzYWdlX3B1 bXBfdHlwZS5oIgotICNpbmNsdWRlICJiYXNlL3NpbmdsZV90aHJlYWRfdGFza19ydW5uZXIuaCIK LSsjaW5jbHVkZSAiYnVpbGQvYnVpbGRfY29uZmlnLmgiCi0gI2luY2x1ZGUgIm1vam8vcHVibGlj L2NwcC9iaW5kaW5ncy9iaW5kZXJfbWFwLmgiCi0gI2luY2x1ZGUgInVpL2dmeC9idWZmZXJfdHlw ZXMuaCIKLSAjaW5jbHVkZSAidWkvZ2Z4L25hdGl2ZV93aWRnZXRfdHlwZXMuaCIKLUBAIC0xNTQs NiArMTU1LDE1IEBAIGNsYXNzIENPTVBPTkVOVF9FWFBPUlQoT1pPTkUpIE96b25lUGxhdGZvcm0g ewotICAgICAvLyBEZXRlcm1pbmVzIHdoZXRoZXIgYnVmZmVyIGZvcm1hdHMgc2hvdWxkIGJlIGZl dGNoZWQgb24gR1BVIGFuZCBwYXNzZWQKLSAgICAgLy8gYmFjayB2aWEgZ3B1IGV4dHJhIGluZm8u Ci0gICAgIGJvb2wgZmV0Y2hfYnVmZmVyX2Zvcm1hdHNfZm9yX2dtYl9vbl9ncHUgPSBmYWxzZTsK LSsKLSsjaWYgZGVmaW5lZChPU19MSU5VWCkKLSsgICAgLy8gVE9ETyhjcmJ1Zy5jb20vMTExNjcw MSk6IGFkZCB2YWFwaSBzdXBwb3J0IGZvciBvdGhlciBPem9uZSBwbGF0Zm9ybXMgb24KLSsgICAg Ly8gTGludXguIEF0IHRoZSBtb21lbnQsIFZBLUFQSSBMaW51eCBpbXBsZW1lbnRhdGlvbiBzdXBw b3J0cyBvbmx5IFgxMQotKyAgICAvLyBiYWNrZW5kLiBUaGlzIGltcGxlbWVudGF0aW9uIG11c3Qg YmUgcmVmYWN0b3JlZCB0byBzdXBwb3J0IE96b25lCi0rICAgIC8vIHByb3Blcmx5LiBBcyBhIHRl bXBvcmFyeSBzb2x1dGlvbiwgVkEtQVBJIG9uIExpbnV4IGNoZWNrcyBpZiB2YWFwaSBpcwotKyAg ICAvLyBzdXBwb3J0ZWQgKHdoaWNoIGltcGxpY2l0bHkgbWVhbnMgdGhhdCBpdCBpcyBPem9uZS9Y MTEpLgotKyAgICBib29sIHN1cHBvcnRzX3ZhYXBpID0gZmFsc2U7Ci0rI2VuZGlmCi0gICB9Owot IAotICAgLy8gR3JvdXBzIHBsYXRmb3JtIHByb3BlcnRpZXMgdGhhdCBjYW4gb25seSBiZSBrbm93 biBhdCBydW4gdGltZS4KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY2hyb21pdW0vcGF0Y2hlcy9weXRo b24zLjEwLnBhdGNoIGIvc3JjcGtncy9jaHJvbWl1bS9wYXRjaGVzL3B5dGhvbjMuMTAucGF0Y2gK ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDljZTZlZTcxMjAyZS4uMDAwMDAwMDAwMDAw Ci0tLSBhL3NyY3BrZ3MvY2hyb21pdW0vcGF0Y2hlcy9weXRob24zLjEwLnBhdGNoCisrKyAvZGV2 L251bGwKQEAgLTEsNTcgKzAsMCBAQAotZGlmZiAtdXIgLi90aGlyZF9wYXJ0eS9qaW5qYTIub3Jp Zy9ydW50aW1lLnB5IC4vdGhpcmRfcGFydHkvamluamEyL3J1bnRpbWUucHkKLS0tLSBhL3RoaXJk X3BhcnR5L2ppbmphMi5vcmlnL3J1bnRpbWUucHkJMjAyMS0wOS0yNCAwMDoyNjozNS4wMDAwMDAw MDAgLTA0MDAKLSsrKyBiL3RoaXJkX3BhcnR5L2ppbmphMi9ydW50aW1lLnB5CTIwMjEtMTAtMTMg MTE6NTE6MTYuNDkzOTg2NTU2IC0wNDAwCi1AQCAtMzE1LDcgKzMxNSw3IEBACi0gCi0gIyByZWdp c3RlciB0aGUgY29udGV4dCBhcyBtYXBwaW5nIGlmIHBvc3NpYmxlCi0gdHJ5OgotLSAgICBmcm9t IGNvbGxlY3Rpb25zIGltcG9ydCBNYXBwaW5nCi0rICAgIGZyb20gY29sbGVjdGlvbnMuYWJjIGlt cG9ydCBNYXBwaW5nCi0gICAgIE1hcHBpbmcucmVnaXN0ZXIoQ29udGV4dCkKLSBleGNlcHQgSW1w b3J0RXJyb3I6Ci0gICAgIHBhc3MKLWRpZmYgLXVyIC4vdGhpcmRfcGFydHkvamluamEyLm9yaWcv c2FuZGJveC5weSAuL3RoaXJkX3BhcnR5L2ppbmphMi9zYW5kYm94LnB5Ci0tLS0gYS90aGlyZF9w YXJ0eS9qaW5qYTIub3JpZy9zYW5kYm94LnB5CTIwMjEtMDktMjQgMDA6MjY6MzUuMDAwMDAwMDAw IC0wNDAwCi0rKysgYi90aGlyZF9wYXJ0eS9qaW5qYTIvc2FuZGJveC5weQkyMDIxLTEwLTEzIDEx OjUwOjUxLjUxMzk4MDM5OSAtMDQwMAotQEAgLTE0LDcgKzE0LDcgQEAKLSAiIiIKLSBpbXBvcnQg dHlwZXMKLSBpbXBvcnQgb3BlcmF0b3IKLS1mcm9tIGNvbGxlY3Rpb25zIGltcG9ydCBNYXBwaW5n Ci0rZnJvbSBjb2xsZWN0aW9ucy5hYmMgaW1wb3J0IE1hcHBpbmcKLSBmcm9tIGppbmphMi5lbnZp cm9ubWVudCBpbXBvcnQgRW52aXJvbm1lbnQKLSBmcm9tIGppbmphMi5leGNlcHRpb25zIGltcG9y dCBTZWN1cml0eUVycm9yCi0gZnJvbSBqaW5qYTIuX2NvbXBhdCBpbXBvcnQgc3RyaW5nX3R5cGVz LCBQWTIKLUBAIC03OSw3ICs3OSw3IEBACi0gICAgIHBhc3MKLSAKLSAjOiByZWdpc3RlciBQeXRo b24gMi42IGFic3RyYWN0IGJhc2UgY2xhc3NlcwotLWZyb20gY29sbGVjdGlvbnMgaW1wb3J0IE11 dGFibGVTZXQsIE11dGFibGVNYXBwaW5nLCBNdXRhYmxlU2VxdWVuY2UKLStmcm9tIGNvbGxlY3Rp b25zLmFiYyBpbXBvcnQgTXV0YWJsZVNldCwgTXV0YWJsZU1hcHBpbmcsIE11dGFibGVTZXF1ZW5j ZQotIF9tdXRhYmxlX3NldF90eXBlcyArPSAoTXV0YWJsZVNldCwpCi0gX211dGFibGVfbWFwcGlu Z190eXBlcyArPSAoTXV0YWJsZU1hcHBpbmcsKQotIF9tdXRhYmxlX3NlcXVlbmNlX3R5cGVzICs9 IChNdXRhYmxlU2VxdWVuY2UsKQotZGlmZiAtdXIgLi90aGlyZF9wYXJ0eS9qaW5qYTIub3JpZy90 ZXN0cy5weSAuL3RoaXJkX3BhcnR5L2ppbmphMi90ZXN0cy5weQotLS0tIGEvdGhpcmRfcGFydHkv amluamEyLm9yaWcvdGVzdHMucHkJMjAyMS0wOS0yNCAwMDoyNjozNS4wMDAwMDAwMDAgLTA0MDAK LSsrKyBiL3RoaXJkX3BhcnR5L2ppbmphMi90ZXN0cy5weQkyMDIxLTEwLTEzIDExOjUxOjUxLjY5 Mzk5NTIyNyAtMDQwMAotQEAgLTEwLDcgKzEwLDcgQEAKLSAiIiIKLSBpbXBvcnQgb3BlcmF0b3IK LSBpbXBvcnQgcmUKLS1mcm9tIGNvbGxlY3Rpb25zIGltcG9ydCBNYXBwaW5nCi0rZnJvbSBjb2xs ZWN0aW9ucy5hYmMgaW1wb3J0IE1hcHBpbmcKLSBmcm9tIGppbmphMi5ydW50aW1lIGltcG9ydCBV bmRlZmluZWQKLSBmcm9tIGppbmphMi5fY29tcGF0IGltcG9ydCB0ZXh0X3R5cGUsIHN0cmluZ190 eXBlcywgaW50ZWdlcl90eXBlcwotIGltcG9ydCBkZWNpbWFsCi1kaWZmIC11ciAuL3RoaXJkX3Bh cnR5L2ppbmphMi5vcmlnL3V0aWxzLnB5IC4vdGhpcmRfcGFydHkvamluamEyL3V0aWxzLnB5Ci0t LS0gYS90aGlyZF9wYXJ0eS9qaW5qYTIub3JpZy91dGlscy5weQkyMDIxLTA5LTI0IDAwOjI2OjM1 LjAwMDAwMDAwMCAtMDQwMAotKysrIGIvdGhpcmRfcGFydHkvamluamEyL3V0aWxzLnB5CTIwMjEt MTAtMTMgMTE6NTE6MzQuOTY5OTkxMTA2IC0wNDAwCi1AQCAtNDgyLDcgKzQ4Miw3IEBACi0gCi0g IyByZWdpc3RlciB0aGUgTFJVIGNhY2hlIGFzIG11dGFibGUgbWFwcGluZyBpZiBwb3NzaWJsZQot IHRyeToKLS0gICAgZnJvbSBjb2xsZWN0aW9ucyBpbXBvcnQgTXV0YWJsZU1hcHBpbmcKLSsgICAg ZnJvbSBjb2xsZWN0aW9ucy5hYmMgaW1wb3J0IE11dGFibGVNYXBwaW5nCi0gICAgIE11dGFibGVN YXBwaW5nLnJlZ2lzdGVyKExSVUNhY2hlKQotIGV4Y2VwdCBJbXBvcnRFcnJvcjoKLSAgICAgcGFz cwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9jaHJvbWl1bS9wYXRjaGVzL3NuZGlvLnBhdGNoIGIvc3Jj cGtncy9jaHJvbWl1bS9wYXRjaGVzL3NuZGlvLnBhdGNoCmluZGV4IDY3ZmI4ZmNhNjJkMC4uYmFj OGE2M2JjMjRmIDEwMDY0NAotLS0gYS9zcmNwa2dzL2Nocm9taXVtL3BhdGNoZXMvc25kaW8ucGF0 Y2gKKysrIGIvc3JjcGtncy9jaHJvbWl1bS9wYXRjaGVzL3NuZGlvLnBhdGNoCkBAIC00NywxNSAr NDcsNiBAQCBkaWZmIC1OYXVyIGNocm9taXVtLTgzLjAuNDEwMy45Ny5vcmlnL21lZGlhL2F1ZGlv L2xpbnV4L2F1ZGlvX21hbmFnZXJfbGludXguY2MgYwogIAogIG5hbWVzcGFjZSBtZWRpYSB7CiAg Ci1AQCAtMjYsNyArMzEsOCBAQAotICAga1B1bHNlLAotICAga0Fsc2EsCi0gICBrQ3JhcywKLS0g IGtBdWRpb0lPTWF4ID0ga0NyYXMgIC8vIE11c3QgYWx3YXlzIGJlIGVxdWFsIHRvIGxhcmdlc3Qg bG9nZ2VkIGVudHJ5LgotKyAga1NuZGlvLAotKyAga0F1ZGlvSU9NYXggPSBrU25kaW8gLy8gTXVz dCBhbHdheXMgYmUgZXF1YWwgdG8gbGFyZ2VzdCBsb2dnZWQgZW50cnkuCi0gfTsKLSAKICBzdGQ6 OnVuaXF1ZV9wdHI8bWVkaWE6OkF1ZGlvTWFuYWdlcj4gQ3JlYXRlQXVkaW9NYW5hZ2VyKAogQEAg LTM5LDYgKzQ1LDE2IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGF1ZGlvX2xvZ19mYWN0b3J5KTsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY2hyb21pdW0v cGF0Y2hlcy91bmJ1bmRsZS1maXgtdmlzaWJpbGl0eS1vZi1idWlsZC1jb25maWctZnJlZXR5cGUu cGF0Y2ggYi9zcmNwa2dzL2Nocm9taXVtL3BhdGNoZXMvdW5idW5kbGUtZml4LXZpc2liaWxpdHkt b2YtYnVpbGQtY29uZmlnLWZyZWV0eXBlLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IDAwMDAwMDAwMDAwMC4uZDEwMDIzYmMwMjY3Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9j aHJvbWl1bS9wYXRjaGVzL3VuYnVuZGxlLWZpeC12aXNpYmlsaXR5LW9mLWJ1aWxkLWNvbmZpZy1m cmVldHlwZS5wYXRjaApAQCAtMCwwICsxLDMxIEBACitGcm9tIDI3MWU0NTMzOWI3Yjk2OWU5OGNj ZWY3ODM3Y2IxYjE1NDgwYjA3ZmMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBTdGVw aGFuIEhhcnRtYW5uIDxzdGhhMDlAZ29vZ2xlbWFpbC5jb20+CitEYXRlOiBUaHUsIDQgTm92IDIw MjEgMTg6NTg6MzQgKzAwMDAKK1N1YmplY3Q6IFtQQVRDSF0gdW5idW5kbGU6IGZpeCB2aXNpYmls aXR5IG9mIC8vYnVpbGQvY29uZmlnL2ZyZWV0eXBlCisKK0ZvciBzeXN0ZW0gZnJlZXR5cGUgLy9i dWlsZC9saW51eDpmcmVldHlwZV9mcm9tX3BrZ2NvbmZpZyBpcyByZXN0cmljdGVkCit0byAvL3Ro aXJkX3BhcnR5OmZyZWV0eXBlX2hhcmZidXp6IGFuZCAvL3RoaXJkX3BhcnR5L2hhcmZidXp6LW5n OmhhcmZidXp6X3NvdXJjZS4KK0hvd2V2ZXIgLy9idWlsZC9jb25maWcvZnJlZXR5cGU6ZnJlZXR5 cGUgaXMgYWNjZXNzaW5nIGl0IHRvby4KKworQnVnOiBOb25lCitDaGFuZ2UtSWQ6IEljNGEzN2Iw MWU0YWUyMjEzNzJhOTIyMGNiYWQwNGM1OThiODQ0YzIxCitSZXZpZXdlZC1vbjogaHR0cHM6Ly9j aHJvbWl1bS1yZXZpZXcuZ29vZ2xlc291cmNlLmNvbS9jL2Nocm9taXVtL3NyYy8rLzMyNTkzMDQK K0NvbW1pdC1RdWV1ZTogVGhvbWFzIEFuZGVyc29uIDx0aG9tYXNhbmRlcnNvbkBjaHJvbWl1bS5v cmc+CitSZXZpZXdlZC1ieTogVGhvbWFzIEFuZGVyc29uIDx0aG9tYXNhbmRlcnNvbkBjaHJvbWl1 bS5vcmc+CitDci1Db21taXQtUG9zaXRpb246IHJlZnMvaGVhZHMvbWFpbkB7IzkzODM4OH0KKy0t LQorIGJ1aWxkL2xpbnV4L0JVSUxELmduIHwgMSArCisgMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0 aW9uKCspCisKK2RpZmYgLS1naXQgYS9idWlsZC9saW51eC9CVUlMRC5nbiBiL2J1aWxkL2xpbnV4 L0JVSUxELmduCitpbmRleCA1NDMxNGM3Njg3Li5jZDQ5ZTNkNTI0IDEwMDY0NAorLS0tIGEvYnVp bGQvbGludXgvQlVJTEQuZ24KKysrKyBiL2J1aWxkL2xpbnV4L0JVSUxELmduCitAQCAtMjMsNiAr MjMsNyBAQCBpZiAodXNlX3N5c3RlbV9mcmVldHlwZSkgeworICAgIyB0aGUgc3lzdGVtLCB1c2Ug d2l0aCBjYXV0aW9uLGZvciBkZXRhaWxzIHNlZSBidWlsZC9jb25maWcvZnJlZXR5cGUvQlVJTEQu Z24uCisgICBwa2dfY29uZmlnKCJmcmVldHlwZV9mcm9tX3BrZ2NvbmZpZyIpIHsKKyAgICAgdmlz aWJpbGl0eSA9IFsKKysgICAgICAiLy9idWlsZC9jb25maWcvZnJlZXR5cGU6ZnJlZXR5cGUiLAor ICAgICAgICIvL3RoaXJkX3BhcnR5OmZyZWV0eXBlX2hhcmZidXp6IiwKKyAgICAgICAiLy90aGly ZF9wYXJ0eS9oYXJmYnV6ei1uZzpoYXJmYnV6el9zb3VyY2UiLAorICAgICBdCmRpZmYgLS1naXQg YS9zcmNwa2dzL2Nocm9taXVtL3BhdGNoZXMvdW5idW5kbGVkLWNyb3NzLXRvb2xjaGFpbi5wYXRj aCBiL3NyY3BrZ3MvY2hyb21pdW0vcGF0Y2hlcy91bmJ1bmRsZWQtY3Jvc3MtdG9vbGNoYWluLnBh dGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uYzNmMjI5NGFjNGIy Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9jaHJvbWl1bS9wYXRjaGVzL3VuYnVuZGxlZC1j cm9zcy10b29sY2hhaW4ucGF0Y2gKQEAgLTAsMCArMSwxMiBAQAorLS0tIGEvYnVpbGQvdG9vbGNo YWluL2xpbnV4L3VuYnVuZGxlL0JVSUxELmduLm9yaWcKKysrKyBiL2J1aWxkL3Rvb2xjaGFpbi9s aW51eC91bmJ1bmRsZS9CVUlMRC5nbgorQEAgLTM1LDcgKzM1LDcgQEAKKyAgIGV4dHJhX2xkZmxh Z3MgPSBnZXRlbnYoIkJVSUxEX0xERkxBR1MiKQorIAorICAgdG9vbGNoYWluX2FyZ3MgPSB7Cist ICAgIGN1cnJlbnRfY3B1ID0gY3VycmVudF9jcHUKKy0gICAgY3VycmVudF9vcyA9IGN1cnJlbnRf b3MKKysgICAgY3VycmVudF9jcHUgPSBob3N0X2NwdQorKyAgICBjdXJyZW50X29zID0gaG9zdF9v cworICAgfQorIH0KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY2hyb21pdW0vdGVtcGxhdGUgYi9zcmNw a2dzL2Nocm9taXVtL3RlbXBsYXRlCmluZGV4IGRmZTQyNzQ4OWY4Zi4uOTA2MTI1NzI3YWM1IDEw MDY0NAotLS0gYS9zcmNwa2dzL2Nocm9taXVtL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvY2hyb21p dW0vdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdjaHJvbWl1 bScKIHBrZ25hbWU9Y2hyb21pdW0KICMgU2VlIGh0dHBzOi8vY2hyb21pdW1kYXNoLmFwcHNwb3Qu Y29tL3JlbGVhc2VzP3BsYXRmb3JtPUxpbnV4IGZvciB0aGUgbGF0ZXN0IHZlcnNpb24KLXZlcnNp b249OTUuMC40NjM4LjU0Cit2ZXJzaW9uPTk2LjAuNDY2NC40NQogcmV2aXNpb249MQogYXJjaHM9 Imk2ODYqIHg4Nl82NCogYWFyY2g2NCogYXJtdjdsKiBwcGM2NGxlKiIKIHNob3J0X2Rlc2M9Ikdv b2dsZSdzIGF0dGVtcHQgYXQgY3JlYXRpbmcgYSBzYWZlciwgZmFzdGVyLCBhbmQgbW9yZSBzdGFi bGUgYnJvd3NlciIKQEAgLTksOCArOSw3IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0 b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJCU0QtMy1DbGF1c2UiCiBob21lcGFnZT0iaHR0 cHM6Ly93d3cuY2hyb21pdW0ub3JnLyIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9jb21tb25kYXRhc3Rv cmFnZS5nb29nbGVhcGlzLmNvbS9jaHJvbWl1bS1icm93c2VyLW9mZmljaWFsLyR7cGtnbmFtZX0t JHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0zZWVmODhkNzQ1ZTZkZGFlYWY1MDczNThmMTUx MDQ4MmQ2ZjM5OWNmMzM1MDYxYmIxMjI2YTVmNzEyMDA2MWZkCi1ub2Nyb3NzPXllcworY2hlY2tz dW09NDg4YzZhZDk4M2ViZjc3ODFjYjRkNzA0ZjcwNDk2ZThhYTIxNjU2MTFiNDY2NTZkN2FhNjJm MjY5Yzc2MDQwNwogCiBsaWIzMmRpc2FibGVkPXllcwogCkBAIC0yNCw4ICsyMyw4IEBAIGRlc2Nf b3B0aW9uX3B1bHNlYXVkaW89IkVuYWJsZSBzdXBwb3J0IGZvciBQdWxzZUF1ZGlvIgogZGVzY19v cHRpb25fc25kaW89IkVuYWJsZSBzdXBwb3J0IGZvciBzbmRpbyIKIGRlc2Nfb3B0aW9uX3BpcGV3 aXJlPSJFbmFibGUgc3VwcG9ydCBmb3Igc2NyZWVuIHNoYXJpbmcgZm9yIFdlYlJUQyB2aWEgUGlw ZVdpcmUiCiAKLWhvc3RtYWtlZGVwZW5kcz0iJCh2b3B0X2lmIGNsYW5nICJjbGFuZyBsbGQgbGx2 bTEyIikgcHl0aG9uIHBrZ2NvbmYgcGVybCBncGVyZiBiaXNvbiBuaW5qYSBub2RlanMgaHdpZHMK LSBsaWJhdG9taWMtZGV2ZWwgbGliZXZlbnQtZGV2ZWwgbGliZ2xpYi1kZXZlbCAkKHZvcHRfaWYg anNfb3B0aW1pemUgb3BlbmpkaykiCitob3N0bWFrZWRlcGVuZHM9IiQodm9wdF9pZiBjbGFuZyAi Y2xhbmcgbGxkIGxsdm0xMiIpIHB5dGhvbiBweXRob24zIHBrZ2NvbmYgcGVybCBncGVyZiBiaXNv biBuaW5qYSBub2RlanMgaHdpZHMKKyBsaWJhdG9taWMtZGV2ZWwgbGliZXZlbnQtZGV2ZWwgbGli Z2xpYi1kZXZlbCAkKHZvcHRfaWYganNfb3B0aW1pemUgb3Blbmpkaykgd2F5bGFuZC1kZXZlbCIK IG1ha2VkZXBlbmRzPSJsaWJwbmctZGV2ZWwgZ3RrKy1kZXZlbCBndGsrMy1kZXZlbCBuc3MtZGV2 ZWwgcGNpdXRpbHMtZGV2ZWwKICBsaWJYaS1kZXZlbCBsaWJnY3J5cHQtZGV2ZWwgbGliZ25vbWUt a2V5cmluZy1kZXZlbCBjdXBzLWRldmVsIGVsZnV0aWxzLWRldmVsCiAgbGliWGNvbXBvc2l0ZS1k ZXZlbCBzcGVlY2gtZGlzcGF0Y2hlci1kZXZlbCBsaWJYcmFuZHItZGV2ZWwgbWl0LWtyYjUtZGV2 ZWwKQEAgLTM0LDggKzMzLDkgQEAgbWFrZWRlcGVuZHM9ImxpYnBuZy1kZXZlbCBndGsrLWRldmVs IGd0ayszLWRldmVsIG5zcy1kZXZlbCBwY2l1dGlscy1kZXZlbAogIGxpYlhjdXJzb3ItZGV2ZWwg bGliZmxhYy1kZXZlbCBzcGVleC1kZXZlbCBsaWJtdHAtZGV2ZWwgbGlid2VicC1kZXZlbAogIGxp YmpwZWctdHVyYm8tZGV2ZWwgbGliZXZlbnQtZGV2ZWwganNvbi1jLWRldmVsIGhhcmZidXp6LWRl dmVsCiAgbWluaXppcC1kZXZlbCBqc29uY3BwLWRldmVsIHpsaWItZGV2ZWwgbGliY2FwLWRldmVs IGxpYlhkYW1hZ2UtZGV2ZWwKLSByZTItZGV2ZWwgZm9udGNvbmZpZy1kZXZlbCBmcmVldHlwZS1k ZXZlbCBvcHVzLWRldmVsCisgcmUyLWRldmVsIGZvbnRjb25maWctZGV2ZWwgZnJlZXR5cGUtZGV2 ZWwgb3B1cy1kZXZlbCBsaWJhdG9taWMtZGV2ZWwKICBmZm1wZWctZGV2ZWwgbGlidmEtZGV2ZWwg cHl0aG9uLXNldHVwdG9vbHMgeGNiLXByb3RvIGxpYmN1cmwtZGV2ZWwKKyBsaWJ4c2htZmVuY2Ut ZGV2ZWwKICAkKHZvcHRfaWYgcGlwZXdpcmUgcGlwZXdpcmUtZGV2ZWwpICQodm9wdF9pZiBzbmRp byBzbmRpby1kZXZlbCkiCiBkZXBlbmRzPSJsaWJleGlmIGh3aWRzIGRlc2t0b3AtZmlsZS11dGls cyBoaWNvbG9yLWljb24tdGhlbWUgeGRnLXV0aWxzIgogCkBAIC00Myw2ICs0MywyOSBAQCBjYXNl ICIkWEJQU19UQVJHRVRfTUFDSElORSIgaW4KIAlwcGM2NCotbXVzbCkgbWFrZWRlcGVuZHMrPSIg bGlidWNvbnRleHQtZGV2ZWwiIDs7CiBlc2FjCiAKK2lmIFsgIiRDUk9TU19CVUlMRCIgXTsgdGhl bgorCWhvc3RtYWtlZGVwZW5kcys9IiBsaWJYMTEtZGV2ZWwgbGlieGNiLWRldmVsIHBjaXV0aWxz LWRldmVsIGxpYlhleHQtZGV2ZWwgbGliZ2x2bmQtZGV2ZWwKKwkgbGlianBlZy10dXJiby1kZXZl bCBsaWJYaS1kZXZlbCBuc3MtZGV2ZWwgbGlicG5nLWRldmVsIGxpYndlYnAtZGV2ZWwgaGFyZmJ1 enotZGV2ZWwKKwkgbGlieG1sMi1kZXZlbCAkKHZvcHRfaWYgcHVsc2VhdWRpbyBwdWxzZWF1ZGlv LWRldmVsKSBsaWJ4c2x0LWRldmVsIGxpYnhrYmNvbW1vbi1kZXZlbAorCSAkKHZvcHRfaWYgcGlw ZXdpcmUgcGlwZXdpcmUtZGV2ZWwpIGZmbXBlZy1kZXZlbCBvcHVzLWRldmVsIHBhbmdvLWRldmVs IGxpYnZhLWRldmVsCisJIGxpYmN1cmwtZGV2ZWwgc25hcHB5LWRldmVsIHJlMi1kZXZlbCBsaWJY cmFuZHItZGV2ZWwgbGliWGNvbXBvc2l0ZS1kZXZlbCBjdXBzLWRldmVsCisJIG1pdC1rcmI1LWRl dmVsIGFsc2EtbGliLWRldmVsIgorZmkKKworaWYgWyAhICIkWEJQU19XT1JEU0laRSIgPSAiJFhC UFNfVEFSR0VUX1dPUkRTSVpFIiBdOyB0aGVuCisJYnJva2VuPSJjaHJvbWl1bSAodjgpIGNhbiBv bmx5IGJlIGNyb3NzIGNvbXBpbGVkIGlmIHdvcmQgc2l6ZSBtYXRjaGVzIgorZmkKKworaWYgWyAi JENST1NTX0JVSUxEIiBdOyB0aGVuCisJaWYgWyAteiAiJGJ1aWxkX29wdGlvbl9jbGFuZyIgXTsg dGhlbgorCQlub2Nyb3NzPSJjaHJvbWl1bSBjYW4gb25seSBiZSBjcm9zcyBjb21waWxlZCB3aXRo IGNsYW5nIgorCWZpCisJY2FzZSAiJHtYQlBTX1RBUkdFVF9NQUNISU5FfSIgaW4KKwkJYWFyY2g2 NCopIDs7CisJCSopIG5vY3Jvc3M9ImNocm9taXVtIGNhbiBub3QgYmUgY3Jvc3MgY29tcGlsZWQg Zm9yIHRoaXMgYXJjaGl0ZWN0dXJlIiA7OworCWVzYWMKK2ZpCisKIHBvc3RfcGF0Y2goKSB7CiAJ aWYgWyAiJFhCUFNfVEFSR0VUX0xJQkMiID0gIm11c2wiIF07IHRoZW4KIAkJZm9yIGYgaW4gIiR7 RklMRVNESVJ9Ii9tdXNsLXBhdGNoZXMvKi5wYXRjaDsgZG8KQEAgLTcxLDIwICs5NCw1OCBAQCBw b3N0X3BhdGNoKCkgewogCXZzZWQgLWkgJ3MvT0ZGSUNJQUxfQlVJTEQvR09PR0xFX0NIUk9NRV9C VUlMRC8nIFwKIAkJdG9vbHMvZ2VuZXJhdGVfc2hpbV9oZWFkZXJzL2dlbmVyYXRlX3NoaW1faGVh ZGVycy5weQogfQotZG9fY29uZmlndXJlKCkgewotCWxvY2FsIHN5c3RlbT0iIiBjb25mPSgpCi0J ZXhwb3J0IC1uIENGTEFHUyBDWFhGTEFHUyBMREZMQUdTCiAKK19zZXR1cF9jbGFuZygpIHsKKwls b2NhbCBnY2NfdmVyc2lvbj0kKGdjYyAtZHVtcHZlcnNpb24pCisJbG9jYWwgY2xhbmdfdmVyc2lv bj0kKGNsYW5nIC1kdW1wdmVyc2lvbikKKwlleHBvcnQgQ0M9Y2xhbmcKKwlleHBvcnQgQ1hYPWNs YW5nKysKKwlleHBvcnQgQVI9bGx2bS1hcgorCWV4cG9ydCBOTT1sbHZtLW5tCisJZXhwb3J0IENG TEFHUz0iLVduby11bmtub3duLXdhcm5pbmctb3B0aW9uIgorCWV4cG9ydCBDWFhGTEFHUz0iLVdu by11bmtub3duLXdhcm5pbmctb3B0aW9uIgorCWV4cG9ydCBMREZMQUdTPSIiCisJZXhwb3J0IEJV SUxEX0NDPWNsYW5nCisJZXhwb3J0IEJVSUxEX0NYWD1jbGFuZysrCisJZXhwb3J0IEJVSUxEX0FS PWxsdm0tYXIKKwlleHBvcnQgQlVJTERfTk09bGx2bS1ubQorCWV4cG9ydCBCVUlMRF9DRkxBR1M9 Ii1Xbm8tdW5rbm93bi13YXJuaW5nLW9wdGlvbiIKKwlleHBvcnQgQlVJTERfQ1hYRkxBR1M9Ii1X bm8tdW5rbm93bi13YXJuaW5nLW9wdGlvbiIKKwlpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4K KwkJQ0ZMQUdTKz0iCisJCSAtLWdjYy10b29sY2hhaW49L3VzcgorCQkgLS1zeXNyb290PSR7WEJQ U19DUk9TU19CQVNFfQorCQkgLW5vc3RkaW5jCisJCSAtaXN5c3RlbSAke1hCUFNfQ1JPU1NfQkFT RX0vdXNyL2luY2x1ZGUKKwkJIC1pc3lzdGVtIC91c3IvbGliL2NsYW5nLyR7Y2xhbmdfdmVyc2lv bn0vaW5jbHVkZSIKKwkJQ1hYRkxBR1MrPSIKKwkJIC0tZ2NjLXRvb2xjaGFpbj0vdXNyCisJCSAt LXN5c3Jvb3Q9JHtYQlBTX0NST1NTX0JBU0V9CisJCSAtbm9zdGRpbmMrKworCQkgLWlzeXN0ZW0g JHtYQlBTX0NST1NTX0JBU0V9L3Vzci9pbmNsdWRlL2MrKy8ke2djY192ZXJzaW9uJS4qfQorCQkg LWlzeXN0ZW0gJHtYQlBTX0NST1NTX0JBU0V9L3Vzci9pbmNsdWRlL2MrKy8ke2djY192ZXJzaW9u JS4qfS8ke1hCUFNfQ1JPU1NfVFJJUExFVH0KKwkJIC1pc3lzdGVtICR7WEJQU19DUk9TU19CQVNF fS91c3IvaW5jbHVkZS9jKysvJHtnY2NfdmVyc2lvbiUuKn0vYmFja3dhcmQKKwkJIC1ub3N0ZGlu YworCQkgLWlzeXN0ZW0gJHtYQlBTX0NST1NTX0JBU0V9L3Vzci9pbmNsdWRlCisJCSAtaXN5c3Rl bSAvdXNyL2xpYi9jbGFuZy8ke2NsYW5nX3ZlcnNpb259L2luY2x1ZGUiCisJCUxERkxBR1MrPSIg LS1nY2MtdG9vbGNoYWluPS91c3IgLS1zeXNyb290PSR7WEJQU19DUk9TU19CQVNFfSIKKwlmaQor fQorCitfc2V0dXBfdG9vbGNoYWluKCkgewogCWlmIFsgIiRidWlsZF9vcHRpb25fY2xhbmciIF07 IHRoZW4KLQkJZXhwb3J0IENDPWNsYW5nCi0JCWV4cG9ydCBDWFg9Y2xhbmcrKworCQlfc2V0dXBf Y2xhbmcKIAlmaQorCUNYWEZMQUdTKz0iIC1mZGVidWctcHJlZml4LW1hcD0kd3Jrc3JjPS4iCisJ Q0ZMQUdTKz0iIC1mZGVidWctcHJlZml4LW1hcD0kd3Jrc3JjPS4iCit9CiAKLQlleHBvcnQgTERG TEFHUz0iLXB0aHJlYWQiCitkb19jb25maWd1cmUoKSB7CisJbG9jYWwgc3lzdGVtPSIiIGNvbmY9 KCkKIAogCSMgY29tcGlsZSBnbiBlYXJseSwgc28gaXQgY2FuIGJlIHVzZWQgdG8gZ2VuZXJhdGUg Z25pIHN0dWZmCiAJQVI9ImFyIiBDQz0kQ0NfRk9SX0JVSUxEIENYWD0kQ1hYX0ZPUl9CVUlMRCBM RD0kQ1hYX0ZPUl9CVUlMRCBcCi0JdG9vbHMvZ24vYm9vdHN0cmFwL2Jvb3RzdHJhcC5weSAtLXNr aXAtZ2VuZXJhdGUtYnVpbGRmaWxlcworCQl0b29scy9nbi9ib290c3RyYXAvYm9vdHN0cmFwLnB5 IC0tc2tpcC1nZW5lcmF0ZS1idWlsZGZpbGVzCiAKIAkjIHdlIG5lZWQgdG8gZ2VuZXJhdGUgcHBj NjQgc3R1ZmYgZm9yIGxpYnZweCBhcyBpdCdzIG5vdCBzaGlwcGVkCiAJIyB0aGlzIGhhcyB0byBi ZSBkb25lIGJlZm9yZSB1bmJ1bmRsaW5nLCBidXQgYWZ0ZXIgZ24gaXMgYnVpbHQKQEAgLTE1NCw4 ICsyMTUsOCBAQCBkb19jb25maWd1cmUoKSB7CiAJCSdlbmFibGVfbmFjbF9ub25zZmk9ZmFsc2Un CiAKIAkJJ3VzZV9zeXNyb290PWZhbHNlJwotCQknY3VzdG9tX3Rvb2xjaGFpbj0iLy9idWlsZC90 b29sY2hhaW4vbGludXgvdW5idW5kbGU6ZGVmYXVsdCInCi0JCSdob3N0X3Rvb2xjaGFpbj0iLy9i dWlsZC90b29sY2hhaW4vbGludXgvdW5idW5kbGU6ZGVmYXVsdCInCisKKwkJJ2hvc3RfcGtnX2Nv bmZpZz0iL3Vzci9iaW4vcGtnLWNvbmZpZyInCiAKIAkJImlzX2NsYW5nPSQodm9wdF9pZiBjbGFu ZyB0cnVlIGZhbHNlKSIKIAkJInVzZV9sbGQ9JCh2b3B0X2lmIGNsYW5nIHRydWUgZmFsc2UpIgpA QCAtMTgxLDYgKzI0Miw3IEBAIGRvX2NvbmZpZ3VyZSgpIHsKIAkJJ2VuYWJsZV9oYW5nb3V0X3Nl cnZpY2VzX2V4dGVuc2lvbj10cnVlJwogCiAJCSd1c2Vfc3lzdGVtX2hhcmZidXp6PXRydWUnCisJ CSd1c2Vfc3lzdGVtX3dheWxhbmRfc2Nhbm5lcj10cnVlJwogCiAJCSd1c2VfY3Vwcz10cnVlJwog CkBAIC0yMjAsMTEgKzI4MiwyOCBAQCBkb19jb25maWd1cmUoKSB7CiAJCSdjaHJvbWVfcGdvX3Bo YXNlPTAnCiAJKQogCisJaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCisJCWNvbmYrPSgKKwkJ CSdjdXN0b21fdG9vbGNoYWluPSIvL2J1aWxkL3Rvb2xjaGFpbi9saW51eC91bmJ1bmRsZTpkZWZh dWx0IicKKwkJCSdob3N0X3Rvb2xjaGFpbj0iLy9idWlsZC90b29sY2hhaW4vbGludXgvdW5idW5k bGU6aG9zdCInCisJCQkndjhfc25hcHNob3RfdG9vbGNoYWluPSIvL2J1aWxkL3Rvb2xjaGFpbi9s aW51eC91bmJ1bmRsZTp2OF9zbmFwc2hvdF9jcm9zcyInCisJCSkKKwllbHNlCisJCWNvbmYrPSgK KwkJCSdjdXN0b21fdG9vbGNoYWluPSIvL2J1aWxkL3Rvb2xjaGFpbi9saW51eC91bmJ1bmRsZTpk ZWZhdWx0IicKKwkJCSdob3N0X3Rvb2xjaGFpbj0iLy9idWlsZC90b29sY2hhaW4vbGludXgvdW5i dW5kbGU6ZGVmYXVsdCInCisJCSkKKwlmaQorCiAJIyB0aGlzIGRvZXMgbm90IHdvcmsgb24gcHBj NjQgeWV0CiAJY2FzZSAiJFhCUFNfVEFSR0VUX01BQ0hJTkUiIGluCiAJCXBwYzY0KikgY29uZis9 KCAiZW5hYmxlX2p4bF9kZWNvZGVyPWZhbHNlIiApOzsKIAllc2FjCiAKKwlpZiBbICIkWEJQU19U QVJHRVRfTElCQyIgPSAibXVzbCIgXTsgdGhlbgorCQljb25mKz0oICdpc19tdXNsPXRydWUnICkK KwlmaQorCiAJY2FzZSAiJHtYQlBTX1RBUkdFVF9NQUNISU5FfSIgaW4KIAkJeDg2XzY0KikgY29u Zis9KCAndGFyZ2V0X2NwdT0ieDY0IicgKSA7OwogCQlpNjg2KikgY29uZis9KCAndGFyZ2V0X2Nw dT0ieDg2IicgKSA7OwpAQCAtMjMzLDI5ICszMTIsMjQgQEAgZG9fY29uZmlndXJlKCkgewogCQlw cGM2NCopIGNvbmYrPSggJ3RhcmdldF9jcHU9InBwYzY0IicgKSA7OwogCWVzYWMKIAotCWlmIFsg IiRidWlsZF9vcHRpb25fY2xhbmciIF07IHRoZW4KLQkJZXhwb3J0IENDPWNsYW5nCi0JCWV4cG9y dCBDWFg9Y2xhbmcrKwotCQlleHBvcnQgQVI9bGx2bS1hcgotCQlleHBvcnQgTk09bGx2bS1ubQot CQlleHBvcnQgQ0ZMQUdTPSItV25vLXVua25vd24td2FybmluZy1vcHRpb24iCi0JCWV4cG9ydCBD WFhGTEFHUz0iLVduby11bmtub3duLXdhcm5pbmctb3B0aW9uIgorCWlmIFsgIiRDUk9TU19CVUlM RCIgXTsgdGhlbgorCQljYXNlICIke1hCUFNfTUFDSElORX0iIGluCisJCQl4ODZfNjQqKSBjb25m Kz0oICdob3N0X2NwdT0ieDY0IicgKSA7OworCQkJaTY4NiopIGNvbmYrPSggJ2hvc3RfY3B1PSJ4 ODYiJyApIDs7CisJCQlhcm0qKSBjb25mKz0oICdob3N0X2NwdT0iYXJtIicgKSA7OworCQkJYWFy Y2g2NCopIGNvbmYrPSggJ2hvc3RfY3B1PSJhcm02NCInICkgOzsKKwkJCXBwYzY0KikgY29uZis9 KCAnaG9zdF9jcHU9InBwYzY0IicgKSA7OworCQllc2FjCiAJZmkKLQorCV9zZXR1cF90b29sY2hh aW4KIAlvdXQvUmVsZWFzZS9nbiBnZW4gb3V0L1JlbGVhc2UgLS1hcmdzPSIke2NvbmZbKl19Igog fQotZG9fYnVpbGQoKSB7Ci0JaWYgWyAiJGJ1aWxkX29wdGlvbl9jbGFuZyIgXTsgdGhlbgotCQll eHBvcnQgQ0M9Y2xhbmcKLQkJZXhwb3J0IENYWD1jbGFuZysrCi0JCWV4cG9ydCBBUj1sbHZtLWFy Ci0JCWV4cG9ydCBOTT1sbHZtLW5tCi0JCWV4cG9ydCBDRkxBR1M9Ii1Xbm8tdW5rbm93bi13YXJu aW5nLW9wdGlvbiIKLQkJZXhwb3J0IENYWEZMQUdTPSItV25vLXVua25vd24td2FybmluZy1vcHRp b24iCi0JZmkKIAorZG9fYnVpbGQoKSB7CisJX3NldHVwX3Rvb2xjaGFpbgogCW5pbmphIC1DIG91 dC9SZWxlYXNlICR7bWFrZWpvYnN9IGNocm9tZSBjaHJvbWVkcml2ZXIgbWtzbmFwc2hvdCBjaHJv bWVfY3Jhc2hwYWRfaGFuZGxlcgogfQorCiBkb19pbnN0YWxsKCkgewogCXZpbnN0YWxsIG91dC9S ZWxlYXNlL2Nocm9tZSA3NTUgdXNyL2xpYi8ke3BrZ25hbWV9ICR7cGtnbmFtZX0KIAl2aW5zdGFs bCBvdXQvUmVsZWFzZS9jaHJvbWVfY3Jhc2hwYWRfaGFuZGxlciA3NTUgdXNyL2xpYi8ke3BrZ25h bWV9IGNocm9tZV9jcmFzaHBhZF9oYW5kbGVyCg== --===============0371231664671341540==--