From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from inbox.vuxu.org (inbox.vuxu.org [IPv6:::1]) by inbox.vuxu.org (Postfix) with ESMTP id A3A4325E4C for ; Sun, 23 Jun 2024 13:35:12 +0200 (CEST) Content-Type: multipart/mixed; boundary="===============5473887148256119777==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_Qt6_6=2E7=2E2?= To: ml@inbox.vuxu.org From: sgn Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Sun, 23 Jun 2024 13:35:12 +0200 List-Id: Message-Id: <20240623113512.A3A4325E4C@inbox.vuxu.org> GitHub notification mails are now in MIME to allow UTF8. --===============5473887148256119777== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgc2duIGFnYWluc3QgbWFzdGVyIG9u IHRoZSB2b2lkLXBhY2thZ2VzIHJlcG9zaXRvcnkKCmh0dHBzOi8vZ2l0aHViLmNvbS9zZ24vdm9p ZC1wYWNrYWdlcyBxdDYtNi43LjIKaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1w YWNrYWdlcy9wdWxsLzUwOTQyCgpRdDYgNi43LjIKPCEtLSBVbmNvbW1lbnQgcmVsZXZhbnQgc2Vj dGlvbnMgYW5kIGRlbGV0ZSBvcHRpb25zIHdoaWNoIGFyZSBub3QgYXBwbGljYWJsZSAtLT4NCltj aSBza2lwXVtza2lwIGNpXQ0KIyMjIyBUZXN0aW5nIHRoZSBjaGFuZ2VzDQotIEkgdGVzdGVkIHRo ZSBjaGFuZ2VzIGluIHRoaXMgUFI6ICoqWUVTKip8KipicmllZmx5Kip8KipOTyoqDQoNCjwhLS0N CiMjIyMgTmV3IHBhY2thZ2UNCi0gVGhpcyBuZXcgcGFja2FnZSBjb25mb3JtcyB0byB0aGUgW3Bh Y2thZ2UgcmVxdWlyZW1lbnRzXShodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBh Y2thZ2VzL2Jsb2IvbWFzdGVyL0NPTlRSSUJVVElORy5tZCNwYWNrYWdlLXJlcXVpcmVtZW50cyk6 ICoqWUVTKip8KipOTyoqDQotLT4NCg0KPCEtLSBOb3RlOiBJZiB0aGUgYnVpbGQgaXMgbGlrZWx5 IHRvIHRha2UgbW9yZSB0aGFuIDIgaG91cnMsIHBsZWFzZSBhZGQgY2kgc2tpcCB0YWcgYXMgZGVz Y3JpYmVkIGluDQpodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBhY2thZ2VzL2Js b2IvbWFzdGVyL0NPTlRSSUJVVElORy5tZCNjb250aW51b3VzLWludGVncmF0aW9uDQphbmQgdGVz dCBhdCBsZWFzdCBvbmUgbmF0aXZlIGJ1aWxkIGFuZCwgaWYgc3VwcG9ydGVkLCBhdCBsZWFzdCBv bmUgY3Jvc3MgYnVpbGQuDQpJZ25vcmUgdGhpcyBzZWN0aW9uIGlmIHRoaXMgUFIgaXMgbm90IHNr aXBwaW5nIENJLg0KLS0+DQo8IS0tDQojIyMjIExvY2FsIGJ1aWxkIHRlc3RpbmcNCi0gSSBidWls dCB0aGlzIFBSIGxvY2FsbHkgZm9yIG15IG5hdGl2ZSBhcmNoaXRlY3R1cmUsIChBUkNILUxJQkMp DQotIEkgYnVpbHQgdGhpcyBQUiBsb2NhbGx5IGZvciB0aGVzZSBhcmNoaXRlY3R1cmVzIChpZiBz dXBwb3J0ZWQuIG1hcmsgY3Jvc3NidWlsZHMpOg0KICAtIGFhcmNoNjQtbXVzbA0KICAtIGFybXY3 bA0KICAtIGFybXY2bC1tdXNsDQotLT4NCgoKQSBwYXRjaCBmaWxlIGZyb20gaHR0cHM6Ly9naXRo dWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9wdWxsLzUwOTQyLnBhdGNoIGlzIGF0dGFj aGVk --===============5473887148256119777== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-qt6-6.7.2-50942.patch" RnJvbSAzODMwN2ZiNWVkNjc2MTU0ODNjNTRjM2RjMTQwYTI5YTBhMjY5N2Y3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0PTkwbz1DMz1BMG49MjBUcj1FMT1CQT1B N249MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTogU3Vu LCAyMyBKdW4gMjAyNCAxMDo0NDoyOCArMDcwMApTdWJqZWN0OiBbUEFUQ0ggMDEvNDRdIHF0Ni1i YXNlOiB1cGRhdGUgdG8gNi43LjIuCgotLS0KIHNyY3BrZ3MvcXQ2LWJhc2UtcHJpdmF0ZS1kZXZl bCAgICAgICAgICAgICAgICB8ICAxICsKIC4uLi9xdDYtYmFzZS9wYXRjaGVzL2xpYnhrYmNvbW1v bjEuNi4wLnBhdGNoICB8IDM5IC0tLS0tLS0tLS0tLS0tLS0tLS0KIHNyY3BrZ3MvcXQ2LWJhc2Uv cGF0Y2hlcy9tYXJrZG93bi5wYXRjaCAgICAgICB8ICA2ICstLQogc3JjcGtncy9xdDYtYmFzZS9w YXRjaGVzL211c2wtbGltaXRzLnBhdGNoICAgIHwgMjAgLS0tLS0tLS0tLQogLi4uL3F0Ni1iYXNl L3BhdGNoZXMvbXVzbC10ZXN0LWltYWdlLnBhdGNoICAgIHwgIDggKystLQogLi4uL3F0Ni1iYXNl L3BhdGNoZXMvbXVzbC11c3ItcGF0aC1oYWNrLnBhdGNoIHwgIDYgKy0tCiAuLi51cmNlLXJvb3Qt ZGlyLWxhc3QtbW9kaWZpZWQtaXMtdmFsaWQucGF0Y2ggfCAgNiArLS0KIC4uLi9xdDYtYmFzZS9w YXRjaGVzL3g4Ni1xcm91bmQtcGFzc2VkLnBhdGNoICB8ICA4ICsrLS0KIHNyY3BrZ3MvcXQ2LWJh c2UvcGF0Y2hlcy96ZnMtc3RvcmFnZS5wYXRjaCAgICB8IDE3ICsrKystLS0tCiBzcmNwa2dzL3F0 Ni1iYXNlL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAgfCAzNyArKysrKysrKysrKysrKysr LS0KIDEwIGZpbGVzIGNoYW5nZWQsIDU5IGluc2VydGlvbnMoKyksIDg5IGRlbGV0aW9ucygtKQog Y3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvcXQ2LWJhc2UtcHJpdmF0ZS1kZXZlbAogZGVsZXRl IG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcXQ2LWJhc2UvcGF0Y2hlcy9saWJ4a2Jjb21tb24xLjYuMC5w YXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcXQ2LWJhc2UvcGF0Y2hlcy9tdXNsLWxp bWl0cy5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LWJhc2UtcHJpdmF0ZS1kZXZlbCBi L3NyY3BrZ3MvcXQ2LWJhc2UtcHJpdmF0ZS1kZXZlbApuZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRl eCAwMDAwMDAwMDAwMDAwMC4uOGRkZWU1OThkNWVkYzQKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNw a2dzL3F0Ni1iYXNlLXByaXZhdGUtZGV2ZWwKQEAgLTAsMCArMSBAQAorcXQ2LWJhc2UKXCBObyBu ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1iYXNlL3BhdGNo ZXMvbGlieGtiY29tbW9uMS42LjAucGF0Y2ggYi9zcmNwa2dzL3F0Ni1iYXNlL3BhdGNoZXMvbGli eGtiY29tbW9uMS42LjAucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDdjMWIw ZThlOTg1MWU1Li4wMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3F0Ni1iYXNlL3BhdGNoZXMv bGlieGtiY29tbW9uMS42LjAucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwzOSArMCwwIEBACi1G cm9tIDhhZjM1ZDI3ZThmMDJiYmI5OWFlZjRhYzQ5NWVkNDA2ZTUwZTNjY2EgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCi1Gcm9tOiBMaWFuZyBRaSA8bGlhbmcucWlAcXQuaW8+Ci1EYXRlOiBUdWUs IDEwIE9jdCAyMDIzIDE0OjA4OjQ4ICswMjAwCi1TdWJqZWN0OiBbUEFUQ0hdIHhrYjogZml4IGJ1 aWxkIHdpdGggbGlieGtiY29tbW9uIDEuNi4wIGFuZCBsYXRlcgotTUlNRS1WZXJzaW9uOiAxLjAK LUNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOAotQ29udGVudC1UcmFuc2Zl ci1FbmNvZGluZzogOGJpdAotCi1BIGZldyBYS0JfS0VZX2RlYWRfKiBkZWZpbmVzIGdvdCByZW1v dmVkIGZyb20gMS42LjAuIFNlZSBhbHNvCi1odHRwczovL2dpdGh1Yi5jb20veGtiY29tbW9uL2xp YnhrYmNvbW1vbi9ibG9iLzYwNzM1NjU5MDM0ODhjYjViOWE4ZDM3ZmRjNGE3YzJmOWQ3YWQwNGQv TkVXUyNMOS1MMTQKLWh0dHBzOi8vZ2l0bGFiLmZyZWVkZXNrdG9wLm9yZy94b3JnL3Byb3RvL3hv cmdwcm90by8tL21lcmdlX3JlcXVlc3RzLzcwL2RpZmZzP2NvbW1pdF9pZD1jYjQ0Nzk5YjcyZjYx MWViNGM5ZDdjYzE4NWJjM2IwOWUwNzBiZTA4Ci0KLVBpY2stdG86IDYuNiA2LjUgNi4yIDUuMTUK LUZpeGVzOiBRVEJVRy0xMTc5NTAKLUNoYW5nZS1JZDogSTU1ODYxODY4ZjJiYjI5YzU1M2Q2ODM2 NWZhOWI5YjZlZDAxYzlhZWEKLVJldmlld2VkLWJ5OiBUb3IgQXJuZSBWZXN0YsO4IDx0b3IuYXJu ZS52ZXN0Ym9AcXQuaW8+Ci0tLS0KLSBzcmMvZ3VpL3BsYXRmb3JtL3VuaXgvcXhrYmNvbW1vbi5j cHAgfCA0ICsrKysKLSAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspCi0KLWRpZmYgLS1n aXQgYS9zcmMvZ3VpL3BsYXRmb3JtL3VuaXgvcXhrYmNvbW1vbi5jcHAgYi9zcmMvZ3VpL3BsYXRm b3JtL3VuaXgvcXhrYmNvbW1vbi5jcHAKLWluZGV4IDI2ZDg3YzVmZjU5Li43YjYxMTc5MGM2NyAx MDA2NDQKLS0tLSBhL3NyYy9ndWkvcGxhdGZvcm0vdW5peC9xeGtiY29tbW9uLmNwcAotKysrIGIv c3JjL2d1aS9wbGF0Zm9ybS91bml4L3F4a2Jjb21tb24uY3BwCi1AQCAtMjM3LDEwICsyMzcsMTQg QEAgc3RhdGljIGNvbnN0ZXhwciBjb25zdCBhdXRvIEtleVRibCA9IHFNYWtlQXJyYXkoCi0gICAg ICAgICBYa2IyUXQ8WEtCX0tFWV9kZWFkX3NtYWxsX3NjaHdhLCAgICAgICAgUXQ6OktleV9EZWFk X1NtYWxsX1NjaHdhPiwKLSAgICAgICAgIFhrYjJRdDxYS0JfS0VZX2RlYWRfY2FwaXRhbF9zY2h3 YSwgICAgICBRdDo6S2V5X0RlYWRfQ2FwaXRhbF9TY2h3YT4sCi0gICAgICAgICBYa2IyUXQ8WEtC X0tFWV9kZWFkX2dyZWVrLCAgICAgICAgICAgICAgUXQ6OktleV9EZWFkX0dyZWVrPiwKLSsvKiBU aGUgZm9sbG93aW5nIGZvdXIgWEtCX0tFWV9kZWFkIGtleXMgZ290IHJlbW92ZWQgaW4gbGlieGti Y29tbW9uIDEuNi4wCi0rICAgVGhlIGRlZmluZSBjaGVjayBpcyBraW5kIG9mIHZlcnNpb24gY2hl Y2sgaGVyZS4gKi8KLSsjaWZkZWYgWEtCX0tFWV9kZWFkX2xvd2xpbmUKLSAgICAgICAgIFhrYjJR dDxYS0JfS0VZX2RlYWRfbG93bGluZSwgICAgICAgICAgICBRdDo6S2V5X0RlYWRfTG93bGluZT4s Ci0gICAgICAgICBYa2IyUXQ8WEtCX0tFWV9kZWFkX2Fib3ZldmVydGljYWxsaW5lLCAgUXQ6Oktl eV9EZWFkX0Fib3ZldmVydGljYWxsaW5lPiwKLSAgICAgICAgIFhrYjJRdDxYS0JfS0VZX2RlYWRf YmVsb3d2ZXJ0aWNhbGxpbmUsICBRdDo6S2V5X0RlYWRfQmVsb3d2ZXJ0aWNhbGxpbmU+LAotICAg ICAgICAgWGtiMlF0PFhLQl9LRVlfZGVhZF9sb25nc29saWR1c292ZXJsYXksIFF0OjpLZXlfRGVh ZF9Mb25nc29saWR1c292ZXJsYXk+LAotKyNlbmRpZgotIAotICAgICAgICAgLy8gU3BlY2lhbCBr ZXlzIGZyb20gWC5vcmcgLSBUaGlzIGluY2x1ZGUgbXVsdGltZWRpYSBrZXlzLAotICAgICAgICAg Ly8gd2lyZWxlc3MvYmx1ZXRvb3RoL3V3YiBrZXlzLCBzcGVjaWFsIGxhdW5jaGVyIGtleXMsIGV0 Yy4KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LWJhc2UvcGF0Y2hlcy9tYXJrZG93bi5wYXRjaCBi L3NyY3BrZ3MvcXQ2LWJhc2UvcGF0Y2hlcy9tYXJrZG93bi5wYXRjaAppbmRleCAyNDlkZDhiZjlk MzUxNy4uODgzMjU2ZTE1N2MwMGYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcXQ2LWJhc2UvcGF0Y2hl cy9tYXJrZG93bi5wYXRjaAorKysgYi9zcmNwa2dzL3F0Ni1iYXNlL3BhdGNoZXMvbWFya2Rvd24u cGF0Y2gKQEAgLTEsNiArMSw2IEBACi0tLS0gcXQ2LWJhc2UtNi42LjAvdGVzdHMvYXV0by9ndWkv dGV4dC9xdGV4dG1hcmtkb3duaW1wb3J0ZXIvdHN0X3F0ZXh0bWFya2Rvd25pbXBvcnRlci5jcHAJ MjAyMy0wOS0xMyAxODowMjo0OC4wMDAwMDAwMDAgKzAyMDAKLSsrKyAtCTIwMjMtMTAtMTMgMjA6 MDE6MDcuNTY4ODk5NTU0ICswMjAwCi1AQCAtMjIzLDEwICsyMjMsMTIgQEAKKy0tLSBhL3Rlc3Rz L2F1dG8vZ3VpL3RleHQvcXRleHRtYXJrZG93bmltcG9ydGVyL3RzdF9xdGV4dG1hcmtkb3duaW1w b3J0ZXIuY3BwCisrKysgYi90ZXN0cy9hdXRvL2d1aS90ZXh0L3F0ZXh0bWFya2Rvd25pbXBvcnRl ci90c3RfcXRleHRtYXJrZG93bmltcG9ydGVyLmNwcAorQEAgLTIyNSwxMCArMjI1LDEyIEBAIHZv aWQgdHN0X1FUZXh0TWFya2Rvd25JbXBvcnRlcjo6bGlzdHNfZGEKICAgICAgUVRlc3Q6Om5ld1Jv dygibnVtZXJpYyBsaXN0cyBuZXN0ZWQgaW4gZW1wdHkgbGlzdHMiKQogICAgICAgICAgICAgIDw8 ICItIFxuICAgIDEuICBhXG4gICAgMi4gIGJcbi0gY1xuICAxLlxuICAgICAgICsgZFxuIiA8PCAw IDw8IDEgPDwgNCA8PCBmYWxzZQogICAgICAgICAgICAgIDw8ICItIFxuICAgIDEuICBhXG4gICAg Mi4gIGJcbi0gYyAxLiArIGRcbiI7CmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1iYXNlL3BhdGNo ZXMvbXVzbC1saW1pdHMucGF0Y2ggYi9zcmNwa2dzL3F0Ni1iYXNlL3BhdGNoZXMvbXVzbC1saW1p dHMucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGRhNmQyNzJkOTlkZWIzLi4w MDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3F0Ni1iYXNlL3BhdGNoZXMvbXVzbC1saW1pdHMu cGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwyMCArMCwwIEBACi0tLS0gcXQ2LWJhc2UtNi40LjIu b3JpZy9xbWFrZS9saWJyYXJ5L2lvdXRpbHMuY3BwCi0rKysgcXQ2LWJhc2UtNi40LjIvcW1ha2Uv bGlicmFyeS9pb3V0aWxzLmNwcAotQEAgLTE1LDYgKzE1LDcgQEAKLSAjICBpbmNsdWRlIDx1bmlz dGQuaD4KLSAjICBpbmNsdWRlIDx1dGltZS5oPgotICMgIGluY2x1ZGUgPGZjbnRsLmg+Ci0rIyAg aW5jbHVkZSA8bGltaXRzLmg+Ci0gIyAgaW5jbHVkZSA8ZXJybm8uaD4KLSAjZW5kaWYKLSAKLS0t LSBxdDYtYmFzZS02LjQuMi5vcmlnL3NyYy9jb3JlbGliL2lvL3FzdG9yYWdlaW5mb191bml4LmNw cAotKysrIHF0Ni1iYXNlLTYuNC4yL3NyYy9jb3JlbGliL2lvL3FzdG9yYWdlaW5mb191bml4LmNw cAotQEAgLTIzLDYgKzIzLDcgQEAKLSAjICBpbmNsdWRlIDxzeXMvdmZzLmg+Ci0gIyAgaW5jbHVk ZSA8bW50ZW50Lmg+Ci0gI2VsaWYgZGVmaW5lZChRX09TX0xJTlVYKSB8fCBkZWZpbmVkKFFfT1Nf SFVSRCkKLSsjICBpbmNsdWRlIDxsaW1pdHMuaD4KLSAjICBpbmNsdWRlIDxtbnRlbnQuaD4KLSAj ICBpbmNsdWRlIDxzeXMvc3RhdHZmcy5oPgotICMgIGluY2x1ZGUgPHN5cy9zeXNtYWNyb3MuaD4K ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LWJhc2UvcGF0Y2hlcy9tdXNsLXRlc3QtaW1hZ2UucGF0 Y2ggYi9zcmNwa2dzL3F0Ni1iYXNlL3BhdGNoZXMvbXVzbC10ZXN0LWltYWdlLnBhdGNoCmluZGV4 IGI5NjZhMjJjMTJhNzZkLi43M2ZlYzg2ODllNDQ1MSAxMDA2NDQKLS0tIGEvc3JjcGtncy9xdDYt YmFzZS9wYXRjaGVzL211c2wtdGVzdC1pbWFnZS5wYXRjaAorKysgYi9zcmNwa2dzL3F0Ni1iYXNl L3BhdGNoZXMvbXVzbC10ZXN0LWltYWdlLnBhdGNoCkBAIC0xLDYgKzEsNiBAQAotLS0tIHF0Ni1i YXNlLTYuNC4yLm9yaWcvdGVzdHMvYXV0by9ndWkvaW1hZ2UvcWltYWdlL3RzdF9xaW1hZ2UuY3Bw Ci0rKysgcXQ2LWJhc2UtNi40LjIvdGVzdHMvYXV0by9ndWkvaW1hZ2UvcWltYWdlL3RzdF9xaW1h Z2UuY3BwCi1AQCAtMTgwNiw2ICsxODA2LDggQEAgdm9pZCB0c3RfUUltYWdlOjpzbW9vdGhTY2Fs ZTIoKQorLS0tIGEvdGVzdHMvYXV0by9ndWkvaW1hZ2UvcWltYWdlL3RzdF9xaW1hZ2UuY3BwCisr KysgYi90ZXN0cy9hdXRvL2d1aS9pbWFnZS9xaW1hZ2UvdHN0X3FpbWFnZS5jcHAKK0BAIC0xODI3 LDYgKzE4MjcsOCBAQCB2b2lkIHRzdF9RSW1hZ2U6OnNtb290aFNjYWxlMigpCiAgICAgIFFSZ2Ig ZXhwZWN0ZWQgPSBvcGFxdWUgPyBxUmdiKDYzLCAxMjcsIDI1NSkgOiBxUmdiYSgzMSwgNjMsIDEy NywgMTI3KTsKICAgICAgaW1nLmZpbGwoZXhwZWN0ZWQpOwogIApAQCAtOSw3ICs5LDcgQEAKICAg ICAgLy8gc2NhbGUgeCBkb3duLCB5IGRvd24KICAgICAgUUltYWdlIHNjYWxlZCA9IGltZy5zY2Fs ZWQoUVNpemUoMSwgMSksIFF0OjpJZ25vcmVBc3BlY3RSYXRpbywgUXQ6OlNtb290aFRyYW5zZm9y bWF0aW9uKTsKICAgICAgUVJnYiBwaXhlbCA9IHNjYWxlZC5waXhlbCgwLCAwKTsKLUBAIC0xODY5 LDYgKzE4NzEsNyBAQCB2b2lkIHRzdF9RSW1hZ2U6OnNtb290aFNjYWxlMigpCitAQCAtMTg5MCw2 ICsxODkyLDcgQEAgdm9pZCB0c3RfUUltYWdlOjpzbW9vdGhTY2FsZTIoKQogICAgICAgICAgICAg IFFDT01QQVJFKHFCbHVlKHBpeGVsKSwgcUJsdWUoZXhwZWN0ZWQpKTsKICAgICAgICAgIH0KICAg ICAgfQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdDYtYmFzZS9wYXRjaGVzL211c2wtdXNyLXBhdGgt aGFjay5wYXRjaCBiL3NyY3BrZ3MvcXQ2LWJhc2UvcGF0Y2hlcy9tdXNsLXVzci1wYXRoLWhhY2su cGF0Y2gKaW5kZXggOTJlYWU4NDMxYWVhMTcuLjBlZWQwMzRhMWVjZDFlIDEwMDY0NAotLS0gYS9z cmNwa2dzL3F0Ni1iYXNlL3BhdGNoZXMvbXVzbC11c3ItcGF0aC1oYWNrLnBhdGNoCisrKyBiL3Ny Y3BrZ3MvcXQ2LWJhc2UvcGF0Y2hlcy9tdXNsLXVzci1wYXRoLWhhY2sucGF0Y2gKQEAgLTYsOSAr Niw5IEBAIFRoaXMgYnJlYWtzIHF0Ni13ZWJlbmdpbmUncyBzZWFyY2ggcGF0aCBmb3IgdHJhbnNs YXRpb25zLgogVXNpbmcgcmVhbHBhdGggaW5zdGVhZCB3b3VsZCBwcm9iYWJseSBiZSBhIG1vcmUg Y29ycmVjdCBzb2x1dGlvbi4KIAogLS0tCi0tLS0gcXQ2LWJhc2UtNi40LjIub3JpZy9zcmMvY29y ZWxpYi9nbG9iYWwvcWxpYnJhcnlpbmZvLmNwcAotKysrIHF0Ni1iYXNlLTYuNC4yL3NyYy9jb3Jl bGliL2dsb2JhbC9xbGlicmFyeWluZm8uY3BwCi1AQCAtMzU4LDYgKzM1OCwxMiBAQCBzdGF0aWMg UVN0cmluZyBnZXRSZWxvY2F0YWJsZVByZWZpeChRTGliCistLS0gYS9zcmMvY29yZWxpYi9nbG9i YWwvcWxpYnJhcnlpbmZvLmNwcAorKysrIGIvc3JjL2NvcmVsaWIvZ2xvYmFsL3FsaWJyYXJ5aW5m by5jcHAKK0BAIC0zODMsNiArMzgzLDEyIEBAIHN0YXRpYyBRU3RyaW5nIGdldFJlbG9jYXRhYmxl UHJlZml4KFFMaWIKICAgICAgaW50IHJlc3VsdCA9IGRsYWRkcihyZWludGVycHJldF9jYXN0PHZv aWQgKj4oJlFMaWJyYXJ5SW5mbzo6aXNEZWJ1Z0J1aWxkKSwgJmluZm8pOwogICAgICBpZiAocmVz dWx0ID4gMCAmJiBpbmZvLmRsaV9mbmFtZSkKICAgICAgICAgIHByZWZpeFBhdGggPSBwcmVmaXhG cm9tUXRDb3JlTGlicmFyeUhlbHBlcihRU3RyaW5nOjpmcm9tTG9jYWw4Qml0KGluZm8uZGxpX2Zu YW1lKSk7CmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1iYXNlL3BhdGNoZXMvcmVzb3VyY2Utcm9v dC1kaXItbGFzdC1tb2RpZmllZC1pcy12YWxpZC5wYXRjaCBiL3NyY3BrZ3MvcXQ2LWJhc2UvcGF0 Y2hlcy9yZXNvdXJjZS1yb290LWRpci1sYXN0LW1vZGlmaWVkLWlzLXZhbGlkLnBhdGNoCmluZGV4 IDI4MmI1ODMzMzBjZTAzLi5iM2M0NWE1MGE0ZmE4NiAxMDA2NDQKLS0tIGEvc3JjcGtncy9xdDYt YmFzZS9wYXRjaGVzL3Jlc291cmNlLXJvb3QtZGlyLWxhc3QtbW9kaWZpZWQtaXMtdmFsaWQucGF0 Y2gKKysrIGIvc3JjcGtncy9xdDYtYmFzZS9wYXRjaGVzL3Jlc291cmNlLXJvb3QtZGlyLWxhc3Qt bW9kaWZpZWQtaXMtdmFsaWQucGF0Y2gKQEAgLTEsNiArMSw2IEBACi0tLS0gcXQ2LWJhc2UtNi40 LjIub3JpZy90ZXN0cy9hdXRvL2NvcmVsaWIvaW8vcXJlc291cmNlZW5naW5lL3RzdF9xcmVzb3Vy Y2VlbmdpbmUuY3BwCi0rKysgcXQ2LWJhc2UtNi40LjIvdGVzdHMvYXV0by9jb3JlbGliL2lvL3Fy ZXNvdXJjZWVuZ2luZS90c3RfcXJlc291cmNlZW5naW5lLmNwcAotQEAgLTU5Miw3ICs1OTIsMTAg QEAgdm9pZCB0c3RfUVJlc291cmNlRW5naW5lOjpsYXN0TW9kaWZpZWQoKQorLS0tIGEvdGVzdHMv YXV0by9jb3JlbGliL2lvL3FyZXNvdXJjZWVuZ2luZS90c3RfcXJlc291cmNlZW5naW5lLmNwcAor KysrIGIvdGVzdHMvYXV0by9jb3JlbGliL2lvL3FyZXNvdXJjZWVuZ2luZS90c3RfcXJlc291cmNl ZW5naW5lLmNwcAorQEAgLTYyNCw3ICs2MjQsMTAgQEAgdm9pZCB0c3RfUVJlc291cmNlRW5naW5l OjpsYXN0TW9kaWZpZWQoKQogICAgICB7CiAgICAgICAgICBRRmlsZUluZm8gZmkoIjovIik7CiAg ICAgICAgICBRVkVSSUZZKGZpLmV4aXN0cygpKTsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LWJh c2UvcGF0Y2hlcy94ODYtcXJvdW5kLXBhc3NlZC5wYXRjaCBiL3NyY3BrZ3MvcXQ2LWJhc2UvcGF0 Y2hlcy94ODYtcXJvdW5kLXBhc3NlZC5wYXRjaAppbmRleCBmNjU4ZWQ4MzNlNGY4OS4uMzIyOWVj NGRiNTg2ZDkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcXQ2LWJhc2UvcGF0Y2hlcy94ODYtcXJvdW5k LXBhc3NlZC5wYXRjaAorKysgYi9zcmNwa2dzL3F0Ni1iYXNlL3BhdGNoZXMveDg2LXFyb3VuZC1w YXNzZWQucGF0Y2gKQEAgLTEsNiArMSw2IEBACi0tLS0gcXQ2LWJhc2UtNi40LjIub3JpZy90ZXN0 cy9hdXRvL2NvcmVsaWIvZ2xvYmFsL3FnbG9iYWwvdHN0X3FnbG9iYWwuY3BwCi0rKysgcXQ2LWJh c2UtNi40LjIvdGVzdHMvYXV0by9jb3JlbGliL2dsb2JhbC9xZ2xvYmFsL3RzdF9xZ2xvYmFsLmNw cAotQEAgLTU5OSwxOCArNTk5LDE0IEBAIHZvaWQgdHN0X1FHbG9iYWw6OnFSb3VuZEZsb2F0cygp IHsKKy0tLSBhL3Rlc3RzL2F1dG8vY29yZWxpYi9nbG9iYWwvcWdsb2JhbC90c3RfcWdsb2JhbC5j cHAKKysrKyBiL3Rlc3RzL2F1dG8vY29yZWxpYi9nbG9iYWwvcWdsb2JhbC90c3RfcWdsb2JhbC5j cHAKK0BAIC03NjYsMTggKzc2NiwxNCBAQCB2b2lkIHRzdF9RR2xvYmFsOjpxUm91bmRGbG9hdHMo KSB7CiAgICAgIFFGRVRDSChmbG9hdCwgZXhwZWN0ZWQpOwogIAogICNpZiAhKGRlZmluZWQoUV9Q Uk9DRVNTT1JfQVJNXzY0KSAmJiAoX19oYXNfYnVpbHRpbihfX2J1aWx0aW5fcm91bmQpIHx8IGRl ZmluZWQoUV9DQ19HTlUpKSAmJiAhZGVmaW5lZChRX0NDX0NMQU5HKSkKQEAgLTIzLDcgKzIzLDcg QEAKICB9CiAgCiAgdm9pZCB0c3RfUUdsb2JhbDo6cVJvdW5kRG91Ymxlc19kYXRhKCkgewotQEAg LTYyOCwxOCArNjI0LDE0IEBAIHZvaWQgdHN0X1FHbG9iYWw6OnFSb3VuZERvdWJsZXMoKSB7CitA QCAtNzk1LDE4ICs3OTEsMTQgQEAgdm9pZCB0c3RfUUdsb2JhbDo6cVJvdW5kRG91YmxlcygpIHsK ICAgICAgUUZFVENIKGRvdWJsZSwgZXhwZWN0ZWQpOwogIAogICNpZiAhKGRlZmluZWQoUV9QUk9D RVNTT1JfQVJNXzY0KSAmJiAoX19oYXNfYnVpbHRpbihfX2J1aWx0aW5fcm91bmQpIHx8IGRlZmlu ZWQoUV9DQ19HTlUpKSAmJiAhZGVmaW5lZChRX0NDX0NMQU5HKSkKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvcXQ2LWJhc2UvcGF0Y2hlcy96ZnMtc3RvcmFnZS5wYXRjaCBiL3NyY3BrZ3MvcXQ2LWJhc2Uv cGF0Y2hlcy96ZnMtc3RvcmFnZS5wYXRjaAppbmRleCAwNDczODM2YmE3ZDY2NS4uZjI2ZmIxMDdi Y2Y0N2MgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcXQ2LWJhc2UvcGF0Y2hlcy96ZnMtc3RvcmFnZS5w YXRjaAorKysgYi9zcmNwa2dzL3F0Ni1iYXNlL3BhdGNoZXMvemZzLXN0b3JhZ2UucGF0Y2gKQEAg LTEsMTEgKzEsMTAgQEAKLS0tLSBxdDYtYmFzZS02LjQuMi5vcmlnL3Rlc3RzL2F1dG8vY29yZWxp Yi9pby9xc3RvcmFnZWluZm8vdHN0X3FzdG9yYWdlaW5mby5jcHAKLSsrKyBxdDYtYmFzZS02LjQu Mi90ZXN0cy9hdXRvL2NvcmVsaWIvaW8vcXN0b3JhZ2VpbmZvL3RzdF9xc3RvcmFnZWluZm8uY3Bw Ci1AQCAtMTY1LDYgKzE2NSw4IEBAIHZvaWQgdHN0X1FTdG9yYWdlSW5mbzo6dGVtcEZpbGUoKQot ICNpZmRlZiBRX09TX0xJTlVYCi0gICAgIGlmIChzdG9yYWdlMS5maWxlU3lzdGVtVHlwZSgpID09 ICJidHJmcyIpCi0gICAgICAgICBRU0tJUCgiVGhpcyB0ZXN0IGRvZXNuJ3Qgd29yayBvbiBidHJm cywgcHJvYmFibHkgZHVlIHRvIGEgYnRyZnMgYnVnIik7Ci0rICAgIGlmIChzdG9yYWdlMS5maWxl U3lzdGVtVHlwZSgpID09ICJ6ZnMiKQotKyAgICAgICAgUVNLSVAoIlRoaXMgdGVzdCBkb2Vzbid0 IHdvcmsgb24gemZzIik7CistLS0gYS90ZXN0cy9hdXRvL2NvcmVsaWIvaW8vcXN0b3JhZ2VpbmZv L3RzdF9xc3RvcmFnZWluZm8uY3BwCisrKysgYi90ZXN0cy9hdXRvL2NvcmVsaWIvaW8vcXN0b3Jh Z2VpbmZvL3RzdF9xc3RvcmFnZWluZm8uY3BwCitAQCAtMjIwLDYgKzIyMCw3IEBAIHN0YXRpYyBR U3RyaW5nIHN1aXRhYmxlRGlyZWN0b3J5Rm9yV3JpdGkKKyAgICAgICAgIC8vIFNlZSBjb21tZW50 IGJlbG93LiBJZiB3ZSBjYW4gZ2V0IGEgdG1wZnMsIGxldCdzIHRyeSBpdC4KKyAgICAgICAgICJi dHJmcyIsCisgICAgICAgICAieGZzIiwKKysgICAgICAgICJ6ZnMiLAogICNlbmRpZgorICAgICB9 OwogIAotICAgICBxaW50NjQgZnJlZSA9IHN0b3JhZ2UxLmJ5dGVzRnJlZSgpOwpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9xdDYtYmFzZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvcXQ2LWJhc2UvdGVtcGxhdGUK aW5kZXggMzMxMTU5OWRkODdkODguLjRiNjNkYzVkODQwMmI4IDEwMDY0NAotLS0gYS9zcmNwa2dz L3F0Ni1iYXNlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcXQ2LWJhc2UvdGVtcGxhdGUKQEAgLTEs NyArMSw5IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdxdDYtYmFzZScKKyMKKyMgT24gdXBkYXRl IHJlYnVpbGQgYWxsIHBrZyB3aXRoIHF0Ni1iYXNlLXByaXZhdGUtZGV2ZWwKIHBrZ25hbWU9cXQ2 LWJhc2UKLXZlcnNpb249Ni42LjAKLXJldmlzaW9uPTIKK3ZlcnNpb249Ni43LjIKK3JldmlzaW9u PTEKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURJTlNUQUxMX0RBVEFESVI9 c2hhcmUvcXQ2CiAgLURJTlNUQUxMX0FSQ0hEQVRBRElSPWxpYiR7WEJQU19UQVJHRVRfV09SRFNJ WkV9L3F0NgpAQCAtMTMsMTIgKzE1LDEzIEBAIGNvbmZpZ3VyZV9hcmdzPSItRElOU1RBTExfREFU QURJUj1zaGFyZS9xdDYKICAtRElOU1RBTExfU1lTQ09ORkRJUj0vZXRjL3hkZwogIC1EUVRfRkVB VFVSRV9vcGVuc3NsX2xpbmtlZD1PTgogIC1EUVRfRkVBVFVSRV9zeXN0ZW1fc3FsaXRlPU9OCisg LURRVF9GRUFUVVJFX3N5c3RlbV94Y2JfeGlucHV0PU9OCiAgLURRVF9GRUFUVVJFX2xpYnByb3h5 PU9OCiAgLURRVF9GRUFUVVJFX3FtYWtlPU9OCiAgLURCVUlMRF9XSVRIX1BDSD1PRkYiCiBob3N0 bWFrZWRlcGVuZHM9InBlcmwgcGtnLWNvbmZpZyB4bWxzdGFybGV0IgogbWFrZWRlcGVuZHM9Inps aWItZGV2ZWwgbGlienN0ZC1kZXZlbCBkYnVzLWRldmVsIGxpYm1kNGMtZGV2ZWwKLSBkb3VibGUt Y29udmVyc2lvbi1kZXZlbCBnbGliLWRldmVsIGxpYnhjYi1kZXZlbAorIGRvdWJsZS1jb252ZXJz aW9uLWRldmVsIGdsaWItZGV2ZWwgbGlieGNiLWRldmVsIGxpYlNNLWRldmVsCiAgeGNiLXV0aWwt aW1hZ2UtZGV2ZWwgeGNiLXV0aWwta2V5c3ltcy1kZXZlbAogIHhjYi11dGlsLXJlbmRlcnV0aWwt ZGV2ZWwgeGNiLXV0aWwtd20tZGV2ZWwKICBNZXNhTGliLWRldmVsIHBjcmUyLWRldmVsIGljdS1k ZXZlbCBtdGRldi1kZXZlbCBoYXJmYnV6ei1kZXZlbApAQCAtMzIsNyArMzUsNyBAQCBtYWludGFp bmVyPSJKb2huIDxtZUBqb2hubnluYXRvci5kZXY+IgogbGljZW5zZT0iR1BMLTMuMC1vbmx5IFdJ VEggUXQtR1BMLWV4Y2VwdGlvbi0xLjAsIExHUEwtMy4wLW9ubHksIEdQTC0yLjAtb3ItbGF0ZXIi CiBob21lcGFnZT0iaHR0cHM6Ly93d3cucXQuaW8iCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZG93bmxv YWQucXQuaW8vb2ZmaWNpYWxfcmVsZWFzZXMvcXQvJHt2ZXJzaW9uJS4qfS8ke3ZlcnNpb259L3N1 Ym1vZHVsZXMvcXRiYXNlLWV2ZXJ5d2hlcmUtc3JjLSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tz dW09MDM5ZDUzMzEyYWNiNTg5N2E5MDU0YmQzOGM5Y2NiZGFiNzI1MDBiNzFmZGNjZGIzZjRmMDg0 NGIwZGQzOWUwZQorY2hlY2tzdW09YzVmMjJhNWUxMGZiMTYyODk1ZGVkN2RlMDk2MzMyOGU3MzA3 NjExYzY4ODQ4N2I1ZDE1MmM5ZWU2NDc2NzU5OQogcHl0aG9uX3ZlcnNpb249MwogCiBpZiBbICIk Q1JPU1NfQlVJTEQiIF07IHRoZW4KQEAgLTQ2LDYgKzQ5LDEyIEBAIGlmIFsgIiRYQlBTX0NIRUNL X1BLR1MiIF07IHRoZW4KIAljb25maWd1cmVfYXJncys9IiAtRFFUX0JVSUxEX1RFU1RTPU9OIgog ZmkKIAorc3VicGFja2FnZXM9InF0Ni1jb25jdXJyZW50IHF0Ni1jb3JlIHF0Ni1kYnVzIHF0Ni1n dWkgcXQ2LW5ldHdvcmsKKyBxdDYtb3BlbmdsLXdpZGdldHMgcXQ2LXBsdWdpbi1teXNxbCBxdDYt cGx1Z2luLW5ldHdvcmtpbmZvcm1hdGlvbgorIHF0Ni1wbHVnaW4tb2RiYyBxdDYtcGx1Z2luLXBn c3FsIHF0Ni1wbHVnaW4tc3FsaXRlIHF0Ni1wbHVnaW4tdGxzLW9wZW5zc2wKKyBxdDYtcGx1Z2lu LXRscy1xY2VydG9ubHkgcXQ2LXByaW50c3VwcG9ydCBxdDYtc3FsIHF0Ni10ZXN0IHF0Ni13aWRn ZXRzIHF0Ni14bWwKKyBxdDYtYmFzZS1wcml2YXRlLWRldmVsIHF0Ni1iYXNlLWRvYyBxdDYtYmFz ZS1kZXZlbCIKKwogZG9fY2hlY2soKSB7CiAJY2QgYnVpbGQKIAlleHBvcnQgUVRfUVBBX1BMQVRG T1JNPW9mZnNjcmVlbgpAQCAtNzAsNiArNzksMTEgQEAgZG9fY2hlY2soKSB7CiAJZmFpbGluZ190 ZXN0cys9IiBtb2NrcGx1Z2lucyB0ZXN0X2ltcG9ydF9wbHVnaW5zCiAJIHRlc3Rfc3RhdGljX3Jl c291cmNlcyB0ZXN0X2dlbmVyYXRpbmdfY3BwX2V4cG9ydHMiCiAJZmFpbGluZ190ZXN0cys9IiB0 c3RfcXN0b3JhZ2VpbmZvIgorCSMgY21ha2UKKwlmYWlsaW5nX3Rlc3RzKz0iIHRlc3RfcXRfYWRk X3Jlc291cmNlc19yZWJ1aWxkIHRlc3RfY29sbGVjdGluZ19wbHVnaW5zCisJIHRlc3Rfc3RhbmRh bG9uZV90ZXN0IHRlc3RfcXRfZXh0cmFjdF9tZXRhdHlwZXMiCisJIyBGYWlsaW5nIHJlYWRvbmx5 IGFuZCBvdXQtb2YtbWVtb3J5CisJZmFpbGluZ190ZXN0cys9IiB0c3RfcXNoYXJlZG1lbW9yeSIK IAlpZiBbICIkWEJQU19UQVJHRVRfTElCQyIgPSBtdXNsIF07IHRoZW4KIAkJIyBTb21lIGdsaWJj IHNwZWNpZmljIEROUyBMb29rdXAKIAkJZmFpbGluZ190ZXN0cys9IiB0c3RfcWRuc2xvb2t1cCIK QEAgLTI2MCw2ICsyNzQsMjEgQEAgcXQ2LXBsdWdpbi1uZXR3b3JraW5mb3JtYXRpb25fcGFja2Fn ZSgpIHsKIAl9CiB9CiAKK3F0Ni1iYXNlLXByaXZhdGUtZGV2ZWxfcGFja2FnZSgpIHsKKwlzaG9y dF9kZXNjKz0iIC0gcHJpdmF0ZSBkZXZlbG9wbWVudCBmaWxlcyIKKwlkZXBlbmRzPSJxdDYtYmFz ZS1kZXZlbD49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlwa2dfaW5zdGFsbCgpIHsKKwkJZm9y IGRpciBpbiAkKGNkICR7REVTVERJUn0gJiYgcHdkID4mMiAmJiBmaW5kIHVzci9pbmNsdWRlIC10 eXBlIGQgLW5hbWUgcHJpdmF0ZSk7IGRvCisJCQl2bW92ZSAiJGRpciIKKwkJZG9uZQorCQl2bW92 ZSAidXNyL2xpYi9jbWFrZS8qUHJpdmF0ZSIKKwkJdm1vdmUgInVzci9saWIvcXQ2L21ldGF0eXBl cy8qcHJpdmF0ZV8qX21ldGF0eXBlcy5qc29uIgorCQkjIGh0dHBzOi8vYnVncy5kZWJpYW4ub3Jn L2NnaS1iaW4vYnVncmVwb3J0LmNnaT9idWc9OTIxOTMwCisJCSMgdm1vdmUgInVzci9saWIvcXQ2 L21rc3BlY3MvbW9kdWxlcy8qX3ByaXZhdGUucHJpIgorCQl2bW92ZSAidXNyL2xpYi9xdDYvbW9k dWxlcy8qUHJpdmF0ZS5qc29uIgorCX0KK30KKwogcXQ2LWJhc2UtZGV2ZWxfcGFja2FnZSgpIHsK IAlzaG9ydF9kZXNjKz0iIC0gRGV2ZWxvcG1lbnQgZmlsZXMiCiAJZGVwZW5kcz0icXQ2LWJhc2U+ PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0KCkZyb20gZDIyMmU1M2RjMWJhMDVhYjEwOWEyMmNkZjg3 YTYwMWZkZGYyMDUzMSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogPT9VVEYtOD9xPz1D ND05MG89QzM9QTBuPTIwVHI9RTE9QkE9QTduPTIwQz1DMz1CNG5nPTIwRGFuaD89CiA8Y29uZ2Rh bmhxeEBnbWFpbC5jb20+CkRhdGU6IFN1biwgMjMgSnVuIDIwMjQgMTA6NDQ6MjggKzA3MDAKU3Vi amVjdDogW1BBVENIIDAyLzQ0XSBxdDYtZGVjbGFyYXRpdmU6IHVwZGF0ZSB0byA2LjcuMi4KCi0t LQogc3JjcGtncy9xdDYtZGVjbGFyYXRpdmUtcHJpdmF0ZS1kZXZlbCAgICAgICAgIHwgIDEgKwog Li4uL3BhdGNoZXMvYmluLXFtbC1sb2NhdGlvbi5wYXRjaCAgICAgICAgICAgIHwgNjIgKysrKysr KysrLS0tLS0tLS0tLQogc3JjcGtncy9xdDYtZGVjbGFyYXRpdmUvdGVtcGxhdGUgICAgICAgICAg ICAgIHwgMzUgKysrKysrKystLS0KIDMgZmlsZXMgY2hhbmdlZCwgNTcgaW5zZXJ0aW9ucygrKSwg NDEgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMjAwMDAgc3JjcGtncy9xdDYtZGVjbGFyYXRp dmUtcHJpdmF0ZS1kZXZlbAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LWRlY2xhcmF0aXZlLXBy aXZhdGUtZGV2ZWwgYi9zcmNwa2dzL3F0Ni1kZWNsYXJhdGl2ZS1wcml2YXRlLWRldmVsCm5ldyBm aWxlIG1vZGUgMTIwMDAwCmluZGV4IDAwMDAwMDAwMDAwMDAwLi5mZDAzYTQ4MDlmM2ViZgotLS0g L2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvcXQ2LWRlY2xhcmF0aXZlLXByaXZhdGUtZGV2ZWwKQEAg LTAsMCArMSBAQAorcXQ2LWRlY2xhcmF0aXZlClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpk aWZmIC0tZ2l0IGEvc3JjcGtncy9xdDYtZGVjbGFyYXRpdmUvcGF0Y2hlcy9iaW4tcW1sLWxvY2F0 aW9uLnBhdGNoIGIvc3JjcGtncy9xdDYtZGVjbGFyYXRpdmUvcGF0Y2hlcy9iaW4tcW1sLWxvY2F0 aW9uLnBhdGNoCmluZGV4IDkzMjNhZWMwMGI2NGNlLi44NGY2ZGZiZTY2M2M0NCAxMDA2NDQKLS0t IGEvc3JjcGtncy9xdDYtZGVjbGFyYXRpdmUvcGF0Y2hlcy9iaW4tcW1sLWxvY2F0aW9uLnBhdGNo CisrKyBiL3NyY3BrZ3MvcXQ2LWRlY2xhcmF0aXZlL3BhdGNoZXMvYmluLXFtbC1sb2NhdGlvbi5w YXRjaApAQCAtMSw1ICsxLDUgQEAKLS0tLSBxdDYtZGVjbGFyYXRpdmUtNi40LjIub3JpZy90ZXN0 cy9hdXRvL3FtbC9kZWJ1Z2dlci9xcW1sZGVidWd0cmFuc2xhdGlvbmNsaWVudC90c3RfcXFtbGRl YnVndHJhbnNsYXRpb25jbGllbnQuY3BwCi0rKysgcXQ2LWRlY2xhcmF0aXZlLTYuNC4yL3Rlc3Rz L2F1dG8vcW1sL2RlYnVnZ2VyL3FxbWxkZWJ1Z3RyYW5zbGF0aW9uY2xpZW50L3RzdF9xcW1sZGVi dWd0cmFuc2xhdGlvbmNsaWVudC5jcHAKKy0tLSBhL3Rlc3RzL2F1dG8vcW1sL2RlYnVnZ2VyL3Fx bWxkZWJ1Z3RyYW5zbGF0aW9uY2xpZW50L3RzdF9xcW1sZGVidWd0cmFuc2xhdGlvbmNsaWVudC5j cHAKKysrKyBiL3Rlc3RzL2F1dG8vcW1sL2RlYnVnZ2VyL3FxbWxkZWJ1Z3RyYW5zbGF0aW9uY2xp ZW50L3RzdF9xcW1sZGVidWd0cmFuc2xhdGlvbmNsaWVudC5jcHAKIEBAIC03MSw2ICs3MSw5IEBA IHByaXZhdGU6CiAgICAgICAgICBtX2N1cnJlbnRPdXRwdXRMaW5lID0gMDsKICAKQEAgLTEwLDgg KzEwLDggQEAKICAgICAgICAgIGF1dG8gc2VydmljZXMgPSBRUW1sRGVidWdUcmFuc2xhdGlvblNl cnZpY2VJbXBsOjpzX2tleTsKICAgICAgICAgIGF1dG8gZXh0cmFBcmdzID0gdGVzdEZpbGUoUU1M RklMRSk7CiAgICAgICAgICBhdXRvIGJsb2NrID0gdHJ1ZTsKLS0tLSBxdDYtZGVjbGFyYXRpdmUt Ni40LjIub3JpZy90ZXN0cy9hdXRvL3FtbC9kZWJ1Z2dlci9xcW1saW5zcGVjdG9yL3RzdF9xcW1s aW5zcGVjdG9yLmNwcAotKysrIHF0Ni1kZWNsYXJhdGl2ZS02LjQuMi90ZXN0cy9hdXRvL3FtbC9k ZWJ1Z2dlci9xcW1saW5zcGVjdG9yL3RzdF9xcW1saW5zcGVjdG9yLmNwcAorLS0tIGEvdGVzdHMv YXV0by9xbWwvZGVidWdnZXIvcXFtbGluc3BlY3Rvci90c3RfcXFtbGluc3BlY3Rvci5jcHAKKysr KyBiL3Rlc3RzL2F1dG8vcW1sL2RlYnVnZ2VyL3FxbWxpbnNwZWN0b3IvdHN0X3FxbWxpbnNwZWN0 b3IuY3BwCiBAQCAtNDcsNyArNDcsMTEgQEAgdHN0X1FRbWxJbnNwZWN0b3I6OnRzdF9RUW1sSW5z cGVjdG9yKCkKICBRUW1sRGVidWdUZXN0OjpDb25uZWN0UmVzdWx0IHRzdF9RUW1sSW5zcGVjdG9y OjpzdGFydFFtbFByb2Nlc3MoY29uc3QgUVN0cmluZyAmcW1sRmlsZSwKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBy ZXN0cmljdFNlcnZpY2VzKQpAQCAtMjUsOSArMjUsOSBAQAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICByZXN0cmljdFNlcnZpY2VzID8gUVN0cmluZ0xpdGVyYWwoIlFtbEluc3Bl Y3RvciIpIDogUVN0cmluZygpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0 ZXN0RmlsZShxbWxGaWxlKSwgdHJ1ZSk7CiAgfQotLS0tIHF0Ni1kZWNsYXJhdGl2ZS02LjQuMi5v cmlnL3Rlc3RzL2F1dG8vcW1sL2RlYnVnZ2VyL3FxbWxwcm9maWxlcnNlcnZpY2UvdHN0X3FxbWxw cm9maWxlcnNlcnZpY2UuY3BwCi0rKysgcXQ2LWRlY2xhcmF0aXZlLTYuNC4yL3Rlc3RzL2F1dG8v cW1sL2RlYnVnZ2VyL3FxbWxwcm9maWxlcnNlcnZpY2UvdHN0X3FxbWxwcm9maWxlcnNlcnZpY2Uu Y3BwCi1AQCAtMTc5LDEwICsxNzksMTggQEAgcHJpdmF0ZToKKy0tLSBhL3Rlc3RzL2F1dG8vcW1s L2RlYnVnZ2VyL3FxbWxwcm9maWxlcnNlcnZpY2UvdHN0X3FxbWxwcm9maWxlcnNlcnZpY2UuY3Bw CisrKysgYi90ZXN0cy9hdXRvL3FtbC9kZWJ1Z2dlci9xcW1scHJvZmlsZXJzZXJ2aWNlL3RzdF9x cW1scHJvZmlsZXJzZXJ2aWNlLmNwcAorQEAgLTE4MSwxMCArMTgxLDE4IEBAIHByaXZhdGU6CiAg ICAgICAgICBDaGVja1R5cGUgPSBDaGVja01lc3NhZ2VUeXBlIHwgQ2hlY2tEZXRhaWxUeXBlIHwg Q2hlY2tMaW5lIHwgQ2hlY2tDb2x1bW4gfCBDaGVja0ZpbGVFbmRzV2l0aAogICAgICB9OwogIApA QCAtNDcsOCArNDcsOCBAQAogICAgICB2b2lkIGNoZWNrUHJvY2Vzc1Rlcm1pbmF0ZWQoKTsKICAg ICAgdm9pZCBjaGVja1RyYWNlUmVjZWl2ZWQoKTsKICAgICAgdm9pZCBjaGVja0pzSGVhcCgpOwot LS0tIHF0Ni1kZWNsYXJhdGl2ZS02LjQuMi5vcmlnL3Rlc3RzL2F1dG8vcW1sL2RlYnVnZ2VyL3Fx bWxkZWJ1Z2dpbmdlbmFibGVyL3FxbWxkZWJ1Z2dpbmdlbmFibGVyL3RzdF9xcW1sZGVidWdnaW5n ZW5hYmxlci5jcHAKLSsrKyBxdDYtZGVjbGFyYXRpdmUtNi40LjIvdGVzdHMvYXV0by9xbWwvZGVi dWdnZXIvcXFtbGRlYnVnZ2luZ2VuYWJsZXIvcXFtbGRlYnVnZ2luZ2VuYWJsZXIvdHN0X3FxbWxk ZWJ1Z2dpbmdlbmFibGVyLmNwcAorLS0tIGEvdGVzdHMvYXV0by9xbWwvZGVidWdnZXIvcXFtbGRl YnVnZ2luZ2VuYWJsZXIvcXFtbGRlYnVnZ2luZ2VuYWJsZXIvdHN0X3FxbWxkZWJ1Z2dpbmdlbmFi bGVyLmNwcAorKysrIGIvdGVzdHMvYXV0by9xbWwvZGVidWdnZXIvcXFtbGRlYnVnZ2luZ2VuYWJs ZXIvcXFtbGRlYnVnZ2luZ2VuYWJsZXIvdHN0X3FxbWxkZWJ1Z2dpbmdlbmFibGVyLmNwcAogQEAg LTg1LDggKzg1LDEyIEBAIHZvaWQgdHN0X1FRbWxEZWJ1Z2dpbmdFbmFibGVyOjpxbWxzY2VuZSgK ICAgICAgUUZFVENIKGJvb2wsIGJsb2NrTW9kZSk7CiAgICAgIFFGRVRDSChRU3RyaW5nTGlzdCwg c2VydmljZXMpOwpAQCAtNjQsOCArNjQsOCBAQAogICAgICBtX3Byb2Nlc3MtPnNldE1heGltdW1C aW5kRXJyb3JzKDEpOwogICAgICBtX3Byb2Nlc3MtPnN0YXJ0KFFTdHJpbmdMaXN0KCkKICAgICAg ICAgICAgICAgICAgICAgICA8PCBRU3RyaW5nOjpmcm9tTGF0aW4xKCItcW1sanNkZWJ1Z2dlcj1j b25uZWN0b3I6JTElMiUzJTQiKQotLS0tIHF0Ni1kZWNsYXJhdGl2ZS02LjQuMi5vcmlnL3Rlc3Rz L2F1dG8vcW1sL2RlYnVnZ2VyL3FxbWxlbmdpbmVjb250cm9sL3RzdF9xcW1sZW5naW5lY29udHJv bC5jcHAKLSsrKyBxdDYtZGVjbGFyYXRpdmUtNi40LjIvdGVzdHMvYXV0by9xbWwvZGVidWdnZXIv cXFtbGVuZ2luZWNvbnRyb2wvdHN0X3FxbWxlbmdpbmVjb250cm9sLmNwcAorLS0tIGEvdGVzdHMv YXV0by9xbWwvZGVidWdnZXIvcXFtbGVuZ2luZWNvbnRyb2wvdHN0X3FxbWxlbmdpbmVjb250cm9s LmNwcAorKysrIGIvdGVzdHMvYXV0by9xbWwvZGVidWdnZXIvcXFtbGVuZ2luZWNvbnRyb2wvdHN0 X3FxbWxlbmdpbmVjb250cm9sLmNwcAogQEAgLTY2LDcgKzY2LDExIEBAIHRzdF9RUW1sRW5naW5l Q29udHJvbDo6dHN0X1FRbWxFbmdpbmVDb24KICBRUW1sRGVidWdUZXN0OjpDb25uZWN0UmVzdWx0 IHRzdF9RUW1sRW5naW5lQ29udHJvbDo6Y29ubmVjdFRvKGNvbnN0IFFTdHJpbmcgJmZpbGUsCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgYm9vbCByZXN0cmljdFNlcnZpY2VzKQpAQCAtNzksMTEgKzc5LDExIEBACiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3RyaWN0U2VydmljZXMgPyBRU3RyaW5nTGl0ZXJh bCgiRW5naW5lQ29udHJvbCIpIDogUVN0cmluZygpLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB0ZXN0RmlsZShmaWxlKSwgdHJ1ZSk7CiAgfQotLS0tIHF0Ni1kZWNsYXJhdGl2 ZS02LjQuMi5vcmlnL3Rlc3RzL2F1dG8vcW1sL2RlYnVnZ2VyL3FxbWxlbmdpbmVkZWJ1Z2luc3Bl Y3RvcmludGVncmF0aW9udGVzdC90c3RfcXFtbGVuZ2luZWRlYnVnaW5zcGVjdG9yaW50ZWdyYXRp b24uY3BwCi0rKysgcXQ2LWRlY2xhcmF0aXZlLTYuNC4yL3Rlc3RzL2F1dG8vcW1sL2RlYnVnZ2Vy L3FxbWxlbmdpbmVkZWJ1Z2luc3BlY3RvcmludGVncmF0aW9udGVzdC90c3RfcXFtbGVuZ2luZWRl YnVnaW5zcGVjdG9yaW50ZWdyYXRpb24uY3BwCistLS0gYS90ZXN0cy9hdXRvL3FtbC9kZWJ1Z2dl ci9xcW1sZW5naW5lZGVidWdpbnNwZWN0b3JpbnRlZ3JhdGlvbnRlc3QvdHN0X3FxbWxlbmdpbmVk ZWJ1Z2luc3BlY3RvcmludGVncmF0aW9uLmNwcAorKysrIGIvdGVzdHMvYXV0by9xbWwvZGVidWdn ZXIvcXFtbGVuZ2luZWRlYnVnaW5zcGVjdG9yaW50ZWdyYXRpb250ZXN0L3RzdF9xcW1sZW5naW5l ZGVidWdpbnNwZWN0b3JpbnRlZ3JhdGlvbi5jcHAKIEBAIC03MCw4ICs3MCwxMSBAQCB0c3RfUVFt bEVuZ2luZURlYnVnSW5zcGVjdG9ySW50ZWdyYXRpb246CiAgCi0gUVFtbERlYnVnVGVzdDo6Q29u bmVjdFJlc3VsdCB0c3RfUVFtbEVuZ2luZURlYnVnSW5zcGVjdG9ySW50ZWdyYXRpb246OmluaXQo Ym9vbCByZXN0cmljdFNlcnZpY2VzKQorIFFRbWxEZWJ1Z1Rlc3Q6OkNvbm5lY3RSZXN1bHQgdHN0 X1FRbWxFbmdpbmVEZWJ1Z0luc3BlY3RvckludGVncmF0aW9uOjpydW5BbmRDb25uZWN0KGJvb2wg cmVzdHJpY3RTZXJ2aWNlcykKICB7CiAtICAgIHJldHVybiBRUW1sRGVidWdUZXN0Ojpjb25uZWN0 VG8oCiAtICAgICAgICAgICAgICAgIFFMaWJyYXJ5SW5mbzo6cGF0aChRTGlicmFyeUluZm86OkJp bmFyaWVzUGF0aCkgKyAiL3FtbCIsCkBAIC05NSw4ICs5NSw4IEBACiAgICAgICAgICAgICAgICAg IHJlc3RyaWN0U2VydmljZXMgPyBRU3RyaW5nTGl0ZXJhbCgiUW1sRGVidWdnZXIsUW1sSW5zcGVj dG9yIikgOiBRU3RyaW5nKCksCiAgICAgICAgICAgICAgICAgIHRlc3RGaWxlKCJxdHF1aWNrMi5x bWwiKSwgdHJ1ZSk7CiAgfQotLS0tIHF0Ni1kZWNsYXJhdGl2ZS02LjQuMi5vcmlnL3Rlc3RzL2F1 dG8vcW1sL2RlYnVnZ2VyL3FxbWxwcmV2aWV3L3RzdF9xcW1scHJldmlldy5jcHAKLSsrKyBxdDYt ZGVjbGFyYXRpdmUtNi40LjIvdGVzdHMvYXV0by9xbWwvZGVidWdnZXIvcXFtbHByZXZpZXcvdHN0 X3FxbWxwcmV2aWV3LmNwcAorLS0tIGEvdGVzdHMvYXV0by9xbWwvZGVidWdnZXIvcXFtbHByZXZp ZXcvdHN0X3FxbWxwcmV2aWV3LmNwcAorKysrIGIvdGVzdHMvYXV0by9xbWwvZGVidWdnZXIvcXFt bHByZXZpZXcvdHN0X3FxbWxwcmV2aWV3LmNwcAogQEAgLTU2LDcgKzU2LDExIEBAIHRzdF9RUW1s UHJldmlldzo6dHN0X1FRbWxQcmV2aWV3KCkKICAKICBRUW1sRGVidWdUZXN0OjpDb25uZWN0UmVz dWx0IHRzdF9RUW1sUHJldmlldzo6c3RhcnRRbWxQcm9jZXNzKGNvbnN0IFFTdHJpbmcgJnFtbEZp bGUpCkBAIC0xMTAsOSArMTEwLDkgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgUVN0cmluZ0xpdGVyYWwoIlFtbFByZXZpZXciKSwgdGVzdEZpbGUocW1sRmlsZSksIHRydWUp OwogIH0KICAKLS0tLSBxdDYtZGVjbGFyYXRpdmUtNi40LjIub3JpZy90ZXN0cy9hdXRvL3FtbC9x bWxmb3JtYXQvdHN0X3FtbGZvcm1hdC5jcHAKLSsrKyBxdDYtZGVjbGFyYXRpdmUtNi40LjIvdGVz dHMvYXV0by9xbWwvcW1sZm9ybWF0L3RzdF9xbWxmb3JtYXQuY3BwCi1AQCAtNjUsNiArNjUsOSBA QCB2b2lkIFRlc3RRbWxmb3JtYXQ6OmluaXRUZXN0Q2FzZSgpCistLS0gYS90ZXN0cy9hdXRvL3Ft bC9xbWxmb3JtYXQvdHN0X3FtbGZvcm1hdC5jcHAKKysrKyBiL3Rlc3RzL2F1dG8vcW1sL3FtbGZv cm1hdC90c3RfcW1sZm9ybWF0LmNwcAorQEAgLTc0LDYgKzc0LDkgQEAgdm9pZCBUZXN0UW1sZm9y bWF0Ojppbml0VGVzdENhc2UoKQogIHsKICAgICAgUVFtbERhdGFUZXN0Ojppbml0VGVzdENhc2Uo KTsKICAgICAgbV9xbWxmb3JtYXRQYXRoID0gUUxpYnJhcnlJbmZvOjpwYXRoKFFMaWJyYXJ5SW5m bzo6QmluYXJpZXNQYXRoKSArIFFMYXRpbjFTdHJpbmcoIi9xbWxmb3JtYXQiKTsKQEAgLTEyMiw4 ICsxMjIsOCBAQAogICNpZmRlZiBRX09TX1dJTgogICAgICBtX3FtbGZvcm1hdFBhdGggKz0gUUxh dGluMVN0cmluZygiLmV4ZSIpOwogICNlbmRpZgotLS0tIHF0Ni1kZWNsYXJhdGl2ZS02LjQuMi5v cmlnL3Rlc3RzL2F1dG8vcW1sL3FtbGltcG9ydHNjYW5uZXIvdHN0X3FtbGltcG9ydHNjYW5uZXIu Y3BwCi0rKysgcXQ2LWRlY2xhcmF0aXZlLTYuNC4yL3Rlc3RzL2F1dG8vcW1sL3FtbGltcG9ydHNj YW5uZXIvdHN0X3FtbGltcG9ydHNjYW5uZXIuY3BwCistLS0gYS90ZXN0cy9hdXRvL3FtbC9xbWxp bXBvcnRzY2FubmVyL3RzdF9xbWxpbXBvcnRzY2FubmVyLmNwcAorKysrIGIvdGVzdHMvYXV0by9x bWwvcW1saW1wb3J0c2Nhbm5lci90c3RfcW1saW1wb3J0c2Nhbm5lci5jcHAKIEBAIC00Miw2ICs0 Miw5IEBAIHZvaWQgVGVzdFFtbGltcG9ydHNjYW5uZXI6OmluaXRUZXN0Q2FzZSgKICAgICAgUVFt bERhdGFUZXN0Ojppbml0VGVzdENhc2UoKTsKICAgICAgbV9xbWxpbXBvcnRzY2FubmVyUGF0aCA9 IFFMaWJyYXJ5SW5mbzo6cGF0aChRTGlicmFyeUluZm86OkxpYnJhcnlFeGVjdXRhYmxlc1BhdGgp CkBAIC0xMzQsOSArMTM0LDkgQEAKICAjaWZkZWYgUV9PU19XSU4KICAgICAgbV9xbWxpbXBvcnRz Y2FubmVyUGF0aCArPSBRTGF0aW4xU3RyaW5nKCIuZXhlIik7CiAgI2VuZGlmCi0tLS0gcXQ2LWRl Y2xhcmF0aXZlLTYuNC4yLm9yaWcvdGVzdHMvYXV0by9xbWwvcW1sbGludC90c3RfcW1sbGludC5j cHAKLSsrKyBxdDYtZGVjbGFyYXRpdmUtNi40LjIvdGVzdHMvYXV0by9xbWwvcW1sbGludC90c3Rf cW1sbGludC5jcHAKLUBAIC0xNTksMTAgKzE1OSwxOCBAQCB2b2lkIFRlc3RRbWxsaW50Ojppbml0 VGVzdENhc2UoKQorLS0tIGEvdGVzdHMvYXV0by9xbWwvcW1sbGludC90c3RfcW1sbGludC5jcHAK KysrKyBiL3Rlc3RzL2F1dG8vcW1sL3FtbGxpbnQvdHN0X3FtbGxpbnQuY3BwCitAQCAtMTcwLDEw ICsxNzAsMTggQEAgdm9pZCBUZXN0UW1sbGludDo6aW5pdFRlc3RDYXNlKCkKICB7CiAgICAgIFFR bWxEYXRhVGVzdDo6aW5pdFRlc3RDYXNlKCk7CiAgICAgIG1fcW1sbGludFBhdGggPSBRTGlicmFy eUluZm86OnBhdGgoUUxpYnJhcnlJbmZvOjpCaW5hcmllc1BhdGgpICsgUUxhdGluMVN0cmluZygi L3FtbGxpbnQiKTsKQEAgLTE1NSw4ICsxNTUsOCBAQAogICNpZmRlZiBRX09TX1dJTgogICAgICBt X3FtbGxpbnRQYXRoICs9IFFMYXRpbjFTdHJpbmcoIi5leGUiKTsKICAgICAgbV9xbWxqc3Jvb3Rn ZW5QYXRoICs9IFFMYXRpbjFTdHJpbmcoIi5leGUiKTsKLS0tLSBxdDYtZGVjbGFyYXRpdmUtNi40 LjIub3JpZy90ZXN0cy9hdXRvL3FtbC9kZWJ1Z2dlci9xZGVidWdtZXNzYWdlc2VydmljZS90c3Rf cWRlYnVnbWVzc2FnZXNlcnZpY2UuY3BwCi0rKysgcXQ2LWRlY2xhcmF0aXZlLTYuNC4yL3Rlc3Rz L2F1dG8vcW1sL2RlYnVnZ2VyL3FkZWJ1Z21lc3NhZ2VzZXJ2aWNlL3RzdF9xZGVidWdtZXNzYWdl c2VydmljZS5jcHAKKy0tLSBhL3Rlc3RzL2F1dG8vcW1sL2RlYnVnZ2VyL3FkZWJ1Z21lc3NhZ2Vz ZXJ2aWNlL3RzdF9xZGVidWdtZXNzYWdlc2VydmljZS5jcHAKKysrKyBiL3Rlc3RzL2F1dG8vcW1s L2RlYnVnZ2VyL3FkZWJ1Z21lc3NhZ2VzZXJ2aWNlL3RzdF9xZGVidWdtZXNzYWdlc2VydmljZS5j cHAKIEBAIC0xMTgsNyArMTE4LDExIEBAIHRzdF9RRGVidWdNZXNzYWdlU2VydmljZTo6dHN0X1FE ZWJ1Z01lc3MKICAKICB2b2lkIHRzdF9RRGVidWdNZXNzYWdlU2VydmljZTo6cmV0cmlldmVEZWJ1 Z091dHB1dCgpCkBAIC0xNzAsOCArMTcwLDggQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBRU3RyaW5nKCksIHRlc3RGaWxlKFFNTEZJTEUpLCB0cnVlKSwgQ29ubmVjdFN1 Y2Nlc3MpOwogIAogICAgICBRVFJZX1ZFUklGWShtX2NsaWVudC0+bG9nQnVmZmVyLnNpemUoKSA+ PSAyKTsKLS0tLSBxdDYtZGVjbGFyYXRpdmUtNi40LjIub3JpZy90ZXN0cy9hdXRvL3FtbC9xbWxw bHVnaW5kdW1wL3RzdF9xbWxwbHVnaW5kdW1wLmNwcAotKysrIHF0Ni1kZWNsYXJhdGl2ZS02LjQu Mi90ZXN0cy9hdXRvL3FtbC9xbWxwbHVnaW5kdW1wL3RzdF9xbWxwbHVnaW5kdW1wLmNwcAorLS0t IGEvdGVzdHMvYXV0by9xbWwvcW1scGx1Z2luZHVtcC90c3RfcW1scGx1Z2luZHVtcC5jcHAKKysr KyBiL3Rlc3RzL2F1dG8vcW1sL3FtbHBsdWdpbmR1bXAvdHN0X3FtbHBsdWdpbmR1bXAuY3BwCiBA QCAtMzgsNiArMzgsOSBAQCB2b2lkIHRzdF9xbWxwbHVnaW5kdW1wOjppbml0VGVzdENhc2UoKQog IHsKICAgICAgUVFtbERhdGFUZXN0Ojppbml0VGVzdENhc2UoKTsKQEAgLTE4Miw4ICsxODIsOCBA QAogIAogICNpZiBkZWZpbmVkKFFfT1NfV0lOKQogICAgICBxbWxwbHVnaW5kdW1wUGF0aCArPSBR TGF0aW4xU3RyaW5nKCIvcW1scGx1Z2luZHVtcC5leGUiKTsKLS0tLSBxdDYtZGVjbGFyYXRpdmUt Ni40LjIub3JpZy90ZXN0cy9hdXRvL3FtbC9kZWJ1Z2dlci9xcW1sZGVidWdqcy90c3RfcXFtbGRl YnVnanMuY3BwCi0rKysgcXQ2LWRlY2xhcmF0aXZlLTYuNC4yL3Rlc3RzL2F1dG8vcW1sL2RlYnVn Z2VyL3FxbWxkZWJ1Z2pzL3RzdF9xcW1sZGVidWdqcy5jcHAKKy0tLSBhL3Rlc3RzL2F1dG8vcW1s L2RlYnVnZ2VyL3FxbWxkZWJ1Z2pzL3RzdF9xcW1sZGVidWdqcy5jcHAKKysrKyBiL3Rlc3RzL2F1 dG8vcW1sL2RlYnVnZ2VyL3FxbWxkZWJ1Z2pzL3RzdF9xcW1sZGVidWdqcy5jcHAKIEBAIC0xNjMs MTEgKzE2MywxOCBAQCB2b2lkIHRzdF9RUW1sRGVidWdKUzo6aW5pdFRlc3RDYXNlKCkKICAgICAg UVFtbERlYnVnVGVzdDo6aW5pdFRlc3RDYXNlKCk7CiAgfQpAQCAtMTk1LDcgKzE5NSw3IEBACiAr ICAgICAgICByZXR1cm4gUVN0cmluZyhidWlsZF9iaW5fcGF0aCkgKyAiL3FtbHNjZW5lIjsKICsg ICAgcmV0dXJuIFFMaWJyYXJ5SW5mbzo6cGF0aChRTGlicmFyeUluZm86OkJpbmFyaWVzUGF0aCkg KyAiL3FtbHNjZW5lIjsKICt9Ci0gUVFtbERlYnVnVGVzdDo6Q29ubmVjdFJlc3VsdCB0c3RfUVFt bERlYnVnSlM6OmluaXQoYm9vbCBxbWxzY2VuZSwgY29uc3QgUVN0cmluZyAmcW1sRmlsZSwKKyBR UW1sRGVidWdUZXN0OjpDb25uZWN0UmVzdWx0IHRzdF9RUW1sRGVidWdKUzo6cnVuQW5kQ29ubmVj dChib29sIHFtbHNjZW5lLCBjb25zdCBRU3RyaW5nICZxbWxGaWxlLAogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgYmxvY2tNb2RlLCBib29s IHJlc3RyaWN0U2VydmljZXMpCiAgewogICAgICBjb25zdCBRU3RyaW5nIGV4ZWN1dGFibGUgPSBx bWxzY2VuZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdDYtZGVjbGFyYXRpdmUvdGVtcGxhdGUgYi9z cmNwa2dzL3F0Ni1kZWNsYXJhdGl2ZS90ZW1wbGF0ZQppbmRleCAwMmY3MTYyMmUxNjE5NC4uMzMw MzFiYzU2OGU2MmUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcXQ2LWRlY2xhcmF0aXZlL3RlbXBsYXRl CisrKyBiL3NyY3BrZ3MvcXQ2LWRlY2xhcmF0aXZlL3RlbXBsYXRlCkBAIC0xLDE3ICsxLDIwIEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdxdDYtZGVjbGFyYXRpdmUnCisjCisjIE9uIHVwZGF0ZSwg cmVidWlsZCBwa2dzIHdpdGggcXQ2LWRlY2xhcmF0aXZlLXByaXZhdGUtZGV2ZWwKIHBrZ25hbWU9 cXQ2LWRlY2xhcmF0aXZlCi12ZXJzaW9uPTYuNi4wCi1yZXZpc2lvbj0yCit2ZXJzaW9uPTYuNy4y CityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1EUVRfQlVJ TERfVEVTVFM9T04iCiBob3N0bWFrZWRlcGVuZHM9InF0Ni1iYXNlIHBlcmwgcGtnLWNvbmZpZyB3 YXlsYW5kLWRldmVsIHF0Ni1zaGFkZXJ0b29scyBweXRob24zIgotbWFrZWRlcGVuZHM9InF0Ni1i YXNlLWRldmVsIFZ1bGthbi1IZWFkZXJzIHF0Ni1zaGFkZXJ0b29scy1kZXZlbCBxdDYtbGFuZ3Vh Z2VzZXJ2ZXItZGV2ZWwiCittYWtlZGVwZW5kcz0icXQ2LWJhc2UtcHJpdmF0ZS1kZXZlbCBWdWxr YW4tSGVhZGVycyBxdDYtc2hhZGVydG9vbHMtZGV2ZWwKKyBxdDYtbGFuZ3VhZ2VzZXJ2ZXItcHJp dmF0ZS1kZXZlbCIKIHNob3J0X2Rlc2M9IkNyb3NzLXBsYXRmb3JtIGFwcGxpY2F0aW9uIGFuZCBV SSBmcmFtZXdvcmsgLSBEZWNsYXJhdGl2ZSIKIG1haW50YWluZXI9IkpvaG4gPG1lQGpvaG5ueW5h dG9yLmRldj4iCiBsaWNlbnNlPSJHUEwtMy4wLW9ubHkgV0lUSCBRdC1HUEwtZXhjZXB0aW9uLTEu MCwgTEdQTC0zLjAtb25seSwgR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3d3 dy5xdC5pbyIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9kb3dubG9hZC5xdC5pby9vZmZpY2lhbF9yZWxl YXNlcy9xdC8ke3ZlcnNpb24lLip9LyR7dmVyc2lvbn0vc3VibW9kdWxlcy9xdGRlY2xhcmF0aXZl LWV2ZXJ5d2hlcmUtc3JjLSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09MWI1MzliYjBhOTE4 YzhmMDMwN2ZkMDdiZDRlZjAzMzRiZjdmODkzNGJiYzJlYWJmYzA0YzQzM2E3ZDdmYTMzMQorY2hl Y2tzdW09NGMyOWNiYTFhZjhjNDJkNDI1ZDhlYjZlMDFiYWQyNGNiODBmNGI5ODNkNzFlZWY1NjZh MDU0MmRmZGI5Yjk5OQogcmVwbGFjZXM9InF0Ni1xdWlja2NvbnRyb2xzMj49MCIKIAogaWYgWyAi JENST1NTX0JVSUxEIiBdOyB0aGVuCkBAIC0yNCw2ICsyNyw5IEBAIGlmIFsgIiRYQlBTX1RBUkdF VF9FTkRJQU4iID0gImJlIiBdOyB0aGVuCiAJYnJva2VuPSJzaGFkZXIgY29tcGlsYXRpb24gZmFp bHMiCiBmaQogCitzdWJwYWNrYWdlcz0icXQ2LXF1aWNrLXRlc3QgcXQ2LWRlY2xhcmF0aXZlLWhv c3QtdG9vbHMgcXQ2LWRlY2xhcmF0aXZlLXRvb2xzCisgcXQ2LWRlY2xhcmF0aXZlLXByaXZhdGUt ZGV2ZWwgcXQ2LWRlY2xhcmF0aXZlLWRldmVsIgorCiBkb19jaGVjaygpIHsKIAljZCBidWlsZAog CWV4cG9ydCBRTUwyX0lNUE9SVF9QQVRIPSIkd3Jrc3JjL2J1aWxkL2xpYiR7WEJQU19UQVJHRVRf V09SRFNJWkV9L3F0Ni9xbWwiCkBAIC05Myw2ICs5OSwyMCBAQCBxdDYtZGVjbGFyYXRpdmUtaG9z dC10b29sc19wYWNrYWdlKCkgewogCX0KIH0KIAorcXQ2LWRlY2xhcmF0aXZlLXByaXZhdGUtZGV2 ZWxfcGFja2FnZSgpIHsKKwlkZXBlbmRzPSJxdDYtZGVjbGFyYXRpdmUtZGV2ZWw+PSR7dmVyc2lv bn1fJHtyZXZpc2lvbn0iCisJc2hvcnRfZGVzYys9IiAtIHByaXZhdGUgZGV2ZWxvcG1lbnQgZmls ZXMiCisJcGtnX2luc3RhbGwoKSB7CisJCWZvciBkaXIgaW4gJChjZCAke0RFU1RESVJ9ICYmIGZp bmQgdXNyL2luY2x1ZGUgLXR5cGUgZCAtbmFtZSBwcml2YXRlKTsgZG8KKwkJCXZtb3ZlICIkZGly IgorCQlkb25lCisJCXZtb3ZlICJ1c3IvbGliL2NtYWtlLypQcml2YXRlIgorCQl2bW92ZSAidXNy L2xpYi9xdDYvbWV0YXR5cGVzLypwcml2YXRlXypfbWV0YXR5cGVzLmpzb24iCisJCXZtb3ZlICJ1 c3IvbGliL3F0Ni9ta3NwZWNzL21vZHVsZXMvKl9wcml2YXRlLnByaSIKKwkJdm1vdmUgInVzci9s aWIvcXQ2L21vZHVsZXMvKlByaXZhdGUuanNvbiIKKwl9Cit9CisKIHF0Ni1kZWNsYXJhdGl2ZS1k ZXZlbF9wYWNrYWdlKCkgewogCWRlcGVuZHM9IiR7c291cmNlcGtnfT49JHt2ZXJzaW9ufV8ke3Jl dmlzaW9ufSBxdDYtYmFzZS1kZXZlbD49JHt2ZXJzaW9ufV8xCiAJIHF0Ni1kZWNsYXJhdGl2ZS1o b3N0LXRvb2xzPj0ke3ZlcnNpb259XyR7cmV2aXNpb259IgpAQCAtMTA3LDExICsxMjcsNiBAQCBx dDYtZGVjbGFyYXRpdmUtZGV2ZWxfcGFja2FnZSgpIHsKIAkJdm1vdmUgInVzci9saWIvKi5hIgog CQl2bW92ZSAidXNyL2xpYi8qLnBybCIKIAkJdm1vdmUgdXNyL2xpYi9xdDYvbW9kdWxlcwotCQlm b3IgX2YgaW4gJHtERVNURElSfS91c3IvbGliL2NtYWtlLyo7IGRvCi0JCQljYXNlICIkX2YiIGlu Ci0JCQkqVG9vbHMpIDs7Ci0JCQkqKQl2bW92ZSAidXNyL2xpYi9jbWFrZS8ke19mIyMqL30iIDs7 Ci0JCQllc2FjCi0JCWRvbmUKKwkJdm1vdmUgdXNyL2xpYi9jbWFrZQogCX0KIH0KCkZyb20gZjAx NGUxODc2ZjFhNWU0NTBjMzZjZmI2ZjU5Y2E0YWE1NjRiYjMzZCBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogPT9VVEYtOD9xPz1DND05MG89QzM9QTBuPTIwVHI9RTE9QkE9QTduPTIwQz1D Mz1CNG5nPTIwRGFuaD89CiA8Y29uZ2RhbmhxeEBnbWFpbC5jb20+CkRhdGU6IFN1biwgMjMgSnVu IDIwMjQgMTA6NDQ6MjkgKzA3MDAKU3ViamVjdDogW1BBVENIIDAzLzQ0XSBxdDYtbGFuZ3VhZ2Vz ZXJ2ZXI6IHVwZGF0ZSB0byA2LjcuMi4KCi0tLQogc3JjcGtncy9xdDYtbGFuZ3VhZ2VzZXJ2ZXIt cHJpdmF0ZS1kZXZlbCB8ICAxICsKIHNyY3BrZ3MvcXQ2LWxhbmd1YWdlc2VydmVyL3RlbXBsYXRl ICAgICAgfCAyNiArKysrKysrKysrKysrKysrKysrKystLS0KIDIgZmlsZXMgY2hhbmdlZCwgMjQg aW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEyMDAwMCBzcmNwa2dz L3F0Ni1sYW5ndWFnZXNlcnZlci1wcml2YXRlLWRldmVsCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9x dDYtbGFuZ3VhZ2VzZXJ2ZXItcHJpdmF0ZS1kZXZlbCBiL3NyY3BrZ3MvcXQ2LWxhbmd1YWdlc2Vy dmVyLXByaXZhdGUtZGV2ZWwKbmV3IGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggMDAwMDAwMDAwMDAw MDAuLjc0MjZiOTUzYWRhYjQxCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9xdDYtbGFuZ3Vh Z2VzZXJ2ZXItcHJpdmF0ZS1kZXZlbApAQCAtMCwwICsxIEBACitxdDYtbGFuZ3VhZ2VzZXJ2ZXIK XCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1sYW5n dWFnZXNlcnZlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvcXQ2LWxhbmd1YWdlc2VydmVyL3RlbXBsYXRl CmluZGV4IGExNTJiMThmN2RjZDA5Li4yNTIxYzVkNjg0YzUwOSAxMDA2NDQKLS0tIGEvc3JjcGtn cy9xdDYtbGFuZ3VhZ2VzZXJ2ZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9xdDYtbGFuZ3VhZ2Vz ZXJ2ZXIvdGVtcGxhdGUKQEAgLTEsMTcgKzEsMzcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3F0 Ni1sYW5ndWFnZXNlcnZlcicKIHBrZ25hbWU9cXQ2LWxhbmd1YWdlc2VydmVyCi12ZXJzaW9uPTYu Ni4wCit2ZXJzaW9uPTYuNy4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmln dXJlX2FyZ3M9Ii1EUVRfQlVJTERfVEVTVFM9T04iCiBob3N0bWFrZWRlcGVuZHM9InF0Ni1iYXNl IgotbWFrZWRlcGVuZHM9InF0Ni1iYXNlLWRldmVsIgorbWFrZWRlcGVuZHM9InF0Ni1iYXNlLXBy aXZhdGUtZGV2ZWwiCiBzaG9ydF9kZXNjPSJJbXBsZW1lbnRhdGlvbiBvZiB0aGUgTGFuZ3VhZ2Ug U2VydmVyIFByb3RvY29sIGZvciBRdDYiCiBtYWludGFpbmVyPSJjbGFzc2FiYnlhbXAgPHZvaWRA cGxhY2V2aW9sZXR0ZS5uZXQ+IgogbGljZW5zZT0iR1BMLTMuMC1vbmx5IFdJVEggUXQtR1BMLWV4 Y2VwdGlvbi0xLjAsIExHUEwtMy4wLW9ubHksIEdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0i aHR0cHM6Ly93d3cucXQuaW8iCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZG93bmxvYWQucXQuaW8vb2Zm aWNpYWxfcmVsZWFzZXMvcXQvJHt2ZXJzaW9uJS4qfS8ke3ZlcnNpb259L3N1Ym1vZHVsZXMvcXRs YW5ndWFnZXNlcnZlci1ldmVyeXdoZXJlLXNyYy0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3Vt PWFlYzkzMDE5ODYyYmY2Mzc2OTIwNmZlNTZhMjIzMGNkOWUzNzk5NDgwNmE0YmYyODQxNTIwM2I0 ZWI5YTQ5MGUKK2NoZWNrc3VtPWI2NTlmZTY1NTE0NGZmYTA2MWUzYWU1MDllYWRiNDJhZTM3MzIz MDUxNzI5NWE5NjkzNTQzNDM0MGUxMDFhOTIKKworc3VicGFja2FnZXM9InF0Ni1sYW5ndWFnZXNl cnZlci1wcml2YXRlLWRldmVsIHF0Ni1sYW5ndWFnZXNlcnZlci1kZXZlbCIKKworcG9zdF9pbnN0 YWxsKCkgeworCXJtIC1yZiAke0RFU1RESVJ9L3Vzci90ZXN0cworfQorCitxdDYtbGFuZ3VhZ2Vz ZXJ2ZXItcHJpdmF0ZS1kZXZlbF9wYWNrYWdlKCkgeworCWRlcGVuZHM9InF0Ni1sYW5ndWFnZXNl cnZlci1kZXZlbD49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlzaG9ydF9kZXNjKz0iIC0gcHJp dmF0ZSBkZXZlbG9wbWVudCBmaWxlcyIKKwlwa2dfaW5zdGFsbCgpIHsKKwkJZm9yIGRpciBpbiAk KGNkICR7REVTVERJUn0gJiYgZmluZCB1c3IvaW5jbHVkZSAtdHlwZSBkIC1uYW1lIHByaXZhdGUp OyBkbworCQkJdm1vdmUgIiRkaXIiCisJCWRvbmUKKwkJdm1vdmUgInVzci9saWIvY21ha2UvKlBy aXZhdGUiCisJCXZtb3ZlICJ1c3IvbGliL3F0Ni9tZXRhdHlwZXMvKnByaXZhdGVfKl9tZXRhdHlw ZXMuanNvbiIKKwkJdm1vdmUgInVzci9saWIvcXQ2L21rc3BlY3MvbW9kdWxlcy8qX3ByaXZhdGUu cHJpIgorCQl2bW92ZSAidXNyL2xpYi9xdDYvbW9kdWxlcy8qUHJpdmF0ZS5qc29uIgorCX0KK30K IAogcXQ2LWxhbmd1YWdlc2VydmVyLWRldmVsX3BhY2thZ2UoKSB7CiAJZGVwZW5kcz0iJHtzb3Vy Y2Vwa2d9Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259IgoKRnJvbSAyZGQwMjI5ODczYjViZjJjNGQ1 M2M5N2Y5ZjJkYjBiNDEzZTE3YmM0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VU Ri04P3E/PUM0PTkwbz1DMz1BMG49MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0bmc9MjBEYW5oPz0K IDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTogU3VuLCAyMyBKdW4gMjAyNCAxMDo0NDoyOSAr MDcwMApTdWJqZWN0OiBbUEFUQ0ggMDQvNDRdIHF0Ni1tdWx0aW1lZGlhOiB1cGRhdGUgdG8gNi43 LjIuCgotLS0KIHNyY3BrZ3MvcXQ2LW11bHRpbWVkaWEtcHJpdmF0ZS1kZXZlbCAgICAgICAgICB8 ICAxICsKIC4uLi9xdDYtbXVsdGltZWRpYS9wYXRjaGVzL211c2wtdGltZXZhbC5wYXRjaCB8IDEw IC0tLS0tLS0KIHNyY3BrZ3MvcXQ2LW11bHRpbWVkaWEvdGVtcGxhdGUgICAgICAgICAgICAgICB8 IDI4ICsrKysrKysrKysrKysrKy0tLS0KIDMgZmlsZXMgY2hhbmdlZCwgMjQgaW5zZXJ0aW9ucygr KSwgMTUgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMjAwMDAgc3JjcGtncy9xdDYtbXVsdGlt ZWRpYS1wcml2YXRlLWRldmVsCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9xdDYtbXVsdGlt ZWRpYS9wYXRjaGVzL211c2wtdGltZXZhbC5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2 LW11bHRpbWVkaWEtcHJpdmF0ZS1kZXZlbCBiL3NyY3BrZ3MvcXQ2LW11bHRpbWVkaWEtcHJpdmF0 ZS1kZXZlbApuZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAwMDAwMC4uOTM0MzQ0 NjUwMmQwZTUKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3F0Ni1tdWx0aW1lZGlhLXByaXZh dGUtZGV2ZWwKQEAgLTAsMCArMSBAQAorcXQ2LW11bHRpbWVkaWEKXCBObyBuZXdsaW5lIGF0IGVu ZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1tdWx0aW1lZGlhL3BhdGNoZXMvbXVz bC10aW1ldmFsLnBhdGNoIGIvc3JjcGtncy9xdDYtbXVsdGltZWRpYS9wYXRjaGVzL211c2wtdGlt ZXZhbC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYWY3YjRkZDdmYjU3Njku LjAwMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvcXQ2LW11bHRpbWVkaWEvcGF0Y2hlcy9tdXNs LXRpbWV2YWwucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwxMCArMCwwIEBACi0tLS0gcXQ2LW11 bHRpbWVkaWEtNi40LjIub3JpZy9zcmMvcGx1Z2lucy9tdWx0aW1lZGlhL2ZmbXBlZy9xdjRsMmNh bWVyYV9wLmgKLSsrKyBxdDYtbXVsdGltZWRpYS02LjQuMi9zcmMvcGx1Z2lucy9tdWx0aW1lZGlh L2ZmbXBlZy9xdjRsMmNhbWVyYV9wLmgKLUBAIC0yMiw2ICsyMiw3IEBACi0gI2luY2x1ZGUgPHFm aWxlc3lzdGVtd2F0Y2hlci5oPgotICNpbmNsdWRlIDxxc29ja2V0bm90aWZpZXIuaD4KLSAjaW5j bHVkZSA8cW11dGV4Lmg+Ci0rI2luY2x1ZGUgPHN5cy90aW1lLmg+Ci0gCi0gUVRfQkVHSU5fTkFN RVNQQUNFCi0gCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1tdWx0aW1lZGlhL3RlbXBsYXRlIGIv c3JjcGtncy9xdDYtbXVsdGltZWRpYS90ZW1wbGF0ZQppbmRleCA2N2E1NzdlMTMwMGZlYS4uMDQ2 Y2MwYjQ4NmNjZGMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcXQ2LW11bHRpbWVkaWEvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9xdDYtbXVsdGltZWRpYS90ZW1wbGF0ZQpAQCAtMSwyNCArMSwyOCBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAncXQ2LW11bHRpbWVkaWEnCiBwa2duYW1lPXF0Ni1tdWx0aW1l ZGlhCi12ZXJzaW9uPTYuNi4wCi1yZXZpc2lvbj0yCit2ZXJzaW9uPTYuNy4yCityZXZpc2lvbj0x CiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1EUVRfRkVBVFVSRV9nc3RyZWFt ZXI9T04iCiBob3N0bWFrZWRlcGVuZHM9InBlcmwgcXQ2LWRlY2xhcmF0aXZlLWhvc3QtdG9vbHMg cGtnLWNvbmZpZyBxdDYtc2hhZGVydG9vbHMiCi1tYWtlZGVwZW5kcz0icXQ2LWRlY2xhcmF0aXZl LWRldmVsIHB1bHNlYXVkaW8tZGV2ZWwgZmZtcGVnLWRldmVsIGxpYnZhLWRldmVsCi0gcXQ2LXNo YWRlcnRvb2xzLWRldmVsIGxpYmdsaWItZGV2ZWwgZ3N0LXBsdWdpbnMtYmFzZTEtZGV2ZWwgcXQ2 LXF1aWNrM2QtZGV2ZWwiCittYWtlZGVwZW5kcz0icXQ2LWJhc2UtcHJpdmF0ZS1kZXZlbCBxdDYt ZGVjbGFyYXRpdmUtcHJpdmF0ZS1kZXZlbAorIHF0Ni1xdWljazNkLXByaXZhdGUtZGV2ZWwKKyBw dWxzZWF1ZGlvLWRldmVsIGZmbXBlZy1kZXZlbCBsaWJ2YS1kZXZlbAorIHF0Ni1zaGFkZXJ0b29s cy1kZXZlbCBsaWJnbGliLWRldmVsIGdzdC1wbHVnaW5zLWJhc2UxLWRldmVsIgogc2hvcnRfZGVz Yz0iQ3Jvc3MtcGxhdGZvcm0gYXBwbGljYXRpb24gYW5kIFVJIGZyYW1ld29yayAtIG11bHRpbWVk aWEiCiBtYWludGFpbmVyPSJKb2huIDxtZUBqb2hubnluYXRvci5kZXY+IgogbGljZW5zZT0iKExH UEwtMy4wLW9ubHkgT1IgR1BMLTIuMC1vbmx5IE9SIEdQTC0zLjAtb25seSkgQU5EIEdQTC0zLjAt b25seSB3aXRoIFF0LUdQTC1leGNlcHRpb24tMS4wIgogaG9tZXBhZ2U9Imh0dHBzOi8vcXQuaW8v IgogZGlzdGZpbGVzPSJodHRwOi8vZG93bmxvYWQucXQuaW8vb2ZmaWNpYWxfcmVsZWFzZXMvcXQv JHt2ZXJzaW9uJS4qfS8ke3ZlcnNpb259L3N1Ym1vZHVsZXMvcXRtdWx0aW1lZGlhLWV2ZXJ5d2hl cmUtc3JjLSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09YmE0YjIzNmNhM2VjMTE4ODQxYjdm NWJhODc3OTdlMjRhOGM1Y2JlZjliYTk3M2ZlMjE5ZmJmYzMxMGQzODc4MgorY2hlY2tzdW09OGVm ODM1MTE1YWNiOWExZDNkMmM5ZjIzY2ZhY2I0M2YyYzUzN2UzNzg2YThhYjgyMjI5OWEyYTc3NjU2 NTFkMwogCiBpZiBbICIkWEJQU19NQUNISU5FIiA9ICJpNjg2IiBdOyB0aGVuCiAJQ1hYRkxBR1M9 Ii1EUEZGRlRfU0lNRF9ESVNBQkxFPTEiCiAJQ0ZMQUdTPSItRFBGRkZUX1NJTURfRElTQUJMRT0x IgogZmkKIAorc3VicGFja2FnZXM9InF0Ni1tdWx0aW1lZGlhLXByaXZhdGUtZGV2ZWwgcXQ2LW11 bHRpbWVkaWEtZGV2ZWwiCisKIGRvX2NoZWNrKCkgewogCWNkIGJ1aWxkCiAJbG9jYWwgYnJva2Vu PSJ0c3RfcW1lZGlhZm9ybWF0fHRzdF9xYXVkaW9kZWNvZGVyYmFja2VuZCIKQEAgLTMzLDYgKzM3 LDIwIEBAIHBvc3RfaW5zdGFsbCgpIHsKIAlybSAtcmYgJHtERVNURElSfS91c3IvdGVzdHMKIH0K IAorcXQ2LW11bHRpbWVkaWEtcHJpdmF0ZS1kZXZlbF9wYWNrYWdlKCkgeworCWRlcGVuZHM9InF0 Ni1tdWx0aW1lZGlhLWRldmVsPj0ke3ZlcnNpb259XyR7cmV2aXNpb259IgorCXNob3J0X2Rlc2Mr PSIgLSBwcml2YXRlIGRldmVsb3BtZW50IGZpbGVzIgorCXBrZ19pbnN0YWxsKCkgeworCQlmb3Ig ZGlyIGluICQoY2QgJHtERVNURElSfSAmJiBmaW5kIHVzci9pbmNsdWRlIC10eXBlIGQgLW5hbWUg cHJpdmF0ZSk7IGRvCisJCQl2bW92ZSAiJGRpciIKKwkJZG9uZQorCQl2bW92ZSAidXNyL2xpYi9j bWFrZS8qUHJpdmF0ZSIKKwkJdm1vdmUgInVzci9saWIvcXQ2L21ldGF0eXBlcy8qcHJpdmF0ZV8q X21ldGF0eXBlcy5qc29uIgorCQl2bW92ZSAidXNyL2xpYi9xdDYvbWtzcGVjcy9tb2R1bGVzLypf cHJpdmF0ZS5wcmkiCisJCXZtb3ZlICJ1c3IvbGliL3F0Ni9tb2R1bGVzLypQcml2YXRlLmpzb24i CisJfQorfQorCiBxdDYtbXVsdGltZWRpYS1kZXZlbF9wYWNrYWdlKCkgewogCWRlcGVuZHM9IiR7 c291cmNlcGtnfT49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSBxdDYtYmFzZS1kZXZlbD49JHt2ZXJz aW9ufV8xIgogCXNob3J0X2Rlc2MrPSIgLSBkZXZlbG9wbWVudCBmaWxlcyIKCkZyb20gZDRkMDc1 ZmQ0ZWU4MjZjMTMxNTk4YTRkZTEyMTg4NTA2ZThlNjQ5MyBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogPT9VVEYtOD9xPz1DND05MG89QzM9QTBuPTIwVHI9RTE9QkE9QTduPTIwQz1DMz1C NG5nPTIwRGFuaD89CiA8Y29uZ2RhbmhxeEBnbWFpbC5jb20+CkRhdGU6IFN1biwgMjMgSnVuIDIw MjQgMTA6NDQ6MjkgKzA3MDAKU3ViamVjdDogW1BBVENIIDA1LzQ0XSBxdDYtcXQ1Y29tcGF0OiB1 cGRhdGUgdG8gNi43LjIuCgotLS0KIHNyY3BrZ3MvcXQ2LXF0NWNvbXBhdC90ZW1wbGF0ZSB8IDcg KysrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1xdDVjb21wYXQvdGVtcGxhdGUgYi9zcmNwa2dzL3F0 Ni1xdDVjb21wYXQvdGVtcGxhdGUKaW5kZXggNTcyNGIwZjhhMGYxN2QuLmZhOWM5ZDZlYWJiMTQ3 IDEwMDY0NAotLS0gYS9zcmNwa2dzL3F0Ni1xdDVjb21wYXQvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9xdDYtcXQ1Y29tcGF0L3RlbXBsYXRlCkBAIC0xLDE4ICsxLDE5IEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdxdDYtcXQ1Y29tcGF0JwogcGtnbmFtZT1xdDYtcXQ1Y29tcGF0Ci12ZXJzaW9uPTYu Ni4wCit2ZXJzaW9uPTYuNy4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmln dXJlX2FyZ3M9Ii1EUVRfRkVBVFVSRV90ZXh0Y29kZWM9T04gLURRVF9GRUFUVVJFX2NvZGVjcz1P TgogIC1EUVRfRkVBVFVSRV9pY29udj1PTiAtRFFUX0ZFQVRVUkVfYmlnX2NvZGVjcz1PTiIKIGhv c3RtYWtlZGVwZW5kcz0icXQ2LWJhc2UgcXQ2LWRlY2xhcmF0aXZlLWhvc3QtdG9vbHMgcGVybCBw a2ctY29uZmlnIgotbWFrZWRlcGVuZHM9InF0Ni1iYXNlLWRldmVsIHF0Ni1kZWNsYXJhdGl2ZS1k ZXZlbCBxdDYtc2hhZGVydG9vbHMtZGV2ZWwiCittYWtlZGVwZW5kcz0icXQ2LWJhc2UtcHJpdmF0 ZS1kZXZlbCBxdDYtZGVjbGFyYXRpdmUtcHJpdmF0ZS1kZXZlbAorIHF0Ni1zaGFkZXJ0b29scy1k ZXZlbCIKIHNob3J0X2Rlc2M9IkNyb3NzLXBsYXRmb3JtIGFwcGxpY2F0aW9uIGFuZCBVSSBmcmFt ZXdvcmsgLSBRdDUgQ29tcGF0aWJpbHR5IENvbXBvbmVudCIKIG1haW50YWluZXI9IkpvaG4gPG1l QGpvaG5ueW5hdG9yLmRldj4iCiBsaWNlbnNlPSJHUEwtMy4wLW9ubHkgd2l0aCBRdC1HUEwtZXhj ZXB0aW9uLTEuMCwgTEdQTC0zLjAtb25seSwgR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJo dHRwczovL3F0LmlvLyIKIGRpc3RmaWxlcz0iaHR0cDovL2Rvd25sb2FkLnF0LmlvL29mZmljaWFs X3JlbGVhc2VzL3F0LyR7dmVyc2lvbiUuKn0vJHt2ZXJzaW9ufS9zdWJtb2R1bGVzL3F0NWNvbXBh dC1ldmVyeXdoZXJlLXNyYy0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTNkODVlZGI2NjEy NmY3MTIyNjZkY2JmYzZjZDAwMzgzZDQ2Y2M2ZDY2YzhiODQ2MDdjYTIxZTJiYzcxYThmY2EKK2No ZWNrc3VtPTg4MjZiNTE4OWVmYzRkOWJkYjY0ZmRiMWFhODlkMGZkZjRlNTNjNjA5NDhlZDc5OTU2 MjFlZDA0NmUzOGMwMDMKIAogaWYgWyAiJFhCUFNfQ0hFQ0tfUEtHUyIgXTsgdGhlbgogCWNvbmZp Z3VyZV9hcmdzPSItRFFUX0JVSUxEX1RFU1RTPU9OIgoKRnJvbSA5NWVlZjExZTEyNGViNzJkODhj NzliNWM4OGEzZWIwNzg5N2Y5MTgyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VU Ri04P3E/PUM0PTkwbz1DMz1BMG49MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0bmc9MjBEYW5oPz0K IDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTogU3VuLCAyMyBKdW4gMjAyNCAxMDo0NDoyOSAr MDcwMApTdWJqZWN0OiBbUEFUQ0ggMDYvNDRdIHF0Ni1xdWljazNkOiB1cGRhdGUgdG8gNi43LjIu CgotLS0KIHNyY3BrZ3MvcXQ2LXF1aWNrM2QtcHJpdmF0ZS1kZXZlbCB8ICAxICsKIHNyY3BrZ3Mv cXQ2LXF1aWNrM2QvdGVtcGxhdGUgICAgICB8IDI1ICsrKysrKysrKysrKysrKysrKysrLS0tLS0K IDIgZmlsZXMgY2hhbmdlZCwgMjEgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKIGNyZWF0 ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL3F0Ni1xdWljazNkLXByaXZhdGUtZGV2ZWwKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL3F0Ni1xdWljazNkLXByaXZhdGUtZGV2ZWwgYi9zcmNwa2dzL3F0Ni1xdWlj azNkLXByaXZhdGUtZGV2ZWwKbmV3IGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggMDAwMDAwMDAwMDAw MDAuLjkxZmY2ZjAzZTQ3OTcwCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9xdDYtcXVpY2sz ZC1wcml2YXRlLWRldmVsCkBAIC0wLDAgKzEgQEAKK3F0Ni1xdWljazNkClwgTm8gbmV3bGluZSBh dCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdDYtcXVpY2szZC90ZW1wbGF0ZSBi L3NyY3BrZ3MvcXQ2LXF1aWNrM2QvdGVtcGxhdGUKaW5kZXggY2Y1YjAzZDgwMjQ2MTkuLjhjZjNm MDdkMzdhODQ4IDEwMDY0NAotLS0gYS9zcmNwa2dzL3F0Ni1xdWljazNkL3RlbXBsYXRlCisrKyBi L3NyY3BrZ3MvcXQ2LXF1aWNrM2QvdGVtcGxhdGUKQEAgLTEsMTkgKzEsMTkgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ3F0Ni1xdWljazNkJwogcGtnbmFtZT1xdDYtcXVpY2szZAotdmVyc2lvbj02 LjYuMAordmVyc2lvbj02LjcuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGhvc3Rt YWtlZGVwZW5kcz0icGVybCBxdDYtZGVjbGFyYXRpdmUtaG9zdC10b29scyBxdDYtc2hhZGVydG9v bHMiCi1tYWtlZGVwZW5kcz0icXQ2LWJhc2UtZGV2ZWwgcXQ2LWRlY2xhcmF0aXZlLWRldmVsIHF0 Ni1zaGFkZXJ0b29scy1kZXZlbAotIHF0Ni1xdWlja3RpbWVsaW5lIGxpYmFzc2ltcC1kZXZlbCIK K21ha2VkZXBlbmRzPSJxdDYtYmFzZS1wcml2YXRlLWRldmVsIHF0Ni1kZWNsYXJhdGl2ZS1wcml2 YXRlLWRldmVsCisgcXQ2LXNoYWRlcnRvb2xzLWRldmVsIHF0Ni1xdWlja3RpbWVsaW5lIGxpYmFz c2ltcC1kZXZlbCIKIHNob3J0X2Rlc2M9IkNyb3NzLXBsYXRmb3JtIGFwcGxpY2F0aW9uIGFuZCBV SSBmcmFtZXdvcmsgLSBRdWljazNkIgogbWFpbnRhaW5lcj0iSm9obiA8bWVAam9obm55bmF0b3Iu ZGV2PiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9xdC5p by8iCiBkaXN0ZmlsZXM9Imh0dHA6Ly9kb3dubG9hZC5xdC5pby9vZmZpY2lhbF9yZWxlYXNlcy9x dC8ke3ZlcnNpb24lLip9LyR7dmVyc2lvbn0vc3VibW9kdWxlcy9xdHF1aWNrM2QtZXZlcnl3aGVy ZS1zcmMtJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0zN2FiM2ViMzk0ZTQ5ZDZjMmIwM2M0 ZGEwYzdmNzgyYzI1NWRmZjI5NGU3Mzk0NjM2OWRkMmUwNTlhODM3YWJhCitjaGVja3N1bT1iYjhm ZjlhZWM2ZGEyZTJkM2IzOTg2Y2M4NTkzMzNhOThiMmYzZDRiYmU1NjRjNTczM2U4ZjFhMDg5ZDE1 MjcwCiAKLXN1YnBhY2thZ2VzPSJxdDYtcXVpY2szZC10b29scyBxdDYtcXVpY2szZC1kZXZlbCIK K3N1YnBhY2thZ2VzPSJxdDYtcXVpY2szZC10b29scyBxdDYtcXVpY2szZC1wcml2YXRlLWRldmVs IHF0Ni1xdWljazNkLWRldmVsIgogaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCiAJaG9zdG1h a2VkZXBlbmRzKz0iIHF0Ni1xdWljazNkLXRvb2xzIgogCWNvbmZpZ3VyZV9hcmdzPSItRFFUX0ZP UkNFX0JVSUxEX1RPT0xTPXRydWUiCkBAIC0zNSw2ICszNSwyMSBAQCBwb3N0X2luc3RhbGwoKSB7 CiAJcm0gLXJmICR7REVTVERJUn0vdXNyL2xpYi9saWJRdDZCdW5kbGVkRW1icmVlLmEKIH0KIAor cXQ2LXF1aWNrM2QtcHJpdmF0ZS1kZXZlbF9wYWNrYWdlKCkgeworCWRlcGVuZHM9InF0Ni1xdWlj azNkLWRldmVsPj0ke3ZlcnNpb259XyR7cmV2aXNpb259CisJIHF0Ni1kZWNsYXJhdGl2ZS1wcml2 YXRlLWRldmVsIgorCXNob3J0X2Rlc2MrPSIgLSBwcml2YXRlIGRldmVsb3BtZW50IGZpbGVzIgor CXBrZ19pbnN0YWxsKCkgeworCQlmb3IgZGlyIGluICQoY2QgJHtERVNURElSfSAmJiBmaW5kIHVz ci9pbmNsdWRlIC10eXBlIGQgLW5hbWUgcHJpdmF0ZSk7IGRvCisJCQl2bW92ZSAiJGRpciIKKwkJ ZG9uZQorCQl2bW92ZSAidXNyL2xpYi9jbWFrZS8qUHJpdmF0ZSIKKwkJdm1vdmUgInVzci9saWIv cXQ2L21ldGF0eXBlcy8qcHJpdmF0ZV8qX21ldGF0eXBlcy5qc29uIgorCQl2bW92ZSAidXNyL2xp Yi9xdDYvbWtzcGVjcy9tb2R1bGVzLypfcHJpdmF0ZS5wcmkiCisJCXZtb3ZlICJ1c3IvbGliL3F0 Ni9tb2R1bGVzLypQcml2YXRlLmpzb24iCisJfQorfQorCiBxdDYtcXVpY2szZC10b29sc19wYWNr YWdlKCkgewogCWRlcGVuZHM9IiR7c291cmNlcGtnfT49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIK IAlzaG9ydF9kZXNjKz0iIC0gVG9vbHMiCgpGcm9tIDI1MDc3N2NhMzIxNTEwMWIxMzZmNDNkNjUw YTA2NzNkODZiNDhlY2UgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRGLTg/cT89 QzQ9OTBvPUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0yMEM9QzM9QjRuZz0yMERhbmg/PQogPGNvbmdk YW5ocXhAZ21haWwuY29tPgpEYXRlOiBTdW4sIDIzIEp1biAyMDI0IDEwOjQ0OjI5ICswNzAwClN1 YmplY3Q6IFtQQVRDSCAwNy80NF0gcXQ2LXF1aWNrdGltZWxpbmU6IHVwZGF0ZSB0byA2LjcuMi4K Ci0tLQogc3JjcGtncy9xdDYtcXVpY2t0aW1lbGluZS90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZp bGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvcXQ2LXF1aWNrdGltZWxpbmUvdGVtcGxhdGUgYi9zcmNwa2dzL3F0Ni1xdWlja3Rp bWVsaW5lL3RlbXBsYXRlCmluZGV4IGZjYjJlYzdlZjU5ZTk0Li41YzE5NDc2ZWEyMzBmMyAxMDA2 NDQKLS0tIGEvc3JjcGtncy9xdDYtcXVpY2t0aW1lbGluZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L3F0Ni1xdWlja3RpbWVsaW5lL3RlbXBsYXRlCkBAIC0xLDE2ICsxLDE2IEBACiAjIFRlbXBsYXRl IGZpbGUgZm9yICdxdDYtcXVpY2t0aW1lbGluZScKIHBrZ25hbWU9cXQ2LXF1aWNrdGltZWxpbmUK LXZlcnNpb249Ni42LjAKK3ZlcnNpb249Ni43LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNt YWtlCiBob3N0bWFrZWRlcGVuZHM9InBlcmwgcXQ2LWJhc2UgcXQ2LWRlY2xhcmF0aXZlLWhvc3Qt dG9vbHMiCi1tYWtlZGVwZW5kcz0icXQ2LWJhc2UtZGV2ZWwgcXQ2LWRlY2xhcmF0aXZlLWRldmVs IgorbWFrZWRlcGVuZHM9InF0Ni1iYXNlLXByaXZhdGUtZGV2ZWwgcXQ2LWRlY2xhcmF0aXZlLXBy aXZhdGUtZGV2ZWwiCiBzaG9ydF9kZXNjPSJDcm9zcy1wbGF0Zm9ybSBhcHBsaWNhdGlvbiBhbmQg VUkgZnJhbWV3b3JrIC0gcXVpY2t0aW1lbGluZSIKIG1haW50YWluZXI9IkpvaG4gPG1lQGpvaG5u eW5hdG9yLmRldj4iCiBsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBz Oi8vcXQuaW8vIgogZGlzdGZpbGVzPSJodHRwOi8vZG93bmxvYWQucXQuaW8vb2ZmaWNpYWxfcmVs ZWFzZXMvcXQvJHt2ZXJzaW9uJS4qfS8ke3ZlcnNpb24vcmMvLXJjfS9zdWJtb2R1bGVzL3F0cXVp Y2t0aW1lbGluZS1ldmVyeXdoZXJlLXNyYy0ke3ZlcnNpb24vcmMvLXJjfS50YXIueHoiCi1jaGVj a3N1bT0wNzllNTFkNDU3MmFlZDk5MjczMTYyOGIyNjlmOWMzZjljNjFhNmMzNzliYWU2YzM1NGM5 NDlhNmQ4OWJiNTkwCitjaGVja3N1bT0yMWVkZGVhMDFjZjA5NWNlZGUxMDM2MmVlYTRmYjg0MDJm ZmQwNjg2OGM4OGQ1MGE3NTdjOGMxZjZiMDcxOWViCiAKIGlmIFsgIiRYQlBTX0NIRUNLX1BLR1Mi IF07IHRoZW4KIAljb25maWd1cmVfYXJncz0iLURRVF9CVUlMRF9URVNUUz1PTiIKCkZyb20gYWM5 YjNmM2NjY2QxNDBkYzU2YTZkNDJmZDJlYzcwZDNmNjcxZTk1MCBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogPT9VVEYtOD9xPz1DND05MG89QzM9QTBuPTIwVHI9RTE9QkE9QTduPTIwQz1D Mz1CNG5nPTIwRGFuaD89CiA8Y29uZ2RhbmhxeEBnbWFpbC5jb20+CkRhdGU6IFN1biwgMjMgSnVu IDIwMjQgMTA6NDQ6MjkgKzA3MDAKU3ViamVjdDogW1BBVENIIDA4LzQ0XSBxdDYtc2hhZGVydG9v bHM6IHVwZGF0ZSB0byA2LjcuMi4KCi0tLQogc3JjcGtncy9xdDYtc2hhZGVydG9vbHMvdGVtcGxh dGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1zaGFkZXJ0b29scy90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvcXQ2LXNoYWRlcnRvb2xzL3RlbXBsYXRlCmluZGV4IDgxNWJmY2EzMDQ3ZjczLi4wMzU3 ZTFhYmQ0YzQ0MiAxMDA2NDQKLS0tIGEvc3JjcGtncy9xdDYtc2hhZGVydG9vbHMvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9xdDYtc2hhZGVydG9vbHMvdGVtcGxhdGUKQEAgLTEsMTcgKzEsMTcgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3F0Ni1zaGFkZXJ0b29scycKIHBrZ25hbWU9cXQ2LXNoYWRl cnRvb2xzCi12ZXJzaW9uPTYuNi4wCit2ZXJzaW9uPTYuNy4yCiByZXZpc2lvbj0xCiBidWlsZF9z dHlsZT1jbWFrZQogaG9zdG1ha2VkZXBlbmRzPSJwZXJsIHF0Ni1iYXNlIgotbWFrZWRlcGVuZHM9 InF0Ni1iYXNlLWRldmVsIgorbWFrZWRlcGVuZHM9InF0Ni1iYXNlLXByaXZhdGUtZGV2ZWwiCiBk ZXBlbmRzPSJsaWJxdDZzaGFkZXJ0b29scz49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKIHNob3J0 X2Rlc2M9IkNyb3NzLXBsYXRmb3JtIGFwcGxpY2F0aW9uIGFuZCBVSSBmcmFtZXdvcmsgLSBzaGFk ZXJ0b29scyIKIG1haW50YWluZXI9IkpvaG4gPG1lQGpvaG5ueW5hdG9yLmRldj4iCiBsaWNlbnNl PSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vcXQuaW8vIgogZGlzdGZpbGVz PSJodHRwOi8vZG93bmxvYWQucXQuaW8vb2ZmaWNpYWxfcmVsZWFzZXMvcXQvJHt2ZXJzaW9uJS4q fS8ke3ZlcnNpb259L3N1Ym1vZHVsZXMvcXRzaGFkZXJ0b29scy1ldmVyeXdoZXJlLXNyYy0ke3Zl cnNpb259LnRhci54eiIKLWNoZWNrc3VtPTM2OTAzMjdkYzU1MDE0NGI4MTAyYmUyYmI3ZjZkYzk5 NWNjYmUzNTg0MDQxMDk0YWQwMjFhODM3MzdlZjk4NzUKK2NoZWNrc3VtPWVkZmEzNGMwYWM4YzAw ZmNhYTk0OWRmMWQ4ZTdhNzdkODlkYWRkNjM4NmU2ODNjZTZjM2UzYjExN2UyZjdjYzEKIAogaWYg WyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCiAJY29uZmlndXJlX2FyZ3M9Ii1EUVRfRk9SQ0VfQlVJ TERfVE9PTFM9dHJ1ZSIKCkZyb20gODExMjkyYmY4NWYyYjg4OWEwOTczODA2MDE4NGIwNDgwNjVi OWFhMyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogPT9VVEYtOD9xPz1DND05MG89QzM9 QTBuPTIwVHI9RTE9QkE9QTduPTIwQz1DMz1CNG5nPTIwRGFuaD89CiA8Y29uZ2RhbmhxeEBnbWFp bC5jb20+CkRhdGU6IFN1biwgMjMgSnVuIDIwMjQgMTA6NDQ6MjkgKzA3MDAKU3ViamVjdDogW1BB VENIIDA5LzQ0XSBxdDYtc3ZnOiB1cGRhdGUgdG8gNi43LjIuCgotLS0KIC4uLm51bGxwdHItZGVy ZWZlcmVuY2Utd2l0aC1pbnZhbGlkLVNWRy5wYXRjaCB8IDI5IC0tLS0tLS0tLS0tLS0tLS0tLS0K IHNyY3BrZ3MvcXQ2LXN2Zy90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgICB8ICA2ICsrLS0K IDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzMiBkZWxldGlvbnMoLSkKIGRlbGV0 ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3F0Ni1zdmcvcGF0Y2hlcy9GaXgtbnVsbHB0ci1kZXJlZmVy ZW5jZS13aXRoLWludmFsaWQtU1ZHLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdDYtc3Zn L3BhdGNoZXMvRml4LW51bGxwdHItZGVyZWZlcmVuY2Utd2l0aC1pbnZhbGlkLVNWRy5wYXRjaCBi L3NyY3BrZ3MvcXQ2LXN2Zy9wYXRjaGVzL0ZpeC1udWxscHRyLWRlcmVmZXJlbmNlLXdpdGgtaW52 YWxpZC1TVkcucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDlmMGRlMTcyZTY1 MmE4Li4wMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3F0Ni1zdmcvcGF0Y2hlcy9GaXgtbnVs bHB0ci1kZXJlZmVyZW5jZS13aXRoLWludmFsaWQtU1ZHLnBhdGNoCisrKyAvZGV2L251bGwKQEAg LTEsMjkgKzAsMCBAQAotRnJvbSBlZGM4Y2E3ZjFlNDUzMDIyMjNiNGI3OTYyYTU3YTMwOTE4Zjg0 YzhkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogUGF1bCBPbGF2IFR2ZXRlIDxwYXVs LnR2ZXRlQHF0LmlvPgotRGF0ZTogVHVlLCAxMCBPY3QgMjAyMyAxMDoxNDoyMiArMDIwMAotU3Vi amVjdDogRml4IG51bGxwdHIgZGVyZWZlcmVuY2Ugd2l0aCBpbnZhbGlkIFNWRwotCi1GaXhlczog UVRCVUctMTE3OTQ0Ci1QaWNrLXRvOiA2LjYgNi41IDYuMgotQ2hhbmdlLUlkOiBJOTA1OWRjMjhj NzUwZmMwNTg1ZjFmYjk4MjE1MmIyMTFjMzIzYzZjZAotUmV2aWV3ZWQtYnk6IEVza2lsIEFicmFo YW1zZW4gQmxvbWZlbGR0IDxlc2tpbC5hYnJhaGFtc2VuLWJsb21mZWxkdEBxdC5pbz4KLS0tLQot IHNyYy9zdmcvcXN2Z2hhbmRsZXIuY3BwIHwgMiArKwotIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2Vy dGlvbnMoKykKLQotZGlmZiAtLWdpdCBhL3NyYy9zdmcvcXN2Z2hhbmRsZXIuY3BwIGIvc3JjL3N2 Zy9xc3ZnaGFuZGxlci5jcHAKLWluZGV4IGU2ODc3YWMuLjFjZmZiYzMgMTAwNjQ0Ci0tLS0gYS9z cmMvc3ZnL3FzdmdoYW5kbGVyLmNwcAotKysrIGIvc3JjL3N2Zy9xc3ZnaGFuZGxlci5jcHAKLUBA IC0zNjIwLDYgKzM2MjAsOCBAQCB2b2lkIFFTdmdIYW5kbGVyOjppbml0KCkKLSAKLSBzdGF0aWMg Ym9vbCBkZXRlY3RDeWNsZXMoY29uc3QgUVN2Z05vZGUgKm5vZGUsIFFMaXN0PGNvbnN0IFFTdmdV c2UgKj4gYWN0aXZlID0ge30pCi0gewotKyAgICBpZiAoUV9VTkxJS0VMWSghbm9kZSkpCi0rICAg ICAgICByZXR1cm4gZmFsc2U7Ci0gICAgIHN3aXRjaCAobm9kZS0+dHlwZSgpKSB7Ci0gICAgIGNh c2UgUVN2Z05vZGU6OkRPQzoKLSAgICAgY2FzZSBRU3ZnTm9kZTo6RzoKLS0tIAotY2dpdCB2MS4y LjMKLQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdDYtc3ZnL3RlbXBsYXRlIGIvc3JjcGtncy9xdDYt c3ZnL3RlbXBsYXRlCmluZGV4IDhmNTQ1ZjhhMzA5Yjc5Li5mZWNmMDY1NWZkYjgzMiAxMDA2NDQK LS0tIGEvc3JjcGtncy9xdDYtc3ZnL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcXQ2LXN2Zy90ZW1w bGF0ZQpAQCAtMSwxNiArMSwxNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncXQ2LXN2ZycKIHBr Z25hbWU9cXQ2LXN2ZwotdmVyc2lvbj02LjYuMAordmVyc2lvbj02LjcuMgogcmV2aXNpb249MQog YnVpbGRfc3R5bGU9Y21ha2UKIGhvc3RtYWtlZGVwZW5kcz0icXQ2LWJhc2UgcGVybCIKLW1ha2Vk ZXBlbmRzPSJxdDYtYmFzZS1kZXZlbCIKK21ha2VkZXBlbmRzPSJxdDYtYmFzZS1wcml2YXRlLWRl dmVsIgogc2hvcnRfZGVzYz0iQ3Jvc3MtcGxhdGZvcm0gYXBwbGljYXRpb24gYW5kIFVJIGZyYW1l d29yayAoUVQ2KSAtIHF0Ni1zdmcgY29tcG9uZW50IgogbWFpbnRhaW5lcj0iSm9obiA8bWVAam9o bm55bmF0b3IuZGV2PiIKIGxpY2Vuc2U9IkdQTC0zLjAtb25seSB3aXRoIFF0LUdQTC1leGNlcHRp b24tMS4wLCBHUEwtMi4wLW9yLWxhdGVyLCBMR1BMLTMuMC1vbmx5IgogaG9tZXBhZ2U9Imh0dHBz Oi8vcXQuaW8vIgogZGlzdGZpbGVzPSJodHRwOi8vZG93bmxvYWQucXQuaW8vb2ZmaWNpYWxfcmVs ZWFzZXMvcXQvJHt2ZXJzaW9uJS4qfS8ke3ZlcnNpb259L3N1Ym1vZHVsZXMvcXRzdmctZXZlcnl3 aGVyZS1zcmMtJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0zM2RhMjVmZWY1MTEwMmY1NjQ2 MjRhN2VhM2U1N2NiNGEwYTMxYjdiNDQ3ODNkMWFmNTc0OWFjMzZkM2M3MmRlCitjaGVja3N1bT1m YjBkMTI4NmEzNWJlMzU4M2ZlZTM0YWViNTg0M2M5NDcxOWUwNzE5M2JkZjFkNGQ4YjBkYzE0MDA5 Y2FlZjAxCiAKIGlmIFsgIiRYQlBTX0NIRUNLX1BLR1MiIF07IHRoZW4KIAljb25maWd1cmVfYXJn cz0iLURRVF9CVUlMRF9URVNUUz1PTiIKCkZyb20gMDA4NjVjMTQ5MDMyMTExOWMzNTAxODQwODQ2 MDMxZDkxZDhmYWU4MyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogPT9VVEYtOD9xPz1D ND05MG89QzM9QTBuPTIwVHI9RTE9QkE9QTduPTIwQz1DMz1CNG5nPTIwRGFuaD89CiA8Y29uZ2Rh bmhxeEBnbWFpbC5jb20+CkRhdGU6IFN1biwgMjMgSnVuIDIwMjQgMTA6NDQ6MzAgKzA3MDAKU3Vi amVjdDogW1BBVENIIDEwLzQ0XSBxdDYtdG9vbHM6IHVwZGF0ZSB0byA2LjcuMi4KCi0tLQogc3Jj cGtncy9xdDYtdG9vbHMtcHJpdmF0ZS1kZXZlbCAgICAgICAgICAgICAgIHwgIDEgKwogc3JjcGtn cy9xdDYtdG9vbHMvcGF0Y2hlcy9ndW1iby5wYXRjaCAgICAgICAgIHwgMTUgLS0tLQogLi4uL3F0 Ni10b29scy9wYXRjaGVzL25vLWxpdGVodG1sLXRlc3QucGF0Y2ggIHwgMTEgLS0tCiBzcmNwa2dz L3F0Ni10b29scy9wYXRjaGVzL3Fkb2MtbG9jYXRpb24ucGF0Y2ggfCA4OSArKysrKysrKysrKysr KysrLS0tCiBzcmNwa2dzL3F0Ni10b29scy90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgfCAz NSArKysrKystLQogNSBmaWxlcyBjaGFuZ2VkLCAxMDkgaW5zZXJ0aW9ucygrKSwgNDIgZGVsZXRp b25zKC0pCiBjcmVhdGUgbW9kZSAxMjAwMDAgc3JjcGtncy9xdDYtdG9vbHMtcHJpdmF0ZS1kZXZl bAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcXQ2LXRvb2xzL3BhdGNoZXMvZ3VtYm8ucGF0 Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3F0Ni10b29scy9wYXRjaGVzL25vLWxpdGVo dG1sLXRlc3QucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni10b29scy1wcml2YXRlLWRl dmVsIGIvc3JjcGtncy9xdDYtdG9vbHMtcHJpdmF0ZS1kZXZlbApuZXcgZmlsZSBtb2RlIDEyMDAw MAppbmRleCAwMDAwMDAwMDAwMDAwMC4uZDJkZTU5YWJhNDUzNWYKLS0tIC9kZXYvbnVsbAorKysg Yi9zcmNwa2dzL3F0Ni10b29scy1wcml2YXRlLWRldmVsCkBAIC0wLDAgKzEgQEAKK3F0Ni10b29s cwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LXRv b2xzL3BhdGNoZXMvZ3VtYm8ucGF0Y2ggYi9zcmNwa2dzL3F0Ni10b29scy9wYXRjaGVzL2d1bWJv LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0MmM4ZTQwMjAzYzI4ZS4uMDAw MDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9xdDYtdG9vbHMvcGF0Y2hlcy9ndW1iby5wYXRjaAor KysgL2Rldi9udWxsCkBAIC0xLDE1ICswLDAgQEAKLS0tLSBxdHRvb2xzLWV2ZXJ5d2hlcmUtc3Jj LTYuNC4wL3NyYy9hc3Npc3RhbnQvcWxpdGVodG1sL3NyYy9DTWFrZUxpc3RzLnR4dAkyMDIyLTA5 LTIzIDEzOjUwOjQwLjAwMDAwMDAwMCArMDIwMAotKysrIC0JMjAyMi0xMS0wMyAwMToxNzoyMS4y NjIxMDg0ODQgKzAxMDAKLUBAIC0zMCwxMiArMzAsNiBAQAotICAgICAgIFBST1BFUlRJRVMKLSAg ICAgICAgIFFUX0NPTVBJTEVfT1BUSU9OU19ESVNBQkxFX1dBUk5JTkdTIE9OCi0gICAgICkKLS0g ICAgc2V0X3RhcmdldF9wcm9wZXJ0aWVzKAotLSAgICAgIGd1bWJvCi0tICAgICAgUFJPUEVSVElF UwotLSAgICAgICAgUVRfQ09NUElMRV9PUFRJT05TX0RJU0FCTEVfV0FSTklOR1MgT04KLS0gICAg KQotLQotICAgICBzZXQoQ01BS0VfUE9TSVRJT05fSU5ERVBFTkRFTlRfQ09ERSAiJHtPUklHX0ZQ SUN9IikKLSAgICAgc2V0KEJVSUxEX1NIQVJFRF9MSUJTICR7T1JJR19CVUlMRF9TSEFSRURfTElC U30pCi0gICAgICMgZm9yY2Ugb3B0aW1pemVkIGxpdGVodG1sIGV2ZW4gaW4gZGVidWcKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvcXQ2LXRvb2xzL3BhdGNoZXMvbm8tbGl0ZWh0bWwtdGVzdC5wYXRjaCBi L3NyY3BrZ3MvcXQ2LXRvb2xzL3BhdGNoZXMvbm8tbGl0ZWh0bWwtdGVzdC5wYXRjaApkZWxldGVk IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMmNiZmFjNWRlODJkNTQuLjAwMDAwMDAwMDAwMDAwCi0t LSBhL3NyY3BrZ3MvcXQ2LXRvb2xzL3BhdGNoZXMvbm8tbGl0ZWh0bWwtdGVzdC5wYXRjaAorKysg L2Rldi9udWxsCkBAIC0xLDExICswLDAgQEAKLS0tLSBxdDYtdG9vbHMtNi40LjIub3JpZy9zcmMv YXNzaXN0YW50L3FsaXRlaHRtbC9zcmMvM3JkcGFydHkvbGl0ZWh0bWwvQ01ha2VMaXN0cy50eHQK LSsrKyBxdDYtdG9vbHMtNi40LjIvc3JjL2Fzc2lzdGFudC9xbGl0ZWh0bWwvc3JjLzNyZHBhcnR5 L2xpdGVodG1sL0NNYWtlTGlzdHMudHh0Ci1AQCAtMTkxLDcgKzE5MSw3IEBAIHNldF9zb3VyY2Vf ZmlsZXNfcHJvcGVydGllcygke0NNQUtFX0NVUlIKLSAKLSAjIFRlc3RzCi0gCi0taWYgKEJVSUxE X1RFU1RJTkcpCi0raWYgKEZBTFNFKQotICAgICBpbmNsdWRlKEZldGNoQ29udGVudCkKLSAgICAg RmV0Y2hDb250ZW50X0RlY2xhcmUoCi0gICAgICAgZ29vZ2xldGVzdApkaWZmIC0tZ2l0IGEvc3Jj cGtncy9xdDYtdG9vbHMvcGF0Y2hlcy9xZG9jLWxvY2F0aW9uLnBhdGNoIGIvc3JjcGtncy9xdDYt dG9vbHMvcGF0Y2hlcy9xZG9jLWxvY2F0aW9uLnBhdGNoCmluZGV4IDZkN2MwZWEzNDUzNzRlLi44 ZTRkZjU2YTAwYjQwNCAxMDA2NDQKLS0tIGEvc3JjcGtncy9xdDYtdG9vbHMvcGF0Y2hlcy9xZG9j LWxvY2F0aW9uLnBhdGNoCisrKyBiL3NyY3BrZ3MvcXQ2LXRvb2xzL3BhdGNoZXMvcWRvYy1sb2Nh dGlvbi5wYXRjaApAQCAtMSwxNCArMSw4MyBAQAotLS0tIHF0Ni10b29scy02LjQuMi5vcmlnL3Rl c3RzL2F1dG8vcWRvYy9nZW5lcmF0ZWRvdXRwdXQvdHN0X2dlbmVyYXRlZG91dHB1dC5jcHAKLSsr KyBxdDYtdG9vbHMtNi40LjIvdGVzdHMvYXV0by9xZG9jL2dlbmVyYXRlZG91dHB1dC90c3RfZ2Vu ZXJhdGVkb3V0cHV0LmNwcAotQEAgLTc0LDcgKzc0LDEwIEBAIHByaXZhdGU6Ci0gdm9pZCB0c3Rf Z2VuZXJhdGVkT3V0cHV0Ojppbml0VGVzdENhc2UoKQorLS0tIGEvdGVzdHMvYXV0by9saW5ndWlz dC9sY29udmVydC90c3RfbGNvbnZlcnQuY3BwCisrKysgYi90ZXN0cy9hdXRvL2xpbmd1aXN0L2xj b252ZXJ0L3RzdF9sY29udmVydC5jcHAKK0BAIC00LDYgKzQsMTYgQEAKKyAjaW5jbHVkZSA8UXRU ZXN0L1F0VGVzdD4KKyAjaW5jbHVkZSA8UXRDb3JlL1FGaWxlPgorIAorK25hbWVzcGFjZSB7Cisr UVN0cmluZyB4YmlucGF0aCgpCisreworKyAgICBjaGFyICpidWlsZF9iaW5wYXRoID0gZ2V0ZW52 KCJRVF9CVUlMRF9CSU5fUEFUSCIpOworKyAgICBpZiAoYnVpbGRfYmlucGF0aCAmJiAqYnVpbGRf YmlucGF0aCkKKysgICAgICAgIHJldHVybiBidWlsZF9iaW5wYXRoOworKyAgICByZXR1cm4gUUxp YnJhcnlJbmZvOjpwYXRoKFFMaWJyYXJ5SW5mbzo6QmluYXJpZXNQYXRoKTsKKyt9CisrfQorKwor IGNsYXNzIHRzdF9sY29udmVydCA6IHB1YmxpYyBRT2JqZWN0CisgeworICAgICBRX09CSkVDVAor QEAgLTExLDcgKzIxLDcgQEAgY2xhc3MgdHN0X2xjb252ZXJ0IDogcHVibGljIFFPYmplY3QKKyBw dWJsaWM6CisgICAgIHRzdF9sY29udmVydCgpCisgICAgICAgOiBkYXRhRGlyKFFGSU5EVEVTVERB VEEoImRhdGEvIikpCistICAgICAgLCBsY29udmVydChRTGlicmFyeUluZm86OnBhdGgoUUxpYnJh cnlJbmZvOjpCaW5hcmllc1BhdGgpICsgIi9sY29udmVydCIpIHt9CisrICAgICAgLCBsY29udmVy dCh4YmlucGF0aCgpICsgUVN0cmluZ0xpdGVyYWwoIi9sY29udmVydCIpKSB7fQorIAorIHByaXZh dGUgc2xvdHM6CisgICAgIHZvaWQgaW5pdFRlc3RDYXNlKCk7CistLS0gYS90ZXN0cy9hdXRvL2xp bmd1aXN0L2xyZWxlYXNlL3RzdF9scmVsZWFzZS5jcHAKKysrKyBiL3Rlc3RzL2F1dG8vbGluZ3Vp c3QvbHJlbGVhc2UvdHN0X2xyZWxlYXNlLmNwcAorQEAgLTgsMTMgKzgsMjIgQEAKKyAKKyAjaW5j bHVkZSA8UXRUZXN0L1F0VGVzdD4KKyAKKytuYW1lc3BhY2UgeworK1FTdHJpbmcgeGJpbnBhdGgo KQorK3sKKysgICAgY2hhciAqYnVpbGRfYmlucGF0aCA9IGdldGVudigiUVRfQlVJTERfQklOX1BB VEgiKTsKKysgICAgaWYgKGJ1aWxkX2JpbnBhdGggJiYgKmJ1aWxkX2JpbnBhdGgpCisrICAgICAg ICByZXR1cm4gYnVpbGRfYmlucGF0aDsKKysgICAgcmV0dXJuIFFMaWJyYXJ5SW5mbzo6cGF0aChR TGlicmFyeUluZm86OkJpbmFyaWVzUGF0aCk7CisrfQorK30KKyBjbGFzcyB0c3RfbHJlbGVhc2Ug OiBwdWJsaWMgUU9iamVjdAorIHsKKyAgICAgUV9PQkpFQ1QKKyAKKyBwdWJsaWM6CisgICAgIHRz dF9scmVsZWFzZSgpCistICAgICAgICAgOiBscmVsZWFzZShRTGlicmFyeUluZm86OnBhdGgoUUxp YnJhcnlJbmZvOjpCaW5hcmllc1BhdGgpICsgIi9scmVsZWFzZSIpCisrICAgICAgICAgOiBscmVs ZWFzZSh4YmlucGF0aCgpICsgUVN0cmluZ0xpdGVyYWwoIi9scmVsZWFzZSIpKQorICAgICAgICAg ICwgZGF0YURpcihRRklORFRFU1REQVRBKCJ0ZXN0ZGF0YS8iKSkKKyAgICAge30KKyAKKy0tLSBh L3Rlc3RzL2F1dG8vbGluZ3Vpc3QvbHVwZGF0ZS90c3RfbHVwZGF0ZS5jcHAKKysrKyBiL3Rlc3Rz L2F1dG8vbGluZ3Vpc3QvbHVwZGF0ZS90c3RfbHVwZGF0ZS5jcHAKK0BAIC00NCw3ICs0NCwxMCBA QCBwcml2YXRlOgorIAorIHRzdF9sdXBkYXRlOjp0c3RfbHVwZGF0ZSgpCisgeworLSAgICBRU3Ry aW5nIGJpblBhdGggPSBRTGlicmFyeUluZm86OnBhdGgoUUxpYnJhcnlJbmZvOjpCaW5hcmllc1Bh dGgpOworKyAgICBhdXRvIGJpblBhdGggPSBRTGlicmFyeUluZm86OnBhdGgoUUxpYnJhcnlJbmZv OjpCaW5hcmllc1BhdGgpOworKyAgICBjaGFyICpidWlsZF9iaW5wYXRoID0gZ2V0ZW52KCJRVF9C VUlMRF9CSU5fUEFUSCIpOworKyAgICBpZiAoYnVpbGRfYmlucGF0aCAmJiAqYnVpbGRfYmlucGF0 aCkKKysgICAgICAgIGJpblBhdGggPSBidWlsZF9iaW5wYXRoOworICAgICBtX2NtZEx1cGRhdGUg PSBiaW5QYXRoICsgUUxhdGluMVN0cmluZygiL2x1cGRhdGUiKTsKKyAgICAgbV9iYXNlUGF0aCA9 IFFGSU5EVEVTVERBVEEoInRlc3RkYXRhLyIpOworIH0KKy0tLSBhL3Rlc3RzL2F1dG8vcXRkaWFn L3RzdF9xdGRpYWcuY3BwCisrKysgYi90ZXN0cy9hdXRvL3F0ZGlhZy90c3RfcXRkaWFnLmNwcAor QEAgLTIxLDcgKzIxLDExIEBAIHByaXZhdGU6CisgCisgdm9pZCB0c3RfUXREaWFnOjppbml0VGVz dENhc2UoKQogIHsKLSAgICAgLy8gQnVpbGQgdGhlIHBhdGggdG8gdGhlIFFEb2MgYmluYXJ5IHRo ZSBzYW1lIHdheSBtb2MgdGVzdHMgZG8gZm9yIG1vYy4KLS0gICAgY29uc3QgYXV0byBiaW5wYXRo ID0gUUxpYnJhcnlJbmZvOjpwYXRoKFFMaWJyYXJ5SW5mbzo6QmluYXJpZXNQYXRoKTsKKy0gICAg UVN0cmluZyBiaW5hcnkgPSBRTGlicmFyeUluZm86OnBhdGgoUUxpYnJhcnlJbmZvOjpCaW5hcmll c1BhdGgpICsgUVN0cmluZ0xpdGVyYWwoIi9xdGRpYWciKTsKICsgICAgYXV0byBiaW5wYXRoID0g UUxpYnJhcnlJbmZvOjpwYXRoKFFMaWJyYXJ5SW5mbzo6QmluYXJpZXNQYXRoKTsKICsgICAgY2hh ciAqYnVpbGRfYmlucGF0aCA9IGdldGVudigiUVRfQlVJTERfQklOX1BBVEgiKTsKICsgICAgaWYg KGJ1aWxkX2JpbnBhdGggJiYgKmJ1aWxkX2JpbnBhdGgpCi0rICAgIAkgICAgYmlucGF0aCA9IGJ1 aWxkX2JpbnBhdGg7Ci0gICAgIGNvbnN0IGF1dG8gZXh0ZW5zaW9uID0gUVN5c0luZm86OnByb2R1 Y3RUeXBlKCkgPT0gIndpbmRvd3MiID8gIi5leGUiIDogIiI7Ci0gICAgIG1fcWRvYyA9IGJpbnBh dGggKyBRTGF0aW4xU3RyaW5nKCIvcWRvYyIpICsgZXh0ZW5zaW9uOwotICAgICBtX2V4cGVjdGVk RGlyLnNldFBhdGgoUUZJTkRURVNUREFUQSgiZXhwZWN0ZWRfb3V0cHV0IikpOworKyAgICAgICAg YmlucGF0aCA9IGJ1aWxkX2JpbnBhdGg7CisrICAgIFFTdHJpbmcgYmluYXJ5ID0gYmlucGF0aCAr IFFTdHJpbmdMaXRlcmFsKCIvcXRkaWFnIik7CisgIyAgaWZkZWYgUV9PU19XSU4KKyAgICAgYmlu YXJ5ICs9IFFTdHJpbmdMaXRlcmFsKCIuZXhlIik7CisgIyAgZW5kaWYKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvcXQ2LXRvb2xzL3RlbXBsYXRlIGIvc3JjcGtncy9xdDYtdG9vbHMvdGVtcGxhdGUKaW5k ZXggOTg2ZGI1ZGZmZDIzOTMuLjVmZGU0NTQzOWNkYzRhIDEwMDY0NAotLS0gYS9zcmNwa2dzL3F0 Ni10b29scy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3F0Ni10b29scy90ZW1wbGF0ZQpAQCAtMSwz MyArMSw0MiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncXQ2LXRvb2xzJwogcGtnbmFtZT1xdDYt dG9vbHMKLXZlcnNpb249Ni42LjAKLXJldmlzaW9uPTIKK3ZlcnNpb249Ni43LjIKK3JldmlzaW9u PTEKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURFWFRFUk5BTF9HVU1CTz1P TiAtRExJVEVIVE1MX1VURjg9T04gLURVU0VfSUNVPU9OCiAgLURRVF9CVUlMRF9TSEFSRURfTElC Uz1PTiAtRFFUX0ZFQVRVUkVfYXNzaXN0YW50PU9OCi0gLURRVF9GRUFUVVJFX3BpeGVsdG9vbD1P TgorIC1EUVRfRkVBVFVSRV9waXhlbHRvb2w9T04gLURMSVRFSFRNTF9CVUlMRF9URVNUSU5HPU9G RgogIC1EUVRfRkVBVFVSRV9kaXN0YW5jZWZpZWxkZ2VuZXJhdG9yPU9OIgogaG9zdG1ha2VkZXBl bmRzPSJxdDYtYmFzZSBwZXJsIHF0Ni1wbHVnaW4tc3FsaXRlIGNsYW5nMTcgY2xhbmctdG9vbHMt ZXh0cmExNwogIHF0Ni1kZWNsYXJhdGl2ZS1ob3N0LXRvb2xzIgotbWFrZWRlcGVuZHM9InF0Ni1i YXNlLWRldmVsIHF0Ni1wbHVnaW4tc3FsaXRlIHF0Ni1kZWNsYXJhdGl2ZS1kZXZlbAorbWFrZWRl cGVuZHM9InF0Ni1iYXNlLXByaXZhdGUtZGV2ZWwgcXQ2LXBsdWdpbi1zcWxpdGUgcXQ2LWRlY2xh cmF0aXZlLXByaXZhdGUtZGV2ZWwKICBndW1iby1wYXJzZXItZGV2ZWwgaWN1LWRldmVsIGxsdm0x Ny1kZXZlbCIKIHNob3J0X2Rlc2M9IkNyb3NzLXBsYXRmb3JtIGFwcGxpY2F0aW9uIGFuZCBVSSBm cmFtZXdvcmsgKFFUNikgLSBxdDYtdG9vbHMgY29tcG9uZW50IgogbWFpbnRhaW5lcj0iSm9obiA8 bWVAam9obm55bmF0b3IuZGV2PiIKIGxpY2Vuc2U9ImN1c3RvbTpHUEwtMy4wLW9ubHktd2l0aC1R dC1HUEwtZXhjZXB0aW9uLTEuMCwgTEdQTC0zLjAtb25seSwgR1BMLTIuMC1vci1sYXRlciIKIGhv bWVwYWdlPSJodHRwczovL3F0LmlvLyIKIGRpc3RmaWxlcz0iaHR0cDovL2Rvd25sb2FkLnF0Lmlv L29mZmljaWFsX3JlbGVhc2VzL3F0LyR7dmVyc2lvbiUuKn0vJHt2ZXJzaW9ufS9zdWJtb2R1bGVz L3F0dG9vbHMtZXZlcnl3aGVyZS1zcmMtJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT00ZTlm ZWViYzE0MmJiYjZlNDUzZTFkYzMyNzdlMDllYzQ1YzhlZjA4MWI1ZWUyYTAyOWU2Njg0YjU5MDVi YTk5CitjaGVja3N1bT01OGU4NTVhZDFiMjUzMzA5NDcyNmM4YTQyNTc2NmI2M2EwNGEwZWVkZTJl ZDg1MDg2ODYwZTU0NTkzYWE0YjJhCiAKIGlmIFsgIiRDUk9TU19CVUlMRCIgXTsgdGhlbgogCWNv bmZpZ3VyZV9hcmdzKz0iIC1EUVRfRk9SQ0VfQlVJTERfVE9PTFM9VFJVRSIKIAlob3N0bWFrZWRl cGVuZHMrPSIgcXQ2LXRvb2xzIgogZmkKLQorY2FzZSAiJFhCUFNfVEFSR0VUX01BQ0hJTkUiIGlu CisJeDg2XzY0KnxhYXJjaDY0KikKKwkJbWFrZWRlcGVuZHMrPSIgbGlib21wLWRldmVsIiA7Owor ZXNhYwogCiBpZiBbICIkWEJQU19DSEVDS19QS0dTIiBdOyB0aGVuCiAJY29uZmlndXJlX2FyZ3Mr PSIgLURRVF9CVUlMRF9URVNUUz1PTiIKIGZpCiAKK3N1YnBhY2thZ2VzPSJxdDYtZGVzaWduZXIg cXQ2LWhlbHAgcXQ2LXVpLXRvb2xzIHF0Ni10b29scy1wcml2YXRlLWRldmVsIHF0Ni10b29scy1k ZXZlbCIKKworcG9zdF9wYXRjaCgpIHsKKwl2c2VkIC1pIC1lICdzL2d1bWJvL2xpdGVodG1sLycg c3JjL2Fzc2lzdGFudC9xbGl0ZWh0bWwvc3JjL0NNYWtlTGlzdHMudHh0Cit9CisKIHBvc3RfaW5z dGFsbCgpIHsKIAl2bGljZW5zZSBMSUNFTlNFUy9RdC1HUEwtZXhjZXB0aW9uLTEuMC50eHQKIH0K QEAgLTY1LDYgKzc0LDIwIEBAIHF0Ni11aS10b29sc19wYWNrYWdlKCkgewogCX0KIH0KIAorcXQ2 LXRvb2xzLXByaXZhdGUtZGV2ZWxfcGFja2FnZSgpIHsKKwlkZXBlbmRzPSJxdDYtdG9vbHMtZGV2 ZWw+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCisJc2hvcnRfZGVzYys9IiAtIHByaXZhdGUgZGV2 ZWxvcG1lbnQgZmlsZXMiCisJcGtnX2luc3RhbGwoKSB7CisJCWZvciBkaXIgaW4gJChjZCAke0RF U1RESVJ9ICYmIGZpbmQgdXNyL2luY2x1ZGUgLXR5cGUgZCAtbmFtZSBwcml2YXRlKTsgZG8KKwkJ CXZtb3ZlICIkZGlyIgorCQlkb25lCisJCXZtb3ZlICJ1c3IvbGliL2NtYWtlLypQcml2YXRlIgor CQl2bW92ZSAidXNyL2xpYi9xdDYvbWV0YXR5cGVzLypwcml2YXRlXypfbWV0YXR5cGVzLmpzb24i CisJCXZtb3ZlICJ1c3IvbGliL3F0Ni9ta3NwZWNzL21vZHVsZXMvKl9wcml2YXRlLnByaSIKKwkJ dm1vdmUgInVzci9saWIvcXQ2L21vZHVsZXMvKlByaXZhdGUuanNvbiIKKwl9Cit9CisKIHF0Ni10 b29scy1kZXZlbF9wYWNrYWdlKCkgewogCWRlcGVuZHM9IiR7c291cmNlcGtnfT49JHt2ZXJzaW9u fV8ke3JldmlzaW9ufSBxdDYtYmFzZS1kZXZlbD49JHt2ZXJzaW9ufV8xIgogCXNob3J0X2Rlc2Mr PSIgLSBkZXZlbG9wbWVudCBmaWxlcyIKCkZyb20gZmViZGM5MGY1NTNkZDNlOWIyYzQzYmM5MGYy NDljMDFhNGM1YTRjYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogPT9VVEYtOD9xPz1D ND05MG89QzM9QTBuPTIwVHI9RTE9QkE9QTduPTIwQz1DMz1CNG5nPTIwRGFuaD89CiA8Y29uZ2Rh bmhxeEBnbWFpbC5jb20+CkRhdGU6IFN1biwgMjMgSnVuIDIwMjQgMTA6NDQ6MzAgKzA3MDAKU3Vi amVjdDogW1BBVENIIDExLzQ0XSBxdDYtdHJhbnNsYXRpb25zOiB1cGRhdGUgdG8gNi43LjIuCgot LS0KIHNyY3BrZ3MvcXQ2LXRyYW5zbGF0aW9ucy90ZW1wbGF0ZSB8IDE1ICsrKysrKysrKysrLS0t LQogMSBmaWxlIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9xdDYtdHJhbnNsYXRpb25zL3RlbXBsYXRlIGIvc3JjcGtncy9xdDYt dHJhbnNsYXRpb25zL3RlbXBsYXRlCmluZGV4IDg1ZjgzZDBhNDg3OWNjLi4zYTg3ZGY2MjdhMmYy ZSAxMDA2NDQKLS0tIGEvc3JjcGtncy9xdDYtdHJhbnNsYXRpb25zL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3MvcXQ2LXRyYW5zbGF0aW9ucy90ZW1wbGF0ZQpAQCAtMSwxMyArMSwyMCBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAncXQ2LXRyYW5zbGF0aW9ucycKIHBrZ25hbWU9cXQ2LXRyYW5zbGF0aW9u cwotdmVyc2lvbj02LjYuMAordmVyc2lvbj02LjcuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9 Y21ha2UKLWhvc3RtYWtlZGVwZW5kcz0icXQ2LWJhc2UgcXQ2LXRvb2xzIHBlcmwiCi1tYWtlZGVw ZW5kcz0icXQ2LWJhc2UtZGV2ZWwgcXQ2LXRvb2xzLWRldmVsIgoraG9zdG1ha2VkZXBlbmRzPSJx dDYtYmFzZS1kZXZlbCBxdDYtdG9vbHMtZGV2ZWwgcGVybCIKIHNob3J0X2Rlc2M9IkNyb3NzLXBs YXRmb3JtIGFwcGxpY2F0aW9uIGFuZCBVSSBmcmFtZXdvcmsgLSB0cmFuc2xhdGlvbnMiCiBtYWlu dGFpbmVyPSJKb2huIDxtZUBqb2hubnluYXRvci5kZXY+IgogbGljZW5zZT0iR1BMLTMuMC1vbmx5 IHdpdGggUXQtR1BMLWV4Y2VwdGlvbi0xLjAiCiBob21lcGFnZT0iaHR0cHM6Ly9xdC5pby8iCiBk aXN0ZmlsZXM9Imh0dHA6Ly9kb3dubG9hZC5xdC5pby9vZmZpY2lhbF9yZWxlYXNlcy9xdC8ke3Zl cnNpb24lLip9LyR7dmVyc2lvbn0vc3VibW9kdWxlcy9xdHRyYW5zbGF0aW9ucy1ldmVyeXdoZXJl LXNyYy0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWEwZDg5YTIzNmY2NGI4MTBlYjBmZTRh ZTFlOTBkYjIyYjBlODYyNjM1MjFiMzVmODllNjlmMTM5MjgxNTA3OGMKK2NoZWNrc3VtPTk4NDU3 ODBiNWRjMWI3Mjc5ZDU3ODM2ZGI1MWFlYWYyZTRhMTE2MGM0MmJlMDk3NTA2MTZmMzkxNTc1ODJj YTkKKworZG9fY29uZmlndXJlKCkgeworCXJtIC1yZiBidWlsZAorCW1rZGlyIGJ1aWxkCisJY2Qg YnVpbGQKKwl1bnNldCBDQyBDWFggQ0ZMQUdTIENYWEZMQUdTIExEIExERkxBR1MKKwljbWFrZSAt RENNQUtFX0JVSUxEX1RZUEU9Tm9uZSAtR05pbmphIC4uCit9CgpGcm9tIDc4NjQ5YmU2YTU1ZDNi YjhhZjAxNzJhMDM4MWYxNjQ0NGFiMGYxOTAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 ID0/VVRGLTg/cT89QzQ9OTBvPUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0yMEM9QzM9QjRuZz0yMERh bmg/PQogPGNvbmdkYW5ocXhAZ21haWwuY29tPgpEYXRlOiBTdW4sIDIzIEp1biAyMDI0IDEwOjQ0 OjMwICswNzAwClN1YmplY3Q6IFtQQVRDSCAxMi80NF0gcXQ2LXdheWxhbmQ6IHVwZGF0ZSB0byA2 LjcuMi4KCi0tLQogc3JjcGtncy9xdDYtd2F5bGFuZC1wcml2YXRlLWRldmVsIHwgIDEgKwogc3Jj cGtncy9xdDYtd2F5bGFuZC90ZW1wbGF0ZSAgICAgIHwgMjQgKysrKysrKysrKysrKysrKysrKy0t LS0tCiAyIGZpbGVzIGNoYW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCiBj cmVhdGUgbW9kZSAxMjAwMDAgc3JjcGtncy9xdDYtd2F5bGFuZC1wcml2YXRlLWRldmVsCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9xdDYtd2F5bGFuZC1wcml2YXRlLWRldmVsIGIvc3JjcGtncy9xdDYt d2F5bGFuZC1wcml2YXRlLWRldmVsCm5ldyBmaWxlIG1vZGUgMTIwMDAwCmluZGV4IDAwMDAwMDAw MDAwMDAwLi5jNGRlYzE4ZWE5YTA0YQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvcXQ2LXdh eWxhbmQtcHJpdmF0ZS1kZXZlbApAQCAtMCwwICsxIEBACitxdDYtd2F5bGFuZApcIE5vIG5ld2xp bmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LXdheWxhbmQvdGVtcGxh dGUgYi9zcmNwa2dzL3F0Ni13YXlsYW5kL3RlbXBsYXRlCmluZGV4IGVmNGRjMTFhOTQ5MWFlLi4x YWJiOTM5NmJhZjFhMSAxMDA2NDQKLS0tIGEvc3JjcGtncy9xdDYtd2F5bGFuZC90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL3F0Ni13YXlsYW5kL3RlbXBsYXRlCkBAIC0xLDEyICsxLDEyIEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdxdDYtd2F5bGFuZCcKIHBrZ25hbWU9cXQ2LXdheWxhbmQKLXZlcnNp b249Ni42LjAKK3ZlcnNpb249Ni43LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNtYWtlCiBo b3N0bWFrZWRlcGVuZHM9InF0Ni1iYXNlIHBlcmwgcGtnLWNvbmZpZyB3YXlsYW5kLWRldmVsIHF0 Ni1kZWNsYXJhdGl2ZS1ob3N0LXRvb2xzIgogIyBYWFg6IFFtbCBhcyBvcHRpb25hbCBkZXAKLW1h a2VkZXBlbmRzPSJxdDYtYmFzZS1kZXZlbCB3YXlsYW5kLWRldmVsIGxpYnhrYmNvbW1vbi1kZXZl bAotIHF0Ni1kZWNsYXJhdGl2ZS1kZXZlbAorbWFrZWRlcGVuZHM9InF0Ni1iYXNlLXByaXZhdGUt ZGV2ZWwgd2F5bGFuZC1kZXZlbCBsaWJ4a2Jjb21tb24tZGV2ZWwKKyBxdDYtZGVjbGFyYXRpdmUt cHJpdmF0ZS1kZXZlbAogIGxpYlhjb21wb3NpdGUtZGV2ZWwgTWVzYUxpYi1kZXZlbCBWdWxrYW4t SGVhZGVycyBsaWJkcm0tZGV2ZWwiCiBjaGVja2RlcGVuZHM9ImRidXMgbWVzYS1kcmkiCiBzaG9y dF9kZXNjPSJDcm9zcy1wbGF0Zm9ybSBhcHBsaWNhdGlvbiBhbmQgVUkgZnJhbWV3b3JrIC0gV2F5 bGFuZCIKQEAgLTE0LDkgKzE0LDkgQEAgbWFpbnRhaW5lcj0iSm9obiA8bWVAam9obm55bmF0b3Iu ZGV2PiIKIGxpY2Vuc2U9IkdQTC0zLjAtb25seSB3aXRoIFF0LUdQTC1leGNlcHRpb24tMS4wLCBM R1BMLTMuMC1vbmx5LCBHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd3d3LnF0 LmlvIgogZGlzdGZpbGVzPSJodHRwczovL2Rvd25sb2FkLnF0LmlvL29mZmljaWFsX3JlbGVhc2Vz L3F0LyR7dmVyc2lvbiUuKn0vJHt2ZXJzaW9ufS9zdWJtb2R1bGVzL3F0d2F5bGFuZC1ldmVyeXdo ZXJlLXNyYy0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTMwYzNkODJkODVkMDUwYzgzMzcw NzEwYTI2ZDEyYzgwMjE5OWM1MWViYTVjMjcyNmU5ZDYyNDNlZGQwM2I3ZTgKK2NoZWNrc3VtPWEy YTA1N2UxZGQ2NDRiZDQ0YWJiOTk5MGZlY2MxOTRiMmUyNWMyZTBmMzllODFhYTlmZWU0YzFlNWUy YThhNWIKIAotc3VicGFja2FnZXM9InF0Ni13YXlsYW5kLXRvb2xzIHF0Ni13YXlsYW5kLWRldmVs Igorc3VicGFja2FnZXM9InF0Ni13YXlsYW5kLXRvb2xzIHF0Ni13YXlsYW5kLXByaXZhdGUtZGV2 ZWwgcXQ2LXdheWxhbmQtZGV2ZWwiCiAKIGlmIFsgIiRDUk9TU19CVUlMRCIgXTsgdGhlbgogCWNv bmZpZ3VyZV9hcmdzPSItRFFUX0ZPUkNFX0JVSUxEX1RPT0xTPXRydWUiCkBAIC0zNyw2ICszNywy MCBAQCBxdDYtd2F5bGFuZC10b29sc19wYWNrYWdlKCkgewogCX0KIH0KIAorcXQ2LXdheWxhbmQt cHJpdmF0ZS1kZXZlbF9wYWNrYWdlKCkgeworCWRlcGVuZHM9InF0Ni13YXlsYW5kLWRldmVsPj0k e3ZlcnNpb259XyR7cmV2aXNpb259IgorCXNob3J0X2Rlc2MrPSIgLSBwcml2YXRlIGRldmVsb3Bt ZW50IGZpbGVzIgorCXBrZ19pbnN0YWxsKCkgeworCQlmb3IgZGlyIGluICQoY2QgJHtERVNURElS fSAmJiBmaW5kIHVzci9pbmNsdWRlIC10eXBlIGQgLW5hbWUgcHJpdmF0ZSk7IGRvCisJCQl2bW92 ZSAiJGRpciIKKwkJZG9uZQorCQl2bW92ZSAidXNyL2xpYi9jbWFrZS8qUHJpdmF0ZSIKKwkJdm1v dmUgInVzci9saWIvcXQ2L21ldGF0eXBlcy8qcHJpdmF0ZV8qX21ldGF0eXBlcy5qc29uIgorCQl2 bW92ZSAidXNyL2xpYi9xdDYvbWtzcGVjcy9tb2R1bGVzLypfcHJpdmF0ZS5wcmkiCisJCXZtb3Zl ICJ1c3IvbGliL3F0Ni9tb2R1bGVzLypQcml2YXRlLmpzb24iCisJfQorfQorCiBxdDYtd2F5bGFu ZC1kZXZlbF9wYWNrYWdlKCkgewogCWRlcGVuZHM9InF0Ni13YXlsYW5kLXRvb2xzPj0ke3ZlcnNp b259XyR7cmV2aXNpb259IHF0Ni1iYXNlLWRldmVsPj0ke3ZlcnNpb259XzEiCiAJc2hvcnRfZGVz Yys9IiAtIGRldmVsb3BtZW50IGZpbGVzIgoKRnJvbSAzM2IyYTE4ZThjNmY0ODNkNTg4MzBlNjQ4 YjEzYWM1ZTAwNzEzZTc3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/ PUM0PTkwbz1DMz1BMG49MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25n ZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTogU3VuLCAyMyBKdW4gMjAyNCAxMDo0NDozMCArMDcwMApT dWJqZWN0OiBbUEFUQ0ggMTMvNDRdIHF0Ni13ZWJjaGFubmVsOiB1cGRhdGUgdG8gNi43LjIuCgot LS0KIHNyY3BrZ3MvcXQ2LXdlYmNoYW5uZWwvdGVtcGxhdGUgfCA3ICsrKystLS0KIDEgZmlsZSBj aGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9xdDYtd2ViY2hhbm5lbC90ZW1wbGF0ZSBiL3NyY3BrZ3MvcXQ2LXdlYmNoYW5uZWwvdGVt cGxhdGUKaW5kZXggMTcxOGFiYjMxYjdlMGQuLjRhODY3NzkwZDk5Y2YyIDEwMDY0NAotLS0gYS9z cmNwa2dzL3F0Ni13ZWJjaGFubmVsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcXQ2LXdlYmNoYW5u ZWwvdGVtcGxhdGUKQEAgLTEsMTYgKzEsMTcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3F0Ni13 ZWJjaGFubmVsJwogcGtnbmFtZT1xdDYtd2ViY2hhbm5lbAotdmVyc2lvbj02LjYuMAordmVyc2lv bj02LjcuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGhvc3RtYWtlZGVwZW5kcz0i cGVybCBxdDYtYmFzZSBxdDYtZGVjbGFyYXRpdmUtaG9zdC10b29scyIKLW1ha2VkZXBlbmRzPSJx dDYtYmFzZS1kZXZlbCBxdDYtZGVjbGFyYXRpdmUtZGV2ZWwgcXQ2LXdlYnNvY2tldHMtZGV2ZWwi CittYWtlZGVwZW5kcz0icXQ2LWJhc2UtcHJpdmF0ZS1kZXZlbCBxdDYtZGVjbGFyYXRpdmUtcHJp dmF0ZS1kZXZlbAorIHF0Ni13ZWJzb2NrZXRzLWRldmVsIgogc2hvcnRfZGVzYz0iQ3Jvc3MtcGxh dGZvcm0gYXBwbGljYXRpb24gYW5kIFVJIGZyYW1ld29yayAtIHdlYmNoYW5uZWwiCiBtYWludGFp bmVyPSJKb2huIDxtZUBqb2hubnluYXRvci5kZXY+IgogbGljZW5zZT0iKExHUEwtMy4wLW9ubHkg T1IgR1BMLTIuMC1vbmx5IE9SIEdQTC0zLjAtb25seSkgQU5EIEdQTC0zLjAtb25seSB3aXRoIFF0 LUdQTC1leGNlcHRpb24tMS4wIgogaG9tZXBhZ2U9Imh0dHBzOi8vcXQuaW8vIgogZGlzdGZpbGVz PSJodHRwOi8vZG93bmxvYWQucXQuaW8vb2ZmaWNpYWxfcmVsZWFzZXMvcXQvJHt2ZXJzaW9uJS4q fS8ke3ZlcnNpb259L3N1Ym1vZHVsZXMvcXR3ZWJjaGFubmVsLWV2ZXJ5d2hlcmUtc3JjLSR7dmVy c2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZmRkY2IzOGU2ZDU4NDNmOWM3NTcwNjU0ZjFhMTJhYWYw MDg2ZTVhMDFmN2JmM2NmMTcwMDY0ZmNjNWEzZjUxYworY2hlY2tzdW09YWM1ZDk2NjA3YjEwZTdk ZTU0NmVhZjkzYmI5ZjY1YzBmZDYzMWVmOWI5MWVmOGE3OTRlMjZmZDU3ZGI0NTAxYwogCiBkb19j aGVjaygpIHsKIAljZCBidWlsZAoKRnJvbSBmYzFhYWRhZDkyNWQ5YzM2MzllZDRjZTJiM2JhMTIx OWM1YTc2OTM4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0PTkw bz1DMz1BMG49MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4 QGdtYWlsLmNvbT4KRGF0ZTogU3VuLCAyMyBKdW4gMjAyNCAxMDo0NDozMCArMDcwMApTdWJqZWN0 OiBbUEFUQ0ggMTQvNDRdIHF0Ni0zZDogdXBkYXRlIHRvIDYuNy4yLgoKLS0tCiBzcmNwa2dzL3F0 Ni0zZC90ZW1wbGF0ZSB8IDcgKysrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygr KSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni0zZC90ZW1wbGF0ZSBi L3NyY3BrZ3MvcXQ2LTNkL3RlbXBsYXRlCmluZGV4IGUyMGJjZjhhZDQyZmRjLi42YTYxZWJiMmUx ZjFkMiAxMDA2NDQKLS0tIGEvc3JjcGtncy9xdDYtM2QvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9x dDYtM2QvdGVtcGxhdGUKQEAgLTEsMTYgKzEsMTcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3F0 Ni0zZCcKIHBrZ25hbWU9cXQ2LTNkCi12ZXJzaW9uPTYuNi4wCit2ZXJzaW9uPTYuNy4yCiByZXZp c2lvbj0xCiBidWlsZF9zdHlsZT1jbWFrZQogaG9zdG1ha2VkZXBlbmRzPSJwZXJsIHF0Ni1kZWNs YXJhdGl2ZS1ob3N0LXRvb2xzIgotbWFrZWRlcGVuZHM9InF0Ni1kZWNsYXJhdGl2ZS1kZXZlbCBx dDYtc2hhZGVydG9vbHMtZGV2ZWwgbGliYXNzaW1wLWRldmVsIgorbWFrZWRlcGVuZHM9InF0Ni1k ZWNsYXJhdGl2ZS1wcml2YXRlLWRldmVsIHF0Ni1zaGFkZXJ0b29scy1kZXZlbCBsaWJhc3NpbXAt ZGV2ZWwKKyBxdDYtYmFzZS1wcml2YXRlLWRldmVsIgogc2hvcnRfZGVzYz0iQ3Jvc3MtcGxhdGZv cm0gYXBwbGljYXRpb24gYW5kIFVJIGZyYW1ld29yayAtIDNkIgogbWFpbnRhaW5lcj0iSm9obiA8 bWVAam9obm55bmF0b3IuZGV2PiIKIGxpY2Vuc2U9IihMR1BMLTMuMC1vbmx5IE9SIEdQTC0yLjAt b25seSBPUiBHUEwtMy4wLW9ubHkpIEFORCBHUEwtMy4wLW9ubHkgd2l0aCBRdC1HUEwtZXhjZXB0 aW9uLTEuMCIKIGhvbWVwYWdlPSJodHRwczovL3F0LmlvLyIKIGRpc3RmaWxlcz0iaHR0cDovL2Rv d25sb2FkLnF0LmlvL29mZmljaWFsX3JlbGVhc2VzL3F0LyR7dmVyc2lvbiUuKn0vJHt2ZXJzaW9u fS9zdWJtb2R1bGVzL3F0M2QtZXZlcnl3aGVyZS1zcmMtJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVj a3N1bT0wZGE4N2E0NjIxN2Y0ZDcyZjZkMGRlOTc2ODYwNWQ1MzI1ZWYzZDA5M2Y3M2E1ZTBkNzNk ZDg4ZTk5YzFmYzJhCitjaGVja3N1bT04YmMwODdkOTA0OTczMTMzMTg2ZTU4NDcxODQ1YzVkZjM3 NmJiZmRjZmNmMDc5ZmRhMjg3ZTFjZGEyN2M4YWRmCiAKIHF0Ni0zZC1kZXZlbF9wYWNrYWdlKCkg ewogCWRlcGVuZHM9IiR7c291cmNlcGtnfT49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKCkZyb20g MGE4YWUxZGQ3OTU2YTllYTQ3MjAzYTgzNmFiOTRlYzVlNzYyMzE3NiBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogPT9VVEYtOD9xPz1DND05MG89QzM9QTBuPTIwVHI9RTE9QkE9QTduPTIw Qz1DMz1CNG5nPTIwRGFuaD89CiA8Y29uZ2RhbmhxeEBnbWFpbC5jb20+CkRhdGU6IFN1biwgMjMg SnVuIDIwMjQgMTA6NDQ6MzAgKzA3MDAKU3ViamVjdDogW1BBVENIIDE1LzQ0XSBxdDYtcGRmOiB1 cGRhdGUgdG8gNi43LjIuCgotLS0KIC4uLi9xdDYtcGRmL3BhdGNoZXMvMDAwMS1Ob25lLW5vLWRl YnVnLnBhdGNoICB8ICAgIDYgKy0KIHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAwMDMtY3Jvc3Mt aGFjay5wYXRjaCB8ICAgMTAgKy0KIC4uLi5wYXRjaCA9PiAwMDA0LW5vLWdsaWJjLWNtYWtlLWNo ZWNrLnBhdGNofSB8ICAgIDAKIC4uLi9xdDYtcGRmL3BhdGNoZXMvMDAwNC1yaXNjdi1hbmdsZS5w YXRjaCAgICB8ICAgMjggLQogLi4uL3BhdGNoZXMvMDAwNC1yaXNjdi1hbmdsZS5wYXRjaC5hcmdz ICAgICAgIHwgICAgMSAtCiAuLi4vcXQ2LXBkZi9wYXRjaGVzLzAwMDUtcmlzY3YtY3Jhc2hwYWQu cGF0Y2ggfCAgNzc4IC0tLS0tLS0KIC4uLi9wYXRjaGVzLzAwMDUtcmlzY3YtY3Jhc2hwYWQucGF0 Y2guYXJncyAgICB8ICAgIDEgLQogLi4uL3F0Ni1wZGYvcGF0Y2hlcy8wMDA2LXJpc2N2LWRhdjFk LnBhdGNoICAgIHwgICA0NCAtCiAuLi4vcGF0Y2hlcy8wMDA2LXJpc2N2LWRhdjFkLnBhdGNoLmFy Z3MgICAgICAgfCAgICAxIC0KIC4uLi9xdDYtcGRmL3BhdGNoZXMvMDAwNy1yaXNjdi1zYW5kYm94 LnBhdGNoICB8IDE5MzkgLS0tLS0tLS0tLS0tLS0tLS0KIC4uLi9wYXRjaGVzLzAwMDctcmlzY3Yt c2FuZGJveC5wYXRjaC5hcmdzICAgICB8ICAgIDEgLQogLi4uL3BhdGNoZXMvMDAwOC1yc2ljdi1h bGxvY2F0b3IucGF0Y2ggICAgICAgIHwgICAxMSAtCiAuLi5FUlQtcm9sbC1zcmMtdGhpcmRfcGFy dHktZmZtcGVnLW0xMDIucGF0Y2ggfCAgIDUyICsKIC4uLi9wYXRjaGVzLzAxMDQtYW5nbGUtd2F5 bGFuZC1pbmNsdWRlLnBhdGNoICB8ICAgMzcgKwogLi4ubWl1bS0xMDUuMC41MTk1LjUyLXB5dGhv bi1zaXgtMS4xNi4wLnBhdGNoIHwgICA4NCArCiAuLi4vcGF0Y2hlcy8wMTA2LWNocm9taXVtLXN5 c3RlbS1ub2RlanMucGF0Y2ggfCAgIDI5IC0KIC4uLi8wMTA3LWNocm9taXVtLTExNC1tYWxkb2Nh LWluY2x1ZGUucGF0Y2ggICB8ICAgMjAgKwogLi4uMDEwOC1jaHJvbWl1bS0xMTUtY29tcGlsZXIt U2tDb2xvcjRmLnBhdGNoIHwgICAyNiArCiAuLi4vMDEwOC1jaHJvbWl1bS1jdXJzZWReVXNjb3Bl ZF9maWxlLnBhdGNoICAgfCAgIDE4IC0KIC4uLi9wYXRjaGVzLzAxMTAtY2hyb21pdW0tMTE3LXR5 cGVuYW1lLnBhdGNoICB8ICAgOTEgKwogLi4uL3BhdGNoZXMvMDExMS1jaHJvbWl1bS1jc3RkaW50 LnBhdGNoICAgICAgIHwgICAxMCAtCiAuLi4xMi1jaHJvbWl1bS0xMTgtbWlzc2luZy1oZWFkZXIt ZmlsZXMucGF0Y2ggfCAgMzc5ICsrKysKIC4uLmNocm9taXVtLTExOC1ub19tYXRjaGluZ19jb25z dHJ1Y3Rvci5wYXRjaCB8ICA0MTAgKysrKwogLi4uLWNocm9taXVtLTExOC1weXRob24tMy4xMi1k ZXByZWNhdGVkLnBhdGNoIHwgICA5OCArCiAuLi5rYXJvdW5kX2NsYW5nX2J1Zy1zdHJ1Y3R1cmVk X2JpbmRpbmcucGF0Y2ggfCAgIDI1ICsKIC4uLjAxMTctY2hyb21pdW0taTY4Ni12YWFwaS1mcGVy bWlzc2l2ZS5wYXRjaCB8ICAgMjMgKwogLi4uL3BhdGNoZXMvMDExNy1jaHJvbWl1bS1tdXNsLXJl c29sdmVyLnBhdGNoIHwgICA2MCAtCiAuLi5jaHJvbWl1bS1yZXZlcnQtZHJvcC1vZi1zeXN0ZW0t amF2YS5wYXRjaH0gfCAgICA0ICstCiAuLi4vcGF0Y2hlcy8wMTE5LWNocm9taXVtLXN5c3RlbS1u b2RlanMucGF0Y2ggfCAgIDIwICsKIC4uLm9zcy1idWlsZC5wYXRjaCA9PiAwMTIwLWNyb3NzLWJ1 aWxkLnBhdGNofSB8ICAgMjAgKy0KIC4uLi9wYXRjaGVzLzAxMjEtZmMtY2FjaGUtdmVyc2lvbi5w YXRjaCAgICAgICB8ICAgMTMgKwogLi4uLWFhcmNoNjQtbXVzbC1tZW1vcnktdGFnZ2luZy1tYWNy b3MucGF0Y2h9IHwgICAgOCArLQogLi4uLzAxMjMtZml4LWFyZ3VtZW50X3NwZWMtaXNuYW4taXNp bmYucGF0Y2ggIHwgICAxMSArCiAuLi4vMDEyNC1maXgtY29uc3RleHByLW5hcnJvd2luZy5wYXRj aCAgICAgICAgfCAgIDIxICsKIC4uLi9wYXRjaGVzLzAxMjUtZml4LWRhd24tcGxhdGZvcm0ucGF0 Y2ggICAgICB8ICAgNTUgKwogLi4uaXgtbWlzc2luZy1URU1QX0ZBSUxVUkVfUkVUUlktbWFjcm8u cGF0Y2h9IHwgICAgNCArLQogLi4uMTI4LWZpeC1taXNzaW5nLWNzdGRpbnQtaW5jbHVkZS1tdXNs LnBhdGNoIHwgICAxMCArCiAuLi4vMDEyOS1jaHJvbWl1bS1zYW5kYm94LXNoZWRfZ2V0cGFyYW0u cGF0Y2ggfCAgIDE3IC0KIC4uLjktZml4LW11c2wtbWlzc2luZy11bmlzdGRfaC1pbmNsdWRlLnBh dGNofSB8ICAgIDIgKy0KIC4uLjEzMC1maXgtcGVyZmV0dG8tR2V0VGhyZWFkTmFtZS1tdXNsLnBh dGNofSB8ICAgIDQgKy0KIC4uLjEzMS1maXgtc3dpZnRzaGFkZXItbGx2bS1tdXNsLWNvbmZpZy5w YXRjaCB8ICAgIDAKIC4uLmJjLW1hbGxvYy5wYXRjaCA9PiAwMTMyLWxpYmNfbWFsbG9jLnBhdGNo fSB8ICAgMTAgKy0KIC4uLi9wYXRjaGVzLzAxMzMtbXVzbC1uby1leGVjaW5mby5wYXRjaCAgICAg ICB8ICAgNjggKwogLi4uaW5mby5wYXRjaCA9PiAwMTM0LW11c2wtbm8tbWFsbGluZm8ucGF0Y2h9 IHwgIDEwMSArLQogLi4uL3BhdGNoZXMvMDEzNS1tdXNsLXBhcnRpdGlvbi1hdGZvcmsucGF0Y2gg IHwgICAxMSArCiAuLi52OC1tb25vdG9uaWMtcHRocmVhZC1jb250X3RpbWVkd2FpdC5wYXRjaH0g fCAgICA0ICstCiAuLi5jb250ZXh0LnBhdGNoID0+IDAxMzctbm8tZ2V0Y29udGV4dC5wYXRjaH0g fCAgICA0ICstCiBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTM4LW5vLW10ZS5wYXRjaCAgICAg fCAgIDExICsKIHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMzktb2xkLWNsYW5nLnBhdGNoICB8 ICAgMTEgKwogLi4uLzAxNDAtcmVlbmFibGUtbGludXgtaTY4Ni1idWlsZHMucGF0Y2ggICAgIHwg ICAxOSArCiAuLi5oID0+IDAxNDEtcmVtb3ZlLXN5cy1jZGVmcy1pbmNsdWRlcy5wYXRjaH0gfCAg ICA4ICstCiAuLi4vcGF0Y2hlcy8wMTQyLXNhbmRib3gtbWVtYmFycmllci5wYXRjaCAgICAgfCAg IDEwICsKIHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxNDMtc25kaW8ucGF0Y2ggICAgICB8ICA4 NDkgKysrKysrKysKIC4uLjE1NS1zeXN0eXBlcy5wYXRjaCA9PiAwMTQ0LXN5c3R5cGVzLnBhdGNo fSB8ICAgIDIgKy0KIC4uLm5kbGUtZmZtcGVnLWF2X3N0cmVhbV9nZXRfZmlyc3RfZHRzLnBhdGNo fSB8ICAgIDQgKy0KIC4uLmggPT4gMDE0Ni11bmJ1bmRsZWQtY3Jvc3MtdG9vbGNoYWluLnBhdGNo fSB8ICAgIDQgKy0KIC4uLi9xdDYtcGRmL3BhdGNoZXMvMDE0OC13ZWJydGMtc2l6ZV90LnBhdGNo ICB8ICAgMTAgKwogLi4uL3BhdGNoZXMvMDE1Mi1jaHJvbWl1bS13ZWJydGMtc2l6ZV90LnBhdGNo IHwgICAxMCAtCiAuLi4vcGF0Y2hlcy8wMTUzLWNocm9taXVtLXdlYnJ0Yy1zaXplX3QucGF0Y2gg fCAgIDE2IC0KIC4uLi9xdDYtcGRmL3BhdGNoZXMvMDE1NC1jaHJvbWl1bS11aXRfdC5wYXRjaCB8 ICAgMTEgLQogLi4uL3BhdGNoZXMvMDMwMC1jaHJvbWl1bS1tdXNsLWhhY2tzLnBhdGNoICAgIHwg ICAzOCAtCiAuLi4vcGF0Y2hlcy8wMzAxLWNocm9taXVtLW11c2wtc2FuZGJveC5wYXRjaCAgfCAg IDcwIC0KIC4uLi9xdDYtcGRmL3BhdGNoZXMvMDcwMC1hcm12N2wtbmVvbi5wYXRjaCAgICB8ICAg MTAgLQogLi4uLWNocm9taXVtLW11c2wtY3Jvc3Mtbm8tYXNtX3B0cmFjZV9oLnBhdGNoIHwgICAz MCAtCiAuLi4vMDc1MS1jaHJvbWl1bS1tdXNsLWFybS11c2VyX3ZmcC5wYXRjaCAgICAgfCAgIDIw IC0KIC4uLi8wNzUyLWNocm9taXVtLW11c2wtYXJtLWVsZl9hdXh2X3QucGF0Y2ggICB8ICAgMTgg LQogLi4uLzA3NTMtY2hyb21pdW0tbXVzbC0zMi1iaXQtZnN0YXQucGF0Y2ggICAgIHwgICAxMyAt CiAuLi4vcXQ2LXBkZi9wYXRjaGVzLzA4MDAtbXVzbC1zYW5kYm94LnBhdGNoICAgfCAgMTIxICsK IC4uLmhpbmcucGF0Y2ggPT4gMDgwMS1tdXNsLXRpZC1jYWNoaW5nLnBhdGNofSB8ICAgMTEgKy0K IC4uLi8wODAyLW11c2wtbm8tcmVzLW5pbml0LW5jbG9zZS5wYXRjaCAgICAgICB8ICAgMjAgKwog Li4uL3F0Ni1wZGYvcGF0Y2hlcy8wODAzLW11c2wtaW5jbHVkZS5wYXRjaCAgIHwgICAxMCArCiBz cmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wOTk4LWNyb3NzLnBhdGNoICAgICAgfCAgIDE4IC0KIC4u Li9wYXRjaGVzLzA5OTgtZXhhbXBsZS1jcm9zcy1idWlsZC5wYXRjaCAgICB8ICAgMTEgKwogc3Jj cGtncy9xdDYtcGRmL3BhdGNoZXMvMDk5OS1weXRob24zLjEyLnBhdGNoIHwgICAyMCAtCiAuLi4v MTAwMC13ZS1rbm93LXdoYXQtd2lsbC1iZS1zdXBwb3J0ZWQucGF0Y2ggfCAgIDE4ICstCiAuLi50 aWFsLW1pZ3JhdGlvbi1mcm9tLWltcC10by1pbXBvcnRsaWIucGF0Y2ggfCAgIDM2IC0KIC4uLi9x dDYtcGRmL3BhdGNoZXMvZml4LWxpYnhtbDItMi4xMi5wYXRjaCAgICB8ICAgMzQgLQogLi4uL3F0 Ni1wZGYvcGF0Y2hlcy9waXBld2lyZS1mY250bC1jYWxsLnBhdGNoIHwgICAxOCAtCiBzcmNwa2dz L3F0Ni1wZGYvdGVtcGxhdGUgICAgICAgICAgICAgICAgICAgICAgfCAgIDEyICstCiA3OSBmaWxl cyBjaGFuZ2VkLCAyNjQ1IGluc2VydGlvbnMoKyksIDM0MTcgZGVsZXRpb25zKC0pCiByZW5hbWUg c3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvezAwNTAtbm8tZ2xpYmMtY21ha2UtY2hlY2sucGF0Y2gg PT4gMDAwNC1uby1nbGliYy1jbWFrZS1jaGVjay5wYXRjaH0gKDEwMCUpCiBkZWxldGUgbW9kZSAx MDA2NDQgc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDAwNC1yaXNjdi1hbmdsZS5wYXRjaAogZGVs ZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAwMDQtcmlzY3YtYW5nbGUu cGF0Y2guYXJncwogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAw MDUtcmlzY3YtY3Jhc2hwYWQucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3F0Ni1w ZGYvcGF0Y2hlcy8wMDA1LXJpc2N2LWNyYXNocGFkLnBhdGNoLmFyZ3MKIGRlbGV0ZSBtb2RlIDEw MDY0NCBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMDA2LXJpc2N2LWRhdjFkLnBhdGNoCiBkZWxl dGUgbW9kZSAxMDA2NDQgc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDAwNi1yaXNjdi1kYXYxZC5w YXRjaC5hcmdzCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDAw Ny1yaXNjdi1zYW5kYm94LnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9xdDYtcGRm L3BhdGNoZXMvMDAwNy1yaXNjdi1zYW5kYm94LnBhdGNoLmFyZ3MKIGRlbGV0ZSBtb2RlIDEwMDY0 NCBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMDA4LXJzaWN2LWFsbG9jYXRvci5wYXRjaAogY3Jl YXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMDAtUkVWRVJULXJvbGwt c3JjLXRoaXJkX3BhcnR5LWZmbXBlZy1tMTAyLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3Jj cGtncy9xdDYtcGRmL3BhdGNoZXMvMDEwNC1hbmdsZS13YXlsYW5kLWluY2x1ZGUucGF0Y2gKIGNy ZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTA2LWNocm9taXVtLTEw NS4wLjUxOTUuNTItcHl0aG9uLXNpeC0xLjE2LjAucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBz cmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTA2LWNocm9taXVtLXN5c3RlbS1ub2RlanMucGF0Y2gK IGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTA3LWNocm9taXVt LTExNC1tYWxkb2NhLWluY2x1ZGUucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3F0 Ni1wZGYvcGF0Y2hlcy8wMTA4LWNocm9taXVtLTExNS1jb21waWxlci1Ta0NvbG9yNGYucGF0Y2gK IGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTA4LWNocm9taXVt LWN1cnNlZF5Vc2NvcGVkX2ZpbGUucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3F0 Ni1wZGYvcGF0Y2hlcy8wMTEwLWNocm9taXVtLTExNy10eXBlbmFtZS5wYXRjaAogZGVsZXRlIG1v ZGUgMTAwNjQ0IHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMTEtY2hyb21pdW0tY3N0ZGludC5w YXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMTItY2hy b21pdW0tMTE4LW1pc3NpbmctaGVhZGVyLWZpbGVzLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQg c3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDExMy1jaHJvbWl1bS0xMTgtbm9fbWF0Y2hpbmdfY29u c3RydWN0b3IucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hl cy8wMTE0LWNocm9taXVtLTExOC1weXRob24tMy4xMi1kZXByZWNhdGVkLnBhdGNoCiBjcmVhdGUg bW9kZSAxMDA2NDQgc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDExNi1jaHJvbWl1bS0xMTgtd29y a2Fyb3VuZF9jbGFuZ19idWctc3RydWN0dXJlZF9iaW5kaW5nLnBhdGNoCiBjcmVhdGUgbW9kZSAx MDA2NDQgc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDExNy1jaHJvbWl1bS1pNjg2LXZhYXBpLWZw ZXJtaXNzaXZlLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9xdDYtcGRmL3BhdGNo ZXMvMDExNy1jaHJvbWl1bS1tdXNsLXJlc29sdmVyLnBhdGNoCiByZW5hbWUgc3JjcGtncy9xdDYt cGRmL3BhdGNoZXMvezAxMDUtY2hyb21pdW0tcmV2ZXJ0LWRyb3Atb2Ytc3lzdGVtLWphdmEucGF0 Y2ggPT4gMDExOC1jaHJvbWl1bS1yZXZlcnQtZHJvcC1vZi1zeXN0ZW0tamF2YS5wYXRjaH0gKDc2 JSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTE5LWNocm9t aXVtLXN5c3RlbS1ub2RlanMucGF0Y2gKIHJlbmFtZSBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy97 MDEwNy1jaHJvbWl1bS1jcm9zcy1idWlsZC5wYXRjaCA9PiAwMTIwLWNyb3NzLWJ1aWxkLnBhdGNo fSAoNzIlKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMjEt ZmMtY2FjaGUtdmVyc2lvbi5wYXRjaAogcmVuYW1lIHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzL3sw MTA5LWNocm9taXVtLWFhcmNoNjQtbXVzbC1tZW1vcnktdGFnZ2luZy5wYXRjaCA9PiAwMTIyLWZp eC1hYXJjaDY0LW11c2wtbWVtb3J5LXRhZ2dpbmctbWFjcm9zLnBhdGNofSAoNzMlKQogY3JlYXRl IG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMjMtZml4LWFyZ3VtZW50X3Nw ZWMtaXNuYW4taXNpbmYucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3F0Ni1wZGYv cGF0Y2hlcy8wMTI0LWZpeC1jb25zdGV4cHItbmFycm93aW5nLnBhdGNoCiBjcmVhdGUgbW9kZSAx MDA2NDQgc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDEyNS1maXgtZGF3bi1wbGF0Zm9ybS5wYXRj aAogcmVuYW1lIHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzL3swMTEwLWNocm9taXVtLWZpeC1taXNz aW5nLVRFTVBfRkFJTFVSRV9SRVRSWS1tYWNyby5wYXRjaCA9PiAwMTI3LWZpeC1taXNzaW5nLVRF TVBfRkFJTFVSRV9SRVRSWS1tYWNyby5wYXRjaH0gKDc4JSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBz cmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTI4LWZpeC1taXNzaW5nLWNzdGRpbnQtaW5jbHVkZS1t dXNsLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDEy OS1jaHJvbWl1bS1zYW5kYm94LXNoZWRfZ2V0cGFyYW0ucGF0Y2gKIHJlbmFtZSBzcmNwa2dzL3F0 Ni1wZGYvcGF0Y2hlcy97MDExMi1jaHJvbWl1bS11bmlzdGQuaC5wYXRjaCA9PiAwMTI5LWZpeC1t dXNsLW1pc3NpbmctdW5pc3RkX2gtaW5jbHVkZS5wYXRjaH0gKDk0JSkKIHJlbmFtZSBzcmNwa2dz L3F0Ni1wZGYvcGF0Y2hlcy97MDExNi1jaHJvbWl1bS1tdXNsLWdldC10aHJlYWQtbmFtZS5wYXRj aCA9PiAwMTMwLWZpeC1wZXJmZXR0by1HZXRUaHJlYWROYW1lLW11c2wucGF0Y2h9ICg3MyUpCiBj cmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDEzMS1maXgtc3dpZnRz aGFkZXItbGx2bS1tdXNsLWNvbmZpZy5wYXRjaAogcmVuYW1lIHNyY3BrZ3MvcXQ2LXBkZi9wYXRj aGVzL3swMTIwLWNocm9taXVtLWxpYmMtbWFsbG9jLnBhdGNoID0+IDAxMzItbGliY19tYWxsb2Mu cGF0Y2h9ICg2NiUpCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMv MDEzMy1tdXNsLW5vLWV4ZWNpbmZvLnBhdGNoCiByZW5hbWUgc3JjcGtncy9xdDYtcGRmL3BhdGNo ZXMvezAzMDItY2hyb21pdW0tbm8tbWFsbGluZm8ucGF0Y2ggPT4gMDEzNC1tdXNsLW5vLW1hbGxp bmZvLnBhdGNofSAoNTAlKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcXQ2LXBkZi9wYXRj aGVzLzAxMzUtbXVzbC1wYXJ0aXRpb24tYXRmb3JrLnBhdGNoCiByZW5hbWUgc3JjcGtncy9xdDYt cGRmL3BhdGNoZXMvezAxMjItY2hyb21pdW0tY29uZGl0aW9uX3Zhci5wYXRjaCA9PiAwMTM2LW11 c2wtdjgtbW9ub3RvbmljLXB0aHJlYWQtY29udF90aW1lZHdhaXQucGF0Y2h9ICg4MiUpCiByZW5h bWUgc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvezAxMjMtY2hyb21pdW0tbXVzbC1uby1nZXRjb250 ZXh0LnBhdGNoID0+IDAxMzctbm8tZ2V0Y29udGV4dC5wYXRjaH0gKDcyJSkKIGNyZWF0ZSBtb2Rl IDEwMDY0NCBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTM4LW5vLW10ZS5wYXRjaAogY3JlYXRl IG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMzktb2xkLWNsYW5nLnBhdGNo CiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDE0MC1yZWVuYWJs ZS1saW51eC1pNjg2LWJ1aWxkcy5wYXRjaAogcmVuYW1lIHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVz L3swMTI2LWNocm9taXVtLW5vLWNkZWZzLnBhdGNoID0+IDAxNDEtcmVtb3ZlLXN5cy1jZGVmcy1p bmNsdWRlcy5wYXRjaH0gKDY1JSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3F0Ni1wZGYv cGF0Y2hlcy8wMTQyLXNhbmRib3gtbWVtYmFycmllci5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0 IHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxNDMtc25kaW8ucGF0Y2gKIHJlbmFtZSBzcmNwa2dz L3F0Ni1wZGYvcGF0Y2hlcy97MDE1NS1zeXN0eXBlcy5wYXRjaCA9PiAwMTQ0LXN5c3R5cGVzLnBh dGNofSAoOTMlKQogcmVuYW1lIHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzL3swMTUwLWNocm9taXVt LXVuYnVuZGxlLWZmbXBlZy1hdl9zdHJlYW1fZ2V0X2ZpcnN0X2R0cy5wYXRjaCA9PiAwMTQ1LXVu YnVuZGxlLWZmbXBlZy1hdl9zdHJlYW1fZ2V0X2ZpcnN0X2R0cy5wYXRjaH0gKDU2JSkKIHJlbmFt ZSBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy97MDE1MS1jaHJvbWl1bS11bmJ1bmRsZWQtY3Jvc3Mt dG9vbGNoYWluLnBhdGNoID0+IDAxNDYtdW5idW5kbGVkLWNyb3NzLXRvb2xjaGFpbi5wYXRjaH0g KDU2JSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTQ4LXdl YnJ0Yy1zaXplX3QucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3F0Ni1wZGYvcGF0 Y2hlcy8wMTUyLWNocm9taXVtLXdlYnJ0Yy1zaXplX3QucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0 NCBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTUzLWNocm9taXVtLXdlYnJ0Yy1zaXplX3QucGF0 Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTU0LWNocm9t aXVtLXVpdF90LnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9xdDYtcGRmL3BhdGNo ZXMvMDMwMC1jaHJvbWl1bS1tdXNsLWhhY2tzLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3Jj cGtncy9xdDYtcGRmL3BhdGNoZXMvMDMwMS1jaHJvbWl1bS1tdXNsLXNhbmRib3gucGF0Y2gKIGRl bGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wNzAwLWFybXY3bC1uZW9u LnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDc1MC1j aHJvbWl1bS1tdXNsLWNyb3NzLW5vLWFzbV9wdHJhY2VfaC5wYXRjaAogZGVsZXRlIG1vZGUgMTAw NjQ0IHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzA3NTEtY2hyb21pdW0tbXVzbC1hcm0tdXNlcl92 ZnAucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wNzUy LWNocm9taXVtLW11c2wtYXJtLWVsZl9hdXh2X3QucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBz cmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wNzUzLWNocm9taXVtLW11c2wtMzItYml0LWZzdGF0LnBh dGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDgwMC1tdXNs LXNhbmRib3gucGF0Y2gKIHJlbmFtZSBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy97MDAxMC1jaHJv bWl1bS1tdXNsLXRpZC1jYWNoaW5nLnBhdGNoID0+IDA4MDEtbXVzbC10aWQtY2FjaGluZy5wYXRj aH0gKDkyJSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wODAy LW11c2wtbm8tcmVzLW5pbml0LW5jbG9zZS5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3Br Z3MvcXQ2LXBkZi9wYXRjaGVzLzA4MDMtbXVzbC1pbmNsdWRlLnBhdGNoCiBkZWxldGUgbW9kZSAx MDA2NDQgc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDk5OC1jcm9zcy5wYXRjaAogY3JlYXRlIG1v ZGUgMTAwNjQ0IHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzA5OTgtZXhhbXBsZS1jcm9zcy1idWls ZC5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzA5OTkt cHl0aG9uMy4xMi5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcXQ2LXBkZi9wYXRj aGVzL1BhcnRpYWwtbWlncmF0aW9uLWZyb20taW1wLXRvLWltcG9ydGxpYi5wYXRjaAogZGVsZXRl IG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzL2ZpeC1saWJ4bWwyLTIuMTIucGF0 Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy9waXBld2lyZS1m Y250bC1jYWxsLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDAw MS1Ob25lLW5vLWRlYnVnLnBhdGNoIGIvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDAwMS1Ob25l LW5vLWRlYnVnLnBhdGNoCmluZGV4IGIyMjFmZGNkMzkyZmFhLi5iNjU5NmJkNTdmNjQ2YyAxMDA2 NDQKLS0tIGEvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDAwMS1Ob25lLW5vLWRlYnVnLnBhdGNo CisrKyBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAwMDEtTm9uZS1uby1kZWJ1Zy5wYXRjaApA QCAtMSw2ICsxLDYgQEAKLS0tLSBxdDYtd2ViZW5naW5lLTYuNC4yLm9yaWcvY21ha2UvRnVuY3Rp b25zLmNtYWtlCi0rKysgcXQ2LXdlYmVuZ2luZS02LjQuMi9jbWFrZS9GdW5jdGlvbnMuY21ha2UK LUBAIC04MjAsNiArODIwLDggQEAgbWFjcm8oYXBwZW5kX2J1aWxkX3R5cGVfc2V0dXApCistLS0g YS9jbWFrZS9GdW5jdGlvbnMuY21ha2UKKysrKyBiL2NtYWtlL0Z1bmN0aW9ucy5jbWFrZQorQEAg LTg0NCw2ICs4NDQsOCBAQCBtYWNybyhhcHBlbmRfYnVpbGRfdHlwZV9zZXR1cCkKICAgICAgICAg IGVuZGlmKCkKICAgICAgZWxzZWlmKCR7Y29uZmlnfSBTVFJFUVVBTCAiTWluU2l6ZVJlbCIpCiAg ICAgICAgICBsaXN0KEFQUEVORCBnbkFyZ0FyZyBpc19kZWJ1Zz1mYWxzZSBzeW1ib2xfbGV2ZWw9 MCBvcHRpbWl6ZV9mb3Jfc2l6ZT10cnVlKQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdDYtcGRmL3Bh dGNoZXMvMDAwMy1jcm9zcy1oYWNrLnBhdGNoIGIvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDAw My1jcm9zcy1oYWNrLnBhdGNoCmluZGV4IGEzZjBhNTc5MTQwNmJlLi5mODIxMzNkNjc0NmZlMyAx MDA2NDQKLS0tIGEvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDAwMy1jcm9zcy1oYWNrLnBhdGNo CisrKyBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAwMDMtY3Jvc3MtaGFjay5wYXRjaApAQCAt MSwxMCArMSwxMCBAQAotLS0tIHF0Ni13ZWJlbmdpbmUtNi40LjIub3JpZy9zcmMvY29yZS9hcGkv Q01ha2VMaXN0cy50eHQKLSsrKyBxdDYtd2ViZW5naW5lLTYuNC4yL3NyYy9jb3JlL2FwaS9DTWFr ZUxpc3RzLnR4dAotQEAgLTUxLDYgKzUxLDcgQEAgcXRfaW50ZXJuYWxfYWRkX21vZHVsZShXZWJF bmdpbmVDb3JlCistLS0gYS9zcmMvY29yZS9hcGkvQ01ha2VMaXN0cy50eHQKKysrKyBiL3NyYy9j b3JlL2FwaS9DTWFrZUxpc3RzLnR4dAorQEAgLTU3LDYgKzU3LDcgQEAgcXRfaW50ZXJuYWxfYWRk X21vZHVsZShXZWJFbmdpbmVDb3JlCiAgICAgICAgICBRdDo6R3VpCiAgICAgICAgICBRdDo6TmV0 d29yawogICAgICAgICAgUXQ6OlF1aWNrCiArICAgICAgICBYMTEKKyAgICAgRVhUUkFfQ01BS0Vf RklMRVMKKyAgICAgICAgICIke0NNQUtFX0NVUlJFTlRfTElTVF9ESVJ9LyR7SU5TVEFMTF9DTUFL RV9OQU1FU1BBQ0V9V2ViRW5naW5lQ29yZURlcGxveVN1cHBvcnQuY21ha2UiCiAgKQotIAotIHNl dF90YXJnZXRfcHJvcGVydGllcyhXZWJFbmdpbmVDb3JlIFBST1BFUlRJRVMgUVRXRUJFTkdJTkVQ Uk9DRVNTX05BTUUgJHtxdFdlYkVuZ2luZVByb2Nlc3NOYW1lfSkKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvcXQ2LXBkZi9wYXRjaGVzLzAwNTAtbm8tZ2xpYmMtY21ha2UtY2hlY2sucGF0Y2ggYi9zcmNw a2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMDA0LW5vLWdsaWJjLWNtYWtlLWNoZWNrLnBhdGNoCnNpbWls YXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMDUw LW5vLWdsaWJjLWNtYWtlLWNoZWNrLnBhdGNoCnJlbmFtZSB0byBzcmNwa2dzL3F0Ni1wZGYvcGF0 Y2hlcy8wMDA0LW5vLWdsaWJjLWNtYWtlLWNoZWNrLnBhdGNoCmRpZmYgLS1naXQgYS9zcmNwa2dz L3F0Ni1wZGYvcGF0Y2hlcy8wMDA0LXJpc2N2LWFuZ2xlLnBhdGNoIGIvc3JjcGtncy9xdDYtcGRm L3BhdGNoZXMvMDAwNC1yaXNjdi1hbmdsZS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggMWFjZWI2ZjJkMjI5ZTkuLjAwMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvcXQ2LXBk Zi9wYXRjaGVzLzAwMDQtcmlzY3YtYW5nbGUucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwyOCAr MCwwIEBACi1JbmRleDogY2hyb21pdW0tMTExLjAuNTU2My42NC90aGlyZF9wYXJ0eS9hbmdsZS9n bmkvYW5nbGUuZ25pCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gY2hyb21pdW0tMTExLjAuNTU2My42NC5vcmln L3RoaXJkX3BhcnR5L2FuZ2xlL2duaS9hbmdsZS5nbmkKLSsrKyBjaHJvbWl1bS0xMTEuMC41NTYz LjY0L3RoaXJkX3BhcnR5L2FuZ2xlL2duaS9hbmdsZS5nbmkKLUBAIC0xMDUsNyArMTA1LDggQEAg ZGVjbGFyZV9hcmdzKCkgewotIAotICAgaWYgKGN1cnJlbnRfY3B1ID09ICJhcm02NCIgfHwgY3Vy cmVudF9jcHUgPT0gIng2NCIgfHwKLSAgICAgICBjdXJyZW50X2NwdSA9PSAibWlwczY0ZWwiIHx8 IGN1cnJlbnRfY3B1ID09ICJzMzkweCIgfHwKLS0gICAgICBjdXJyZW50X2NwdSA9PSAicHBjNjQi IHx8IGN1cnJlbnRfY3B1ID09ICJsb29uZzY0IikgewotKyAgICAgIGN1cnJlbnRfY3B1ID09ICJw cGM2NCIgfHwgY3VycmVudF9jcHUgPT0gImxvb25nNjQiIHx8Ci0rICAgICAgY3VycmVudF9jcHUg PT0gInJpc2N2NjQiKSB7Ci0gICAgIGFuZ2xlXzY0Yml0X2N1cnJlbnRfY3B1ID0gdHJ1ZQotICAg fSBlbHNlIGlmIChjdXJyZW50X2NwdSA9PSAiYXJtIiB8fCBjdXJyZW50X2NwdSA9PSAieDg2IiB8 fAotICAgICAgICAgICAgICBjdXJyZW50X2NwdSA9PSAibWlwc2VsIiB8fCBjdXJyZW50X2NwdSA9 PSAiczM5MCIgfHwKLUluZGV4OiBjaHJvbWl1bS0xMTEuMC41NTYzLjY0L3RoaXJkX3BhcnR5L2Fu Z2xlL3NyYy9jb21tb24vcGxhdGZvcm0uaAotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGNocm9taXVtLTExMS4w LjU1NjMuNjQub3JpZy90aGlyZF9wYXJ0eS9hbmdsZS9zcmMvY29tbW9uL3BsYXRmb3JtLmgKLSsr KyBjaHJvbWl1bS0xMTEuMC41NTYzLjY0L3RoaXJkX3BhcnR5L2FuZ2xlL3NyYy9jb21tb24vcGxh dGZvcm0uaAotQEAgLTEwOCw3ICsxMDgsNyBAQAotICNlbmRpZgotIAotIC8vIE1pcHMgYW5kIGFy bSBkZXZpY2VzIG5lZWQgdG8gaW5jbHVkZSBzdGRkZWYgZm9yIHNpemVfdC4KLS0jaWYgZGVmaW5l ZChfX21pcHNfXykgfHwgZGVmaW5lZChfX2FybV9fKSB8fCBkZWZpbmVkKF9fYWFyY2g2NF9fKQot KyNpZiBkZWZpbmVkKF9fbWlwc19fKSB8fCBkZWZpbmVkKF9fYXJtX18pIHx8IGRlZmluZWQoX19h YXJjaDY0X18pIHx8IGRlZmluZWQoX19yaXNjdikKLSAjICAgIGluY2x1ZGUgPHN0ZGRlZi5oPgot ICNlbmRpZgotIAotCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMDA0LXJp c2N2LWFuZ2xlLnBhdGNoLmFyZ3MgYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMDA0LXJpc2N2 LWFuZ2xlLnBhdGNoLmFyZ3MKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ1ZjM4ZTM1 NGU3ZjAwLi4wMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMDA0 LXJpc2N2LWFuZ2xlLnBhdGNoLmFyZ3MKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi0tTnAx IC0tZGlyZWN0b3J5PXNyYy8zcmRwYXJ0eS9jaHJvbWl1bS8KZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv cXQ2LXBkZi9wYXRjaGVzLzAwMDUtcmlzY3YtY3Jhc2hwYWQucGF0Y2ggYi9zcmNwa2dzL3F0Ni1w ZGYvcGF0Y2hlcy8wMDA1LXJpc2N2LWNyYXNocGFkLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEw MDY0NAppbmRleCAwMTJhMzhjMzg4NjU5NC4uMDAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9x dDYtcGRmL3BhdGNoZXMvMDAwNS1yaXNjdi1jcmFzaHBhZC5wYXRjaAorKysgL2Rldi9udWxsCkBA IC0xLDc3OCArMCwwIEBACi1JbmRleDogY2hyb21pdW0tMTA2LjAuNTI0OS45MS90aGlyZF9wYXJ0 eS9jcmFzaHBhZC9jcmFzaHBhZC9taW5pZHVtcC9taW5pZHVtcF9jb250ZXh0LmgKLT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT0KLS0tLSBjaHJvbWl1bS0xMDYuMC41MjQ5LjkxLm9yaWcvdGhpcmRfcGFydHkvY3Jhc2hwYWQv Y3Jhc2hwYWQvbWluaWR1bXAvbWluaWR1bXBfY29udGV4dC5oCi0rKysgY2hyb21pdW0tMTA2LjAu NTI0OS45MS90aGlyZF9wYXJ0eS9jcmFzaHBhZC9jcmFzaHBhZC9taW5pZHVtcC9taW5pZHVtcF9j b250ZXh0LmgKLUBAIC02MzcsNiArNjM3LDQxIEBAIHN0cnVjdCBNaW5pZHVtcENvbnRleHRNSVBT NjQgewotICAgdWludDY0X3QgZmlyOwotIH07Ci0gCi0rLy8hIFxicmllZiA2NGJpdCBSSVNDLVYt c3BlY2lmYyBmbGFncyBmb3IgTWluaWR1bXBDb250ZXh0UklTQ1Y2NDo6Y29udGV4dF9mbGFncy4K LSsvLyEgQmFzZWQgb24gbWluaWR1bXBfY3B1X3Jpc2N2NjQuaCBmcm9tIGJyZWFrcGFkCi0rZW51 bSBNaW5pZHVtcENvbnRleHRSSVNDVjY0RmxhZ3MgOiB1aW50MzJfdCB7Ci0rICAvLyEgXGJyaWVm IElkZW50aWZpZXMgdGhlIGNvbnRleHQgc3RydWN0dXJlIGFzIFJJU0NWNjQuCi0rICBrTWluaWR1 bXBDb250ZXh0UklTQ1Y2NCA9IDB4MDAwODAwMDAsCi0rCi0rICAvLyEgXGJyaWVmIEluZGljYXRl cyB0aGUgdmFsaWRpdHkgb2YgaW50ZWdlciByZWdpc3RlcnMuCi0rICAvLyEKLSsgIC8vISBSZWdp c3RlcnMgYHgxYC1geDMxYCBhbmQgcGMgYXJlIHZhbGlkLgotKyAga01pbmlkdW1wQ29udGV4dFJJ U0NWNjRJbnRlZ2VyID0ga01pbmlkdW1wQ29udGV4dFJJU0NWNjQgfCAweDAwMDAwMDAyLAotKwot KyAgLy8hIFxicmllZiBJbmRpY2F0ZXMgdGhlIHZhbGlkaXR5IG9mIGZsb2F0aW5nIHBvaW50IHJl Z2lzdGVycy4KLSsgIC8vIQotKyAgLy8hIEZsb2F0aW5nIHBvaW50IHJlZ2lzdGVycyBgZjBgLWBm MzFgLCBhbmQgYGZjc3JgIGFyZSB2YWxpZAotKyAga01pbmlkdW1wQ29udGV4dFJJU0NWNjRGbG9h dGluZ1BvaW50ID0ga01pbmlkdW1wQ29udGV4dFJJU0NWNjQgfCAweDAwMDAwMDA0LAotKwotKyAg Ly8hIFxicmllZiBJbmRpY2F0ZXMgdGhlIHZhbGlkaXR5IG9mIGFsbCByZWdpc3RlcnMuCi0rICBr TWluaWR1bXBDb250ZXh0UklTQ1Y2NEFsbCA9IGtNaW5pZHVtcENvbnRleHRSSVNDVjY0SW50ZWdl ciB8Ci0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga01pbmlkdW1wQ29udGV4dFJJU0NW NjRGbG9hdGluZ1BvaW50LAotK307Ci0rCi0rLy8hIFxicmllZiBBIDY0Yml0IFJJU0NWIENQVSBj b250ZXh0IChyZWdpc3RlciBzdGF0ZSkgY2FycmllZCBpbiBhIG1pbmlkdW1wIGZpbGUuCi0rc3Ry dWN0IE1pbmlkdW1wQ29udGV4dFJJU0NWNjQgewotKyAgdWludDY0X3QgY29udGV4dF9mbGFnczsK LSsKLSsgIC8vISBcYnJpZWYgR2VuZXJhbCBwdXJwb3NlIHJlZ2lzdGVycy4KLSsgIHVpbnQ2NF90 IHJlZ3NbMzJdOwotKwotKyAgLy8hIFxicmllZiBGUFUgcmVnaXN0ZXJzLgotKyAgdWludDY0X3Qg ZnByZWdzWzMyXTsKLSsKLSsgIC8vISBcYnJpZWYgRlBVIHN0YXR1cyByZWdpc3Rlci4KLSsgIHVp bnQ2NF90IGZjc3I7Ci0rfTsKLSsKLSB9ICAvLyBuYW1lc3BhY2UgY3Jhc2hwYWQKLSAKLSAjZW5k aWYgIC8vIENSQVNIUEFEX01JTklEVU1QX01JTklEVU1QX0NPTlRFWFRfSF8KLUluZGV4OiBjaHJv bWl1bS0xMDYuMC41MjQ5LjkxL3RoaXJkX3BhcnR5L2NyYXNocGFkL2NyYXNocGFkL21pbmlkdW1w L21pbmlkdW1wX2NvbnRleHRfd3JpdGVyLmNjCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gY2hyb21pdW0tMTA2 LjAuNTI0OS45MS5vcmlnL3RoaXJkX3BhcnR5L2NyYXNocGFkL2NyYXNocGFkL21pbmlkdW1wL21p bmlkdW1wX2NvbnRleHRfd3JpdGVyLmNjCi0rKysgY2hyb21pdW0tMTA2LjAuNTI0OS45MS90aGly ZF9wYXJ0eS9jcmFzaHBhZC9jcmFzaHBhZC9taW5pZHVtcC9taW5pZHVtcF9jb250ZXh0X3dyaXRl ci5jYwotQEAgLTEwMiw2ICsxMDIsMTMgQEAgTWluaWR1bXBDb250ZXh0V3JpdGVyOjpDcmVhdGVG cm9tU25hcHNobwotICAgICAgIGJyZWFrOwotICAgICB9Ci0gCi0rICAgIGNhc2Uga0NQVUFyY2hp dGVjdHVyZVJJU0NWNjQ6IHsKLSsgICAgICBjb250ZXh0ID0gc3RkOjptYWtlX3VuaXF1ZTxNaW5p ZHVtcENvbnRleHRSSVNDVjY0V3JpdGVyPigpOwotKyAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8TWlu aWR1bXBDb250ZXh0UklTQ1Y2NFdyaXRlcio+KGNvbnRleHQuZ2V0KCkpCi0rICAgICAgICAgIC0+ SW5pdGlhbGl6ZUZyb21TbmFwc2hvdChjb250ZXh0X3NuYXBzaG90LT5yaXNjdjY0KTsKLSsgICAg ICBicmVhazsKLSsgICAgfQotKwotICAgICBkZWZhdWx0OiB7Ci0gICAgICAgTE9HKEVSUk9SKSA8 PCAidW5rbm93biBjb250ZXh0IGFyY2hpdGVjdHVyZSAiCi0gICAgICAgICAgICAgICAgICA8PCBj b250ZXh0X3NuYXBzaG90LT5hcmNoaXRlY3R1cmU7Ci1AQCAtNTU1LDUgKzU2Miw0MiBAQCBzaXpl X3QgTWluaWR1bXBDb250ZXh0TUlQUzY0V3JpdGVyOjpDb250Ci0gICBEQ0hFQ0tfR0Uoc3RhdGUo KSwga1N0YXRlRnJvemVuKTsKLSAgIHJldHVybiBzaXplb2YoY29udGV4dF8pOwotIH0KLSsKLStN aW5pZHVtcENvbnRleHRSSVNDVjY0V3JpdGVyOjpNaW5pZHVtcENvbnRleHRSSVNDVjY0V3JpdGVy KCkKLSsgICAgOiBNaW5pZHVtcENvbnRleHRXcml0ZXIoKSwgY29udGV4dF8oKSB7Ci0rICBjb250 ZXh0Xy5jb250ZXh0X2ZsYWdzID0ga01pbmlkdW1wQ29udGV4dFJJU0NWNjQ7Ci0rfQotKwotK01p bmlkdW1wQ29udGV4dFJJU0NWNjRXcml0ZXI6On5NaW5pZHVtcENvbnRleHRSSVNDVjY0V3JpdGVy KCkgPSBkZWZhdWx0OwotKwotK3ZvaWQgTWluaWR1bXBDb250ZXh0UklTQ1Y2NFdyaXRlcjo6SW5p dGlhbGl6ZUZyb21TbmFwc2hvdCgKLSsgICAgY29uc3QgQ1BVQ29udGV4dFJJU0NWNjQqIGNvbnRl eHRfc25hcHNob3QpIHsKLSsgIERDSEVDS19FUShzdGF0ZSgpLCBrU3RhdGVNdXRhYmxlKTsKLSsg IERDSEVDS19FUShjb250ZXh0Xy5jb250ZXh0X2ZsYWdzLCBrTWluaWR1bXBDb250ZXh0UklTQ1Y2 NCk7Ci0rCi0rICBjb250ZXh0Xy5jb250ZXh0X2ZsYWdzID0ga01pbmlkdW1wQ29udGV4dFJJU0NW NjRBbGw7Ci0rCi0rICBzdGF0aWNfYXNzZXJ0KHNpemVvZihjb250ZXh0Xy5yZWdzKSA9PSBzaXpl b2YoY29udGV4dF9zbmFwc2hvdC0+cmVncyksCi0rICAgICAgICAgICAgICAgICJHUFJzIHNpemUg bWlzbWF0Y2giKTsKLSsgIG1lbWNweShjb250ZXh0Xy5yZWdzLCBjb250ZXh0X3NuYXBzaG90LT5y ZWdzLCBzaXplb2YoY29udGV4dF8ucmVncykpOwotKwotKyAgc3RhdGljX2Fzc2VydChzaXplb2Yo Y29udGV4dF8uZnByZWdzKSA9PSBzaXplb2YoY29udGV4dF9zbmFwc2hvdC0+ZnByZWdzKSwKLSsg ICAgICAgICAgICAgICAgIkZQUnMgc2l6ZSBtaXNtYXRjaCIpOwotKyAgbWVtY3B5KGNvbnRleHRf LmZwcmVncywKLSsgICAgICAgICBjb250ZXh0X3NuYXBzaG90LT5mcHJlZ3MsCi0rICAgICAgICAg c2l6ZW9mKGNvbnRleHRfLmZwcmVncykpOwotKyAgY29udGV4dF8uZmNzciA9IGNvbnRleHRfc25h cHNob3QtPmZjc3I7Ci0rfQotKwotK2Jvb2wgTWluaWR1bXBDb250ZXh0UklTQ1Y2NFdyaXRlcjo6 V3JpdGVPYmplY3QoCi0rICAgIEZpbGVXcml0ZXJJbnRlcmZhY2UqIGZpbGVfd3JpdGVyKSB7Ci0r ICBEQ0hFQ0tfRVEoc3RhdGUoKSwga1N0YXRlV3JpdGFibGUpOwotKyAgcmV0dXJuIGZpbGVfd3Jp dGVyLT5Xcml0ZSgmY29udGV4dF8sIHNpemVvZihjb250ZXh0XykpOwotK30KLSsKLStzaXplX3Qg TWluaWR1bXBDb250ZXh0UklTQ1Y2NFdyaXRlcjo6Q29udGV4dFNpemUoKSBjb25zdCB7Ci0rICBE Q0hFQ0tfR0Uoc3RhdGUoKSwga1N0YXRlRnJvemVuKTsKLSsgIHJldHVybiBzaXplb2YoY29udGV4 dF8pOwotK30KLSAKLSB9ICAvLyBuYW1lc3BhY2UgY3Jhc2hwYWQKLUluZGV4OiBjaHJvbWl1bS0x MDYuMC41MjQ5LjkxL3RoaXJkX3BhcnR5L2NyYXNocGFkL2NyYXNocGFkL21pbmlkdW1wL21pbmlk dW1wX2NvbnRleHRfd3JpdGVyLmgKLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBjaHJvbWl1bS0xMDYuMC41MjQ5 LjkxLm9yaWcvdGhpcmRfcGFydHkvY3Jhc2hwYWQvY3Jhc2hwYWQvbWluaWR1bXAvbWluaWR1bXBf Y29udGV4dF93cml0ZXIuaAotKysrIGNocm9taXVtLTEwNi4wLjUyNDkuOTEvdGhpcmRfcGFydHkv Y3Jhc2hwYWQvY3Jhc2hwYWQvbWluaWR1bXAvbWluaWR1bXBfY29udGV4dF93cml0ZXIuaAotQEAg LTM2OSw2ICszNjksNDkgQEAgY2xhc3MgTWluaWR1bXBDb250ZXh0TUlQUzY0V3JpdGVyIGZpbmFs Ci0gICBNaW5pZHVtcENvbnRleHRNSVBTNjQgY29udGV4dF87Ci0gfTsKLSAKLSsvLyEgXGJyaWVm IFRoZSB3cml0ZXIgZm9yIGEgTWluaWR1bXBDb250ZXh0UklTQ1Y2NCBzdHJ1Y3R1cmUgaW4gYSBt aW5pZHVtcCBmaWxlLgotK2NsYXNzIE1pbmlkdW1wQ29udGV4dFJJU0NWNjRXcml0ZXIgZmluYWwg OiBwdWJsaWMgTWluaWR1bXBDb250ZXh0V3JpdGVyIHsKLSsgcHVibGljOgotKyAgTWluaWR1bXBD b250ZXh0UklTQ1Y2NFdyaXRlcigpOwotKwotKyAgTWluaWR1bXBDb250ZXh0UklTQ1Y2NFdyaXRl cihjb25zdCBNaW5pZHVtcENvbnRleHRSSVNDVjY0V3JpdGVyJikgPSBkZWxldGU7Ci0rICBNaW5p ZHVtcENvbnRleHRSSVNDVjY0V3JpdGVyJiBvcGVyYXRvcj0oY29uc3QgTWluaWR1bXBDb250ZXh0 UklTQ1Y2NFdyaXRlciYpID0KLSsgICAgICBkZWxldGU7Ci0rCi0rICB+TWluaWR1bXBDb250ZXh0 UklTQ1Y2NFdyaXRlcigpIG92ZXJyaWRlOwotKwotKyAgLy8hIFxicmllZiBJbml0aWFsaXplcyB0 aGUgTWluaWR1bXBDb250ZXh0UklTQ1YgYmFzZWQgb24gXGEgY29udGV4dF9zbmFwc2hvdC4KLSsg IC8vIQotKyAgLy8hIFxwYXJhbVtpbl0gY29udGV4dF9zbmFwc2hvdCBUaGUgY29udGV4dCBzbmFw c2hvdCB0byB1c2UgYXMgc291cmNlIGRhdGEuCi0rICAvLyEKLSsgIC8vISBcbm90ZSBWYWxpZCBp biAja1N0YXRlTXV0YWJsZS4gTm8gbXV0YXRpb24gb2YgY29udGV4dCgpIG1heSBiZSBkb25lIGJl Zm9yZQotKyAgLy8hICAgICBjYWxsaW5nIHRoaXMgbWV0aG9kLCBhbmQgaXQgaXMgbm90IG5vcm1h bGx5IG5lY2Vzc2FyeSB0byBhbHRlcgotKyAgLy8hICAgICBjb250ZXh0KCkgYWZ0ZXIgY2FsbGlu ZyB0aGlzIG1ldGhvZC4KLSsgIHZvaWQgSW5pdGlhbGl6ZUZyb21TbmFwc2hvdChjb25zdCBDUFVD b250ZXh0UklTQ1Y2NCogY29udGV4dF9zbmFwc2hvdCk7Ci0rCi0rICAvLyEgXGJyaWVmIFJldHVy bnMgYSBwb2ludGVyIHRvIHRoZSBjb250ZXh0IHN0cnVjdHVyZSB0aGF0IHRoaXMgb2JqZWN0IHdp bGwKLSsgIC8vISAgICAgd3JpdGUuCi0rICAvLyEKLSsgIC8vISBcYXR0ZW50aW9uIFRoaXMgcmV0 dXJucyBhIG5vbi1gY29uc3RgIHBvaW50ZXIgdG8gdGhpcyBvYmplY3TigJlzIHByaXZhdGUKLSsg IC8vISAgICAgZGF0YSBzbyB0aGF0IGEgY2FsbGVyIGNhbiBwb3B1bGF0ZSB0aGUgY29udGV4dCBz dHJ1Y3R1cmUgZGlyZWN0bHkuCi0rICAvLyEgICAgIFRoaXMgaXMgZG9uZSBiZWNhdXNlIHByb3Zp ZGluZyBzZXR0ZXIgaW50ZXJmYWNlcyB0byBlYWNoIGZpZWxkIGluIHRoZQotKyAgLy8hICAgICBj b250ZXh0IHN0cnVjdHVyZSB3b3VsZCBiZSB1bndpZWxkeSBhbmQgY3VtYmVyc29tZS4gQ2FyZSBt dXN0IGJlIHRha2VuCi0rICAvLyEgICAgIHRvIHBvcHVsYXRlIHRoZSBjb250ZXh0IHN0cnVjdHVy ZSBjb3JyZWN0bHkuIFRoZSBjb250ZXh0IHN0cnVjdHVyZQotKyAgLy8hICAgICBtdXN0IG9ubHkg YmUgbW9kaWZpZWQgd2hpbGUgdGhpcyBvYmplY3QgaXMgaW4gdGhlICNrU3RhdGVNdXRhYmxlCi0r ICAvLyEgICAgIHN0YXRlLgotKyAgTWluaWR1bXBDb250ZXh0UklTQ1Y2NCogY29udGV4dCgpIHsg cmV0dXJuICZjb250ZXh0XzsgfQotKwotKyBwcm90ZWN0ZWQ6Ci0rICAvLyBNaW5pZHVtcFdyaXRh YmxlOgotKyAgYm9vbCBXcml0ZU9iamVjdChGaWxlV3JpdGVySW50ZXJmYWNlKiBmaWxlX3dyaXRl cikgb3ZlcnJpZGU7Ci0rCi0rICAvLyBNaW5pZHVtcENvbnRleHRXcml0ZXI6Ci0rICBzaXplX3Qg Q29udGV4dFNpemUoKSBjb25zdCBvdmVycmlkZTsKLSsKLSsgcHJpdmF0ZToKLSsgIE1pbmlkdW1w Q29udGV4dFJJU0NWNjQgY29udGV4dF87Ci0rfTsKLSsKLSB9ICAvLyBuYW1lc3BhY2UgY3Jhc2hw YWQKLSAKLSAjZW5kaWYgIC8vIENSQVNIUEFEX01JTklEVU1QX01JTklEVU1QX0NPTlRFWFRfV1JJ VEVSX0hfCi1JbmRleDogY2hyb21pdW0tMTA2LjAuNTI0OS45MS90aGlyZF9wYXJ0eS9jcmFzaHBh ZC9jcmFzaHBhZC9taW5pZHVtcC9taW5pZHVtcF9taXNjX2luZm9fd3JpdGVyLmNjCi09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09Ci0tLS0gY2hyb21pdW0tMTA2LjAuNTI0OS45MS5vcmlnL3RoaXJkX3BhcnR5L2NyYXNocGFk L2NyYXNocGFkL21pbmlkdW1wL21pbmlkdW1wX21pc2NfaW5mb193cml0ZXIuY2MKLSsrKyBjaHJv bWl1bS0xMDYuMC41MjQ5LjkxL3RoaXJkX3BhcnR5L2NyYXNocGFkL2NyYXNocGFkL21pbmlkdW1w L21pbmlkdW1wX21pc2NfaW5mb193cml0ZXIuY2MKLUBAIC0xNzUsNiArMTc1LDEwIEBAIHN0ZDo6 c3RyaW5nIE1pbmlkdW1wTWlzY0luZm9EZWJ1Z0J1aWxkU3QKLSAgIHN0YXRpYyBjb25zdGV4cHIg Y2hhciBrQ1BVW10gPSAibWlwcyI7Ci0gI2VsaWYgZGVmaW5lZChBUkNIX0NQVV9NSVBTNjRFTCkK LSAgIHN0YXRpYyBjb25zdGV4cHIgY2hhciBrQ1BVW10gPSAibWlwczY0IjsKLSsjZWxpZiBkZWZp bmVkKEFSQ0hfQ1BVX1JJU0NWMzIpCi0rICBzdGF0aWMgY29uc3RleHByIGNoYXIga0NQVVtdID0g InJpc2N2MzIiOwotKyNlbGlmIGRlZmluZWQoQVJDSF9DUFVfUklTQ1Y2NCkKLSsgIHN0YXRpYyBj b25zdGV4cHIgY2hhciBrQ1BVW10gPSAicmlzY3Y2NCI7Ci0gI2Vsc2UKLSAjZXJyb3IgZGVmaW5l IGtDUFUgZm9yIHRoaXMgQ1BVCi0gI2VuZGlmCi1JbmRleDogY2hyb21pdW0tMTA2LjAuNTI0OS45 MS90aGlyZF9wYXJ0eS9jcmFzaHBhZC9jcmFzaHBhZC9zbmFwc2hvdC9jYXB0dXJlX21lbW9yeS5j YwotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQotLS0tIGNocm9taXVtLTEwNi4wLjUyNDkuOTEub3JpZy90aGlyZF9wYXJ0 eS9jcmFzaHBhZC9jcmFzaHBhZC9zbmFwc2hvdC9jYXB0dXJlX21lbW9yeS5jYwotKysrIGNocm9t aXVtLTEwNi4wLjUyNDkuOTEvdGhpcmRfcGFydHkvY3Jhc2hwYWQvY3Jhc2hwYWQvc25hcHNob3Qv Y2FwdHVyZV9tZW1vcnkuY2MKLUBAIC0xMTcsNiArMTE3LDE2IEBAIHZvaWQgQ2FwdHVyZU1lbW9y eTo6UG9pbnRlZFRvQnlDb250ZXh0KGMKLSAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc3RkOjpz aXplKGNvbnRleHQubWlwc2VsLT5yZWdzKTsgKytpKSB7Ci0gICAgIE1heWJlQ2FwdHVyZU1lbW9y eUFyb3VuZChkZWxlZ2F0ZSwgY29udGV4dC5taXBzZWwtPnJlZ3NbaV0pOwotICAgfQotKyNlbGlm IGRlZmluZWQoQVJDSF9DUFVfUklTQ1ZfRkFNSUxZKQotKyAgaWYgKGNvbnRleHQuYXJjaGl0ZWN0 dXJlID09IGtDUFVBcmNoaXRlY3R1cmVSSVNDVjY0KSB7Ci0rICAgIGZvciAoc2l6ZV90IGkgPSAw OyBpIDwgc3RkOjpzaXplKGNvbnRleHQucmlzY3Y2NC0+cmVncyk7ICsraSkgewotKyAgICAgIE1h eWJlQ2FwdHVyZU1lbW9yeUFyb3VuZChkZWxlZ2F0ZSwgY29udGV4dC5yaXNjdjY0LT5yZWdzW2ld KTsKLSsgICAgfQotKyAgfSBlbHNlIHsKLSsgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzdGQ6 OnNpemUoY29udGV4dC5yaXNjdjMyLT5yZWdzKTsgKytpKSB7Ci0rICAgICAgTWF5YmVDYXB0dXJl TWVtb3J5QXJvdW5kKGRlbGVnYXRlLCBjb250ZXh0LnJpc2N2MzItPnJlZ3NbaV0pOwotKyAgICB9 Ci0rICB9Ci0gI2Vsc2UKLSAjZXJyb3IgUG9ydC4KLSAjZW5kaWYKLUluZGV4OiBjaHJvbWl1bS0x MDYuMC41MjQ5LjkxL3RoaXJkX3BhcnR5L2NyYXNocGFkL2NyYXNocGFkL3NuYXBzaG90L2NwdV9h cmNoaXRlY3R1cmUuaAotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGNocm9taXVtLTEwNi4wLjUyNDkuOTEub3Jp Zy90aGlyZF9wYXJ0eS9jcmFzaHBhZC9jcmFzaHBhZC9zbmFwc2hvdC9jcHVfYXJjaGl0ZWN0dXJl LmgKLSsrKyBjaHJvbWl1bS0xMDYuMC41MjQ5LjkxL3RoaXJkX3BhcnR5L2NyYXNocGFkL2NyYXNo cGFkL3NuYXBzaG90L2NwdV9hcmNoaXRlY3R1cmUuaAotQEAgLTQzLDcgKzQzLDEzIEBAIGVudW0g Q1BVQXJjaGl0ZWN0dXJlIHsKLSAgIGtDUFVBcmNoaXRlY3R1cmVNSVBTRUwsCi0gCi0gICAvLyEg XGJyaWVmIDY0LWJpdCBNSVBTRUwuCi0tICBrQ1BVQXJjaGl0ZWN0dXJlTUlQUzY0RUwKLSsgIGtD UFVBcmNoaXRlY3R1cmVNSVBTNjRFTCwKLSsKLSsgIC8vISBcYnJpZWYgMzItYml0IFJJU0NWLgot KyAga0NQVUFyY2hpdGVjdHVyZVJJU0NWMzIsCi0rCi0rICAvLyEgXGJyaWVmIDY0LWJpdCBSSVND Vi4KLSsgIGtDUFVBcmNoaXRlY3R1cmVSSVNDVjY0Ci0gfTsKLSAKLSB9ICAvLyBuYW1lc3BhY2Ug Y3Jhc2hwYWQKLUluZGV4OiBjaHJvbWl1bS0xMDYuMC41MjQ5LjkxL3RoaXJkX3BhcnR5L2NyYXNo cGFkL2NyYXNocGFkL3NuYXBzaG90L2NwdV9jb250ZXh0LmNjCi09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gY2hy b21pdW0tMTA2LjAuNTI0OS45MS5vcmlnL3RoaXJkX3BhcnR5L2NyYXNocGFkL2NyYXNocGFkL3Nu YXBzaG90L2NwdV9jb250ZXh0LmNjCi0rKysgY2hyb21pdW0tMTA2LjAuNTI0OS45MS90aGlyZF9w YXJ0eS9jcmFzaHBhZC9jcmFzaHBhZC9zbmFwc2hvdC9jcHVfY29udGV4dC5jYwotQEAgLTIyNiwx MCArMjI2LDEyIEBAIGJvb2wgQ1BVQ29udGV4dDo6SXM2NEJpdCgpIGNvbnN0IHsKLSAgICAgY2Fz ZSBrQ1BVQXJjaGl0ZWN0dXJlWDg2XzY0OgotICAgICBjYXNlIGtDUFVBcmNoaXRlY3R1cmVBUk02 NDoKLSAgICAgY2FzZSBrQ1BVQXJjaGl0ZWN0dXJlTUlQUzY0RUw6Ci0rICAgIGNhc2Uga0NQVUFy Y2hpdGVjdHVyZVJJU0NWNjQ6Ci0gICAgICAgcmV0dXJuIHRydWU7Ci0gICAgIGNhc2Uga0NQVUFy Y2hpdGVjdHVyZVg4NjoKLSAgICAgY2FzZSBrQ1BVQXJjaGl0ZWN0dXJlQVJNOgotICAgICBjYXNl IGtDUFVBcmNoaXRlY3R1cmVNSVBTRUw6Ci0rICAgIGNhc2Uga0NQVUFyY2hpdGVjdHVyZVJJU0NW MzI6Ci0gICAgICAgcmV0dXJuIGZhbHNlOwotICAgICBkZWZhdWx0OgotICAgICAgIE5PVFJFQUNI RUQoKTsKLUluZGV4OiBjaHJvbWl1bS0xMDYuMC41MjQ5LjkxL3RoaXJkX3BhcnR5L2NyYXNocGFk L2NyYXNocGFkL3NuYXBzaG90L2NwdV9jb250ZXh0LmgKLT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBjaHJvbWl1 bS0xMDYuMC41MjQ5LjkxLm9yaWcvdGhpcmRfcGFydHkvY3Jhc2hwYWQvY3Jhc2hwYWQvc25hcHNo b3QvY3B1X2NvbnRleHQuaAotKysrIGNocm9taXVtLTEwNi4wLjUyNDkuOTEvdGhpcmRfcGFydHkv Y3Jhc2hwYWQvY3Jhc2hwYWQvc25hcHNob3QvY3B1X2NvbnRleHQuaAotQEAgLTM2Miw2ICszNjIs MjAgQEAgc3RydWN0IENQVUNvbnRleHRNSVBTNjQgewotICAgdWludDY0X3QgZmlyOwotIH07Ci0g Ci0rLy8hIFxicmllZiBBIGNvbnRleHQgc3RydWN0dXJlIGNhcnJ5aW5nIFJJU0NWMzIgQ1BVIHN0 YXRlLgotK3N0cnVjdCBDUFVDb250ZXh0UklTQ1YzMiB7Ci0rICB1aW50MzJfdCByZWdzWzMyXTsK LSsgIHVpbnQ2NF90IGZwcmVnc1szMl07Ci0rICB1aW50MzJfdCBmY3NyOwotK307Ci0rCi0rLy8h IFxicmllZiBBIGNvbnRleHQgc3RydWN0dXJlIGNhcnJ5aW5nIFJJU0NWNjQgQ1BVIHN0YXRlLgot K3N0cnVjdCBDUFVDb250ZXh0UklTQ1Y2NCB7Ci0rICB1aW50NjRfdCByZWdzWzMyXTsKLSsgIHVp bnQ2NF90IGZwcmVnc1szMl07Ci0rICB1aW50MzJfdCBmY3NyOwotK307Ci0rCi0gLy8hIFxicmll ZiBBIGNvbnRleHQgc3RydWN0dXJlIGNhcGFibGUgb2YgY2FycnlpbmcgdGhlIGNvbnRleHQgb2Yg YW55IHN1cHBvcnRlZAotIC8vISAgICAgQ1BVIGFyY2hpdGVjdHVyZS4KLSBzdHJ1Y3QgQ1BVQ29u dGV4dCB7Ci1AQCAtNDAyLDYgKzQxNiw4IEBAIHN0cnVjdCBDUFVDb250ZXh0IHsKLSAgICAgQ1BV Q29udGV4dEFSTTY0KiBhcm02NDsKLSAgICAgQ1BVQ29udGV4dE1JUFMqIG1pcHNlbDsKLSAgICAg Q1BVQ29udGV4dE1JUFM2NCogbWlwczY0OwotKyAgICBDUFVDb250ZXh0UklTQ1YzMiogcmlzY3Yz MjsKLSsgICAgQ1BVQ29udGV4dFJJU0NWNjQqIHJpc2N2NjQ7Ci0gICB9OwotIH07Ci0gCi1JbmRl eDogY2hyb21pdW0tMTA2LjAuNTI0OS45MS90aGlyZF9wYXJ0eS9jcmFzaHBhZC9jcmFzaHBhZC9z bmFwc2hvdC9saW51eC9jcHVfY29udGV4dF9saW51eC5jYwotPT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGNocm9t aXVtLTEwNi4wLjUyNDkuOTEub3JpZy90aGlyZF9wYXJ0eS9jcmFzaHBhZC9jcmFzaHBhZC9zbmFw c2hvdC9saW51eC9jcHVfY29udGV4dF9saW51eC5jYwotKysrIGNocm9taXVtLTEwNi4wLjUyNDku OTEvdGhpcmRfcGFydHkvY3Jhc2hwYWQvY3Jhc2hwYWQvc25hcHNob3QvbGludXgvY3B1X2NvbnRl eHRfbGludXguY2MKLUBAIC0yNjYsNiArMjY2LDMwIEBAIHZvaWQgSW5pdGlhbGl6ZUNQVUNvbnRl eHRBUk02NF9Pbmx5RlBTSU0KLSAgIGNvbnRleHQtPmZwY3IgPSBmbG9hdF9jb250ZXh0LmZwY3I7 Ci0gfQotIAotKyNlbGlmIGRlZmluZWQoQVJDSF9DUFVfUklTQ1ZfRkFNSUxZKQotKwotK3RlbXBs YXRlIDx0eXBlbmFtZSBUcmFpdHM+Ci0rdm9pZCBJbml0aWFsaXplQ1BVQ29udGV4dFJJU0NWKAot KyAgICBjb25zdCB0eXBlbmFtZSBUcmFpdHM6OlNpZ25hbFRocmVhZENvbnRleHQmIHRocmVhZF9j b250ZXh0LAotKyAgICBjb25zdCB0eXBlbmFtZSBUcmFpdHM6OlNpZ25hbEZsb2F0Q29udGV4dCYg ZmxvYXRfY29udGV4dCwKLSsgICAgdHlwZW5hbWUgVHJhaXRzOjpDUFVDb250ZXh0KiBjb250ZXh0 KSB7Ci0rICBzdGF0aWNfYXNzZXJ0KHNpemVvZihjb250ZXh0LT5yZWdzKSA9PSBzaXplb2YodGhy ZWFkX2NvbnRleHQpLAotKyAgICAgICAgICAgICAgICAicmVnaXN0ZXJzIHNpemUgbWlzbWF0Y2gi KTsKLSsgIHN0YXRpY19hc3NlcnQoc2l6ZW9mKGNvbnRleHQtPmZwcmVncykgPT0gc2l6ZW9mKGZs b2F0X2NvbnRleHQuZiksCi0rICAgICAgICAgICAgICAgICJmcCByZWdpc3RlcnMgc2l6ZSBtaXNt YXRjaCIpOwotKyAgbWVtY3B5KCZjb250ZXh0LT5yZWdzLCAmdGhyZWFkX2NvbnRleHQsIHNpemVv Zihjb250ZXh0LT5yZWdzKSk7Ci0rICBtZW1jcHkoJmNvbnRleHQtPmZwcmVncywgJmZsb2F0X2Nv bnRleHQuZiwgc2l6ZW9mKGNvbnRleHQtPmZwcmVncykpOwotKyAgY29udGV4dC0+ZmNzciA9IGZs b2F0X2NvbnRleHQuZmNzcjsKLSt9Ci0rdGVtcGxhdGUgdm9pZCBJbml0aWFsaXplQ1BVQ29udGV4 dFJJU0NWPENvbnRleHRUcmFpdHMzMj4oCi0rICAgIGNvbnN0IENvbnRleHRUcmFpdHMzMjo6U2ln bmFsVGhyZWFkQ29udGV4dCYgdGhyZWFkX2NvbnRleHQsCi0rICAgIGNvbnN0IENvbnRleHRUcmFp dHMzMjo6U2lnbmFsRmxvYXRDb250ZXh0JiBmbG9hdF9jb250ZXh0LAotKyAgICBDb250ZXh0VHJh aXRzMzI6OkNQVUNvbnRleHQqIGNvbnRleHQpOwotK3RlbXBsYXRlIHZvaWQgSW5pdGlhbGl6ZUNQ VUNvbnRleHRSSVNDVjxDb250ZXh0VHJhaXRzNjQ+KAotKyAgICBjb25zdCBDb250ZXh0VHJhaXRz NjQ6OlNpZ25hbFRocmVhZENvbnRleHQmIHRocmVhZF9jb250ZXh0LAotKyAgICBjb25zdCBDb250 ZXh0VHJhaXRzNjQ6OlNpZ25hbEZsb2F0Q29udGV4dCYgZmxvYXRfY29udGV4dCwKLSsgICAgQ29u dGV4dFRyYWl0czY0OjpDUFVDb250ZXh0KiBjb250ZXh0KTsKLSsKLSAjZW5kaWYgIC8vIEFSQ0hf Q1BVX1g4Nl9GQU1JTFkKLSAKLSB9ICAvLyBuYW1lc3BhY2UgaW50ZXJuYWwKLUluZGV4OiBjaHJv bWl1bS0xMDYuMC41MjQ5LjkxL3RoaXJkX3BhcnR5L2NyYXNocGFkL2NyYXNocGFkL3NuYXBzaG90 L2xpbnV4L2NwdV9jb250ZXh0X2xpbnV4LmgKLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBjaHJvbWl1bS0xMDYu MC41MjQ5LjkxLm9yaWcvdGhpcmRfcGFydHkvY3Jhc2hwYWQvY3Jhc2hwYWQvc25hcHNob3QvbGlu dXgvY3B1X2NvbnRleHRfbGludXguaAotKysrIGNocm9taXVtLTEwNi4wLjUyNDkuOTEvdGhpcmRf cGFydHkvY3Jhc2hwYWQvY3Jhc2hwYWQvc25hcHNob3QvbGludXgvY3B1X2NvbnRleHRfbGludXgu aAotQEAgLTE3NCw2ICsxNzQsMjIgQEAgdm9pZCBJbml0aWFsaXplQ1BVQ29udGV4dE1JUFMoCi0g Ci0gI2VuZGlmICAvLyBBUkNIX0NQVV9NSVBTX0ZBTUlMWSB8fCBET1hZR0VOCi0gCi0rI2lmIGRl ZmluZWQoQVJDSF9DUFVfUklTQ1ZfRkFNSUxZKSB8fCBET1hZR0VOCi0rCi0rLy8hIFxicmllZiBJ bml0aWFsaXplcyBhIENQVUNvbnRleHRSSVNDViBzdHJ1Y3R1cmUgZnJvbSBuYXRpdmUgY29udGV4 dAotKy8vISAgICAgc3RydWN0dXJlcyBvbiBMaW51eC4KLSsvLyEKLSsvLyEgXHBhcmFtW2luXSB0 aHJlYWRfY29udGV4dCBUaGUgbmF0aXZlIHRocmVhZCBjb250ZXh0LgotKy8vISBccGFyYW1baW5d IGZsb2F0X2NvbnRleHQgVGhlIG5hdGl2ZSBmbG9hdCBjb250ZXh0LgotKy8vISBccGFyYW1bb3V0 XSBjb250ZXh0IFRoZSBDUFVDb250ZXh0UklTQ1Ygc3RydWN0dXJlIHRvIGluaXRpYWxpemUuCi0r dGVtcGxhdGUgPHR5cGVuYW1lIFRyYWl0cz4KLSt2b2lkIEluaXRpYWxpemVDUFVDb250ZXh0UklT Q1YoCi0rICAgIGNvbnN0IHR5cGVuYW1lIFRyYWl0czo6U2lnbmFsVGhyZWFkQ29udGV4dCYgdGhy ZWFkX2NvbnRleHQsCi0rICAgIGNvbnN0IHR5cGVuYW1lIFRyYWl0czo6U2lnbmFsRmxvYXRDb250 ZXh0JiBmbG9hdF9jb250ZXh0LAotKyAgICB0eXBlbmFtZSBUcmFpdHM6OkNQVUNvbnRleHQqIGNv bnRleHQpOwotKwotKyNlbmRpZiAgLy8gQVJDSF9DUFVfUklTQ1ZfRkFNSUxZIHx8IERPWFlHRU4K LSsKLSB9ICAvLyBuYW1lc3BhY2UgaW50ZXJuYWwKLSB9ICAvLyBuYW1lc3BhY2UgY3Jhc2hwYWQK LSAKLUluZGV4OiBjaHJvbWl1bS0xMDYuMC41MjQ5LjkxL3RoaXJkX3BhcnR5L2NyYXNocGFkL2Ny YXNocGFkL3NuYXBzaG90L2xpbnV4L2V4Y2VwdGlvbl9zbmFwc2hvdF9saW51eC5jYwotPT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PQotLS0tIGNocm9taXVtLTEwNi4wLjUyNDkuOTEub3JpZy90aGlyZF9wYXJ0eS9jcmFzaHBh ZC9jcmFzaHBhZC9zbmFwc2hvdC9saW51eC9leGNlcHRpb25fc25hcHNob3RfbGludXguY2MKLSsr KyBjaHJvbWl1bS0xMDYuMC41MjQ5LjkxL3RoaXJkX3BhcnR5L2NyYXNocGFkL2NyYXNocGFkL3Nu YXBzaG90L2xpbnV4L2V4Y2VwdGlvbl9zbmFwc2hvdF9saW51eC5jYwotQEAgLTMyNSw2ICszMjUs NjEgQEAgYm9vbCBFeGNlcHRpb25TbmFwc2hvdExpbnV4OjpSZWFkQ29udGV4dAotICAgICAgIHJl YWRlciwgY29udGV4dF9hZGRyZXNzLCBjb250ZXh0Xy5taXBzNjQpOwotIH0KLSAKLSsjZWxpZiBk ZWZpbmVkKEFSQ0hfQ1BVX1JJU0NWX0ZBTUlMWSkKLSsKLSt0ZW1wbGF0ZSA8dHlwZW5hbWUgVHJh aXRzPgotK3N0YXRpYyBib29sIFJlYWRDb250ZXh0KFByb2Nlc3NSZWFkZXJMaW51eCogcmVhZGVy LAotKyAgICAgICAgICAgICAgICAgICAgICAgIExpbnV4Vk1BZGRyZXNzIGNvbnRleHRfYWRkcmVz cywKLSsgICAgICAgICAgICAgICAgICAgICAgICB0eXBlbmFtZSBUcmFpdHM6OkNQVUNvbnRleHQq IGRlc3RfY29udGV4dCkgewotKyAgY29uc3QgUHJvY2Vzc01lbW9yeSogbWVtb3J5ID0gcmVhZGVy LT5NZW1vcnkoKTsKLSsKLSsgIExpbnV4Vk1BZGRyZXNzIGdyZWdzX2FkZHJlc3MgPSBjb250ZXh0 X2FkZHJlc3MgKwotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9mZnNldG9mKFVD b250ZXh0PFRyYWl0cz4sIG1jb250ZXh0KSArCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgb2Zmc2V0b2YodHlwZW5hbWUgVHJhaXRzOjpNQ29udGV4dCwgZ3JlZ3MpOwotKwotKyAg dHlwZW5hbWUgVHJhaXRzOjpTaWduYWxUaHJlYWRDb250ZXh0IHRocmVhZF9jb250ZXh0OwotKyAg aWYgKCFtZW1vcnktPlJlYWQoZ3JlZ3NfYWRkcmVzcywgc2l6ZW9mKHRocmVhZF9jb250ZXh0KSwg JnRocmVhZF9jb250ZXh0KSkgewotKyAgICBMT0coRVJST1IpIDw8ICJDb3VsZG4ndCByZWFkIGdy ZWdzIjsKLSsgICAgcmV0dXJuIGZhbHNlOwotKyAgfQotKwotKyAgTGludXhWTUFkZHJlc3MgZnBy ZWdzX2FkZHJlc3MgPSBjb250ZXh0X2FkZHJlc3MgKwotKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBvZmZzZXRvZihVQ29udGV4dDxUcmFpdHM+LCBtY29udGV4dCkgKwotKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvZmZzZXRvZih0eXBlbmFtZSBUcmFpdHM6Ok1D b250ZXh0LCBmcHJlZ3MpOwotKwotKyAgdHlwZW5hbWUgVHJhaXRzOjpTaWduYWxGbG9hdENvbnRl eHQgZnBfY29udGV4dDsKLSsgIGlmICghbWVtb3J5LT5SZWFkKGZwcmVnc19hZGRyZXNzLCBzaXpl b2YoZnBfY29udGV4dCksICZmcF9jb250ZXh0KSkgewotKyAgICBMT0coRVJST1IpIDw8ICJDb3Vs ZG4ndCByZWFkIGZwcmVncyI7Ci0rICAgIHJldHVybiBmYWxzZTsKLSsgIH0KLSsKLSsgIEluaXRp YWxpemVDUFVDb250ZXh0UklTQ1Y8VHJhaXRzPih0aHJlYWRfY29udGV4dCwgZnBfY29udGV4dCwg ZGVzdF9jb250ZXh0KTsKLSsKLSsgIHJldHVybiB0cnVlOwotK30KLSsKLSt0ZW1wbGF0ZSA8Pgot K2Jvb2wgRXhjZXB0aW9uU25hcHNob3RMaW51eDo6UmVhZENvbnRleHQ8Q29udGV4dFRyYWl0czMy PigKLSsgICAgUHJvY2Vzc1JlYWRlckxpbnV4KiByZWFkZXIsCi0rICAgIExpbnV4Vk1BZGRyZXNz IGNvbnRleHRfYWRkcmVzcykgewotKyAgY29udGV4dF8uYXJjaGl0ZWN0dXJlID0ga0NQVUFyY2hp dGVjdHVyZVJJU0NWMzI7Ci0rICBjb250ZXh0Xy5yaXNjdjMyID0gJmNvbnRleHRfdW5pb25fLnJp c2N2MzI7Ci0rCi0rICByZXR1cm4gaW50ZXJuYWw6OlJlYWRDb250ZXh0PENvbnRleHRUcmFpdHMz Mj4oCi0rICAgICAgcmVhZGVyLCBjb250ZXh0X2FkZHJlc3MsIGNvbnRleHRfLnJpc2N2MzIpOwot K30KLSsKLSt0ZW1wbGF0ZSA8PgotK2Jvb2wgRXhjZXB0aW9uU25hcHNob3RMaW51eDo6UmVhZENv bnRleHQ8Q29udGV4dFRyYWl0czY0PigKLSsgICAgUHJvY2Vzc1JlYWRlckxpbnV4KiByZWFkZXIs Ci0rICAgIExpbnV4Vk1BZGRyZXNzIGNvbnRleHRfYWRkcmVzcykgewotKyAgY29udGV4dF8uYXJj aGl0ZWN0dXJlID0ga0NQVUFyY2hpdGVjdHVyZVJJU0NWNjQ7Ci0rICBjb250ZXh0Xy5yaXNjdjY0 ID0gJmNvbnRleHRfdW5pb25fLnJpc2N2NjQ7Ci0rCi0rICByZXR1cm4gaW50ZXJuYWw6OlJlYWRD b250ZXh0PENvbnRleHRUcmFpdHM2ND4oCi0rICAgICAgcmVhZGVyLCBjb250ZXh0X2FkZHJlc3Ms IGNvbnRleHRfLnJpc2N2NjQpOwotK30KLSsKLSAjZW5kaWYgIC8vIEFSQ0hfQ1BVX1g4Nl9GQU1J TFkKLSAKLSBib29sIEV4Y2VwdGlvblNuYXBzaG90TGludXg6OkluaXRpYWxpemUoCi1JbmRleDog Y2hyb21pdW0tMTA2LjAuNTI0OS45MS90aGlyZF9wYXJ0eS9jcmFzaHBhZC9jcmFzaHBhZC9zbmFw c2hvdC9saW51eC9leGNlcHRpb25fc25hcHNob3RfbGludXguaAotPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGNo cm9taXVtLTEwNi4wLjUyNDkuOTEub3JpZy90aGlyZF9wYXJ0eS9jcmFzaHBhZC9jcmFzaHBhZC9z bmFwc2hvdC9saW51eC9leGNlcHRpb25fc25hcHNob3RfbGludXguaAotKysrIGNocm9taXVtLTEw Ni4wLjUyNDkuOTEvdGhpcmRfcGFydHkvY3Jhc2hwYWQvY3Jhc2hwYWQvc25hcHNob3QvbGludXgv ZXhjZXB0aW9uX3NuYXBzaG90X2xpbnV4LmgKLUBAIC04OSw2ICs4OSw5IEBAIGNsYXNzIEV4Y2Vw dGlvblNuYXBzaG90TGludXggZmluYWwgOiBwdWIKLSAjZWxpZiBkZWZpbmVkKEFSQ0hfQ1BVX01J UFNfRkFNSUxZKQotICAgICBDUFVDb250ZXh0TUlQUyBtaXBzZWw7Ci0gICAgIENQVUNvbnRleHRN SVBTNjQgbWlwczY0OwotKyNlbGlmIGRlZmluZWQoQVJDSF9DUFVfUklTQ1ZfRkFNSUxZKQotKyAg ICBDUFVDb250ZXh0UklTQ1YzMiByaXNjdjMyOwotKyAgICBDUFVDb250ZXh0UklTQ1Y2NCByaXNj djY0OwotICNlbmRpZgotICAgfSBjb250ZXh0X3VuaW9uXzsKLSAgIENQVUNvbnRleHQgY29udGV4 dF87Ci1JbmRleDogY2hyb21pdW0tMTA2LjAuNTI0OS45MS90aGlyZF9wYXJ0eS9jcmFzaHBhZC9j cmFzaHBhZC9zbmFwc2hvdC9saW51eC9wcm9jZXNzX3JlYWRlcl9saW51eC5jYwotPT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PQotLS0tIGNocm9taXVtLTEwNi4wLjUyNDkuOTEub3JpZy90aGlyZF9wYXJ0eS9jcmFzaHBhZC9j cmFzaHBhZC9zbmFwc2hvdC9saW51eC9wcm9jZXNzX3JlYWRlcl9saW51eC5jYwotKysrIGNocm9t aXVtLTEwNi4wLjUyNDkuOTEvdGhpcmRfcGFydHkvY3Jhc2hwYWQvY3Jhc2hwYWQvc25hcHNob3Qv bGludXgvcHJvY2Vzc19yZWFkZXJfbGludXguY2MKLUBAIC0xMjcsNiArMTI3LDkgQEAgdm9pZCBQ cm9jZXNzUmVhZGVyTGludXg6OlRocmVhZDo6SW5pdGlhbAotICNlbGlmIGRlZmluZWQoQVJDSF9D UFVfTUlQU19GQU1JTFkpCi0gICBzdGFja19wb2ludGVyID0gcmVhZGVyLT5JczY0Qml0KCkgPyB0 aHJlYWRfaW5mby50aHJlYWRfY29udGV4dC50NjQucmVnc1syOV0KLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICA6IHRocmVhZF9pbmZvLnRocmVhZF9jb250ZXh0LnQzMi5yZWdz WzI5XTsKLSsjZWxpZiBkZWZpbmVkKEFSQ0hfQ1BVX1JJU0NWX0ZBTUlMWSkKLSsgIHN0YWNrX3Bv aW50ZXIgPSByZWFkZXItPklzNjRCaXQoKSA/IHRocmVhZF9pbmZvLnRocmVhZF9jb250ZXh0LnQ2 NC5zcAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogdGhyZWFkX2luZm8u dGhyZWFkX2NvbnRleHQudDMyLnNwOwotICNlbHNlCi0gI2Vycm9yIFBvcnQuCi0gI2VuZGlmCi1J bmRleDogY2hyb21pdW0tMTA2LjAuNTI0OS45MS90aGlyZF9wYXJ0eS9jcmFzaHBhZC9jcmFzaHBh ZC9zbmFwc2hvdC9saW51eC9zaWduYWxfY29udGV4dC5oCi09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gY2hyb21p dW0tMTA2LjAuNTI0OS45MS5vcmlnL3RoaXJkX3BhcnR5L2NyYXNocGFkL2NyYXNocGFkL3NuYXBz aG90L2xpbnV4L3NpZ25hbF9jb250ZXh0LmgKLSsrKyBjaHJvbWl1bS0xMDYuMC41MjQ5LjkxL3Ro aXJkX3BhcnR5L2NyYXNocGFkL2NyYXNocGFkL3NuYXBzaG90L2xpbnV4L3NpZ25hbF9jb250ZXh0 LmgKLUBAIC00MjIsNiArNDIyLDY3IEBAIHN0YXRpY19hc3NlcnQob2Zmc2V0b2YoVUNvbnRleHQ8 Q29udGV4dFQKLSAgICAgICAgICAgICAgICJjb250ZXh0IG9mZnNldCBtaXNtYXRjaCIpOwotICNl bmRpZgotIAotKyNlbGlmIGRlZmluZWQoQVJDSF9DUFVfUklTQ1ZfRkFNSUxZKQotKwotK3N0cnVj dCBNQ29udGV4dDMyIHsKLSsgIHVpbnQzMl90IGdyZWdzWzMyXTsKLSsgIHVpbnQ2NF90IGZwcmVn c1szMl07Ci0rICB1bnNpZ25lZCBpbnQgZmNzcjsKLSt9OwotKwotK3N0cnVjdCBNQ29udGV4dDY0 IHsKLSsgIHVpbnQ2NF90IGdyZWdzWzMyXTsKLSsgIHVpbnQ2NF90IGZwcmVnc1szMl07Ci0rICB1 bnNpZ25lZCBpbnQgZmNzcjsKLSt9OwotKwotK3N0cnVjdCBDb250ZXh0VHJhaXRzMzIgOiBwdWJs aWMgVHJhaXRzMzIgewotKyAgdXNpbmcgTUNvbnRleHQgPSBNQ29udGV4dDMyOwotKyAgdXNpbmcg U2lnbmFsVGhyZWFkQ29udGV4dCA9IFRocmVhZENvbnRleHQ6OnQzMl90OwotKyAgdXNpbmcgU2ln bmFsRmxvYXRDb250ZXh0ID0gRmxvYXRDb250ZXh0OjpmMzJfdDsKLSsgIHVzaW5nIENQVUNvbnRl eHQgPSBDUFVDb250ZXh0UklTQ1YzMjsKLSt9OwotKwotK3N0cnVjdCBDb250ZXh0VHJhaXRzNjQg OiBwdWJsaWMgVHJhaXRzNjQgewotKyAgdXNpbmcgTUNvbnRleHQgPSBNQ29udGV4dDY0OwotKyAg dXNpbmcgU2lnbmFsVGhyZWFkQ29udGV4dCA9IFRocmVhZENvbnRleHQ6OnQ2NF90OwotKyAgdXNp bmcgU2lnbmFsRmxvYXRDb250ZXh0ID0gRmxvYXRDb250ZXh0OjpmNjRfdDsKLSsgIHVzaW5nIENQ VUNvbnRleHQgPSBDUFVDb250ZXh0UklTQ1Y2NDsKLSt9OwotKwotK3RlbXBsYXRlIDx0eXBlbmFt ZSBUcmFpdHM+Ci0rc3RydWN0IFVDb250ZXh0IHsKLSsgIHR5cGVuYW1lIFRyYWl0czo6VUxvbmcg ZmxhZ3M7Ci0rICB0eXBlbmFtZSBUcmFpdHM6OkFkZHJlc3MgbGluazsKLSsgIFNpZ25hbFN0YWNr PFRyYWl0cz4gc3RhY2s7Ci0rICBTaWdzZXQ8VHJhaXRzPiBzaWdtYXNrOwotKyAgY2hhciBwYWRk aW5nWzEyOCAtIHNpemVvZihzaWdtYXNrKV07Ci0rICB0eXBlbmFtZSBUcmFpdHM6OkNoYXJfNjRP bmx5IHBhZGRpbmcyWzhdOwotKyAgdHlwZW5hbWUgVHJhaXRzOjpNQ29udGV4dCBtY29udGV4dDsK LSt9OwotKwotKyNpZiBkZWZpbmVkKEFSQ0hfQ1BVX1JJU0NWMzIpCi0rc3RhdGljX2Fzc2VydChv ZmZzZXRvZihVQ29udGV4dDxDb250ZXh0VHJhaXRzMzI+LCBtY29udGV4dCkgPT0KLSsgICAgICAg ICAgICAgICAgICBvZmZzZXRvZih1Y29udGV4dF90LCB1Y19tY29udGV4dCksCi0rICAgICAgICAg ICAgICAiY29udGV4dCBvZmZzZXQgbWlzbWF0Y2giKTsKLStzdGF0aWNfYXNzZXJ0KG9mZnNldG9m KFVDb250ZXh0PENvbnRleHRUcmFpdHMzMj4sIG1jb250ZXh0LmdyZWdzKSA9PQotKyAgICAgICAg ICAgICAgICAgIG9mZnNldG9mKHVjb250ZXh0X3QsIHVjX21jb250ZXh0Ll9fZ3JlZ3MpLAotKyAg ICAgICAgICAgICAgImNvbnRleHQgb2Zmc2V0IG1pc21hdGNoIik7Ci0rc3RhdGljX2Fzc2VydChv ZmZzZXRvZihVQ29udGV4dDxDb250ZXh0VHJhaXRzMzI+LCBtY29udGV4dC5mcHJlZ3MpID09Ci0r ICAgICAgICAgICAgICAgICAgb2Zmc2V0b2YodWNvbnRleHRfdCwgdWNfbWNvbnRleHQuX19mcHJl Z3MpLAotKyAgICAgICAgICAgICAgImNvbnRleHQgb2Zmc2V0IG1pc21hdGNoIik7Ci0rI2VsaWYg ZGVmaW5lZChBUkNIX0NQVV9SSVNDVjY0KQotK3N0YXRpY19hc3NlcnQob2Zmc2V0b2YoVUNvbnRl eHQ8Q29udGV4dFRyYWl0czY0PiwgbWNvbnRleHQpID09Ci0rICAgICAgICAgICAgICAgICAgb2Zm c2V0b2YodWNvbnRleHRfdCwgdWNfbWNvbnRleHQpLAotKyAgICAgICAgICAgICAgImNvbnRleHQg b2Zmc2V0IG1pc21hdGNoIik7Ci0rc3RhdGljX2Fzc2VydChvZmZzZXRvZihVQ29udGV4dDxDb250 ZXh0VHJhaXRzNjQ+LCBtY29udGV4dC5ncmVncykgPT0KLSsgICAgICAgICAgICAgICAgICBvZmZz ZXRvZih1Y29udGV4dF90LCB1Y19tY29udGV4dC5fX2dyZWdzKSwKLSsgICAgICAgICAgICAgICJj b250ZXh0IG9mZnNldCBtaXNtYXRjaCIpOwotK3N0YXRpY19hc3NlcnQob2Zmc2V0b2YoVUNvbnRl eHQ8Q29udGV4dFRyYWl0czY0PiwgbWNvbnRleHQuZnByZWdzKSA9PQotKyAgICAgICAgICAgICAg ICAgIG9mZnNldG9mKHVjb250ZXh0X3QsIHVjX21jb250ZXh0Ll9fZnByZWdzKSwKLSsgICAgICAg ICAgICAgICJjb250ZXh0IG9mZnNldCBtaXNtYXRjaCIpOwotKyNlbmRpZgotKwotICNlbHNlCi0g I2Vycm9yIFBvcnQuCi0gI2VuZGlmICAvLyBBUkNIX0NQVV9YODZfRkFNSUxZCi1JbmRleDogY2hy b21pdW0tMTA2LjAuNTI0OS45MS90aGlyZF9wYXJ0eS9jcmFzaHBhZC9jcmFzaHBhZC9zbmFwc2hv dC9saW51eC9zeXN0ZW1fc25hcHNob3RfbGludXguY2MKLT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBjaHJvbWl1 bS0xMDYuMC41MjQ5LjkxLm9yaWcvdGhpcmRfcGFydHkvY3Jhc2hwYWQvY3Jhc2hwYWQvc25hcHNo b3QvbGludXgvc3lzdGVtX3NuYXBzaG90X2xpbnV4LmNjCi0rKysgY2hyb21pdW0tMTA2LjAuNTI0 OS45MS90aGlyZF9wYXJ0eS9jcmFzaHBhZC9jcmFzaHBhZC9zbmFwc2hvdC9saW51eC9zeXN0ZW1f c25hcHNob3RfbGludXguY2MKLUBAIC0yMDUsNiArMjA1LDkgQEAgQ1BVQXJjaGl0ZWN0dXJlIFN5 c3RlbVNuYXBzaG90TGludXg6OkdldAotICNlbGlmIGRlZmluZWQoQVJDSF9DUFVfTUlQU19GQU1J TFkpCi0gICByZXR1cm4gcHJvY2Vzc19yZWFkZXJfLT5JczY0Qml0KCkgPyBrQ1BVQXJjaGl0ZWN0 dXJlTUlQUzY0RUwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IGtDUFVB cmNoaXRlY3R1cmVNSVBTRUw7Ci0rI2VsaWYgZGVmaW5lZChBUkNIX0NQVV9SSVNDVl9GQU1JTFkp Ci0rICByZXR1cm4gcHJvY2Vzc19yZWFkZXJfLT5JczY0Qml0KCkgPyBrQ1BVQXJjaGl0ZWN0dXJl UklTQ1Y2NAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDoga0NQVUFyY2hp dGVjdHVyZVJJU0NWMzI7Ci0gI2Vsc2UKLSAjZXJyb3IgcG9ydCB0byB5b3VyIGFyY2hpdGVjdHVy ZQotICNlbmRpZgotQEAgLTIyMCw2ICsyMjMsOSBAQCB1aW50MzJfdCBTeXN0ZW1TbmFwc2hvdExp bnV4OjpDUFVSZXZpc2lvCi0gI2VsaWYgZGVmaW5lZChBUkNIX0NQVV9NSVBTX0ZBTUlMWSkKLSAg IC8vIE5vdCBpbXBsZW1lbnRhYmxlIG9uIE1JUFMKLSAgIHJldHVybiAwOwotKyNlbGlmIGRlZmlu ZWQoQVJDSF9DUFVfUklTQ1ZfRkFNSUxZKQotKyAgLy8gTm90IGltcGxlbWVudGFibGUgb24gUklT Q1YKLSsgIHJldHVybiAwOwotICNlbHNlCi0gI2Vycm9yIHBvcnQgdG8geW91ciBhcmNoaXRlY3R1 cmUKLSAjZW5kaWYKLUBAIC0yNDAsNiArMjQ2LDkgQEAgc3RkOjpzdHJpbmcgU3lzdGVtU25hcHNo b3RMaW51eDo6Q1BVVmVuZAotICNlbGlmIGRlZmluZWQoQVJDSF9DUFVfTUlQU19GQU1JTFkpCi0g ICAvLyBOb3QgaW1wbGVtZW50YWJsZSBvbiBNSVBTCi0gICByZXR1cm4gc3RkOjpzdHJpbmcoKTsK LSsjZWxpZiBkZWZpbmVkKEFSQ0hfQ1BVX1JJU0NWX0ZBTUlMWSkKLSsgIC8vIE5vdCBpbXBsZW1l bnRhYmxlIG9uIFJJU0NWCi0rICByZXR1cm4gc3RkOjpzdHJpbmcoKTsKLSAjZWxzZQotICNlcnJv ciBwb3J0IHRvIHlvdXIgYXJjaGl0ZWN0dXJlCi0gI2VuZGlmCi1AQCAtMzczLDYgKzM4Miw5IEBA IGJvb2wgU3lzdGVtU25hcHNob3RMaW51eDo6TlhFbmFibGVkKCkgY28KLSAjZWxpZiBkZWZpbmVk KEFSQ0hfQ1BVX01JUFNfRkFNSUxZKQotICAgLy8gTm90IGltcGxlbWVudGFibGUgb24gTUlQUwot ICAgcmV0dXJuIGZhbHNlOwotKyNlbGlmIGRlZmluZWQoQVJDSF9DUFVfUklTQ1ZfRkFNSUxZKQot KyAgLy8gTm90IGltcGxlbWVudGFibGUgb24gUklTQ1YKLSsgIHJldHVybiBmYWxzZTsKLSAjZWxz ZQotICNlcnJvciBQb3J0LgotICNlbmRpZiAgLy8gQVJDSF9DUFVfWDg2X0ZBTUlMWQotSW5kZXg6 IGNocm9taXVtLTEwNi4wLjUyNDkuOTEvdGhpcmRfcGFydHkvY3Jhc2hwYWQvY3Jhc2hwYWQvc25h cHNob3QvbGludXgvdGhyZWFkX3NuYXBzaG90X2xpbnV4LmNjCi09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gY2hy b21pdW0tMTA2LjAuNTI0OS45MS5vcmlnL3RoaXJkX3BhcnR5L2NyYXNocGFkL2NyYXNocGFkL3Nu YXBzaG90L2xpbnV4L3RocmVhZF9zbmFwc2hvdF9saW51eC5jYwotKysrIGNocm9taXVtLTEwNi4w LjUyNDkuOTEvdGhpcmRfcGFydHkvY3Jhc2hwYWQvY3Jhc2hwYWQvc25hcHNob3QvbGludXgvdGhy ZWFkX3NuYXBzaG90X2xpbnV4LmNjCi1AQCAtMTkwLDYgKzE5MCwyMiBAQCBib29sIFRocmVhZFNu YXBzaG90TGludXg6OkluaXRpYWxpemUoCi0gICAgICAgICB0aHJlYWQudGhyZWFkX2luZm8uZmxv YXRfY29udGV4dC5mMzIsCi0gICAgICAgICBjb250ZXh0Xy5taXBzZWwpOwotICAgfQotKyNlbGlm IGRlZmluZWQoQVJDSF9DUFVfUklTQ1ZfRkFNSUxZKQotKyAgaWYgKHByb2Nlc3NfcmVhZGVyLT5J czY0Qml0KCkpIHsKLSsgICAgY29udGV4dF8uYXJjaGl0ZWN0dXJlID0ga0NQVUFyY2hpdGVjdHVy ZVJJU0NWNjQ7Ci0rICAgIGNvbnRleHRfLnJpc2N2NjQgPSAmY29udGV4dF91bmlvbl8ucmlzY3Y2 NDsKLSsgICAgSW5pdGlhbGl6ZUNQVUNvbnRleHRSSVNDVjxDb250ZXh0VHJhaXRzNjQ+KAotKwl0 aHJlYWQudGhyZWFkX2luZm8udGhyZWFkX2NvbnRleHQudDY0LAotKwl0aHJlYWQudGhyZWFkX2lu Zm8uZmxvYXRfY29udGV4dC5mNjQsCi0rCWNvbnRleHRfLnJpc2N2NjQpOwotKyAgfSBlbHNlIHsK LSsgICAgY29udGV4dF8uYXJjaGl0ZWN0dXJlID0ga0NQVUFyY2hpdGVjdHVyZVJJU0NWMzI7Ci0r ICAgIGNvbnRleHRfLnJpc2N2MzIgPSAmY29udGV4dF91bmlvbl8ucmlzY3YzMjsKLSsgICAgSW5p dGlhbGl6ZUNQVUNvbnRleHRSSVNDVjxDb250ZXh0VHJhaXRzMzI+KAotKwl0aHJlYWQudGhyZWFk X2luZm8udGhyZWFkX2NvbnRleHQudDMyLAotKwl0aHJlYWQudGhyZWFkX2luZm8uZmxvYXRfY29u dGV4dC5mMzIsCi0rCWNvbnRleHRfLnJpc2N2MzIpOwotKyAgfQotICNlbHNlCi0gI2Vycm9yIFBv cnQuCi0gI2VuZGlmCi1JbmRleDogY2hyb21pdW0tMTA2LjAuNTI0OS45MS90aGlyZF9wYXJ0eS9j cmFzaHBhZC9jcmFzaHBhZC9zbmFwc2hvdC9saW51eC90aHJlYWRfc25hcHNob3RfbGludXguaAot PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQotLS0tIGNocm9taXVtLTEwNi4wLjUyNDkuOTEub3JpZy90aGlyZF9wYXJ0eS9j cmFzaHBhZC9jcmFzaHBhZC9zbmFwc2hvdC9saW51eC90aHJlYWRfc25hcHNob3RfbGludXguaAot KysrIGNocm9taXVtLTEwNi4wLjUyNDkuOTEvdGhpcmRfcGFydHkvY3Jhc2hwYWQvY3Jhc2hwYWQv c25hcHNob3QvbGludXgvdGhyZWFkX3NuYXBzaG90X2xpbnV4LmgKLUBAIC03NCw2ICs3NCw5IEBA IGNsYXNzIFRocmVhZFNuYXBzaG90TGludXggZmluYWwgOiBwdWJsaWMKLSAjZWxpZiBkZWZpbmVk KEFSQ0hfQ1BVX01JUFNfRkFNSUxZKQotICAgICBDUFVDb250ZXh0TUlQUyBtaXBzZWw7Ci0gICAg IENQVUNvbnRleHRNSVBTNjQgbWlwczY0OwotKyNlbGlmIGRlZmluZWQoQVJDSF9DUFVfUklTQ1Zf RkFNSUxZKQotKyAgICBDUFVDb250ZXh0UklTQ1YzMiByaXNjdjMyOwotKyAgICBDUFVDb250ZXh0 UklTQ1Y2NCByaXNjdjY0OwotICNlbHNlCi0gI2Vycm9yIFBvcnQuCi0gI2VuZGlmICAvLyBBUkNI X0NQVV9YODZfRkFNSUxZCi1JbmRleDogY2hyb21pdW0tMTA2LjAuNTI0OS45MS90aGlyZF9wYXJ0 eS9jcmFzaHBhZC9jcmFzaHBhZC91dGlsL2xpbnV4L3B0cmFjZXIuY2MKLT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t LSBjaHJvbWl1bS0xMDYuMC41MjQ5LjkxLm9yaWcvdGhpcmRfcGFydHkvY3Jhc2hwYWQvY3Jhc2hw YWQvdXRpbC9saW51eC9wdHJhY2VyLmNjCi0rKysgY2hyb21pdW0tMTA2LjAuNTI0OS45MS90aGly ZF9wYXJ0eS9jcmFzaHBhZC9jcmFzaHBhZC91dGlsL2xpbnV4L3B0cmFjZXIuY2MKLUBAIC0zOTgs NiArMzk4LDUxIEBAIGJvb2wgR2V0VGhyZWFkQXJlYTY0KHBpZF90IHRpZCwKLSAgIHJldHVybiB0 cnVlOwotIH0KLSAKLSsjZWxpZiBkZWZpbmVkKEFSQ0hfQ1BVX1JJU0NWX0ZBTUlMWSkKLSsKLSt0 ZW1wbGF0ZSA8dHlwZW5hbWUgRGVzdGluYXRpb24+Ci0rYm9vbCBHZXRSZWdpc3RlclNldChwaWRf dCB0aWQsIGludCBzZXQsIERlc3RpbmF0aW9uKiBkZXN0LCBib29sIGNhbl9sb2cpIHsKLSsgIGlv dmVjIGlvdjsKLSsgIGlvdi5pb3ZfYmFzZSA9IGRlc3Q7Ci0rICBpb3YuaW92X2xlbiA9IHNpemVv ZigqZGVzdCk7Ci0rICBpZiAocHRyYWNlKFBUUkFDRV9HRVRSRUdTRVQsIHRpZCwgcmVpbnRlcnBy ZXRfY2FzdDx2b2lkKj4oc2V0KSwgJmlvdikgIT0gMCkgewotKyAgICBQTE9HX0lGKEVSUk9SLCBj YW5fbG9nKSA8PCAicHRyYWNlIjsKLSsgICAgcmV0dXJuIGZhbHNlOwotKyAgfQotKyAgaWYgKGlv di5pb3ZfbGVuICE9IHNpemVvZigqZGVzdCkpIHsKLSsgICAgTE9HX0lGKEVSUk9SLCBjYW5fbG9n KSA8PCAiVW5leHBlY3RlZCByZWdpc3RlcnMgc2l6ZSI7Ci0rICAgIHJldHVybiBmYWxzZTsKLSsg IH0KLSsgIHJldHVybiB0cnVlOwotK30KLSsKLStib29sIEdldEZsb2F0aW5nUG9pbnRSZWdpc3Rl cnMzMihwaWRfdCB0aWQsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRmxvYXRD b250ZXh0KiBjb250ZXh0LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wg Y2FuX2xvZykgewotKyAgcmV0dXJuIGZhbHNlOwotK30KLSsKLStib29sIEdldEZsb2F0aW5nUG9p bnRSZWdpc3RlcnM2NChwaWRfdCB0aWQsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgRmxvYXRDb250ZXh0KiBjb250ZXh0LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGJvb2wgY2FuX2xvZykgewotKyAgcmV0dXJuIEdldFJlZ2lzdGVyU2V0KHRpZCwgTlRfUFJG UFJFRywgJmNvbnRleHQtPmY2NC5mLCBjYW5fbG9nKTsKLSt9Ci0rCi0rYm9vbCBHZXRUaHJlYWRB cmVhMzIocGlkX3QgdGlkLAotKyAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFRocmVhZENvbnRl eHQmIGNvbnRleHQsCi0rICAgICAgICAgICAgICAgICAgICAgTGludXhWTUFkZHJlc3MqIGFkZHJl c3MsCi0rICAgICAgICAgICAgICAgICAgICAgYm9vbCBjYW5fbG9nKSB7Ci0rICByZXR1cm4gZmFs c2U7Ci0rfQotKwotK2Jvb2wgR2V0VGhyZWFkQXJlYTY0KHBpZF90IHRpZCwKLSsgICAgICAgICAg ICAgICAgICAgICBjb25zdCBUaHJlYWRDb250ZXh0JiBjb250ZXh0LAotKyAgICAgICAgICAgICAg ICAgICAgIExpbnV4Vk1BZGRyZXNzKiBhZGRyZXNzLAotKyAgICAgICAgICAgICAgICAgICAgIGJv b2wgY2FuX2xvZykgewotKyAgKmFkZHJlc3MgPSBjb250ZXh0LnQ2NC50cDsKLSsgIHJldHVybiB0 cnVlOwotK30KLSsKLSAjZWxzZQotICNlcnJvciBQb3J0LgotICNlbmRpZiAgLy8gQVJDSF9DUFVf WDg2X0ZBTUlMWQotSW5kZXg6IGNocm9taXVtLTEwNi4wLjUyNDkuOTEvdGhpcmRfcGFydHkvY3Jh c2hwYWQvY3Jhc2hwYWQvdXRpbC9saW51eC90aHJlYWRfaW5mby5oCi09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0g Y2hyb21pdW0tMTA2LjAuNTI0OS45MS5vcmlnL3RoaXJkX3BhcnR5L2NyYXNocGFkL2NyYXNocGFk L3V0aWwvbGludXgvdGhyZWFkX2luZm8uaAotKysrIGNocm9taXVtLTEwNi4wLjUyNDkuOTEvdGhp cmRfcGFydHkvY3Jhc2hwYWQvY3Jhc2hwYWQvdXRpbC9saW51eC90aHJlYWRfaW5mby5oCi1AQCAt NzksNiArNzksNDAgQEAgdW5pb24gVGhyZWFkQ29udGV4dCB7Ci0gICAgIHVpbnQzMl90IGNwMF9z dGF0dXM7Ci0gICAgIHVpbnQzMl90IGNwMF9jYXVzZTsKLSAgICAgdWludDMyX3QgcGFkZGluZzFf OwotKyNlbGlmIGRlZmluZWQoQVJDSF9DUFVfUklTQ1ZfRkFNSUxZKQotKyAgICAvLyBSZWZsZWN0 cyB1c2VyX3JlZ3Nfc3RydWN0IGluIGFzbS9wdHJhY2UuaC4KLSsgICAgdWludDMyX3QgcGM7Ci0r ICAgIHVpbnQzMl90IHJhOwotKyAgICB1aW50MzJfdCBzcDsKLSsgICAgdWludDMyX3QgZ3A7Ci0r ICAgIHVpbnQzMl90IHRwOwotKyAgICB1aW50MzJfdCB0MDsKLSsgICAgdWludDMyX3QgdDE7Ci0r ICAgIHVpbnQzMl90IHQyOwotKyAgICB1aW50MzJfdCBzMDsKLSsgICAgdWludDMyX3QgczE7Ci0r ICAgIHVpbnQzMl90IGEwOwotKyAgICB1aW50MzJfdCBhMTsKLSsgICAgdWludDMyX3QgYTI7Ci0r ICAgIHVpbnQzMl90IGEzOwotKyAgICB1aW50MzJfdCBhNDsKLSsgICAgdWludDMyX3QgYTU7Ci0r ICAgIHVpbnQzMl90IGE2OwotKyAgICB1aW50MzJfdCBhNzsKLSsgICAgdWludDMyX3QgczI7Ci0r ICAgIHVpbnQzMl90IHMzOwotKyAgICB1aW50MzJfdCBzNDsKLSsgICAgdWludDMyX3QgczU7Ci0r ICAgIHVpbnQzMl90IHM2OwotKyAgICB1aW50MzJfdCBzNzsKLSsgICAgdWludDMyX3Qgczg7Ci0r ICAgIHVpbnQzMl90IHM5OwotKyAgICB1aW50MzJfdCBzMTA7Ci0rICAgIHVpbnQzMl90IHMxMTsK LSsgICAgdWludDMyX3QgdDM7Ci0rICAgIHVpbnQzMl90IHQ0OwotKyAgICB1aW50MzJfdCB0NTsK LSsgICAgdWludDMyX3QgdDY7Ci0gI2Vsc2UKLSAjZXJyb3IgUG9ydC4KLSAjZW5kaWYgIC8vIEFS Q0hfQ1BVX1g4Nl9GQU1JTFkKLUBAIC0xMzIsNiArMTY2LDQwIEBAIHVuaW9uIFRocmVhZENvbnRl eHQgewotICAgICB1aW50NjRfdCBjcDBfYmFkdmFkZHI7Ci0gICAgIHVpbnQ2NF90IGNwMF9zdGF0 dXM7Ci0gICAgIHVpbnQ2NF90IGNwMF9jYXVzZTsKLSsjZWxpZiBkZWZpbmVkKEFSQ0hfQ1BVX1JJ U0NWX0ZBTUlMWSkKLSsgICAgLy8gUmVmbGVjdHMgdXNlcl9yZWdzX3N0cnVjdCBpbiBhc20vcHRy YWNlLmguCi0rICAgIHVpbnQ2NF90IHBjOwotKyAgICB1aW50NjRfdCByYTsKLSsgICAgdWludDY0 X3Qgc3A7Ci0rICAgIHVpbnQ2NF90IGdwOwotKyAgICB1aW50NjRfdCB0cDsKLSsgICAgdWludDY0 X3QgdDA7Ci0rICAgIHVpbnQ2NF90IHQxOwotKyAgICB1aW50NjRfdCB0MjsKLSsgICAgdWludDY0 X3QgczA7Ci0rICAgIHVpbnQ2NF90IHMxOwotKyAgICB1aW50NjRfdCBhMDsKLSsgICAgdWludDY0 X3QgYTE7Ci0rICAgIHVpbnQ2NF90IGEyOwotKyAgICB1aW50NjRfdCBhMzsKLSsgICAgdWludDY0 X3QgYTQ7Ci0rICAgIHVpbnQ2NF90IGE1OwotKyAgICB1aW50NjRfdCBhNjsKLSsgICAgdWludDY0 X3QgYTc7Ci0rICAgIHVpbnQ2NF90IHMyOwotKyAgICB1aW50NjRfdCBzMzsKLSsgICAgdWludDY0 X3QgczQ7Ci0rICAgIHVpbnQ2NF90IHM1OwotKyAgICB1aW50NjRfdCBzNjsKLSsgICAgdWludDY0 X3Qgczc7Ci0rICAgIHVpbnQ2NF90IHM4OwotKyAgICB1aW50NjRfdCBzOTsKLSsgICAgdWludDY0 X3QgczEwOwotKyAgICB1aW50NjRfdCBzMTE7Ci0rICAgIHVpbnQ2NF90IHQzOwotKyAgICB1aW50 NjRfdCB0NDsKLSsgICAgdWludDY0X3QgdDU7Ci0rICAgIHVpbnQ2NF90IHQ2OwotICNlbHNlCi0g I2Vycm9yIFBvcnQuCi0gI2VuZGlmICAvLyBBUkNIX0NQVV9YODZfRkFNSUxZCi1AQCAtMTQzLDEx ICsyMTEsMTIgQEAgdW5pb24gVGhyZWFkQ29udGV4dCB7Ci0gICB1c2luZyBOYXRpdmVUaHJlYWRD b250ZXh0ID0gdXNlcl9yZWdzOwotICNlbGlmIGRlZmluZWQoQVJDSF9DUFVfTUlQU19GQU1JTFkp Ci0gLy8gTm8gYXBwcm9wcmlhdGUgTmF0aXZlVGhyZWFkc0NvbnRleHQgdHlwZSBhdmFpbGFibGUg Zm9yIE1JUFMKLSsjZWxpZiBkZWZpbmVkKEFSQ0hfQ1BVX1JJU0NWX0ZBTUlMWSkKLSAjZWxzZQot ICNlcnJvciBQb3J0LgotICNlbmRpZiAgLy8gQVJDSF9DUFVfWDg2X0ZBTUlMWSB8fCBBUkNIX0NQ VV9BUk02NAotIAotLSNpZiAhZGVmaW5lZChBUkNIX0NQVV9NSVBTX0ZBTUlMWSkKLSsjaWYgIWRl ZmluZWQoQVJDSF9DUFVfTUlQU19GQU1JTFkpICYmICFkZWZpbmVkKEFSQ0hfQ1BVX1JJU0NWX0ZB TUlMWSkKLSAjaWYgZGVmaW5lZChBUkNIX0NQVV8zMl9CSVRTKQotICAgc3RhdGljX2Fzc2VydChz aXplb2YodDMyX3QpID09IHNpemVvZihOYXRpdmVUaHJlYWRDb250ZXh0KSwgIlNpemUgbWlzbWF0 Y2giKTsKLSAjZWxzZSAgLy8gQVJDSF9DUFVfNjRfQklUUwotQEAgLTIxOCw2ICsyODcsOSBAQCB1 bmlvbiBGbG9hdENvbnRleHQgewotICAgICB9IGZwcmVnc1szMl07Ci0gICAgIHVpbnQzMl90IGZw Y3NyOwotICAgICB1aW50MzJfdCBmcHVfaWQ7Ci0rI2VsaWYgZGVmaW5lZChBUkNIX0NQVV9SSVND Vl9GQU1JTFkpCi0rICAgIHVpbnQ2NF90IGZbMzJdOwotKyAgICB1aW50MzJfdCBmY3NyOwotICNl bHNlCi0gI2Vycm9yIFBvcnQuCi0gI2VuZGlmICAvLyBBUkNIX0NQVV9YODZfRkFNSUxZCi1AQCAt MjUyLDYgKzMyNCw5IEBAIHVuaW9uIEZsb2F0Q29udGV4dCB7Ci0gICAgIGRvdWJsZSBmcHJlZ3Nb MzJdOwotICAgICB1aW50MzJfdCBmcGNzcjsKLSAgICAgdWludDMyX3QgZnB1X2lkOwotKyNlbGlm IGRlZmluZWQoQVJDSF9DUFVfUklTQ1ZfRkFNSUxZKQotKyAgICB1aW50NjRfdCBmWzMyXTsKLSsg ICAgdWludDMyX3QgZmNzcjsKLSAjZWxzZQotICNlcnJvciBQb3J0LgotICNlbmRpZiAgLy8gQVJD SF9DUFVfWDg2X0ZBTUlMWQotQEAgLTI4MSw2ICszNTYsNyBAQCB1bmlvbiBGbG9hdENvbnRleHQg ewotICAgc3RhdGljX2Fzc2VydChzaXplb2YoZjY0KSA9PSBzaXplb2YodXNlcl9mcHNpbWRfc3Ry dWN0KSwgIlNpemUgbWlzbWF0Y2giKTsKLSAjZWxpZiBkZWZpbmVkKEFSQ0hfQ1BVX01JUFNfRkFN SUxZKQotIC8vIE5vIGFwcHJvcHJpYXRlIGZsb2F0aW5nIHBvaW50IGNvbnRleHQgbmF0aXZlIHR5 cGUgZm9yIGF2YWlsYWJsZSBNSVBTLgotKyNlbGlmIGRlZmluZWQoQVJDSF9DUFVfUklTQ1ZfRkFN SUxZKQotICNlbHNlCi0gI2Vycm9yIFBvcnQuCi0gI2VuZGlmICAvLyBBUkNIX0NQVV9YODYKLUlu ZGV4OiBjaHJvbWl1bS0xMDYuMC41MjQ5LjkxL3RoaXJkX3BhcnR5L2NyYXNocGFkL2NyYXNocGFk L3V0aWwvbmV0L2h0dHBfdHJhbnNwb3J0X2xpYmN1cmwuY2MKLT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBjaHJv bWl1bS0xMDYuMC41MjQ5LjkxLm9yaWcvdGhpcmRfcGFydHkvY3Jhc2hwYWQvY3Jhc2hwYWQvdXRp bC9uZXQvaHR0cF90cmFuc3BvcnRfbGliY3VybC5jYwotKysrIGNocm9taXVtLTEwNi4wLjUyNDku OTEvdGhpcmRfcGFydHkvY3Jhc2hwYWQvY3Jhc2hwYWQvdXRpbC9uZXQvaHR0cF90cmFuc3BvcnRf bGliY3VybC5jYwotQEAgLTIzNyw2ICsyMzcsOCBAQCBzdGQ6OnN0cmluZyBVc2VyQWdlbnQoKSB7 Ci0gI2VsaWYgZGVmaW5lZChBUkNIX0NQVV9CSUdfRU5ESUFOKQotICAgICBzdGF0aWMgY29uc3Rl eHByIGNoYXIgYXJjaFtdID0gImFhcmNoNjRfYmUiOwotICNlbmRpZgotKyNlbGlmIGRlZmluZWQo QVJDSF9DUFVfUklTQ1Y2NCkKLSsgICAgc3RhdGljIGNvbnN0ZXhwciBjaGFyIGFyY2hbXSA9ICJy aXNjdjY0IjsKLSAjZWxzZQotICNlcnJvciBQb3J0Ci0gI2VuZGlmCi0KZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAwMDUtcmlzY3YtY3Jhc2hwYWQucGF0Y2guYXJncyBiL3Ny Y3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAwMDUtcmlzY3YtY3Jhc2hwYWQucGF0Y2guYXJncwpkZWxl dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDVmMzhlMzU0ZTdmMDAuLjAwMDAwMDAwMDAwMDAw Ci0tLSBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAwMDUtcmlzY3YtY3Jhc2hwYWQucGF0Y2gu YXJncworKysgL2Rldi9udWxsCkBAIC0xICswLDAgQEAKLS1OcDEgLS1kaXJlY3Rvcnk9c3JjLzNy ZHBhcnR5L2Nocm9taXVtLwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDAw Ni1yaXNjdi1kYXYxZC5wYXRjaCBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAwMDYtcmlzY3Yt ZGF2MWQucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDEyYWQwNzI3NWJkMzRi Li4wMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMDA2LXJpc2N2 LWRhdjFkLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNDQgKzAsMCBAQAotSW5kZXg6IGNocm9t aXVtLTEwMi4wLjUwMDUuNjEvdGhpcmRfcGFydHkvZGF2MWQvY29uZmlnL2xpbnV4L3Jpc2N2NjQv Y29uZmlnLmgKLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT0KLS0tLSAvZGV2L251bGwKLSsrKyBjaHJvbWl1bS0xMDIuMC41 MDA1LjYxL3RoaXJkX3BhcnR5L2RhdjFkL2NvbmZpZy9saW51eC9yaXNjdjY0L2NvbmZpZy5oCi1A QCAtMCwwICsxLDM4IEBACi0rLyoKLSsgKiBBdXRvZ2VuZXJhdGVkIGJ5IHRoZSBNZXNvbiBidWls ZCBzeXN0ZW0uCi0rICogRG8gbm90IGVkaXQsIHlvdXIgY2hhbmdlcyB3aWxsIGJlIGxvc3QuCi0r ICovCi0rCi0rI3ByYWdtYSBvbmNlCi0rCi0rI2RlZmluZSBBUkNIX0FBUkNINjQgMAotKwotKyNk ZWZpbmUgQVJDSF9BUk0gMAotKwotKyNkZWZpbmUgQVJDSF9QUEM2NExFIDAKLSsKLSsjZGVmaW5l IEFSQ0hfWDg2IDAKLSsKLSsjZGVmaW5lIEFSQ0hfWDg2XzMyIDAKLSsKLSsjZGVmaW5lIEFSQ0hf WDg2XzY0IDAKLSsKLSsjZGVmaW5lIENPTkZJR18xNkJQQyAxCi0rCi0rI2RlZmluZSBDT05GSUdf OEJQQyAxCi0rCi0rLy8gI2RlZmluZSBDT05GSUdfTE9HIDEgLS0gTG9nZ2luZyBpcyBjb250cm9s bGVkIGJ5IENocm9taXVtCi0rCi0rI2RlZmluZSBFTkRJQU5ORVNTX0JJRyAwCi0rCi0rI2RlZmlu ZSBIQVZFX0FTTSAwCi0rCi0rI2RlZmluZSBIQVZFX0FTX0ZVTkMgMAotKwotKyNkZWZpbmUgSEFW RV9DTE9DS19HRVRUSU1FIDEKLSsKLSsjZGVmaW5lIEhBVkVfR0VUQVVYVkFMIDEKLSsKLSsjZGVm aW5lIEhBVkVfUE9TSVhfTUVNQUxJR04gMQotKwotKyNkZWZpbmUgSEFWRV9VTklTVERfSCAxCi0K ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAwMDYtcmlzY3YtZGF2MWQucGF0 Y2guYXJncyBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAwMDYtcmlzY3YtZGF2MWQucGF0Y2gu YXJncwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDVmMzhlMzU0ZTdmMDAuLjAwMDAw MDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAwMDYtcmlzY3YtZGF2MWQu cGF0Y2guYXJncworKysgL2Rldi9udWxsCkBAIC0xICswLDAgQEAKLS1OcDEgLS1kaXJlY3Rvcnk9 c3JjLzNyZHBhcnR5L2Nocm9taXVtLwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdDYtcGRmL3BhdGNo ZXMvMDAwNy1yaXNjdi1zYW5kYm94LnBhdGNoIGIvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDAw Ny1yaXNjdi1zYW5kYm94LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjMDRl YjQ3YTAxMzYxNy4uMDAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMv MDAwNy1yaXNjdi1zYW5kYm94LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTkzOSArMCwwIEBA Ci1JbmRleDogY2hyb21pdW0tMTA3LjAuNTMwNC44Ny9zYW5kYm94L2ZlYXR1cmVzLmduaQotPT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PQotLS0tIGNocm9taXVtLTEwNy4wLjUzMDQuODcub3JpZy9zYW5kYm94L2ZlYXR1cmVz LmduaQotKysrIGNocm9taXVtLTEwNy4wLjUzMDQuODcvc2FuZGJveC9mZWF0dXJlcy5nbmkKLUBA IC05LDcgKzksOCBAQAotIHVzZV9zZWNjb21wX2JwZiA9IChpc19saW51eCB8fCBpc19jaHJvbWVv cyB8fCBpc19hbmRyb2lkKSAmJgotICAgICAgICAgICAgICAgICAgIChjdXJyZW50X2NwdSA9PSAi eDg2IiB8fCBjdXJyZW50X2NwdSA9PSAieDY0IiB8fAotICAgICAgICAgICAgICAgICAgICBjdXJy ZW50X2NwdSA9PSAiYXJtIiB8fCBjdXJyZW50X2NwdSA9PSAiYXJtNjQiIHx8Ci0tICAgICAgICAg ICAgICAgICAgIGN1cnJlbnRfY3B1ID09ICJtaXBzZWwiIHx8IGN1cnJlbnRfY3B1ID09ICJtaXBz NjRlbCIpCi0rICAgICAgICAgICAgICAgICAgIGN1cnJlbnRfY3B1ID09ICJtaXBzZWwiIHx8IGN1 cnJlbnRfY3B1ID09ICJtaXBzNjRlbCIgfHwKLSsgICAgICAgICAgICAgICAgICAgY3VycmVudF9j cHUgPT0gInJpc2N2NjQiKQotIAotICMgU1NCRCAoU3BlY3VsYXRpdmUgU3RvcmUgQnlwYXNzIERp c2FibGUpIGlzIGEgbWl0aWdhdGlvbiBvZiBTcGVjdHJlIFZhcmlhbnQgNC4KLSAjIEFzIFNwZWN0 cmUgVmFyaWFudCA0IGNhbiBiZSBtaXRpZ2F0ZWQgYnkgc2l0ZSBpc29sYXRpb24sIG9wdC1vdXQg U1NCRCBvbiBzaXRlCi1JbmRleDogY2hyb21pdW0tMTA3LjAuNTMwNC44Ny9zYW5kYm94L2xpbnV4 L2JwZl9kc2wvbGludXhfc3lzY2FsbF9yYW5nZXMuaAotPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGNocm9taXVt LTEwNy4wLjUzMDQuODcub3JpZy9zYW5kYm94L2xpbnV4L2JwZl9kc2wvbGludXhfc3lzY2FsbF9y YW5nZXMuaAotKysrIGNocm9taXVtLTEwNy4wLjUzMDQuODcvc2FuZGJveC9saW51eC9icGZfZHNs L2xpbnV4X3N5c2NhbGxfcmFuZ2VzLmgKLUBAIC01Niw2ICs1NiwxMiBAQAotICNkZWZpbmUgTUFY X1BVQkxJQ19TWVNDQUxMIF9fTlJfc3lzY2FsbHMKLSAjZGVmaW5lIE1BWF9TWVNDQUxMIE1BWF9Q VUJMSUNfU1lTQ0FMTAotIAotKyNlbGlmIGRlZmluZWQoX19yaXNjdikKLSsKLSsjZGVmaW5lIE1J Tl9TWVNDQUxMIDB1Ci0rI2RlZmluZSBNQVhfUFVCTElDX1NZU0NBTEwgMTAyNHUKLSsjZGVmaW5l IE1BWF9TWVNDQUxMIE1BWF9QVUJMSUNfU1lTQ0FMTAotKwotICNlbHNlCi0gI2Vycm9yICJVbnN1 cHBvcnRlZCBhcmNoaXRlY3R1cmUiCi0gI2VuZGlmCi1JbmRleDogY2hyb21pdW0tMTA3LjAuNTMw NC44Ny9zYW5kYm94L2xpbnV4L2JwZl9kc2wvc2VjY29tcF9tYWNyb3MuaAotPT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot LS0tIGNocm9taXVtLTEwNy4wLjUzMDQuODcub3JpZy9zYW5kYm94L2xpbnV4L2JwZl9kc2wvc2Vj Y29tcF9tYWNyb3MuaAotKysrIGNocm9taXVtLTEwNy4wLjUzMDQuODcvc2FuZGJveC9saW51eC9i cGZfZHNsL3NlY2NvbXBfbWFjcm9zLmgKLUBAIC0zNDMsNiArMzQzLDQ2IEBAIHN0cnVjdCByZWdz X3N0cnVjdCB7Ci0gI2RlZmluZSBTRUNDT01QX1BUX1BBUk00KF9yZWdzKSAoX3JlZ3MpLnJlZ3Nb M10KLSAjZGVmaW5lIFNFQ0NPTVBfUFRfUEFSTTUoX3JlZ3MpIChfcmVncykucmVnc1s0XQotICNk ZWZpbmUgU0VDQ09NUF9QVF9QQVJNNihfcmVncykgKF9yZWdzKS5yZWdzWzVdCi0rCi0rI2VsaWYg ZGVmaW5lZChfX3Jpc2N2KQotK3N0cnVjdCByZWdzX3N0cnVjdCB7Ci0rICB1bnNpZ25lZCBsb25n IHJlZ3NbMzJdOwotK307Ci0rCi0rI2RlZmluZSBTRUNDT01QX0FSQ0ggQVVESVRfQVJDSF9SSVND VjY0Ci0rCi0rI2RlZmluZSBTRUNDT01QX1JFRyhfY3R4LCBfcmVnKSAoKF9jdHgpLT51Y19tY29u dGV4dC5fX2dyZWdzW19yZWddKQotKwotKyNkZWZpbmUgU0VDQ09NUF9SRVNVTFQoX2N0eCkgU0VD Q09NUF9SRUcoX2N0eCwgUkVHX0EwKQotKyNkZWZpbmUgU0VDQ09NUF9TWVNDQUxMKF9jdHgpIFNF Q0NPTVBfUkVHKF9jdHgsIFJFR19BMCs3KQotKyNkZWZpbmUgU0VDQ09NUF9JUChfY3R4KSAoX2N0 eCktPnVjX21jb250ZXh0Ll9fZ3JlZ3NbUkVHX1BDXQotKyNkZWZpbmUgU0VDQ09NUF9QQVJNMShf Y3R4KSBTRUNDT01QX1JFRyhfY3R4LCBSRUdfQTApCi0rI2RlZmluZSBTRUNDT01QX1BBUk0yKF9j dHgpIFNFQ0NPTVBfUkVHKF9jdHgsIFJFR19BMCsxKQotKyNkZWZpbmUgU0VDQ09NUF9QQVJNMyhf Y3R4KSBTRUNDT01QX1JFRyhfY3R4LCBSRUdfQTArMikKLSsjZGVmaW5lIFNFQ0NPTVBfUEFSTTQo X2N0eCkgU0VDQ09NUF9SRUcoX2N0eCwgUkVHX0EwKzMpCi0rI2RlZmluZSBTRUNDT01QX1BBUk01 KF9jdHgpIFNFQ0NPTVBfUkVHKF9jdHgsIFJFR19BMCs0KQotKyNkZWZpbmUgU0VDQ09NUF9QQVJN NihfY3R4KSBTRUNDT01QX1JFRyhfY3R4LCBSRUdfQTArNSkKLSsKLSsjZGVmaW5lIFNFQ0NPTVBf TlJfSURYIChvZmZzZXRvZihzdHJ1Y3QgYXJjaF9zZWNjb21wX2RhdGEsIG5yKSkKLSsjZGVmaW5l IFNFQ0NPTVBfQVJDSF9JRFggKG9mZnNldG9mKHN0cnVjdCBhcmNoX3NlY2NvbXBfZGF0YSwgYXJj aCkpCi0rI2RlZmluZSBTRUNDT01QX0lQX01TQl9JRFggXAotKyAgKG9mZnNldG9mKHN0cnVjdCBh cmNoX3NlY2NvbXBfZGF0YSwgaW5zdHJ1Y3Rpb25fcG9pbnRlcikgKyA0KQotKyNkZWZpbmUgU0VD Q09NUF9JUF9MU0JfSURYIFwKLSsgIChvZmZzZXRvZihzdHJ1Y3QgYXJjaF9zZWNjb21wX2RhdGEs IGluc3RydWN0aW9uX3BvaW50ZXIpICsgMCkKLSsjZGVmaW5lIFNFQ0NPTVBfQVJHX01TQl9JRFgo bnIpIFwKLSsgIChvZmZzZXRvZihzdHJ1Y3QgYXJjaF9zZWNjb21wX2RhdGEsIGFyZ3MpICsgOCAq IChucikgKyA0KQotKyNkZWZpbmUgU0VDQ09NUF9BUkdfTFNCX0lEWChucikgXAotKyAgKG9mZnNl dG9mKHN0cnVjdCBhcmNoX3NlY2NvbXBfZGF0YSwgYXJncykgKyA4ICogKG5yKSArIDApCi0rCi0r I2RlZmluZSBTRUNDT01QX1BUX1JFU1VMVChfcmVncykgKF9yZWdzKS5yZWdzW1JFR19BMF0KLSsj ZGVmaW5lIFNFQ0NPTVBfUFRfU1lTQ0FMTChfcmVncykgKF9yZWdzKS5yZWdzW1JFR19BMCs3XQot KyNkZWZpbmUgU0VDQ09NUF9QVF9JUChfcmVncykgKF9yZWdzKS5yZWdzW1JFR19QQ10KLSsjZGVm aW5lIFNFQ0NPTVBfUFRfUEFSTTEoX3JlZ3MpIChfcmVncykucmVnc1tSRUdfQTBdCi0rI2RlZmlu ZSBTRUNDT01QX1BUX1BBUk0yKF9yZWdzKSAoX3JlZ3MpLnJlZ3NbUkVHX0EwKzFdCi0rI2RlZmlu ZSBTRUNDT01QX1BUX1BBUk0zKF9yZWdzKSAoX3JlZ3MpLnJlZ3NbUkVHX0EwKzJdCi0rI2RlZmlu ZSBTRUNDT01QX1BUX1BBUk00KF9yZWdzKSAoX3JlZ3MpLnJlZ3NbUkVHX0EwKzNdCi0rI2RlZmlu ZSBTRUNDT01QX1BUX1BBUk01KF9yZWdzKSAoX3JlZ3MpLnJlZ3NbUkVHX0EwKzRdCi0rI2RlZmlu ZSBTRUNDT01QX1BUX1BBUk02KF9yZWdzKSAoX3JlZ3MpLnJlZ3NbUkVHX0EwKzVdCi0gI2Vsc2UK LSAjZXJyb3IgVW5zdXBwb3J0ZWQgdGFyZ2V0IHBsYXRmb3JtCi0gCi1JbmRleDogY2hyb21pdW0t MTA3LjAuNTMwNC44Ny9zYW5kYm94L2xpbnV4L3NlY2NvbXAtYnBmLWhlbHBlcnMvYmFzZWxpbmVf cG9saWN5LmNjCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gY2hyb21pdW0tMTA3LjAuNTMwNC44Ny5vcmlnL3Nh bmRib3gvbGludXgvc2VjY29tcC1icGYtaGVscGVycy9iYXNlbGluZV9wb2xpY3kuY2MKLSsrKyBj aHJvbWl1bS0xMDcuMC41MzA0Ljg3L3NhbmRib3gvbGludXgvc2VjY29tcC1icGYtaGVscGVycy9i YXNlbGluZV9wb2xpY3kuY2MKLUBAIC02MSw2ICs2MSw5IEBAIGJvb2wgSXNCYXNlbGluZVBvbGlj eUFsbG93ZWQoaW50IHN5c25vKQotICNpZiBkZWZpbmVkKF9fbWlwc19fKQotICAgICAgICAgIFN5 c2NhbGxTZXRzOjpJc01pcHNQcml2YXRlKHN5c25vKSB8fAotICNlbmRpZgotKyNpZiBkZWZpbmVk KF9fcmlzY3YpCi0rICAgICAgICAgU3lzY2FsbFNldHM6OklzUmlzY3ZQcml2YXRlKHN5c25vKSB8 fAotKyNlbmRpZgotICAgICAgICAgIFN5c2NhbGxTZXRzOjpJc0FsbG93ZWRPcGVyYXRpb25PbkZk KHN5c25vKTsKLSAgIC8vIGNsYW5nLWZvcm1hdCBvbgotIH0KLUBAIC0xOTgsNyArMjAxLDcgQEAg UmVzdWx0RXhwciBFdmFsdWF0ZVN5c2NhbGxJbXBsKGludCBmc19kZQotICAgICByZXR1cm4gUmVz dHJpY3RGY250bENvbW1hbmRzKCk7Ci0gI2VuZGlmCi0gCi0tI2lmICFkZWZpbmVkKF9fYWFyY2g2 NF9fKQotKyNpZiAhZGVmaW5lZChfX2FhcmNoNjRfXykgJiYgIWRlZmluZWQoX19yaXNjdikKLSAg IC8vIGZvcmsoKSBpcyBuZXZlciB1c2VkIGFzIGEgc3lzdGVtIGNhbGwgKGNsb25lKCkgaXMgdXNl ZCBpbnN0ZWFkKSwgYnV0IHdlCi0gICAvLyBoYXZlIHNlZW4gaXQgaW4gZmFsbGJhY2sgY29kZSBv biBBbmRyb2lkLgotICAgaWYgKHN5c25vID09IF9fTlJfZm9yaykgewotQEAgLTI1Myw3ICsyNTYs NyBAQCBSZXN1bHRFeHByIEV2YWx1YXRlU3lzY2FsbEltcGwoaW50IGZzX2RlCi0gICB9Ci0gCi0g I2lmIGRlZmluZWQoX19pMzg2X18pIHx8IGRlZmluZWQoX194ODZfNjRfXykgfHwgZGVmaW5lZChf X21pcHNfXykgfHwgXAotLSAgICBkZWZpbmVkKF9fYWFyY2g2NF9fKQotKyAgICBkZWZpbmVkKF9f YWFyY2g2NF9fKSB8fCBkZWZpbmVkKF9fcmlzY3YpCi0gICBpZiAoc3lzbm8gPT0gX19OUl9tbWFw KQotICAgICByZXR1cm4gUmVzdHJpY3RNbWFwRmxhZ3MoKTsKLSAjZW5kaWYKLUBAIC0yNzQsNyAr Mjc3LDcgQEAgUmVzdWx0RXhwciBFdmFsdWF0ZVN5c2NhbGxJbXBsKGludCBmc19kZQotICAgICBy ZXR1cm4gUmVzdHJpY3RQcmN0bCgpOwotIAotICNpZiBkZWZpbmVkKF9feDg2XzY0X18pIHx8IGRl ZmluZWQoX19hcm1fXykgfHwgZGVmaW5lZChfX21pcHNfXykgfHwgXAotLSAgICBkZWZpbmVkKF9f YWFyY2g2NF9fKQotKyAgICBkZWZpbmVkKF9fYWFyY2g2NF9fKSB8fCBkZWZpbmVkKF9fcmlzY3Yp Ci0gICBpZiAoc3lzbm8gPT0gX19OUl9zb2NrZXRwYWlyKSB7Ci0gICAgIC8vIE9ubHkgYWxsb3cg QUZfVU5JWCwgUEZfVU5JWC4gQ3Jhc2ggaWYgYW55dGhpbmcgZWxzZSBpcyBzZWVuLgotICAgICBz dGF0aWNfYXNzZXJ0KEFGX1VOSVggPT0gUEZfVU5JWCwKLUluZGV4OiBjaHJvbWl1bS0xMDcuMC41 MzA0Ljg3L3NhbmRib3gvbGludXgvc2VjY29tcC1icGYtaGVscGVycy9zeXNjYWxsX3BhcmFtZXRl cnNfcmVzdHJpY3Rpb25zLmNjCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gY2hyb21pdW0tMTA3LjAuNTMwNC44 Ny5vcmlnL3NhbmRib3gvbGludXgvc2VjY29tcC1icGYtaGVscGVycy9zeXNjYWxsX3BhcmFtZXRl cnNfcmVzdHJpY3Rpb25zLmNjCi0rKysgY2hyb21pdW0tMTA3LjAuNTMwNC44Ny9zYW5kYm94L2xp bnV4L3NlY2NvbXAtYnBmLWhlbHBlcnMvc3lzY2FsbF9wYXJhbWV0ZXJzX3Jlc3RyaWN0aW9ucy5j YwotQEAgLTM3LDYgKzM3LDcgQEAKLSAKLSAjaWYgKEJVSUxERkxBRyhJU19MSU5VWCkgfHwgQlVJ TERGTEFHKElTX0NIUk9NRU9TX0xBQ1JPUykpICYmIFwKLSAgICAgIWRlZmluZWQoX19hcm1fXykg JiYgIWRlZmluZWQoX19hYXJjaDY0X18pICYmICAgICAgICAgICAgIFwKLSsgICAgIWRlZmluZWQo X19yaXNjdikgJiYgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAg IWRlZmluZWQoUFRSQUNFX0dFVF9USFJFQURfQVJFQSkKLSAvLyBBbHNvIGluY2x1ZGUgYXNtL3B0 cmFjZS1hYmkuaCBzaW5jZSBwdHJhY2UuaCBpbiBvbGRlciBsaWJjIChmb3IgaW5zdGFuY2UKLSAv LyB0aGUgb25lIGluIFVidW50dSAxNi4wNCBMVFMpIGlzIG1pc3NpbmcgUFRSQUNFX0dFVF9USFJF QURfQVJFQS4KLUBAIC00NDIsNyArNDQyLDcgQEAKLSAjZW5kaWYKLSAgIHJldHVybiBTd2l0Y2go cmVxdWVzdCkKLSAgICAgICAuQ2FzZXMoewotLSNpZiAhZGVmaW5lZChfX2FhcmNoNjRfXykKLSsj aWYgIWRlZmluZWQoX19hYXJjaDY0X18pICYmICFkZWZpbmVkKF9fcmlzY3YpCi0gICAgICAgICAg ICAgICAgICBQVFJBQ0VfR0VUUkVHUywgUFRSQUNFX0dFVEZQUkVHUywgUFRSQUNFX0dFVF9USFJF QURfQVJFQSwKLSAgICAgICAgICAgICAgICAgIFBUUkFDRV9HRVRSRUdTRVQsCi0gI2VuZGlmCi1J bmRleDogY2hyb21pdW0tMTA3LjAuNTMwNC44Ny9zYW5kYm94L2xpbnV4L3NlY2NvbXAtYnBmLWhl bHBlcnMvc3lzY2FsbF9zZXRzLmNjCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gY2hyb21pdW0tMTA3LjAuNTMw NC44Ny5vcmlnL3NhbmRib3gvbGludXgvc2VjY29tcC1icGYtaGVscGVycy9zeXNjYWxsX3NldHMu Y2MKLSsrKyBjaHJvbWl1bS0xMDcuMC41MzA0Ljg3L3NhbmRib3gvbGludXgvc2VjY29tcC1icGYt aGVscGVycy9zeXNjYWxsX3NldHMuY2MKLUBAIC0xMDMsNyArMTAzLDcgQEAgYm9vbCBTeXNjYWxs U2V0czo6SXNVbWFzayhpbnQgc3lzbm8pIHsKLSAvLyBCb3RoIEVQRVJNIGFuZCBFTk9FTlQgYXJl IHZhbGlkIGVycm5vIHVubGVzcyBvdGhlcndpc2Ugbm90ZWQgaW4gY29tbWVudC4KLSBib29sIFN5 c2NhbGxTZXRzOjpJc0ZpbGVTeXN0ZW0oaW50IHN5c25vKSB7Ci0gICBzd2l0Y2ggKHN5c25vKSB7 Ci0tI2lmICFkZWZpbmVkKF9fYWFyY2g2NF9fKQotKyNpZiAhZGVmaW5lZChfX2FhcmNoNjRfXykg JiYgIWRlZmluZWQoX19yaXNjdikKLSAgICAgY2FzZSBfX05SX2FjY2VzczogIC8vIEVQRVJNIG5v dCBhIHZhbGlkIGVycm5vLgotICAgICBjYXNlIF9fTlJfY2htb2Q6Ci0gICAgIGNhc2UgX19OUl9j aG93bjoKLUBAIC0xMzYsNyArMTM2LDcgQEAgYm9vbCBTeXNjYWxsU2V0czo6SXNGaWxlU3lzdGVt KGludCBzeXNubwotICAgICBjYXNlIF9fTlJfZmFjY2Vzc2F0MjoKLSAgICAgY2FzZSBfX05SX2Zj aG1vZGF0OgotICAgICBjYXNlIF9fTlJfZmNob3duYXQ6ICAvLyBTaG91bGQgYmUgY2FsbGVkIGNo b3duYXQgPwotLSNpZiBkZWZpbmVkKF9feDg2XzY0X18pIHx8IGRlZmluZWQoX19hYXJjaDY0X18p Ci0rI2lmIGRlZmluZWQoX194ODZfNjRfXykgfHwgZGVmaW5lZChfX2FhcmNoNjRfXykgfHwgZGVm aW5lZChfX3Jpc2N2KQotICAgICBjYXNlIF9fTlJfbmV3ZnN0YXRhdDogIC8vIGZzdGF0YXQoKS4g RVBFUk0gbm90IGEgdmFsaWQgZXJybm8uCi0gI2VsaWYgZGVmaW5lZChfX2kzODZfXykgfHwgZGVm aW5lZChfX2FybV9fKSB8fCBcCi0gICAgIChkZWZpbmVkKEFSQ0hfQ1BVX01JUFNfRkFNSUxZKSAm JiBkZWZpbmVkKEFSQ0hfQ1BVXzMyX0JJVFMpKQotQEAgLTIyNiw3ICsyMjYsNyBAQCBib29sIFN5 c2NhbGxTZXRzOjpJc0FsbG93ZWRGaWxlU3lzdGVtQWNjCi0gICAgIGNhc2UgX19OUl9vbGRmc3Rh dDoKLSAjZW5kaWYKLSAjaWYgZGVmaW5lZChfX2kzODZfXykgfHwgZGVmaW5lZChfX3g4Nl82NF9f KSB8fCBkZWZpbmVkKF9fbWlwc19fKSB8fCBcCi0tICAgIGRlZmluZWQoX19hYXJjaDY0X18pCi0r ICAgIGRlZmluZWQoX19hYXJjaDY0X18pIHx8IGRlZmluZWQoX19yaXNjdikKLSAgICAgY2FzZSBf X05SX3N5bmNfZmlsZV9yYW5nZTogIC8vIEVQRVJNIG5vdCBhIHZhbGlkIGVycm5vLgotICNlbGlm IGRlZmluZWQoX19hcm1fXykKLSAgICAgY2FzZSBfX05SX2FybV9zeW5jX2ZpbGVfcmFuZ2U6ICAv LyBFUEVSTSBub3QgYSB2YWxpZCBlcnJuby4KLUBAIC0yNDUsNyArMjQ1LDcgQEAgYm9vbCBTeXNj YWxsU2V0czo6SXNEZW5pZWRGaWxlU3lzdGVtQWNjZQotICNpZiBkZWZpbmVkKF9faTM4Nl9fKSB8 fCBkZWZpbmVkKF9fYXJtX18pCi0gICAgIGNhc2UgX19OUl9mY2hvd24zMjoKLSAjZW5kaWYKLS0j aWYgIWRlZmluZWQoX19hYXJjaDY0X18pCi0rI2lmICFkZWZpbmVkKF9fYWFyY2g2NF9fKSAmJiAh ZGVmaW5lZChfX3Jpc2N2KQotICAgICBjYXNlIF9fTlJfZ2V0ZGVudHM6ICAgIC8vIEVQRVJNIG5v dCBhIHZhbGlkIGVycm5vLgotICNlbmRpZgotICAgICBjYXNlIF9fTlJfZ2V0ZGVudHM2NDogIC8v IEVQRVJNIG5vdCBhIHZhbGlkIGVycm5vLgotQEAgLTMyNCw3ICszMjQsNyBAQCBib29sIFN5c2Nh bGxTZXRzOjpJc1Byb2Nlc3NQcml2aWxlZ2VDaGFuCi0gYm9vbCBTeXNjYWxsU2V0czo6SXNQcm9j ZXNzR3JvdXBPclNlc3Npb24oaW50IHN5c25vKSB7Ci0gICBzd2l0Y2ggKHN5c25vKSB7Ci0gICAg IGNhc2UgX19OUl9zZXRwZ2lkOgotLSNpZiAhZGVmaW5lZChfX2FhcmNoNjRfXykKLSsjaWYgIWRl ZmluZWQoX19hYXJjaDY0X18pICYmICFkZWZpbmVkKF9fcmlzY3YpCi0gICAgIGNhc2UgX19OUl9n ZXRwZ3JwOgotICNlbmRpZgotICAgICBjYXNlIF9fTlJfc2V0c2lkOgotQEAgLTM1OCw3ICszNTgs NyBAQCBib29sIFN5c2NhbGxTZXRzOjpJc0FsbG93ZWRTaWduYWxIYW5kbGluCi0gICAgIGNhc2Ug X19OUl9ydF9zaWdxdWV1ZWluZm86Ci0gICAgIGNhc2UgX19OUl9ydF9zaWdzdXNwZW5kOgotICAg ICBjYXNlIF9fTlJfcnRfdGdzaWdxdWV1ZWluZm86Ci0tI2lmICFkZWZpbmVkKF9fYWFyY2g2NF9f KQotKyNpZiAhZGVmaW5lZChfX2FhcmNoNjRfXykgJiYgIWRlZmluZWQoX19yaXNjdikKLSAgICAg Y2FzZSBfX05SX3NpZ25hbGZkOgotICNlbmRpZgotICAgICBjYXNlIF9fTlJfc2lnbmFsZmQ0Ogot QEAgLTM4MiwxMiArMzgyLDEyIEBAIGJvb2wgU3lzY2FsbFNldHM6OklzQWxsb3dlZE9wZXJhdGlv bk9uRmQKLSAgIHN3aXRjaCAoc3lzbm8pIHsKLSAgICAgY2FzZSBfX05SX2Nsb3NlOgotICAgICBj YXNlIF9fTlJfZHVwOgotLSNpZiAhZGVmaW5lZChfX2FhcmNoNjRfXykKLSsjaWYgIWRlZmluZWQo X19hYXJjaDY0X18pICYmICFkZWZpbmVkKF9fcmlzY3YpCi0gICAgIGNhc2UgX19OUl9kdXAyOgot ICNlbmRpZgotICAgICBjYXNlIF9fTlJfZHVwMzoKLSAjaWYgZGVmaW5lZChfX3g4Nl82NF9fKSB8 fCBkZWZpbmVkKF9fYXJtX18pIHx8IGRlZmluZWQoX19taXBzX18pIHx8IFwKLS0gICAgZGVmaW5l ZChfX2FhcmNoNjRfXykKLSsgICAgZGVmaW5lZChfX2FhcmNoNjRfXykgfHwgZGVmaW5lZChfX3Jp c2N2KQotICAgICBjYXNlIF9fTlJfc2h1dGRvd246Ci0gI2VuZGlmCi0gICAgICAgcmV0dXJuIHRy dWU7Ci1AQCAtNDI2LDcgKzQyNiw3IEBAIGJvb2wgU3lzY2FsbFNldHM6OklzQWxsb3dlZFByb2Nl c3NTdGFydE8KLSAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICAgY2FzZSBfX05SX2Nsb25lOiAgLy8g U2hvdWxkIGJlIHBhcmFtZXRlci1yZXN0cmljdGVkLgotICAgICBjYXNlIF9fTlJfc2V0bnM6ICAv LyBQcml2aWxlZ2VkLgotLSNpZiAhZGVmaW5lZChfX2FhcmNoNjRfXykKLSsjaWYgIWRlZmluZWQo X19hYXJjaDY0X18pICYmICFkZWZpbmVkKF9fcmlzY3YpCi0gICAgIGNhc2UgX19OUl9mb3JrOgot ICNlbmRpZgotICNpZiBkZWZpbmVkKF9faTM4Nl9fKSB8fCBkZWZpbmVkKF9feDg2XzY0X18pCi1A QCAtNDM3LDcgKzQzNyw3IEBAIGJvb2wgU3lzY2FsbFNldHM6OklzQWxsb3dlZFByb2Nlc3NTdGFy dE8KLSAjZW5kaWYKLSAgICAgY2FzZSBfX05SX3NldF90aWRfYWRkcmVzczoKLSAgICAgY2FzZSBf X05SX3Vuc2hhcmU6Ci0tI2lmICFkZWZpbmVkKF9fbWlwc19fKSAmJiAhZGVmaW5lZChfX2FhcmNo NjRfXykKLSsjaWYgIWRlZmluZWQoX19taXBzX18pICYmICFkZWZpbmVkKF9fYWFyY2g2NF9fKSAm JiAhZGVmaW5lZChfX3Jpc2N2KQotICAgICBjYXNlIF9fTlJfdmZvcms6Ci0gI2VuZGlmCi0gICAg IGRlZmF1bHQ6Ci1AQCAtNDYyLDcgKzQ2Miw3IEBAIGJvb2wgU3lzY2FsbFNldHM6OklzQWxsb3dl ZEZ1dGV4KGludCBzeXMKLSAKLSBib29sIFN5c2NhbGxTZXRzOjpJc0FsbG93ZWRFcG9sbChpbnQg c3lzbm8pIHsKLSAgIHN3aXRjaCAoc3lzbm8pIHsKLS0jaWYgIWRlZmluZWQoX19hYXJjaDY0X18p Ci0rI2lmICFkZWZpbmVkKF9fYWFyY2g2NF9fKSAmJiAhZGVmaW5lZChfX3Jpc2N2KQotICAgICBj YXNlIF9fTlJfZXBvbGxfY3JlYXRlOgotICAgICBjYXNlIF9fTlJfZXBvbGxfd2FpdDoKLSAjZW5k aWYKLUBAIC01MDAsNyArNTAwLDcgQEAgYm9vbCBTeXNjYWxsU2V0czo6SXNBbGxvd2VkR2V0T3JN b2RpZnlTbwotIGJvb2wgU3lzY2FsbFNldHM6OklzRGVuaWVkR2V0T3JNb2RpZnlTb2NrZXQoaW50 IHN5c25vKSB7Ci0gICBzd2l0Y2ggKHN5c25vKSB7Ci0gI2lmIGRlZmluZWQoX194ODZfNjRfXykg fHwgZGVmaW5lZChfX2FybV9fKSB8fCBkZWZpbmVkKF9fbWlwc19fKSB8fCBcCi0tICAgIGRlZmlu ZWQoX19hYXJjaDY0X18pCi0rICAgIGRlZmluZWQoX19hYXJjaDY0X18pIHx8IGRlZmluZWQoX19y aXNjdikKLSAgICAgY2FzZSBfX05SX2FjY2VwdDoKLSAgICAgY2FzZSBfX05SX2FjY2VwdDQ6Ci0g ICAgIGNhc2UgX19OUl9iaW5kOgotQEAgLTU1NCw3ICs1NTQsNyBAQCBib29sIFN5c2NhbGxTZXRz OjpJc0FsbG93ZWRBZGRyZXNzU3BhY2VBCi0gICAgIGNhc2UgX19OUl9taW5jb3JlOgotICAgICBj YXNlIF9fTlJfbWxvY2thbGw6Ci0gI2lmIGRlZmluZWQoX19pMzg2X18pIHx8IGRlZmluZWQoX194 ODZfNjRfXykgfHwgZGVmaW5lZChfX21pcHNfXykgfHwgXAotLSAgICBkZWZpbmVkKF9fYWFyY2g2 NF9fKQotKyAgICBkZWZpbmVkKF9fYWFyY2g2NF9fKSB8fCBkZWZpbmVkKF9fcmlzY3YpCi0gICAg IGNhc2UgX19OUl9tbWFwOgotICNlbmRpZgotICNpZiBkZWZpbmVkKF9faTM4Nl9fKSB8fCBkZWZp bmVkKF9fYXJtX18pIHx8IFwKLUBAIC01ODcsNyArNTg3LDcgQEAgYm9vbCBTeXNjYWxsU2V0czo6 SXNBbGxvd2VkR2VuZXJhbElvKGludAotICAgICAoZGVmaW5lZChBUkNIX0NQVV9NSVBTX0ZBTUlM WSkgJiYgZGVmaW5lZChBUkNIX0NQVV8zMl9CSVRTKSkKLSAgICAgY2FzZSBfX05SX19sbHNlZWs6 Ci0gI2VuZGlmCi0tI2lmICFkZWZpbmVkKF9fYWFyY2g2NF9fKQotKyNpZiAhZGVmaW5lZChfX2Fh cmNoNjRfXykgJiYgIWRlZmluZWQoX19yaXNjdikKLSAgICAgY2FzZSBfX05SX3BvbGw6Ci0gI2Vu ZGlmCi0gICAgIGNhc2UgX19OUl9wcG9sbDoKLUBAIC02MDgsNyArNjA4LDcgQEAgYm9vbCBTeXNj YWxsU2V0czo6SXNBbGxvd2VkR2VuZXJhbElvKGludAotICAgICBjYXNlIF9fTlJfcmVjdjoKLSAj ZW5kaWYKLSAjaWYgZGVmaW5lZChfX3g4Nl82NF9fKSB8fCBkZWZpbmVkKF9fYXJtX18pIHx8IGRl ZmluZWQoX19taXBzX18pIHx8IFwKLS0gICAgZGVmaW5lZChfX2FhcmNoNjRfXykKLSsgICAgZGVm aW5lZChfX2FhcmNoNjRfXykgfHwgZGVmaW5lZChfX3Jpc2N2KQotICAgICBjYXNlIF9fTlJfcmVj dmZyb206ICAvLyBDb3VsZCBzcGVjaWZ5IHNvdXJjZS4KLSAgICAgY2FzZSBfX05SX3JlY3Ztc2c6 ICAgLy8gQ291bGQgc3BlY2lmeSBzb3VyY2UuCi0gI2VuZGlmCi1AQCAtNjIzLDcgKzYyMyw3IEBA IGJvb2wgU3lzY2FsbFNldHM6OklzQWxsb3dlZEdlbmVyYWxJbyhpbnQKLSAgICAgY2FzZSBfX05S X3NlbmQ6Ci0gI2VuZGlmCi0gI2lmIGRlZmluZWQoX194ODZfNjRfXykgfHwgZGVmaW5lZChfX2Fy bV9fKSB8fCBkZWZpbmVkKF9fbWlwc19fKSB8fCBcCi0tICAgIGRlZmluZWQoX19hYXJjaDY0X18p Ci0rICAgIGRlZmluZWQoX19hYXJjaDY0X18pIHx8IGRlZmluZWQoX19yaXNjdikKLSAgICAgY2Fz ZSBfX05SX3NlbmRtc2c6ICAvLyBDb3VsZCBzcGVjaWZ5IGRlc3RpbmF0aW9uLgotICAgICBjYXNl IF9fTlJfc2VuZHRvOiAgIC8vIENvdWxkIHNwZWNpZnkgZGVzdGluYXRpb24uCi0gI2VuZGlmCi1A QCAtNjcyLDcgKzY3Miw3IEBAIGJvb2wgU3lzY2FsbFNldHM6OklzU2VjY29tcChpbnQgc3lzbm8p IHsKLSBib29sIFN5c2NhbGxTZXRzOjpJc0FsbG93ZWRCYXNpY1NjaGVkdWxlcihpbnQgc3lzbm8p IHsKLSAgIHN3aXRjaCAoc3lzbm8pIHsKLSAgICAgY2FzZSBfX05SX3NjaGVkX3lpZWxkOgotLSNp ZiAhZGVmaW5lZChfX2FhcmNoNjRfXykKLSsjaWYgIWRlZmluZWQoX19hYXJjaDY0X18pICYmICFk ZWZpbmVkKF9fcmlzY3YpCi0gICAgIGNhc2UgX19OUl9wYXVzZToKLSAjZW5kaWYKLSAgICAgY2Fz ZSBfX05SX25hbm9zbGVlcDoKLUBAIC03NTYsNyArNzU2LDcgQEAgYm9vbCBTeXNjYWxsU2V0czo6 SXNOdW1hKGludCBzeXNubykgewotICAgICBjYXNlIF9fTlJfZ2V0Y3B1OgotICAgICBjYXNlIF9f TlJfbWJpbmQ6Ci0gI2lmIGRlZmluZWQoX19pMzg2X18pIHx8IGRlZmluZWQoX194ODZfNjRfXykg fHwgZGVmaW5lZChfX21pcHNfXykgfHwgXAotLSAgICBkZWZpbmVkKF9fYWFyY2g2NF9fKQotKyAg ICBkZWZpbmVkKF9fYWFyY2g2NF9fKSB8fCBkZWZpbmVkKF9fcmlzY3YpCi0gICAgIGNhc2UgX19O Ul9taWdyYXRlX3BhZ2VzOgotICNlbmRpZgotICAgICBjYXNlIF9fTlJfbW92ZV9wYWdlczoKLUBA IC03OTEsNyArNzkxLDcgQEAgYm9vbCBTeXNjYWxsU2V0czo6SXNHbG9iYWxQcm9jZXNzRW52aXJv bgotICAgc3dpdGNoIChzeXNubykgewotICAgICBjYXNlIF9fTlJfYWNjdDogIC8vIFByaXZpbGVn ZWQuCi0gI2lmIGRlZmluZWQoX19pMzg2X18pIHx8IGRlZmluZWQoX194ODZfNjRfXykgfHwgZGVm aW5lZChfX21pcHNfXykgfHwgXAotLSAgICBkZWZpbmVkKF9fYWFyY2g2NF9fKQotKyAgICBkZWZp bmVkKF9fYWFyY2g2NF9fKSB8fCBkZWZpbmVkKF9fcmlzY3YpCi0gICAgIGNhc2UgX19OUl9nZXRy bGltaXQ6Ci0gI2VuZGlmCi0gI2lmIGRlZmluZWQoX19pMzg2X18pIHx8IGRlZmluZWQoX19hcm1f XykKLUBAIC04MjYsNyArODI2LDcgQEAgYm9vbCBTeXNjYWxsU2V0czo6SXNEZWJ1ZyhpbnQgc3lz bm8pIHsKLSAKLSBib29sIFN5c2NhbGxTZXRzOjpJc0dsb2JhbFN5c3RlbVN0YXR1cyhpbnQgc3lz bm8pIHsKLSAgIHN3aXRjaCAoc3lzbm8pIHsKLS0jaWYgIWRlZmluZWQoX19hYXJjaDY0X18pCi0r I2lmICFkZWZpbmVkKF9fYWFyY2g2NF9fKSAmJiAhZGVmaW5lZChfX3Jpc2N2KQotICAgICBjYXNl IF9fTlJfX3N5c2N0bDoKLSAgICAgY2FzZSBfX05SX3N5c2ZzOgotICNlbmRpZgotQEAgLTg0NCw3 ICs4NDQsNyBAQCBib29sIFN5c2NhbGxTZXRzOjpJc0dsb2JhbFN5c3RlbVN0YXR1cyhpCi0gCi0g Ym9vbCBTeXNjYWxsU2V0czo6SXNFdmVudEZkKGludCBzeXNubykgewotICAgc3dpdGNoIChzeXNu bykgewotLSNpZiAhZGVmaW5lZChfX2FhcmNoNjRfXykKLSsjaWYgIWRlZmluZWQoX19hYXJjaDY0 X18pICYmICFkZWZpbmVkKF9fcmlzY3YpCi0gICAgIGNhc2UgX19OUl9ldmVudGZkOgotICNlbmRp ZgotICAgICBjYXNlIF9fTlJfZXZlbnRmZDI6Ci1AQCAtODk2LDcgKzg5Niw4IEBAIGJvb2wgU3lz Y2FsbFNldHM6OklzS2V5TWFuYWdlbWVudChpbnQgc3kKLSB9Ci0gCi0gI2lmIGRlZmluZWQoX194 ODZfNjRfXykgfHwgZGVmaW5lZChfX2FybV9fKSB8fCBkZWZpbmVkKF9fYWFyY2g2NF9fKSB8fCBc Ci0tICAgIChkZWZpbmVkKEFSQ0hfQ1BVX01JUFNfRkFNSUxZKSAmJiBkZWZpbmVkKEFSQ0hfQ1BV XzY0X0JJVFMpKQotKyAgICAoZGVmaW5lZChBUkNIX0NQVV9NSVBTX0ZBTUlMWSkgJiYgZGVmaW5l ZChBUkNIX0NQVV82NF9CSVRTKSkgfHwgXAotKyAgICBkZWZpbmVkKF9fcmlzY3YpCi0gYm9vbCBT eXNjYWxsU2V0czo6SXNTeXN0ZW1WU2VtYXBob3JlcyhpbnQgc3lzbm8pIHsKLSAgIHN3aXRjaCAo c3lzbm8pIHsKLSAgICAgY2FzZSBfX05SX3NlbWN0bDoKLUBAIC05MTYsNyArOTE3LDggQEAgYm9v bCBTeXNjYWxsU2V0czo6SXNTeXN0ZW1WU2VtYXBob3JlcyhpbgotIAotICNpZiBkZWZpbmVkKF9f aTM4Nl9fKSB8fCBkZWZpbmVkKF9feDg2XzY0X18pIHx8IGRlZmluZWQoX19hcm1fXykgfHwgXAot ICAgICBkZWZpbmVkKF9fYWFyY2g2NF9fKSB8fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgXAotLSAgICAoZGVmaW5lZChBUkNIX0NQVV9NSVBTX0ZBTUlMWSkgJiYgZGVm aW5lZChBUkNIX0NQVV82NF9CSVRTKSkKLSsgICAgKGRlZmluZWQoQVJDSF9DUFVfTUlQU19GQU1J TFkpICYmIGRlZmluZWQoQVJDSF9DUFVfNjRfQklUUykpIHx8IFwKLSsgICAgZGVmaW5lZChfX3Jp c2N2KQotIC8vIFRoZXNlIGdpdmUgYSBsb3Qgb2YgYW1iaWVudCBhdXRob3JpdHkgYW5kIGJ5cGFz cyB0aGUgc2V0dWlkIHNhbmRib3guCi0gYm9vbCBTeXNjYWxsU2V0czo6SXNTeXN0ZW1WU2hhcmVk TWVtb3J5KGludCBzeXNubykgewotICAgc3dpdGNoIChzeXNubykgewotQEAgLTkzMiw3ICs5MzQs OCBAQCBib29sIFN5c2NhbGxTZXRzOjpJc1N5c3RlbVZTaGFyZWRNZW1vcnkoCi0gI2VuZGlmCi0g Ci0gI2lmIGRlZmluZWQoX194ODZfNjRfXykgfHwgZGVmaW5lZChfX2FybV9fKSB8fCBkZWZpbmVk KF9fYWFyY2g2NF9fKSB8fCBcCi0tICAgIChkZWZpbmVkKEFSQ0hfQ1BVX01JUFNfRkFNSUxZKSAm JiBkZWZpbmVkKEFSQ0hfQ1BVXzY0X0JJVFMpKQotKyAgICAoZGVmaW5lZChBUkNIX0NQVV9NSVBT X0ZBTUlMWSkgJiYgZGVmaW5lZChBUkNIX0NQVV82NF9CSVRTKSkgfHwgXAotKyAgICBkZWZpbmVk KF9fcmlzY3YpCi0gYm9vbCBTeXNjYWxsU2V0czo6SXNTeXN0ZW1WTWVzc2FnZVF1ZXVlKGludCBz eXNubykgewotICAgc3dpdGNoIChzeXNubykgewotICAgICBjYXNlIF9fTlJfbXNnY3RsOgotQEAg LTk2Myw3ICs5NjYsOCBAQCBib29sIFN5c2NhbGxTZXRzOjpJc1N5c3RlbVZJcGMoaW50IHN5c25v Ci0gCi0gYm9vbCBTeXNjYWxsU2V0czo6SXNBbnlTeXN0ZW1WKGludCBzeXNubykgewotICNpZiBk ZWZpbmVkKF9feDg2XzY0X18pIHx8IGRlZmluZWQoX19hcm1fXykgfHwgZGVmaW5lZChfX2FhcmNo NjRfXykgfHwgXAotLSAgICAoZGVmaW5lZChBUkNIX0NQVV9NSVBTX0ZBTUlMWSkgJiYgZGVmaW5l ZChBUkNIX0NQVV82NF9CSVRTKSkKLSsgICAgKGRlZmluZWQoQVJDSF9DUFVfTUlQU19GQU1JTFkp ICYmIGRlZmluZWQoQVJDSF9DUFVfNjRfQklUUykpIHx8IFwKLSsgICAgZGVmaW5lZChfX3Jpc2N2 KQotICAgcmV0dXJuIElzU3lzdGVtVk1lc3NhZ2VRdWV1ZShzeXNubykgfHwgSXNTeXN0ZW1WU2Vt YXBob3JlcyhzeXNubykgfHwKLSAgICAgICAgICBJc1N5c3RlbVZTaGFyZWRNZW1vcnkoc3lzbm8p OwotICNlbGlmIGRlZmluZWQoX19pMzg2X18pIHx8IFwKLUBAIC0xMDAwLDcgKzEwMDQsNyBAQCBi b29sIFN5c2NhbGxTZXRzOjpJc0FkdmFuY2VkU2NoZWR1bGVyKGluCi0gYm9vbCBTeXNjYWxsU2V0 czo6SXNJbm90aWZ5KGludCBzeXNubykgewotICAgc3dpdGNoIChzeXNubykgewotICAgICBjYXNl IF9fTlJfaW5vdGlmeV9hZGRfd2F0Y2g6Ci0tI2lmICFkZWZpbmVkKF9fYWFyY2g2NF9fKQotKyNp ZiAhZGVmaW5lZChfX2FhcmNoNjRfXykgJiYgIWRlZmluZWQoX19yaXNjdikKLSAgICAgY2FzZSBf X05SX2lub3RpZnlfaW5pdDoKLSAjZW5kaWYKLSAgICAgY2FzZSBfX05SX2lub3RpZnlfaW5pdDE6 Ci1AQCAtMTEzOCw3ICsxMTQyLDcgQEAgYm9vbCBTeXNjYWxsU2V0czo6SXNNaXNjKGludCBzeXNu bykgewotICNpZiBkZWZpbmVkKF9feDg2XzY0X18pCi0gICAgIGNhc2UgX19OUl90dXhjYWxsOgot ICNlbmRpZgotLSNpZiAhZGVmaW5lZChfX2FhcmNoNjRfXykKLSsjaWYgIWRlZmluZWQoX19hYXJj aDY0X18pICYmICFkZWZpbmVkKF9fcmlzY3YpCi0gICAgIGNhc2UgX19OUl92c2VydmVyOgotICNl bmRpZgotICAgICAgIHJldHVybiB0cnVlOwotQEAgLTExNzMsNiArMTE3NywxNyBAQCBib29sIFN5 c2NhbGxTZXRzOjpJc0FybVByaXZhdGUoaW50IHN5c25vCi0gfQotICNlbmRpZiAgLy8gZGVmaW5l ZChfX2FybV9fKQotIAotKyNpZiBkZWZpbmVkKF9fcmlzY3YpCi0rYm9vbCBTeXNjYWxsU2V0czo6 SXNSaXNjdlByaXZhdGUoaW50IHN5c25vKSB7Ci0rICBzd2l0Y2ggKHN5c25vKSB7Ci0rICAgIGNh c2UgX19OUl9yaXNjdl9mbHVzaF9pY2FjaGU6Ci0rICAgICAgcmV0dXJuIHRydWU7Ci0rICAgIGRl ZmF1bHQ6Ci0rICAgICAgcmV0dXJuIGZhbHNlOwotKyAgfQotK30KLSsjZW5kaWYgIC8vIGRlZmlu ZWQoX19yaXNjdikKLSsKLSAjaWYgZGVmaW5lZChfX21pcHNfXykKLSBib29sIFN5c2NhbGxTZXRz OjpJc01pcHNQcml2YXRlKGludCBzeXNubykgewotICAgc3dpdGNoIChzeXNubykgewotSW5kZXg6 IGNocm9taXVtLTEwNy4wLjUzMDQuODcvc2FuZGJveC9saW51eC9zZWNjb21wLWJwZi1oZWxwZXJz L3N5c2NhbGxfc2V0cy5oCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gY2hyb21pdW0tMTA3LjAuNTMwNC44Ny5v cmlnL3NhbmRib3gvbGludXgvc2VjY29tcC1icGYtaGVscGVycy9zeXNjYWxsX3NldHMuaAotKysr IGNocm9taXVtLTEwNy4wLjUzMDQuODcvc2FuZGJveC9saW51eC9zZWNjb21wLWJwZi1oZWxwZXJz L3N5c2NhbGxfc2V0cy5oCi1AQCAtNTIsNyArNTIsNyBAQCBjbGFzcyBTQU5EQk9YX0VYUE9SVCBT eXNjYWxsU2V0cyB7Ci0gI2VuZGlmCi0gCi0gI2lmIGRlZmluZWQoX194ODZfNjRfXykgfHwgZGVm aW5lZChfX2FybV9fKSB8fCBkZWZpbmVkKF9fbWlwc19fKSB8fCBcCi0tICAgIGRlZmluZWQoX19h YXJjaDY0X18pCi0rICAgIGRlZmluZWQoX19hYXJjaDY0X18pIHx8IGRlZmluZWQoX19yaXNjdikK LSAgIHN0YXRpYyBib29sIElzTmV0d29ya1NvY2tldEluZm9ybWF0aW9uKGludCBzeXNubyk7Ci0g I2VuZGlmCi0gCi1AQCAtNzksMTggKzc5LDIxIEBAIGNsYXNzIFNBTkRCT1hfRVhQT1JUIFN5c2Nh bGxTZXRzIHsKLSAgIHN0YXRpYyBib29sIElzQXN5bmNJbyhpbnQgc3lzbm8pOwotICAgc3RhdGlj IGJvb2wgSXNLZXlNYW5hZ2VtZW50KGludCBzeXNubyk7Ci0gI2lmIGRlZmluZWQoX194ODZfNjRf XykgfHwgZGVmaW5lZChfX2FybV9fKSB8fCBkZWZpbmVkKF9fYWFyY2g2NF9fKSB8fCBcCi0tICAg IChkZWZpbmVkKEFSQ0hfQ1BVX01JUFNfRkFNSUxZKSAmJiBkZWZpbmVkKEFSQ0hfQ1BVXzY0X0JJ VFMpKQotKyAgICAoZGVmaW5lZChBUkNIX0NQVV9NSVBTX0ZBTUlMWSkgJiYgZGVmaW5lZChBUkNI X0NQVV82NF9CSVRTKSkgfHwgXAotKyAgICBkZWZpbmVkKF9fcmlzY3YpCi0gICBzdGF0aWMgYm9v bCBJc1N5c3RlbVZTZW1hcGhvcmVzKGludCBzeXNubyk7Ci0gI2VuZGlmCi0gI2lmIGRlZmluZWQo X19pMzg2X18pIHx8IGRlZmluZWQoX194ODZfNjRfXykgfHwgZGVmaW5lZChfX2FybV9fKSB8fCBc Ci0gICAgIGRlZmluZWQoX19hYXJjaDY0X18pIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcCi0tICAgIChkZWZpbmVkKEFSQ0hfQ1BVX01JUFNfRkFNSUxZKSAmJiBk ZWZpbmVkKEFSQ0hfQ1BVXzY0X0JJVFMpKQotKyAgICAoZGVmaW5lZChBUkNIX0NQVV9NSVBTX0ZB TUlMWSkgJiYgZGVmaW5lZChBUkNIX0NQVV82NF9CSVRTKSkgfHwgXAotKyAgICBkZWZpbmVkKF9f cmlzY3YpCi0gICAvLyBUaGVzZSBnaXZlIGEgbG90IG9mIGFtYmllbnQgYXV0aG9yaXR5IGFuZCBi eXBhc3MgdGhlIHNldHVpZCBzYW5kYm94LgotICAgc3RhdGljIGJvb2wgSXNTeXN0ZW1WU2hhcmVk TWVtb3J5KGludCBzeXNubyk7Ci0gI2VuZGlmCi0gCi0gI2lmIGRlZmluZWQoX194ODZfNjRfXykg fHwgZGVmaW5lZChfX2FybV9fKSB8fCBkZWZpbmVkKF9fYWFyY2g2NF9fKSB8fCBcCi0tICAgIChk ZWZpbmVkKEFSQ0hfQ1BVX01JUFNfRkFNSUxZKSAmJiBkZWZpbmVkKEFSQ0hfQ1BVXzY0X0JJVFMp KQotKyAgICAoZGVmaW5lZChBUkNIX0NQVV9NSVBTX0ZBTUlMWSkgJiYgZGVmaW5lZChBUkNIX0NQ VV82NF9CSVRTKSkgfHwgXAotKyAgICBkZWZpbmVkKF9fcmlzY3YpCi0gICBzdGF0aWMgYm9vbCBJ c1N5c3RlbVZNZXNzYWdlUXVldWUoaW50IHN5c25vKTsKLSAjZW5kaWYKLSAKLUBAIC0xMTcsNiAr MTIwLDkgQEAgY2xhc3MgU0FOREJPWF9FWFBPUlQgU3lzY2FsbFNldHMgewotICAgc3RhdGljIGJv b2wgSXNNaXBzUHJpdmF0ZShpbnQgc3lzbm8pOwotICAgc3RhdGljIGJvb2wgSXNNaXBzTWlzYyhp bnQgc3lzbm8pOwotICNlbmRpZiAgLy8gZGVmaW5lZChfX21pcHNfXykKLSsjaWYgZGVmaW5lZChf X3Jpc2N2KQotKyAgc3RhdGljIGJvb2wgSXNSaXNjdlByaXZhdGUoaW50IHN5c25vKTsKLSsjZW5k aWYKLSAgIHN0YXRpYyBib29sIElzR29vZ2xlM1RocmVhZGluZyhpbnQgc3lzbm8pOwotIH07Ci0g Ci1JbmRleDogY2hyb21pdW0tMTA3LjAuNTMwNC44Ny9zYW5kYm94L2xpbnV4L3NlY2NvbXAtYnBm L3N5c2NhbGwuY2MKLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBjaHJvbWl1bS0xMDcuMC41MzA0Ljg3Lm9yaWcv c2FuZGJveC9saW51eC9zZWNjb21wLWJwZi9zeXNjYWxsLmNjCi0rKysgY2hyb21pdW0tMTA3LjAu NTMwNC44Ny9zYW5kYm94L2xpbnV4L3NlY2NvbXAtYnBmL3N5c2NhbGwuY2MKLUBAIC0xOCw3ICsx OCw3IEBAIG5hbWVzcGFjZSBzYW5kYm94IHsKLSBuYW1lc3BhY2UgewotIAotICNpZiBkZWZpbmVk KEFSQ0hfQ1BVX1g4Nl9GQU1JTFkpIHx8IGRlZmluZWQoQVJDSF9DUFVfQVJNX0ZBTUlMWSkgfHwg XAotLSAgICBkZWZpbmVkKEFSQ0hfQ1BVX01JUFNfRkFNSUxZKQotKyAgICBkZWZpbmVkKEFSQ0hf Q1BVX01JUFNfRkFNSUxZKSB8fCBkZWZpbmVkKEFSQ0hfQ1BVX1JJU0NWX0ZBTUlMWSkKLSAvLyBO dW1iZXIgdGhhdCdzIG5vdCBjdXJyZW50bHkgdXNlZCBieSBhbnkgTGludXgga2VybmVsIEFCSXMu Ci0gY29uc3QgaW50IGtJbnZhbGlkU3lzY2FsbE51bWJlciA9IDB4MzUxZDM7Ci0gI2Vsc2UKLUBA IC0zMDgsNiArMzA4LDI4IEBAIGFzbSgvLyBXZSBuZWVkIHRvIGJlIGFibGUgdG8gdGVsbCB0aGUg a2UKLSAgICAgIjI6cmV0XG4iCi0gICAgICIuY2ZpX2VuZHByb2NcbiIKLSAgICAgIi5zaXplIFN5 c2NhbGxBc20sIC4tU3lzY2FsbEFzbVxuIgotKyNlbGlmIGRlZmluZWQoX19yaXNjdikKLSsgICAg Ii50ZXh0XG4iCi0rICAgICIuYWxpZ24gMlxuIgotKyAgICAiLnR5cGUgU3lzY2FsbEFzbSwgJWZ1 bmN0aW9uXG4iCi0rICAgICJTeXNjYWxsQXNtOlxuIgotKyAgICAiLmNmaV9zdGFydHByb2NcbiIK LSsgICAgImJnZXogYTAsMWZcbiIKLSsgICAgImxhIGEwLDJmXG4iCi0rICAgICJqIDJmXG4iCi0r ICAgICIxOm12IGE3LCBhMFxuIgotKyAgICAibGQgYTAsICh0MClcbiIKLSsgICAgImxkIGExLCA4 KHQwKVxuIgotKyAgICAibGQgYTIsIDE2KHQwKVxuIgotKyAgICAibGQgYTMsIDI0KHQwKVxuIgot KyAgICAibGQgYTQsIDMyKHQwKVxuIgotKyAgICAibGQgYTUsIDQwKHQwKVxuIgotKyAgICAibGQg YTYsIDQ4KHQwKVxuIgotKyAgICAvLyBFbnRlciB0aGUga2VybmVsCi0rICAgICJzY2FsbFxuIgot KyAgICAiMjpyZXRcbiIKLSsgICAgIi5jZmlfZW5kcHJvY1xuIgotKyAgICAiLnNpemUgU3lzY2Fs bEFzbSwgLi1TeXNjYWxsQXNtXG4iCi0gI2VuZGlmCi0gICAgICk7ICAvLyBhc20KLSAKLUBAIC00 MjUsNiArNDQ3LDE4IEBAIGludHB0cl90IFN5c2NhbGw6OkNhbGwoaW50IG5yLAotICAgICByZXQg PSBpbm91dDsKLSAgIH0KLSAKLSsjZWxpZiBkZWZpbmVkKF9fcmlzY3YpCi0rICBpbnRwdHJfdCBy ZXQ7Ci0rICB7Ci0rICAgIHJlZ2lzdGVyIGludHB0cl90IGlub3V0IF9fYXNtX18oImEwIikgPSBu cjsKLSsgICAgcmVnaXN0ZXIgY29uc3QgaW50cHRyX3QqIGRhdGEgX19hc21fXygidDAiKSA9IGFy Z3M7Ci0rICAgIGFzbSB2b2xhdGlsZSgiamFsIFN5c2NhbGxBc21cbiIKLSsgICAgICAgICAgICAg ICAgIDogIityIihpbm91dCkKLSsgICAgICAgICAgICAgICAgIDogInIiKGRhdGEpCi0rICAgICAg ICAgICAgICAgICA6ICJtZW1vcnkiLCAiYTEiLCAiYTIiLCAiYTMiLCAiYTQiLCAiYTUiLCAiYTYi KTsKLSsgICAgcmV0ID0gaW5vdXQ7Ci0rICB9Ci0rCi0gI2Vsc2UKLSAjZXJyb3IgIlVuaW1wbGVt ZW50ZWQgYXJjaGl0ZWN0dXJlIgotICNlbmRpZgotSW5kZXg6IGNocm9taXVtLTEwNy4wLjUzMDQu ODcvc2FuZGJveC9saW51eC9zZXJ2aWNlcy9jcmVkZW50aWFscy5jYwotPT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0t IGNocm9taXVtLTEwNy4wLjUzMDQuODcub3JpZy9zYW5kYm94L2xpbnV4L3NlcnZpY2VzL2NyZWRl bnRpYWxzLmNjCi0rKysgY2hyb21pdW0tMTA3LjAuNTMwNC44Ny9zYW5kYm94L2xpbnV4L3NlcnZp Y2VzL2NyZWRlbnRpYWxzLmNjCi1AQCAtODAsNyArODAsNyBAQCBib29sIENocm9vdFRvU2FmZUVt cHR5RGlyKCkgewotICAgcGlkX3QgcGlkID0gLTE7Ci0gICBhbGlnbmFzKDE2KSBjaGFyIHN0YWNr X2J1ZltQVEhSRUFEX1NUQUNLX01JTl07Ci0gI2lmIGRlZmluZWQoQVJDSF9DUFVfWDg2X0ZBTUlM WSkgfHwgZGVmaW5lZChBUkNIX0NQVV9BUk1fRkFNSUxZKSB8fCBcCi0tICAgIGRlZmluZWQoQVJD SF9DUFVfTUlQU19GQU1JTFkpCi0rICAgIGRlZmluZWQoQVJDSF9DUFVfTUlQU19GQU1JTFkpIHx8 IGRlZmluZWQoQVJDSF9DUFVfUklTQ1ZfRkFNSUxZKQotICAgLy8gVGhlIHN0YWNrIGdyb3dzIGRv d253YXJkLgotICAgdm9pZCogc3RhY2sgPSBzdGFja19idWYgKyBzaXplb2Yoc3RhY2tfYnVmKTsK LSAjZWxzZQotSW5kZXg6IGNocm9taXVtLTEwNy4wLjUzMDQuODcvc2FuZGJveC9saW51eC9zZXJ2 aWNlcy9zeXNjYWxsX3dyYXBwZXJzLmNjCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gY2hyb21pdW0tMTA3LjAu NTMwNC44Ny5vcmlnL3NhbmRib3gvbGludXgvc2VydmljZXMvc3lzY2FsbF93cmFwcGVycy5jYwot KysrIGNocm9taXVtLTEwNy4wLjUzMDQuODcvc2FuZGJveC9saW51eC9zZXJ2aWNlcy9zeXNjYWxs X3dyYXBwZXJzLmNjCi1AQCAtNjEsNyArNjEsNyBAQCBsb25nIHN5c19jbG9uZSh1bnNpZ25lZCBs b25nIGZsYWdzLAotICNpZiBkZWZpbmVkKEFSQ0hfQ1BVX1g4Nl82NCkKLSAgIHJldHVybiBzeXNj YWxsKF9fTlJfY2xvbmUsIGZsYWdzLCBjaGlsZF9zdGFjaywgcHRpZCwgY3RpZCwgdGxzKTsKLSAj ZWxpZiBkZWZpbmVkKEFSQ0hfQ1BVX1g4NikgfHwgZGVmaW5lZChBUkNIX0NQVV9BUk1fRkFNSUxZ KSB8fCBcCi0tICAgIGRlZmluZWQoQVJDSF9DUFVfTUlQU19GQU1JTFkpCi0rICAgIGRlZmluZWQo QVJDSF9DUFVfTUlQU19GQU1JTFkpIHx8IGRlZmluZWQoQVJDSF9DUFVfUklTQ1ZfRkFNSUxZKQot ICAgLy8gQ09ORklHX0NMT05FX0JBQ0tXQVJEUyBkZWZpbmVkLgotICAgcmV0dXJuIHN5c2NhbGwo X19OUl9jbG9uZSwgZmxhZ3MsIGNoaWxkX3N0YWNrLCBwdGlkLCB0bHMsIGN0aWQpOwotICNlbmRp ZgotSW5kZXg6IGNocm9taXVtLTEwNy4wLjUzMDQuODcvc2FuZGJveC9saW51eC9zeXNjYWxsX2Jy b2tlci9icm9rZXJfcHJvY2Vzcy5jYwotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGNocm9taXVtLTEwNy4wLjUz MDQuODcub3JpZy9zYW5kYm94L2xpbnV4L3N5c2NhbGxfYnJva2VyL2Jyb2tlcl9wcm9jZXNzLmNj Ci0rKysgY2hyb21pdW0tMTA3LjAuNTMwNC44Ny9zYW5kYm94L2xpbnV4L3N5c2NhbGxfYnJva2Vy L2Jyb2tlcl9wcm9jZXNzLmNjCi1AQCAtMTE3LDQ0ICsxMTcsNDYgQEAgYm9vbCBCcm9rZXJQcm9j ZXNzOjpJc1N5c2NhbGxCcm9rZXJhYmxlKAotICAgLy8gYW5kIGFyZSBkZWZhdWx0IGRpc2FibGVk IGluIEFuZHJvaWQuIFNvLCB3ZSBzaG91bGQgcmVmdXNlIHRvIGJyb2tlciB0aGVtCi0gICAvLyB0 byBiZSBjb25zaXN0ZW50IHdpdGggdGhlIHBsYXRmb3JtJ3MgcmVzdHJpY3Rpb25zLgotICAgc3dp dGNoIChzeXNubykgewotLSNpZiAhZGVmaW5lZChfX2FhcmNoNjRfXykgJiYgIUJVSUxERkxBRyhJ U19BTkRST0lEKQotKyNpZiAhZGVmaW5lZChfX2FhcmNoNjRfXykgJiYgIUJVSUxERkxBRyhJU19B TkRST0lEKSAmJiAhZGVmaW5lZChfX3Jpc2N2KQotICAgICBjYXNlIF9fTlJfYWNjZXNzOgotICNl bmRpZgotICAgICBjYXNlIF9fTlJfZmFjY2Vzc2F0OgotICAgICBjYXNlIF9fTlJfZmFjY2Vzc2F0 MjoKLSAgICAgICByZXR1cm4gIWZhc3RfY2hlY2sgfHwgcG9saWN5Xy0+YWxsb3dlZF9jb21tYW5k X3NldC50ZXN0KENPTU1BTkRfQUNDRVNTKTsKLSAKLS0jaWYgIWRlZmluZWQoX19hYXJjaDY0X18p ICYmICFCVUlMREZMQUcoSVNfQU5EUk9JRCkKLSsjaWYgIWRlZmluZWQoX19hYXJjaDY0X18pICYm ICFCVUlMREZMQUcoSVNfQU5EUk9JRCkgJiYgIWRlZmluZWQoX19yaXNjdikKLSAgICAgY2FzZSBf X05SX21rZGlyOgotICNlbmRpZgotICAgICBjYXNlIF9fTlJfbWtkaXJhdDoKLSAgICAgICByZXR1 cm4gIWZhc3RfY2hlY2sgfHwgcG9saWN5Xy0+YWxsb3dlZF9jb21tYW5kX3NldC50ZXN0KENPTU1B TkRfTUtESVIpOwotIAotLSNpZiAhZGVmaW5lZChfX2FhcmNoNjRfXykgJiYgIUJVSUxERkxBRyhJ U19BTkRST0lEKQotKyNpZiAhZGVmaW5lZChfX2FhcmNoNjRfXykgJiYgIUJVSUxERkxBRyhJU19B TkRST0lEKSAmJiAhZGVmaW5lZChfX3Jpc2N2KQotICAgICBjYXNlIF9fTlJfb3BlbjoKLSAjZW5k aWYKLSAgICAgY2FzZSBfX05SX29wZW5hdDoKLSAgICAgICByZXR1cm4gIWZhc3RfY2hlY2sgfHwg cG9saWN5Xy0+YWxsb3dlZF9jb21tYW5kX3NldC50ZXN0KENPTU1BTkRfT1BFTik7Ci0gCi0tI2lm ICFkZWZpbmVkKF9fYWFyY2g2NF9fKSAmJiAhQlVJTERGTEFHKElTX0FORFJPSUQpCi0rI2lmICFk ZWZpbmVkKF9fYWFyY2g2NF9fKSAmJiAhQlVJTERGTEFHKElTX0FORFJPSUQpICYmICFkZWZpbmVk KF9fcmlzY3YpCi0gICAgIGNhc2UgX19OUl9yZWFkbGluazoKLSAjZW5kaWYKLSAgICAgY2FzZSBf X05SX3JlYWRsaW5rYXQ6Ci0gICAgICAgcmV0dXJuICFmYXN0X2NoZWNrIHx8IHBvbGljeV8tPmFs bG93ZWRfY29tbWFuZF9zZXQudGVzdChDT01NQU5EX1JFQURMSU5LKTsKLSAKLS0jaWYgIWRlZmlu ZWQoX19hYXJjaDY0X18pICYmICFCVUlMREZMQUcoSVNfQU5EUk9JRCkKLSsjaWYgIWRlZmluZWQo X19hYXJjaDY0X18pICYmICFCVUlMREZMQUcoSVNfQU5EUk9JRCkgJiYgIWRlZmluZWQoX19yaXNj dikKLSAgICAgY2FzZSBfX05SX3JlbmFtZToKLSAjZW5kaWYKLSsjaWZkZWYgX19OUl9yZW5hbWVh dAotICAgICBjYXNlIF9fTlJfcmVuYW1lYXQ6Ci0rI2VuZGlmCi0gICAgIGNhc2UgX19OUl9yZW5h bWVhdDI6Ci0gICAgICAgcmV0dXJuICFmYXN0X2NoZWNrIHx8IHBvbGljeV8tPmFsbG93ZWRfY29t bWFuZF9zZXQudGVzdChDT01NQU5EX1JFTkFNRSk7Ci0gCi0tI2lmICFkZWZpbmVkKF9fYWFyY2g2 NF9fKSAmJiAhQlVJTERGTEFHKElTX0FORFJPSUQpCi0rI2lmICFkZWZpbmVkKF9fYWFyY2g2NF9f KSAmJiAhQlVJTERGTEFHKElTX0FORFJPSUQpICYmICFkZWZpbmVkKF9fcmlzY3YpCi0gICAgIGNh c2UgX19OUl9ybWRpcjoKLSAgICAgICByZXR1cm4gIWZhc3RfY2hlY2sgfHwgcG9saWN5Xy0+YWxs b3dlZF9jb21tYW5kX3NldC50ZXN0KENPTU1BTkRfUk1ESVIpOwotICNlbmRpZgotIAotLSNpZiAh ZGVmaW5lZChfX2FhcmNoNjRfXykgJiYgIUJVSUxERkxBRyhJU19BTkRST0lEKQotKyNpZiAhZGVm aW5lZChfX2FhcmNoNjRfXykgJiYgIUJVSUxERkxBRyhJU19BTkRST0lEKSAmJiAhZGVmaW5lZChf X3Jpc2N2KQotICAgICBjYXNlIF9fTlJfc3RhdDoKLSAgICAgY2FzZSBfX05SX2xzdGF0OgotICNl bmRpZgotQEAgLTE2NCw3ICsxNjYsNyBAQCBib29sIEJyb2tlclByb2Nlc3M6OklzU3lzY2FsbEJy b2tlcmFibGUoCi0gI2lmIGRlZmluZWQoX19OUl9mc3RhdGF0NjQpCi0gICAgIGNhc2UgX19OUl9m c3RhdGF0NjQ6Ci0gI2VuZGlmCi0tI2lmIGRlZmluZWQoX194ODZfNjRfXykgfHwgZGVmaW5lZChf X2FhcmNoNjRfXykKLSsjaWYgZGVmaW5lZChfX3g4Nl82NF9fKSB8fCBkZWZpbmVkKF9fYWFyY2g2 NF9fKSB8fCBkZWZpbmVkKF9fcmlzY3YpCi0gICAgIGNhc2UgX19OUl9uZXdmc3RhdGF0OgotICNl bmRpZgotICAgICAgIHJldHVybiAhZmFzdF9jaGVjayB8fCBwb2xpY3lfLT5hbGxvd2VkX2NvbW1h bmRfc2V0LnRlc3QoQ09NTUFORF9TVEFUKTsKLUBAIC0xNzksNyArMTgxLDcgQEAgYm9vbCBCcm9r ZXJQcm9jZXNzOjpJc1N5c2NhbGxCcm9rZXJhYmxlKAotICAgICAgIHJldHVybiAhZmFzdF9jaGVj ayB8fCBwb2xpY3lfLT5hbGxvd2VkX2NvbW1hbmRfc2V0LnRlc3QoQ09NTUFORF9TVEFUKTsKLSAj ZW5kaWYKLSAKLS0jaWYgIWRlZmluZWQoX19hYXJjaDY0X18pICYmICFCVUlMREZMQUcoSVNfQU5E Uk9JRCkKLSsjaWYgIWRlZmluZWQoX19hYXJjaDY0X18pICYmICFCVUlMREZMQUcoSVNfQU5EUk9J RCkgJiYgIWRlZmluZWQoX19yaXNjdikKLSAgICAgY2FzZSBfX05SX3VubGluazoKLSAgICAgICBy ZXR1cm4gIWZhc3RfY2hlY2sgfHwgcG9saWN5Xy0+YWxsb3dlZF9jb21tYW5kX3NldC50ZXN0KENP TU1BTkRfVU5MSU5LKTsKLSAjZW5kaWYKLUluZGV4OiBjaHJvbWl1bS0xMDcuMC41MzA0Ljg3L3Nh bmRib3gvbGludXgvc3lzdGVtX2hlYWRlcnMvbGludXhfc2VjY29tcC5oCi09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t LS0gY2hyb21pdW0tMTA3LjAuNTMwNC44Ny5vcmlnL3NhbmRib3gvbGludXgvc3lzdGVtX2hlYWRl cnMvbGludXhfc2VjY29tcC5oCi0rKysgY2hyb21pdW0tMTA3LjAuNTMwNC44Ny9zYW5kYm94L2xp bnV4L3N5c3RlbV9oZWFkZXJzL2xpbnV4X3NlY2NvbXAuaAotQEAgLTM4LDYgKzM4LDkgQEAKLSAj aWZuZGVmIEVNX0FBUkNINjQKLSAjZGVmaW5lIEVNX0FBUkNINjQgMTgzCi0gI2VuZGlmCi0rI2lm bmRlZiBFTV9SSVNDVgotKyNkZWZpbmUgRU1fUklTQ1YgMjQzCi0rI2VuZGlmCi0gCi0gI2lmbmRl ZiBfX0FVRElUX0FSQ0hfNjRCSVQKLSAjZGVmaW5lIF9fQVVESVRfQVJDSF82NEJJVCAweDgwMDAw MDAwCi1AQCAtNzAsNiArNzMsOSBAQAotICNpZm5kZWYgQVVESVRfQVJDSF9BQVJDSDY0Ci0gI2Rl ZmluZSBBVURJVF9BUkNIX0FBUkNINjQgKEVNX0FBUkNINjQgfCBfX0FVRElUX0FSQ0hfNjRCSVQg fCBfX0FVRElUX0FSQ0hfTEUpCi0gI2VuZGlmCi0rI2lmbmRlZiBBVURJVF9BUkNIX1JJU0NWNjQK LSsjZGVmaW5lIEFVRElUX0FSQ0hfUklTQ1Y2NCAoRU1fUklTQ1Z8X19BVURJVF9BUkNIXzY0QklU fF9fQVVESVRfQVJDSF9MRSkKLSsjZW5kaWYKLSAKLSAvLyBGb3IgcHJjdGwuaAotICNpZm5kZWYg UFJfU0VUX1NFQ0NPTVAKLUluZGV4OiBjaHJvbWl1bS0xMDcuMC41MzA0Ljg3L3NhbmRib3gvbGlu dXgvc3lzdGVtX2hlYWRlcnMvbGludXhfc2lnbmFsLmgKLT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBjaHJvbWl1 bS0xMDcuMC41MzA0Ljg3Lm9yaWcvc2FuZGJveC9saW51eC9zeXN0ZW1faGVhZGVycy9saW51eF9z aWduYWwuaAotKysrIGNocm9taXVtLTEwNy4wLjUzMDQuODcvc2FuZGJveC9saW51eC9zeXN0ZW1f aGVhZGVycy9saW51eF9zaWduYWwuaAotQEAgLTEzLDcgKzEzLDcgQEAKLSAvLyAobm90IHVuZGVm aW5lZCwgYnV0IGRlZmluZWQgZGlmZmVyZW50IHZhbHVlcyBhbmQgaW4gZGlmZmVyZW50IG1lbW9y eQotIC8vIGxheW91dHMpLiBTbywgZmlsbCB0aGUgZ2FwIGhlcmUuCi0gI2lmIGRlZmluZWQoX19p Mzg2X18pIHx8IGRlZmluZWQoX194ODZfNjRfXykgfHwgZGVmaW5lZChfX2FybV9fKSB8fCBcCi0t ICAgIGRlZmluZWQoX19hYXJjaDY0X18pCi0rICAgIGRlZmluZWQoX19hYXJjaDY0X18pIHx8IGRl ZmluZWQoX19yaXNjdikKLSAKLSAjZGVmaW5lIExJTlVYX1NJR0hVUCAxCi0gI2RlZmluZSBMSU5V WF9TSUdJTlQgMgotSW5kZXg6IGNocm9taXVtLTEwNy4wLjUzMDQuODcvc2FuZGJveC9saW51eC9z eXN0ZW1faGVhZGVycy9saW51eF9zdGF0LmgKLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBjaHJvbWl1bS0xMDcu MC41MzA0Ljg3Lm9yaWcvc2FuZGJveC9saW51eC9zeXN0ZW1faGVhZGVycy9saW51eF9zdGF0LmgK LSsrKyBjaHJvbWl1bS0xMDcuMC41MzA0Ljg3L3NhbmRib3gvbGludXgvc3lzdGVtX2hlYWRlcnMv bGludXhfc3RhdC5oCi1AQCAtMTUwLDcgKzE1MCw3IEBAIHN0cnVjdCBrZXJuZWxfc3RhdCB7Ci0g ICBpbnQgc3RfYmxvY2tzOwotICAgaW50IHN0X3BhZDRbMTRdOwotIH07Ci0tI2VsaWYgZGVmaW5l ZChfX2FhcmNoNjRfXykKLSsjZWxpZiBkZWZpbmVkKF9fYWFyY2g2NF9fKSB8fCBkZWZpbmVkKF9f cmlzY3YpCi0gc3RydWN0IGtlcm5lbF9zdGF0IHsKLSAgIHVuc2lnbmVkIGxvbmcgc3RfZGV2Owot ICAgdW5zaWduZWQgbG9uZyBzdF9pbm87Ci1JbmRleDogY2hyb21pdW0tMTA3LjAuNTMwNC44Ny9z YW5kYm94L2xpbnV4L3N5c3RlbV9oZWFkZXJzL2xpbnV4X3N5c2NhbGxzLmgKLT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K LS0tLSBjaHJvbWl1bS0xMDcuMC41MzA0Ljg3Lm9yaWcvc2FuZGJveC9saW51eC9zeXN0ZW1faGVh ZGVycy9saW51eF9zeXNjYWxscy5oCi0rKysgY2hyb21pdW0tMTA3LjAuNTMwNC44Ny9zYW5kYm94 L2xpbnV4L3N5c3RlbV9oZWFkZXJzL2xpbnV4X3N5c2NhbGxzLmgKLUBAIC0zNSw1ICszNSw5IEBA Ci0gI2luY2x1ZGUgInNhbmRib3gvbGludXgvc3lzdGVtX2hlYWRlcnMvYXJtNjRfbGludXhfc3lz Y2FsbHMuaCIKLSAjZW5kaWYKLSAKLSsjaWYgZGVmaW5lZChfX3Jpc2N2KSAmJiBfX3Jpc2N2X3hs ZW4gPT0gNjQKLSsjaW5jbHVkZSAic2FuZGJveC9saW51eC9zeXN0ZW1faGVhZGVycy9yaXNjdjY0 X2xpbnV4X3N5c2NhbGxzLmgiCi0rI2VuZGlmCi0rCi0gI2VuZGlmICAvLyBTQU5EQk9YX0xJTlVY X1NZU1RFTV9IRUFERVJTX0xJTlVYX1NZU0NBTExTX0hfCi0gCi1JbmRleDogY2hyb21pdW0tMTA3 LjAuNTMwNC44Ny9zYW5kYm94L2xpbnV4L3N5c3RlbV9oZWFkZXJzL3Jpc2N2NjRfbGludXhfc3lz Y2FsbHMuaAotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PQotLS0tIC9kZXYvbnVsbAotKysrIGNocm9taXVtLTEwNy4wLjUz MDQuODcvc2FuZGJveC9saW51eC9zeXN0ZW1faGVhZGVycy9yaXNjdjY0X2xpbnV4X3N5c2NhbGxz LmgKLUBAIC0wLDAgKzEsMTIyMiBAQAotKy8vIENvcHlyaWdodCAyMDE0IFRoZSBDaHJvbWl1bSBB dXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotKy8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2Rl IGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKLSsvLyBmb3Vu ZCBpbiB0aGUgTElDRU5TRSBmaWxlLgotKwotKyNpZm5kZWYgU0FOREJPWF9MSU5VWF9TWVNURU1f SEVBREVSU19SSVNDVjY0X0xJTlVYX1NZU0NBTExTX0hfCi0rI2RlZmluZSBTQU5EQk9YX0xJTlVY X1NZU1RFTV9IRUFERVJTX1JJU0NWNjRfTElOVVhfU1lTQ0FMTFNfSF8KLSsKLSsjaW5jbHVkZSA8 YXNtLWdlbmVyaWMvdW5pc3RkLmg+Ci0rCi0rI2lmICFkZWZpbmVkKF9fTlJfaW9fc2V0dXApCi0r I2RlZmluZSBfX05SX2lvX3NldHVwIDAKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9p b19kZXN0cm95KQotKyNkZWZpbmUgX19OUl9pb19kZXN0cm95IDEKLSsjZW5kaWYKLSsKLSsjaWYg IWRlZmluZWQoX19OUl9pb19zdWJtaXQpCi0rI2RlZmluZSBfX05SX2lvX3N1Ym1pdCAyCi0rI2Vu ZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfaW9fY2FuY2VsKQotKyNkZWZpbmUgX19OUl9pb19j YW5jZWwgMwotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX2lvX2dldGV2ZW50cykKLSsj ZGVmaW5lIF9fTlJfaW9fZ2V0ZXZlbnRzIDQKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19O Ul9zZXR4YXR0cikKLSsjZGVmaW5lIF9fTlJfc2V0eGF0dHIgNQotKyNlbmRpZgotKwotKyNpZiAh ZGVmaW5lZChfX05SX2xzZXR4YXR0cikKLSsjZGVmaW5lIF9fTlJfbHNldHhhdHRyIDYKLSsjZW5k aWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9mc2V0eGF0dHIpCi0rI2RlZmluZSBfX05SX2ZzZXR4 YXR0ciA3Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfZ2V0eGF0dHIpCi0rI2RlZmlu ZSBfX05SX2dldHhhdHRyIDgKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9sZ2V0eGF0 dHIpCi0rI2RlZmluZSBfX05SX2xnZXR4YXR0ciA5Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVk KF9fTlJfZmdldHhhdHRyKQotKyNkZWZpbmUgX19OUl9mZ2V0eGF0dHIgMTAKLSsjZW5kaWYKLSsK LSsjaWYgIWRlZmluZWQoX19OUl9saXN0eGF0dHIpCi0rI2RlZmluZSBfX05SX2xpc3R4YXR0ciAx MQotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX2xsaXN0eGF0dHIpCi0rI2RlZmluZSBf X05SX2xsaXN0eGF0dHIgMTIKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9mbGlzdHhh dHRyKQotKyNkZWZpbmUgX19OUl9mbGlzdHhhdHRyIDEzCi0rI2VuZGlmCi0rCi0rI2lmICFkZWZp bmVkKF9fTlJfcmVtb3ZleGF0dHIpCi0rI2RlZmluZSBfX05SX3JlbW92ZXhhdHRyIDE0Ci0rI2Vu ZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfbHJlbW92ZXhhdHRyKQotKyNkZWZpbmUgX19OUl9s cmVtb3ZleGF0dHIgMTUKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9mcmVtb3ZleGF0 dHIpCi0rI2RlZmluZSBfX05SX2ZyZW1vdmV4YXR0ciAxNgotKyNlbmRpZgotKwotKyNpZiAhZGVm aW5lZChfX05SX2dldGN3ZCkKLSsjZGVmaW5lIF9fTlJfZ2V0Y3dkIDE3Ci0rI2VuZGlmCi0rCi0r I2lmICFkZWZpbmVkKF9fTlJfbG9va3VwX2Rjb29raWUpCi0rI2RlZmluZSBfX05SX2xvb2t1cF9k Y29va2llIDE4Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfZXZlbnRmZDIpCi0rI2Rl ZmluZSBfX05SX2V2ZW50ZmQyIDE5Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfZXBv bGxfY3JlYXRlMSkKLSsjZGVmaW5lIF9fTlJfZXBvbGxfY3JlYXRlMSAyMAotKyNlbmRpZgotKwot KyNpZiAhZGVmaW5lZChfX05SX2Vwb2xsX2N0bCkKLSsjZGVmaW5lIF9fTlJfZXBvbGxfY3RsIDIx Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfZXBvbGxfcHdhaXQpCi0rI2RlZmluZSBf X05SX2Vwb2xsX3B3YWl0IDIyCi0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfZHVwKQot KyNkZWZpbmUgX19OUl9kdXAgMjMKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9kdXAz KQotKyNkZWZpbmUgX19OUl9kdXAzIDI0Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJf ZmNudGwpCi0rI2RlZmluZSBfX05SX2ZjbnRsIDI1Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVk KF9fTlJfaW5vdGlmeV9pbml0MSkKLSsjZGVmaW5lIF9fTlJfaW5vdGlmeV9pbml0MSAyNgotKyNl bmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX2lub3RpZnlfYWRkX3dhdGNoKQotKyNkZWZpbmUg X19OUl9pbm90aWZ5X2FkZF93YXRjaCAyNwotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05S X2lub3RpZnlfcm1fd2F0Y2gpCi0rI2RlZmluZSBfX05SX2lub3RpZnlfcm1fd2F0Y2ggMjgKLSsj ZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9pb2N0bCkKLSsjZGVmaW5lIF9fTlJfaW9jdGwg MjkKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9pb3ByaW9fc2V0KQotKyNkZWZpbmUg X19OUl9pb3ByaW9fc2V0IDMwCi0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfaW9wcmlv X2dldCkKLSsjZGVmaW5lIF9fTlJfaW9wcmlvX2dldCAzMQotKyNlbmRpZgotKwotKyNpZiAhZGVm aW5lZChfX05SX2Zsb2NrKQotKyNkZWZpbmUgX19OUl9mbG9jayAzMgotKyNlbmRpZgotKwotKyNp ZiAhZGVmaW5lZChfX05SX21rbm9kYXQpCi0rI2RlZmluZSBfX05SX21rbm9kYXQgMzMKLSsjZW5k aWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9ta2RpcmF0KQotKyNkZWZpbmUgX19OUl9ta2RpcmF0 IDM0Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfdW5saW5rYXQpCi0rI2RlZmluZSBf X05SX3VubGlua2F0IDM1Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfc3ltbGlua2F0 KQotKyNkZWZpbmUgX19OUl9zeW1saW5rYXQgMzYKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQo X19OUl9saW5rYXQpCi0rI2RlZmluZSBfX05SX2xpbmthdCAzNwotKyNlbmRpZgotKwotKyNpZiAh ZGVmaW5lZChfX05SX3JlbmFtZWF0KQotKyNkZWZpbmUgX19OUl9yZW5hbWVhdCAzOAotKyNlbmRp ZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3Vtb3VudDIpCi0rI2RlZmluZSBfX05SX3Vtb3VudDIg MzkKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9tb3VudCkKLSsjZGVmaW5lIF9fTlJf bW91bnQgNDAKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9waXZvdF9yb290KQotKyNk ZWZpbmUgX19OUl9waXZvdF9yb290IDQxCi0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJf bmZzc2VydmN0bCkKLSsjZGVmaW5lIF9fTlJfbmZzc2VydmN0bCA0MgotKyNlbmRpZgotKwotKyNp ZiAhZGVmaW5lZChfX05SX3N0YXRmcykKLSsjZGVmaW5lIF9fTlJfc3RhdGZzIDQzCi0rI2VuZGlm Ci0rCi0rI2lmICFkZWZpbmVkKF9fTlJfZnN0YXRmcykKLSsjZGVmaW5lIF9fTlJfZnN0YXRmcyA0 NAotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3RydW5jYXRlKQotKyNkZWZpbmUgX19O Ul90cnVuY2F0ZSA0NQotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX2Z0cnVuY2F0ZSkK LSsjZGVmaW5lIF9fTlJfZnRydW5jYXRlIDQ2Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9f TlJfZmFsbG9jYXRlKQotKyNkZWZpbmUgX19OUl9mYWxsb2NhdGUgNDcKLSsjZW5kaWYKLSsKLSsj aWYgIWRlZmluZWQoX19OUl9mYWNjZXNzYXQpCi0rI2RlZmluZSBfX05SX2ZhY2Nlc3NhdCA0OAot KyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX2NoZGlyKQotKyNkZWZpbmUgX19OUl9jaGRp ciA0OQotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX2ZjaGRpcikKLSsjZGVmaW5lIF9f TlJfZmNoZGlyIDUwCi0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfY2hyb290KQotKyNk ZWZpbmUgX19OUl9jaHJvb3QgNTEKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9mY2ht b2QpCi0rI2RlZmluZSBfX05SX2ZjaG1vZCA1MgotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChf X05SX2ZjaG1vZGF0KQotKyNkZWZpbmUgX19OUl9mY2htb2RhdCA1MwotKyNlbmRpZgotKwotKyNp ZiAhZGVmaW5lZChfX05SX2ZjaG93bmF0KQotKyNkZWZpbmUgX19OUl9mY2hvd25hdCA1NAotKyNl bmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX2ZjaG93bikKLSsjZGVmaW5lIF9fTlJfZmNob3du IDU1Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfb3BlbmF0KQotKyNkZWZpbmUgX19O Ul9vcGVuYXQgNTYKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9jbG9zZSkKLSsjZGVm aW5lIF9fTlJfY2xvc2UgNTcKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl92aGFuZ3Vw KQotKyNkZWZpbmUgX19OUl92aGFuZ3VwIDU4Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9f TlJfcGlwZTIpCi0rI2RlZmluZSBfX05SX3BpcGUyIDU5Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZp bmVkKF9fTlJfcXVvdGFjdGwpCi0rI2RlZmluZSBfX05SX3F1b3RhY3RsIDYwCi0rI2VuZGlmCi0r Ci0rI2lmICFkZWZpbmVkKF9fTlJfZ2V0ZGVudHM2NCkKLSsjZGVmaW5lIF9fTlJfZ2V0ZGVudHM2 NCA2MQotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX2xzZWVrKQotKyNkZWZpbmUgX19O Ul9sc2VlayA2MgotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3JlYWQpCi0rI2RlZmlu ZSBfX05SX3JlYWQgNjMKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl93cml0ZSkKLSsj ZGVmaW5lIF9fTlJfd3JpdGUgNjQKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9yZWFk dikKLSsjZGVmaW5lIF9fTlJfcmVhZHYgNjUKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19O Ul93cml0ZXYpCi0rI2RlZmluZSBfX05SX3dyaXRldiA2NgotKyNlbmRpZgotKwotKyNpZiAhZGVm aW5lZChfX05SX3ByZWFkNjQpCi0rI2RlZmluZSBfX05SX3ByZWFkNjQgNjcKLSsjZW5kaWYKLSsK LSsjaWYgIWRlZmluZWQoX19OUl9wd3JpdGU2NCkKLSsjZGVmaW5lIF9fTlJfcHdyaXRlNjQgNjgK LSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9wcmVhZHYpCi0rI2RlZmluZSBfX05SX3By ZWFkdiA2OQotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3B3cml0ZXYpCi0rI2RlZmlu ZSBfX05SX3B3cml0ZXYgNzAKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9zZW5kZmls ZSkKLSsjZGVmaW5lIF9fTlJfc2VuZGZpbGUgNzEKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQo X19OUl9wc2VsZWN0NikKLSsjZGVmaW5lIF9fTlJfcHNlbGVjdDYgNzIKLSsjZW5kaWYKLSsKLSsj aWYgIWRlZmluZWQoX19OUl9wcG9sbCkKLSsjZGVmaW5lIF9fTlJfcHBvbGwgNzMKLSsjZW5kaWYK LSsKLSsjaWYgIWRlZmluZWQoX19OUl9zaWduYWxmZDQpCi0rI2RlZmluZSBfX05SX3NpZ25hbGZk NCA3NAotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3Ztc3BsaWNlKQotKyNkZWZpbmUg X19OUl92bXNwbGljZSA3NQotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3NwbGljZSkK LSsjZGVmaW5lIF9fTlJfc3BsaWNlIDc2Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJf dGVlKQotKyNkZWZpbmUgX19OUl90ZWUgNzcKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19O Ul9yZWFkbGlua2F0KQotKyNkZWZpbmUgX19OUl9yZWFkbGlua2F0IDc4Ci0rI2VuZGlmCi0rCi0r I2lmICFkZWZpbmVkKF9fTlJfbmV3ZnN0YXRhdCkKLSsjZGVmaW5lIF9fTlJfbmV3ZnN0YXRhdCA3 OQotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX2ZzdGF0KQotKyNkZWZpbmUgX19OUl9m c3RhdCA4MAotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3N5bmMpCi0rI2RlZmluZSBf X05SX3N5bmMgODEKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9mc3luYykKLSsjZGVm aW5lIF9fTlJfZnN5bmMgODIKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9mZGF0YXN5 bmMpCi0rI2RlZmluZSBfX05SX2ZkYXRhc3luYyA4MwotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5l ZChfX05SX3N5bmNfZmlsZV9yYW5nZSkKLSsjZGVmaW5lIF9fTlJfc3luY19maWxlX3JhbmdlIDg0 Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfdGltZXJmZF9jcmVhdGUpCi0rI2RlZmlu ZSBfX05SX3RpbWVyZmRfY3JlYXRlIDg1Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJf dGltZXJmZF9zZXR0aW1lKQotKyNkZWZpbmUgX19OUl90aW1lcmZkX3NldHRpbWUgODYKLSsjZW5k aWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl90aW1lcmZkX2dldHRpbWUpCi0rI2RlZmluZSBfX05S X3RpbWVyZmRfZ2V0dGltZSA4NwotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3V0aW1l bnNhdCkKLSsjZGVmaW5lIF9fTlJfdXRpbWVuc2F0IDg4Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZp bmVkKF9fTlJfYWNjdCkKLSsjZGVmaW5lIF9fTlJfYWNjdCA4OQotKyNlbmRpZgotKwotKyNpZiAh ZGVmaW5lZChfX05SX2NhcGdldCkKLSsjZGVmaW5lIF9fTlJfY2FwZ2V0IDkwCi0rI2VuZGlmCi0r Ci0rI2lmICFkZWZpbmVkKF9fTlJfY2Fwc2V0KQotKyNkZWZpbmUgX19OUl9jYXBzZXQgOTEKLSsj ZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9wZXJzb25hbGl0eSkKLSsjZGVmaW5lIF9fTlJf cGVyc29uYWxpdHkgOTIKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9leGl0KQotKyNk ZWZpbmUgX19OUl9leGl0IDkzCi0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfZXhpdF9n cm91cCkKLSsjZGVmaW5lIF9fTlJfZXhpdF9ncm91cCA5NAotKyNlbmRpZgotKwotKyNpZiAhZGVm aW5lZChfX05SX3dhaXRpZCkKLSsjZGVmaW5lIF9fTlJfd2FpdGlkIDk1Ci0rI2VuZGlmCi0rCi0r I2lmICFkZWZpbmVkKF9fTlJfc2V0X3RpZF9hZGRyZXNzKQotKyNkZWZpbmUgX19OUl9zZXRfdGlk X2FkZHJlc3MgOTYKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl91bnNoYXJlKQotKyNk ZWZpbmUgX19OUl91bnNoYXJlIDk3Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfZnV0 ZXgpCi0rI2RlZmluZSBfX05SX2Z1dGV4IDk4Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9f TlJfc2V0X3JvYnVzdF9saXN0KQotKyNkZWZpbmUgX19OUl9zZXRfcm9idXN0X2xpc3QgOTkKLSsj ZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9nZXRfcm9idXN0X2xpc3QpCi0rI2RlZmluZSBf X05SX2dldF9yb2J1c3RfbGlzdCAxMDAKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9u YW5vc2xlZXApCi0rI2RlZmluZSBfX05SX25hbm9zbGVlcCAxMDEKLSsjZW5kaWYKLSsKLSsjaWYg IWRlZmluZWQoX19OUl9nZXRpdGltZXIpCi0rI2RlZmluZSBfX05SX2dldGl0aW1lciAxMDIKLSsj ZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9zZXRpdGltZXIpCi0rI2RlZmluZSBfX05SX3Nl dGl0aW1lciAxMDMKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9rZXhlY19sb2FkKQot KyNkZWZpbmUgX19OUl9rZXhlY19sb2FkIDEwNAotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChf X05SX2luaXRfbW9kdWxlKQotKyNkZWZpbmUgX19OUl9pbml0X21vZHVsZSAxMDUKLSsjZW5kaWYK LSsKLSsjaWYgIWRlZmluZWQoX19OUl9kZWxldGVfbW9kdWxlKQotKyNkZWZpbmUgX19OUl9kZWxl dGVfbW9kdWxlIDEwNgotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3RpbWVyX2NyZWF0 ZSkKLSsjZGVmaW5lIF9fTlJfdGltZXJfY3JlYXRlIDEwNwotKyNlbmRpZgotKwotKyNpZiAhZGVm aW5lZChfX05SX3RpbWVyX2dldHRpbWUpCi0rI2RlZmluZSBfX05SX3RpbWVyX2dldHRpbWUgMTA4 Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfdGltZXJfZ2V0b3ZlcnJ1bikKLSsjZGVm aW5lIF9fTlJfdGltZXJfZ2V0b3ZlcnJ1biAxMDkKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQo X19OUl90aW1lcl9zZXR0aW1lKQotKyNkZWZpbmUgX19OUl90aW1lcl9zZXR0aW1lIDExMAotKyNl bmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3RpbWVyX2RlbGV0ZSkKLSsjZGVmaW5lIF9fTlJf dGltZXJfZGVsZXRlIDExMQotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX2Nsb2NrX3Nl dHRpbWUpCi0rI2RlZmluZSBfX05SX2Nsb2NrX3NldHRpbWUgMTEyCi0rI2VuZGlmCi0rCi0rI2lm ICFkZWZpbmVkKF9fTlJfY2xvY2tfZ2V0dGltZSkKLSsjZGVmaW5lIF9fTlJfY2xvY2tfZ2V0dGlt ZSAxMTMKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9jbG9ja19nZXRyZXMpCi0rI2Rl ZmluZSBfX05SX2Nsb2NrX2dldHJlcyAxMTQKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19O Ul9jbG9ja19uYW5vc2xlZXApCi0rI2RlZmluZSBfX05SX2Nsb2NrX25hbm9zbGVlcCAxMTUKLSsj ZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9zeXNsb2cpCi0rI2RlZmluZSBfX05SX3N5c2xv ZyAxMTYKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9wdHJhY2UpCi0rI2RlZmluZSBf X05SX3B0cmFjZSAxMTcKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9zY2hlZF9zZXRw YXJhbSkKLSsjZGVmaW5lIF9fTlJfc2NoZWRfc2V0cGFyYW0gMTE4Ci0rI2VuZGlmCi0rCi0rI2lm ICFkZWZpbmVkKF9fTlJfc2NoZWRfc2V0c2NoZWR1bGVyKQotKyNkZWZpbmUgX19OUl9zY2hlZF9z ZXRzY2hlZHVsZXIgMTE5Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfc2NoZWRfZ2V0 c2NoZWR1bGVyKQotKyNkZWZpbmUgX19OUl9zY2hlZF9nZXRzY2hlZHVsZXIgMTIwCi0rI2VuZGlm Ci0rCi0rI2lmICFkZWZpbmVkKF9fTlJfc2NoZWRfZ2V0cGFyYW0pCi0rI2RlZmluZSBfX05SX3Nj aGVkX2dldHBhcmFtIDEyMQotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3NjaGVkX3Nl dGFmZmluaXR5KQotKyNkZWZpbmUgX19OUl9zY2hlZF9zZXRhZmZpbml0eSAxMjIKLSsjZW5kaWYK LSsKLSsjaWYgIWRlZmluZWQoX19OUl9zY2hlZF9nZXRhZmZpbml0eSkKLSsjZGVmaW5lIF9fTlJf c2NoZWRfZ2V0YWZmaW5pdHkgMTIzCi0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfc2No ZWRfeWllbGQpCi0rI2RlZmluZSBfX05SX3NjaGVkX3lpZWxkIDEyNAotKyNlbmRpZgotKwotKyNp ZiAhZGVmaW5lZChfX05SX3NjaGVkX2dldF9wcmlvcml0eV9tYXgpCi0rI2RlZmluZSBfX05SX3Nj aGVkX2dldF9wcmlvcml0eV9tYXggMTI1Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJf c2NoZWRfZ2V0X3ByaW9yaXR5X21pbikKLSsjZGVmaW5lIF9fTlJfc2NoZWRfZ2V0X3ByaW9yaXR5 X21pbiAxMjYKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9zY2hlZF9ycl9nZXRfaW50 ZXJ2YWwpCi0rI2RlZmluZSBfX05SX3NjaGVkX3JyX2dldF9pbnRlcnZhbCAxMjcKLSsjZW5kaWYK LSsKLSsjaWYgIWRlZmluZWQoX19OUl9yZXN0YXJ0X3N5c2NhbGwpCi0rI2RlZmluZSBfX05SX3Jl c3RhcnRfc3lzY2FsbCAxMjgKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9raWxsKQot KyNkZWZpbmUgX19OUl9raWxsIDEyOQotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3Rr aWxsKQotKyNkZWZpbmUgX19OUl90a2lsbCAxMzAKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQo X19OUl90Z2tpbGwpCi0rI2RlZmluZSBfX05SX3Rna2lsbCAxMzEKLSsjZW5kaWYKLSsKLSsjaWYg IWRlZmluZWQoX19OUl9zaWdhbHRzdGFjaykKLSsjZGVmaW5lIF9fTlJfc2lnYWx0c3RhY2sgMTMy Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfcnRfc2lnc3VzcGVuZCkKLSsjZGVmaW5l IF9fTlJfcnRfc2lnc3VzcGVuZCAxMzMKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9y dF9zaWdhY3Rpb24pCi0rI2RlZmluZSBfX05SX3J0X3NpZ2FjdGlvbiAxMzQKLSsjZW5kaWYKLSsK LSsjaWYgIWRlZmluZWQoX19OUl9ydF9zaWdwcm9jbWFzaykKLSsjZGVmaW5lIF9fTlJfcnRfc2ln cHJvY21hc2sgMTM1Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfcnRfc2lncGVuZGlu ZykKLSsjZGVmaW5lIF9fTlJfcnRfc2lncGVuZGluZyAxMzYKLSsjZW5kaWYKLSsKLSsjaWYgIWRl ZmluZWQoX19OUl9ydF9zaWd0aW1lZHdhaXQpCi0rI2RlZmluZSBfX05SX3J0X3NpZ3RpbWVkd2Fp dCAxMzcKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9ydF9zaWdxdWV1ZWluZm8pCi0r I2RlZmluZSBfX05SX3J0X3NpZ3F1ZXVlaW5mbyAxMzgKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmlu ZWQoX19OUl9ydF9zaWdyZXR1cm4pCi0rI2RlZmluZSBfX05SX3J0X3NpZ3JldHVybiAxMzkKLSsj ZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9zZXRwcmlvcml0eSkKLSsjZGVmaW5lIF9fTlJf c2V0cHJpb3JpdHkgMTQwCi0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfZ2V0cHJpb3Jp dHkpCi0rI2RlZmluZSBfX05SX2dldHByaW9yaXR5IDE0MQotKyNlbmRpZgotKwotKyNpZiAhZGVm aW5lZChfX05SX3JlYm9vdCkKLSsjZGVmaW5lIF9fTlJfcmVib290IDE0MgotKyNlbmRpZgotKwot KyNpZiAhZGVmaW5lZChfX05SX3NldHJlZ2lkKQotKyNkZWZpbmUgX19OUl9zZXRyZWdpZCAxNDMK LSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9zZXRnaWQpCi0rI2RlZmluZSBfX05SX3Nl dGdpZCAxNDQKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9zZXRyZXVpZCkKLSsjZGVm aW5lIF9fTlJfc2V0cmV1aWQgMTQ1Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfc2V0 dWlkKQotKyNkZWZpbmUgX19OUl9zZXR1aWQgMTQ2Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVk KF9fTlJfc2V0cmVzdWlkKQotKyNkZWZpbmUgX19OUl9zZXRyZXN1aWQgMTQ3Ci0rI2VuZGlmCi0r Ci0rI2lmICFkZWZpbmVkKF9fTlJfZ2V0cmVzdWlkKQotKyNkZWZpbmUgX19OUl9nZXRyZXN1aWQg MTQ4Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfc2V0cmVzZ2lkKQotKyNkZWZpbmUg X19OUl9zZXRyZXNnaWQgMTQ5Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfZ2V0cmVz Z2lkKQotKyNkZWZpbmUgX19OUl9nZXRyZXNnaWQgMTUwCi0rI2VuZGlmCi0rCi0rI2lmICFkZWZp bmVkKF9fTlJfc2V0ZnN1aWQpCi0rI2RlZmluZSBfX05SX3NldGZzdWlkIDE1MQotKyNlbmRpZgot KwotKyNpZiAhZGVmaW5lZChfX05SX3NldGZzZ2lkKQotKyNkZWZpbmUgX19OUl9zZXRmc2dpZCAx NTIKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl90aW1lcykKLSsjZGVmaW5lIF9fTlJf dGltZXMgMTUzCi0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfc2V0cGdpZCkKLSsjZGVm aW5lIF9fTlJfc2V0cGdpZCAxNTQKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9nZXRw Z2lkKQotKyNkZWZpbmUgX19OUl9nZXRwZ2lkIDE1NQotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5l ZChfX05SX2dldHNpZCkKLSsjZGVmaW5lIF9fTlJfZ2V0c2lkIDE1NgotKyNlbmRpZgotKwotKyNp ZiAhZGVmaW5lZChfX05SX3NldHNpZCkKLSsjZGVmaW5lIF9fTlJfc2V0c2lkIDE1NwotKyNlbmRp ZgotKwotKyNpZiAhZGVmaW5lZChfX05SX2dldGdyb3VwcykKLSsjZGVmaW5lIF9fTlJfZ2V0Z3Jv dXBzIDE1OAotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3NldGdyb3VwcykKLSsjZGVm aW5lIF9fTlJfc2V0Z3JvdXBzIDE1OQotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3Vu YW1lKQotKyNkZWZpbmUgX19OUl91bmFtZSAxNjAKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQo X19OUl9zZXRob3N0bmFtZSkKLSsjZGVmaW5lIF9fTlJfc2V0aG9zdG5hbWUgMTYxCi0rI2VuZGlm Ci0rCi0rI2lmICFkZWZpbmVkKF9fTlJfc2V0ZG9tYWlubmFtZSkKLSsjZGVmaW5lIF9fTlJfc2V0 ZG9tYWlubmFtZSAxNjIKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9nZXRybGltaXQp Ci0rI2RlZmluZSBfX05SX2dldHJsaW1pdCAxNjMKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQo X19OUl9zZXRybGltaXQpCi0rI2RlZmluZSBfX05SX3NldHJsaW1pdCAxNjQKLSsjZW5kaWYKLSsK LSsjaWYgIWRlZmluZWQoX19OUl9nZXRydXNhZ2UpCi0rI2RlZmluZSBfX05SX2dldHJ1c2FnZSAx NjUKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl91bWFzaykKLSsjZGVmaW5lIF9fTlJf dW1hc2sgMTY2Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfcHJjdGwpCi0rI2RlZmlu ZSBfX05SX3ByY3RsIDE2NwotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX2dldGNwdSkK LSsjZGVmaW5lIF9fTlJfZ2V0Y3B1IDE2OAotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05S X2dldHRpbWVvZmRheSkKLSsjZGVmaW5lIF9fTlJfZ2V0dGltZW9mZGF5IDE2OQotKyNlbmRpZgot KwotKyNpZiAhZGVmaW5lZChfX05SX3NldHRpbWVvZmRheSkKLSsjZGVmaW5lIF9fTlJfc2V0dGlt ZW9mZGF5IDE3MAotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX2FkanRpbWV4KQotKyNk ZWZpbmUgX19OUl9hZGp0aW1leCAxNzEKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9n ZXRwaWQpCi0rI2RlZmluZSBfX05SX2dldHBpZCAxNzIKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmlu ZWQoX19OUl9nZXRwcGlkKQotKyNkZWZpbmUgX19OUl9nZXRwcGlkIDE3MwotKyNlbmRpZgotKwot KyNpZiAhZGVmaW5lZChfX05SX2dldHVpZCkKLSsjZGVmaW5lIF9fTlJfZ2V0dWlkIDE3NAotKyNl bmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX2dldGV1aWQpCi0rI2RlZmluZSBfX05SX2dldGV1 aWQgMTc1Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfZ2V0Z2lkKQotKyNkZWZpbmUg X19OUl9nZXRnaWQgMTc2Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfZ2V0ZWdpZCkK LSsjZGVmaW5lIF9fTlJfZ2V0ZWdpZCAxNzcKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19O Ul9nZXR0aWQpCi0rI2RlZmluZSBfX05SX2dldHRpZCAxNzgKLSsjZW5kaWYKLSsKLSsjaWYgIWRl ZmluZWQoX19OUl9zeXNpbmZvKQotKyNkZWZpbmUgX19OUl9zeXNpbmZvIDE3OQotKyNlbmRpZgot KwotKyNpZiAhZGVmaW5lZChfX05SX21xX29wZW4pCi0rI2RlZmluZSBfX05SX21xX29wZW4gMTgw Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfbXFfdW5saW5rKQotKyNkZWZpbmUgX19O Ul9tcV91bmxpbmsgMTgxCi0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfbXFfdGltZWRz ZW5kKQotKyNkZWZpbmUgX19OUl9tcV90aW1lZHNlbmQgMTgyCi0rI2VuZGlmCi0rCi0rI2lmICFk ZWZpbmVkKF9fTlJfbXFfdGltZWRyZWNlaXZlKQotKyNkZWZpbmUgX19OUl9tcV90aW1lZHJlY2Vp dmUgMTgzCi0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfbXFfbm90aWZ5KQotKyNkZWZp bmUgX19OUl9tcV9ub3RpZnkgMTg0Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfbXFf Z2V0c2V0YXR0cikKLSsjZGVmaW5lIF9fTlJfbXFfZ2V0c2V0YXR0ciAxODUKLSsjZW5kaWYKLSsK LSsjaWYgIWRlZmluZWQoX19OUl9tc2dnZXQpCi0rI2RlZmluZSBfX05SX21zZ2dldCAxODYKLSsj ZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9tc2djdGwpCi0rI2RlZmluZSBfX05SX21zZ2N0 bCAxODcKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9tc2dyY3YpCi0rI2RlZmluZSBf X05SX21zZ3JjdiAxODgKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9tc2dzbmQpCi0r I2RlZmluZSBfX05SX21zZ3NuZCAxODkKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9z ZW1nZXQpCi0rI2RlZmluZSBfX05SX3NlbWdldCAxOTAKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmlu ZWQoX19OUl9zZW1jdGwpCi0rI2RlZmluZSBfX05SX3NlbWN0bCAxOTEKLSsjZW5kaWYKLSsKLSsj aWYgIWRlZmluZWQoX19OUl9zZW10aW1lZG9wKQotKyNkZWZpbmUgX19OUl9zZW10aW1lZG9wIDE5 MgotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3NlbW9wKQotKyNkZWZpbmUgX19OUl9z ZW1vcCAxOTMKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9zaG1nZXQpCi0rI2RlZmlu ZSBfX05SX3NobWdldCAxOTQKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9zaG1jdGwp Ci0rI2RlZmluZSBfX05SX3NobWN0bCAxOTUKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19O Ul9zaG1hdCkKLSsjZGVmaW5lIF9fTlJfc2htYXQgMTk2Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZp bmVkKF9fTlJfc2htZHQpCi0rI2RlZmluZSBfX05SX3NobWR0IDE5NwotKyNlbmRpZgotKwotKyNp ZiAhZGVmaW5lZChfX05SX3NvY2tldCkKLSsjZGVmaW5lIF9fTlJfc29ja2V0IDE5OAotKyNlbmRp ZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3NvY2tldHBhaXIpCi0rI2RlZmluZSBfX05SX3NvY2tl dHBhaXIgMTk5Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfYmluZCkKLSsjZGVmaW5l IF9fTlJfYmluZCAyMDAKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9saXN0ZW4pCi0r I2RlZmluZSBfX05SX2xpc3RlbiAyMDEKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9h Y2NlcHQpCi0rI2RlZmluZSBfX05SX2FjY2VwdCAyMDIKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmlu ZWQoX19OUl9jb25uZWN0KQotKyNkZWZpbmUgX19OUl9jb25uZWN0IDIwMwotKyNlbmRpZgotKwot KyNpZiAhZGVmaW5lZChfX05SX2dldHNvY2tuYW1lKQotKyNkZWZpbmUgX19OUl9nZXRzb2NrbmFt ZSAyMDQKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9nZXRwZWVybmFtZSkKLSsjZGVm aW5lIF9fTlJfZ2V0cGVlcm5hbWUgMjA1Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJf c2VuZHRvKQotKyNkZWZpbmUgX19OUl9zZW5kdG8gMjA2Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZp bmVkKF9fTlJfcmVjdmZyb20pCi0rI2RlZmluZSBfX05SX3JlY3Zmcm9tIDIwNwotKyNlbmRpZgot KwotKyNpZiAhZGVmaW5lZChfX05SX3NldHNvY2tvcHQpCi0rI2RlZmluZSBfX05SX3NldHNvY2tv cHQgMjA4Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfZ2V0c29ja29wdCkKLSsjZGVm aW5lIF9fTlJfZ2V0c29ja29wdCAyMDkKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9z aHV0ZG93bikKLSsjZGVmaW5lIF9fTlJfc2h1dGRvd24gMjEwCi0rI2VuZGlmCi0rCi0rI2lmICFk ZWZpbmVkKF9fTlJfc2VuZG1zZykKLSsjZGVmaW5lIF9fTlJfc2VuZG1zZyAyMTEKLSsjZW5kaWYK LSsKLSsjaWYgIWRlZmluZWQoX19OUl9yZWN2bXNnKQotKyNkZWZpbmUgX19OUl9yZWN2bXNnIDIx MgotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3JlYWRhaGVhZCkKLSsjZGVmaW5lIF9f TlJfcmVhZGFoZWFkIDIxMwotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX2JyaykKLSsj ZGVmaW5lIF9fTlJfYnJrIDIxNAotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX211bm1h cCkKLSsjZGVmaW5lIF9fTlJfbXVubWFwIDIxNQotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChf X05SX21yZW1hcCkKLSsjZGVmaW5lIF9fTlJfbXJlbWFwIDIxNgotKyNlbmRpZgotKwotKyNpZiAh ZGVmaW5lZChfX05SX2FkZF9rZXkpCi0rI2RlZmluZSBfX05SX2FkZF9rZXkgMjE3Ci0rI2VuZGlm Ci0rCi0rI2lmICFkZWZpbmVkKF9fTlJfcmVxdWVzdF9rZXkpCi0rI2RlZmluZSBfX05SX3JlcXVl c3Rfa2V5IDIxOAotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX2tleWN0bCkKLSsjZGVm aW5lIF9fTlJfa2V5Y3RsIDIxOQotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX2Nsb25l KQotKyNkZWZpbmUgX19OUl9jbG9uZSAyMjAKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19O Ul9leGVjdmUpCi0rI2RlZmluZSBfX05SX2V4ZWN2ZSAyMjEKLSsjZW5kaWYKLSsKLSsjaWYgIWRl ZmluZWQoX19OUl9tbWFwKQotKyNkZWZpbmUgX19OUl9tbWFwIDIyMgotKyNlbmRpZgotKwotKyNp ZiAhZGVmaW5lZChfX05SX2ZhZHZpc2U2NCkKLSsjZGVmaW5lIF9fTlJfZmFkdmlzZTY0IDIyMwot KyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3N3YXBvbikKLSsjZGVmaW5lIF9fTlJfc3dh cG9uIDIyNAotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3N3YXBvZmYpCi0rI2RlZmlu ZSBfX05SX3N3YXBvZmYgMjI1Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfbXByb3Rl Y3QpCi0rI2RlZmluZSBfX05SX21wcm90ZWN0IDIyNgotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5l ZChfX05SX21zeW5jKQotKyNkZWZpbmUgX19OUl9tc3luYyAyMjcKLSsjZW5kaWYKLSsKLSsjaWYg IWRlZmluZWQoX19OUl9tbG9jaykKLSsjZGVmaW5lIF9fTlJfbWxvY2sgMjI4Ci0rI2VuZGlmCi0r Ci0rI2lmICFkZWZpbmVkKF9fTlJfbXVubG9jaykKLSsjZGVmaW5lIF9fTlJfbXVubG9jayAyMjkK LSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9tbG9ja2FsbCkKLSsjZGVmaW5lIF9fTlJf bWxvY2thbGwgMjMwCi0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfbXVubG9ja2FsbCkK LSsjZGVmaW5lIF9fTlJfbXVubG9ja2FsbCAyMzEKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQo X19OUl9taW5jb3JlKQotKyNkZWZpbmUgX19OUl9taW5jb3JlIDIzMgotKyNlbmRpZgotKwotKyNp ZiAhZGVmaW5lZChfX05SX21hZHZpc2UpCi0rI2RlZmluZSBfX05SX21hZHZpc2UgMjMzCi0rI2Vu ZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfcmVtYXBfZmlsZV9wYWdlcykKLSsjZGVmaW5lIF9f TlJfcmVtYXBfZmlsZV9wYWdlcyAyMzQKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9t YmluZCkKLSsjZGVmaW5lIF9fTlJfbWJpbmQgMjM1Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVk KF9fTlJfZ2V0X21lbXBvbGljeSkKLSsjZGVmaW5lIF9fTlJfZ2V0X21lbXBvbGljeSAyMzYKLSsj ZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9zZXRfbWVtcG9saWN5KQotKyNkZWZpbmUgX19O Ul9zZXRfbWVtcG9saWN5IDIzNwotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX21pZ3Jh dGVfcGFnZXMpCi0rI2RlZmluZSBfX05SX21pZ3JhdGVfcGFnZXMgMjM4Ci0rI2VuZGlmCi0rCi0r I2lmICFkZWZpbmVkKF9fTlJfbW92ZV9wYWdlcykKLSsjZGVmaW5lIF9fTlJfbW92ZV9wYWdlcyAy MzkKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9ydF90Z3NpZ3F1ZXVlaW5mbykKLSsj ZGVmaW5lIF9fTlJfcnRfdGdzaWdxdWV1ZWluZm8gMjQwCi0rI2VuZGlmCi0rCi0rI2lmICFkZWZp bmVkKF9fTlJfcGVyZl9ldmVudF9vcGVuKQotKyNkZWZpbmUgX19OUl9wZXJmX2V2ZW50X29wZW4g MjQxCi0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfYWNjZXB0NCkKLSsjZGVmaW5lIF9f TlJfYWNjZXB0NCAyNDIKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9yZWN2bW1zZykK LSsjZGVmaW5lIF9fTlJfcmVjdm1tc2cgMjQzCi0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9f TlJfcmlzY3ZfZmx1c2hfaWNhY2hlKQotKyNkZWZpbmUgX19OUl9yaXNjdl9mbHVzaF9pY2FjaGUg MjU5Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfd2FpdDQpCi0rI2RlZmluZSBfX05S X3dhaXQ0IDI2MAotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3BybGltaXQ2NCkKLSsj ZGVmaW5lIF9fTlJfcHJsaW1pdDY0IDI2MQotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05S X2Zhbm90aWZ5X2luaXQpCi0rI2RlZmluZSBfX05SX2Zhbm90aWZ5X2luaXQgMjYyCi0rI2VuZGlm Ci0rCi0rI2lmICFkZWZpbmVkKF9fTlJfZmFub3RpZnlfbWFyaykKLSsjZGVmaW5lIF9fTlJfZmFu b3RpZnlfbWFyayAyNjMKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9uYW1lX3RvX2hh bmRsZV9hdCkKLSsjZGVmaW5lIF9fTlJfbmFtZV90b19oYW5kbGVfYXQgMjY0Ci0rI2VuZGlmCi0r Ci0rI2lmICFkZWZpbmVkKF9fTlJfb3Blbl9ieV9oYW5kbGVfYXQpCi0rI2RlZmluZSBfX05SX29w ZW5fYnlfaGFuZGxlX2F0IDI2NQotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX2Nsb2Nr X2FkanRpbWUpCi0rI2RlZmluZSBfX05SX2Nsb2NrX2FkanRpbWUgMjY2Ci0rI2VuZGlmCi0rCi0r I2lmICFkZWZpbmVkKF9fTlJfc3luY2ZzKQotKyNkZWZpbmUgX19OUl9zeW5jZnMgMjY3Ci0rI2Vu ZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfc2V0bnMpCi0rI2RlZmluZSBfX05SX3NldG5zIDI2 OAotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3NlbmRtbXNnKQotKyNkZWZpbmUgX19O Ul9zZW5kbW1zZyAyNjkKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9wcm9jZXNzX3Zt X3JlYWR2KQotKyNkZWZpbmUgX19OUl9wcm9jZXNzX3ZtX3JlYWR2IDI3MAotKyNlbmRpZgotKwot KyNpZiAhZGVmaW5lZChfX05SX3Byb2Nlc3Nfdm1fd3JpdGV2KQotKyNkZWZpbmUgX19OUl9wcm9j ZXNzX3ZtX3dyaXRldiAyNzEKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9rY21wKQot KyNkZWZpbmUgX19OUl9rY21wIDI3MgotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX2Zp bml0X21vZHVsZSkKLSsjZGVmaW5lIF9fTlJfZmluaXRfbW9kdWxlIDI3MwotKyNlbmRpZgotKwot KyNpZiAhZGVmaW5lZChfX05SX3NjaGVkX3NldGF0dHIpCi0rI2RlZmluZSBfX05SX3NjaGVkX3Nl dGF0dHIgMjc0Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfc2NoZWRfZ2V0YXR0cikK LSsjZGVmaW5lIF9fTlJfc2NoZWRfZ2V0YXR0ciAyNzUKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmlu ZWQoX19OUl9yZW5hbWVhdDIpCi0rI2RlZmluZSBfX05SX3JlbmFtZWF0MiAyNzYKLSsjZW5kaWYK LSsKLSsjaWYgIWRlZmluZWQoX19OUl9zZWNjb21wKQotKyNkZWZpbmUgX19OUl9zZWNjb21wIDI3 NwotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX2dldHJhbmRvbSkKLSsjZGVmaW5lIF9f TlJfZ2V0cmFuZG9tIDI3OAotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX21lbWZkX2Ny ZWF0ZSkKLSsjZGVmaW5lIF9fTlJfbWVtZmRfY3JlYXRlIDI3OQotKyNlbmRpZgotKwotKyNpZiAh ZGVmaW5lZChfX05SX2JwZikKLSsjZGVmaW5lIF9fTlJfYnBmIDI4MAotKyNlbmRpZgotKwotKyNp ZiAhZGVmaW5lZChfX05SX2V4ZWN2ZWF0KQotKyNkZWZpbmUgX19OUl9leGVjdmVhdCAyODEKLSsj ZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl91c2VyZmF1bHRmZCkKLSsjZGVmaW5lIF9fTlJf dXNlcmZhdWx0ZmQgMjgyCi0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfbWVtYmFycmll cikKLSsjZGVmaW5lIF9fTlJfbWVtYmFycmllciAyODMKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmlu ZWQoX19OUl9tbG9jazIpCi0rI2RlZmluZSBfX05SX21sb2NrMiAyODQKLSsjZW5kaWYKLSsKLSsj aWYgIWRlZmluZWQoX19OUl9jb3B5X2ZpbGVfcmFuZ2UpCi0rI2RlZmluZSBfX05SX2NvcHlfZmls ZV9yYW5nZSAyODUKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9wcmVhZHYyKQotKyNk ZWZpbmUgX19OUl9wcmVhZHYyIDI4NgotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3B3 cml0ZXYyKQotKyNkZWZpbmUgX19OUl9wd3JpdGV2MiAyODcKLSsjZW5kaWYKLSsKLSsjaWYgIWRl ZmluZWQoX19OUl9wa2V5X21wcm90ZWN0KQotKyNkZWZpbmUgX19OUl9wa2V5X21wcm90ZWN0IDI4 OAotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3BrZXlfYWxsb2MpCi0rI2RlZmluZSBf X05SX3BrZXlfYWxsb2MgMjg5Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfcGtleV9m cmVlKQotKyNkZWZpbmUgX19OUl9wa2V5X2ZyZWUgMjkwCi0rI2VuZGlmCi0rCi0rI2lmICFkZWZp bmVkKF9fTlJfc3RhdHgpCi0rI2RlZmluZSBfX05SX3N0YXR4IDI5MQotKyNlbmRpZgotKwotKyNp ZiAhZGVmaW5lZChfX05SX2lvX3BnZXRldmVudHMpCi0rI2RlZmluZSBfX05SX2lvX3BnZXRldmVu dHMgMjkyCi0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfcnNlcSkKLSsjZGVmaW5lIF9f TlJfcnNlcSAyOTMKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9rZXhlY19maWxlX2xv YWQpCi0rI2RlZmluZSBfX05SX2tleGVjX2ZpbGVfbG9hZCAyOTQKLSsjZW5kaWYKLSsKLSsjaWYg IWRlZmluZWQoX19OUl9waWRmZF9zZW5kX3NpZ25hbCkKLSsjZGVmaW5lIF9fTlJfcGlkZmRfc2Vu ZF9zaWduYWwgNDI0Ci0rI2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfaW9fdXJpbmdfc2V0 dXApCi0rI2RlZmluZSBfX05SX2lvX3VyaW5nX3NldHVwIDQyNQotKyNlbmRpZgotKwotKyNpZiAh ZGVmaW5lZChfX05SX2lvX3VyaW5nX2VudGVyKQotKyNkZWZpbmUgX19OUl9pb191cmluZ19lbnRl ciA0MjYKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9pb191cmluZ19yZWdpc3RlcikK LSsjZGVmaW5lIF9fTlJfaW9fdXJpbmdfcmVnaXN0ZXIgNDI3Ci0rI2VuZGlmCi0rCi0rI2lmICFk ZWZpbmVkKF9fTlJfb3Blbl90cmVlKQotKyNkZWZpbmUgX19OUl9vcGVuX3RyZWUgNDI4Ci0rI2Vu ZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfbW92ZV9tb3VudCkKLSsjZGVmaW5lIF9fTlJfbW92 ZV9tb3VudCA0MjkKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9mc29wZW4pCi0rI2Rl ZmluZSBfX05SX2Zzb3BlbiA0MzAKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9mc2Nv bmZpZykKLSsjZGVmaW5lIF9fTlJfZnNjb25maWcgNDMxCi0rI2VuZGlmCi0rCi0rI2lmICFkZWZp bmVkKF9fTlJfZnNtb3VudCkKLSsjZGVmaW5lIF9fTlJfZnNtb3VudCA0MzIKLSsjZW5kaWYKLSsK LSsjaWYgIWRlZmluZWQoX19OUl9mc3BpY2spCi0rI2RlZmluZSBfX05SX2ZzcGljayA0MzMKLSsj ZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9waWRmZF9vcGVuKQotKyNkZWZpbmUgX19OUl9w aWRmZF9vcGVuIDQzNAotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX2Nsb25lMykKLSsj ZGVmaW5lIF9fTlJfY2xvbmUzIDQzNQotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX2Ns b3NlX3JhbmdlKQotKyNkZWZpbmUgX19OUl9jbG9zZV9yYW5nZSA0MzYKLSsjZW5kaWYKLSsKLSsj aWYgIWRlZmluZWQoX19OUl9vcGVuYXQyKQotKyNkZWZpbmUgX19OUl9vcGVuYXQyIDQzNwotKyNl bmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX3BpZGZkX2dldGZkKQotKyNkZWZpbmUgX19OUl9w aWRmZF9nZXRmZCA0MzgKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9mYWNjZXNzYXQy KQotKyNkZWZpbmUgX19OUl9mYWNjZXNzYXQyIDQzOQotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5l ZChfX05SX3Byb2Nlc3NfbWFkdmlzZSkKLSsjZGVmaW5lIF9fTlJfcHJvY2Vzc19tYWR2aXNlIDQ0 MAotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX2Vwb2xsX3B3YWl0MikKLSsjZGVmaW5l IF9fTlJfZXBvbGxfcHdhaXQyIDQ0MQotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChfX05SX21v dW50X3NldGF0dHIpCi0rI2RlZmluZSBfX05SX21vdW50X3NldGF0dHIgNDQyCi0rI2VuZGlmCi0r Ci0rI2lmICFkZWZpbmVkKF9fTlJfcXVvdGFjdGxfcGF0aCkKLSsjZGVmaW5lIF9fTlJfcXVvdGFj dGxfcGF0aCA0NDMKLSsjZW5kaWYKLSsKLSsjaWYgIWRlZmluZWQoX19OUl9sYW5kbG9ja19jcmVh dGVfcnVsZXNldCkKLSsjZGVmaW5lIF9fTlJfbGFuZGxvY2tfY3JlYXRlX3J1bGVzZXQgNDQ0Ci0r I2VuZGlmCi0rCi0rI2lmICFkZWZpbmVkKF9fTlJfbGFuZGxvY2tfYWRkX3J1bGUpCi0rI2RlZmlu ZSBfX05SX2xhbmRsb2NrX2FkZF9ydWxlIDQ0NQotKyNlbmRpZgotKwotKyNpZiAhZGVmaW5lZChf X05SX2xhbmRsb2NrX3Jlc3RyaWN0X3NlbGYpCi0rI2RlZmluZSBfX05SX2xhbmRsb2NrX3Jlc3Ry aWN0X3NlbGYgNDQ2Ci0rI2VuZGlmCi0rCi0rI2VuZGlmICAvLyBTQU5EQk9YX0xJTlVYX1NZU1RF TV9IRUFERVJTX1JJU0NWNjRfTElOVVhfU1lTQ0FMTFNfSF8KLUluZGV4OiBjaHJvbWl1bS0xMDcu MC41MzA0Ljg3L3NhbmRib3gvcG9saWN5L2xpbnV4L2JwZl9jcm9zX2FtZF9ncHVfcG9saWN5X2xp bnV4LmNjCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09Ci0tLS0gY2hyb21pdW0tMTA3LjAuNTMwNC44Ny5vcmlnL3NhbmRi b3gvcG9saWN5L2xpbnV4L2JwZl9jcm9zX2FtZF9ncHVfcG9saWN5X2xpbnV4LmNjCi0rKysgY2hy b21pdW0tMTA3LjAuNTMwNC44Ny9zYW5kYm94L3BvbGljeS9saW51eC9icGZfY3Jvc19hbWRfZ3B1 X3BvbGljeV9saW51eC5jYwotQEAgLTM4LDcgKzM4LDcgQEAgUmVzdWx0RXhwciBDcm9zQW1kR3B1 UHJvY2Vzc1BvbGljeTo6RXZhbAotICAgICBjYXNlIF9fTlJfc2NoZWRfc2V0c2NoZWR1bGVyOgot ICAgICBjYXNlIF9fTlJfc3lzaW5mbzoKLSAgICAgY2FzZSBfX05SX3VuYW1lOgotLSNpZiAhZGVm aW5lZChfX2FhcmNoNjRfXykKLSsjaWYgIWRlZmluZWQoX19hYXJjaDY0X18pICYmICFkZWZpbmVk KF9fcmlzY3YpCi0gICAgIGNhc2UgX19OUl9yZWFkbGluazoKLSAgICAgY2FzZSBfX05SX3N0YXQ6 Ci0gI2VuZGlmCi1JbmRleDogY2hyb21pdW0tMTA3LjAuNTMwNC44Ny9zYW5kYm94L3BvbGljeS9s aW51eC9icGZfZ3B1X3BvbGljeV9saW51eC5jYwotPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGNocm9taXVtLTEw Ny4wLjUzMDQuODcub3JpZy9zYW5kYm94L3BvbGljeS9saW51eC9icGZfZ3B1X3BvbGljeV9saW51 eC5jYwotKysrIGNocm9taXVtLTEwNy4wLjUzMDQuODcvc2FuZGJveC9wb2xpY3kvbGludXgvYnBm X2dwdV9wb2xpY3lfbGludXguY2MKLUBAIC03Myw3ICs3Myw3IEBAIFJlc3VsdEV4cHIgR3B1UHJv Y2Vzc1BvbGljeTo6RXZhbHVhdGVTeXMKLSAgICAgKGRlZmluZWQoQVJDSF9DUFVfTUlQU19GQU1J TFkpICYmIGRlZmluZWQoQVJDSF9DUFVfMzJfQklUUykpCi0gICAgIGNhc2UgX19OUl9mdHJ1bmNh dGU2NDoKLSAjZW5kaWYKLS0jaWYgIWRlZmluZWQoX19hYXJjaDY0X18pCi0rI2lmICFkZWZpbmVk KF9fYWFyY2g2NF9fKSAmJiAhZGVmaW5lZChfX3Jpc2N2KQotICAgICBjYXNlIF9fTlJfZ2V0ZGVu dHM6Ci0gI2VuZGlmCi0gICAgIGNhc2UgX19OUl9nZXRkZW50czY0OgotCmRpZmYgLS1naXQgYS9z cmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMDA3LXJpc2N2LXNhbmRib3gucGF0Y2guYXJncyBiL3Ny Y3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAwMDctcmlzY3Ytc2FuZGJveC5wYXRjaC5hcmdzCmRlbGV0 ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkNWYzOGUzNTRlN2YwMC4uMDAwMDAwMDAwMDAwMDAK LS0tIGEvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDAwNy1yaXNjdi1zYW5kYm94LnBhdGNoLmFy Z3MKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi0tTnAxIC0tZGlyZWN0b3J5PXNyYy8zcmRw YXJ0eS9jaHJvbWl1bS8KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAwMDgt cnNpY3YtYWxsb2NhdG9yLnBhdGNoIGIvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDAwOC1yc2lj di1hbGxvY2F0b3IucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDk4YjAwOWY2 NjE1NzkwLi4wMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMDA4 LXJzaWN2LWFsbG9jYXRvci5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAgQEAKLS0t LSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9iYXNlL2FsbG9jYXRvci9wYXJ0aXRpb25fYWxsb2Nh dG9yL3BhcnRpdGlvbl9hbGxvYy5nbmkJMjAyMy0xMC0wMyAyMTo0OTo1NC4wMDAwMDAwMDAgKzAy MDAKLSsrKyAtCTIwMjMtMTAtMjcgMTk6MDU6MDYuMTQ2Mzk4MDYyICswMjAwCi1AQCAtMTQsNyAr MTQsNyBAQAotIGlmIChpc19uYWNsKSB7Ci0gICAjIE5hQ2wgdGFyZ2V0cyBkb24ndCB1c2UgNjQt Yml0IHBvaW50ZXJzLgotICAgaGFzXzY0X2JpdF9wb2ludGVycyA9IGZhbHNlCi0tfSBlbHNlIGlm IChjdXJyZW50X2NwdSA9PSAieDY0IiB8fCBjdXJyZW50X2NwdSA9PSAiYXJtNjQiKSB7Ci0rfSBl bHNlIGlmIChjdXJyZW50X2NwdSA9PSAieDY0IiB8fCBjdXJyZW50X2NwdSA9PSAiYXJtNjQiIHx8 IGN1cnJlbnRfY3B1ID09ICJyaXNjdjY0IikgewotICAgaGFzXzY0X2JpdF9wb2ludGVycyA9IHRy dWUKLSB9IGVsc2UgaWYgKGN1cnJlbnRfY3B1ID09ICJ4ODYiIHx8IGN1cnJlbnRfY3B1ID09ICJh cm0iKSB7Ci0gICBoYXNfNjRfYml0X3BvaW50ZXJzID0gZmFsc2UKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvcXQ2LXBkZi9wYXRjaGVzLzAxMDAtUkVWRVJULXJvbGwtc3JjLXRoaXJkX3BhcnR5LWZmbXBl Zy1tMTAyLnBhdGNoIGIvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDEwMC1SRVZFUlQtcm9sbC1z cmMtdGhpcmRfcGFydHktZmZtcGVnLW0xMDIucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggMDAwMDAwMDAwMDAwMDAuLmFhYWEzMDE4YzU3ZjNiCi0tLSAvZGV2L251bGwKKysrIGIvc3Jj cGtncy9xdDYtcGRmL3BhdGNoZXMvMDEwMC1SRVZFUlQtcm9sbC1zcmMtdGhpcmRfcGFydHktZmZt cGVnLW0xMDIucGF0Y2gKQEAgLTAsMCArMSw1MiBAQAorLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9t aXVtL21lZGlhL2ZpbHRlcnMvYXVkaW9fZmlsZV9yZWFkZXJfdW5pdHRlc3QuY2MKKysrKyBiL3Ny Yy8zcmRwYXJ0eS9jaHJvbWl1bS9tZWRpYS9maWx0ZXJzL2F1ZGlvX2ZpbGVfcmVhZGVyX3VuaXR0 ZXN0LmNjCitAQCAtMTIxLDExICsxMjEsMTEgQEAgY2xhc3MgQXVkaW9GaWxlUmVhZGVyVGVzdCA6 IHB1YmxpYyB0ZXN0aQorICAgICBFWFBFQ1RfRkFMU0UocmVhZGVyXy0+T3BlbigpKTsKKyAgIH0K KyAKKy0gIHZvaWQgUnVuVGVzdEZhaWxpbmdEZWNvZGUoY29uc3QgY2hhciogZm4sIGludCBleHBl Y3RfcmVhZCA9IDApIHsKKysgIHZvaWQgUnVuVGVzdEZhaWxpbmdEZWNvZGUoY29uc3QgY2hhciog Zm4pIHsKKyAgICAgSW5pdGlhbGl6ZShmbik7CisgICAgIEVYUEVDVF9UUlVFKHJlYWRlcl8tPk9w ZW4oKSk7CisgICAgIHN0ZDo6dmVjdG9yPHN0ZDo6dW5pcXVlX3B0cjxBdWRpb0J1cz4+IGRlY29k ZWRfYXVkaW9fcGFja2V0czsKKy0gICAgRVhQRUNUX0VRKHJlYWRlcl8tPlJlYWQoJmRlY29kZWRf YXVkaW9fcGFja2V0cyksIGV4cGVjdF9yZWFkKTsKKysgICAgRVhQRUNUX0VRKHJlYWRlcl8tPlJl YWQoJmRlY29kZWRfYXVkaW9fcGFja2V0cyksIDApOworICAgfQorIAorICAgdm9pZCBSdW5UZXN0 UGFydGlhbERlY29kZShjb25zdCBjaGFyKiBmbikgeworQEAgLTIxOSw3ICsyMTksNyBAQCBURVNU X0YoQXVkaW9GaWxlUmVhZGVyVGVzdCwgQUFDX0FEVFMpIHsKKyB9CisgCisgVEVTVF9GKEF1ZGlv RmlsZVJlYWRlclRlc3QsIE1pZFN0cmVhbUNvbmZpZ0NoYW5nZXNGYWlsKSB7CistICBSdW5UZXN0 RmFpbGluZ0RlY29kZSgibWlkc3RyZWFtX2NvbmZpZ19jaGFuZ2UubXAzIiwgNDI2MjQpOworKyAg UnVuVGVzdEZhaWxpbmdEZWNvZGUoIm1pZHN0cmVhbV9jb25maWdfY2hhbmdlLm1wMyIpOworIH0K KyAjZW5kaWYKKyAKKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9tZWRpYS9maWx0ZXJzL2F1 ZGlvX3ZpZGVvX21ldGFkYXRhX2V4dHJhY3Rvci5jYworKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9t aXVtL21lZGlhL2ZpbHRlcnMvYXVkaW9fdmlkZW9fbWV0YWRhdGFfZXh0cmFjdG9yLmNjCitAQCAt MTEzLDE1ICsxMTMsNiBAQCBib29sIEF1ZGlvVmlkZW9NZXRhZGF0YUV4dHJhY3Rvcjo6RXh0cmFj CisgICAgIGlmICghc3RyZWFtKQorICAgICAgIGNvbnRpbnVlOworIAorLSAgICB2b2lkKiBkaXNw bGF5X21hdHJpeCA9CistICAgICAgICBhdl9zdHJlYW1fZ2V0X3NpZGVfZGF0YShzdHJlYW0sIEFW X1BLVF9EQVRBX0RJU1BMQVlNQVRSSVgsIG51bGxwdHIpOworLSAgICBpZiAoZGlzcGxheV9tYXRy aXgpIHsKKy0gICAgICByb3RhdGlvbl8gPSBWaWRlb1RyYW5zZm9ybWF0aW9uOjpGcm9tRkZtcGVn RGlzcGxheU1hdHJpeCgKKy0gICAgICAgICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8aW50MzJf dCo+KGRpc3BsYXlfbWF0cml4KSkKKy0gICAgICAgICAgICAgICAgICAgICAgLnJvdGF0aW9uOwor LSAgICAgIGluZm8udGFnc1sicm90YXRlIl0gPSBiYXNlOjpOdW1iZXJUb1N0cmluZyhyb3RhdGlv bl8pOworLSAgICB9CistCisgICAgIC8vIEV4dHJhY3QgZGljdGlvbmFyeSBmcm9tIHN0cmVhbXMg YWxzby4gTmVlZGVkIGZvciBjb250YWluZXJzIHRoYXQgYXR0YWNoCisgICAgIC8vIG1ldGFkYXRh IHRvIGNvbnRhaW5lZCBzdHJlYW1zIGluc3RlYWQgdGhlIGNvbnRhaW5lciBpdHNlbGYsIGxpa2Ug T0dHLgorICAgICBFeHRyYWN0RGljdGlvbmFyeShzdHJlYW0tPm1ldGFkYXRhLCAmaW5mby50YWdz KTsKK0BAIC0yNjQsNiArMjU1LDggQEAgdm9pZCBBdWRpb1ZpZGVvTWV0YWRhdGFFeHRyYWN0b3I6 OkV4dHJhYworICAgICBpZiAocmF3X3RhZ3MtPmZpbmQodGFnLT5rZXkpID09IHJhd190YWdzLT5l bmQoKSkKKyAgICAgICAoKnJhd190YWdzKVt0YWctPmtleV0gPSB0YWctPnZhbHVlOworIAorKyAg ICBpZiAoRXh0cmFjdEludCh0YWcsICJyb3RhdGUiLCAmcm90YXRpb25fKSkKKysgICAgICBjb250 aW51ZTsKKyAgICAgaWYgKEV4dHJhY3RTdHJpbmcodGFnLCAiYWxidW0iLCAmYWxidW1fKSkKKyAg ICAgICBjb250aW51ZTsKKyAgICAgaWYgKEV4dHJhY3RTdHJpbmcodGFnLCAiYXJ0aXN0IiwgJmFy dGlzdF8pKQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDEwNC1hbmdsZS13 YXlsYW5kLWluY2x1ZGUucGF0Y2ggYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTA0LWFuZ2xl LXdheWxhbmQtaW5jbHVkZS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw MDAwMDAwMC4uYmRhZTg5ZTQxZDM5MmEKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3F0Ni1w ZGYvcGF0Y2hlcy8wMTA0LWFuZ2xlLXdheWxhbmQtaW5jbHVkZS5wYXRjaApAQCAtMCwwICsxLDM3 IEBACitQYXRjaC1Tb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9hcmNobGludXgvc3ZudG9naXQt cGFja2FnZXMvYmxvYi9hMzUzODMzYTVhNzMxYWJmYWE0NjViNjU4ZjYxODk0YTUxNmFhNDliL3Ry dW5rL2FuZ2xlLXdheWxhbmQtaW5jbHVkZS1wcm90b2NvbC5wYXRjaAorLS0tIGEvc3JjLzNyZHBh cnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZ2xlL0JVSUxELmduCisrKysgYi9zcmMvM3JkcGFy dHkvY2hyb21pdW0vdGhpcmRfcGFydHkvYW5nbGUvQlVJTEQuZ24KK0BAIC01ODgsNiArNTg4LDEy IEBAIGNvbmZpZygiYW5nbGVfdnVsa2FuX3dheWxhbmRfY29uZmlnIikgeworICAgaWYgKGFuZ2xl X2VuYWJsZV92dWxrYW4gJiYgYW5nbGVfdXNlX3dheWxhbmQgJiYKKyAgICAgICBkZWZpbmVkKHZ1 bGthbl93YXlsYW5kX2luY2x1ZGVfZGlycykpIHsKKyAgICAgaW5jbHVkZV9kaXJzID0gdnVsa2Fu X3dheWxhbmRfaW5jbHVkZV9kaXJzCisrICB9IGVsc2UgaWYgKGFuZ2xlX2VuYWJsZV92dWxrYW4g JiYgYW5nbGVfdXNlX3dheWxhbmQpIHsKKysgICAgaW5jbHVkZV9kaXJzID0gWworKyAgICAgICIk d2F5bGFuZF9nbl9kaXIvc3JjL3NyYyIsCisrICAgICAgIiR3YXlsYW5kX2duX2Rpci9pbmNsdWRl L3NyYyIsCisrICAgICAgIiR3YXlsYW5kX2duX2Rpci9pbmNsdWRlL3Byb3RvY29sIiwKKysgICAg XQorICAgfQorIH0KKyAKK0BAIC0xMTc2LDYgKzExODIsNyBAQCBpZiAoYW5nbGVfdXNlX3dheWxh bmQpIHsKKyAgICAgaW5jbHVkZV9kaXJzID0gWworICAgICAgICIkd2F5bGFuZF9kaXIvZWdsIiwK KyAgICAgICAiJHdheWxhbmRfZGlyL3NyYyIsCisrICAgICAgIiR3YXlsYW5kX2duX2Rpci9pbmNs dWRlL3Byb3RvY29sIiwKKyAgICAgXQorICAgfQorIAorLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9t aXVtL3RoaXJkX3BhcnR5L2FuZ2xlL3NyYy90aGlyZF9wYXJ0eS92b2xrL0JVSUxELmduCisrKysg Yi9zcmMvM3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFydHkvYW5nbGUvc3JjL3RoaXJkX3BhcnR5 L3ZvbGsvQlVJTEQuZ24KK0BAIC0yMSw2ICsyMSw5IEBAIHNvdXJjZV9zZXQoInZvbGsiKSB7Cisg ICBjb25maWdzICs9IFsgIiRhbmdsZV9yb290OmFuZ2xlX25vX2NmaV9pY2FsbCIgXQorICAgcHVi bGljX2RlcHMgPSBbICIkYW5nbGVfdnVsa2FuX2hlYWRlcnNfZGlyOnZ1bGthbl9oZWFkZXJzIiBd CisgICBpZiAoYW5nbGVfdXNlX3dheWxhbmQpIHsKKy0gICAgaW5jbHVkZV9kaXJzID0gWyAiJHdh eWxhbmRfZGlyL3NyYyIgXQorKyAgICBpbmNsdWRlX2RpcnMgPSBbCisrICAgICAgIiR3YXlsYW5k X2Rpci9zcmMiLAorKyAgICAgICIkd2F5bGFuZF9nbl9kaXIvaW5jbHVkZS9wcm90b2NvbCIsCisr ICAgIF0KKyAgIH0KKyB9CmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTA2 LWNocm9taXVtLTEwNS4wLjUxOTUuNTItcHl0aG9uLXNpeC0xLjE2LjAucGF0Y2ggYi9zcmNwa2dz L3F0Ni1wZGYvcGF0Y2hlcy8wMTA2LWNocm9taXVtLTEwNS4wLjUxOTUuNTItcHl0aG9uLXNpeC0x LjE2LjAucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAuLmNm YTdlMDVhZGM5NDgxCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMv MDEwNi1jaHJvbWl1bS0xMDUuMC41MTk1LjUyLXB5dGhvbi1zaXgtMS4xNi4wLnBhdGNoCkBAIC0w LDAgKzEsODQgQEAKKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS90aGlyZF9wYXJ0eS9zaXgv c3JjL3NpeC5weQorKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L3NpeC9z cmMvc2l4LnB5CitAQCAtMjksNyArMjksNyBAQCBpbXBvcnQgc3lzCisgaW1wb3J0IHR5cGVzCisg CisgX19hdXRob3JfXyA9ICJCZW5qYW1pbiBQZXRlcnNvbiA8YmVuamFtaW5AcHl0aG9uLm9yZz4i CistX192ZXJzaW9uX18gPSAiMS4xNC4wIgorK19fdmVyc2lvbl9fID0gIjEuMTYuMCIKKyAKKyAK KyAjIFVzZWZ1bCBmb3IgdmVyeSBjb2Fyc2UgdmVyc2lvbiBkaWZmZXJlbnRpYXRpb24uCitAQCAt NzEsNiArNzEsMTEgQEAgZWxzZToKKyAgICAgICAgICAgICBNQVhTSVpFID0gaW50KCgxIDw8IDYz KSAtIDEpCisgICAgICAgICBkZWwgWAorIAorK2lmIFBZMzQ6CisrICAgIGZyb20gaW1wb3J0bGli LnV0aWwgaW1wb3J0IHNwZWNfZnJvbV9sb2FkZXIKKytlbHNlOgorKyAgICBzcGVjX2Zyb21fbG9h ZGVyID0gTm9uZQorKworIAorIGRlZiBfYWRkX2RvYyhmdW5jLCBkb2MpOgorICAgICAiIiJBZGQg ZG9jdW1lbnRhdGlvbiB0byBhIGZ1bmN0aW9uLiIiIgorQEAgLTE4Niw2ICsxOTEsMTEgQEAgY2xh c3MgX1NpeE1ldGFQYXRoSW1wb3J0ZXIob2JqZWN0KToKKyAgICAgICAgICAgICByZXR1cm4gc2Vs ZgorICAgICAgICAgcmV0dXJuIE5vbmUKKyAKKysgICAgZGVmIGZpbmRfc3BlYyhzZWxmLCBmdWxs bmFtZSwgcGF0aCwgdGFyZ2V0PU5vbmUpOgorKyAgICAgICAgaWYgZnVsbG5hbWUgaW4gc2VsZi5r bm93bl9tb2R1bGVzOgorKyAgICAgICAgICAgIHJldHVybiBzcGVjX2Zyb21fbG9hZGVyKGZ1bGxu YW1lLCBzZWxmKQorKyAgICAgICAgcmV0dXJuIE5vbmUKKysKKyAgICAgZGVmIF9fZ2V0X21vZHVs ZShzZWxmLCBmdWxsbmFtZSk6CisgICAgICAgICB0cnk6CisgICAgICAgICAgICAgcmV0dXJuIHNl bGYua25vd25fbW9kdWxlc1tmdWxsbmFtZV0KK0BAIC0yMjMsNiArMjMzLDEyIEBAIGNsYXNzIF9T aXhNZXRhUGF0aEltcG9ydGVyKG9iamVjdCk6CisgICAgICAgICByZXR1cm4gTm9uZQorICAgICBn ZXRfc291cmNlID0gZ2V0X2NvZGUgICMgc2FtZSBhcyBnZXRfY29kZQorIAorKyAgICBkZWYgY3Jl YXRlX21vZHVsZShzZWxmLCBzcGVjKToKKysgICAgICAgIHJldHVybiBzZWxmLmxvYWRfbW9kdWxl KHNwZWMubmFtZSkKKysKKysgICAgZGVmIGV4ZWNfbW9kdWxlKHNlbGYsIG1vZHVsZSk6CisrICAg ICAgICBwYXNzCisrCisgX2ltcG9ydGVyID0gX1NpeE1ldGFQYXRoSW1wb3J0ZXIoX19uYW1lX18p CisgCisgCitAQCAtODkwLDEyICs5MDYsMTEgQEAgZGVmIGVuc3VyZV9iaW5hcnkocywgZW5jb2Rp bmc9J3V0Zi04JywgZQorICAgICAgIC0gYHN0cmAgLT4gZW5jb2RlZCB0byBgYnl0ZXNgCisgICAg ICAgLSBgYnl0ZXNgIC0+IGBieXRlc2AKKyAgICAgIiIiCisrICAgIGlmIGlzaW5zdGFuY2Uocywg YmluYXJ5X3R5cGUpOgorKyAgICAgICAgcmV0dXJuIHMKKyAgICAgaWYgaXNpbnN0YW5jZShzLCB0 ZXh0X3R5cGUpOgorICAgICAgICAgcmV0dXJuIHMuZW5jb2RlKGVuY29kaW5nLCBlcnJvcnMpCist ICAgIGVsaWYgaXNpbnN0YW5jZShzLCBiaW5hcnlfdHlwZSk6CistICAgICAgICByZXR1cm4gcwor LSAgICBlbHNlOgorLSAgICAgICAgcmFpc2UgVHlwZUVycm9yKCJub3QgZXhwZWN0aW5nIHR5cGUg JyVzJyIgJSB0eXBlKHMpKQorKyAgICByYWlzZSBUeXBlRXJyb3IoIm5vdCBleHBlY3RpbmcgdHlw ZSAnJXMnIiAlIHR5cGUocykpCisgCisgCisgZGVmIGVuc3VyZV9zdHIocywgZW5jb2Rpbmc9J3V0 Zi04JywgZXJyb3JzPSdzdHJpY3QnKToKK0BAIC05MDksMTIgKzkyNCwxNSBAQCBkZWYgZW5zdXJl X3N0cihzLCBlbmNvZGluZz0ndXRmLTgnLCBlcnJvCisgICAgICAgLSBgc3RyYCAtPiBgc3RyYAor ICAgICAgIC0gYGJ5dGVzYCAtPiBkZWNvZGVkIHRvIGBzdHJgCisgICAgICIiIgorLSAgICBpZiBu b3QgaXNpbnN0YW5jZShzLCAodGV4dF90eXBlLCBiaW5hcnlfdHlwZSkpOgorLSAgICAgICAgcmFp c2UgVHlwZUVycm9yKCJub3QgZXhwZWN0aW5nIHR5cGUgJyVzJyIgJSB0eXBlKHMpKQorKyAgICAj IE9wdGltaXphdGlvbjogRmFzdCByZXR1cm4gZm9yIHRoZSBjb21tb24gY2FzZS4KKysgICAgaWYg dHlwZShzKSBpcyBzdHI6CisrICAgICAgICByZXR1cm4gcworICAgICBpZiBQWTIgYW5kIGlzaW5z dGFuY2UocywgdGV4dF90eXBlKToKKy0gICAgICAgIHMgPSBzLmVuY29kZShlbmNvZGluZywgZXJy b3JzKQorKyAgICAgICAgcmV0dXJuIHMuZW5jb2RlKGVuY29kaW5nLCBlcnJvcnMpCisgICAgIGVs aWYgUFkzIGFuZCBpc2luc3RhbmNlKHMsIGJpbmFyeV90eXBlKToKKy0gICAgICAgIHMgPSBzLmRl Y29kZShlbmNvZGluZywgZXJyb3JzKQorKyAgICAgICAgcmV0dXJuIHMuZGVjb2RlKGVuY29kaW5n LCBlcnJvcnMpCisrICAgIGVsaWYgbm90IGlzaW5zdGFuY2UocywgKHRleHRfdHlwZSwgYmluYXJ5 X3R5cGUpKToKKysgICAgICAgIHJhaXNlIFR5cGVFcnJvcigibm90IGV4cGVjdGluZyB0eXBlICcl cyciICUgdHlwZShzKSkKKyAgICAgcmV0dXJuIHMKKyAKKyAKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv cXQ2LXBkZi9wYXRjaGVzLzAxMDYtY2hyb21pdW0tc3lzdGVtLW5vZGVqcy5wYXRjaCBiL3NyY3Br Z3MvcXQ2LXBkZi9wYXRjaGVzLzAxMDYtY2hyb21pdW0tc3lzdGVtLW5vZGVqcy5wYXRjaApkZWxl dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTY0OGY3NjRlYTE5ZmUuLjAwMDAwMDAwMDAwMDAw Ci0tLSBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMDYtY2hyb21pdW0tc3lzdGVtLW5vZGVq cy5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDI5ICswLDAgQEAKLS0tLSBxdDYtd2ViZW5naW5l LTYuNC4yLm9yaWcvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L25vZGUvbm9kZS5w eQotKysrIHF0Ni13ZWJlbmdpbmUtNi40LjIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3Bh cnR5L25vZGUvbm9kZS5weQotQEAgLTE4LDI1ICsxOCw3IEBAIGRlZiB3aGljaChjbWQpOgotICAg ICByZXR1cm4gTm9uZQotIAotIGRlZiBHZXRCaW5hcnlQYXRoKCk6Ci0tICBpZiBzeXMucGxhdGZv cm0gPT0gJ3dpbjMyJzoKLS0gICAgbm9kZWpzID0gd2hpY2goJ25vZGUuZXhlJykKLS0gICAgaWYg bm9kZWpzOgotLSAgICAgIHJldHVybiBub2RlanMKLS0gIGVsc2U6Ci0tICAgIG5vZGVqcyA9IHdo aWNoKCdub2RlanMnKQotLSAgICBpZiBub2RlanM6Ci0tICAgICAgcmV0dXJuIG5vZGVqcwotLSAg ICBub2RlanMgPSB3aGljaCgnbm9kZScpCi0tICAgIGlmIG5vZGVqczoKLS0gICAgICByZXR1cm4g bm9kZWpzCi0tCi0tICBkYXJ3aW5fbmFtZSA9ICgnbm9kZS1kYXJ3aW4tYXJtNjQnIGlmIHBsYXRm b3JtLm1hY2hpbmUoKSA9PSAnYXJtNjQnIGVsc2UKLS0gICAgICAgICAgICAgICAgICdub2RlLWRh cndpbi14NjQnKQotLSAgcmV0dXJuIG9zX3BhdGguam9pbihvc19wYXRoLmRpcm5hbWUoX19maWxl X18pLCAqewotLSAgICAnRGFyd2luJzogKCdtYWMnLCBkYXJ3aW5fbmFtZSwgJ2JpbicsICdub2Rl JyksCi0tICAgICdMaW51eCc6ICgnbGludXgnLCAnbm9kZS1saW51eC14NjQnLCAnYmluJywgJ25v ZGUnKSwKLS0gICAgJ1dpbmRvd3MnOiAoJ3dpbicsICdub2RlLmV4ZScpLAotLSAgfVtwbGF0Zm9y bS5zeXN0ZW0oKV0pCi0rICByZXR1cm4gIi91c3IvYmluL25vZGUiCi0gCi0gCi0gZGVmIFJ1bk5v ZGUoY21kX3BhcnRzLCBzdGRvdXQ9Tm9uZSk6CmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYv cGF0Y2hlcy8wMTA3LWNocm9taXVtLTExNC1tYWxkb2NhLWluY2x1ZGUucGF0Y2ggYi9zcmNwa2dz L3F0Ni1wZGYvcGF0Y2hlcy8wMTA3LWNocm9taXVtLTExNC1tYWxkb2NhLWluY2x1ZGUucGF0Y2gK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAuLmFlOTJlZmI0OTcxMmNm Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDEwNy1jaHJvbWl1 bS0xMTQtbWFsZG9jYS1pbmNsdWRlLnBhdGNoCkBAIC0wLDAgKzEsMjAgQEAKK0Zyb20gMzQ1YzU4 ZjFkODUyODZiMzk0YzA1YmI4ZDg3MWFjODE3M2JlOTBhMyBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKK0Zyb206IFN0ZXBoYW4gSGFydG1hbm4gPHN0aGEwOUBnb29nbGVtYWlsLmNvbT4KK0RhdGU6 IEZyaSwgMzEgTWFyIDIwMjMgMTY6MjY6MDYgKzAwMDAKK1N1YmplY3Q6IFtQQVRDSF0gSVdZVTog YWRkIHN0ZGludC5oIGZvciBpbnQgdHlwZXMgaW4gbWFsZG9jYQorCistLS0KKyB0aGlyZF9wYXJ0 eS9tYWxkb2NhL3NyYy9tYWxkb2NhL29sZS9oZWFkZXIuaCB8IDIgKysKKyAxIGZpbGUgY2hhbmdl ZCwgMiBpbnNlcnRpb25zKCspCisKKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS90aGlyZF9w YXJ0eS9tYWxkb2NhL3NyYy9tYWxkb2NhL29sZS9oZWFkZXIuaAorKysrIGIvc3JjLzNyZHBhcnR5 L2Nocm9taXVtL3RoaXJkX3BhcnR5L21hbGRvY2Evc3JjL21hbGRvY2Evb2xlL2hlYWRlci5oCitA QCAtNDMsNiArNDMsOCBAQAorICNpZm5kZWYgTUFMRE9DQV9PTEVfSEVBREVSX0hfCisgI2RlZmlu ZSBNQUxET0NBX09MRV9IRUFERVJfSF8KKyAKKysjaW5jbHVkZSA8c3RkaW50Lmg+CisrCisgI2lu Y2x1ZGUgImFic2wvc3RyaW5ncy9zdHJpbmdfdmlldy5oIgorIAorIG5hbWVzcGFjZSBtYWxkb2Nh IHsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMDgtY2hyb21pdW0tMTE1 LWNvbXBpbGVyLVNrQ29sb3I0Zi5wYXRjaCBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMDgt Y2hyb21pdW0tMTE1LWNvbXBpbGVyLVNrQ29sb3I0Zi5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAwMDAwMDAwMDAwMDAwMC4uMzJlM2RmYmZjYjM5NmIKLS0tIC9kZXYvbnVsbAorKysg Yi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTA4LWNocm9taXVtLTExNS1jb21waWxlci1Ta0Nv bG9yNGYucGF0Y2gKQEAgLTAsMCArMSwyNiBAQAorUGF0Y2gtU291cmNlOiBodHRwczovL3NyYy5m ZWRvcmFwcm9qZWN0Lm9yZy9ycG1zL2Nocm9taXVtL2Jsb2IvMWY4ZmQ4NDZkMmNjNzJjOTBjNzNj OTg2NzYxOWYwZGE0M2I5YzgxNi9mL2Nocm9taXVtLTExNS1jb21waWxlci1Ta0NvbG9yNGYucGF0 Y2gKKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS90aGlyZF9wYXJ0eS9ibGluay9yZW5kZXJl ci9tb2R1bGVzL2NhbnZhcy9jYW52YXMyZC9jYW52YXNfc3R5bGUuY2MKKysrKyBiL3NyYy8zcmRw YXJ0eS9jaHJvbWl1bS90aGlyZF9wYXJ0eS9ibGluay9yZW5kZXJlci9tb2R1bGVzL2NhbnZhcy9j YW52YXMyZC9jYW52YXNfc3R5bGUuY2MKK0BAIC03Niw2ICs3Niw3IEBAIGJvb2wgUGFyc2VDYW52 YXNDb2xvclN0cmluZyhjb25zdCBTdHJpbmcKKyAKKyB2b2lkIENhbnZhc1N0eWxlOjpBcHBseVRv RmxhZ3MoY2M6OlBhaW50RmxhZ3MmIGZsYWdzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBmbG9hdCBnbG9iYWxfYWxwaGEpIGNvbnN0IHsKKysgIFNrQ29sb3I0ZiBjdXN0b21fY29s b3IgPSBTa0NvbG9yNGZ7MC4wZiwgMC4wZiwgMC4wZiwgZ2xvYmFsX2FscGhhfTsKKyAgIHN3aXRj aCAodHlwZV8pIHsKKyAgICAgY2FzZSBrQ29sb3I6CisgICAgICAgQXBwbHlDb2xvclRvRmxhZ3Mo ZmxhZ3MsIGdsb2JhbF9hbHBoYSk7CitAQCAtODMsMTIgKzg0LDEyIEBAIHZvaWQgQ2FudmFzU3R5 bGU6OkFwcGx5VG9GbGFncyhjYzo6UGFpbnQKKyAgICAgY2FzZSBrR3JhZGllbnQ6CisgICAgICAg R2V0Q2FudmFzR3JhZGllbnQoKS0+R2V0R3JhZGllbnQoKS0+QXBwbHlUb0ZsYWdzKGZsYWdzLCBT a01hdHJpeDo6SSgpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBJbWFnZURyYXdPcHRpb25zKCkpOworLSAgICAgIGZsYWdzLnNldENvbG9y KFNrQ29sb3I0ZnswLjBmLCAwLjBmLCAwLjBmLCBnbG9iYWxfYWxwaGF9KTsKKysgICAgICBmbGFn cy5zZXRDb2xvcihjdXN0b21fY29sb3IpOworICAgICAgIGJyZWFrOworICAgICBjYXNlIGtJbWFn ZVBhdHRlcm46CisgICAgICAgR2V0Q2FudmFzUGF0dGVybigpLT5HZXRQYXR0ZXJuKCktPkFwcGx5 VG9GbGFncygKKyAgICAgICAgICAgZmxhZ3MsIEFmZmluZVRyYW5zZm9ybVRvU2tNYXRyaXgoR2V0 Q2FudmFzUGF0dGVybigpLT5HZXRUcmFuc2Zvcm0oKSkpOworLSAgICAgIGZsYWdzLnNldENvbG9y KFNrQ29sb3I0ZnswLjBmLCAwLjBmLCAwLjBmLCBnbG9iYWxfYWxwaGF9KTsKKysgICAgICBmbGFn cy5zZXRDb2xvcihjdXN0b21fY29sb3IpOworICAgICAgIGJyZWFrOworICAgICBkZWZhdWx0Ogor ICAgICAgIE5PVFJFQUNIRUQoKTsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVz LzAxMDgtY2hyb21pdW0tY3Vyc2VkXlVzY29wZWRfZmlsZS5wYXRjaCBiL3NyY3BrZ3MvcXQ2LXBk Zi9wYXRjaGVzLzAxMDgtY2hyb21pdW0tY3Vyc2VkXlVzY29wZWRfZmlsZS5wYXRjaApkZWxldGVk IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZGQzMWRhOTc5MGFkY2UuLjAwMDAwMDAwMDAwMDAwCi0t LSBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMDgtY2hyb21pdW0tY3Vyc2VkXlVzY29wZWRf ZmlsZS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLS0tLSBxdDYtd2ViZW5n aW5lLTYuNC4yLm9yaWcvc3JjLzNyZHBhcnR5L2Nocm9taXVtL2Jhc2UvZmlsZXMvc2NvcGVkX2Zp bGVfbGludXguY2MKLSsrKyBxdDYtd2ViZW5naW5lLTYuNC4yL3NyYy8zcmRwYXJ0eS9jaHJvbWl1 bS9iYXNlL2ZpbGVzL3Njb3BlZF9maWxlX2xpbnV4LmNjCi1AQCAtNzcsMTUgKzc3LDMgQEAgYm9v bCBJc0ZET3duZWQoaW50IGZkKSB7Ci0gfQotIAotIH0gIC8vIG5hbWVzcGFjZSBiYXNlCi0tCi0t ZXh0ZXJuICJDIiB7Ci0tCi0taW50IF9fY2xvc2UoaW50KTsKLS0KLS1fX2F0dHJpYnV0ZV9fKCh2 aXNpYmlsaXR5KCJkZWZhdWx0IiksIG5vaW5saW5lKSkgaW50IGNsb3NlKGludCBmZCkgewotLSAg aWYgKGJhc2U6OklzRkRPd25lZChmZCkgJiYgZ19pc19vd25lcnNoaXBfZW5mb3JjZWQpCi0tICAg IENyYXNoT25GZE93bmVyc2hpcFZpb2xhdGlvbigpOwotLSAgcmV0dXJuIF9fY2xvc2UoZmQpOwot LX0KLS0KLS19ICAvLyBleHRlcm4gIkMiCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYvcGF0 Y2hlcy8wMTEwLWNocm9taXVtLTExNy10eXBlbmFtZS5wYXRjaCBiL3NyY3BrZ3MvcXQ2LXBkZi9w YXRjaGVzLzAxMTAtY2hyb21pdW0tMTE3LXR5cGVuYW1lLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwLi42ZTRhZjBjMGUwNzRmYQotLS0gL2Rldi9udWxsCisr KyBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMTAtY2hyb21pdW0tMTE3LXR5cGVuYW1lLnBh dGNoCkBAIC0wLDAgKzEsOTEgQEAKKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9jb21wb25l bnRzL29wdGltaXphdGlvbl9ndWlkZS9jb3JlL3RmbGl0ZV9tb2RlbF9leGVjdXRvci5oCisrKysg Yi9zcmMvM3JkcGFydHkvY2hyb21pdW0vY29tcG9uZW50cy9vcHRpbWl6YXRpb25fZ3VpZGUvY29y ZS90ZmxpdGVfbW9kZWxfZXhlY3V0b3IuaAorQEAgLTI0MCw3ICsyNDAsNyBAQCBjbGFzcyBURkxp dGVNb2RlbEV4ZWN1dG9yIDogcHVibGljIE1vZGVsCisgICB2b2lkIFNlbmRGb3JCYXRjaEV4ZWN1 dGlvbigKKyAgICAgICBCYXRjaEV4ZWN1dGlvbkNhbGxiYWNrIGNhbGxiYWNrX29uX2NvbXBsZXRl LAorICAgICAgIGJhc2U6OlRpbWVUaWNrcyBzdGFydF90aW1lLAorLSAgICAgIE1vZGVsRXhlY3V0 b3I8T3V0cHV0VHlwZSwgSW5wdXRUeXBlPjo6Q29uc3RSZWZJbnB1dFZlY3RvciBpbnB1dHMpCisr ICAgICAgdHlwZW5hbWUgTW9kZWxFeGVjdXRvcjxPdXRwdXRUeXBlLCBJbnB1dFR5cGU+OjpDb25z dFJlZklucHV0VmVjdG9yIGlucHV0cykKKyAgICAgICBvdmVycmlkZSB7CisgICAgIERDSEVDSyhl eGVjdXRpb25fdGFza19ydW5uZXJfLT5SdW5zVGFza3NJbkN1cnJlbnRTZXF1ZW5jZSgpKTsKKyAg ICAgRENIRUNLX0NBTExFRF9PTl9WQUxJRF9TRVFVRU5DRShzZXF1ZW5jZV9jaGVja2VyXyk7CitA QCAtMjYyLDcgKzI2Miw3IEBAIGNsYXNzIFRGTGl0ZU1vZGVsRXhlY3V0b3IgOiBwdWJsaWMgTW9k ZWwKKyAgIC8vIFN0YXJ0cyB0aGUgc3luY2hyb25vdXMgZXhlY3V0aW9uIG9mIHRoZSBtb2RlbC4g UmV0dXJucyBtb2RlbCBvdXRwdXRzLgorICAgLy8gTW9kZWwgbmVlZHMgdG8gYmUgbG9hZGVkLiBT eW5jaHJvbm91cyBjYWxscyBkbyBub3QgbG9hZCBvciB1bmxvYWQgbW9kZWwuCisgICBzdGQ6OnZl Y3RvcjxhYnNsOjpvcHRpb25hbDxPdXRwdXRUeXBlPj4gU2VuZEZvckJhdGNoRXhlY3V0aW9uU3lu YygKKy0gICAgICBNb2RlbEV4ZWN1dG9yPE91dHB1dFR5cGUsIElucHV0VHlwZT46OkNvbnN0UmVm SW5wdXRWZWN0b3IgaW5wdXRzKQorKyAgICAgIHR5cGVuYW1lIE1vZGVsRXhlY3V0b3I8T3V0cHV0 VHlwZSwgSW5wdXRUeXBlPjo6Q29uc3RSZWZJbnB1dFZlY3RvciBpbnB1dHMpCisgICAgICAgb3Zl cnJpZGUgeworICAgICBEQ0hFQ0soZXhlY3V0aW9uX3Rhc2tfcnVubmVyXy0+UnVuc1Rhc2tzSW5D dXJyZW50U2VxdWVuY2UoKSk7CisgICAgIERDSEVDS19DQUxMRURfT05fVkFMSURfU0VRVUVOQ0Uo c2VxdWVuY2VfY2hlY2tlcl8pOworQEAgLTQxNyw3ICs0MTcsNyBAQCBjbGFzcyBURkxpdGVNb2Rl bEV4ZWN1dG9yIDogcHVibGljIE1vZGVsCisgICAvLyBleGVjdXRlcyBpdCBvbiB0aGUgbW9kZWwg ZXhlY3V0aW9uIHRocmVhZC4KKyAgIHZvaWQgTG9hZE1vZGVsRmlsZUFuZEJhdGNoRXhlY3V0ZSgK KyAgICAgICBCYXRjaEV4ZWN1dGlvbkNhbGxiYWNrIGNhbGxiYWNrX29uX2NvbXBsZXRlLAorLSAg ICAgIE1vZGVsRXhlY3V0b3I8T3V0cHV0VHlwZSwgSW5wdXRUeXBlPjo6Q29uc3RSZWZJbnB1dFZl Y3RvciBpbnB1dHMpIHsKKysgICAgICB0eXBlbmFtZSBNb2RlbEV4ZWN1dG9yPE91dHB1dFR5cGUs IElucHV0VHlwZT46OkNvbnN0UmVmSW5wdXRWZWN0b3IgaW5wdXRzKSB7CisgICAgIERDSEVDSyhl eGVjdXRpb25fdGFza19ydW5uZXJfLT5SdW5zVGFza3NJbkN1cnJlbnRTZXF1ZW5jZSgpKTsKKyAg ICAgRENIRUNLX0NBTExFRF9PTl9WQUxJRF9TRVFVRU5DRShzZXF1ZW5jZV9jaGVja2VyXyk7Cisg CitAQCAtNDM0LDcgKzQzNCw3IEBAIGNsYXNzIFRGTGl0ZU1vZGVsRXhlY3V0b3IgOiBwdWJsaWMg TW9kZWwKKyAKKyAgIC8vIEJhdGNoIGV4ZWN1dGVzIHRoZSBsb2FkZWQgbW9kZWwgZm9yIGlucHV0 cy4KKyAgIHZvaWQgQmF0Y2hFeGVjdXRlTG9hZGVkTW9kZWwoCistICAgICAgTW9kZWxFeGVjdXRv cjxPdXRwdXRUeXBlLCBJbnB1dFR5cGU+OjpDb25zdFJlZklucHV0VmVjdG9yIGlucHV0cywKKysg ICAgICB0eXBlbmFtZSBNb2RlbEV4ZWN1dG9yPE91dHB1dFR5cGUsIElucHV0VHlwZT46OkNvbnN0 UmVmSW5wdXRWZWN0b3IgaW5wdXRzLAorICAgICAgIHN0ZDo6dmVjdG9yPGFic2w6Om9wdGlvbmFs PE91dHB1dFR5cGU+Piogb3V0cHV0cykgeworICAgICBEQ0hFQ0soZXhlY3V0aW9uX3Rhc2tfcnVu bmVyXy0+UnVuc1Rhc2tzSW5DdXJyZW50U2VxdWVuY2UoKSk7CisgICAgIERDSEVDS19DQUxMRURf T05fVkFMSURfU0VRVUVOQ0Uoc2VxdWVuY2VfY2hlY2tlcl8pOworQEAgLTQ5NCw3ICs0OTQsNyBA QCBjbGFzcyBURkxpdGVNb2RlbEV4ZWN1dG9yIDogcHVibGljIE1vZGVsCisgICAvLyBVbmxvYWRz IHRoZSBtb2RlbCBpZiBuZWVkZWQuCisgICB2b2lkIEJhdGNoRXhlY3V0ZUxvYWRlZE1vZGVsQW5k UnVuQ2FsbGJhY2soCisgICAgICAgQmF0Y2hFeGVjdXRpb25DYWxsYmFjayBjYWxsYmFja19vbl9j b21wbGV0ZSwKKy0gICAgICBNb2RlbEV4ZWN1dG9yPE91dHB1dFR5cGUsIElucHV0VHlwZT46OkNv bnN0UmVmSW5wdXRWZWN0b3IgaW5wdXRzLAorKyAgICAgIHR5cGVuYW1lIE1vZGVsRXhlY3V0b3I8 T3V0cHV0VHlwZSwgSW5wdXRUeXBlPjo6Q29uc3RSZWZJbnB1dFZlY3RvciBpbnB1dHMsCisgICAg ICAgRXhlY3V0aW9uU3RhdHVzIGV4ZWN1dGlvbl9zdGF0dXMpIHsKKyAgICAgRENIRUNLKGV4ZWN1 dGlvbl90YXNrX3J1bm5lcl8tPlJ1bnNUYXNrc0luQ3VycmVudFNlcXVlbmNlKCkpOworICAgICBE Q0hFQ0tfQ0FMTEVEX09OX1ZBTElEX1NFUVVFTkNFKHNlcXVlbmNlX2NoZWNrZXJfKTsKKy0tLSBh L3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9jb21wb25lbnRzL3N1cGVydmlzZWRfdXNlci9jb3JlL2Jy b3dzZXIvcHJvdG9fZmV0Y2hlci5jYworKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL2NvbXBv bmVudHMvc3VwZXJ2aXNlZF91c2VyL2NvcmUvYnJvd3Nlci9wcm90b19mZXRjaGVyLmNjCitAQCAt Mzk5LDcgKzM5OSw3IEBAIGNsYXNzIFJldHJ5aW5nRmV0Y2hlckltcGwgZmluYWwgOiBwdWJsaWMK KyAgIFJldHJ5aW5nRmV0Y2hlckltcGwoY29uc3QgUmV0cnlpbmdGZXRjaGVySW1wbCYpID0gZGVs ZXRlOworICAgUmV0cnlpbmdGZXRjaGVySW1wbCYgb3BlcmF0b3I9KGNvbnN0IFJldHJ5aW5nRmV0 Y2hlckltcGwmKSA9IGRlbGV0ZTsKKyAKKy0gIHZvaWQgU3RhcnQoUHJvdG9GZXRjaGVyPFJlc3Bv bnNlPjo6Q2FsbGJhY2sgY2FsbGJhY2spIG92ZXJyaWRlIHsKKysgIHZvaWQgU3RhcnQodHlwZW5h bWUgUHJvdG9GZXRjaGVyPFJlc3BvbnNlPjo6Q2FsbGJhY2sgY2FsbGJhY2spIG92ZXJyaWRlIHsK KyAgICAgY2FsbGJhY2tfID0gc3RkOjptb3ZlKGNhbGxiYWNrKTsKKyAgICAgUmV0cnkoKTsKKyAg IH0KK0BAIC00MzUsNyArNDM1LDcgQEAgY2xhc3MgUmV0cnlpbmdGZXRjaGVySW1wbCBmaW5hbCA6 IHB1YmxpYworICAgfQorIAorICAgLy8gQ2xpZW50IGNhbGxiYWNrLgorLSAgUHJvdG9GZXRjaGVy PFJlc3BvbnNlPjo6Q2FsbGJhY2sgY2FsbGJhY2tfOworKyAgdHlwZW5hbWUgUHJvdG9GZXRjaGVy PFJlc3BvbnNlPjo6Q2FsbGJhY2sgY2FsbGJhY2tfOworIAorICAgLy8gUmV0cnkgY29udHJvbHMu CisgICBiYXNlOjpPbmVTaG90VGltZXIgdGltZXJfOworQEAgLTU3OCw3ICs1NzgsNyBAQCBQYXJh bGxlbEZldGNoTWFuYWdlcjxSZXF1ZXN0LCBSZXNwb25zZT46CisgdGVtcGxhdGUgPHR5cGVuYW1l IFJlcXVlc3QsIHR5cGVuYW1lIFJlc3BvbnNlPgorIHZvaWQgUGFyYWxsZWxGZXRjaE1hbmFnZXI8 UmVxdWVzdCwgUmVzcG9uc2U+OjpGZXRjaCgKKyAgICAgY29uc3QgUmVxdWVzdCYgcmVxdWVzdCwK Ky0gICAgRmV0Y2hlcjo6Q2FsbGJhY2sgY2FsbGJhY2spIHsKKysgICAgdHlwZW5hbWUgRmV0Y2hl cjo6Q2FsbGJhY2sgY2FsbGJhY2spIHsKKyAgIENIRUNLKGNhbGxiYWNrKSA8PCAiVXNlIGJhc2U6 OkRvTm90aGluZygpIGluc3RlYWQgb2YgZW1wdHkgY2FsbGJhY2suIjsKKyAgIEtleVR5cGUga2V5 ID0gcmVxdWVzdHNfaW5fZmxpZ2h0Xy5BZGQoTWFrZUZldGNoZXIocmVxdWVzdCkpOworICAgcmVx dWVzdHNfaW5fZmxpZ2h0Xy5Mb29rdXAoa2V5KS0+U3RhcnQoCistLS0gYS9zcmMvM3JkcGFydHkv Y2hyb21pdW0vY29tcG9uZW50cy9zdXBlcnZpc2VkX3VzZXIvY29yZS9icm93c2VyL3Byb3RvX2Zl dGNoZXIuaAorKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL2NvbXBvbmVudHMvc3VwZXJ2aXNl ZF91c2VyL2NvcmUvYnJvd3Nlci9wcm90b19mZXRjaGVyLmgKK0BAIC0xNjUsMTAgKzE2NSwxMCBA QCBjbGFzcyBQYXJhbGxlbEZldGNoTWFuYWdlciB7CisgCisgICAvLyBTdGFydHMgdGhlIGZldGNo LiBVbmRlcmx5aW5nIGZldGNoZXIgaXMgc3RvcmVkIGludGVybmFsbHksIGFuZCB3aWxsIGJlCisg ICAvLyBjbGVhbmVkIHVwIGFmdGVyIGZpbmlzaCBvciB3aGVuIHRoaXMgbWFuYWdlciBpcyBkZXN0 cm95ZWQuCistICB2b2lkIEZldGNoKGNvbnN0IFJlcXVlc3QmIHJlcXVlc3QsIEZldGNoZXI6OkNh bGxiYWNrIGNhbGxiYWNrKTsKKysgIHZvaWQgRmV0Y2goY29uc3QgUmVxdWVzdCYgcmVxdWVzdCwg dHlwZW5hbWUgRmV0Y2hlcjo6Q2FsbGJhY2sgY2FsbGJhY2spOworIAorICBwcml2YXRlOgorLSAg dXNpbmcgS2V5VHlwZSA9IGJhc2U6OklETWFwPHN0ZDo6dW5pcXVlX3B0cjxGZXRjaGVyPj46Oktl eVR5cGU7CisrICB1c2luZyBLZXlUeXBlID0gdHlwZW5hbWUgYmFzZTo6SURNYXA8c3RkOjp1bmlx dWVfcHRyPEZldGNoZXI+Pjo6S2V5VHlwZTsKKyAKKyAgIC8vIFJlbW92ZSBmZXRjaGVyIHVuZGVy IGtleSBmcm9tIHJlcXVlc3RzX2luX2ZsaWdodF8uCisgICB2b2lkIFJlbW92ZShLZXlUeXBlIGtl eSk7CmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTExLWNocm9taXVtLWNz dGRpbnQucGF0Y2ggYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTExLWNocm9taXVtLWNzdGRp bnQucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGY1Nzg3NjIxYjU3OWNlLi4w MDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTExLWNocm9taXVt LWNzdGRpbnQucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwxMCArMCwwIEBACi0tLS0gcXQ2LXdl YmVuZ2luZS02LjQuMi5vcmlnL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9uZXQvdGhpcmRfcGFydHkv cXVpY2hlL3NyYy9xdWljaGUvaHR0cDIvYWRhcHRlci93aW5kb3dfbWFuYWdlci5oCi0rKysgcXQ2 LXdlYmVuZ2luZS02LjQuMi9zcmMvM3JkcGFydHkvY2hyb21pdW0vbmV0L3RoaXJkX3BhcnR5L3F1 aWNoZS9zcmMvcXVpY2hlL2h0dHAyL2FkYXB0ZXIvd2luZG93X21hbmFnZXIuaAotQEAgLTMsNiAr Myw3IEBACi0gCi0gI2luY2x1ZGUgPHN0ZGRlZi5oPgotIAotKyNpbmNsdWRlIDxjc3RkaW50Pgot ICNpbmNsdWRlIDxmdW5jdGlvbmFsPgotIAotICNpbmNsdWRlICJxdWljaGUvY29tbW9uL3BsYXRm b3JtL2FwaS9xdWljaGVfZXhwb3J0LmgiCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYvcGF0 Y2hlcy8wMTEyLWNocm9taXVtLTExOC1taXNzaW5nLWhlYWRlci1maWxlcy5wYXRjaCBiL3NyY3Br Z3MvcXQ2LXBkZi9wYXRjaGVzLzAxMTItY2hyb21pdW0tMTE4LW1pc3NpbmctaGVhZGVyLWZpbGVz LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwLi40Mzg2MWVh NzMyMTc1MgotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMTIt Y2hyb21pdW0tMTE4LW1pc3NpbmctaGVhZGVyLWZpbGVzLnBhdGNoCkBAIC0wLDAgKzEsMzc5IEBA CistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vYmFzZS9tZW1vcnkvcmVmX2NvdW50ZWQuaAor KysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL2Jhc2UvbWVtb3J5L3JlZl9jb3VudGVkLmgKK0BA IC02LDYgKzYsNyBAQAorICNkZWZpbmUgQkFTRV9NRU1PUllfUkVGX0NPVU5URURfSF8KKyAKKyAj aW5jbHVkZSA8c3RkZGVmLmg+CisrI2luY2x1ZGUgPGxpbWl0cz4KKyAKKyAjaW5jbHVkZSA8bGlt aXRzPgorICNpbmNsdWRlIDx1dGlsaXR5PgorLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL2Jh c2UvY2hlY2tfb3AuaAorKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL2Jhc2UvY2hlY2tfb3Au aAorQEAgLTUsNiArNSw3IEBACisgI2lmbmRlZiBCQVNFX0NIRUNLX09QX0hfCisgI2RlZmluZSBC QVNFX0NIRUNLX09QX0hfCisgCisrI2luY2x1ZGUgPGNzdGRpbnQ+CisgI2luY2x1ZGUgPGNzdGRk ZWY+CisgI2luY2x1ZGUgPHN0cmluZz4KKyAjaW5jbHVkZSA8c3RyaW5nX3ZpZXc+CistLS0gYS9z cmMvM3JkcGFydHkvY2hyb21pdW0vYmFzZS9kZWJ1Zy9wcm9maWxlci5oCisrKysgYi9zcmMvM3Jk cGFydHkvY2hyb21pdW0vYmFzZS9kZWJ1Zy9wcm9maWxlci5oCitAQCAtOCw2ICs4LDcgQEAKKyAj aW5jbHVkZSA8c3RkZGVmLmg+CisgI2luY2x1ZGUgPHN0ZGludC5oPgorIAorKyNpbmNsdWRlIDxj c3RkaW50PgorICNpbmNsdWRlIDxzdHJpbmc+CisgCisgI2luY2x1ZGUgImJhc2UvYmFzZV9leHBv cnQuaCIKKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9ncHUvY29uZmlnL2dwdV9mZWF0dXJl X2luZm8uaAorKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL2dwdS9jb25maWcvZ3B1X2ZlYXR1 cmVfaW5mby5oCitAQCAtNyw2ICs3LDcgQEAKKyAKKyAjaW5jbHVkZSA8c3RkaW50Lmg+CisgCisr I2luY2x1ZGUgPGNzdGRpbnQ+CisgI2luY2x1ZGUgPHN0cmluZz4KKyAjaW5jbHVkZSA8dmVjdG9y PgorIAorLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL25ldC9iYXNlL25ldF9leHBvcnQuaAor KysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL25ldC9iYXNlL25ldF9leHBvcnQuaAorQEAgLTUs NiArNSw4IEBACisgI2lmbmRlZiBORVRfQkFTRV9ORVRfRVhQT1JUX0hfCisgI2RlZmluZSBORVRf QkFTRV9ORVRfRVhQT1JUX0hfCisgCisrI2luY2x1ZGUgPGNzdGRpbnQ+CisrCisgLy8gRGVmaW5l cyBORVRfRVhQT1JUIHNvIHRoYXQgZnVuY3Rpb25hbGl0eSBpbXBsZW1lbnRlZCBieSB0aGUgbmV0 IG1vZHVsZSBjYW4KKyAvLyBiZSBleHBvcnRlZCB0byBjb25zdW1lcnMsIGFuZCBORVRfRVhQT1JU X1BSSVZBVEUgdGhhdCBhbGxvd3MgdW5pdCB0ZXN0cyB0bworIC8vIGFjY2VzcyBmZWF0dXJlcyBu b3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBieSByZWFsIGNvbnN1bWVycy4KKy0tLSBh L3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9zYW5kYm94L2xpbnV4L3N5c2NhbGxfYnJva2VyL2Jyb2tl cl9maWxlX3Blcm1pc3Npb24uaAorKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3NhbmRib3gv bGludXgvc3lzY2FsbF9icm9rZXIvYnJva2VyX2ZpbGVfcGVybWlzc2lvbi5oCitAQCAtNSw2ICs1 LDcgQEAKKyAjaWZuZGVmIFNBTkRCT1hfTElOVVhfU1lTQ0FMTF9CUk9LRVJfQlJPS0VSX0ZJTEVf UEVSTUlTU0lPTl9IXworICNkZWZpbmUgU0FOREJPWF9MSU5VWF9TWVNDQUxMX0JST0tFUl9CUk9L RVJfRklMRV9QRVJNSVNTSU9OX0hfCisgCisrI2luY2x1ZGUgPGNzdGRpbnQ+CisgI2luY2x1ZGUg PGJpdHNldD4KKyAjaW5jbHVkZSA8Y3N0ZGludD4KKyAjaW5jbHVkZSA8c3RyaW5nPgorLS0tIGEv c3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L2Fic2VpbC1jcHAvYWJzbC9zdHJpbmdz L3N0cmluZ192aWV3LmgKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS90aGlyZF9wYXJ0eS9h YnNlaWwtY3BwL2Fic2wvc3RyaW5ncy9zdHJpbmdfdmlldy5oCitAQCAtMjcsNiArMjcsNyBAQAor ICNpZm5kZWYgQUJTTF9TVFJJTkdTX1NUUklOR19WSUVXX0hfCisgI2RlZmluZSBBQlNMX1NUUklO R1NfU1RSSU5HX1ZJRVdfSF8KKyAKKysjaW5jbHVkZSA8Y3N0ZGludD4KKyAjaW5jbHVkZSA8YWxn b3JpdGhtPgorICNpbmNsdWRlIDxjYXNzZXJ0PgorICNpbmNsdWRlIDxjc3RkZGVmPgorLS0tIGEv c3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZ2xlL2luY2x1ZGUvR0xTTEFORy9T aGFkZXJWYXJzLmgKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS90aGlyZF9wYXJ0eS9hbmds ZS9pbmNsdWRlL0dMU0xBTkcvU2hhZGVyVmFycy5oCitAQCAtMTAsNiArMTAsNyBAQAorICNpZm5k ZWYgR0xTTEFOR19TSEFERVJWQVJTX0hfCisgI2RlZmluZSBHTFNMQU5HX1NIQURFUlZBUlNfSF8K KyAKKysjaW5jbHVkZSA8Y3N0ZGludD4KKyAjaW5jbHVkZSA8YWxnb3JpdGhtPgorICNpbmNsdWRl IDxhcnJheT4KKyAjaW5jbHVkZSA8Y3N0ZGludD4KKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1 bS90aGlyZF9wYXJ0eS9ibGluay9wdWJsaWMvY29tbW9uL2JsdWV0b290aC93ZWJfYmx1ZXRvb3Ro X2RldmljZV9pZC5oCisrKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFydHkvYmxp bmsvcHVibGljL2NvbW1vbi9ibHVldG9vdGgvd2ViX2JsdWV0b290aF9kZXZpY2VfaWQuaAorQEAg LTcsNiArNyw3IEBACisgCisgI2luY2x1ZGUgPHN0ZGludC5oPgorIAorKyNpbmNsdWRlIDxjc3Rk aW50PgorICNpbmNsdWRlIDxhcnJheT4KKyAjaW5jbHVkZSA8Y3N0ZGludD4KKyAjaW5jbHVkZSA8 ZnVuY3Rpb25hbD4KKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS90aGlyZF9wYXJ0eS9kYXdu L3NyYy90aW50L2xhbmcvc3BpcnYvcmVhZGVyL2FzdF9wYXJzZXIvbmFtZXIuaAorKysrIGIvc3Jj LzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L2Rhd24vc3JjL3RpbnQvbGFuZy9zcGlydi9y ZWFkZXIvYXN0X3BhcnNlci9uYW1lci5oCitAQCAtMTUsNiArMTUsNyBAQAorICNpZm5kZWYgU1JD X1RJTlRfTEFOR19TUElSVl9SRUFERVJfQVNUX1BBUlNFUl9OQU1FUl9IXworICNkZWZpbmUgU1JD X1RJTlRfTEFOR19TUElSVl9SRUFERVJfQVNUX1BBUlNFUl9OQU1FUl9IXworIAorKyNpbmNsdWRl IDxjc3RkaW50PgorICNpbmNsdWRlIDxzdHJpbmc+CisgI2luY2x1ZGUgPHVub3JkZXJlZF9tYXA+ CisgI2luY2x1ZGUgPHZlY3Rvcj4KKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS90aGlyZF9w YXJ0eS9vcGVuc2NyZWVuL3NyYy9kaXNjb3ZlcnkvZG5zc2QvcHVibGljL2Ruc19zZF90eHRfcmVj b3JkLmgKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS90aGlyZF9wYXJ0eS9vcGVuc2NyZWVu L3NyYy9kaXNjb3ZlcnkvZG5zc2QvcHVibGljL2Ruc19zZF90eHRfcmVjb3JkLmgKK0BAIC03LDYg KzcsNyBAQAorIAorICNpbmNsdWRlIDxzdGRpbnQuaD4KKyAKKysjaW5jbHVkZSA8Y3N0ZGludD4K KyAjaW5jbHVkZSA8ZnVuY3Rpb25hbD4KKyAjaW5jbHVkZSA8bWFwPgorICNpbmNsdWRlIDxzZXQ+ CistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFydHkvc3dpZnRzaGFkZXIvc3Jj L1N5c3RlbS9MUlVDYWNoZS5ocHAKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS90aGlyZF9w YXJ0eS9zd2lmdHNoYWRlci9zcmMvU3lzdGVtL0xSVUNhY2hlLmhwcAorQEAgLTE3LDYgKzE3LDcg QEAKKyAKKyAjaW5jbHVkZSAiU3lzdGVtL0RlYnVnLmhwcCIKKyAKKysjaW5jbHVkZSA8Y3N0ZGlu dD4KKyAjaW5jbHVkZSA8Y3N0ZGRlZj4KKyAjaW5jbHVkZSA8Y3N0ZGludD4KKyAjaW5jbHVkZSA8 ZnVuY3Rpb25hbD4KKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS91aS9nZngvZ2VvbWV0cnkv bGluZWFyX2dyYWRpZW50LmgKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS91aS9nZngvZ2Vv bWV0cnkvbGluZWFyX2dyYWRpZW50LmgKK0BAIC03LDYgKzcsNyBAQAorIAorICNpbmNsdWRlIDxz dGRpbnQuaD4KKyAKKysjaW5jbHVkZSA8Y3N0ZGludD4KKyAjaW5jbHVkZSA8YXJyYXk+CisgI2lu Y2x1ZGUgPGNzdGRkZWY+CisgI2luY2x1ZGUgPGNzdGRpbnQ+CistLS0gYS9zcmMvM3JkcGFydHkv Y2hyb21pdW0vdGhpcmRfcGFydHkvcnV5L3NyYy9ydXkvcHJvZmlsZXIvaW5zdHJ1bWVudGF0aW9u LmgKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS90aGlyZF9wYXJ0eS9ydXkvc3JjL3J1eS9w cm9maWxlci9pbnN0cnVtZW50YXRpb24uaAorQEAgLTE3LDYgKzE3LDcgQEAgbGltaXRhdGlvbnMg dW5kZXIgdGhlIExpY2Vuc2UuCisgI2RlZmluZSBSVVlfUlVZX1BST0ZJTEVSX0lOU1RSVU1FTlRB VElPTl9IXworIAorICNpZmRlZiBSVVlfUFJPRklMRVIKKysjaW5jbHVkZSA8c3RyaW5nPgorICNp bmNsdWRlIDxjc3RkaW8+CisgI2luY2x1ZGUgPG11dGV4PgorICNpbmNsdWRlIDx2ZWN0b3I+Cist LS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vYmFzZS9jb250YWluZXJzL2ZsYXRfbWFwLmgKKysr KyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9iYXNlL2NvbnRhaW5lcnMvZmxhdF9tYXAuaAorQEAg LTUsNiArNSw3IEBACisgI2lmbmRlZiBCQVNFX0NPTlRBSU5FUlNfRkxBVF9NQVBfSF8KKyAjZGVm aW5lIEJBU0VfQ09OVEFJTkVSU19GTEFUX01BUF9IXworIAorKyNpbmNsdWRlIDxjc3RkaW50Pgor ICNpbmNsdWRlIDxmdW5jdGlvbmFsPgorICNpbmNsdWRlIDx0dXBsZT4KKyAjaW5jbHVkZSA8dHlw ZV90cmFpdHM+CistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vY29tcG9uZW50cy9jcmFzaC9j b3JlL2FwcC9jcmFzaF9yZXBvcnRlcl9jbGllbnQuaAorKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9t aXVtL2NvbXBvbmVudHMvY3Jhc2gvY29yZS9hcHAvY3Jhc2hfcmVwb3J0ZXJfY2xpZW50LmgKK0BA IC03LDYgKzcsNyBAQAorIAorICNpbmNsdWRlIDxzdGRpbnQuaD4KKyAKKysjaW5jbHVkZSA8Y3N0 ZGludD4KKyAjaW5jbHVkZSA8c3RyaW5nPgorIAorICNpbmNsdWRlICJidWlsZC9idWlsZF9jb25m aWcuaCIKKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS91aS9iYXNlL3ByZWRpY3Rpb24va2Fs bWFuX2ZpbHRlci5oCisrKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vdWkvYmFzZS9wcmVkaWN0 aW9uL2thbG1hbl9maWx0ZXIuaAorQEAgLTcsNiArNyw4IEBACisgCisgI2luY2x1ZGUgPHN0ZGlu dC5oPgorIAorKyNpbmNsdWRlIDxjc3RkaW50PgorKworICNpbmNsdWRlICJiYXNlL2NvbXBvbmVu dF9leHBvcnQuaCIKKyAjaW5jbHVkZSAidWkvZ2Z4L2dlb21ldHJ5L21hdHJpeDNfZi5oIgorIAor LS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL2NvbXBvbmVudHMvcGFzc3dvcmRfbWFuYWdlci9j b3JlL2Jyb3dzZXIvZ2VuZXJhdGlvbi9wYXNzd29yZF9nZW5lcmF0b3IuaAorKysrIGIvc3JjLzNy ZHBhcnR5L2Nocm9taXVtL2NvbXBvbmVudHMvcGFzc3dvcmRfbWFuYWdlci9jb3JlL2Jyb3dzZXIv Z2VuZXJhdGlvbi9wYXNzd29yZF9nZW5lcmF0b3IuaAorQEAgLTcsNiArNyw3IEBACisgCisgI2lu Y2x1ZGUgPHN0ZGludC5oPgorIAorKyNpbmNsdWRlIDxjc3RkaW50PgorICNpbmNsdWRlIDxzdHJp bmc+CisgCisgCistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vY29tcG9uZW50cy9mZWF0dXJl X2VuZ2FnZW1lbnQvaW50ZXJuYWwvZXZlbnRfc3RvcmFnZV92YWxpZGF0b3IuaAorKysrIGIvc3Jj LzNyZHBhcnR5L2Nocm9taXVtL2NvbXBvbmVudHMvZmVhdHVyZV9lbmdhZ2VtZW50L2ludGVybmFs L2V2ZW50X3N0b3JhZ2VfdmFsaWRhdG9yLmgKK0BAIC03LDYgKzcsNyBAQAorIAorICNpbmNsdWRl IDxzdGRpbnQuaD4KKyAKKysjaW5jbHVkZSA8Y3N0ZGludD4KKyAjaW5jbHVkZSA8c3RyaW5nPgor IAorIG5hbWVzcGFjZSBmZWF0dXJlX2VuZ2FnZW1lbnQgeworLS0tIGEvc3JjLzNyZHBhcnR5L2No cm9taXVtL2NvbXBvbmVudHMvZmVhdHVyZV9lbmdhZ2VtZW50L2ludGVybmFsL25ldmVyX2V2ZW50 X3N0b3JhZ2VfdmFsaWRhdG9yLmgKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9jb21wb25l bnRzL2ZlYXR1cmVfZW5nYWdlbWVudC9pbnRlcm5hbC9uZXZlcl9ldmVudF9zdG9yYWdlX3ZhbGlk YXRvci5oCitAQCAtNSw2ICs1LDcgQEAKKyAjaWZuZGVmIENPTVBPTkVOVFNfRkVBVFVSRV9FTkdB R0VNRU5UX0lOVEVSTkFMX05FVkVSX0VWRU5UX1NUT1JBR0VfVkFMSURBVE9SX0hfCisgI2RlZmlu ZSBDT01QT05FTlRTX0ZFQVRVUkVfRU5HQUdFTUVOVF9JTlRFUk5BTF9ORVZFUl9FVkVOVF9TVE9S QUdFX1ZBTElEQVRPUl9IXworIAorKyNpbmNsdWRlIDxjc3RkaW50PgorICNpbmNsdWRlIDxzdHJp bmc+CisgCisgI2luY2x1ZGUgImNvbXBvbmVudHMvZmVhdHVyZV9lbmdhZ2VtZW50L2ludGVybmFs L2V2ZW50X3N0b3JhZ2VfdmFsaWRhdG9yLmgiCistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0v Y29tcG9uZW50cy9hdXRvZmlsbC9jb3JlL2Jyb3dzZXIvYXV0b2ZpbGxfYWJsYXRpb25fc3R1ZHku aAorKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL2NvbXBvbmVudHMvYXV0b2ZpbGwvY29yZS9i cm93c2VyL2F1dG9maWxsX2FibGF0aW9uX3N0dWR5LmgKK0BAIC03LDYgKzcsNyBAQAorIAorICNp bmNsdWRlIDxzdGRpbnQuaD4KKyAKKysjaW5jbHVkZSA8Y3N0ZGludD4KKyAjaW5jbHVkZSA8c3Ry aW5nPgorIAorIGNsYXNzIEdVUkw7CistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vY29tcG9u ZW50cy9wYXltZW50cy9jb250ZW50L3V0aWxpdHkvZmluZ2VycHJpbnRfcGFyc2VyLmgKKysrKyBi L3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9jb21wb25lbnRzL3BheW1lbnRzL2NvbnRlbnQvdXRpbGl0 eS9maW5nZXJwcmludF9wYXJzZXIuaAorQEAgLTUsNiArNSw3IEBACisgI2lmbmRlZiBDT01QT05F TlRTX1BBWU1FTlRTX0NPTlRFTlRfVVRJTElUWV9GSU5HRVJQUklOVF9QQVJTRVJfSF8KKyAjZGVm aW5lIENPTVBPTkVOVFNfUEFZTUVOVFNfQ09OVEVOVF9VVElMSVRZX0ZJTkdFUlBSSU5UX1BBUlNF Ul9IXworIAorKyNpbmNsdWRlIDxjc3RkaW50PgorICNpbmNsdWRlIDxzdGRkZWYuaD4KKyAjaW5j bHVkZSA8c3RkaW50Lmg+CisgCistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vcGRmL2RvY3Vt ZW50X2F0dGFjaG1lbnRfaW5mby5oCisrKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vcGRmL2Rv Y3VtZW50X2F0dGFjaG1lbnRfaW5mby5oCitAQCAtNyw2ICs3LDcgQEAKKyAKKyAjaW5jbHVkZSA8 c3RkaW50Lmg+CisgCisrI2luY2x1ZGUgPGNzdGRpbnQ+CisgI2luY2x1ZGUgPHN0cmluZz4KKyAK KyAKKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS90aGlyZF9wYXJ0eS9wZGZpdW0vY29uc3Rh bnRzL2Fubm90YXRpb25fZmxhZ3MuaAorKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJk X3BhcnR5L3BkZml1bS9jb25zdGFudHMvYW5ub3RhdGlvbl9mbGFncy5oCitAQCAtNyw2ICs3LDgg QEAKKyAKKyAjaW5jbHVkZSA8c3RkaW50Lmg+CisgCisrI2luY2x1ZGUgPGNzdGRpbnQ+CisrCisg bmFtZXNwYWNlIHBkZml1bSB7CisgbmFtZXNwYWNlIGFubm90YXRpb25fZmxhZ3MgeworIAorLS0t IGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L3Z1bGthbi1kZXBzL3Z1bGthbi12 YWxpZGF0aW9uLWxheWVycy9zcmMvbGF5ZXJzL2V4dGVybmFsL3ZtYS92a19tZW1fYWxsb2MuaAor KysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L3Z1bGthbi1kZXBzL3Z1bGth bi12YWxpZGF0aW9uLWxheWVycy9zcmMvbGF5ZXJzL2V4dGVybmFsL3ZtYS92a19tZW1fYWxsb2Mu aAorQEAgLTI4ODQsNiArMjg4NCw3IEBAIHN0YXRpYyB2b2lkIHZtYV9hbGlnbmVkX2ZyZWUodm9p ZCogVk1BX04KKyAKKyAvLyBEZWZpbmUgdGhpcyBtYWNybyB0byAxIHRvIGVuYWJsZSBmdW5jdGlv bnM6IHZtYUJ1aWxkU3RhdHNTdHJpbmcsIHZtYUZyZWVTdGF0c1N0cmluZy4KKyAjaWYgVk1BX1NU QVRTX1NUUklOR19FTkFCTEVECisrI2luY2x1ZGUgPHN0ZGlvLmg+CisgICAgIHN0YXRpYyBpbmxp bmUgdm9pZCBWbWFVaW50MzJUb1N0cihjaGFyKiBWTUFfTk9UX05VTEwgb3V0U3RyLCBzaXplX3Qg c3RyTGVuLCB1aW50MzJfdCBudW0pCisgICAgIHsKKyAgICAgICAgIHNucHJpbnRmKG91dFN0ciwg c3RyTGVuLCAiJXUiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZCBpbnQ+KG51bSkpOworLS0tIGEvc3Jj LzNyZHBhcnR5L2Nocm9taXVtL2dpbi90aW1lX2NsYW1wZXIuaAorKysrIGIvc3JjLzNyZHBhcnR5 L2Nocm9taXVtL2dpbi90aW1lX2NsYW1wZXIuaAorQEAgLTQ4LDcgKzQ4LDcgQEAgY2xhc3MgR0lO X0VYUE9SVCBUaW1lQ2xhbXBlciB7CisgICAgIGNvbnN0IGludDY0X3QgbWljcm9zID0gbm93X21p Y3JvcyAlIDEwMDA7CisgICAgIC8vIGFicygpIGlzIG5lY2Vzc2FyeSBmb3IgZGV2aWNlcyB3aXRo IHRpbWVzIGJlZm9yZSB1bml4LWVwb2NoIChtb3N0IGxpa2VseQorICAgICAvLyBjb25maWd1cmVk IGluY29ycmVjdGx5KS4KKy0gICAgaWYgKGFicyhtaWNyb3MpICsga1Jlc29sdXRpb25NaWNyb3Mg PCAxMDAwKSB7CisrICAgIGlmIChzdGQ6OmFicyhtaWNyb3MpICsga1Jlc29sdXRpb25NaWNyb3Mg PCAxMDAwKSB7CisgICAgICAgcmV0dXJuIG5vd19taWNyb3MgLyAxMDAwOworICAgICB9CisgICAg IHJldHVybiBDbGFtcFRpbWVSZXNvbHV0aW9uKG5vd19taWNyb3MpIC8gMTAwMDsKKy0tLSBhL3Ny Yy8zcmRwYXJ0eS9jaHJvbWl1bS9jaHJvbWUvdGVzdC9jaHJvbWVkcml2ZXIvY2hyb21lL3dlYl92 aWV3X2ltcGwuY2MKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9jaHJvbWUvdGVzdC9jaHJv bWVkcml2ZXIvY2hyb21lL3dlYl92aWV3X2ltcGwuY2MKK0BAIC0xMSw2ICsxMSw3IEBACisgI2lu Y2x1ZGUgPHF1ZXVlPgorICNpbmNsdWRlIDx1dGlsaXR5PgorICNpbmNsdWRlIDx2ZWN0b3I+Cisr I2luY2x1ZGUgPGNzdHJpbmc+CisgCisgI2luY2x1ZGUgImJhc2UvY2hlY2suaCIKKyAjaW5jbHVk ZSAiYmFzZS9maWxlcy9maWxlX3BhdGguaCIKKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9z a2lhL2V4dC9za2NvbG9yc3BhY2VfdHJmbi5jYworKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVt L3NraWEvZXh0L3NrY29sb3JzcGFjZV90cmZuLmNjCitAQCAtMyw2ICszLDcgQEAKKyAvLyBmb3Vu ZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorIAorICNpbmNsdWRlICJza2lhL2V4dC9za2NvbG9yc3Bh Y2VfdHJmbi5oIgorKyNpbmNsdWRlIDxjbWF0aD4KKyAKKyAjaW5jbHVkZSA8Y21hdGg+CisgCist LS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFydHkvd2VicnRjL2NvbW1vbl92aWRl by9oMjY0L3Nwc19wYXJzZXIuaAorKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3Bh cnR5L3dlYnJ0Yy9jb21tb25fdmlkZW8vaDI2NC9zcHNfcGFyc2VyLmgKK0BAIC0xMSw2ICsxMSw3 IEBACisgI2lmbmRlZiBDT01NT05fVklERU9fSDI2NF9TUFNfUEFSU0VSX0hfCisgI2RlZmluZSBD T01NT05fVklERU9fSDI2NF9TUFNfUEFSU0VSX0hfCisgCisrI2luY2x1ZGUgPGNzdGRpbnQ+Cisg I2luY2x1ZGUgImFic2wvdHlwZXMvb3B0aW9uYWwuaCIKKyAjaW5jbHVkZSAicnRjX2Jhc2UvYml0 c3RyZWFtX3JlYWRlci5oIgorIAorLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3Bh cnR5L3dlYnJ0Yy9tb2R1bGVzL2luY2x1ZGUvbW9kdWxlX2NvbW1vbl90eXBlc19wdWJsaWMuaAor KysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L3dlYnJ0Yy9tb2R1bGVzL2lu Y2x1ZGUvbW9kdWxlX2NvbW1vbl90eXBlc19wdWJsaWMuaAorQEAgLTExLDYgKzExLDcgQEAKKyAj aWZuZGVmIE1PRFVMRVNfSU5DTFVERV9NT0RVTEVfQ09NTU9OX1RZUEVTX1BVQkxJQ19IXworICNk ZWZpbmUgTU9EVUxFU19JTkNMVURFX01PRFVMRV9DT01NT05fVFlQRVNfUFVCTElDX0hfCisgCisr I2luY2x1ZGUgPGNzdGRpbnQ+CisgI2luY2x1ZGUgPGxpbWl0cz4KKyAKKyAjaW5jbHVkZSAiYWJz bC90eXBlcy9vcHRpb25hbC5oIgorLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3VpL2dmeC9s aW51eC9kcm1fdXRpbF9saW51eC5oCisrKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vdWkvZ2Z4 L2xpbnV4L2RybV91dGlsX2xpbnV4LmgKK0BAIC05LDYgKzksOCBAQAorIAorICNpbmNsdWRlICJ1 aS9nZngvYnVmZmVyX3R5cGVzLmgiCisgCisrI2luY2x1ZGUgPGNzdGRpbnQ+CisrCisgbmFtZXNw YWNlIHVpIHsKKyAKKyBpbnQgR2V0Rm91ckNDRm9ybWF0RnJvbUJ1ZmZlckZvcm1hdChnZng6OkJ1 ZmZlckZvcm1hdCBmb3JtYXQpOworLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3Bh cnR5L3dlYnJ0Yy9hdWRpby91dGlsaXR5L2NoYW5uZWxfbWl4ZXIuY2MKKysrKyBiL3NyYy8zcmRw YXJ0eS9jaHJvbWl1bS90aGlyZF9wYXJ0eS93ZWJydGMvYXVkaW8vdXRpbGl0eS9jaGFubmVsX21p eGVyLmNjCitAQCAtOCw2ICs4LDggQEAKKyAgKiAgYmUgZm91bmQgaW4gdGhlIEFVVEhPUlMgZmls ZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisgICovCisgCisrI2luY2x1ZGUgPGNz dHJpbmc+CisrCisgI2luY2x1ZGUgImF1ZGlvL3V0aWxpdHkvY2hhbm5lbF9taXhlci5oIgorIAor ICNpbmNsdWRlICJhdWRpby91dGlsaXR5L2NoYW5uZWxfbWl4aW5nX21hdHJpeC5oIgorLS0tIGEv c3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L3dlYnJ0Yy9tb2R1bGVzL3ZpZGVvX2Nv ZGluZy91dGlsaXR5L2l2Zl9maWxlX3JlYWRlci5jYworKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9t aXVtL3RoaXJkX3BhcnR5L3dlYnJ0Yy9tb2R1bGVzL3ZpZGVvX2NvZGluZy91dGlsaXR5L2l2Zl9m aWxlX3JlYWRlci5jYworQEAgLTEwLDYgKzEwLDcgQEAKKyAKKyAjaW5jbHVkZSAibW9kdWxlcy92 aWRlb19jb2RpbmcvdXRpbGl0eS9pdmZfZmlsZV9yZWFkZXIuaCIKKyAKKysjaW5jbHVkZSA8Y3N0 cmluZz4KKyAjaW5jbHVkZSA8c3RyaW5nPgorICNpbmNsdWRlIDx2ZWN0b3I+CisgCistLS0gYS9z cmMvM3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFydHkvaXBjei9zcmMvaXBjei9yb3V0ZXJfbGlu ay5oCisrKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFydHkvaXBjei9zcmMvaXBj ei9yb3V0ZXJfbGluay5oCitAQCAtNSw2ICs1LDcgQEAKKyAjaWZuZGVmIElQQ1pfU1JDX0lQQ1pf Uk9VVEVSX0xJTktfSF8KKyAjZGVmaW5lIElQQ1pfU1JDX0lQQ1pfUk9VVEVSX0xJTktfSF8KKyAK KysjaW5jbHVkZSA8bWVtb3J5PgorICNpbmNsdWRlIDxjc3RkZGVmPgorICNpbmNsdWRlIDxmdW5j dGlvbmFsPgorICNpbmNsdWRlIDxtZW1vcnk+CistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0v dGhpcmRfcGFydHkvbWF0ZXJpYWxfY29sb3JfdXRpbGl0aWVzL3NyYy9jcHAvcGFsZXR0ZXMvdG9u ZXMuY2MKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS90aGlyZF9wYXJ0eS9tYXRlcmlhbF9j b2xvcl91dGlsaXRpZXMvc3JjL2NwcC9wYWxldHRlcy90b25lcy5jYworQEAgLTE0LDYgKzE0LDcg QEAKKyAgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAgKi8KKyAKKysjaW5jbHVk ZSA8Y21hdGg+CisgI2luY2x1ZGUgImNwcC9wYWxldHRlcy90b25lcy5oIgorIAorICNpbmNsdWRl IDxjbWF0aD4KKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9zZXJ2aWNlcy9kZXZpY2UvcHVi bGljL2NwcC9nZW5lcmljX3NlbnNvci9zZW5zb3JfcmVhZGluZy5oCisrKysgYi9zcmMvM3JkcGFy dHkvY2hyb21pdW0vc2VydmljZXMvZGV2aWNlL3B1YmxpYy9jcHAvZ2VuZXJpY19zZW5zb3Ivc2Vu c29yX3JlYWRpbmcuaAorQEAgLTgsNiArOCw5IEBACisgI2luY2x1ZGUgPHN0ZGRlZi5oPgorICNp bmNsdWRlIDxzdGRpbnQuaD4KKyAKKysjaW5jbHVkZSA8Y3N0ZGRlZj4KKysjaW5jbHVkZSA8Y3N0 ZGludD4KKysKKyAjaW5jbHVkZSA8dHlwZV90cmFpdHM+CisgCisgbmFtZXNwYWNlIGRldmljZSB7 CistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vY29tcG9uZW50cy9nd3BfYXNhbi9jbGllbnQv bGlnaHR3ZWlnaHRfZGV0ZWN0b3IuaAorKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL2NvbXBv bmVudHMvZ3dwX2FzYW4vY2xpZW50L2xpZ2h0d2VpZ2h0X2RldGVjdG9yLmgKK0BAIC01LDYgKzUs OCBAQAorICNpZm5kZWYgQ09NUE9ORU5UU19HV1BfQVNBTl9DTElFTlRfTElHSFRXRUlHSFRfREVU RUNUT1JfSF8KKyAjZGVmaW5lIENPTVBPTkVOVFNfR1dQX0FTQU5fQ0xJRU5UX0xJR0hUV0VJR0hU X0RFVEVDVE9SX0hfCisgCisrI2luY2x1ZGUgPGF0b21pYz4KKysKKyAjaW5jbHVkZSAiYmFzZS9n dGVzdF9wcm9kX3V0aWwuaCIKKyAjaW5jbHVkZSAiY29tcG9uZW50cy9nd3BfYXNhbi9jbGllbnQv ZXhwb3J0LmgiCisgI2luY2x1ZGUgImNvbXBvbmVudHMvZ3dwX2FzYW4vY29tbW9uL2xpZ2h0d2Vp Z2h0X2RldGVjdG9yX3N0YXRlLmgiCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hl cy8wMTEzLWNocm9taXVtLTExOC1ub19tYXRjaGluZ19jb25zdHJ1Y3Rvci5wYXRjaCBiL3NyY3Br Z3MvcXQ2LXBkZi9wYXRjaGVzLzAxMTMtY2hyb21pdW0tMTE4LW5vX21hdGNoaW5nX2NvbnN0cnVj dG9yLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwLi45Nzky NmRhYThjYTBlZgotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAx MTMtY2hyb21pdW0tMTE4LW5vX21hdGNoaW5nX2NvbnN0cnVjdG9yLnBhdGNoCkBAIC0wLDAgKzEs NDEwIEBACistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vdWkvYmFzZS93YXlsYW5kL2NvbG9y X21hbmFnZXJfdXRpbC5oCisrKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vdWkvYmFzZS93YXls YW5kL2NvbG9yX21hbmFnZXJfdXRpbC5oCitAQCAtNTIsNTMgKzUyLDUzIEBAIGNvbnN0ZXhwciBh dXRvIGtDaHJvbWF0aWNpdHlNYXAgPSBiYXNlOjoKKyAgICAgemNyX2NvbG9yX21hbmFnZXJfdjFf Y2hyb21hdGljaXR5X25hbWVzLAorICAgICBQcmltYXJ5VmVyc2lvbj4oCisgICAgIHt7WkNSX0NP TE9SX01BTkFHRVJfVjFfQ0hST01BVElDSVRZX05BTUVTX0JUNjAxXzUyNV9MSU5FLAorLSAgICAg IFByaW1hcnlWZXJzaW9uKGdmeDo6Q29sb3JTcGFjZTo6UHJpbWFyeUlEOjpTTVBURTE3ME0sCist ICAgICAgICAgICAgICAgICAgICAga0RlZmF1bHRTaW5jZVZlcnNpb24pfSwKKysgICAgICBQcmlt YXJ5VmVyc2lvbntnZng6OkNvbG9yU3BhY2U6OlByaW1hcnlJRDo6U01QVEUxNzBNLAorKyAgICAg ICAgICAgICAgICAgICAgIGtEZWZhdWx0U2luY2VWZXJzaW9ufX0sCisgICAgICB7WkNSX0NPTE9S X01BTkFHRVJfVjFfQ0hST01BVElDSVRZX05BTUVTX0JUNjAxXzYyNV9MSU5FLAorLSAgICAgIFBy aW1hcnlWZXJzaW9uKGdmeDo6Q29sb3JTcGFjZTo6UHJpbWFyeUlEOjpCVDQ3MEJHLAorLSAgICAg ICAgICAgICAgICAgICAgIGtEZWZhdWx0U2luY2VWZXJzaW9uKX0sCisrICAgICAgUHJpbWFyeVZl cnNpb257Z2Z4OjpDb2xvclNwYWNlOjpQcmltYXJ5SUQ6OkJUNDcwQkcsCisrICAgICAgICAgICAg ICAgICAgICAga0RlZmF1bHRTaW5jZVZlcnNpb259fSwKKyAgICAgIHtaQ1JfQ09MT1JfTUFOQUdF Ul9WMV9DSFJPTUFUSUNJVFlfTkFNRVNfU01QVEUxNzBNLAorLSAgICAgIFByaW1hcnlWZXJzaW9u KGdmeDo6Q29sb3JTcGFjZTo6UHJpbWFyeUlEOjpTTVBURTE3ME0sCistICAgICAgICAgICAgICAg ICAgICAga0RlZmF1bHRTaW5jZVZlcnNpb24pfSwKKysgICAgICBQcmltYXJ5VmVyc2lvbntnZng6 OkNvbG9yU3BhY2U6OlByaW1hcnlJRDo6U01QVEUxNzBNLAorKyAgICAgICAgICAgICAgICAgICAg IGtEZWZhdWx0U2luY2VWZXJzaW9ufX0sCisgICAgICB7WkNSX0NPTE9SX01BTkFHRVJfVjFfQ0hS T01BVElDSVRZX05BTUVTX0JUNzA5LAorLSAgICAgIFByaW1hcnlWZXJzaW9uKGdmeDo6Q29sb3JT cGFjZTo6UHJpbWFyeUlEOjpCVDcwOSwga0RlZmF1bHRTaW5jZVZlcnNpb24pfSwKKysgICAgICBQ cmltYXJ5VmVyc2lvbntnZng6OkNvbG9yU3BhY2U6OlByaW1hcnlJRDo6QlQ3MDksIGtEZWZhdWx0 U2luY2VWZXJzaW9ufX0sCisgICAgICB7WkNSX0NPTE9SX01BTkFHRVJfVjFfQ0hST01BVElDSVRZ X05BTUVTX0JUMjAyMCwKKy0gICAgICBQcmltYXJ5VmVyc2lvbihnZng6OkNvbG9yU3BhY2U6OlBy aW1hcnlJRDo6QlQyMDIwLCBrRGVmYXVsdFNpbmNlVmVyc2lvbil9LAorKyAgICAgIFByaW1hcnlW ZXJzaW9ue2dmeDo6Q29sb3JTcGFjZTo6UHJpbWFyeUlEOjpCVDIwMjAsIGtEZWZhdWx0U2luY2VW ZXJzaW9ufX0sCisgICAgICB7WkNSX0NPTE9SX01BTkFHRVJfVjFfQ0hST01BVElDSVRZX05BTUVT X1NSR0IsCistICAgICAgUHJpbWFyeVZlcnNpb24oZ2Z4OjpDb2xvclNwYWNlOjpQcmltYXJ5SUQ6 OkJUNzA5LCBrRGVmYXVsdFNpbmNlVmVyc2lvbil9LAorKyAgICAgIFByaW1hcnlWZXJzaW9ue2dm eDo6Q29sb3JTcGFjZTo6UHJpbWFyeUlEOjpCVDcwOSwga0RlZmF1bHRTaW5jZVZlcnNpb259fSwK KyAgICAgIHtaQ1JfQ09MT1JfTUFOQUdFUl9WMV9DSFJPTUFUSUNJVFlfTkFNRVNfRElTUExBWVAz LAorLSAgICAgIFByaW1hcnlWZXJzaW9uKGdmeDo6Q29sb3JTcGFjZTo6UHJpbWFyeUlEOjpQMywg a0RlZmF1bHRTaW5jZVZlcnNpb24pfSwKKysgICAgICBQcmltYXJ5VmVyc2lvbntnZng6OkNvbG9y U3BhY2U6OlByaW1hcnlJRDo6UDMsIGtEZWZhdWx0U2luY2VWZXJzaW9ufX0sCisgICAgICB7WkNS X0NPTE9SX01BTkFHRVJfVjFfQ0hST01BVElDSVRZX05BTUVTX0FET0JFUkdCLAorLSAgICAgIFBy aW1hcnlWZXJzaW9uKGdmeDo6Q29sb3JTcGFjZTo6UHJpbWFyeUlEOjpBRE9CRV9SR0IsCistICAg ICAgICAgICAgICAgICAgICAga0RlZmF1bHRTaW5jZVZlcnNpb24pfSwKKysgICAgICBQcmltYXJ5 VmVyc2lvbntnZng6OkNvbG9yU3BhY2U6OlByaW1hcnlJRDo6QURPQkVfUkdCLAorKyAgICAgICAg ICAgICAgICAgICAgIGtEZWZhdWx0U2luY2VWZXJzaW9ufX0sCisgICAgICB7WkNSX0NPTE9SX01B TkFHRVJfVjFfQ0hST01BVElDSVRZX05BTUVTX1dJREVfR0FNVVRfQ09MT1JfU1BJTiwKKy0gICAg ICBQcmltYXJ5VmVyc2lvbigKKysgICAgICBQcmltYXJ5VmVyc2lvbnsKKyAgICAgICAgICAgZ2Z4 OjpDb2xvclNwYWNlOjpQcmltYXJ5SUQ6OldJREVfR0FNVVRfQ09MT1JfU1BJTiwKKy0gICAgICAg ICAgWkNSX0NPTE9SX01BTkFHRVJfVjFfQ0hST01BVElDSVRZX05BTUVTX1dJREVfR0FNVVRfQ09M T1JfU1BJTl9TSU5DRV9WRVJTSU9OKX0sCisrICAgICAgICAgIFpDUl9DT0xPUl9NQU5BR0VSX1Yx X0NIUk9NQVRJQ0lUWV9OQU1FU19XSURFX0dBTVVUX0NPTE9SX1NQSU5fU0lOQ0VfVkVSU0lPTn19 LAorICAgICAge1pDUl9DT0xPUl9NQU5BR0VSX1YxX0NIUk9NQVRJQ0lUWV9OQU1FU19CVDQ3ME0s CistICAgICAgUHJpbWFyeVZlcnNpb24oCisrICAgICAgUHJpbWFyeVZlcnNpb257CisgICAgICAg ICAgIGdmeDo6Q29sb3JTcGFjZTo6UHJpbWFyeUlEOjpCVDQ3ME0sCistICAgICAgICAgIFpDUl9D T0xPUl9NQU5BR0VSX1YxX0NIUk9NQVRJQ0lUWV9OQU1FU19CVDQ3ME1fU0lOQ0VfVkVSU0lPTil9 LAorKyAgICAgICAgICBaQ1JfQ09MT1JfTUFOQUdFUl9WMV9DSFJPTUFUSUNJVFlfTkFNRVNfQlQ0 NzBNX1NJTkNFX1ZFUlNJT059fSwKKyAgICAgIHtaQ1JfQ09MT1JfTUFOQUdFUl9WMV9DSFJPTUFU SUNJVFlfTkFNRVNfU01QVEUyNDBNLAorLSAgICAgIFByaW1hcnlWZXJzaW9uKAorKyAgICAgIFBy aW1hcnlWZXJzaW9ueworICAgICAgICAgICBnZng6OkNvbG9yU3BhY2U6OlByaW1hcnlJRDo6U01Q VEUyNDBNLAorLSAgICAgICAgICBaQ1JfQ09MT1JfTUFOQUdFUl9WMV9DSFJPTUFUSUNJVFlfTkFN RVNfU01QVEUyNDBNX1NJTkNFX1ZFUlNJT04pfSwKKysgICAgICAgICAgWkNSX0NPTE9SX01BTkFH RVJfVjFfQ0hST01BVElDSVRZX05BTUVTX1NNUFRFMjQwTV9TSU5DRV9WRVJTSU9OfX0sCisgICAg ICB7WkNSX0NPTE9SX01BTkFHRVJfVjFfQ0hST01BVElDSVRZX05BTUVTX1hZWl9ENTAsCistICAg ICAgUHJpbWFyeVZlcnNpb24oCisrICAgICAgUHJpbWFyeVZlcnNpb257CisgICAgICAgICAgIGdm eDo6Q29sb3JTcGFjZTo6UHJpbWFyeUlEOjpYWVpfRDUwLAorLSAgICAgICAgICBaQ1JfQ09MT1Jf TUFOQUdFUl9WMV9DSFJPTUFUSUNJVFlfTkFNRVNfWFlaX0Q1MF9TSU5DRV9WRVJTSU9OKX0sCisr ICAgICAgICAgIFpDUl9DT0xPUl9NQU5BR0VSX1YxX0NIUk9NQVRJQ0lUWV9OQU1FU19YWVpfRDUw X1NJTkNFX1ZFUlNJT059fSwKKyAgICAgIHtaQ1JfQ09MT1JfTUFOQUdFUl9WMV9DSFJPTUFUSUNJ VFlfTkFNRVNfU01QVEVTVDQyOF8xLAorLSAgICAgIFByaW1hcnlWZXJzaW9uKAorKyAgICAgIFBy aW1hcnlWZXJzaW9ueworICAgICAgICAgICBnZng6OkNvbG9yU3BhY2U6OlByaW1hcnlJRDo6U01Q VEVTVDQyOF8xLAorLSAgICAgICAgICBaQ1JfQ09MT1JfTUFOQUdFUl9WMV9DSFJPTUFUSUNJVFlf TkFNRVNfU01QVEVTVDQyOF8xX1NJTkNFX1ZFUlNJT04pfSwKKysgICAgICAgICAgWkNSX0NPTE9S X01BTkFHRVJfVjFfQ0hST01BVElDSVRZX05BTUVTX1NNUFRFU1Q0MjhfMV9TSU5DRV9WRVJTSU9O fX0sCisgICAgICB7WkNSX0NPTE9SX01BTkFHRVJfVjFfQ0hST01BVElDSVRZX05BTUVTX1NNUFRF U1Q0MzFfMiwKKy0gICAgICBQcmltYXJ5VmVyc2lvbigKKysgICAgICBQcmltYXJ5VmVyc2lvbnsK KyAgICAgICAgICAgZ2Z4OjpDb2xvclNwYWNlOjpQcmltYXJ5SUQ6OlNNUFRFU1Q0MzFfMiwKKy0g ICAgICAgICAgWkNSX0NPTE9SX01BTkFHRVJfVjFfQ0hST01BVElDSVRZX05BTUVTX1NNUFRFU1Q0 MzFfMl9TSU5DRV9WRVJTSU9OKX0sCisrICAgICAgICAgIFpDUl9DT0xPUl9NQU5BR0VSX1YxX0NI Uk9NQVRJQ0lUWV9OQU1FU19TTVBURVNUNDMxXzJfU0lOQ0VfVkVSU0lPTn19LAorICAgICAge1pD Ul9DT0xPUl9NQU5BR0VSX1YxX0NIUk9NQVRJQ0lUWV9OQU1FU19GSUxNLAorLSAgICAgIFByaW1h cnlWZXJzaW9uKAorKyAgICAgIFByaW1hcnlWZXJzaW9ueworICAgICAgICAgICBnZng6OkNvbG9y U3BhY2U6OlByaW1hcnlJRDo6RklMTSwKKy0gICAgICAgICAgWkNSX0NPTE9SX01BTkFHRVJfVjFf Q0hST01BVElDSVRZX05BTUVTX0ZJTE1fU0lOQ0VfVkVSU0lPTil9fSk7CisrICAgICAgICAgIFpD Ul9DT0xPUl9NQU5BR0VSX1YxX0NIUk9NQVRJQ0lUWV9OQU1FU19GSUxNX1NJTkNFX1ZFUlNJT059 fX0pOworIAorIC8vIEEgbWFwIGZyb20gdGhlIHpjcl9jb2xvcl9tYW5hZ2VyX3YxIGVvdGZfbmFt ZXMgZW51bSB2YWx1ZXMKKyAvLyByZXByZXNlbnRpbmcgd2VsbC1rbm93biBFT1RGcywgdG8gdGhl aXIgZXF1aXZhbGVudCBUcmFuc2ZlcklEcy4KK0BAIC0xMDcsNjUgKzEwNyw2NSBAQCBjb25zdGV4 cHIgYXV0byBrRW90Zk1hcCA9IGJhc2U6Ok1ha2VGaXhlCisgICAgIHpjcl9jb2xvcl9tYW5hZ2Vy X3YxX2VvdGZfbmFtZXMsCisgICAgIFRyYW5zZmVyVmVyc2lvbj4oeworICAgICB7WkNSX0NPTE9S X01BTkFHRVJfVjFfRU9URl9OQU1FU19MSU5FQVIsCistICAgICBUcmFuc2ZlclZlcnNpb24oZ2Z4 OjpDb2xvclNwYWNlOjpUcmFuc2ZlcklEOjpMSU5FQVIsCistICAgICAgICAgICAgICAgICAgICAg a0RlZmF1bHRTaW5jZVZlcnNpb24pfSwKKysgICAgIFRyYW5zZmVyVmVyc2lvbntnZng6OkNvbG9y U3BhY2U6OlRyYW5zZmVySUQ6OkxJTkVBUiwKKysgICAgICAgICAgICAgICAgICAgICBrRGVmYXVs dFNpbmNlVmVyc2lvbn19LAorICAgICB7WkNSX0NPTE9SX01BTkFHRVJfVjFfRU9URl9OQU1FU19T UkdCLAorLSAgICAgVHJhbnNmZXJWZXJzaW9uKGdmeDo6Q29sb3JTcGFjZTo6VHJhbnNmZXJJRDo6 U1JHQiwga0RlZmF1bHRTaW5jZVZlcnNpb24pfSwKKysgICAgIFRyYW5zZmVyVmVyc2lvbntnZng6 OkNvbG9yU3BhY2U6OlRyYW5zZmVySUQ6OlNSR0IsIGtEZWZhdWx0U2luY2VWZXJzaW9ufX0sCisg ICAgIHtaQ1JfQ09MT1JfTUFOQUdFUl9WMV9FT1RGX05BTUVTX0JUNzA5LAorLSAgICAgVHJhbnNm ZXJWZXJzaW9uKGdmeDo6Q29sb3JTcGFjZTo6VHJhbnNmZXJJRDo6QlQ3MDksCistICAgICAgICAg ICAgICAgICAgICAgWkNSX0NPTE9SX01BTkFHRVJfVjFfRU9URl9OQU1FU19CVDcwOV9TSU5DRV9W RVJTSU9OKX0sCisrICAgICBUcmFuc2ZlclZlcnNpb257Z2Z4OjpDb2xvclNwYWNlOjpUcmFuc2Zl cklEOjpCVDcwOSwKKysgICAgICAgICAgICAgICAgICAgICBaQ1JfQ09MT1JfTUFOQUdFUl9WMV9F T1RGX05BTUVTX0JUNzA5X1NJTkNFX1ZFUlNJT059fSwKKyAgICAge1pDUl9DT0xPUl9NQU5BR0VS X1YxX0VPVEZfTkFNRVNfQlQyMDg3LAorLSAgICAgVHJhbnNmZXJWZXJzaW9uKGdmeDo6Q29sb3JT cGFjZTo6VHJhbnNmZXJJRDo6R0FNTUEyNCwKKy0gICAgICAgICAgICAgICAgICAgICBrRGVmYXVs dFNpbmNlVmVyc2lvbil9LAorKyAgICAgVHJhbnNmZXJWZXJzaW9ue2dmeDo6Q29sb3JTcGFjZTo6 VHJhbnNmZXJJRDo6R0FNTUEyNCwKKysgICAgICAgICAgICAgICAgICAgICBrRGVmYXVsdFNpbmNl VmVyc2lvbn19LAorICAgICB7WkNSX0NPTE9SX01BTkFHRVJfVjFfRU9URl9OQU1FU19BRE9CRVJH QiwKKyAgICAgIC8vIFRoaXMgaXMgZXZlciBzbyBzbGlnaHRseSBpbmFjY3VyYXRlLiBUaGUgbnVt YmVyIG91Z2h0IHRvIGJlCisgICAgICAvLyAyLjE5OTIxODc1Ziwgbm90IDIuMgorLSAgICAgVHJh bnNmZXJWZXJzaW9uKGdmeDo6Q29sb3JTcGFjZTo6VHJhbnNmZXJJRDo6R0FNTUEyMiwKKy0gICAg ICAgICAgICAgICAgICAgICBrRGVmYXVsdFNpbmNlVmVyc2lvbil9LAorKyAgICAgVHJhbnNmZXJW ZXJzaW9ue2dmeDo6Q29sb3JTcGFjZTo6VHJhbnNmZXJJRDo6R0FNTUEyMiwKKysgICAgICAgICAg ICAgICAgICAgICBrRGVmYXVsdFNpbmNlVmVyc2lvbn19LAorICAgICB7WkNSX0NPTE9SX01BTkFH RVJfVjFfRU9URl9OQU1FU19QUSwKKy0gICAgIFRyYW5zZmVyVmVyc2lvbihnZng6OkNvbG9yU3Bh Y2U6OlRyYW5zZmVySUQ6OlBRLCBrRGVmYXVsdFNpbmNlVmVyc2lvbil9LAorKyAgICAgVHJhbnNm ZXJWZXJzaW9ue2dmeDo6Q29sb3JTcGFjZTo6VHJhbnNmZXJJRDo6UFEsIGtEZWZhdWx0U2luY2VW ZXJzaW9ufX0sCisgICAgIHtaQ1JfQ09MT1JfTUFOQUdFUl9WMV9FT1RGX05BTUVTX0hMRywKKy0g ICAgIFRyYW5zZmVyVmVyc2lvbihnZng6OkNvbG9yU3BhY2U6OlRyYW5zZmVySUQ6OkhMRywKKy0g ICAgICAgICAgICAgICAgICAgICBaQ1JfQ09MT1JfTUFOQUdFUl9WMV9FT1RGX05BTUVTX0hMR19T SU5DRV9WRVJTSU9OKX0sCisrICAgICBUcmFuc2ZlclZlcnNpb257Z2Z4OjpDb2xvclNwYWNlOjpU cmFuc2ZlcklEOjpITEcsCisrICAgICAgICAgICAgICAgICAgICAgWkNSX0NPTE9SX01BTkFHRVJf VjFfRU9URl9OQU1FU19ITEdfU0lOQ0VfVkVSU0lPTn19LAorICAgICB7WkNSX0NPTE9SX01BTkFH RVJfVjFfRU9URl9OQU1FU19TTVBURTE3ME0sCistICAgICBUcmFuc2ZlclZlcnNpb24oZ2Z4OjpD b2xvclNwYWNlOjpUcmFuc2ZlcklEOjpTTVBURTE3ME0sCistICAgICAgICAgICAgICAgICAgICAg WkNSX0NPTE9SX01BTkFHRVJfVjFfRU9URl9OQU1FU19TTVBURTE3ME1fU0lOQ0VfVkVSU0lPTil9 LAorKyAgICAgVHJhbnNmZXJWZXJzaW9ue2dmeDo6Q29sb3JTcGFjZTo6VHJhbnNmZXJJRDo6U01Q VEUxNzBNLAorKyAgICAgICAgICAgICAgICAgICAgIFpDUl9DT0xPUl9NQU5BR0VSX1YxX0VPVEZf TkFNRVNfU01QVEUxNzBNX1NJTkNFX1ZFUlNJT059fSwKKyAgICAge1pDUl9DT0xPUl9NQU5BR0VS X1YxX0VPVEZfTkFNRVNfU01QVEUyNDBNLAorLSAgICAgVHJhbnNmZXJWZXJzaW9uKGdmeDo6Q29s b3JTcGFjZTo6VHJhbnNmZXJJRDo6U01QVEUyNDBNLAorLSAgICAgICAgICAgICAgICAgICAgIFpD Ul9DT0xPUl9NQU5BR0VSX1YxX0VPVEZfTkFNRVNfU01QVEUyNDBNX1NJTkNFX1ZFUlNJT04pfSwK KysgICAgIFRyYW5zZmVyVmVyc2lvbntnZng6OkNvbG9yU3BhY2U6OlRyYW5zZmVySUQ6OlNNUFRF MjQwTSwKKysgICAgICAgICAgICAgICAgICAgICBaQ1JfQ09MT1JfTUFOQUdFUl9WMV9FT1RGX05B TUVTX1NNUFRFMjQwTV9TSU5DRV9WRVJTSU9OfX0sCisgICAgIHtaQ1JfQ09MT1JfTUFOQUdFUl9W MV9FT1RGX05BTUVTX1NNUFRFU1Q0MjhfMSwKKy0gICAgIFRyYW5zZmVyVmVyc2lvbigKKysgICAg IFRyYW5zZmVyVmVyc2lvbnsKKyAgICAgICAgICBnZng6OkNvbG9yU3BhY2U6OlRyYW5zZmVySUQ6 OlNNUFRFU1Q0MjhfMSwKKy0gICAgICAgICBaQ1JfQ09MT1JfTUFOQUdFUl9WMV9FT1RGX05BTUVT X1NNUFRFU1Q0MjhfMV9TSU5DRV9WRVJTSU9OKX0sCisrICAgICAgICAgWkNSX0NPTE9SX01BTkFH RVJfVjFfRU9URl9OQU1FU19TTVBURVNUNDI4XzFfU0lOQ0VfVkVSU0lPTn19LAorICAgICB7WkNS X0NPTE9SX01BTkFHRVJfVjFfRU9URl9OQU1FU19MT0csCistICAgICBUcmFuc2ZlclZlcnNpb24o Z2Z4OjpDb2xvclNwYWNlOjpUcmFuc2ZlcklEOjpMT0csCistICAgICAgICAgICAgICAgICAgICAg WkNSX0NPTE9SX01BTkFHRVJfVjFfRU9URl9OQU1FU19MT0dfU0lOQ0VfVkVSU0lPTil9LAorKyAg ICAgVHJhbnNmZXJWZXJzaW9ue2dmeDo6Q29sb3JTcGFjZTo6VHJhbnNmZXJJRDo6TE9HLAorKyAg ICAgICAgICAgICAgICAgICAgIFpDUl9DT0xPUl9NQU5BR0VSX1YxX0VPVEZfTkFNRVNfTE9HX1NJ TkNFX1ZFUlNJT059fSwKKyAgICAge1pDUl9DT0xPUl9NQU5BR0VSX1YxX0VPVEZfTkFNRVNfTE9H X1NRUlQsCistICAgICBUcmFuc2ZlclZlcnNpb24oZ2Z4OjpDb2xvclNwYWNlOjpUcmFuc2ZlcklE OjpMT0dfU1FSVCwKKy0gICAgICAgICAgICAgICAgICAgICBaQ1JfQ09MT1JfTUFOQUdFUl9WMV9F T1RGX05BTUVTX0xPR19TUVJUX1NJTkNFX1ZFUlNJT04pfSwKKysgICAgIFRyYW5zZmVyVmVyc2lv bntnZng6OkNvbG9yU3BhY2U6OlRyYW5zZmVySUQ6OkxPR19TUVJULAorKyAgICAgICAgICAgICAg ICAgICAgIFpDUl9DT0xPUl9NQU5BR0VSX1YxX0VPVEZfTkFNRVNfTE9HX1NRUlRfU0lOQ0VfVkVS U0lPTn19LAorICAgICB7WkNSX0NPTE9SX01BTkFHRVJfVjFfRU9URl9OQU1FU19JRUM2MTk2Nl8y XzQsCistICAgICBUcmFuc2ZlclZlcnNpb24oCisrICAgICBUcmFuc2ZlclZlcnNpb257CisgICAg ICAgICAgZ2Z4OjpDb2xvclNwYWNlOjpUcmFuc2ZlcklEOjpJRUM2MTk2Nl8yXzQsCistICAgICAg ICAgWkNSX0NPTE9SX01BTkFHRVJfVjFfRU9URl9OQU1FU19JRUM2MTk2Nl8yXzRfU0lOQ0VfVkVS U0lPTil9LAorKyAgICAgICAgIFpDUl9DT0xPUl9NQU5BR0VSX1YxX0VPVEZfTkFNRVNfSUVDNjE5 NjZfMl80X1NJTkNFX1ZFUlNJT059fSwKKyAgICAge1pDUl9DT0xPUl9NQU5BR0VSX1YxX0VPVEZf TkFNRVNfQlQxMzYxX0VDRywKKy0gICAgIFRyYW5zZmVyVmVyc2lvbihnZng6OkNvbG9yU3BhY2U6 OlRyYW5zZmVySUQ6OkJUMTM2MV9FQ0csCistICAgICAgICAgICAgICAgICAgICAgWkNSX0NPTE9S X01BTkFHRVJfVjFfRU9URl9OQU1FU19CVDEzNjFfRUNHX1NJTkNFX1ZFUlNJT04pfSwKKysgICAg IFRyYW5zZmVyVmVyc2lvbntnZng6OkNvbG9yU3BhY2U6OlRyYW5zZmVySUQ6OkJUMTM2MV9FQ0cs CisrICAgICAgICAgICAgICAgICAgICAgWkNSX0NPTE9SX01BTkFHRVJfVjFfRU9URl9OQU1FU19C VDEzNjFfRUNHX1NJTkNFX1ZFUlNJT059fSwKKyAgICAge1pDUl9DT0xPUl9NQU5BR0VSX1YxX0VP VEZfTkFNRVNfQlQyMDIwXzEwLAorLSAgICAgVHJhbnNmZXJWZXJzaW9uKGdmeDo6Q29sb3JTcGFj ZTo6VHJhbnNmZXJJRDo6QlQyMDIwXzEwLAorLSAgICAgICAgICAgICAgICAgICAgIFpDUl9DT0xP Ul9NQU5BR0VSX1YxX0VPVEZfTkFNRVNfQlQyMDIwXzEwX1NJTkNFX1ZFUlNJT04pfSwKKysgICAg IFRyYW5zZmVyVmVyc2lvbntnZng6OkNvbG9yU3BhY2U6OlRyYW5zZmVySUQ6OkJUMjAyMF8xMCwK KysgICAgICAgICAgICAgICAgICAgICBaQ1JfQ09MT1JfTUFOQUdFUl9WMV9FT1RGX05BTUVTX0JU MjAyMF8xMF9TSU5DRV9WRVJTSU9OfX0sCisgICAgIHtaQ1JfQ09MT1JfTUFOQUdFUl9WMV9FT1RG X05BTUVTX0JUMjAyMF8xMiwKKy0gICAgIFRyYW5zZmVyVmVyc2lvbihnZng6OkNvbG9yU3BhY2U6 OlRyYW5zZmVySUQ6OkJUMjAyMF8xMiwKKy0gICAgICAgICAgICAgICAgICAgICBaQ1JfQ09MT1Jf TUFOQUdFUl9WMV9FT1RGX05BTUVTX0JUMjAyMF8xMl9TSU5DRV9WRVJTSU9OKX0sCisrICAgICBU cmFuc2ZlclZlcnNpb257Z2Z4OjpDb2xvclNwYWNlOjpUcmFuc2ZlcklEOjpCVDIwMjBfMTIsCisr ICAgICAgICAgICAgICAgICAgICAgWkNSX0NPTE9SX01BTkFHRVJfVjFfRU9URl9OQU1FU19CVDIw MjBfMTJfU0lOQ0VfVkVSU0lPTn19LAorICAgICB7WkNSX0NPTE9SX01BTkFHRVJfVjFfRU9URl9O QU1FU19TQ1JHQl9MSU5FQVJfODBfTklUUywKKy0gICAgIFRyYW5zZmVyVmVyc2lvbigKKysgICAg IFRyYW5zZmVyVmVyc2lvbnsKKyAgICAgICAgICBnZng6OkNvbG9yU3BhY2U6OlRyYW5zZmVySUQ6 OlNDUkdCX0xJTkVBUl84MF9OSVRTLAorLSAgICAgICAgIFpDUl9DT0xPUl9NQU5BR0VSX1YxX0VP VEZfTkFNRVNfU0NSR0JfTElORUFSXzgwX05JVFNfU0lOQ0VfVkVSU0lPTil9LAorKyAgICAgICAg IFpDUl9DT0xPUl9NQU5BR0VSX1YxX0VPVEZfTkFNRVNfU0NSR0JfTElORUFSXzgwX05JVFNfU0lO Q0VfVkVSU0lPTn19LAorICAgICB7WkNSX0NPTE9SX01BTkFHRVJfVjFfRU9URl9OQU1FU19HQU1N QTE4LAorLSAgICAgVHJhbnNmZXJWZXJzaW9uKGdmeDo6Q29sb3JTcGFjZTo6VHJhbnNmZXJJRDo6 R0FNTUExOCwKKy0gICAgICAgICAgICAgICAgICAgICBaQ1JfQ09MT1JfTUFOQUdFUl9WMV9FT1RG X05BTUVTX0dBTU1BMThfU0lOQ0VfVkVSU0lPTil9LAorKyAgICAgVHJhbnNmZXJWZXJzaW9ue2dm eDo6Q29sb3JTcGFjZTo6VHJhbnNmZXJJRDo6R0FNTUExOCwKKysgICAgICAgICAgICAgICAgICAg ICBaQ1JfQ09MT1JfTUFOQUdFUl9WMV9FT1RGX05BTUVTX0dBTU1BMThfU0lOQ0VfVkVSU0lPTn19 LAorICAgICB7WkNSX0NPTE9SX01BTkFHRVJfVjFfRU9URl9OQU1FU19HQU1NQTI4LAorLSAgICAg VHJhbnNmZXJWZXJzaW9uKGdmeDo6Q29sb3JTcGFjZTo6VHJhbnNmZXJJRDo6R0FNTUEyOCwKKy0g ICAgICAgICAgICAgICAgICAgICBaQ1JfQ09MT1JfTUFOQUdFUl9WMV9FT1RGX05BTUVTX0dBTU1B MjhfU0lOQ0VfVkVSU0lPTil9LAorKyAgICAgVHJhbnNmZXJWZXJzaW9ue2dmeDo6Q29sb3JTcGFj ZTo6VHJhbnNmZXJJRDo6R0FNTUEyOCwKKysgICAgICAgICAgICAgICAgICAgICBaQ1JfQ09MT1Jf TUFOQUdFUl9WMV9FT1RGX05BTUVTX0dBTU1BMjhfU0lOQ0VfVkVSU0lPTn19LAorIH0pOworIAor IC8vIEEgbWFwIGZyb20gdGhlIFNEUiB6Y3JfY29sb3JfbWFuYWdlcl92MSBlb3RmX25hbWVzIGVu dW0gdmFsdWVzCitAQCAtMTc0LDE4ICsxNzQsMTggQEAgY29uc3RleHByIGF1dG8ga0VvdGZNYXAg PSBiYXNlOjpNYWtlRml4ZQorIGNvbnN0ZXhwciBhdXRvIGtUcmFuc2Zlck1hcCA9CisgICAgIGJh c2U6Ok1ha2VGaXhlZEZsYXRNYXA8emNyX2NvbG9yX21hbmFnZXJfdjFfZW90Zl9uYW1lcywgVHJh bnNmZXJGblZlcnNpb24+KHsKKyAgICAgICAgIHtaQ1JfQ09MT1JfTUFOQUdFUl9WMV9FT1RGX05B TUVTX0xJTkVBUiwKKy0gICAgICAgICBUcmFuc2ZlckZuVmVyc2lvbihTa05hbWVkVHJhbnNmZXJG bjo6a0xpbmVhciwga0RlZmF1bHRTaW5jZVZlcnNpb24pfSwKKysgICAgICAgICBUcmFuc2ZlckZu VmVyc2lvbntTa05hbWVkVHJhbnNmZXJGbjo6a0xpbmVhciwga0RlZmF1bHRTaW5jZVZlcnNpb259 fSwKKyAgICAgICAgIHtaQ1JfQ09MT1JfTUFOQUdFUl9WMV9FT1RGX05BTUVTX1NSR0IsCistICAg ICAgICAgVHJhbnNmZXJGblZlcnNpb24oU2tOYW1lZFRyYW5zZmVyRm5FeHQ6OmtTUkdCLCBrRGVm YXVsdFNpbmNlVmVyc2lvbil9LAorKyAgICAgICAgIFRyYW5zZmVyRm5WZXJzaW9ue1NrTmFtZWRU cmFuc2ZlckZuRXh0OjprU1JHQiwga0RlZmF1bHRTaW5jZVZlcnNpb259fSwKKyAgICAgICAgIHta Q1JfQ09MT1JfTUFOQUdFUl9WMV9FT1RGX05BTUVTX0JUNzA5LAorLSAgICAgICAgIFRyYW5zZmVy Rm5WZXJzaW9uKAorKyAgICAgICAgIFRyYW5zZmVyRm5WZXJzaW9ueworICAgICAgICAgICAgICBT a05hbWVkVHJhbnNmZXJGbkV4dDo6a1JlYzcwOSwKKy0gICAgICAgICAgICAgWkNSX0NPTE9SX01B TkFHRVJfVjFfRU9URl9OQU1FU19CVDcwOV9TSU5DRV9WRVJTSU9OKX0sCisrICAgICAgICAgICAg IFpDUl9DT0xPUl9NQU5BR0VSX1YxX0VPVEZfTkFNRVNfQlQ3MDlfU0lOQ0VfVkVSU0lPTn19LAor ICAgICAgICAge1pDUl9DT0xPUl9NQU5BR0VSX1YxX0VPVEZfTkFNRVNfQlQyMDg3LAorLSAgICAg ICAgIFRyYW5zZmVyRm5WZXJzaW9uKGdhbW1hMjQsIGtEZWZhdWx0U2luY2VWZXJzaW9uKX0sCisr ICAgICAgICAgVHJhbnNmZXJGblZlcnNpb257Z2FtbWEyNCwga0RlZmF1bHRTaW5jZVZlcnNpb259 fSwKKyAgICAgICAgIHtaQ1JfQ09MT1JfTUFOQUdFUl9WMV9FT1RGX05BTUVTX0FET0JFUkdCLAor LSAgICAgICAgIFRyYW5zZmVyRm5WZXJzaW9uKFNrTmFtZWRUcmFuc2ZlckZuRXh0OjprQTk4UkdC LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgIGtEZWZhdWx0U2luY2VWZXJzaW9uKX0sCisr ICAgICAgICAgVHJhbnNmZXJGblZlcnNpb257U2tOYW1lZFRyYW5zZmVyRm5FeHQ6OmtBOThSR0Is CisrICAgICAgICAgICAgICAgICAgICAgICAgICAga0RlZmF1bHRTaW5jZVZlcnNpb259fSwKKyAg ICAgfSk7CisgCisgLy8gQSBtYXAgZnJvbSB0aGUgSERSIHpjcl9jb2xvcl9tYW5hZ2VyX3YxIGVv dGZfbmFtZXMgZW51bSB2YWx1ZXMKK0BAIC0xOTQsNjggKzE5NCw2OCBAQCBjb25zdGV4cHIgYXV0 byBrVHJhbnNmZXJNYXAgPQorIGNvbnN0ZXhwciBhdXRvIGtIRFJUcmFuc2Zlck1hcCA9CisgICAg IGJhc2U6Ok1ha2VGaXhlZEZsYXRNYXA8emNyX2NvbG9yX21hbmFnZXJfdjFfZW90Zl9uYW1lcywg VHJhbnNmZXJGblZlcnNpb24+KAorICAgICAgICAge3taQ1JfQ09MT1JfTUFOQUdFUl9WMV9FT1RG X05BTUVTX0xJTkVBUiwKKy0gICAgICAgICAgVHJhbnNmZXJGblZlcnNpb24oU2tOYW1lZFRyYW5z ZmVyRm46OmtMaW5lYXIsIGtEZWZhdWx0U2luY2VWZXJzaW9uKX0sCisrICAgICAgICAgIFRyYW5z ZmVyRm5WZXJzaW9ue1NrTmFtZWRUcmFuc2ZlckZuOjprTGluZWFyLCBrRGVmYXVsdFNpbmNlVmVy c2lvbn19LAorICAgICAgICAgIHtaQ1JfQ09MT1JfTUFOQUdFUl9WMV9FT1RGX05BTUVTX1NSR0Is CistICAgICAgICAgIFRyYW5zZmVyRm5WZXJzaW9uKFNrTmFtZWRUcmFuc2ZlckZuRXh0OjprU1JH Qiwga0RlZmF1bHRTaW5jZVZlcnNpb24pfSwKKysgICAgICAgICAgVHJhbnNmZXJGblZlcnNpb257 U2tOYW1lZFRyYW5zZmVyRm5FeHQ6OmtTUkdCLCBrRGVmYXVsdFNpbmNlVmVyc2lvbn19LAorICAg ICAgICAgIHtaQ1JfQ09MT1JfTUFOQUdFUl9WMV9FT1RGX05BTUVTX1BRLAorLSAgICAgICAgICBU cmFuc2ZlckZuVmVyc2lvbihTa05hbWVkVHJhbnNmZXJGbjo6a1BRLCBrRGVmYXVsdFNpbmNlVmVy c2lvbil9LAorKyAgICAgICAgICBUcmFuc2ZlckZuVmVyc2lvbntTa05hbWVkVHJhbnNmZXJGbjo6 a1BRLCBrRGVmYXVsdFNpbmNlVmVyc2lvbn19LAorICAgICAgICAgIHtaQ1JfQ09MT1JfTUFOQUdF Ul9WMV9FT1RGX05BTUVTX0hMRywKKy0gICAgICAgICAgVHJhbnNmZXJGblZlcnNpb24oU2tOYW1l ZFRyYW5zZmVyRm46OmtITEcsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgIFpDUl9DT0xP Ul9NQU5BR0VSX1YxX0VPVEZfTkFNRVNfSExHX1NJTkNFX1ZFUlNJT04pfSwKKysgICAgICAgICAg VHJhbnNmZXJGblZlcnNpb257U2tOYW1lZFRyYW5zZmVyRm46OmtITEcsCisrICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFpDUl9DT0xPUl9NQU5BR0VSX1YxX0VPVEZfTkFNRVNfSExHX1NJTkNF X1ZFUlNJT059fSwKKyAgICAgICAgICB7WkNSX0NPTE9SX01BTkFHRVJfVjFfRU9URl9OQU1FU19F WFRFTkRFRFNSR0IxMCwKKy0gICAgICAgICAgVHJhbnNmZXJGblZlcnNpb24oCisrICAgICAgICAg IFRyYW5zZmVyRm5WZXJzaW9ueworICAgICAgICAgICAgICAgU2tOYW1lZFRyYW5zZmVyRm5FeHQ6 OmtTUkdCRXh0ZW5kZWQxMDIzT3ZlcjUxMCwKKy0gICAgICAgICAgICAgIFpDUl9DT0xPUl9NQU5B R0VSX1YxX0VPVEZfTkFNRVNfRVhURU5ERURTUkdCMTBfU0lOQ0VfVkVSU0lPTil9fSk7CisrICAg ICAgICAgICAgICBaQ1JfQ09MT1JfTUFOQUdFUl9WMV9FT1RGX05BTUVTX0VYVEVOREVEU1JHQjEw X1NJTkNFX1ZFUlNJT059fX0pOworIAorIC8vIEEgbWFwIGZyb20gemNyX2NvbG9yX21hbmFnZXJf djEgbWF0cml4X25hbWVzIGVudW0gdmFsdWVzIHRvCisgLy8gZ2Z4OjpDb2xvclNwYWNlOjpNYXRy aXhJRHMuCisgY29uc3RleHByIGF1dG8ga01hdHJpeE1hcCA9CisgICAgIGJhc2U6Ok1ha2VGaXhl ZEZsYXRNYXA8emNyX2NvbG9yX21hbmFnZXJfdjFfbWF0cml4X25hbWVzLCBNYXRyaXhWZXJzaW9u PigKKyAgICAgICAgIHt7WkNSX0NPTE9SX01BTkFHRVJfVjFfTUFUUklYX05BTUVTX1JHQiwKKy0g ICAgICAgICAgTWF0cml4VmVyc2lvbihnZng6OkNvbG9yU3BhY2U6Ok1hdHJpeElEOjpSR0IsIGtE ZWZhdWx0U2luY2VWZXJzaW9uKX0sCisrICAgICAgICAgIE1hdHJpeFZlcnNpb257Z2Z4OjpDb2xv clNwYWNlOjpNYXRyaXhJRDo6UkdCLCBrRGVmYXVsdFNpbmNlVmVyc2lvbn19LAorICAgICAgICAg IHtaQ1JfQ09MT1JfTUFOQUdFUl9WMV9NQVRSSVhfTkFNRVNfQlQ3MDksCistICAgICAgICAgIE1h dHJpeFZlcnNpb24oZ2Z4OjpDb2xvclNwYWNlOjpNYXRyaXhJRDo6QlQ3MDksCistICAgICAgICAg ICAgICAgICAgICAgICAga0RlZmF1bHRTaW5jZVZlcnNpb24pfSwKKysgICAgICAgICAgTWF0cml4 VmVyc2lvbntnZng6OkNvbG9yU3BhY2U6Ok1hdHJpeElEOjpCVDcwOSwKKysgICAgICAgICAgICAg ICAgICAgICAgICBrRGVmYXVsdFNpbmNlVmVyc2lvbn19LAorICAgICAgICAgIHtaQ1JfQ09MT1Jf TUFOQUdFUl9WMV9NQVRSSVhfTkFNRVNfQlQ0NzBCRywKKy0gICAgICAgICAgTWF0cml4VmVyc2lv bigKKysgICAgICAgICAgTWF0cml4VmVyc2lvbnsKKyAgICAgICAgICAgICAgIGdmeDo6Q29sb3JT cGFjZTo6TWF0cml4SUQ6OkJUNDcwQkcsCistICAgICAgICAgICAgICBaQ1JfQ09MT1JfTUFOQUdF Ul9WMV9NQVRSSVhfTkFNRVNfQlQ0NzBCR19TSU5DRV9WRVJTSU9OKX0sCisrICAgICAgICAgICAg ICBaQ1JfQ09MT1JfTUFOQUdFUl9WMV9NQVRSSVhfTkFNRVNfQlQ0NzBCR19TSU5DRV9WRVJTSU9O fX0sCisgICAgICAgICAge1pDUl9DT0xPUl9NQU5BR0VSX1YxX01BVFJJWF9OQU1FU19CVDIwMjBf TkNMLAorLSAgICAgICAgICBNYXRyaXhWZXJzaW9uKGdmeDo6Q29sb3JTcGFjZTo6TWF0cml4SUQ6 OkJUMjAyMF9OQ0wsCistICAgICAgICAgICAgICAgICAgICAgICAga0RlZmF1bHRTaW5jZVZlcnNp b24pfSwKKysgICAgICAgICAgTWF0cml4VmVyc2lvbntnZng6OkNvbG9yU3BhY2U6Ok1hdHJpeElE OjpCVDIwMjBfTkNMLAorKyAgICAgICAgICAgICAgICAgICAgICAgIGtEZWZhdWx0U2luY2VWZXJz aW9ufX0sCisgICAgICAgICAge1pDUl9DT0xPUl9NQU5BR0VSX1YxX01BVFJJWF9OQU1FU19CVDIw MjBfQ0wsCistICAgICAgICAgIE1hdHJpeFZlcnNpb24oZ2Z4OjpDb2xvclNwYWNlOjpNYXRyaXhJ RDo6QlQyMDIwX0NMLAorLSAgICAgICAgICAgICAgICAgICAgICAgIGtEZWZhdWx0U2luY2VWZXJz aW9uKX0sCisrICAgICAgICAgIE1hdHJpeFZlcnNpb257Z2Z4OjpDb2xvclNwYWNlOjpNYXRyaXhJ RDo6QlQyMDIwX0NMLAorKyAgICAgICAgICAgICAgICAgICAgICAgIGtEZWZhdWx0U2luY2VWZXJz aW9ufX0sCisgICAgICAgICAge1pDUl9DT0xPUl9NQU5BR0VSX1YxX01BVFJJWF9OQU1FU19GQ0Ms CistICAgICAgICAgIE1hdHJpeFZlcnNpb24oZ2Z4OjpDb2xvclNwYWNlOjpNYXRyaXhJRDo6RkND LCBrRGVmYXVsdFNpbmNlVmVyc2lvbil9LAorKyAgICAgICAgICBNYXRyaXhWZXJzaW9ue2dmeDo6 Q29sb3JTcGFjZTo6TWF0cml4SUQ6OkZDQywga0RlZmF1bHRTaW5jZVZlcnNpb259fSwKKyAgICAg ICAgICB7WkNSX0NPTE9SX01BTkFHRVJfVjFfTUFUUklYX05BTUVTX1lDT0NHLAorLSAgICAgICAg ICBNYXRyaXhWZXJzaW9uKGdmeDo6Q29sb3JTcGFjZTo6TWF0cml4SUQ6OllDT0NHLAorLSAgICAg ICAgICAgICAgICAgICAgICAgIFpDUl9DT0xPUl9NQU5BR0VSX1YxX01BVFJJWF9OQU1FU19ZQ09D R19TSU5DRV9WRVJTSU9OKX0sCisrICAgICAgICAgIE1hdHJpeFZlcnNpb257Z2Z4OjpDb2xvclNw YWNlOjpNYXRyaXhJRDo6WUNPQ0csCisrICAgICAgICAgICAgICAgICAgICAgICAgWkNSX0NPTE9S X01BTkFHRVJfVjFfTUFUUklYX05BTUVTX1lDT0NHX1NJTkNFX1ZFUlNJT059fSwKKyAgICAgICAg ICB7WkNSX0NPTE9SX01BTkFHRVJfVjFfTUFUUklYX05BTUVTX1lEWkRYLAorLSAgICAgICAgICBN YXRyaXhWZXJzaW9uKGdmeDo6Q29sb3JTcGFjZTo6TWF0cml4SUQ6OllEWkRYLAorLSAgICAgICAg ICAgICAgICAgICAgICAgIFpDUl9DT0xPUl9NQU5BR0VSX1YxX01BVFJJWF9OQU1FU19ZRFpEWF9T SU5DRV9WRVJTSU9OKX0sCisrICAgICAgICAgIE1hdHJpeFZlcnNpb257Z2Z4OjpDb2xvclNwYWNl OjpNYXRyaXhJRDo6WURaRFgsCisrICAgICAgICAgICAgICAgICAgICAgICAgWkNSX0NPTE9SX01B TkFHRVJfVjFfTUFUUklYX05BTUVTX1lEWkRYX1NJTkNFX1ZFUlNJT059fSwKKyAgICAgICAgICB7 WkNSX0NPTE9SX01BTkFHRVJfVjFfTUFUUklYX05BTUVTX0dCUiwKKy0gICAgICAgICAgTWF0cml4 VmVyc2lvbihnZng6OkNvbG9yU3BhY2U6Ok1hdHJpeElEOjpHQlIsCistICAgICAgICAgICAgICAg ICAgICAgICAgWkNSX0NPTE9SX01BTkFHRVJfVjFfTUFUUklYX05BTUVTX0dCUl9TSU5DRV9WRVJT SU9OKX0sCisrICAgICAgICAgIE1hdHJpeFZlcnNpb257Z2Z4OjpDb2xvclNwYWNlOjpNYXRyaXhJ RDo6R0JSLAorKyAgICAgICAgICAgICAgICAgICAgICAgIFpDUl9DT0xPUl9NQU5BR0VSX1YxX01B VFJJWF9OQU1FU19HQlJfU0lOQ0VfVkVSU0lPTn19LAorICAgICAgICAgIHtaQ1JfQ09MT1JfTUFO QUdFUl9WMV9NQVRSSVhfTkFNRVNfU01QVEUxNzBNLAorLSAgICAgICAgICBNYXRyaXhWZXJzaW9u KGdmeDo6Q29sb3JTcGFjZTo6TWF0cml4SUQ6OlNNUFRFMTcwTSwKKy0gICAgICAgICAgICAgICAg ICAgICAgICBrRGVmYXVsdFNpbmNlVmVyc2lvbil9LAorKyAgICAgICAgICBNYXRyaXhWZXJzaW9u e2dmeDo6Q29sb3JTcGFjZTo6TWF0cml4SUQ6OlNNUFRFMTcwTSwKKysgICAgICAgICAgICAgICAg ICAgICAgICBrRGVmYXVsdFNpbmNlVmVyc2lvbn19LAorICAgICAgICAgIHtaQ1JfQ09MT1JfTUFO QUdFUl9WMV9NQVRSSVhfTkFNRVNfU01QVEUyNDBNLAorLSAgICAgICAgICBNYXRyaXhWZXJzaW9u KGdmeDo6Q29sb3JTcGFjZTo6TWF0cml4SUQ6OlNNUFRFMjQwTSwKKy0gICAgICAgICAgICAgICAg ICAgICAgICBrRGVmYXVsdFNpbmNlVmVyc2lvbil9fSk7CisrICAgICAgICAgIE1hdHJpeFZlcnNp b257Z2Z4OjpDb2xvclNwYWNlOjpNYXRyaXhJRDo6U01QVEUyNDBNLAorKyAgICAgICAgICAgICAg ICAgICAgICAgIGtEZWZhdWx0U2luY2VWZXJzaW9ufX19KTsKKyAKKyAvLyBBIG1hcCBmcm9tIHpj cl9jb2xvcl9tYW5hZ2VyX3YxIHJhbmdlX25hbWVzIGVudW0gdmFsdWVzIHRvCisgLy8gZ2Z4OjpD b2xvclNwYWNlOjpSYW5nZUlEcy4KKyBjb25zdGV4cHIgYXV0byBrUmFuZ2VNYXAgPQorICAgICBi YXNlOjpNYWtlRml4ZWRGbGF0TWFwPHpjcl9jb2xvcl9tYW5hZ2VyX3YxX3JhbmdlX25hbWVzLCBS YW5nZVZlcnNpb24+KAorICAgICAgICAge3taQ1JfQ09MT1JfTUFOQUdFUl9WMV9SQU5HRV9OQU1F U19MSU1JVEVELAorLSAgICAgICAgICBSYW5nZVZlcnNpb24oZ2Z4OjpDb2xvclNwYWNlOjpSYW5n ZUlEOjpMSU1JVEVELAorLSAgICAgICAgICAgICAgICAgICAgICAga0RlZmF1bHRTaW5jZVZlcnNp b24pfSwKKysgICAgICAgICAgUmFuZ2VWZXJzaW9ue2dmeDo6Q29sb3JTcGFjZTo6UmFuZ2VJRDo6 TElNSVRFRCwKKysgICAgICAgICAgICAgICAgICAgICAgIGtEZWZhdWx0U2luY2VWZXJzaW9ufX0s CisgICAgICAgICAge1pDUl9DT0xPUl9NQU5BR0VSX1YxX1JBTkdFX05BTUVTX0ZVTEwsCistICAg ICAgICAgIFJhbmdlVmVyc2lvbihnZng6OkNvbG9yU3BhY2U6OlJhbmdlSUQ6OkZVTEwsIGtEZWZh dWx0U2luY2VWZXJzaW9uKX0sCisrICAgICAgICAgIFJhbmdlVmVyc2lvbntnZng6OkNvbG9yU3Bh Y2U6OlJhbmdlSUQ6OkZVTEwsIGtEZWZhdWx0U2luY2VWZXJzaW9ufX0sCisgICAgICAgICAge1pD Ul9DT0xPUl9NQU5BR0VSX1YxX1JBTkdFX05BTUVTX0RFUklWRUQsCistICAgICAgICAgIFJhbmdl VmVyc2lvbihnZng6OkNvbG9yU3BhY2U6OlJhbmdlSUQ6OkRFUklWRUQsCistICAgICAgICAgICAg ICAgICAgICAgICBrRGVmYXVsdFNpbmNlVmVyc2lvbil9fSk7CisrICAgICAgICAgIFJhbmdlVmVy c2lvbntnZng6OkNvbG9yU3BhY2U6OlJhbmdlSUQ6OkRFUklWRUQsCisrICAgICAgICAgICAgICAg ICAgICAgICBrRGVmYXVsdFNpbmNlVmVyc2lvbn19fSk7CisgCisgemNyX2NvbG9yX21hbmFnZXJf djFfY2hyb21hdGljaXR5X25hbWVzIFRvQ29sb3JNYW5hZ2VyQ2hyb21hdGljaXR5KAorICAgICBn Zng6OkNvbG9yU3BhY2U6OlByaW1hcnlJRCBwcmltYXJ5SUQsCistLS0gYS9zcmMvM3JkcGFydHkv Y2hyb21pdW0vY2hyb21lL3Rlc3QvY2hyb21lZHJpdmVyL2NhcGFiaWxpdGllcy5jYworKysrIGIv c3JjLzNyZHBhcnR5L2Nocm9taXVtL2Nocm9tZS90ZXN0L2Nocm9tZWRyaXZlci9jYXBhYmlsaXRp ZXMuY2MKK0BAIC0zNDYsNyArMzQ2LDcgQEAgU3RhdHVzIFBhcnNlTW9iaWxlRW11bGF0aW9uKGNv bnN0IGJhc2U6OgorICAgICAgICAgICAgICAgICAgICAgICAgICIndmVyc2lvbicgZmllbGQgb2Yg dHlwZSBzdHJpbmciKTsKKyAgICAgICAgIH0KKyAKKy0gICAgICAgIGJyYW5kcy5lbXBsYWNlX2Jh Y2soKmJyYW5kLCAqdmVyc2lvbik7CisrICAgICAgICBicmFuZHMuZW1wbGFjZV9iYWNrKCkgPSB7 KmJyYW5kLCAqdmVyc2lvbn07CisgICAgICAgfQorIAorICAgICAgIGNsaWVudF9oaW50cy5icmFu ZHMgPSBzdGQ6Om1vdmUoYnJhbmRzKTsKK0BAIC0zODQsNyArMzg0LDcgQEAgU3RhdHVzIFBhcnNl TW9iaWxlRW11bGF0aW9uKGNvbnN0IGJhc2U6OgorICAgICAgICAgICAgICAgICAgICAgICAgICJh ICd2ZXJzaW9uJyBmaWVsZCBvZiB0eXBlIHN0cmluZyIpOworICAgICAgICAgfQorIAorLSAgICAg ICAgZnVsbF92ZXJzaW9uX2xpc3QuZW1wbGFjZV9iYWNrKCpicmFuZCwgKnZlcnNpb24pOworKyAg ICAgICAgZnVsbF92ZXJzaW9uX2xpc3QuZW1wbGFjZV9iYWNrKCkgPSB7KmJyYW5kLCAqdmVyc2lv bn07CisgICAgICAgfQorIAorICAgICAgIGNsaWVudF9oaW50cy5mdWxsX3ZlcnNpb25fbGlzdCA9 IHN0ZDo6bW92ZShmdWxsX3ZlcnNpb25fbGlzdCk7CistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21p dW0vYmFzZS90cmFjZV9ldmVudC90cmFjZV9sb2cuY2MKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJv bWl1bS9iYXNlL3RyYWNlX2V2ZW50L3RyYWNlX2xvZy5jYworQEAgLTIxOTAsOCArMjE5MCw4IEBA IHZvaWQgVHJhY2VMb2c6OlNldFRyYWNlQnVmZmVyRm9yVGVzdGluZygKKyAjaWYgQlVJTERGTEFH KFVTRV9QRVJGRVRUT19DTElFTlRfTElCUkFSWSkKKyB2b2lkIFRyYWNlTG9nOjpPblNldHVwKGNv bnN0IHBlcmZldHRvOjpEYXRhU291cmNlQmFzZTo6U2V0dXBBcmdzJiBhcmdzKSB7CisgICBBdXRv TG9jayBsb2NrKHRyYWNrX2V2ZW50X2xvY2tfKTsKKy0gIHRyYWNrX2V2ZW50X3Nlc3Npb25zXy5l bXBsYWNlX2JhY2soYXJncy5pbnRlcm5hbF9pbnN0YW5jZV9pbmRleCwgKmFyZ3MuY29uZmlnLAor LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdzLmJhY2tlbmRfdHlwZSk7 CisrICB0cmFja19ldmVudF9zZXNzaW9uc18uZW1wbGFjZV9iYWNrKCkgPSB7YXJncy5pbnRlcm5h bF9pbnN0YW5jZV9pbmRleCwgKmFyZ3MuY29uZmlnLAorKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBhcmdzLmJhY2tlbmRfdHlwZX07CisgfQorIAorIHZvaWQgVHJhY2VMb2c6 Ok9uU3RhcnQoY29uc3QgcGVyZmV0dG86OkRhdGFTb3VyY2VCYXNlOjpTdGFydEFyZ3MmKSB7Cist LS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vdWkvZ3RrL2d0a191aS5jYworKysrIGIvc3JjLzNy ZHBhcnR5L2Nocm9taXVtL3VpL2d0ay9ndGtfdWkuY2MKK0BAIC05NTUsMTEgKzk1NSwxMSBAQCB1 aTo6RGlzcGxheUNvbmZpZyBHdGtVaTo6R2V0RGlzcGxheUNvbmZpCisgICAgIEdka1JlY3Rhbmds ZSBnZW9tZXRyeTsKKyAgICAgZ2RrX21vbml0b3JfZ2V0X2dlb21ldHJ5KG1vbml0b3IsICZnZW9t ZXRyeSk7CisgICAgIGludCBtb25pdG9yX3NjYWxlID0gc3RkOjptYXgoMSwgZ2RrX21vbml0b3Jf Z2V0X3NjYWxlX2ZhY3Rvcihtb25pdG9yKSk7CistICAgIGNvbmZpZy5kaXNwbGF5X2dlb21ldHJp ZXMuZW1wbGFjZV9iYWNrKAorKyAgICBjb25maWcuZGlzcGxheV9nZW9tZXRyaWVzLmVtcGxhY2Vf YmFjaygpID0geworICAgICAgICAgZ2Z4OjpSZWN0KG1vbml0b3Jfc2NhbGUgKiBnZW9tZXRyeS54 LCBtb25pdG9yX3NjYWxlICogZ2VvbWV0cnkueSwKKyAgICAgICAgICAgICAgICAgICBtb25pdG9y X3NjYWxlICogZ2VvbWV0cnkud2lkdGgsCisgICAgICAgICAgICAgICAgICAgbW9uaXRvcl9zY2Fs ZSAqIGdlb21ldHJ5LmhlaWdodCksCistICAgICAgICBtb25pdG9yX3NjYWxlICogZm9udF9zY2Fs ZSk7CisrICAgICAgICBzdGF0aWNfY2FzdDxmbG9hdD4obW9uaXRvcl9zY2FsZSAqIGZvbnRfc2Nh bGUpfTsKKyAgIH0KKyAgIHJldHVybiBjb25maWc7CisgfQorLS0tIGEvc3JjLzNyZHBhcnR5L2No cm9taXVtL2NvbXBvbmVudHMvYXV0b2ZpbGwvY29yZS9icm93c2VyL2NvbnRhY3RfaW5mb19zeW5j X3V0aWwuY2MKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9jb21wb25lbnRzL2F1dG9maWxs L2NvcmUvYnJvd3Nlci9jb250YWN0X2luZm9fc3luY191dGlsLmNjCitAQCAtMTc0LDkgKzE3NCw5 IEBAIGNsYXNzIENvbnRhY3RJbmZvUHJvZmlsZVNldHRlciB7CisgICAgIENIRUNLKG9ic2VydmF0 aW9ucy5lbXB0eSgpKTsKKyAgICAgZm9yIChjb25zdCBzeW5jX3BiOjpDb250YWN0SW5mb1NwZWNp Zmljczo6T2JzZXJ2YXRpb24mIHByb3RvX29ic2VydmF0aW9uIDoKKyAgICAgICAgICBwcm90b19v YnNlcnZhdGlvbnMpIHsKKy0gICAgICBvYnNlcnZhdGlvbnMuZW1wbGFjZV9iYWNrKHByb3RvX29i c2VydmF0aW9uLnR5cGUoKSwKKysgICAgICBvYnNlcnZhdGlvbnMuZW1wbGFjZV9iYWNrKCkgPSB7 c3RhdGljX2Nhc3Q8dW5zaWduZWQgY2hhcj4ocHJvdG9fb2JzZXJ2YXRpb24udHlwZSgpKSwKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByb2ZpbGVUb2tlblF1YWxpdHk6OkZvcm1T aWduYXR1cmVIYXNoKAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb3Rv X29ic2VydmF0aW9uLmZvcm1faGFzaCgpKSk7CisrICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgcHJvdG9fb2JzZXJ2YXRpb24uZm9ybV9oYXNoKCkpfTsKKyAgICAgfQorICAgfQor IAorLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL2NvbXBvbmVudHMvYXV0b2ZpbGwvY29yZS9i cm93c2VyL3dlYmRhdGEvYXV0b2ZpbGxfc3luY19icmlkZ2VfdXRpbC5jYworKysrIGIvc3JjLzNy ZHBhcnR5L2Nocm9taXVtL2NvbXBvbmVudHMvYXV0b2ZpbGwvY29yZS9icm93c2VyL3dlYmRhdGEv YXV0b2ZpbGxfc3luY19icmlkZ2VfdXRpbC5jYworQEAgLTU1MywxMSArNTUzLDExIEBAIFNlcnZl ckN2YyBBdXRvZmlsbFdhbGxldEN2Y1N0cnVjdERhdGFGcm8KKyAgIGJhc2U6OlN0cmluZ1RvSW50 NjQod2FsbGV0X2NyZWRlbnRpYWxfc3BlY2lmaWNzLmluc3RydW1lbnRfaWQoKSwKKyAgICAgICAg ICAgICAgICAgICAgICAgJmluc3RydW1lbnRfaWQpOworIAorLSAgcmV0dXJuIFNlcnZlckN2YygK KysgIHJldHVybiBTZXJ2ZXJDdmN7CisgICAgICAgaW5zdHJ1bWVudF9pZCwgYmFzZTo6VVRGOFRv VVRGMTYod2FsbGV0X2NyZWRlbnRpYWxfc3BlY2lmaWNzLmN2YygpKSwKKyAgICAgICBiYXNlOjpU aW1lOjpVbml4RXBvY2goKSArCisgICAgICAgICAgIGJhc2U6Ok1pbGxpc2Vjb25kcyh3YWxsZXRf Y3JlZGVudGlhbF9zcGVjaWZpY3MKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAu bGFzdF91cGRhdGVkX3RpbWVfdW5peF9lcG9jaF9taWxsaXMoKSkpOworKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIC5sYXN0X3VwZGF0ZWRfdGltZV91bml4X2Vwb2NoX21pbGxpcygp KX07CisgfQorIAorIFZpcnR1YWxDYXJkVXNhZ2VEYXRhIFZpcnR1YWxDYXJkVXNhZ2VEYXRhRnJv bVVzYWdlU3BlY2lmaWNzKAorLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL2Nocm9tZS90ZXN0 L2Nocm9tZWRyaXZlci9jYXBhYmlsaXRpZXMuY2MKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1 bS9jaHJvbWUvdGVzdC9jaHJvbWVkcml2ZXIvY2FwYWJpbGl0aWVzLmNjCitAQCAtMzQ2LDcgKzM0 Niw3IEBAIFN0YXR1cyBQYXJzZU1vYmlsZUVtdWxhdGlvbihjb25zdCBiYXNlOjoKKyAgICAgICAg ICAgICAgICAgICAgICAgICAiJ3ZlcnNpb24nIGZpZWxkIG9mIHR5cGUgc3RyaW5nIik7CisgICAg ICAgICB9CisgCistICAgICAgICBicmFuZHMuZW1wbGFjZV9iYWNrKCkgPSB7KmJyYW5kLCAqdmVy c2lvbn07CisrICAgICAgICBicmFuZHMuZW1wbGFjZV9iYWNrKCpicmFuZCwgKnZlcnNpb24pOwor ICAgICAgIH0KKyAKKyAgICAgICBjbGllbnRfaGludHMuYnJhbmRzID0gc3RkOjptb3ZlKGJyYW5k cyk7CitAQCAtMzg0LDcgKzM4NCw3IEBAIFN0YXR1cyBQYXJzZU1vYmlsZUVtdWxhdGlvbihjb25z dCBiYXNlOjoKKyAgICAgICAgICAgICAgICAgICAgICAgICAiYSAndmVyc2lvbicgZmllbGQgb2Yg dHlwZSBzdHJpbmciKTsKKyAgICAgICAgIH0KKyAKKy0gICAgICAgIGZ1bGxfdmVyc2lvbl9saXN0 LmVtcGxhY2VfYmFjaygpID0geypicmFuZCwgKnZlcnNpb259OworKyAgICAgICAgZnVsbF92ZXJz aW9uX2xpc3QuZW1wbGFjZV9iYWNrKCpicmFuZCwgKnZlcnNpb24pOworICAgICAgIH0KKyAKKyAg ICAgICBjbGllbnRfaGludHMuZnVsbF92ZXJzaW9uX2xpc3QgPSBzdGQ6Om1vdmUoZnVsbF92ZXJz aW9uX2xpc3QpOwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDExNC1jaHJv bWl1bS0xMTgtcHl0aG9uLTMuMTItZGVwcmVjYXRlZC5wYXRjaCBiL3NyY3BrZ3MvcXQ2LXBkZi9w YXRjaGVzLzAxMTQtY2hyb21pdW0tMTE4LXB5dGhvbi0zLjEyLWRlcHJlY2F0ZWQucGF0Y2gKbmV3 IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAuLjFiNzFhNWEwYWQwMjNjCi0t LSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDExNC1jaHJvbWl1bS0x MTgtcHl0aG9uLTMuMTItZGVwcmVjYXRlZC5wYXRjaApAQCAtMCwwICsxLDk4IEBACistLS0gYS9z cmMvM3JkcGFydHkvY2hyb21pdW0vYmFzZS93cml0ZV9idWlsZF9kYXRlX2hlYWRlci5weQorKysr IGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL2Jhc2Uvd3JpdGVfYnVpbGRfZGF0ZV9oZWFkZXIucHkK K0BAIC0xNyw3ICsxNyw3IEBAIGRlZiBtYWluKCk6CisgICBhcmdzID0gYXJndW1lbnRfcGFyc2Vy LnBhcnNlX2FyZ3MoKQorIAorICAgZGF0ZV92YWwgPSBpbnQoYXJncy50aW1lc3RhbXApCistICBk YXRlID0gZGF0ZXRpbWUuZGF0ZXRpbWUudXRjZnJvbXRpbWVzdGFtcChkYXRlX3ZhbCkKKysgIGRh dGUgPSAgZGF0ZXRpbWUuZGF0ZXRpbWUuZnJvbXRpbWVzdGFtcChkYXRlX3ZhbCwgZGF0ZXRpbWUu dGltZXpvbmUudXRjKQorICAgb3V0cHV0ID0gKCcvLyBHZW5lcmF0ZWQgYnkgLy9iYXNlL3dyaXRl X2J1aWxkX2RhdGVfaGVhZGVyLnB5XG4nCisgICAgICAgICAgICAgJyNpZm5kZWYgQkFTRV9HRU5F UkFURURfQlVJTERfREFURV9USU1FU1RBTVAgXG4nCisgICAgICAgICAgICAgZicjZGVmaW5lIEJB U0VfR0VORVJBVEVEX0JVSUxEX0RBVEVfVElNRVNUQU1QIHtkYXRlX3ZhbH0nCistLS0gYS9zcmMv M3JkcGFydHkvY2hyb21pdW0vY29tcG9uZW50cy9yZXNvdXJjZXMvcHJvdG9idWZzL2JpbmFyeV9w cm90b19nZW5lcmF0b3IucHkKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9jb21wb25lbnRz L3Jlc291cmNlcy9wcm90b2J1ZnMvYmluYXJ5X3Byb3RvX2dlbmVyYXRvci5weQorQEAgLTQwLDYg KzQwLDEyIEBAIGNsYXNzIEdvb2dsZVByb3RvYnVmTW9kdWxlSW1wb3J0ZXI6CisgICAgICAgICBy ZXR1cm4gZmlsZXBhdGgKKyAgICAgcmV0dXJuIE5vbmUKKyAKKysgIGRlZiBsb2FkX3NvdXJjZShu YW1lOiBzdHIsIHBhdGg6IHN0cikgLT4gdHlwZXMuTW9kdWxlVHlwZToKKysgICAgc3BlYyA9IGlt cG9ydGxpYi51dGlsLnNwZWNfZnJvbV9maWxlX2xvY2F0aW9uKG5hbWUsIHBhdGgpCisrICAgIG1v ZHVsZSA9IGltcG9ydGxpYi51dGlsLm1vZHVsZV9mcm9tX3NwZWMoc3BlYykKKysgICAgc3BlYy5s b2FkZXIuZXhlY19tb2R1bGUobW9kdWxlKQorKyAgICByZXR1cm4gbW9kdWxlCisrCisgICBkZWYg X21vZHVsZV9leGlzdHMoc2VsZiwgZnVsbG5hbWUpOgorICAgICByZXR1cm4gc2VsZi5fZnVsbG5h bWVfdG9fZmlsZXBhdGgoZnVsbG5hbWUpIGlzIG5vdCBOb25lCisgCistLS0gYS9zcmMvM3JkcGFy dHkvY2hyb21pdW0vdGhpcmRfcGFydHkvY2F0YXB1bHQvY29tbW9uL3B5X3Z1bGNhbml6ZS9weV92 dWxjYW5pemUvaHRtbF9nZW5lcmF0aW9uX2NvbnRyb2xsZXIucHkKKysrKyBiL3NyYy8zcmRwYXJ0 eS9jaHJvbWl1bS90aGlyZF9wYXJ0eS9jYXRhcHVsdC9jb21tb24vcHlfdnVsY2FuaXplL3B5X3Z1 bGNhbml6ZS9odG1sX2dlbmVyYXRpb25fY29udHJvbGxlci5weQorQEAgLTE4LDcgKzE4LDcgQEAg Y2xhc3MgSFRNTEdlbmVyYXRpb25Db250cm9sbGVyKG9iamVjdCk6CisgCisgICBkZWYgR2V0SFRN TEZvcklubGluZVN0eWxlc2hlZXQoc2VsZiwgY29udGVudHMpOgorICAgICBpZiBzZWxmLmN1cnJl bnRfbW9kdWxlIGlzIE5vbmU6CistICAgICAgaWYgcmUuc2VhcmNoKCd1cmxcKC4rXCknLCBjb250 ZW50cyk6CisrICAgICAgaWYgcmUuc2VhcmNoKHIndXJsXCguK1wpJywgY29udGVudHMpOgorICAg ICAgICAgcmFpc2UgRXhjZXB0aW9uKAorICAgICAgICAgICAgICdEZWZhdWx0IEhUTUxHZW5lcmF0 aW9uQ29udHJvbGxlciBjYW5ub3QgaGFuZGxlIGlubGluZSBzdHlsZSB1cmxzJykKKyAgICAgICBy ZXR1cm4gY29udGVudHMKKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS90aGlyZF9wYXJ0eS9j YXRhcHVsdC9jb21tb24vcHlfdnVsY2FuaXplL3B5X3Z1bGNhbml6ZS9qc191dGlscy5weQorKysr IGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L2NhdGFwdWx0L2NvbW1vbi9weV92 dWxjYW5pemUvcHlfdnVsY2FuaXplL2pzX3V0aWxzLnB5CitAQCAtNCw0ICs0LDQgQEAKKyAKKyAK KyBkZWYgRXNjYXBlSlNJZk5lZWRlZChqcyk6CistICByZXR1cm4ganMucmVwbGFjZSgnPC9zY3Jp cHQ+JywgJzxcL3NjcmlwdD4nKQorKyAgcmV0dXJuIGpzLnJlcGxhY2Uocic8L3NjcmlwdD4nLCBy JzxcL3NjcmlwdD4nKQorLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L2Nh dGFwdWx0L2NvbW1vbi9weV92dWxjYW5pemUvcHlfdnVsY2FuaXplL3BhcnNlX2h0bWxfZGVwcy5w eQorKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L2NhdGFwdWx0L2NvbW1v bi9weV92dWxjYW5pemUvcHlfdnVsY2FuaXplL3BhcnNlX2h0bWxfZGVwcy5weQorQEAgLTI5Myw2 ICsyOTMsNiBAQCBjbGFzcyBIVE1MTW9kdWxlUGFyc2VyKCk6CisgICAgICAgaHRtbCA9ICcnCisg ICAgIGVsc2U6CisgICAgICAgaWYgaHRtbC5maW5kKCc8IC9zY3JpcHQ+JykgIT0gLTE6CistICAg ICAgICByYWlzZSBFeGNlcHRpb24oJ0VzY2FwZSBzY3JpcHQgdGFncyB3aXRoIDxcL3NjcmlwdD4n KQorKyAgICAgICAgcmFpc2UgRXhjZXB0aW9uKHInRXNjYXBlIHNjcmlwdCB0YWdzIHdpdGggPFwv c2NyaXB0PicpCisgCisgICAgIHJldHVybiBIVE1MTW9kdWxlUGFyc2VyUmVzdWx0cyhodG1sKQor LS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L2NhdGFwdWx0L2NvbW1vbi9w eV92dWxjYW5pemUvcHlfdnVsY2FuaXplL3N0eWxlX3NoZWV0LnB5CisrKysgYi9zcmMvM3JkcGFy dHkvY2hyb21pdW0vdGhpcmRfcGFydHkvY2F0YXB1bHQvY29tbW9uL3B5X3Z1bGNhbml6ZS9weV92 dWxjYW5pemUvc3R5bGVfc2hlZXQucHkKK0BAIC02MCw3ICs2MCw3IEBAIGNsYXNzIFBhcnNlZFN0 eWxlU2hlZXQob2JqZWN0KToKKyAgICAgICByZXR1cm4gJ3VybChkYXRhOmltYWdlLyVzO2Jhc2U2 NCwlcyknICUgKGV4dFsxOl0sIGRhdGEuZGVjb2RlKCd1dGYtOCcpKQorIAorICAgICAjIEknbSBh c3N1bWluZyB3ZSBvbmx5IGhhdmUgdXJsKCkncyBhc3NvY2lhdGVkIHdpdGggaW1hZ2VzCistICAg IHJldHVybiByZS5zdWIoJ3VybFwoKD9QPHF1b3RlPiJ8XCd8KSg/UDx1cmw+W14iXCcoKV0qKSg/ UD1xdW90ZSlcKScsCisrICAgIHJldHVybiByZS5zdWIocid1cmxcKCg/UDxxdW90ZT4ifFwnfCko P1A8dXJsPlteIlwnKCldKikoP1A9cXVvdGUpXCknLAorICAgICAgICAgICAgICAgICAgIElubGlu ZVVybCwgc2VsZi5jb250ZW50cykKKyAKKyAgIGRlZiBBcHBlbmREaXJlY3RseURlcGVuZGVudEZp bGVuYW1lc1RvKHNlbGYsIGRlcGVuZGVudF9maWxlbmFtZXMpOgorQEAgLTcyLDcgKzcyLDcgQEAg Y2xhc3MgUGFyc2VkU3R5bGVTaGVldChvYmplY3QpOgorICAgICAgIHJhaXNlIEV4Y2VwdGlvbign QGltcG9ydHMgYXJlIG5vdCBzdXBwb3J0ZWQnKQorIAorICAgICBtYXRjaGVzID0gcmUuZmluZGFs bCgKKy0gICAgICAgICd1cmxcKCg/OlsifFwnXT8pKFteIlwnKCldKikoPzpbInxcJ10/KVwpJywK KysgICAgICAgIHIndXJsXCgoPzpbInxcJ10/KShbXiJcJygpXSopKD86WyJ8XCddPylcKScsCisg ICAgICAgICBzZWxmLmNvbnRlbnRzKQorIAorICAgICBkZWYgcmVzb2x2ZV91cmwodXJsKToKKy0t LSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS90aGlyZF9wYXJ0eS9kYXduL2dlbmVyYXRvci9nZW5l cmF0b3JfbGliLnB5CisrKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFydHkvZGF3 bi9nZW5lcmF0b3IvZ2VuZXJhdG9yX2xpYi5weQorQEAgLTExOSw4ICsxMTksOCBAQCBjbGFzcyBf UHJlcHJvY2Vzc2luZ0xvYWRlcihqaW5qYTIuQmFzZUxvCisgICAgICAgICAgICAgc291cmNlID0g c2VsZi5wcmVwcm9jZXNzKGYucmVhZCgpKQorICAgICAgICAgcmV0dXJuIHNvdXJjZSwgcGF0aCwg bGFtYmRhOiBtdGltZSA9PSBvcy5wYXRoLmdldG10aW1lKHBhdGgpCisgCistICAgIGJsb2Nrc3Rh cnQgPSByZS5jb21waWxlKCd7JS0/XHMqKGlmfGVsaWZ8ZWxzZXxmb3J8YmxvY2t8bWFjcm8pW159 XSolfScpCistICAgIGJsb2NrZW5kID0gcmUuY29tcGlsZSgneyUtP1xzKihlbmQoaWZ8Zm9yfGJs b2NrfG1hY3JvKXxlbGlmfGVsc2UpW159XSolfScpCisrICAgIGJsb2Nrc3RhcnQgPSByZS5jb21w aWxlKHIneyUtP1xzKihpZnxlbGlmfGVsc2V8Zm9yfGJsb2NrfG1hY3JvKVtefV0qJX0nKQorKyAg ICBibG9ja2VuZCA9IHJlLmNvbXBpbGUocid7JS0/XHMqKGVuZChpZnxmb3J8YmxvY2t8bWFjcm8p fGVsaWZ8ZWxzZSlbXn1dKiV9JykKKyAKKyAgICAgZGVmIHByZXByb2Nlc3Moc2VsZiwgc291cmNl KToKKyAgICAgICAgIGxpbmVzID0gc291cmNlLnNwbGl0KCdcbicpCistLS0gYS9zcmMvM3JkcGFy dHkvY2hyb21pdW0vY29tcG9uZW50cy9yZXNvdXJjZXMvcHJvdG9idWZzL2JpbmFyeV9wcm90b19n ZW5lcmF0b3IucHkKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9jb21wb25lbnRzL3Jlc291 cmNlcy9wcm90b2J1ZnMvYmluYXJ5X3Byb3RvX2dlbmVyYXRvci5weQorQEAgLTE2LDYgKzE2LDcg QEAgaW1wb3J0IHJlCisgaW1wb3J0IHN1YnByb2Nlc3MKKyBpbXBvcnQgc3lzCisgaW1wb3J0IHRy YWNlYmFjaworK2ltcG9ydCB0eXBlcworIAorIAorIGNsYXNzIEdvb2dsZVByb3RvYnVmTW9kdWxl SW1wb3J0ZXI6CmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTE2LWNocm9t aXVtLTExOC13b3JrYXJvdW5kX2NsYW5nX2J1Zy1zdHJ1Y3R1cmVkX2JpbmRpbmcucGF0Y2ggYi9z cmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTE2LWNocm9taXVtLTExOC13b3JrYXJvdW5kX2NsYW5n X2J1Zy1zdHJ1Y3R1cmVkX2JpbmRpbmcucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg MDAwMDAwMDAwMDAwMDAuLjM4YWE0NzcxOTNhNWFiCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtn cy9xdDYtcGRmL3BhdGNoZXMvMDExNi1jaHJvbWl1bS0xMTgtd29ya2Fyb3VuZF9jbGFuZ19idWct c3RydWN0dXJlZF9iaW5kaW5nLnBhdGNoCkBAIC0wLDAgKzEsMjUgQEAKKy0tLSBhL3NyYy8zcmRw YXJ0eS9jaHJvbWl1bS9tZWRpYS9iYXNlL2NkbV9wcm9taXNlX2FkYXB0ZXIuY2MKKysrKyBiL3Ny Yy8zcmRwYXJ0eS9jaHJvbWl1bS9tZWRpYS9iYXNlL2NkbV9wcm9taXNlX2FkYXB0ZXIuY2MKK0BA IC05NCw3ICs5NCw5IEBAIHZvaWQgQ2RtUHJvbWlzZUFkYXB0ZXI6OlJlamVjdFByb21pc2UodWkK KyB2b2lkIENkbVByb21pc2VBZGFwdGVyOjpDbGVhcihDbGVhclJlYXNvbiByZWFzb24pIHsKKyAg IC8vIFJlamVjdCBhbGwgb3V0c3RhbmRpbmcgcHJvbWlzZXMuCisgICBEQ0hFQ0sodGhyZWFkX2No ZWNrZXJfLkNhbGxlZE9uVmFsaWRUaHJlYWQoKSk7CistICBmb3IgKGF1dG8mIFtwcm9taXNlX2lk LCBwcm9taXNlXSA6IHByb21pc2VzXykgeworKyAgZm9yIChhdXRvJiBbcF9pLCBwX2VdIDogcHJv bWlzZXNfKSB7CisrICAgIGF1dG8mIHByb21pc2VfaWQgPSBwX2k7CisrICAgIGF1dG8mIHByb21p c2UgPSBwX2U7CisgICAgIFRSQUNFX0VWRU5UX05FU1RBQkxFX0FTWU5DX0VORDEoCisgICAgICAg ICAibWVkaWEiLCAiQ2RtUHJvbWlzZSIsIFRSQUNFX0lEX1dJVEhfU0NPUEUoIkNkbVByb21pc2Ui LCBwcm9taXNlX2lkKSwKKyAgICAgICAgICJzdGF0dXMiLCAiY2xlYXJlZCIpOworLS0tIGEvc3Jj LzNyZHBhcnR5L2Nocm9taXVtL2NvbnRlbnQvYnJvd3Nlci9zZXJ2aWNlX3dvcmtlci9zZXJ2aWNl X3dvcmtlcl9jb250ZXh0X3dyYXBwZXIuY2MKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9j b250ZW50L2Jyb3dzZXIvc2VydmljZV93b3JrZXIvc2VydmljZV93b3JrZXJfY29udGV4dF93cmFw cGVyLmNjCitAQCAtMTQwOSw3ICsxNDA5LDggQEAgdm9pZCBTZXJ2aWNlV29ya2VyQ29udGV4dFdy YXBwZXI6Ok1heWJlUAorICAgICByZXR1cm47CisgICB9CisgCistICBhdXRvIFtkb2N1bWVudF91 cmwsIGtleSwgY2FsbGJhY2tdID0gc3RkOjptb3ZlKCpyZXF1ZXN0KTsKKysgIGF1dG8gW2RfdSwg a2V5LCBjYWxsYmFja10gPSBzdGQ6Om1vdmUoKnJlcXVlc3QpOworKyAgYXV0byBkb2N1bWVudF91 cmwgPSBkX3U7CisgCisgICBEQ0hFQ0soZG9jdW1lbnRfdXJsLmlzX3ZhbGlkKCkpOworICAgVFJB Q0VfRVZFTlQxKCJTZXJ2aWNlV29ya2VyIiwKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LXBkZi9w YXRjaGVzLzAxMTctY2hyb21pdW0taTY4Ni12YWFwaS1mcGVybWlzc2l2ZS5wYXRjaCBiL3NyY3Br Z3MvcXQ2LXBkZi9wYXRjaGVzLzAxMTctY2hyb21pdW0taTY4Ni12YWFwaS1mcGVybWlzc2l2ZS5w YXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMC4uYWQyMTAyZDY1 MGNjNmQKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTE3LWNo cm9taXVtLWk2ODYtdmFhcGktZnBlcm1pc3NpdmUucGF0Y2gKQEAgLTAsMCArMSwyMyBAQAorLS0t IGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL21lZGlhL2dwdS92YWFwaS9CVUlMRC5nbgorKysrIGIv c3JjLzNyZHBhcnR5L2Nocm9taXVtL21lZGlhL2dwdS92YWFwaS9CVUlMRC5nbgorQEAgLTEzLDYg KzEzLDEyIEBAIGltcG9ydCgiLy90b29scy9nZW5lcmF0ZV9zdHVicy9ydWxlcy5nbmkKKyBhc3Nl cnQoaXNfbGludXggfHwgaXNfY2hyb21lb3MpCisgYXNzZXJ0KHVzZV92YWFwaSkKKyAKKytjb25m aWcoInZhYXBpX3Blcm1pc3NpdmUiKSB7CisrICBpZiAodGFyZ2V0X2NwdSA9PSAieDg2Iikgewor KyAgICBjZmxhZ3MgPSBbICItZnBlcm1pc3NpdmUiIF0KKysgIH0KKyt9CisrCisgZ2VuZXJhdGVf c3R1YnMoImxpYnZhX3N0dWJzIikgeworICAgZXh0cmFfaGVhZGVyID0gInZhX3N0dWJfaGVhZGVy LmZyYWdtZW50IgorICAgc2lncyA9IFsgInZhLnNpZ3MiIF0KK0BAIC04MSw2ICs4Nyw3IEBAIHNv dXJjZV9zZXQoInZhYXBpIikgeworICAgY29uZmlncyArPSBbCisgICAgICIvL2J1aWxkL2NvbmZp Zy9saW51eC9saWJ2YSIsCisgICAgICIvL3RoaXJkX3BhcnR5L2xpYnZweDpsaWJ2cHhfY29uZmln IiwKKysgICAgIjp2YWFwaV9wZXJtaXNzaXZlIiwKKyAgIF0KKyAKKyAgIGRlcHMgPSBbCmRpZmYg LS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTE3LWNocm9taXVtLW11c2wtcmVzb2x2 ZXIucGF0Y2ggYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTE3LWNocm9taXVtLW11c2wtcmVz b2x2ZXIucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDEyZDFmODE4MzNjYmFk Li4wMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTE3LWNocm9t aXVtLW11c2wtcmVzb2x2ZXIucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw2MCArMCwwIEBACi1k aWZmIC0tZ2l0IGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL25ldC9kbnMvZG5zX3JlbG9hZGVyLmNj IGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL25ldC9kbnMvZG5zX3JlbG9hZGVyLmNjCi1pbmRleCAz NjNlYjE0ZGMuLjNhODZjMTJlZSAxMDA2NDQKLS0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9u ZXQvZG5zL2Ruc19yZWxvYWRlci5jYwotKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL25ldC9k bnMvZG5zX3JlbG9hZGVyLmNjCi1AQCAtOCw3ICs4LDcgQEAKLSAKLSAvLyBJZiB3ZSdyZSBub3Qg b24gYSBQT1NJWCBzeXN0ZW0sIGl0J3Mgbm90IGV2ZW4gc2FmZSB0byB0cnkgdG8gaW5jbHVkZSBy ZXNvbHYuaAotIC8vIC0gdGhlcmUncyBub3QgZ3VhcmFudGVlIGl0IGV4aXN0cyBhdCBhbGwuIDoo Ci0tI2lmIEJVSUxERkxBRyhJU19QT1NJWCkKLSsjaWYgZGVmaW5lZChfX0dMSUJDX18pCi0gCi0g I2luY2x1ZGUgPHJlc29sdi5oPgotIAotZGlmZiAtLWdpdCBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1 bS9uZXQvZG5zL2hvc3RfcmVzb2x2ZXJfc3lzdGVtX3Rhc2suY2MgYi9zcmMvM3JkcGFydHkvY2hy b21pdW0vbmV0L2Rucy9ob3N0X3Jlc29sdmVyX3N5c3RlbV90YXNrLmNjCi1pbmRleCBkODE0MmU4 ZGEuLmYyNDYxYjg3NyAxMDA2NDQKLS0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9uZXQvZG5z L2hvc3RfcmVzb2x2ZXJfc3lzdGVtX3Rhc2suY2MKLSsrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1 bS9uZXQvZG5zL2hvc3RfcmVzb2x2ZXJfc3lzdGVtX3Rhc2suY2MKLUBAIC0zNTEsOCArMzUxLDkg QEAgdm9pZCBIb3N0UmVzb2x2ZXJTeXN0ZW1UYXNrOjpPbkxvb2t1cENvbXBsZXRlKGNvbnN0IHVp bnQzMl90IGF0dGVtcHRfbnVtYmVyLAotIH0KLSAKLSB2b2lkIEVuc3VyZVN5c3RlbUhvc3RSZXNv bHZlckNhbGxSZWFkeSgpIHsKLSsjaWYgZGVmaW5lZChfX0dMSUJDX18pCi0gICBFbnN1cmVEbnNS ZWxvYWRlckluaXQoKTsKLS0jaWYgQlVJTERGTEFHKElTX1dJTikKLSsjZWxpZiBCVUlMREZMQUco SVNfV0lOKQotICAgRW5zdXJlV2luc29ja0luaXQoKTsKLSAjZW5kaWYKLSB9Ci1AQCAtNDM0LDcg KzQzNSw5IEBAIGludCBTeXN0ZW1Ib3N0UmVzb2x2ZXJDYWxsKGNvbnN0IHN0ZDo6c3RyaW5nJiBo b3N0LAotICAgLy8gY3VycmVudCBwcm9jZXNzIGR1cmluZyB0aGF0IHRpbWUuCi0gICBiYXNlOjpT Y29wZWRCbG9ja2luZ0NhbGwgc2NvcGVkX2Jsb2NraW5nX2NhbGwoRlJPTV9IRVJFLAotICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhc2U6OkJsb2NraW5n VHlwZTo6V0lMTF9CTE9DSyk7Ci0rI2lmIGRlZmluZWQoX19HTElCQ19fKQotICAgRG5zUmVsb2Fk ZXJNYXliZVJlbG9hZCgpOwotKyNlbmRpZgotIAotICAgYXV0byBbYWksIGVyciwgb3NfZXJyb3Jd ID0gQWRkcmVzc0luZm86OkdldChob3N0LCBoaW50cywgbnVsbHB0ciwgbmV0d29yayk7Ci0gICBi b29sIHNob3VsZF9yZXRyeSA9IGZhbHNlOwotZGlmZiAtLWdpdCBhL3NyYy8zcmRwYXJ0eS9jaHJv bWl1bS9uZXQvZG5zL3B1YmxpYy9zY29wZWRfcmVzX3N0YXRlLmNjIGIvc3JjLzNyZHBhcnR5L2No cm9taXVtL25ldC9kbnMvcHVibGljL3Njb3BlZF9yZXNfc3RhdGUuY2MKLWluZGV4IDI3NDM2OTdi Zi4uMzZkYzhhZGJmIDEwMDY0NAotLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL25ldC9kbnMv cHVibGljL3Njb3BlZF9yZXNfc3RhdGUuY2MKLSsrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9u ZXQvZG5zL3B1YmxpYy9zY29wZWRfcmVzX3N0YXRlLmNjCi1AQCAtMTMsNyArMTMsNyBAQAotIG5h bWVzcGFjZSBuZXQgewotIAotIFNjb3BlZFJlc1N0YXRlOjpTY29wZWRSZXNTdGF0ZSgpIHsKLS0j aWYgQlVJTERGTEFHKElTX09QRU5CU0QpIHx8IEJVSUxERkxBRyhJU19GVUNIU0lBKQotKyNpZiBC VUlMREZMQUcoSVNfT1BFTkJTRCkgfHwgQlVJTERGTEFHKElTX0ZVQ0hTSUEpIHx8IChCVUlMREZM QUcoSVNfTElOVVgpICYmICFkZWZpbmVkKF9fR0xJQkNfXykpCi0gICAvLyBOb3RlOiByZXNfbmlu aXQgaW4gZ2xpYmMgYWx3YXlzIHJldHVybnMgMCBhbmQgc2V0cyBSRVNfSU5JVC4KLSAgIC8vIHJl c19pbml0IGJlaGF2ZXMgdGhlIHNhbWUgd2F5LgotICAgbWVtc2V0KCZfcmVzLCAwLCBzaXplb2Yo X3JlcykpOwotQEAgLTI1LDcgKzI1LDcgQEAgU2NvcGVkUmVzU3RhdGU6OlNjb3BlZFJlc1N0YXRl KCkgewotIH0KLSAKLSBTY29wZWRSZXNTdGF0ZTo6flNjb3BlZFJlc1N0YXRlKCkgewotLSNpZiAh QlVJTERGTEFHKElTX09QRU5CU0QpICYmICFCVUlMREZMQUcoSVNfRlVDSFNJQSkKLSsjaWYgIUJV SUxERkxBRyhJU19PUEVOQlNEKSAmJiAhQlVJTERGTEFHKElTX0ZVQ0hTSUEpICYmICEoQlVJTERG TEFHKElTX0xJTlVYKSAmJiAhZGVmaW5lZChfX0dMSUJDX18pKQotIAotICAgLy8gUHJlZmVyIHJl c19uZGVzdHJveSB3aGVyZSBhdmFpbGFibGUuCi0gI2lmIEJVSUxERkxBRyhJU19BUFBMRSkgfHwg QlVJTERGTEFHKElTX0ZSRUVCU0QpCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hl cy8wMTA1LWNocm9taXVtLXJldmVydC1kcm9wLW9mLXN5c3RlbS1qYXZhLnBhdGNoIGIvc3JjcGtn cy9xdDYtcGRmL3BhdGNoZXMvMDExOC1jaHJvbWl1bS1yZXZlcnQtZHJvcC1vZi1zeXN0ZW0tamF2 YS5wYXRjaApzaW1pbGFyaXR5IGluZGV4IDc2JQpyZW5hbWUgZnJvbSBzcmNwa2dzL3F0Ni1wZGYv cGF0Y2hlcy8wMTA1LWNocm9taXVtLXJldmVydC1kcm9wLW9mLXN5c3RlbS1qYXZhLnBhdGNoCnJl bmFtZSB0byBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTE4LWNocm9taXVtLXJldmVydC1kcm9w LW9mLXN5c3RlbS1qYXZhLnBhdGNoCmluZGV4IGQ2YWJmN2FkY2FiY2Q2Li40NGYzYWE4ZmFlNWU5 NCAxMDA2NDQKLS0tIGEvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDEwNS1jaHJvbWl1bS1yZXZl cnQtZHJvcC1vZi1zeXN0ZW0tamF2YS5wYXRjaAorKysgYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hl cy8wMTE4LWNocm9taXVtLXJldmVydC1kcm9wLW9mLXN5c3RlbS1qYXZhLnBhdGNoCkBAIC0xLDYg KzEsNiBAQAogVGhpcyB3YXMgZHJvcHBlZCBmb3Igc29tZSByZWFzb24gaW4gNjk1MWMzN2NlY2Qw NTk3OWIyMzJhMzllNWMxMGU2MzQ2YTBmNzRlZgotLS0tIHF0Ni13ZWJlbmdpbmUtNi40LjIub3Jp Zy9zcmMvM3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFydHkvY2xvc3VyZV9jb21waWxlci9jb21w aWxlci5weQotKysrIHF0Ni13ZWJlbmdpbmUtNi40LjIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3Ro aXJkX3BhcnR5L2Nsb3N1cmVfY29tcGlsZXIvY29tcGlsZXIucHkKKy0tLSBhL3NyYy8zcmRwYXJ0 eS9jaHJvbWl1bS90aGlyZF9wYXJ0eS9jbG9zdXJlX2NvbXBpbGVyL2NvbXBpbGVyLnB5CisrKysg Yi9zcmMvM3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFydHkvY2xvc3VyZV9jb21waWxlci9jb21w aWxlci5weQogQEAgLTEzLDggKzEzLDkgQEAgaW1wb3J0IHN1YnByb2Nlc3MKICAKICAKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMTktY2hyb21pdW0tc3lzdGVtLW5vZGVq cy5wYXRjaCBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMTktY2hyb21pdW0tc3lzdGVtLW5v ZGVqcy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMC4uMjI0 ZDUzOWU2ZjU5ZWYKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8w MTE5LWNocm9taXVtLXN5c3RlbS1ub2RlanMucGF0Y2gKQEAgLTAsMCArMSwyMCBAQAorLS0tIGEv c3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L25vZGUvbm9kZS5weQorKysrIGIvc3Jj LzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L25vZGUvbm9kZS5weQorQEAgLTMyLDExICsz MiwxMiBAQCBkZWYgR2V0QmluYXJ5UGF0aCgpOgorIAorICAgZGFyd2luX25hbWUgPSAoJ25vZGUt ZGFyd2luLWFybTY0JyBpZiBwbGF0Zm9ybS5tYWNoaW5lKCkgPT0gJ2FybTY0JyBlbHNlCisgICAg ICAgICAgICAgICAgICAnbm9kZS1kYXJ3aW4teDY0JykKKy0gIHJldHVybiBvc19wYXRoLmpvaW4o b3NfcGF0aC5kaXJuYW1lKF9fZmlsZV9fKSwgKnsKKy0gICAgJ0Rhcndpbic6ICgnbWFjJywgZGFy d2luX25hbWUsICdiaW4nLCAnbm9kZScpLAorLSAgICAnTGludXgnOiAoJ2xpbnV4JywgJ25vZGUt bGludXgteDY0JywgJ2JpbicsICdub2RlJyksCistICAgICdXaW5kb3dzJzogKCd3aW4nLCAnbm9k ZS5leGUnKSwKKy0gIH1bcGxhdGZvcm0uc3lzdGVtKCldKQorKyAgI3JldHVybiBvc19wYXRoLmpv aW4ob3NfcGF0aC5kaXJuYW1lKF9fZmlsZV9fKSwgKnsKKysgICMgICdEYXJ3aW4nOiAoJ21hYycs IGRhcndpbl9uYW1lLCAnYmluJywgJ25vZGUnKSwKKysgICMgICdMaW51eCc6ICgnbGludXgnLCAn bm9kZS1saW51eC14NjQnLCAnYmluJywgJ25vZGUnKSwKKysgICMgICdXaW5kb3dzJzogKCd3aW4n LCAnbm9kZS5leGUnKSwKKysgICN9W3BsYXRmb3JtLnN5c3RlbSgpXSkKKysgIHJldHVybiAiL3Vz ci9iaW4vbm9kZSIKKyAKKyAKKyBkZWYgUnVuTm9kZShjbWRfcGFydHMsIHN0ZG91dD1Ob25lKToK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMDctY2hyb21pdW0tY3Jvc3Mt YnVpbGQucGF0Y2ggYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTIwLWNyb3NzLWJ1aWxkLnBh dGNoCnNpbWlsYXJpdHkgaW5kZXggNzIlCnJlbmFtZSBmcm9tIHNyY3BrZ3MvcXQ2LXBkZi9wYXRj aGVzLzAxMDctY2hyb21pdW0tY3Jvc3MtYnVpbGQucGF0Y2gKcmVuYW1lIHRvIHNyY3BrZ3MvcXQ2 LXBkZi9wYXRjaGVzLzAxMjAtY3Jvc3MtYnVpbGQucGF0Y2gKaW5kZXggN2ZiZmFiY2Q3OWI3OWUu LmM1MzNlNTAwYTcxOTAyIDEwMDY0NAotLS0gYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTA3 LWNocm9taXVtLWNyb3NzLWJ1aWxkLnBhdGNoCisrKyBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVz LzAxMjAtY3Jvc3MtYnVpbGQucGF0Y2gKQEAgLTEsNiArMSw2IEBACi0tLS0gcXQ2LXdlYmVuZ2lu ZS02LjQuMi5vcmlnL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9idWlsZC9jb25maWcvY29tcGlsZXIv QlVJTEQuZ24KLSsrKyBxdDYtd2ViZW5naW5lLTYuNC4yL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9i dWlsZC9jb25maWcvY29tcGlsZXIvQlVJTEQuZ24KLUBAIC01OCw2ICs1OCwxMCBAQCBpZiAoIWlz X2NsYW5nKSB7CistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vYnVpbGQvY29uZmlnL2NvbXBp bGVyL0JVSUxELmduCisrKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vYnVpbGQvY29uZmlnL2Nv bXBpbGVyL0JVSUxELmduCitAQCAtNTksNiArNTksMTAgQEAgaWYgKCFpc19jbGFuZykgewogIH0K ICAKICBkZWNsYXJlX2FyZ3MoKSB7CkBAIC0xMSw3ICsxMSw3IEBACiAgICAjIE5vcm1hbGx5LCBB bmRyb2lkIGJ1aWxkcyBhcmUgbGlnaHRseSBvcHRpbWl6ZWQsIGV2ZW4gZm9yIGRlYnVnIGJ1aWxk cywgdG8KICAgICMga2VlcCBiaW5hcnkgc2l6ZSBkb3duLiBTZXR0aW5nIHRoaXMgZmxhZyB0byB0 cnVlIGRpc2FibGVzIHN1Y2ggb3B0aW1pemF0aW9uCiAgICBhbmRyb2lkX2Z1bGxfZGVidWcgPSBm YWxzZQotQEAgLTEwMDMsOCArMTAwMywxMyBAQAorQEAgLTExOTAsOCArMTE5NCwxMyBAQCBjb25m aWcoImNvbXBpbGVyX2NwdV9hYmkiKSB7CiAgICAgIH0gZWxzZSBpZiAoY3VycmVudF9jcHUgPT0g ImFybTY0IikgewogICAgICAgIGlmIChpc19jbGFuZyAmJiAhaXNfYW5kcm9pZCAmJiAhaXNfbmFj bCAmJiAhaXNfZnVjaHNpYSAmJgogICAgICAgICAgICAhKGlzX2Nocm9tZW9zX2xhY3JvcyAmJiBp c19jaHJvbWVvc19kZXZpY2UpKSB7CkBAIC0yNSwxMCArMjUsMTAgQEAKICsgICAgICAgICAgbGRm bGFncyArPSBbICItLXRhcmdldD1hYXJjaDY0LWxpbnV4LWdudSIgXQogKyAgICAgICAgfQogICAg ICAgIH0KLSAgICAgICBpZiAoaXNfYW5kcm9pZCkgewotICAgICAgICAgIyBPdXRsaW5lIGF0b21p Y3MgY3Jhc2ggb24gRXh5bm9zIDk4MTAuIGh0dHA6Ly9jcmJ1Zy5jb20vMTI3Mjc5NQotLS0tIHF0 Ni13ZWJlbmdpbmUtNi40LjIub3JpZy9zcmMvM3JkcGFydHkvY2hyb21pdW0vYnVpbGQvdG9vbGNo YWluL2xpbnV4L3VuYnVuZGxlL0JVSUxELmduCi0rKysgcXQ2LXdlYmVuZ2luZS02LjQuMi9zcmMv M3JkcGFydHkvY2hyb21pdW0vYnVpbGQvdG9vbGNoYWluL2xpbnV4L3VuYnVuZGxlL0JVSUxELmdu CisgICAgIH0gZWxzZSBpZiAoY3VycmVudF9jcHUgPT0gIm1pcHNlbCIgJiYgIWlzX25hY2wpIHsK KyAgICAgICBsZGZsYWdzICs9IFsgIi1XbCwtLWhhc2gtc3R5bGU9c3lzdiIgXQorLS0tIGEvc3Jj LzNyZHBhcnR5L2Nocm9taXVtL2J1aWxkL3Rvb2xjaGFpbi9saW51eC91bmJ1bmRsZS9CVUlMRC5n bgorKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL2J1aWxkL3Rvb2xjaGFpbi9saW51eC91bmJ1 bmRsZS9CVUlMRC5nbgogQEAgLTM5LDMgKzM5LDIyIEBAIGdjY190b29sY2hhaW4oImhvc3QiKSB7 CiAgICAgIGN1cnJlbnRfb3MgPSBjdXJyZW50X29zCiAgICB9CkBAIC01Miw4ICs1Miw4IEBACiAr ICAgIHY4X2N1cnJlbnRfY3B1ID0gdGFyZ2V0X2NwdQogKyAgfQogK30KLS0tLSBxdDYtd2ViZW5n aW5lLTYuNC4yLm9yaWcvc3JjLzNyZHBhcnR5L2Nocm9taXVtL2J1aWxkL2NvbmZpZy9saW51eC9w a2dfY29uZmlnLmduaQotKysrIHF0Ni13ZWJlbmdpbmUtNi40LjIvc3JjLzNyZHBhcnR5L2Nocm9t aXVtL2J1aWxkL2NvbmZpZy9saW51eC9wa2dfY29uZmlnLmduaQorLS0tIGEvc3JjLzNyZHBhcnR5 L2Nocm9taXVtL2J1aWxkL2NvbmZpZy9saW51eC9wa2dfY29uZmlnLmduaQorKysrIGIvc3JjLzNy ZHBhcnR5L2Nocm9taXVtL2J1aWxkL2NvbmZpZy9saW51eC9wa2dfY29uZmlnLmduaQogQEAgLTky LDcgKzkyLDcgQEAgdGVtcGxhdGUoInBrZ19jb25maWciKSB7CiAgICBhc3NlcnQoZGVmaW5lZChp bnZva2VyLnBhY2thZ2VzKSwKICAgICAgICAgICAiVmFyaWFibGUgfHBhY2thZ2VzfCBtdXN0IGJl IGRlZmluZWQgdG8gYmUgYSBsaXN0IGluIHBrZ19jb25maWcuIikKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvcXQ2LXBkZi9wYXRjaGVzLzAxMjEtZmMtY2FjaGUtdmVyc2lvbi5wYXRjaCBiL3NyY3BrZ3Mv cXQ2LXBkZi9wYXRjaGVzLzAxMjEtZmMtY2FjaGUtdmVyc2lvbi5wYXRjaApuZXcgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMC4uZDgyMjZmMGIwNjMyMjYKLS0tIC9kZXYvbnVs bAorKysgYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTIxLWZjLWNhY2hlLXZlcnNpb24ucGF0 Y2gKQEAgLTAsMCArMSwxMyBAQAoraW5zdGVhZCBvZiBoYXJkY29kaW5nIHRoZSB2ZXJzaW9uLCB1 c2UgdGhlIGRlZmluZWQgbWFjcm8uCistLQorLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3Ro aXJkX3BhcnR5L3Rlc3RfZm9udHMvZm9udGNvbmZpZy9nZW5lcmF0ZV9mb250Y29uZmlnX2NhY2hl cy5jYworKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L3Rlc3RfZm9udHMv Zm9udGNvbmZpZy9nZW5lcmF0ZV9mb250Y29uZmlnX2NhY2hlcy5jYworQEAgLTU2LDcgKzU2LDcg QEAgaW50IG1haW4oKSB7CisgICBGY0ZpbmkoKTsKKyAKKyAgIC8vIENoZWNrIGV4aXN0ZW5jZSBv ZiBpbnRlbmRlZCBmb250Y29uZmlnIGNhY2hlIGZpbGUuCistICBhdXRvIGNhY2hlID0gZm9udGNv bmZpZ19jYWNoZXMgKyAiLyIgKyBrQ2FjaGVLZXkgKyAiLWxlNjQuY2FjaGUtOSI7CisrICBhdXRv IGNhY2hlID0gZm9udGNvbmZpZ19jYWNoZXMgKyAiLyIgKyBrQ2FjaGVLZXkgKyAiLWxlNjQuY2Fj aGUtIiArIEZDX0NBQ0hFX1ZFUlNJT047CisgICBib29sIGNhY2hlX2V4aXN0cyA9IGFjY2Vzcyhj YWNoZS5jX3N0cigpLCBGX09LKSA9PSAwOworICAgcmV0dXJuICFjYWNoZV9leGlzdHM7CisgfQpk aWZmIC0tZ2l0IGEvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDEwOS1jaHJvbWl1bS1hYXJjaDY0 LW11c2wtbWVtb3J5LXRhZ2dpbmcucGF0Y2ggYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTIy LWZpeC1hYXJjaDY0LW11c2wtbWVtb3J5LXRhZ2dpbmctbWFjcm9zLnBhdGNoCnNpbWlsYXJpdHkg aW5kZXggNzMlCnJlbmFtZSBmcm9tIHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMDktY2hyb21p dW0tYWFyY2g2NC1tdXNsLW1lbW9yeS10YWdnaW5nLnBhdGNoCnJlbmFtZSB0byBzcmNwa2dzL3F0 Ni1wZGYvcGF0Y2hlcy8wMTIyLWZpeC1hYXJjaDY0LW11c2wtbWVtb3J5LXRhZ2dpbmctbWFjcm9z LnBhdGNoCmluZGV4IDBmZjJhMmE1MWFhYWE4Li5mMmQ2NTQxYjI2ZjRmYyAxMDA2NDQKLS0tIGEv c3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDEwOS1jaHJvbWl1bS1hYXJjaDY0LW11c2wtbWVtb3J5 LXRhZ2dpbmcucGF0Y2gKKysrIGIvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDEyMi1maXgtYWFy Y2g2NC1tdXNsLW1lbW9yeS10YWdnaW5nLW1hY3Jvcy5wYXRjaApAQCAtMSw2ICsxLDYgQEAKLS0t LSBxdDYtd2ViZW5naW5lLTYuNC4yLm9yaWcvc3JjLzNyZHBhcnR5L2Nocm9taXVtL2Jhc2UvYWxs b2NhdG9yL3BhcnRpdGlvbl9hbGxvY2F0b3IvdGFnZ2luZy5jYwotKysrIHF0Ni13ZWJlbmdpbmUt Ni40LjIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL2Jhc2UvYWxsb2NhdG9yL3BhcnRpdGlvbl9hbGxv Y2F0b3IvdGFnZ2luZy5jYwotQEAgLTI4LDEzICsyOCwyNSBAQAorLS0tIGEvc3JjLzNyZHBhcnR5 L2Nocm9taXVtL2Jhc2UvYWxsb2NhdG9yL3BhcnRpdGlvbl9hbGxvY2F0b3IvdGFnZ2luZy5jYwor KysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL2Jhc2UvYWxsb2NhdG9yL3BhcnRpdGlvbl9hbGxv Y2F0b3IvdGFnZ2luZy5jYworQEAgLTI5LDEzICsyOSwyNSBAQAogICNlbmRpZgogICNlbmRpZgog IApAQCAtMjUsNSArMjUsNSBAQAogKyNlbmRpZgogKyNpZm5kZWYgUFJfTVRFX1RBR19NQVNLCiAg I2RlZmluZSBQUl9NVEVfVEFHX01BU0sgKDB4ZmZmZlVMIDw8IFBSX01URV9UQUdfU0hJRlQpCi0g I2VuZGlmCisgI2RlZmluZSBIV0NBUDJfTVRFICgxIDw8IDE4KQogICNlbmRpZgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDEyMy1maXgtYXJndW1lbnRfc3BlYy1pc25hbi1p c2luZi5wYXRjaCBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMjMtZml4LWFyZ3VtZW50X3Nw ZWMtaXNuYW4taXNpbmYucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw MDAwMDAuLmQzM2RlMjRmYWZiOGU5Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9xdDYtcGRm L3BhdGNoZXMvMDEyMy1maXgtYXJndW1lbnRfc3BlYy1pc25hbi1pc2luZi5wYXRjaApAQCAtMCww ICsxLDExIEBACistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vZXh0ZW5zaW9ucy9yZW5kZXJl ci9iaW5kaW5ncy9hcmd1bWVudF9zcGVjLmNjCisrKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0v ZXh0ZW5zaW9ucy9yZW5kZXJlci9iaW5kaW5ncy9hcmd1bWVudF9zcGVjLmNjCitAQCAtMiw2ICsy LDggQEAKKyAvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1z dHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisgLy8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4K KyAKKysjaW5jbHVkZSA8Y21hdGg+CisrCisgI2luY2x1ZGUgImV4dGVuc2lvbnMvcmVuZGVyZXIv YmluZGluZ3MvYXJndW1lbnRfc3BlYy5oIgorIAorICNpbmNsdWRlIDxjbWF0aD4KZGlmZiAtLWdp dCBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMjQtZml4LWNvbnN0ZXhwci1uYXJyb3dpbmcu cGF0Y2ggYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTI0LWZpeC1jb25zdGV4cHItbmFycm93 aW5nLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwLi5mM2U2 Y2YwNTE0NjVhYwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAx MjQtZml4LWNvbnN0ZXhwci1uYXJyb3dpbmcucGF0Y2gKQEAgLTAsMCArMSwyMSBAQAorLS0tIGEv c3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L2JsaW5rL3JlbmRlcmVyL3BsYXRmb3Jt L21lZGlhL3dlYl9tZWRpYV9wbGF5ZXJfaW1wbC5jYworKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9t aXVtL3RoaXJkX3BhcnR5L2JsaW5rL3JlbmRlcmVyL3BsYXRmb3JtL21lZGlhL3dlYl9tZWRpYV9w bGF5ZXJfaW1wbC5jYworQEAgLTM3MzIsMTUgKzM3MzIsMTUgQEAgdm9pZCBXZWJNZWRpYVBsYXll ckltcGw6OldyaXRlU3BsaXRIaXN0bworICAgICBjb25zdCBUJi4uLiB2YWx1ZXMpIHsKKyAgIHN0 ZDo6c3RyaW5nIHN0cmtleSA9IHN0ZDo6c3RyaW5nKGtleSk7CisgCistICBpZiBjb25zdGV4cHIg KEZsYWdzICYga0VuY3J5cHRlZCkgeworKyAgaWYgY29uc3RleHByIChGbGFncyAmIGtFbmNyeXB0 ZWQgIT0gMCkgeworICAgICBpZiAoaXNfZW5jcnlwdGVkXykKKyAgICAgICBVbWFGdW5jdGlvbihz dHJrZXkgKyAiLkVNRSIsIHZhbHVlcy4uLik7CisgICB9CisgCistICBpZiBjb25zdGV4cHIgKEZs YWdzICYga1RvdGFsKQorKyAgaWYgY29uc3RleHByIChGbGFncyAmIGtUb3RhbCAhPSAwKQorICAg ICBVbWFGdW5jdGlvbihzdHJrZXkgKyAiLkFsbCIsIHZhbHVlcy4uLik7CisgCistICBpZiBjb25z dGV4cHIgKEZsYWdzICYga1BsYXliYWNrVHlwZSkgeworKyAgaWYgY29uc3RleHByIChGbGFncyAm IGtQbGF5YmFja1R5cGUgIT0gMCkgeworICAgICBhdXRvIGRlbXV4ZXJfdHlwZSA9IEdldERlbXV4 ZXJUeXBlKCk7CisgICAgIGlmICghZGVtdXhlcl90eXBlLmhhc192YWx1ZSgpKQorICAgICAgIHJl dHVybjsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMjUtZml4LWRhd24t cGxhdGZvcm0ucGF0Y2ggYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTI1LWZpeC1kYXduLXBs YXRmb3JtLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwLi44 NWU0MjdiYmU2ODI1NQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVz LzAxMjUtZml4LWRhd24tcGxhdGZvcm0ucGF0Y2gKQEAgLTAsMCArMSw1NSBAQAorRnJvbSBmODE1 ZTgzM2M5NDZhNTk2MjBhMmNhOWRmMzdhMWRhNzQ2ZjYxNDYwIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQorRnJvbTogcTY2IDxkYW5pZWxAb2N0YWZvcmdlLm9yZz4KK0RhdGU6IFNhdCwgMSBPY3Qg MjAyMiAwMDoyMTowOSArMDAwMAorU3ViamVjdDogW1BBVENIXSBmaXggZGF3biBidWlsZCBmb3Ig cHBjNjQKKworLS0tCisgdGhpcmRfcGFydHkvZGF3bi9zcmMvZGF3bi9jb21tb24vQXNzZXJ0LmNw cCB8ICA0ICsrLS0KKyB0aGlyZF9wYXJ0eS9kYXduL3NyYy9kYXduL2NvbW1vbi9QbGF0Zm9ybS5o IHwgMTAgKysrKystLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCA3IGRl bGV0aW9ucygtKQorCistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFydHkvZGF3 bi9zcmMvZGF3bi9jb21tb24vQXNzZXJ0LmNwcAorKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVt L3RoaXJkX3BhcnR5L2Rhd24vc3JjL2Rhd24vY29tbW9uL0Fzc2VydC5jcHAKK0BAIC0zOSw5ICsz OSw5IEBAIHZvaWQgQnJlYWtQb2ludCgpIHsKKyAgICAgX19hc21fXyBfX3ZvbGF0aWxlX18oImVi cmVhayIpOworICNlbGlmIERBV05fUExBVEZPUk1fSVMoTUlQUykKKyAgICAgX19hc21fXyBfX3Zv bGF0aWxlX18oImJyZWFrIik7CistI2VsaWYgREFXTl9QTEFURk9STV9JUyhTMzkwKSB8fCBEQVdO X1BMQVRGT1JNX0lTXyhTMzkwWCkKKysjZWxpZiBEQVdOX1BMQVRGT1JNX0lTKFMzOTApIHx8IERB V05fUExBVEZPUk1fSVMoUzM5MFgpCisgICAgIF9fYXNtX18gX192b2xhdGlsZV9fKCIud29yZCAw eDAwMDEiKTsKKy0jZWxpZiBEQVdOX1BMQVRGT1JNX0lTKFBQQykgfHwgREFXTl9QTEFURk9STV9J U18oUFBDNjQpCisrI2VsaWYgREFXTl9QTEFURk9STV9JUyhQUEMpIHx8IERBV05fUExBVEZPUk1f SVMoUFBDNjQpCisgICAgIF9fYXNtX18gX192b2xhdGlsZV9fKCJ0d2dlIDIsMiIpOworICNlbHNl CisgI2Vycm9yICJVbnN1cHBvcnRlZCBwbGF0Zm9ybSIKKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJv bWl1bS90aGlyZF9wYXJ0eS9kYXduL3NyYy9kYXduL2NvbW1vbi9QbGF0Zm9ybS5oCisrKysgYi9z cmMvM3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFydHkvZGF3bi9zcmMvZGF3bi9jb21tb24vUGxh dGZvcm0uaAorQEAgLTE0MCwxNSArMTQwLDE1IEBACisgI2RlZmluZSBEQVdOX1BMQVRGT1JNX0lT X01JUFM2NCAxCisgI2VuZGlmCisgCistI2VsaWYgZGVmaWVuZChfX3MzOTBfXykKKysjZWxpZiBk ZWZpbmVkKF9fczM5MF9fKQorICNkZWZpbmUgREFXTl9QTEFURk9STV9JU19TMzkwIDEKKy0jZWxp ZiBkZWZpZW5kKF9fczM5MHhfXykKKysjZWxpZiBkZWZpbmVkKF9fczM5MHhfXykKKyAjZGVmaW5l IERBV05fUExBVEZPUk1fSVNfUzM5MFggMQorIAorLSNlbGlmIGRlZmluZWQoX19QUENfXykKKy0j ZGVmaW5lIERBV05fUExBVEZPUk1fSVNfUFBDIDEKKyAjZWxpZiBkZWZpbmVkKF9fUFBDNjRfXykK KyAjZGVmaW5lIERBV05fUExBVEZPUk1fSVNfUFBDNjQgMQorKyNlbGlmIGRlZmluZWQoX19QUENf XykKKysjZGVmaW5lIERBV05fUExBVEZPUk1fSVNfUFBDIDEKKyAKKyAjZWxzZQorICNlcnJvciAi VW5zdXBwb3J0ZWQgcGxhdGZvcm0uIgorQEAgLTE2Niw3ICsxNjYsNyBAQAorIHN0YXRpY19hc3Nl cnQoc2l6ZW9mKHNpemVvZihjaGFyKSkgPT0gOCwgIkV4cGVjdCBzaXplb2Yoc2l6ZV90KSA9PSA4 Iik7CisgI2VsaWYgZGVmaW5lZChEQVdOX1BMQVRGT1JNX0lTX0kzODYpIHx8IGRlZmluZWQoREFX Tl9QTEFURk9STV9JU19BUk0zMikgfHwgICBcCisgICAgIGRlZmluZWQoREFXTl9QTEFURk9STV9J U19SSVNDVjMyKSB8fCBkZWZpbmVkKERBV05fUExBVEZPUk1fSVNfTUlQUzMyKSB8fCBcCistICAg IGRlZmluZWQoREFXTl9QTEFURk9STV9JU19TMzkwKSB8fCBkZWZpbmVkKERBV05fUExBVEZPUk1f SVNfUFBDMzIpIHx8ICAgICBcCisrICAgIGRlZmluZWQoREFXTl9QTEFURk9STV9JU19TMzkwKSB8 fCBkZWZpbmVkKERBV05fUExBVEZPUk1fSVNfUFBDKSB8fCAgICAgXAorICAgICBkZWZpbmVkKERB V05fUExBVEZPUk1fSVNfRU1TQ1JJUFRFTikgfHwgZGVmaW5lZChEQVdOX1BMQVRGT1JNX0lTX0xP T05HQVJDSDMyKQorICNkZWZpbmUgREFXTl9QTEFURk9STV9JU18zMl9CSVQgMQorIHN0YXRpY19h c3NlcnQoc2l6ZW9mKHNpemVvZihjaGFyKSkgPT0gNCwgIkV4cGVjdCBzaXplb2Yoc2l6ZV90KSA9 PSA0Iik7CmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTEwLWNocm9taXVt LWZpeC1taXNzaW5nLVRFTVBfRkFJTFVSRV9SRVRSWS1tYWNyby5wYXRjaCBiL3NyY3BrZ3MvcXQ2 LXBkZi9wYXRjaGVzLzAxMjctZml4LW1pc3NpbmctVEVNUF9GQUlMVVJFX1JFVFJZLW1hY3JvLnBh dGNoCnNpbWlsYXJpdHkgaW5kZXggNzglCnJlbmFtZSBmcm9tIHNyY3BrZ3MvcXQ2LXBkZi9wYXRj aGVzLzAxMTAtY2hyb21pdW0tZml4LW1pc3NpbmctVEVNUF9GQUlMVVJFX1JFVFJZLW1hY3JvLnBh dGNoCnJlbmFtZSB0byBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTI3LWZpeC1taXNzaW5nLVRF TVBfRkFJTFVSRV9SRVRSWS1tYWNyby5wYXRjaAppbmRleCA1NTU4YzU0Y2Y4MDIxMS4uNmM5Mzk5 MWE1YjA5OWYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMTAtY2hyb21p dW0tZml4LW1pc3NpbmctVEVNUF9GQUlMVVJFX1JFVFJZLW1hY3JvLnBhdGNoCisrKyBiL3NyY3Br Z3MvcXQ2LXBkZi9wYXRjaGVzLzAxMjctZml4LW1pc3NpbmctVEVNUF9GQUlMVVJFX1JFVFJZLW1h Y3JvLnBhdGNoCkBAIC0xLDcgKzEsNyBAQAogVGhpcyBtYWNybyBpcyBkZWZpbmVkIGluIGdsaWJj LCBidXQgbm90IG11c2wuCiAKLS0tLSBxdDYtd2ViZW5naW5lLTYuNC4yLm9yaWcvc3JjLzNyZHBh cnR5L2Nocm9taXVtL3NhbmRib3gvbGludXgvc3VpZC9wcm9jZXNzX3V0aWwuaAotKysrIHF0Ni13 ZWJlbmdpbmUtNi40LjIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3NhbmRib3gvbGludXgvc3VpZC9w cm9jZXNzX3V0aWwuaAorLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3NhbmRib3gvbGludXgv c3VpZC9wcm9jZXNzX3V0aWwuaAorKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3NhbmRib3gv bGludXgvc3VpZC9wcm9jZXNzX3V0aWwuaAogQEAgLTEyLDYgKzEyLDE2IEBACiAgI2luY2x1ZGUg PHN0ZGludC5oPgogICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv cXQ2LXBkZi9wYXRjaGVzLzAxMjgtZml4LW1pc3NpbmctY3N0ZGludC1pbmNsdWRlLW11c2wucGF0 Y2ggYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTI4LWZpeC1taXNzaW5nLWNzdGRpbnQtaW5j bHVkZS1tdXNsLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw Li5jZTU0NWJlNjdkMjk3ZAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRj aGVzLzAxMjgtZml4LW1pc3NpbmctY3N0ZGludC1pbmNsdWRlLW11c2wucGF0Y2gKQEAgLTAsMCAr MSwxMCBAQAorLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL25ldC90aGlyZF9wYXJ0eS9xdWlj aGUvc3JjL3F1aWNoZS9odHRwMi9hZGFwdGVyL3dpbmRvd19tYW5hZ2VyLmgKKysrKyBiL3NyYy8z cmRwYXJ0eS9jaHJvbWl1bS9uZXQvdGhpcmRfcGFydHkvcXVpY2hlL3NyYy9xdWljaGUvaHR0cDIv YWRhcHRlci93aW5kb3dfbWFuYWdlci5oCitAQCAtNCw2ICs0LDcgQEAKKyAjaW5jbHVkZSA8c3Rk ZGVmLmg+CisgI2luY2x1ZGUgPHN0ZGludC5oPgorIAorKyNpbmNsdWRlIDxjc3RkaW50PgorICNp bmNsdWRlIDxmdW5jdGlvbmFsPgorIAorICNpbmNsdWRlICJxdWljaGUvY29tbW9uL3BsYXRmb3Jt L2FwaS9xdWljaGVfZXhwb3J0LmgiCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hl cy8wMTI5LWNocm9taXVtLXNhbmRib3gtc2hlZF9nZXRwYXJhbS5wYXRjaCBiL3NyY3BrZ3MvcXQ2 LXBkZi9wYXRjaGVzLzAxMjktY2hyb21pdW0tc2FuZGJveC1zaGVkX2dldHBhcmFtLnBhdGNoCmRl bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5NDI2MGQ1ZDYyZWIxNy4uMDAwMDAwMDAwMDAw MDAKLS0tIGEvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDEyOS1jaHJvbWl1bS1zYW5kYm94LXNo ZWRfZ2V0cGFyYW0ucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwxNyArMCwwIEBACi1BbGxvdyBT WVNfc2NoZWRfZ2V0cGFyYW0gYW5kIFNZU19zY2hlZF9nZXRzY2hlZHVsZXIKLW11c2wgdXNlcyB0 aGVtIGZvciBwdGhyZWFkX2dldHNjaGVkcGFyYW0oKQotCi0tLS0gYS9zcmMvM3JkcGFydHkvY2hy b21pdW0vc2FuZGJveC9wb2xpY3kvbGludXgvYnBmX3JlbmRlcmVyX3BvbGljeV9saW51eC5jYwot KysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3NhbmRib3gvcG9saWN5L2xpbnV4L2JwZl9yZW5k ZXJlcl9wb2xpY3lfbGludXguY2MKLUBAIC05NCw2ICs5NCwxMSBAQAotICAgICBjYXNlIF9fTlJf cHdyaXRlNjQ6Ci0gICAgIGNhc2UgX19OUl9zY2hlZF9nZXRfcHJpb3JpdHlfbWF4OgotICAgICBj YXNlIF9fTlJfc2NoZWRfZ2V0X3ByaW9yaXR5X21pbjoKLSsjaWZuZGVmIF9fR0xJQkNfXwotKyAg ICBjYXNlIF9fTlJfc2NoZWRfZ2V0cGFyYW06Ci0rICAgIGNhc2UgX19OUl9zY2hlZF9nZXRzY2hl ZHVsZXI6Ci0rICAgIGNhc2UgX19OUl9zY2hlZF9zZXRzY2hlZHVsZXI6Ci0rI2VuZGlmCi0gICAg IGNhc2UgX19OUl9zeXNpbmZvOgotICAgICBjYXNlIF9fTlJfdGltZXM6Ci0gICAgIGNhc2UgX19O Ul91bmFtZToKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMTItY2hyb21p dW0tdW5pc3RkLmgucGF0Y2ggYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTI5LWZpeC1tdXNs LW1pc3NpbmctdW5pc3RkX2gtaW5jbHVkZS5wYXRjaApzaW1pbGFyaXR5IGluZGV4IDk0JQpyZW5h bWUgZnJvbSBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTEyLWNocm9taXVtLXVuaXN0ZC5oLnBh dGNoCnJlbmFtZSB0byBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTI5LWZpeC1tdXNsLW1pc3Np bmctdW5pc3RkX2gtaW5jbHVkZS5wYXRjaAppbmRleCBiYjI0MmE4MDhhY2VhYS4uMzI3ODc0Mjc2 ZjEzZTMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMTItY2hyb21pdW0t dW5pc3RkLmgucGF0Y2gKKysrIGIvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDEyOS1maXgtbXVz bC1taXNzaW5nLXVuaXN0ZF9oLWluY2x1ZGUucGF0Y2gKQEAgLTEsNiArMSw2IEBACiAtLS0gYS9z cmMvM3JkcGFydHkvY2hyb21pdW0vc2FuZGJveC9saW51eC9zZXJ2aWNlcy9jcmVkZW50aWFscy5o CiArKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vc2FuZGJveC9saW51eC9zZXJ2aWNlcy9jcmVk ZW50aWFscy5oCi1AQCAtMTMsNiArMTMsNyBAQAorQEAgLTE1LDYgKzE1LDcgQEAKICAKICAjaW5j bHVkZSA8c3RyaW5nPgogICNpbmNsdWRlIDx2ZWN0b3I+CmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0 Ni1wZGYvcGF0Y2hlcy8wMTE2LWNocm9taXVtLW11c2wtZ2V0LXRocmVhZC1uYW1lLnBhdGNoIGIv c3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDEzMC1maXgtcGVyZmV0dG8tR2V0VGhyZWFkTmFtZS1t dXNsLnBhdGNoCnNpbWlsYXJpdHkgaW5kZXggNzMlCnJlbmFtZSBmcm9tIHNyY3BrZ3MvcXQ2LXBk Zi9wYXRjaGVzLzAxMTYtY2hyb21pdW0tbXVzbC1nZXQtdGhyZWFkLW5hbWUucGF0Y2gKcmVuYW1l IHRvIHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMzAtZml4LXBlcmZldHRvLUdldFRocmVhZE5h bWUtbXVzbC5wYXRjaAppbmRleCBkNDg1Mzg1Y2JiNjI5YS4uNDdkZmI4N2YxNDdjYTcgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMTYtY2hyb21pdW0tbXVzbC1nZXQtdGhy ZWFkLW5hbWUucGF0Y2gKKysrIGIvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDEzMC1maXgtcGVy ZmV0dG8tR2V0VGhyZWFkTmFtZS1tdXNsLnBhdGNoCkBAIC0xLDUgKzEsNSBAQAotLS0tIHF0Ni13 ZWJlbmdpbmUtNi40LjIub3JpZy9zcmMvM3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFydHkvcGVy ZmV0dG8vaW5jbHVkZS9wZXJmZXR0by9leHQvYmFzZS90aHJlYWRfdXRpbHMuaAotKysrIHF0Ni13 ZWJlbmdpbmUtNi40LjIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L3BlcmZldHRv L2luY2x1ZGUvcGVyZmV0dG8vZXh0L2Jhc2UvdGhyZWFkX3V0aWxzLmgKKy0tLSBhL3NyYy8zcmRw YXJ0eS9jaHJvbWl1bS90aGlyZF9wYXJ0eS9wZXJmZXR0by9pbmNsdWRlL3BlcmZldHRvL2V4dC9i YXNlL3RocmVhZF91dGlscy5oCisrKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFy dHkvcGVyZmV0dG8vaW5jbHVkZS9wZXJmZXR0by9leHQvYmFzZS90aHJlYWRfdXRpbHMuaAogQEAg LTMwLDcgKzMwLDggQEAKICAjaW5jbHVkZSA8YWxnb3JpdGhtPgogICNlbmRpZgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDEzMS1maXgtc3dpZnRzaGFkZXItbGx2bS1tdXNs LWNvbmZpZy5wYXRjaCBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMzEtZml4LXN3aWZ0c2hh ZGVyLWxsdm0tbXVzbC1jb25maWcucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw MDAwMDAwMDAwMDAuLmU2OWRlMjliYjJkMWQ2CmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYv cGF0Y2hlcy8wMTIwLWNocm9taXVtLWxpYmMtbWFsbG9jLnBhdGNoIGIvc3JjcGtncy9xdDYtcGRm L3BhdGNoZXMvMDEzMi1saWJjX21hbGxvYy5wYXRjaApzaW1pbGFyaXR5IGluZGV4IDY2JQpyZW5h bWUgZnJvbSBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTIwLWNocm9taXVtLWxpYmMtbWFsbG9j LnBhdGNoCnJlbmFtZSB0byBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTMyLWxpYmNfbWFsbG9j LnBhdGNoCmluZGV4IGZhMzI4MzA3NjBjZGIyLi4wMzUyMzYxMDgzZDY5OSAxMDA2NDQKLS0tIGEv c3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDEyMC1jaHJvbWl1bS1saWJjLW1hbGxvYy5wYXRjaAor KysgYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTMyLWxpYmNfbWFsbG9jLnBhdGNoCkBAIC0x LDUgKzEsNSBAQAotLS0tIHF0Ni13ZWJlbmdpbmUtNi40LjIub3JpZy9zcmMvM3JkcGFydHkvY2hy b21pdW0vYmFzZS9wcm9jZXNzL21lbW9yeV9saW51eC5jYwotKysrIHF0Ni13ZWJlbmdpbmUtNi40 LjIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL2Jhc2UvcHJvY2Vzcy9tZW1vcnlfbGludXguY2MKKy0t LSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9iYXNlL3Byb2Nlc3MvbWVtb3J5X2xpbnV4LmNjCisr KysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vYmFzZS9wcm9jZXNzL21lbW9yeV9saW51eC5jYwog QEAgLTE4LDYgKzE4LDEzIEBACiAgI2luY2x1ZGUgImJhc2UvdGhyZWFkaW5nL3RocmVhZF9yZXN0 cmljdGlvbnMuaCIKICAjaW5jbHVkZSAiYnVpbGQvYnVpbGRfY29uZmlnLmgiCkBAIC0xNCw4ICsx NCw4IEBACiAgbmFtZXNwYWNlIGJhc2UgewogIAogIG5hbWVzcGFjZSB7Ci1AQCAtMTEyLDcgKzEx OSw3IEBAIGJvb2wgVW5jaGVja2VkTWFsbG9jKHNpemVfdCBzaXplLCB2b2lkKioKLSAgICAgZGVm aW5lZChUT09MS0lUX1FUKSB8fCAhZGVmaW5lZChMSUJDX0dMSUJDKQorQEAgLTExMSw3ICsxMTgs NyBAQCBib29sIFVuY2hlY2tlZE1hbGxvYyhzaXplX3Qgc2l6ZSwgdm9pZCoqCisgI2VsaWYgZGVm aW5lZChNRU1PUllfVE9PTF9SRVBMQUNFU19BTExPQ0FUT1IpIHx8ICFkZWZpbmVkKExJQkNfR0xJ QkMpIHx8IGRlZmluZWQoVE9PTEtJVF9RVCkKICAgICpyZXN1bHQgPSBtYWxsb2Moc2l6ZSk7CiAg I2VsaWYgZGVmaW5lZChMSUJDX0dMSUJDKQogLSAgKnJlc3VsdCA9IF9fbGliY19tYWxsb2Moc2l6 ZSk7CkBAIC0yMyw3ICsyMyw3IEBACiAgI2VuZGlmCiAgICByZXR1cm4gKnJlc3VsdCAhPSBudWxs cHRyOwogIH0KLUBAIC0xMjMsNyArMTMwLDcgQEAgdm9pZCBVbmNoZWNrZWRGcmVlKHZvaWQqIHB0 cikgeworQEAgLTEyMiw3ICsxMjksNyBAQCB2b2lkIFVuY2hlY2tlZEZyZWUodm9pZCogcHRyKSB7 CiAgI2VsaWYgZGVmaW5lZChNRU1PUllfVE9PTF9SRVBMQUNFU19BTExPQ0FUT1IpIHx8ICFkZWZp bmVkKExJQkNfR0xJQkMpIHx8IGRlZmluZWQoVE9PTEtJVF9RVCkKICAgIGZyZWUocHRyKTsKICAj ZWxpZiBkZWZpbmVkKExJQkNfR0xJQkMpCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYvcGF0 Y2hlcy8wMTMzLW11c2wtbm8tZXhlY2luZm8ucGF0Y2ggYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hl cy8wMTMzLW11c2wtbm8tZXhlY2luZm8ucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg MDAwMDAwMDAwMDAwMDAuLjNmYTJkYWI5M2RhMDFjCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtn cy9xdDYtcGRmL3BhdGNoZXMvMDEzMy1tdXNsLW5vLWV4ZWNpbmZvLnBhdGNoCkBAIC0wLDAgKzEs NjggQEAKK1NvdXJjZTogaHR0cHM6Ly9naXQuYWxwaW5lbGludXgub3JnL2Fwb3J0cy9wbGFpbi9j b21tdW5pdHkvY2hyb21pdW0vbm8tZXhlY2luZm8ucGF0Y2gKK211c2wgZG9lcyBub3QgaGF2ZSBl eGVjaW5mby5oLCBhbmQgaGVuY2Ugbm8gaW1wbGVtZW50YXRpb24gb2YKKy4gYmFja3RyYWNlKCkK Ky4gYmFja3RyYWNlX3N5bWJvbHMoKQorZm9yIGRpc2N1c3Npb24gYWJvdXQgdGhpcywgc2VlIGh0 dHBzOi8vd3d3Lm9wZW53YWxsLmNvbS9saXN0cy9tdXNsLzIwMjEvMDcvMTYvMQorLS0KKy0tLSBh L3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS92OC9zcmMvY29kZWdlbi9leHRlcm5hbC1yZWZlcmVuY2Ut dGFibGUuY2MKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS92OC9zcmMvY29kZWdlbi9leHRl cm5hbC1yZWZlcmVuY2UtdGFibGUuY2MKK0BAIC0xMiw3ICsxMiw5IEBACisgCisgI2lmIGRlZmlu ZWQoREVCVUcpICYmIGRlZmluZWQoVjhfT1NfTElOVVgpICYmICFkZWZpbmVkKFY4X09TX0FORFJP SUQpCisgI2RlZmluZSBTWU1CT0xJWkVfRlVOQ1RJT04KKysjaWYgZGVmaW5lZChfX0dMSUJDX18p CisgI2luY2x1ZGUgPGV4ZWNpbmZvLmg+CisrI2VuZGlmCisgCisgI2luY2x1ZGUgPHZlY3Rvcj4K KyAKK0BAIC0xMTgsNyArMTIwLDcgQEAgdm9pZCBFeHRlcm5hbFJlZmVyZW5jZVRhYmxlOjpJbml0 KElzb2xhdAorIH0KKyAKKyBjb25zdCBjaGFyKiBFeHRlcm5hbFJlZmVyZW5jZVRhYmxlOjpSZXNv bHZlU3ltYm9sKHZvaWQqIGFkZHJlc3MpIHsKKy0jaWZkZWYgU1lNQk9MSVpFX0ZVTkNUSU9OCisr I2lmIGRlZmluZWQoU1lNQk9MSVpFX0ZVTkNUSU9OKSAmJiBkZWZpbmVkKF9fR0xJQkNfXykKKyAg IGNoYXIqKiBuYW1lcyA9IGJhY2t0cmFjZV9zeW1ib2xzKCZhZGRyZXNzLCAxKTsKKyAgIGNvbnN0 IGNoYXIqIG5hbWUgPSBuYW1lc1swXTsKKyAgIC8vIFRoZSBhcnJheSBvZiBuYW1lcyBpcyBtYWxs b2MnZWQuIEhvd2V2ZXIsIGVhY2ggbmFtZSBzdHJpbmcgaXMgc3RhdGljCistLS0gYS9zcmMvM3Jk cGFydHkvY2hyb21pdW0vYmFzZS9kZWJ1Zy9zdGFja190cmFjZS5jYworKysrIGIvc3JjLzNyZHBh cnR5L2Nocm9taXVtL2Jhc2UvZGVidWcvc3RhY2tfdHJhY2UuY2MKK0BAIC0yNzMsNyArMjczLDkg QEAgdm9pZCBTdGFja1RyYWNlOjpQcmludCgpIGNvbnN0IHsKKyB9CisgCisgdm9pZCBTdGFja1Ry YWNlOjpPdXRwdXRUb1N0cmVhbShzdGQ6Om9zdHJlYW0qIG9zKSBjb25zdCB7CisrI2lmIGRlZmlu ZWQoX19HTElCQ19fKSAmJiAhZGVmaW5lZChfQUlYKQorICAgT3V0cHV0VG9TdHJlYW1XaXRoUHJl Zml4KG9zLCBudWxscHRyKTsKKysjZW5kaWYKKyB9CisgCisgc3RkOjpzdHJpbmcgU3RhY2tUcmFj ZTo6VG9TdHJpbmcoKSBjb25zdCB7CitAQCAtMjgxLDcgKzI4Myw3IEBAIHN0ZDo6c3RyaW5nIFN0 YWNrVHJhY2U6OlRvU3RyaW5nKCkgY29uc3QKKyB9Cisgc3RkOjpzdHJpbmcgU3RhY2tUcmFjZTo6 VG9TdHJpbmdXaXRoUHJlZml4KGNvbnN0IGNoYXIqIHByZWZpeF9zdHJpbmcpIGNvbnN0IHsKKyAg IHN0ZDo6c3RyaW5nc3RyZWFtIHN0cmVhbTsKKy0jaWYgIWRlZmluZWQoX19VQ0xJQkNfXykgJiYg IWRlZmluZWQoX0FJWCkKKysjaWYgZGVmaW5lZChfX0dMSUJDX18pICYmICFkZWZpbmVkKF9BSVgp CisgICBPdXRwdXRUb1N0cmVhbVdpdGhQcmVmaXgoJnN0cmVhbSwgcHJlZml4X3N0cmluZyk7Cisg I2VuZGlmCisgICByZXR1cm4gc3RyZWFtLnN0cigpOworLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9t aXVtL2Jhc2UvZGVidWcvc3RhY2tfdHJhY2VfdW5pdHRlc3QuY2MKKysrKyBiL3NyYy8zcmRwYXJ0 eS9jaHJvbWl1bS9iYXNlL2RlYnVnL3N0YWNrX3RyYWNlX3VuaXR0ZXN0LmNjCitAQCAtMzMsNyAr MzMsNyBAQCB0eXBlZGVmIE11bHRpUHJvY2Vzc1Rlc3QgU3RhY2tUcmFjZVRlc3Q7CisgdHlwZWRl ZiB0ZXN0aW5nOjpUZXN0IFN0YWNrVHJhY2VUZXN0OworICNlbmRpZgorIAorLSNpZiAhZGVmaW5l ZChfX1VDTElCQ19fKSAmJiAhZGVmaW5lZChfQUlYKQorKyNpZiAhZGVmaW5lZChfX1VDTElCQ19f KSAmJiAhZGVmaW5lZChfQUlYKSAmJiBkZWZpbmVkKF9fR0xJQkNfXykKKyAvLyBTdGFja1RyYWNl OjpPdXRwdXRUb1N0cmVhbSgpIGlzIG5vdCBpbXBsZW1lbnRlZCB1bmRlciB1Y2xpYmMsIG5vciBB SVguCisgLy8gU2VlIGh0dHBzOi8vY3JidWcuY29tLzcwNjcyOAorIAorQEAgLTE1Niw3ICsxNTYs NyBAQCBURVNUX0YoU3RhY2tUcmFjZVRlc3QsIERlYnVnT3V0cHV0VG9TdHJlCisgCisgI2VuZGlm ICAvLyAhZGVmaW5lZChfX1VDTElCQ19fKSAmJiAhZGVmaW5lZChfQUlYKQorIAorLSNpZiBCVUlM REZMQUcoSVNfUE9TSVgpICYmICFCVUlMREZMQUcoSVNfQU5EUk9JRCkKKysjaWYgKEJVSUxERkxB RyhJU19QT1NJWCkgJiYgZGVmaW5lZChfX0dMSUJDX18pKSAmJiAhQlVJTERGTEFHKElTX0FORFJP SUQpCisgI2lmICFCVUlMREZMQUcoSVNfSU9TKQorIHN0YXRpYyBjaGFyKiBuZXdBcnJheSgpIHsK KyAgIC8vIENsYW5nIHdhcm5zIGFib3V0IHRoZSBtaXNtYXRjaGVkIG5ld1tdL2RlbGV0ZSBpZiB0 aGV5IG9jY3VyIGluIHRoZSBzYW1lCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hl cy8wMzAyLWNocm9taXVtLW5vLW1hbGxpbmZvLnBhdGNoIGIvc3JjcGtncy9xdDYtcGRmL3BhdGNo ZXMvMDEzNC1tdXNsLW5vLW1hbGxpbmZvLnBhdGNoCnNpbWlsYXJpdHkgaW5kZXggNTAlCnJlbmFt ZSBmcm9tIHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAzMDItY2hyb21pdW0tbm8tbWFsbGluZm8u cGF0Y2gKcmVuYW1lIHRvIHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMzQtbXVzbC1uby1tYWxs aW5mby5wYXRjaAppbmRleCA5ZjhkNGExNWMyOGU3MC4uM2VjMDgzYTgzMGY0OWMgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAzMDItY2hyb21pdW0tbm8tbWFsbGluZm8ucGF0 Y2gKKysrIGIvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDEzNC1tdXNsLW5vLW1hbGxpbmZvLnBh dGNoCkBAIC0xLDc2ICsxLDg1IEBACi0tLS0gcXQ2LXdlYmVuZ2luZS02LjQuMi5vcmlnL3NyYy8z cmRwYXJ0eS9jaHJvbWl1bS9iYXNlL3Byb2Nlc3MvcHJvY2Vzc19tZXRyaWNzX3Bvc2l4LmNjCi0r KysgcXQ2LXdlYmVuZ2luZS02LjQuMi9zcmMvM3JkcGFydHkvY2hyb21pdW0vYmFzZS9wcm9jZXNz L3Byb2Nlc3NfbWV0cmljc19wb3NpeC5jYwotQEAgLTEwNSw3ICsxMDUsOCBAQCB2b2lkIEluY3Jl YXNlRmRMaW1pdFRvKHVuc2lnbmVkIGludCBtYXhfCitTb3VyY2U6IGh0dHBzOi8vZ2l0LmFscGlu ZWxpbnV4Lm9yZy9hcG9ydHMvcGxhaW4vY29tbXVuaXR5L2Nocm9taXVtL25vLW1hbGxpbmZvLnBh dGNoCittdXNsIGRvZXMgbm90IGltcGxlbWVudCBtYWxsaW5mbygpL21hbGxpbmZvMigpCisob3Ig cmF0aGVyLCBtYWxsb2MtbmcsIG11c2wncyBhbGxvY2F0b3IsIGRvZXNuJ3QpCistLQorLS0tIGEv c3JjLzNyZHBhcnR5L2Nocm9taXVtL2Jhc2UvdHJhY2VfZXZlbnQvbWFsbG9jX2R1bXBfcHJvdmlk ZXIuY2MKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9iYXNlL3RyYWNlX2V2ZW50L21hbGxv Y19kdW1wX3Byb3ZpZGVyLmNjCitAQCAtMTk5LDcgKzE5OSw2IEBAIHZvaWQgUmVwb3J0TWFsbGlu Zm9TdGF0cyhQcm9jZXNzTWVtb3J5RHUKKyAjZGVmaW5lIE1BTExJTkZPMl9GT1VORF9JTl9MSUJD CisgICBzdHJ1Y3QgbWFsbGluZm8yIGluZm8gPSBtYWxsaW5mbzIoKTsKKyAjZW5kaWYKKy0jZW5k aWYgIC8vIGRlZmluZWQoX19HTElCQ19fKSAmJiBkZWZpbmVkKF9fR0xJQkNfUFJFUkVRKQorICNp ZiAhZGVmaW5lZChNQUxMSU5GTzJfRk9VTkRfSU5fTElCQykKKyAgIHN0cnVjdCBtYWxsaW5mbyBp bmZvID0gbWFsbGluZm8oKTsKKyAjZW5kaWYKK0BAIC0yMjEsNiArMjIwLDcgQEAgdm9pZCBSZXBv cnRNYWxsaW5mb1N0YXRzKFByb2Nlc3NNZW1vcnlEdQorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIE1lbW9yeUFsbG9jYXRvckR1bXA6OmtVbml0c0J5dGVzLAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHRvdGFsX2FsbG9jYXRlZF9zaXplKTsKKyAgIH0KKysjZW5kaWYgIC8v IGRlZmluZWQoX19HTElCQ19fKSAmJiBkZWZpbmVkKF9fR0xJQkNfUFJFUkVRKQorIH0KKyAjZW5k aWYKKyAKK0BAIC0zNTksNyArMzU5LDcgQEAgYm9vbCBNYWxsb2NEdW1wUHJvdmlkZXI6Ok9uTWVt b3J5RHVtcChjbworICAgICAgICAgICAgICAgICAgICAgICZhbGxvY2F0ZWRfb2JqZWN0c19jb3Vu dCk7CisgI2VsaWYgQlVJTERGTEFHKElTX0ZVQ0hTSUEpCisgLy8gVE9ETyhmdWNoc2lhKTogUG9y dCwgc2VlIGh0dHBzOi8vY3JidWcuY29tLzcwNjU5Mi4KKy0jZWxzZQorKyNlbGlmIGRlZmluZWQo X19HTElCQ19fKQorICAgUmVwb3J0TWFsbGluZm9TdGF0cygvKnBtZD0qL251bGxwdHIsICZ0b3Rh bF92aXJ0dWFsX3NpemUsICZyZXNpZGVudF9zaXplLAorICAgICAgICAgICAgICAgICAgICAgICAm YWxsb2NhdGVkX29iamVjdHNfc2l6ZSwgJmFsbG9jYXRlZF9vYmplY3RzX2NvdW50KTsKKyAjZW5k aWYKKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9iYXNlL3Byb2Nlc3MvcHJvY2Vzc19tZXRy aWNzX3Bvc2l4LmNjCisrKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vYmFzZS9wcm9jZXNzL3By b2Nlc3NfbWV0cmljc19wb3NpeC5jYworQEAgLTEwNiw3ICsxMDYsNyBAQCB2b2lkIEluY3JlYXNl RmRMaW1pdFRvKHVuc2lnbmVkIGludCBtYXhfCiAgCiAgI2VuZGlmICAvLyAhQlVJTERGTEFHKElT X0ZVQ0hTSUEpCiAgCiAtI2lmIEJVSUxERkxBRyhJU19MSU5VWCkgfHwgQlVJTERGTEFHKElTX0NI Uk9NRU9TKSB8fCBCVUlMREZMQUcoSVNfQU5EUk9JRCkKLSsjaWYgKEJVSUxERkxBRyhJU19MSU5V WCkgJiYgZGVmaW5lZChfX0dMSUJDX18pKSB8fCBcCi0rCUJVSUxERkxBRyhJU19DSFJPTUVPUykg fHwgQlVJTERGTEFHKElTX0FORFJPSUQpCisrI2lmIChCVUlMREZMQUcoSVNfTElOVVgpICYmIGRl ZmluZWQoX19HTElCQ19fKSkgfHwgQlVJTERGTEFHKElTX0NIUk9NRU9TKSB8fCBCVUlMREZMQUco SVNfQU5EUk9JRCkKICBuYW1lc3BhY2UgewogIAogIHNpemVfdCBHZXRNYWxsb2NVc2FnZU1hbGxp bmZvKCkgewotQEAgLTEyMywxNyArMTI0LDE4IEBAIHNpemVfdCBHZXRNYWxsb2NVc2FnZU1hbGxp bmZvKCkgeworQEAgLTEyNCw3ICsxMjQsNyBAQCBzaXplX3QgR2V0TWFsbG9jVXNhZ2VNYWxsaW5m bygpIHsKICB9CiAgCiAgfSAgLy8gbmFtZXNwYWNlCiAtI2VuZGlmICAvLyBCVUlMREZMQUcoSVNf TElOVVgpIHx8IEJVSUxERkxBRyhJU19DSFJPTUVPUykgfHwKLS0gICAgICAgIC8vIEJVSUxERkxB RyhJU19BTkRST0lEKQotKyNlbmRpZiAgLy8gKEJVSUxERkxBRyhJU19MSU5VWCkgJiYgZGVmaW5l ZChfX0dMSUJDX18pIHx8Ci0rCS8vIEJVSUxERkxBRyhJU19DSFJPTUVPUykgfHwgQlVJTERGTEFH KElTX0FORFJPSUQpCisrI2VuZGlmICAvLyAoQlVJTERGTEFHKElTX0xJTlVYKSAmJiBkZWZpbmVk KF9fR0xJQkNfXykpIHx8IEJVSUxERkxBRyhJU19DSFJPTUVPUykgfHwKKyAgICAgICAgIC8vIEJV SUxERkxBRyhJU19BTkRST0lEKQogIAogIHNpemVfdCBQcm9jZXNzTWV0cmljczo6R2V0TWFsbG9j VXNhZ2UoKSB7Ci0gI2lmIEJVSUxERkxBRyhJU19BUFBMRSkKK0BAIC0xMzIsOSArMTMyLDkgQEAg c2l6ZV90IFByb2Nlc3NNZXRyaWNzOjpHZXRNYWxsb2NVc2FnZSgpCiAgICBtYWxsb2Nfc3RhdGlz dGljc190IHN0YXRzID0gezB9OwogICAgbWFsbG9jX3pvbmVfc3RhdGlzdGljcyhudWxscHRyLCAm c3RhdHMpOwogICAgcmV0dXJuIHN0YXRzLnNpemVfaW5fdXNlOwogLSNlbGlmIEJVSUxERkxBRyhJ U19MSU5VWCkgfHwgQlVJTERGTEFHKElTX0NIUk9NRU9TKSB8fCBCVUlMREZMQUcoSVNfQU5EUk9J RCkKLSsjZWxpZiAoQlVJTERGTEFHKElTX0xJTlVYKSAmJiBkZWZpbmVkKF9fR0xJQkNfXykpIHx8 IFwKLSsJQlVJTERGTEFHKElTX0NIUk9NRU9TKSB8fCBCVUlMREZMQUcoSVNfQU5EUk9JRCkKKysj ZWxpZiAoQlVJTERGTEFHKElTX0xJTlVYKSAmJiBkZWZpbmVkKF9fR0xJQkNfXykpIHx8IEJVSUxE RkxBRyhJU19DSFJPTUVPUykgfHwgQlVJTERGTEFHKElTX0FORFJPSUQpCiAgICByZXR1cm4gR2V0 TWFsbG9jVXNhZ2VNYWxsaW5mbygpOwogLSNlbGlmIEJVSUxERkxBRyhJU19GVUNIU0lBKQotKyNl bGlmIEJVSUxERkxBRyhJU19GVUNIU0lBKSB8fCAoQlVJTERGTEFHKElTX0xJTlVYKSAmJiAhZGVm aW5lZChfX0dMSUJDX18pKQorKyNlbHNlCiAgICAvLyBUT0RPKGZ1Y2hzaWEpOiBOb3QgY3VycmVu dGx5IGV4cG9zZWQuIGh0dHBzOi8vY3JidWcuY29tLzczNTA4Ny4KICAgIHJldHVybiAwOwogICNl bmRpZgotLS0tIHF0Ni13ZWJlbmdpbmUtNi40LjIub3JpZy9zcmMvM3JkcGFydHkvY2hyb21pdW0v YmFzZS90cmFjZV9ldmVudC9tYWxsb2NfZHVtcF9wcm92aWRlci5jYwotKysrIHF0Ni13ZWJlbmdp bmUtNi40LjIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL2Jhc2UvdHJhY2VfZXZlbnQvbWFsbG9jX2R1 bXBfcHJvdmlkZXIuY2MKLUBAIC0xODUsNyArMTg1LDYgQEAKLSAjZGVmaW5lIE1BTExJTkZPMl9G T1VORF9JTl9MSUJDCi0gICBzdHJ1Y3QgbWFsbGluZm8yIGluZm8gPSBtYWxsaW5mbzIoKTsKLSAj ZW5kaWYKLS0jZW5kaWYgIC8vIGRlZmluZWQoX19HTElCQ19fKSAmJiBkZWZpbmVkKF9fR0xJQkNf UFJFUkVRKQotICNpZiAhZGVmaW5lZChNQUxMSU5GTzJfRk9VTkRfSU5fTElCQykKLSAgIHN0cnVj dCBtYWxsaW5mbyBpbmZvID0gbWFsbGluZm8oKTsKLSAjZW5kaWYKLUBAIC0yMDUsNiArMjA0LDcg QEAKLSAgICAgc3lzX2FsbG9jX2R1bXAtPkFkZFNjYWxhcihNZW1vcnlBbGxvY2F0b3JEdW1wOjpr TmFtZVNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWVtb3J5QWxsb2NhdG9y RHVtcDo6a1VuaXRzQnl0ZXMsIGluZm8udW9yZGJsa3MpOwotICAgfQotKyNlbmRpZiAgLy8gZGVm aW5lZChfX0dMSUJDX18pICYmIGRlZmluZWQoX19HTElCQ19QUkVSRVEpCi0gfQotICNlbmRpZgot IAotQEAgLTMzOSw3ICszNDAsNyBAQAotICAgICAgICAgICAgICAgICAgICAgICZhbGxvY2F0ZWRf b2JqZWN0c19jb3VudCk7Ci0gI2VsaWYgQlVJTERGTEFHKElTX0ZVQ0hTSUEpCi0gLy8gVE9ETyhm dWNoc2lhKTogUG9ydCwgc2VlIGh0dHBzOi8vY3JidWcuY29tLzcwNjU5Mi4KLS0jZWxzZQotKyNl bGlmIGRlZmluZWQoX19HTElCQ19fKQotICAgUmVwb3J0TWFsbGluZm9TdGF0cygvKnBtZD0qL251 bGxwdHIsICZ0b3RhbF92aXJ0dWFsX3NpemUsICZyZXNpZGVudF9zaXplLAotICAgICAgICAgICAg ICAgICAgICAgICAmYWxsb2NhdGVkX29iamVjdHNfc2l6ZSwgJmFsbG9jYXRlZF9vYmplY3RzX2Nv dW50KTsKLSAjZW5kaWYKLW11c2wgZG9lcyBub3QgaW1wbGVtZW50IG1hbGxpbmZvKCkvbWFsbGlu Zm8yKCkKLShvciByYXRoZXIsIG1hbGxvYy1uZywgbXVzbCdzIGFsbG9jYXRvciwgZG9lc24ndCkK LS0tCiAtLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vYmFzZS9hbGxvY2F0b3IvcGFydGl0aW9u X2FsbG9jYXRvci9zaGltL2FsbG9jYXRvcl9zaGltX2RlZmF1bHRfZGlzcGF0Y2hfdG9fcGFydGl0 aW9uX2FsbG9jLmNjCiArKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vYmFzZS9hbGxvY2F0b3Iv cGFydGl0aW9uX2FsbG9jYXRvci9zaGltL2FsbG9jYXRvcl9zaGltX2RlZmF1bHRfZGlzcGF0Y2hf dG9fcGFydGl0aW9uX2FsbG9jLmNjCi1AQCAtNzE3LDcgKzcxNyw3IEBACitAQCAtNzM2LDcgKzcz Niw3IEBAIFNISU1fQUxXQVlTX0VYUE9SVCBpbnQgbWFsbG9wdChpbnQgY21kLAogIAogICNlbmRp ZiAgLy8gIUJVSUxERkxBRyhJU19BUFBMRSkgJiYgIUJVSUxERkxBRyhJU19BTkRST0lEKQogIAog LSNpZiBCVUlMREZMQUcoSVNfTElOVVgpIHx8IEJVSUxERkxBRyhJU19DSFJPTUVPUykKLSsjaWYg ZGVmaW5lZChfX0dMSUJDX18pCisrI2lmIDAKICBTSElNX0FMV0FZU19FWFBPUlQgc3RydWN0IG1h bGxpbmZvIG1hbGxpbmZvKHZvaWQpIF9fVEhST1cgewotICAgYmFzZTo6U2ltcGxlUGFydGl0aW9u U3RhdHNEdW1wZXIgYWxsb2NhdG9yX2R1bXBlcjsKKyAgIHBhcnRpdGlvbl9hbGxvYzo6U2ltcGxl UGFydGl0aW9uU3RhdHNEdW1wZXIgYWxsb2NhdG9yX2R1bXBlcjsKICAgIEFsbG9jYXRvcigpLT5E dW1wU3RhdHMoIm1hbGxvYyIsIHRydWUsICZhbGxvY2F0b3JfZHVtcGVyKTsKKy0tLSBhL3NyYy8z cmRwYXJ0eS9jaHJvbWl1bS9iYXNlL2FsbG9jYXRvci9wYXJ0aXRpb25fYWxsb2NhdG9yL3NoaW0v YWxsb2NhdG9yX3NoaW1fZGVmYXVsdF9kaXNwYXRjaF90b19wYXJ0aXRpb25fYWxsb2NfdW5pdHRl c3QuY2MKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9iYXNlL2FsbG9jYXRvci9wYXJ0aXRp b25fYWxsb2NhdG9yL3NoaW0vYWxsb2NhdG9yX3NoaW1fZGVmYXVsdF9kaXNwYXRjaF90b19wYXJ0 aXRpb25fYWxsb2NfdW5pdHRlc3QuY2MKK0BAIC0yNCw3ICsyNCw3IEBAIG5hbWVzcGFjZSBhbGxv Y2F0b3Jfc2hpbTo6aW50ZXJuYWwgeworICNpZiBCVUlMREZMQUcoVVNFX1BBUlRJVElPTl9BTExP Q19BU19NQUxMT0MpCisgCisgLy8gUGxhdGZvcm1zIG9uIHdoaWNoIHdlIG92ZXJyaWRlIHdlYWsg bGliYyBzeW1ib2xzLgorLSNpZiBCVUlMREZMQUcoSVNfTElOVVgpIHx8IEJVSUxERkxBRyhJU19D SFJPTUVPUykKKysjaWYgKEJVSUxERkxBRyhJU19MSU5VWCkgJiYgZGVmaW5lZChfX0dMSUJDX18p KSB8fCBCVUlMREZMQUcoSVNfQ0hST01FT1MpCisgCisgUEFfTk9JTkxJTkUgdm9pZCBGcmVlRm9y VGVzdCh2b2lkKiBkYXRhKSB7CisgICBmcmVlKGRhdGEpOwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9x dDYtcGRmL3BhdGNoZXMvMDEzNS1tdXNsLXBhcnRpdGlvbi1hdGZvcmsucGF0Y2ggYi9zcmNwa2dz L3F0Ni1wZGYvcGF0Y2hlcy8wMTM1LW11c2wtcGFydGl0aW9uLWF0Zm9yay5wYXRjaApuZXcgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMC4uMWQ4MzgxNDIxNDZjNzgKLS0tIC9k ZXYvbnVsbAorKysgYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTM1LW11c2wtcGFydGl0aW9u LWF0Zm9yay5wYXRjaApAQCAtMCwwICsxLDExIEBACistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21p dW0vYmFzZS9hbGxvY2F0b3IvcGFydGl0aW9uX2FsbG9jYXRvci9wYXJ0aXRpb25fcm9vdC5jYwor KysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL2Jhc2UvYWxsb2NhdG9yL3BhcnRpdGlvbl9hbGxv Y2F0b3IvcGFydGl0aW9uX3Jvb3QuY2MKK0BAIC0yODEsNyArMjgxLDcgQEAgdm9pZCBQYXJ0aXRp b25BbGxvY01hbGxvY0luaXRPbmNlKCkgeworICAgICByZXR1cm47CisgICB9CisgCistI2lmIEJV SUxERkxBRyhJU19MSU5VWCkgfHwgQlVJTERGTEFHKElTX0NIUk9NRU9TKQorKyNpZiAoQlVJTERG TEFHKElTX0xJTlVYKSAmJiBkZWZpbmVkKF9fR0xJQkNfXykpIHx8IEJVSUxERkxBRyhJU19DSFJP TUVPUykKKyAgIC8vIFdoZW4gZm9yaygpIGlzIGNhbGxlZCwgb25seSB0aGUgY3VycmVudCB0aHJl YWQgY29udGludWVzIHRvIGV4ZWN1dGUgaW4gdGhlCisgICAvLyBjaGlsZCBwcm9jZXNzLiBJZiB0 aGUgbG9jayBpcyBoZWxkLCBidXQgKm5vdCogYnkgdGhpcyB0aHJlYWQgd2hlbiBmb3JrKCkgaXMK KyAgIC8vIGNhbGxlZCwgd2UgaGF2ZSBhIGRlYWRsb2NrLgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9x dDYtcGRmL3BhdGNoZXMvMDEyMi1jaHJvbWl1bS1jb25kaXRpb25fdmFyLnBhdGNoIGIvc3JjcGtn cy9xdDYtcGRmL3BhdGNoZXMvMDEzNi1tdXNsLXY4LW1vbm90b25pYy1wdGhyZWFkLWNvbnRfdGlt ZWR3YWl0LnBhdGNoCnNpbWlsYXJpdHkgaW5kZXggODIlCnJlbmFtZSBmcm9tIHNyY3BrZ3MvcXQ2 LXBkZi9wYXRjaGVzLzAxMjItY2hyb21pdW0tY29uZGl0aW9uX3Zhci5wYXRjaApyZW5hbWUgdG8g c3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDEzNi1tdXNsLXY4LW1vbm90b25pYy1wdGhyZWFkLWNv bnRfdGltZWR3YWl0LnBhdGNoCmluZGV4IDZjNDEzMTJlNTE2YjNhLi4xZGM4YmM0ZDNkMTdmZiAx MDA2NDQKLS0tIGEvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDEyMi1jaHJvbWl1bS1jb25kaXRp b25fdmFyLnBhdGNoCisrKyBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMzYtbXVzbC12OC1t b25vdG9uaWMtcHRocmVhZC1jb250X3RpbWVkd2FpdC5wYXRjaApAQCAtMSw3ICsxLDcgQEAKIFVz ZSBtb25vdG9uaWMgY2xvY2sgZm9yIHB0aHJlYWRfY29uZF90aW1lZHdhaXQgd2l0aCBtdXNsIHRv by4KIAotLS0tIHF0Ni13ZWJlbmdpbmUtNi40LjIub3JpZy9zcmMvM3JkcGFydHkvY2hyb21pdW0v djgvc3JjL2Jhc2UvcGxhdGZvcm0vY29uZGl0aW9uLXZhcmlhYmxlLmNjCi0rKysgcXQ2LXdlYmVu Z2luZS02LjQuMi9zcmMvM3JkcGFydHkvY2hyb21pdW0vdjgvc3JjL2Jhc2UvcGxhdGZvcm0vY29u ZGl0aW9uLXZhcmlhYmxlLmNjCistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vdjgvc3JjL2Jh c2UvcGxhdGZvcm0vY29uZGl0aW9uLXZhcmlhYmxlLmNjCisrKysgYi9zcmMvM3JkcGFydHkvY2hy b21pdW0vdjgvc3JjL2Jhc2UvcGxhdGZvcm0vY29uZGl0aW9uLXZhcmlhYmxlLmNjCiBAQCAtMjAs NyArMjAsNyBAQCBuYW1lc3BhY2UgYmFzZSB7CiAgCiAgQ29uZGl0aW9uVmFyaWFibGU6OkNvbmRp dGlvblZhcmlhYmxlKCkgewpkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDEy My1jaHJvbWl1bS1tdXNsLW5vLWdldGNvbnRleHQucGF0Y2ggYi9zcmNwa2dzL3F0Ni1wZGYvcGF0 Y2hlcy8wMTM3LW5vLWdldGNvbnRleHQucGF0Y2gKc2ltaWxhcml0eSBpbmRleCA3MiUKcmVuYW1l IGZyb20gc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDEyMy1jaHJvbWl1bS1tdXNsLW5vLWdldGNv bnRleHQucGF0Y2gKcmVuYW1lIHRvIHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMzctbm8tZ2V0 Y29udGV4dC5wYXRjaAppbmRleCA0NjUyMmVlMGEwNjZkNy4uZmM0MTlkYjY3ZGUwYjkgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMjMtY2hyb21pdW0tbXVzbC1uby1nZXRj b250ZXh0LnBhdGNoCisrKyBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMzctbm8tZ2V0Y29u dGV4dC5wYXRjaApAQCAtMSw1ICsxLDUgQEAKLS0tLSBxdDYtd2ViZW5naW5lLTYuNC4yLm9yaWcv c3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L2JyZWFrcGFkL2JyZWFrcGFkL3NyYy9j bGllbnQvbGludXgvaGFuZGxlci9leGNlcHRpb25faGFuZGxlci5jYwotKysrIHF0Ni13ZWJlbmdp bmUtNi40LjIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L2JyZWFrcGFkL2JyZWFr cGFkL3NyYy9jbGllbnQvbGludXgvaGFuZGxlci9leGNlcHRpb25faGFuZGxlci5jYworLS0tIGEv c3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L2JyZWFrcGFkL2JyZWFrcGFkL3NyYy9j bGllbnQvbGludXgvaGFuZGxlci9leGNlcHRpb25faGFuZGxlci5jYworKysrIGIvc3JjLzNyZHBh cnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L2JyZWFrcGFkL2JyZWFrcGFkL3NyYy9jbGllbnQvbGlu dXgvaGFuZGxlci9leGNlcHRpb25faGFuZGxlci5jYwogQEAgLTQ5MCw3ICs0OTAsOSBAQCBib29s IEV4Y2VwdGlvbkhhbmRsZXI6OlNpbXVsYXRlU2lnbmFsRGVsCiAgICBzaWdpbmZvLnNpX2NvZGUg PSBTSV9VU0VSOwogICAgc2lnaW5mby5zaV9waWQgPSBnZXRwaWQoKTsKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMzgtbm8tbXRlLnBhdGNoIGIvc3JjcGtncy9xdDYtcGRm L3BhdGNoZXMvMDEzOC1uby1tdGUucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw MDAwMDAwMDAwMDAuLjA3NGE1MThkNmNmOTI2Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9x dDYtcGRmL3BhdGNoZXMvMDEzOC1uby1tdGUucGF0Y2gKQEAgLTAsMCArMSwxMSBAQAorLS0tIGEv c3JjLzNyZHBhcnR5L2Nocm9taXVtL2Jhc2UvYWxsb2NhdG9yL3BhcnRpdGlvbl9hbGxvY2F0b3Iv cGFydGl0aW9uX2FsbG9jX2NvbmZpZy5oCisrKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vYmFz ZS9hbGxvY2F0b3IvcGFydGl0aW9uX2FsbG9jYXRvci9wYXJ0aXRpb25fYWxsb2NfY29uZmlnLmgK K0BAIC0xNTMsNyArMTUzLDcgQEAgc3RhdGljX2Fzc2VydChzaXplb2Yodm9pZCopICE9IDgsICIi KTsKKyAgICBkZWZpbmVkKEFSQ0hfQ1BVX0xJVFRMRV9FTkRJQU4pKQorIAorICNkZWZpbmUgUEFf Q09ORklHX0hBU19NRU1PUllfVEFHR0lORygpICAgICAgICAgICAgICBcCistICAoZGVmaW5lZChB UkNIX0NQVV9BUk02NCkgJiYgZGVmaW5lZChfX2NsYW5nX18pICYmIFwKKysgICgwICYmIGRlZmlu ZWQoQVJDSF9DUFVfQVJNNjQpICYmIGRlZmluZWQoX19jbGFuZ19fKSAmJiBcCisgICAgIWRlZmlu ZWQoQUREUkVTU19TQU5JVElaRVIpICYmICAgICAgICAgICAgICAgICAgIFwKKyAgICAoQlVJTERG TEFHKElTX0xJTlVYKSB8fCBCVUlMREZMQUcoSVNfQU5EUk9JRCkpKQorIApkaWZmIC0tZ2l0IGEv c3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDEzOS1vbGQtY2xhbmcucGF0Y2ggYi9zcmNwa2dzL3F0 Ni1wZGYvcGF0Y2hlcy8wMTM5LW9sZC1jbGFuZy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAwMDAwMDAwMDAwMDAwMC4uNDMwMGFiZGVhOTU2ZTkKLS0tIC9kZXYvbnVsbAorKysgYi9z cmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTM5LW9sZC1jbGFuZy5wYXRjaApAQCAtMCwwICsxLDEx IEBACistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vYnVpbGQvY29uZmlnL2NvbXBpbGVyL0JV SUxELmduCisrKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vYnVpbGQvY29uZmlnL2NvbXBpbGVy L0JVSUxELmduCitAQCAtMTU0Myw3ICsxNTQzLDcgQEAgY29uZmlnKCJjb21waWxlcl9kZXRlcm1p bmlzdGljIikgeworICAgICB9IGVsc2UgeworICAgICAgICMgLWZmaWxlLWNvbXBpbGF0aW9uLWRp ciBpcyBhbiBhbGlhcyBmb3IgYm90aCAtZmRlYnVnLWNvbXBpbGF0aW9uLWRpcj0KKyAgICAgICAj IGFuZCAtZmNvdmVyYWdlLWNvbXBpbGF0aW9uLWRpcj0uCistICAgICAgY2ZsYWdzICs9IFsgIi1m ZmlsZS1jb21waWxhdGlvbi1kaXI9LiIgXQorKyAgICAgIGNmbGFncyArPSBbICItZmRlYnVnLWNv bXBpbGF0aW9uLWRpcj0uIiBdCisgICAgICAgc3dpZnRmbGFncyArPSBbICItZmlsZS1jb21waWxh dGlvbi1kaXI9LiIgXQorICAgICB9CisgICAgIGlmICghaXNfd2luKSB7CmRpZmYgLS1naXQgYS9z cmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTQwLXJlZW5hYmxlLWxpbnV4LWk2ODYtYnVpbGRzLnBh dGNoIGIvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDE0MC1yZWVuYWJsZS1saW51eC1pNjg2LWJ1 aWxkcy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMC4uNDdm ZjU5YTc1YmM0MmUKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8w MTQwLXJlZW5hYmxlLWxpbnV4LWk2ODYtYnVpbGRzLnBhdGNoCkBAIC0wLDAgKzEsMTkgQEAKKy0t LSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9CVUlMRC5nbgorKysrIGIvc3JjLzNyZHBhcnR5L2No cm9taXVtL0JVSUxELmduCitAQCAtMTYyNiwxNiArMTYyNiw2IEBAIGlmICh1c2VfYmxpbmsgJiYg IWlzX2Nyb25ldF9idWlsZCkgeworICAgfQorIH0KKyAKKy0jIFRPRE8oY2Fzc2V3KTogQWRkIG1v cmUgT1MncyB0aGF0IGRvbid0IHN1cHBvcnQgeDg2LgorLWlzX3ZhbGlkX3g4Nl90YXJnZXQgPQor LSAgICB0YXJnZXRfb3MgIT0gImlvcyIgJiYgdGFyZ2V0X29zICE9ICJtYWMiICYmCistICAgICh0 YXJnZXRfb3MgIT0gImxpbnV4IiB8fCB1c2VfbGliZnV6emVyIHx8ICFidWlsZF93aXRoX2Nocm9t aXVtKQorLQorLSMgTm90ZTogdjhfdGFyZ2V0X2NwdSA9PSBhcm0gYWxsb3dzIHVzaW5nIHRoZSBW OCBhcm0gc2ltdWxhdG9yIG9uIHg4NiBmb3IgZnV6emluZy4KKy1hc3NlcnQoCistICAgIGlzX3Zh bGlkX3g4Nl90YXJnZXQgfHwgdGFyZ2V0X2NwdSAhPSAieDg2IiB8fCB2OF90YXJnZXRfY3B1ID09 ICJhcm0iLAorLSAgICAiJ3RhcmdldF9jcHU9eDg2JyBpcyBub3Qgc3VwcG9ydGVkIGZvciAndGFy Z2V0X29zPSR0YXJnZXRfb3MnLiBDb25zaWRlciBvbWl0dGluZyAndGFyZ2V0X2NwdScgKGRlZmF1 bHQpIG9yIHVzaW5nICd0YXJnZXRfY3B1PXg2NCcgaW5zdGVhZC4iKQorLQorIGdyb3VwKCJjaHJv bWl1bV9idWlsZGVyX3BlcmYiKSB7CisgICB0ZXN0b25seSA9IHRydWUKKyAKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxMjYtY2hyb21pdW0tbm8tY2RlZnMucGF0Y2ggYi9z cmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTQxLXJlbW92ZS1zeXMtY2RlZnMtaW5jbHVkZXMucGF0 Y2gKc2ltaWxhcml0eSBpbmRleCA2NSUKcmVuYW1lIGZyb20gc3JjcGtncy9xdDYtcGRmL3BhdGNo ZXMvMDEyNi1jaHJvbWl1bS1uby1jZGVmcy5wYXRjaApyZW5hbWUgdG8gc3JjcGtncy9xdDYtcGRm L3BhdGNoZXMvMDE0MS1yZW1vdmUtc3lzLWNkZWZzLWluY2x1ZGVzLnBhdGNoCmluZGV4IDkwZmFh M2Q2NjRkMDJkLi44ZDFjMDZlMGRmYTAzYyAxMDA2NDQKLS0tIGEvc3JjcGtncy9xdDYtcGRmL3Bh dGNoZXMvMDEyNi1jaHJvbWl1bS1uby1jZGVmcy5wYXRjaAorKysgYi9zcmNwa2dzL3F0Ni1wZGYv cGF0Y2hlcy8wMTQxLXJlbW92ZS1zeXMtY2RlZnMtaW5jbHVkZXMucGF0Y2gKQEAgLTEsNSArMSw1 IEBACi0tLS0gcXQ2LXdlYmVuZ2luZS02LjQuMi5vcmlnL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS90 aGlyZF9wYXJ0eS9jcmFzaHBhZC9jcmFzaHBhZC9jb21wYXQvbGludXgvc3lzL3B0cmFjZS5oCi0r KysgcXQ2LXdlYmVuZ2luZS02LjQuMi9zcmMvM3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFydHkv Y3Jhc2hwYWQvY3Jhc2hwYWQvY29tcGF0L2xpbnV4L3N5cy9wdHJhY2UuaAorLS0tIGEvc3JjLzNy ZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L2NyYXNocGFkL2NyYXNocGFkL2NvbXBhdC9saW51 eC9zeXMvcHRyYWNlLmgKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS90aGlyZF9wYXJ0eS9j cmFzaHBhZC9jcmFzaHBhZC9jb21wYXQvbGludXgvc3lzL3B0cmFjZS5oCiBAQCAtMTcsOCArMTcs NiBAQAogIAogICNpbmNsdWRlX25leHQgPHN5cy9wdHJhY2UuaD4KQEAgLTksOCArOSw4IEBACiAg Ly8gaHR0cHM6Ly9zb3VyY2V3YXJlLm9yZy9idWd6aWxsYS9zaG93X2J1Zy5jZ2k/aWQ9MjI0MzMK ICAjaWYgIWRlZmluZWQoUFRSQUNFX0dFVF9USFJFQURfQVJFQSkgJiYgIWRlZmluZWQoUFRfR0VU X1RIUkVBRF9BUkVBKSAmJiBcCiAgICAgIGRlZmluZWQoX19HTElCQ19fKQotLS0tIHF0Ni13ZWJl bmdpbmUtNi40LjIub3JpZy9zcmMvM3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFydHkvbGlic3lu Yy9zcmMvaW5jbHVkZS9zeW5jL3N5bmMuaAotKysrIHF0Ni13ZWJlbmdpbmUtNi40LjIvc3JjLzNy ZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L2xpYnN5bmMvc3JjL2luY2x1ZGUvc3luYy9zeW5j LmgKKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS90aGlyZF9wYXJ0eS9saWJzeW5jL3NyYy9p bmNsdWRlL3N5bmMvc3luYy5oCisrKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFy dHkvbGlic3luYy9zcmMvaW5jbHVkZS9zeW5jL3N5bmMuaAogQEAgLTE5LDEyICsxOSwxMyBAQAog ICNpZm5kZWYgX19TWVNfQ09SRV9TWU5DX0gKICAjZGVmaW5lIF9fU1lTX0NPUkVfU1lOQ19ICmRp ZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTQyLXNhbmRib3gtbWVtYmFycmll ci5wYXRjaCBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxNDItc2FuZGJveC1tZW1iYXJyaWVy LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwLi40N2JjYmYx ZGUxOTBlNwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxNDIt c2FuZGJveC1tZW1iYXJyaWVyLnBhdGNoCkBAIC0wLDAgKzEsMTAgQEAKKy0tLSBhL3NyYy8zcmRw YXJ0eS9jaHJvbWl1bS9zYW5kYm94L2xpbnV4L3NlY2NvbXAtYnBmLWhlbHBlcnMvc3lzY2FsbF9z ZXRzLmNjCisrKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vc2FuZGJveC9saW51eC9zZWNjb21w LWJwZi1oZWxwZXJzL3N5c2NhbGxfc2V0cy5jYworQEAgLTQzMyw2ICs0MzMsNyBAQCBib29sIFN5 c2NhbGxTZXRzOjpJc0FsbG93ZWRQcm9jZXNzU3RhcnRPCisgICBzd2l0Y2ggKHN5c25vKSB7Cisg ICAgIGNhc2UgX19OUl9leGl0OgorICAgICBjYXNlIF9fTlJfZXhpdF9ncm91cDoKKysgICAgY2Fz ZSBfX05SX21lbWJhcnJpZXI6CisgICAgIGNhc2UgX19OUl93YWl0NDoKKyAgICAgY2FzZSBfX05S X3dhaXRpZDoKKyAjaWYgZGVmaW5lZChfX2kzODZfXykKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2 LXBkZi9wYXRjaGVzLzAxNDMtc25kaW8ucGF0Y2ggYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8w MTQzLXNuZGlvLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw Li4xZTZkY2FjOGQ1YTliZAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRj aGVzLzAxNDMtc25kaW8ucGF0Y2gKQEAgLTAsMCArMSw4NDkgQEAKKy0tLSBhL3NyYy8zcmRwYXJ0 eS9jaHJvbWl1bS9tZWRpYS9CVUlMRC5nbgorKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL21l ZGlhL0JVSUxELmduCitAQCAtOTYsNiArOTYsOSBAQCBjb25maWcoIm1lZGlhX2NvbmZpZyIpIHsK KyAgICAgICBkZWZpbmVzICs9IFsgIkRMT1BFTl9QVUxTRUFVRElPIiBdCisgICAgIH0KKyAgIH0K KysgIGlmICh1c2Vfc25kaW8pIHsKKysgICAgZGVmaW5lcyArPSBbICJVU0VfU05ESU8iIF0KKysg IH0KKyAgIGlmICh1c2VfY3JhcykgeworICAgICBkZWZpbmVzICs9IFsgIlVTRV9DUkFTIiBdCisg ICB9CistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vbWVkaWEvYXVkaW8vQlVJTEQuZ24KKysr KyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9tZWRpYS9hdWRpby9CVUlMRC5nbgorQEAgLTI4Miw2 ICsyODIsMTcgQEAganVtYm9fc291cmNlX3NldCgiYXVkaW8iKSB7CisgICAgIHNvdXJjZXMgKz0g WyAibGludXgvYXVkaW9fbWFuYWdlcl9saW51eC5jYyIgXQorICAgfQorIAorKyAgaWYgKHVzZV9z bmRpbykgeworKyAgICBsaWJzICs9IFsgInNuZGlvIiBdCisrICAgIHNvdXJjZXMgKz0gWworKyAg ICAgICJzbmRpby9hdWRpb19tYW5hZ2VyX3NuZGlvLmNjIiwKKysgICAgICAic25kaW8vc25kaW9f aW5wdXQuY2MiLAorKyAgICAgICJzbmRpby9zbmRpb19pbnB1dC5oIiwKKysgICAgICAic25kaW8v c25kaW9fb3V0cHV0LmNjIiwKKysgICAgICAic25kaW8vc25kaW9fb3V0cHV0LmgiCisrICAgIF0K KysgIH0KKysKKyAgIGlmICh1c2VfYWxzYSkgeworICAgICBsaWJzICs9IFsgImFzb3VuZCIgXQor ICAgICBzb3VyY2VzICs9IFsKKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9tZWRpYS9hdWRp by9saW51eC9hdWRpb19tYW5hZ2VyX2xpbnV4LmNjCisrKysgYi9zcmMvM3JkcGFydHkvY2hyb21p dW0vbWVkaWEvYXVkaW8vbGludXgvYXVkaW9fbWFuYWdlcl9saW51eC5jYworQEAgLTIzLDYgKzIz LDExIEBACisgI2luY2x1ZGUgIm1lZGlhL2F1ZGlvL3B1bHNlL2F1ZGlvX21hbmFnZXJfcHVsc2Uu aCIKKyAjaW5jbHVkZSAibWVkaWEvYXVkaW8vcHVsc2UvcHVsc2VfdXRpbC5oIgorICNlbmRpZgor KyNpZiBkZWZpbmVkKFVTRV9TTkRJTykKKysjaW5jbHVkZSAibWVkaWEvYXVkaW8vc25kaW8vYXVk aW9fbWFuYWdlcl9zbmRpby5oIgorKyNpbmNsdWRlICJtZWRpYS9hdWRpby9zbmRpby9zbmRpb19p bnB1dC5oIgorKyNpbmNsdWRlICJtZWRpYS9hdWRpby9zbmRpby9zbmRpb19vdXRwdXQuaCIKKysj ZW5kaWYKKyAKKyBuYW1lc3BhY2UgbWVkaWEgeworIAorLS0tIC9kZXYvbnVsbAorKysrIGIvc3Jj LzNyZHBhcnR5L2Nocm9taXVtL21lZGlhL2F1ZGlvL3NuZGlvL2F1ZGlvX21hbmFnZXJfc25kaW8u Y2MKK0BAIC0wLDAgKzEsMTQ4IEBACisrLy8gQ29weXJpZ2h0IChjKSAyMDEyIFRoZSBDaHJvbWl1 bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorKy8vIFVzZSBvZiB0aGlzIHNvdXJjZSBj b2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKKysvLyBm b3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorKworKyNpbmNsdWRlICJtZWRpYS9hdWRpby9zbmRp by9hdWRpb19tYW5hZ2VyX3NuZGlvLmgiCisrCisrI2luY2x1ZGUgImJhc2UvbWV0cmljcy9oaXN0 b2dyYW1fbWFjcm9zLmgiCisrI2luY2x1ZGUgImJhc2UvbWVtb3J5L3B0cl91dGlsLmgiCisrI2lu Y2x1ZGUgIm1lZGlhL2F1ZGlvL2F1ZGlvX2RldmljZV9kZXNjcmlwdGlvbi5oIgorKyNpbmNsdWRl ICJtZWRpYS9hdWRpby9hdWRpb19vdXRwdXRfZGlzcGF0Y2hlci5oIgorKyNpbmNsdWRlICJtZWRp YS9hdWRpby9zbmRpby9zbmRpb19pbnB1dC5oIgorKyNpbmNsdWRlICJtZWRpYS9hdWRpby9zbmRp by9zbmRpb19vdXRwdXQuaCIKKysjaW5jbHVkZSAibWVkaWEvYmFzZS9saW1pdHMuaCIKKysjaW5j bHVkZSAibWVkaWEvYmFzZS9tZWRpYV9zd2l0Y2hlcy5oIgorKworK25hbWVzcGFjZSBtZWRpYSB7 CisrCisrCisrLy8gTWF4aW11bSBudW1iZXIgb2Ygb3V0cHV0IHN0cmVhbXMgdGhhdCBjYW4gYmUg b3BlbiBzaW11bHRhbmVvdXNseS4KKytzdGF0aWMgY29uc3QgaW50IGtNYXhPdXRwdXRTdHJlYW1z ID0gNDsKKysKKysvLyBEZWZhdWx0IHNhbXBsZSByYXRlIGZvciBpbnB1dCBhbmQgb3V0cHV0IHN0 cmVhbXMuCisrc3RhdGljIGNvbnN0IGludCBrRGVmYXVsdFNhbXBsZVJhdGUgPSA0ODAwMDsKKysK Kyt2b2lkIEFkZERlZmF1bHREZXZpY2UoQXVkaW9EZXZpY2VOYW1lcyogZGV2aWNlX25hbWVzKSB7 CisrICBEQ0hFQ0soZGV2aWNlX25hbWVzLT5lbXB0eSgpKTsKKysgIGRldmljZV9uYW1lcy0+cHVz aF9mcm9udChBdWRpb0RldmljZU5hbWU6OkNyZWF0ZURlZmF1bHQoKSk7CisrfQorKworK2Jvb2wg QXVkaW9NYW5hZ2VyU25kaW86Okhhc0F1ZGlvT3V0cHV0RGV2aWNlcygpIHsKKysgIHJldHVybiB0 cnVlOworK30KKysKKytib29sIEF1ZGlvTWFuYWdlclNuZGlvOjpIYXNBdWRpb0lucHV0RGV2aWNl cygpIHsKKysgIHJldHVybiB0cnVlOworK30KKysKKyt2b2lkIEF1ZGlvTWFuYWdlclNuZGlvOjpH ZXRBdWRpb0lucHV0RGV2aWNlTmFtZXMoCisrICAgIEF1ZGlvRGV2aWNlTmFtZXMqIGRldmljZV9u YW1lcykgeworKyAgRENIRUNLKGRldmljZV9uYW1lcy0+ZW1wdHkoKSk7CisrICBBZGREZWZhdWx0 RGV2aWNlKGRldmljZV9uYW1lcyk7CisrfQorKworK3ZvaWQgQXVkaW9NYW5hZ2VyU25kaW86Okdl dEF1ZGlvT3V0cHV0RGV2aWNlTmFtZXMoCisrICAgIEF1ZGlvRGV2aWNlTmFtZXMqIGRldmljZV9u YW1lcykgeworKyAgQWRkRGVmYXVsdERldmljZShkZXZpY2VfbmFtZXMpOworK30KKysKKytjb25z dCBjaGFyKiBBdWRpb01hbmFnZXJTbmRpbzo6R2V0TmFtZSgpIHsKKysgIHJldHVybiAiU05ESU8i OworK30KKysKKytBdWRpb1BhcmFtZXRlcnMgQXVkaW9NYW5hZ2VyU25kaW86OkdldElucHV0U3Ry ZWFtUGFyYW1ldGVycygKKysgICAgY29uc3Qgc3RkOjpzdHJpbmcmIGRldmljZV9pZCkgeworKyAg c3RhdGljIGNvbnN0IGludCBrRGVmYXVsdElucHV0QnVmZmVyU2l6ZSA9IDEwMjQ7CisrCisrICBp bnQgdXNlcl9idWZmZXJfc2l6ZSA9IEdldFVzZXJCdWZmZXJTaXplKCk7CisrICBpbnQgYnVmZmVy X3NpemUgPSB1c2VyX2J1ZmZlcl9zaXplID8KKysgICAgICB1c2VyX2J1ZmZlcl9zaXplIDoga0Rl ZmF1bHRJbnB1dEJ1ZmZlclNpemU7CisrCisrICByZXR1cm4gQXVkaW9QYXJhbWV0ZXJzKAorKyAg ICAgIEF1ZGlvUGFyYW1ldGVyczo6QVVESU9fUENNX0xPV19MQVRFTkNZLCBDSEFOTkVMX0xBWU9V VF9TVEVSRU8sCisrICAgICAga0RlZmF1bHRTYW1wbGVSYXRlLCBidWZmZXJfc2l6ZSk7CisrfQor KworK0F1ZGlvTWFuYWdlclNuZGlvOjpBdWRpb01hbmFnZXJTbmRpbyhzdGQ6OnVuaXF1ZV9wdHI8 QXVkaW9UaHJlYWQ+IGF1ZGlvX3RocmVhZCwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIEF1ZGlvTG9nRmFjdG9yeSogYXVkaW9fbG9nX2ZhY3RvcnkpCisrICAgIDog QXVkaW9NYW5hZ2VyQmFzZShzdGQ6Om1vdmUoYXVkaW9fdGhyZWFkKSwKKysgICAgICAgICAgICAg ICAgICAgICAgIGF1ZGlvX2xvZ19mYWN0b3J5KSB7CisrICBETE9HKFdBUk5JTkcpIDw8ICJBdWRp b01hbmFnZXJTbmRpbyI7CisrICBTZXRNYXhPdXRwdXRTdHJlYW1zQWxsb3dlZChrTWF4T3V0cHV0 U3RyZWFtcyk7CisrfQorKworK0F1ZGlvTWFuYWdlclNuZGlvOjp+QXVkaW9NYW5hZ2VyU25kaW8o KSB7CisrICBTaHV0ZG93bigpOworK30KKysKKytBdWRpb091dHB1dFN0cmVhbSogQXVkaW9NYW5h Z2VyU25kaW86Ok1ha2VMaW5lYXJPdXRwdXRTdHJlYW0oCisrICAgIGNvbnN0IEF1ZGlvUGFyYW1l dGVycyYgcGFyYW1zLAorKyAgICBjb25zdCBMb2dDYWxsYmFjayYgbG9nX2NhbGxiYWNrKSB7Cisr ICBEQ0hFQ0tfRVEoQXVkaW9QYXJhbWV0ZXJzOjpBVURJT19QQ01fTElORUFSLCBwYXJhbXMuZm9y bWF0KCkpOworKyAgcmV0dXJuIE1ha2VPdXRwdXRTdHJlYW0ocGFyYW1zKTsKKyt9CisrCisrQXVk aW9PdXRwdXRTdHJlYW0qIEF1ZGlvTWFuYWdlclNuZGlvOjpNYWtlTG93TGF0ZW5jeU91dHB1dFN0 cmVhbSgKKysgICAgY29uc3QgQXVkaW9QYXJhbWV0ZXJzJiBwYXJhbXMsCisrICAgIGNvbnN0IHN0 ZDo6c3RyaW5nJiBkZXZpY2VfaWQsCisrICAgIGNvbnN0IExvZ0NhbGxiYWNrJiBsb2dfY2FsbGJh Y2spIHsKKysgIERMT0dfSUYoRVJST1IsICFkZXZpY2VfaWQuZW1wdHkoKSkgPDwgIk5vdCBpbXBs ZW1lbnRlZCEiOworKyAgRENIRUNLX0VRKEF1ZGlvUGFyYW1ldGVyczo6QVVESU9fUENNX0xPV19M QVRFTkNZLCBwYXJhbXMuZm9ybWF0KCkpOworKyAgcmV0dXJuIE1ha2VPdXRwdXRTdHJlYW0ocGFy YW1zKTsKKyt9CisrCisrQXVkaW9JbnB1dFN0cmVhbSogQXVkaW9NYW5hZ2VyU25kaW86Ok1ha2VM aW5lYXJJbnB1dFN0cmVhbSgKKysgICAgY29uc3QgQXVkaW9QYXJhbWV0ZXJzJiBwYXJhbXMsCisr ICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiBkZXZpY2VfaWQsCisrICAgIGNvbnN0IExvZ0NhbGxiYWNr JiBsb2dfY2FsbGJhY2spIHsKKysgIERDSEVDS19FUShBdWRpb1BhcmFtZXRlcnM6OkFVRElPX1BD TV9MSU5FQVIsIHBhcmFtcy5mb3JtYXQoKSk7CisrICByZXR1cm4gTWFrZUlucHV0U3RyZWFtKHBh cmFtcyk7CisrfQorKworK0F1ZGlvSW5wdXRTdHJlYW0qIEF1ZGlvTWFuYWdlclNuZGlvOjpNYWtl TG93TGF0ZW5jeUlucHV0U3RyZWFtKAorKyAgICBjb25zdCBBdWRpb1BhcmFtZXRlcnMmIHBhcmFt cywKKysgICAgY29uc3Qgc3RkOjpzdHJpbmcmIGRldmljZV9pZCwKKysgICAgY29uc3QgTG9nQ2Fs bGJhY2smIGxvZ19jYWxsYmFjaykgeworKyAgRENIRUNLX0VRKEF1ZGlvUGFyYW1ldGVyczo6QVVE SU9fUENNX0xPV19MQVRFTkNZLCBwYXJhbXMuZm9ybWF0KCkpOworKyAgcmV0dXJuIE1ha2VJbnB1 dFN0cmVhbShwYXJhbXMpOworK30KKysKKytBdWRpb1BhcmFtZXRlcnMgQXVkaW9NYW5hZ2VyU25k aW86OkdldFByZWZlcnJlZE91dHB1dFN0cmVhbVBhcmFtZXRlcnMoCisrICAgIGNvbnN0IHN0ZDo6 c3RyaW5nJiBvdXRwdXRfZGV2aWNlX2lkLAorKyAgICBjb25zdCBBdWRpb1BhcmFtZXRlcnMmIGlu cHV0X3BhcmFtcykgeworKyAgLy8gVE9ETyh0b21taSk6IFN1cHBvcnQgfG91dHB1dF9kZXZpY2Vf aWR8LgorKyAgRExPR19JRihFUlJPUiwgIW91dHB1dF9kZXZpY2VfaWQuZW1wdHkoKSkgPDwgIk5v dCBpbXBsZW1lbnRlZCEiOworKyAgc3RhdGljIGNvbnN0IGludCBrRGVmYXVsdE91dHB1dEJ1ZmZl clNpemUgPSAyMDQ4OworKworKyAgQ2hhbm5lbExheW91dCBjaGFubmVsX2xheW91dCA9IENIQU5O RUxfTEFZT1VUX1NURVJFTzsKKysgIGludCBzYW1wbGVfcmF0ZSA9IGtEZWZhdWx0U2FtcGxlUmF0 ZTsKKysgIGludCBidWZmZXJfc2l6ZSA9IGtEZWZhdWx0T3V0cHV0QnVmZmVyU2l6ZTsKKysgIGlm IChpbnB1dF9wYXJhbXMuSXNWYWxpZCgpKSB7CisrICAgIHNhbXBsZV9yYXRlID0gaW5wdXRfcGFy YW1zLnNhbXBsZV9yYXRlKCk7CisrICAgIGNoYW5uZWxfbGF5b3V0ID0gaW5wdXRfcGFyYW1zLmNo YW5uZWxfbGF5b3V0KCk7CisrICAgIGJ1ZmZlcl9zaXplID0gc3RkOjptaW4oYnVmZmVyX3NpemUs IGlucHV0X3BhcmFtcy5mcmFtZXNfcGVyX2J1ZmZlcigpKTsKKysgIH0KKysKKysgIGludCB1c2Vy X2J1ZmZlcl9zaXplID0gR2V0VXNlckJ1ZmZlclNpemUoKTsKKysgIGlmICh1c2VyX2J1ZmZlcl9z aXplKQorKyAgICBidWZmZXJfc2l6ZSA9IHVzZXJfYnVmZmVyX3NpemU7CisrCisrICByZXR1cm4g QXVkaW9QYXJhbWV0ZXJzKAorKyAgICAgIEF1ZGlvUGFyYW1ldGVyczo6QVVESU9fUENNX0xPV19M QVRFTkNZLCBjaGFubmVsX2xheW91dCwKKysgICAgICBzYW1wbGVfcmF0ZSwgYnVmZmVyX3NpemUp OworK30KKysKKytBdWRpb0lucHV0U3RyZWFtKiBBdWRpb01hbmFnZXJTbmRpbzo6TWFrZUlucHV0 U3RyZWFtKAorKyAgICBjb25zdCBBdWRpb1BhcmFtZXRlcnMmIHBhcmFtcykgeworKyAgRExPRyhX QVJOSU5HKSA8PCAiTWFrZUlucHV0U3RyZWFtIjsKKysgIHJldHVybiBuZXcgU25kaW9BdWRpb0lu cHV0U3RyZWFtKHRoaXMsCisrICAgICAgICAgICAgIEF1ZGlvRGV2aWNlRGVzY3JpcHRpb246OmtE ZWZhdWx0RGV2aWNlSWQsIHBhcmFtcyk7CisrfQorKworK0F1ZGlvT3V0cHV0U3RyZWFtKiBBdWRp b01hbmFnZXJTbmRpbzo6TWFrZU91dHB1dFN0cmVhbSgKKysgICAgY29uc3QgQXVkaW9QYXJhbWV0 ZXJzJiBwYXJhbXMpIHsKKysgIERMT0coV0FSTklORykgPDwgIk1ha2VPdXRwdXRTdHJlYW0iOwor KyAgcmV0dXJuIG5ldyBTbmRpb0F1ZGlvT3V0cHV0U3RyZWFtKHBhcmFtcywgdGhpcyk7CisrfQor KworK30gIC8vIG5hbWVzcGFjZSBtZWRpYQorLS0tIC9kZXYvbnVsbAorKysrIGIvc3JjLzNyZHBh cnR5L2Nocm9taXVtL21lZGlhL2F1ZGlvL3NuZGlvL2F1ZGlvX21hbmFnZXJfc25kaW8uaAorQEAg LTAsMCArMSw2NSBAQAorKy8vIENvcHlyaWdodCAoYykgMjAxMiBUaGUgQ2hyb21pdW0gQXV0aG9y cy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKysvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBn b3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisrLy8gZm91bmQgaW4g dGhlIExJQ0VOU0UgZmlsZS4KKysKKysjaWZuZGVmIE1FRElBX0FVRElPX1NORElPX0FVRElPX01B TkFHRVJfU05ESU9fSF8KKysjZGVmaW5lIE1FRElBX0FVRElPX1NORElPX0FVRElPX01BTkFHRVJf U05ESU9fSF8KKysKKysjaW5jbHVkZSA8c2V0PgorKworKyNpbmNsdWRlICJiYXNlL2NvbXBpbGVy X3NwZWNpZmljLmgiCisrI2luY2x1ZGUgImJhc2UvbWFjcm9zLmgiCisrI2luY2x1ZGUgImJhc2Uv bWVtb3J5L3JlZl9jb3VudGVkLmgiCisrI2luY2x1ZGUgImJhc2UvdGhyZWFkaW5nL3RocmVhZC5o IgorKyNpbmNsdWRlICJtZWRpYS9hdWRpby9hdWRpb19tYW5hZ2VyX2Jhc2UuaCIKKysKKytuYW1l c3BhY2UgbWVkaWEgeworKworK2NsYXNzIE1FRElBX0VYUE9SVCBBdWRpb01hbmFnZXJTbmRpbyA6 IHB1YmxpYyBBdWRpb01hbmFnZXJCYXNlIHsKKysgcHVibGljOgorKyAgQXVkaW9NYW5hZ2VyU25k aW8oc3RkOjp1bmlxdWVfcHRyPEF1ZGlvVGhyZWFkPiBhdWRpb190aHJlYWQsCisrICAgICAgICAg ICAgICAgICAgIEF1ZGlvTG9nRmFjdG9yeSogYXVkaW9fbG9nX2ZhY3RvcnkpOworKyAgfkF1ZGlv TWFuYWdlclNuZGlvKCkgb3ZlcnJpZGU7CisrCisrICAvLyBJbXBsZW1lbnRhdGlvbiBvZiBBdWRp b01hbmFnZXIuCisrICBib29sIEhhc0F1ZGlvT3V0cHV0RGV2aWNlcygpIG92ZXJyaWRlOworKyAg Ym9vbCBIYXNBdWRpb0lucHV0RGV2aWNlcygpIG92ZXJyaWRlOworKyAgdm9pZCBHZXRBdWRpb0lu cHV0RGV2aWNlTmFtZXMoQXVkaW9EZXZpY2VOYW1lcyogZGV2aWNlX25hbWVzKSBvdmVycmlkZTsK KysgIHZvaWQgR2V0QXVkaW9PdXRwdXREZXZpY2VOYW1lcyhBdWRpb0RldmljZU5hbWVzKiBkZXZp Y2VfbmFtZXMpIG92ZXJyaWRlOworKyAgQXVkaW9QYXJhbWV0ZXJzIEdldElucHV0U3RyZWFtUGFy YW1ldGVycygKKysgICAgICBjb25zdCBzdGQ6OnN0cmluZyYgZGV2aWNlX2lkKSBvdmVycmlkZTsK KysgIGNvbnN0IGNoYXIqIEdldE5hbWUoKSBvdmVycmlkZTsKKysKKysgIC8vIEltcGxlbWVudGF0 aW9uIG9mIEF1ZGlvTWFuYWdlckJhc2UuCisrICBBdWRpb091dHB1dFN0cmVhbSogTWFrZUxpbmVh ck91dHB1dFN0cmVhbSgKKysgICAgICBjb25zdCBBdWRpb1BhcmFtZXRlcnMmIHBhcmFtcywKKysg ICAgICBjb25zdCBMb2dDYWxsYmFjayYgbG9nX2NhbGxiYWNrKSBvdmVycmlkZTsKKysgIEF1ZGlv T3V0cHV0U3RyZWFtKiBNYWtlTG93TGF0ZW5jeU91dHB1dFN0cmVhbSgKKysgICAgICBjb25zdCBB dWRpb1BhcmFtZXRlcnMmIHBhcmFtcywKKysgICAgICBjb25zdCBzdGQ6OnN0cmluZyYgZGV2aWNl X2lkLAorKyAgICAgIGNvbnN0IExvZ0NhbGxiYWNrJiBsb2dfY2FsbGJhY2spIG92ZXJyaWRlOwor KyAgQXVkaW9JbnB1dFN0cmVhbSogTWFrZUxpbmVhcklucHV0U3RyZWFtKAorKyAgICAgIGNvbnN0 IEF1ZGlvUGFyYW1ldGVycyYgcGFyYW1zLAorKyAgICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiBkZXZp Y2VfaWQsCisrICAgICAgY29uc3QgTG9nQ2FsbGJhY2smIGxvZ19jYWxsYmFjaykgb3ZlcnJpZGU7 CisrICBBdWRpb0lucHV0U3RyZWFtKiBNYWtlTG93TGF0ZW5jeUlucHV0U3RyZWFtKAorKyAgICAg IGNvbnN0IEF1ZGlvUGFyYW1ldGVycyYgcGFyYW1zLAorKyAgICAgIGNvbnN0IHN0ZDo6c3RyaW5n JiBkZXZpY2VfaWQsCisrICAgICAgY29uc3QgTG9nQ2FsbGJhY2smIGxvZ19jYWxsYmFjaykgb3Zl cnJpZGU7CisrCisrIHByb3RlY3RlZDoKKysgIEF1ZGlvUGFyYW1ldGVycyBHZXRQcmVmZXJyZWRP dXRwdXRTdHJlYW1QYXJhbWV0ZXJzKAorKyAgICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiBvdXRwdXRf ZGV2aWNlX2lkLAorKyAgICAgIGNvbnN0IEF1ZGlvUGFyYW1ldGVycyYgaW5wdXRfcGFyYW1zKSBv dmVycmlkZTsKKysKKysgcHJpdmF0ZToKKysgIC8vIENhbGxlZCBieSBNYWtlTGluZWFyT3V0cHV0 U3RyZWFtIGFuZCBNYWtlTG93TGF0ZW5jeU91dHB1dFN0cmVhbS4KKysgIEF1ZGlvT3V0cHV0U3Ry ZWFtKiBNYWtlT3V0cHV0U3RyZWFtKGNvbnN0IEF1ZGlvUGFyYW1ldGVycyYgcGFyYW1zKTsKKysg IEF1ZGlvSW5wdXRTdHJlYW0qIE1ha2VJbnB1dFN0cmVhbShjb25zdCBBdWRpb1BhcmFtZXRlcnMm IHBhcmFtcyk7CisrCisrICBESVNBTExPV19DT1BZX0FORF9BU1NJR04oQXVkaW9NYW5hZ2VyU25k aW8pOworK307CisrCisrfSAgLy8gbmFtZXNwYWNlIG1lZGlhCisrCisrI2VuZGlmICAvLyBNRURJ QV9BVURJT19TTkRJT19BVURJT19NQU5BR0VSX1NORElPX0hfCistLS0gL2Rldi9udWxsCisrKysg Yi9zcmMvM3JkcGFydHkvY2hyb21pdW0vbWVkaWEvYXVkaW8vc25kaW8vc25kaW9faW5wdXQuY2MK K0BAIC0wLDAgKzEsMjAwIEBACisrLy8gQ29weXJpZ2h0IDIwMTMgVGhlIENocm9taXVtIEF1dGhv cnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisrLy8gVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMg Z292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQorKy8vIGZvdW5kIGlu IHRoZSBMSUNFTlNFIGZpbGUuCisrCisrI2luY2x1ZGUgImJhc2UvYmluZC5oIgorKyNpbmNsdWRl ICJiYXNlL2xvZ2dpbmcuaCIKKysjaW5jbHVkZSAiYmFzZS9tYWNyb3MuaCIKKysjaW5jbHVkZSAi bWVkaWEvYmFzZS9hdWRpb190aW1lc3RhbXBfaGVscGVyLmgiCisrI2luY2x1ZGUgIm1lZGlhL2F1 ZGlvL3NuZGlvL2F1ZGlvX21hbmFnZXJfc25kaW8uaCIKKysjaW5jbHVkZSAibWVkaWEvYXVkaW8v YXVkaW9fbWFuYWdlci5oIgorKyNpbmNsdWRlICJtZWRpYS9hdWRpby9zbmRpby9zbmRpb19pbnB1 dC5oIgorKworK25hbWVzcGFjZSBtZWRpYSB7CisrCisrc3RhdGljIGNvbnN0IFNhbXBsZUZvcm1h dCBrU2FtcGxlRm9ybWF0ID0ga1NhbXBsZUZvcm1hdFMxNjsKKysKKyt2b2lkIFNuZGlvQXVkaW9J bnB1dFN0cmVhbTo6T25Nb3ZlQ2FsbGJhY2sodm9pZCAqYXJnLCBpbnQgZGVsdGEpCisreworKyAg U25kaW9BdWRpb0lucHV0U3RyZWFtKiBzZWxmID0gc3RhdGljX2Nhc3Q8U25kaW9BdWRpb0lucHV0 U3RyZWFtKj4oYXJnKTsKKysKKysgIHNlbGYtPmh3X2RlbGF5ICs9IGRlbHRhOworK30KKysKKyt2 b2lkICpTbmRpb0F1ZGlvSW5wdXRTdHJlYW06OlRocmVhZEVudHJ5KHZvaWQgKmFyZykgeworKyAg U25kaW9BdWRpb0lucHV0U3RyZWFtKiBzZWxmID0gc3RhdGljX2Nhc3Q8U25kaW9BdWRpb0lucHV0 U3RyZWFtKj4oYXJnKTsKKysKKysgIHNlbGYtPlRocmVhZExvb3AoKTsKKysgIHJldHVybiBOVUxM OworK30KKysKKytTbmRpb0F1ZGlvSW5wdXRTdHJlYW06OlNuZGlvQXVkaW9JbnB1dFN0cmVhbShB dWRpb01hbmFnZXJCYXNlKiBtYW5hZ2VyLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiBkZXZpY2VfbmFtZSwKKysgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBBdWRpb1BhcmFtZXRl cnMmIHBhcmFtcykKKysgICAgOiBtYW5hZ2VyKG1hbmFnZXIpLAorKyAgICAgIHBhcmFtcyhwYXJh bXMpLAorKyAgICAgIGF1ZGlvX2J1cyhBdWRpb0J1czo6Q3JlYXRlKHBhcmFtcykpLAorKyAgICAg IHN0YXRlKGtDbG9zZWQpIHsKKyt9CisrCisrU25kaW9BdWRpb0lucHV0U3RyZWFtOjp+U25kaW9B dWRpb0lucHV0U3RyZWFtKCkgeworKyAgaWYgKHN0YXRlICE9IGtDbG9zZWQpCisrICAgIENsb3Nl KCk7CisrfQorKworK2Jvb2wgU25kaW9BdWRpb0lucHV0U3RyZWFtOjpPcGVuKCkgeworKyAgc3Ry dWN0IHNpb19wYXIgcGFyOworKyAgaW50IHNpZzsKKysKKysgIGlmIChzdGF0ZSAhPSBrQ2xvc2Vk KQorKyAgICByZXR1cm4gZmFsc2U7CisrCisrICBpZiAocGFyYW1zLmZvcm1hdCgpICE9IEF1ZGlv UGFyYW1ldGVyczo6QVVESU9fUENNX0xJTkVBUiAmJgorKyAgICAgIHBhcmFtcy5mb3JtYXQoKSAh PSBBdWRpb1BhcmFtZXRlcnM6OkFVRElPX1BDTV9MT1dfTEFURU5DWSkgeworKyAgICBMT0coV0FS TklORykgPDwgIlVuc3VwcG9ydGVkIGF1ZGlvIGZvcm1hdC4iOworKyAgICByZXR1cm4gZmFsc2U7 CisrICB9CisrCisrICBzaW9faW5pdHBhcigmcGFyKTsKKysgIHBhci5yYXRlID0gcGFyYW1zLnNh bXBsZV9yYXRlKCk7CisrICBwYXIucmNoYW4gPSBwYXJhbXMuY2hhbm5lbHMoKTsKKysgIHBhci5i aXRzID0gU2FtcGxlRm9ybWF0VG9CaXRzUGVyQ2hhbm5lbChrU2FtcGxlRm9ybWF0KTsKKysgIHBh ci5icHMgPSBwYXIuYml0cyAvIDg7CisrICBwYXIuc2lnID0gc2lnID0gcGFyLmJpdHMgIT0gOCA/ IDEgOiAwOworKyAgcGFyLmxlID0gU0lPX0xFX05BVElWRTsKKysgIHBhci5hcHBidWZzeiA9IHBh cmFtcy5mcmFtZXNfcGVyX2J1ZmZlcigpOworKworKyAgaGRsID0gc2lvX29wZW4oU0lPX0RFVkFO WSwgU0lPX1JFQywgMCk7CisrCisrICBpZiAoaGRsID09IE5VTEwpIHsKKysgICAgTE9HKEVSUk9S KSA8PCAiQ291bGRuJ3Qgb3BlbiBhdWRpbyBkZXZpY2UuIjsKKysgICAgcmV0dXJuIGZhbHNlOwor KyAgfQorKworKyAgaWYgKCFzaW9fc2V0cGFyKGhkbCwgJnBhcikgfHwgIXNpb19nZXRwYXIoaGRs LCAmcGFyKSkgeworKyAgICBMT0coRVJST1IpIDw8ICJDb3VsZG4ndCBzZXQgYXVkaW8gcGFyYW1l dGVycy4iOworKyAgICBnb3RvIGJhZF9jbG9zZTsKKysgIH0KKysKKysgIGlmIChwYXIucmF0ZSAg IT0gKHVuc2lnbmVkIGludClwYXJhbXMuc2FtcGxlX3JhdGUoKSB8fAorKyAgICAgIHBhci5yY2hh biAhPSAodW5zaWduZWQgaW50KXBhcmFtcy5jaGFubmVscygpIHx8CisrICAgICAgcGFyLmJpdHMg ICE9ICh1bnNpZ25lZCBpbnQpU2FtcGxlRm9ybWF0VG9CaXRzUGVyQ2hhbm5lbChrU2FtcGxlRm9y bWF0KSB8fAorKyAgICAgIHBhci5zaWcgICAhPSAodW5zaWduZWQgaW50KXNpZyB8fAorKyAgICAg IChwYXIuYnBzID4gMSAmJiBwYXIubGUgIT0gU0lPX0xFX05BVElWRSkgfHwKKysgICAgICAocGFy LmJpdHMgIT0gcGFyLmJwcyAqIDgpKSB7CisrICAgIExPRyhFUlJPUikgPDwgIlVuc3VwcG9ydGVk IGF1ZGlvIHBhcmFtZXRlcnMuIjsKKysgICAgZ290byBiYWRfY2xvc2U7CisrICB9CisrICBzdGF0 ZSA9IGtTdG9wcGVkOworKyAgYnVmZmVyID0gbmV3IGNoYXJbYXVkaW9fYnVzLT5mcmFtZXMoKSAq IHBhcmFtcy5HZXRCeXRlc1BlckZyYW1lKGtTYW1wbGVGb3JtYXQpXTsKKysgIHNpb19vbm1vdmUo aGRsLCAmT25Nb3ZlQ2FsbGJhY2ssIHRoaXMpOworKyAgcmV0dXJuIHRydWU7CisrYmFkX2Nsb3Nl OgorKyAgc2lvX2Nsb3NlKGhkbCk7CisrICByZXR1cm4gZmFsc2U7CisrfQorKworK3ZvaWQgU25k aW9BdWRpb0lucHV0U3RyZWFtOjpTdGFydChBdWRpb0lucHV0Q2FsbGJhY2sqIGNiKSB7CisrCisr ICBTdGFydEFnYygpOworKworKyAgc3RhdGUgPSBrUnVubmluZzsKKysgIGh3X2RlbGF5ID0gMDsK KysgIGNhbGxiYWNrID0gY2I7CisrICBzaW9fc3RhcnQoaGRsKTsKKysgIGlmIChwdGhyZWFkX2Ny ZWF0ZSgmdGhyZWFkLCBOVUxMLCAmVGhyZWFkRW50cnksIHRoaXMpICE9IDApIHsKKysgICAgTE9H KEVSUk9SKSA8PCAiRmFpbGVkIHRvIGNyZWF0ZSByZWFsLXRpbWUgdGhyZWFkIGZvciByZWNvcmRp bmcuIjsKKysgICAgc2lvX3N0b3AoaGRsKTsKKysgICAgc3RhdGUgPSBrU3RvcHBlZDsKKysgIH0K Kyt9CisrCisrdm9pZCBTbmRpb0F1ZGlvSW5wdXRTdHJlYW06OlN0b3AoKSB7CisrCisrICBpZiAo c3RhdGUgPT0ga1N0b3BwZWQpCisrICAgIHJldHVybjsKKysKKysgIHN0YXRlID0ga1N0b3BXYWl0 OworKyAgcHRocmVhZF9qb2luKHRocmVhZCwgTlVMTCk7CisrICBzaW9fc3RvcChoZGwpOworKyAg c3RhdGUgPSBrU3RvcHBlZDsKKysKKysgIFN0b3BBZ2MoKTsKKyt9CisrCisrdm9pZCBTbmRpb0F1 ZGlvSW5wdXRTdHJlYW06OkNsb3NlKCkgeworKworKyAgaWYgKHN0YXRlID09IGtDbG9zZWQpCisr ICAgIHJldHVybjsKKysKKysgIGlmIChzdGF0ZSA9PSBrUnVubmluZykKKysgICAgU3RvcCgpOwor KworKyAgc3RhdGUgPSBrQ2xvc2VkOworKyAgZGVsZXRlIFtdIGJ1ZmZlcjsKKysgIHNpb19jbG9z ZShoZGwpOworKworKyAgbWFuYWdlci0+UmVsZWFzZUlucHV0U3RyZWFtKHRoaXMpOworK30KKysK Kytkb3VibGUgU25kaW9BdWRpb0lucHV0U3RyZWFtOjpHZXRNYXhWb2x1bWUoKSB7CisrICAvLyBO b3Qgc3VwcG9ydGVkCisrICByZXR1cm4gMC4wOworK30KKysKKyt2b2lkIFNuZGlvQXVkaW9JbnB1 dFN0cmVhbTo6U2V0Vm9sdW1lKGRvdWJsZSB2b2x1bWUpIHsKKysgIC8vIE5vdCBzdXBwb3J0ZWQu IERvIG5vdGhpbmcuCisrfQorKworK2RvdWJsZSBTbmRpb0F1ZGlvSW5wdXRTdHJlYW06OkdldFZv bHVtZSgpIHsKKysgIC8vIE5vdCBzdXBwb3J0ZWQuCisrICByZXR1cm4gMC4wOworK30KKysKKyti b29sIFNuZGlvQXVkaW9JbnB1dFN0cmVhbTo6SXNNdXRlZCgpIHsKKysgIC8vIE5vdCBzdXBwb3J0 ZWQuCisrICByZXR1cm4gZmFsc2U7CisrfQorKworK3ZvaWQgU25kaW9BdWRpb0lucHV0U3RyZWFt OjpTZXRPdXRwdXREZXZpY2VGb3JBZWMoCisrICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiBvdXRwdXRf ZGV2aWNlX2lkKSB7CisrICAvLyBOb3Qgc3VwcG9ydGVkLgorK30KKysKKyt2b2lkIFNuZGlvQXVk aW9JbnB1dFN0cmVhbTo6VGhyZWFkTG9vcCh2b2lkKSB7CisrICBzaXplX3QgdG9kbywgbjsKKysg IGNoYXIgKmRhdGE7CisrICB1bnNpZ25lZCBpbnQgbmZyYW1lczsKKysgIGRvdWJsZSBub3JtYWxp emVkX3ZvbHVtZSA9IDAuMDsKKysKKysgIG5mcmFtZXMgPSBhdWRpb19idXMtPmZyYW1lcygpOwor KworKyAgd2hpbGUgKHN0YXRlID09IGtSdW5uaW5nICYmICFzaW9fZW9mKGhkbCkpIHsKKysKKysg ICAgR2V0QWdjVm9sdW1lKCZub3JtYWxpemVkX3ZvbHVtZSk7CisrCisrICAgIC8vIHJlYWQgb25l IGJsb2NrCisrICAgIHRvZG8gPSBuZnJhbWVzICogcGFyYW1zLkdldEJ5dGVzUGVyRnJhbWUoa1Nh bXBsZUZvcm1hdCk7CisrICAgIGRhdGEgPSBidWZmZXI7CisrICAgIHdoaWxlICh0b2RvID4gMCkg eworKyAgICAgIG4gPSBzaW9fcmVhZChoZGwsIGRhdGEsIHRvZG8pOworKyAgICAgIGlmIChuID09 IDApCisrICAgICAgICByZXR1cm47CS8vIHVucmVjb3ZlcmFibGUgSS9PIGVycm9yCisrICAgICAg dG9kbyAtPSBuOworKyAgICAgIGRhdGEgKz0gbjsKKysgICAgfQorKyAgICBod19kZWxheSAtPSBu ZnJhbWVzOworKworKyAgICAvLyBjb252ZXJ0IGZyYW1lcyBjb3VudCB0byBUaW1lRGVsdGEKKysg ICAgY29uc3QgYmFzZTo6VGltZURlbHRhIGRlbGF5ID0gQXVkaW9UaW1lc3RhbXBIZWxwZXI6OkZy YW1lc1RvVGltZShod19kZWxheSwKKysgICAgICBwYXJhbXMuc2FtcGxlX3JhdGUoKSk7CisrCisr ICAgIC8vIHB1c2ggaW50byBidXMKKysgICAgYXVkaW9fYnVzLT5Gcm9tSW50ZXJsZWF2ZWQ8U2ln bmVkSW50MTZTYW1wbGVUeXBlVHJhaXRzPihyZWludGVycHJldF9jYXN0PGludDE2X3QqPihidWZm ZXIpLCBuZnJhbWVzKTsKKysKKysgICAgLy8gaW52b2tlIGNhbGxiYWNrCisrICAgIGNhbGxiYWNr LT5PbkRhdGEoYXVkaW9fYnVzLmdldCgpLCBiYXNlOjpUaW1lVGlja3M6Ok5vdygpIC0gZGVsYXks IDEuKTsKKysgIH0KKyt9CisrCisrfSAgLy8gbmFtZXNwYWNlIG1lZGlhCistLS0gL2Rldi9udWxs CisrKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vbWVkaWEvYXVkaW8vc25kaW8vc25kaW9faW5w dXQuaAorQEAgLTAsMCArMSw5MSBAQAorKy8vIENvcHlyaWdodCAyMDEzIFRoZSBDaHJvbWl1bSBB dXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorKy8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2Rl IGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKKysvLyBmb3Vu ZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorKworKyNpZm5kZWYgTUVESUFfQVVESU9fU05ESU9fU05E SU9fSU5QVVRfSF8KKysjZGVmaW5lIE1FRElBX0FVRElPX1NORElPX1NORElPX0lOUFVUX0hfCisr CisrI2luY2x1ZGUgPHN0ZGludC5oPgorKyNpbmNsdWRlIDxzdHJpbmc+CisrI2luY2x1ZGUgPHNu ZGlvLmg+CisrCisrI2luY2x1ZGUgImJhc2UvY29tcGlsZXJfc3BlY2lmaWMuaCIKKysjaW5jbHVk ZSAiYmFzZS9tYWNyb3MuaCIKKysjaW5jbHVkZSAiYmFzZS9tZW1vcnkvd2Vha19wdHIuaCIKKysj aW5jbHVkZSAiYmFzZS90aW1lL3RpbWUuaCIKKysjaW5jbHVkZSAibWVkaWEvYXVkaW8vYWdjX2F1 ZGlvX3N0cmVhbS5oIgorKyNpbmNsdWRlICJtZWRpYS9hdWRpby9hdWRpb19pby5oIgorKyNpbmNs dWRlICJtZWRpYS9hdWRpby9hdWRpb19kZXZpY2VfZGVzY3JpcHRpb24uaCIKKysjaW5jbHVkZSAi bWVkaWEvYmFzZS9hdWRpb19wYXJhbWV0ZXJzLmgiCisrCisrbmFtZXNwYWNlIG1lZGlhIHsKKysK KytjbGFzcyBBdWRpb01hbmFnZXJCYXNlOworKworKy8vIEltcGxlbWVudGF0aW9uIG9mIEF1ZGlv T3V0cHV0U3RyZWFtIHVzaW5nIHNuZGlvKDcpCisrY2xhc3MgU25kaW9BdWRpb0lucHV0U3RyZWFt IDogcHVibGljIEFnY0F1ZGlvU3RyZWFtPEF1ZGlvSW5wdXRTdHJlYW0+IHsKKysgcHVibGljOgor KyAgLy8gUGFzcyB0aGlzIHRvIHRoZSBjb25zdHJ1Y3RvciBpZiB5b3Ugd2FudCB0byBhdHRlbXB0 IGF1dG8tc2VsZWN0aW9uCisrICAvLyBvZiB0aGUgYXVkaW8gcmVjb3JkaW5nIGRldmljZS4KKysg IHN0YXRpYyBjb25zdCBjaGFyIGtBdXRvU2VsZWN0RGV2aWNlW107CisrCisrICAvLyBDcmVhdGUg YSBQQ00gT3V0cHV0IHN0cmVhbSBmb3IgdGhlIFNORElPIGRldmljZSBpZGVudGlmaWVkIGJ5Cisr ICAvLyB8ZGV2aWNlX25hbWV8LiBJZiB1bnN1cmUgb2Ygd2hhdCB0byB1c2UgZm9yIHxkZXZpY2Vf bmFtZXwsIHVzZQorKyAgLy8gfGtBdXRvU2VsZWN0RGV2aWNlfC4KKysgIFNuZGlvQXVkaW9JbnB1 dFN0cmVhbShBdWRpb01hbmFnZXJCYXNlKiBhdWRpb19tYW5hZ2VyLAorKyAgICAgICAgICAgICAg ICAgICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiBkZXZpY2VfbmFtZSwKKysgICAgICAgICAgICAgICAg ICAgICBjb25zdCBBdWRpb1BhcmFtZXRlcnMmIHBhcmFtcyk7CisrCisrICB+U25kaW9BdWRpb0lu cHV0U3RyZWFtKCkgb3ZlcnJpZGU7CisrCisrICAvLyBJbXBsZW1lbnRhdGlvbiBvZiBBdWRpb0lu cHV0U3RyZWFtLgorKyAgYm9vbCBPcGVuKCkgb3ZlcnJpZGU7CisrICB2b2lkIFN0YXJ0KEF1ZGlv SW5wdXRDYWxsYmFjayogY2FsbGJhY2spIG92ZXJyaWRlOworKyAgdm9pZCBTdG9wKCkgb3ZlcnJp ZGU7CisrICB2b2lkIENsb3NlKCkgb3ZlcnJpZGU7CisrICBkb3VibGUgR2V0TWF4Vm9sdW1lKCkg b3ZlcnJpZGU7CisrICB2b2lkIFNldFZvbHVtZShkb3VibGUgdm9sdW1lKSBvdmVycmlkZTsKKysg IGRvdWJsZSBHZXRWb2x1bWUoKSBvdmVycmlkZTsKKysgIGJvb2wgSXNNdXRlZCgpIG92ZXJyaWRl OworKyAgdm9pZCBTZXRPdXRwdXREZXZpY2VGb3JBZWMoY29uc3Qgc3RkOjpzdHJpbmcmIG91dHB1 dF9kZXZpY2VfaWQpIG92ZXJyaWRlOworKworKyBwcml2YXRlOgorKworKyAgZW51bSBTdHJlYW1T dGF0ZSB7CisrICAgIGtDbG9zZWQsICAgICAgICAgICAgLy8gTm90IG9wZW5lZCB5ZXQKKysgICAg a1N0b3BwZWQsICAgICAgICAgICAvLyBEZXZpY2Ugb3BlbmVkLCBidXQgbm90IHN0YXJ0ZWQgeWV0 CisrICAgIGtSdW5uaW5nLCAgICAgICAgICAgLy8gU3RhcnRlZCwgZGV2aWNlIHBsYXlpbmcKKysg ICAga1N0b3BXYWl0ICAgICAgICAgICAvLyBTdG9wcGluZywgd2FpdGluZyBmb3IgdGhlIHJlYWwt dGltZSB0aHJlYWQgdG8gZXhpdAorKyAgfTsKKysKKysgIC8vIEMtc3R5bGUgY2FsbC1iYWNrcwor KyAgc3RhdGljIHZvaWQgT25Nb3ZlQ2FsbGJhY2sodm9pZCAqYXJnLCBpbnQgZGVsdGEpOworKyAg c3RhdGljIHZvaWQqIFRocmVhZEVudHJ5KHZvaWQgKmFyZyk7CisrCisrICAvLyBDb250aW51b3Vz bHkgbW92ZXMgZGF0YSBmcm9tIHRoZSBkZXZpY2UgdG8gdGhlIGNvbnN1bWVyCisrICB2b2lkIFRo cmVhZExvb3AoKTsKKysgIC8vIE91ciBjcmVhdG9yLCB0aGUgYXVkaW8gbWFuYWdlciBuZWVkcyB0 byBiZSBub3RpZmllZCB3aGVuIHdlIGNsb3NlLgorKyAgQXVkaW9NYW5hZ2VyQmFzZSogbWFuYWdl cjsKKysgIC8vIFBhcmFtZXRlcnMgb2YgdGhlIHNvdXJjZQorKyAgQXVkaW9QYXJhbWV0ZXJzIHBh cmFtczsKKysgIC8vIFdlIHN0b3JlIGRhdGEgaGVyZSBmb3IgY29uc3VtZXIKKysgIHN0ZDo6dW5p cXVlX3B0cjxBdWRpb0J1cz4gYXVkaW9fYnVzOworKyAgLy8gQ2FsbC1iYWNrIHRoYXQgY29uc3Vt ZXMgcmVjb3JkZWQgZGF0YQorKyAgQXVkaW9JbnB1dENhbGxiYWNrKiBjYWxsYmFjazsgIC8vIFZh bGlkIGR1cmluZyBhIHJlY29yZGluZyBzZXNzaW9uLgorKyAgLy8gSGFuZGxlIG9mIHRoZSBhdWRp byBkZXZpY2UKKysgIHN0cnVjdCBzaW9faGRsKiBoZGw7CisrICAvLyBDdXJyZW50IHN0YXRlIG9m IHRoZSBzdHJlYW0KKysgIGVudW0gU3RyZWFtU3RhdGUgc3RhdGU7CisrICAvLyBIaWdoIHByaW9y aXR5IHRocmVhZCBydW5uaW5nIFRocmVhZExvb3AoKQorKyAgcHRocmVhZF90IHRocmVhZDsKKysg IC8vIE51bWJlciBvZiBmcmFtZXMgYnVmZmVyZWQgaW4gdGhlIGhhcmR3YXJlCisrICBpbnQgaHdf ZGVsYXk7CisrICAvLyBUZW1wb3JhcnkgYnVmZmVyIHdoZXJlIGRhdGEgaXMgc3RvcmVkIHNuZGlv LWNvbXBhdGlibGUgZm9ybWF0CisrICBjaGFyKiBidWZmZXI7CisrCisrICBESVNBTExPV19DT1BZ X0FORF9BU1NJR04oU25kaW9BdWRpb0lucHV0U3RyZWFtKTsKKyt9OworKworK30gIC8vIG5hbWVz cGFjZSBtZWRpYQorKworKyNlbmRpZiAgLy8gTUVESUFfQVVESU9fU05ESU9fU05ESU9fSU5QVVRf SF8KKy0tLSAvZGV2L251bGwKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9tZWRpYS9hdWRp by9zbmRpby9zbmRpb19vdXRwdXQuY2MKK0BAIC0wLDAgKzEsMTgzIEBACisrLy8gQ29weXJpZ2h0 IChjKSAyMDEyIFRoZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorKy8v IFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vu c2UgdGhhdCBjYW4gYmUKKysvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorKworKyNpbmNs dWRlICJiYXNlL2xvZ2dpbmcuaCIKKysjaW5jbHVkZSAiYmFzZS90aW1lL3RpbWUuaCIKKysjaW5j bHVkZSAiYmFzZS90aW1lL2RlZmF1bHRfdGlja19jbG9jay5oIgorKyNpbmNsdWRlICJtZWRpYS9h dWRpby9hdWRpb19tYW5hZ2VyX2Jhc2UuaCIKKysjaW5jbHVkZSAibWVkaWEvYmFzZS9hdWRpb190 aW1lc3RhbXBfaGVscGVyLmgiCisrI2luY2x1ZGUgIm1lZGlhL2F1ZGlvL3NuZGlvL3NuZGlvX291 dHB1dC5oIgorKworK25hbWVzcGFjZSBtZWRpYSB7CisrCisrc3RhdGljIGNvbnN0IFNhbXBsZUZv cm1hdCBrU2FtcGxlRm9ybWF0ID0ga1NhbXBsZUZvcm1hdFMxNjsKKysKKyt2b2lkIFNuZGlvQXVk aW9PdXRwdXRTdHJlYW06Ok9uTW92ZUNhbGxiYWNrKHZvaWQgKmFyZywgaW50IGRlbHRhKSB7Cisr ICBTbmRpb0F1ZGlvT3V0cHV0U3RyZWFtKiBzZWxmID0gc3RhdGljX2Nhc3Q8U25kaW9BdWRpb091 dHB1dFN0cmVhbSo+KGFyZyk7CisrCisrICBzZWxmLT5od19kZWxheSAtPSBkZWx0YTsKKyt9Cisr Cisrdm9pZCBTbmRpb0F1ZGlvT3V0cHV0U3RyZWFtOjpPblZvbENhbGxiYWNrKHZvaWQgKmFyZywg dW5zaWduZWQgaW50IHZvbCkgeworKyAgU25kaW9BdWRpb091dHB1dFN0cmVhbSogc2VsZiA9IHN0 YXRpY19jYXN0PFNuZGlvQXVkaW9PdXRwdXRTdHJlYW0qPihhcmcpOworKworKyAgc2VsZi0+dm9s ID0gdm9sOworK30KKysKKyt2b2lkICpTbmRpb0F1ZGlvT3V0cHV0U3RyZWFtOjpUaHJlYWRFbnRy eSh2b2lkICphcmcpIHsKKysgIFNuZGlvQXVkaW9PdXRwdXRTdHJlYW0qIHNlbGYgPSBzdGF0aWNf Y2FzdDxTbmRpb0F1ZGlvT3V0cHV0U3RyZWFtKj4oYXJnKTsKKysKKysgIHNlbGYtPlRocmVhZExv b3AoKTsKKysgIHJldHVybiBOVUxMOworK30KKysKKytTbmRpb0F1ZGlvT3V0cHV0U3RyZWFtOjpT bmRpb0F1ZGlvT3V0cHV0U3RyZWFtKGNvbnN0IEF1ZGlvUGFyYW1ldGVycyYgcGFyYW1zLAorKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQXVkaW9NYW5hZ2Vy QmFzZSogbWFuYWdlcikKKysgICAgOiBtYW5hZ2VyKG1hbmFnZXIpLAorKyAgICAgIHBhcmFtcyhw YXJhbXMpLAorKyAgICAgIGF1ZGlvX2J1cyhBdWRpb0J1czo6Q3JlYXRlKHBhcmFtcykpLAorKyAg ICAgIHN0YXRlKGtDbG9zZWQpLAorKyAgICAgIG11dGV4KFBUSFJFQURfTVVURVhfSU5JVElBTEla RVIpIHsKKyt9CisrCisrU25kaW9BdWRpb091dHB1dFN0cmVhbTo6flNuZGlvQXVkaW9PdXRwdXRT dHJlYW0oKSB7CisrICBpZiAoc3RhdGUgIT0ga0Nsb3NlZCkKKysgICAgQ2xvc2UoKTsKKyt9Cisr CisrYm9vbCBTbmRpb0F1ZGlvT3V0cHV0U3RyZWFtOjpPcGVuKCkgeworKyAgc3RydWN0IHNpb19w YXIgcGFyOworKyAgaW50IHNpZzsKKysKKysgIGlmIChwYXJhbXMuZm9ybWF0KCkgIT0gQXVkaW9Q YXJhbWV0ZXJzOjpBVURJT19QQ01fTElORUFSICYmCisrICAgICAgcGFyYW1zLmZvcm1hdCgpICE9 IEF1ZGlvUGFyYW1ldGVyczo6QVVESU9fUENNX0xPV19MQVRFTkNZKSB7CisrICAgIExPRyhXQVJO SU5HKSA8PCAiVW5zdXBwb3J0ZWQgYXVkaW8gZm9ybWF0LiI7CisrICAgIHJldHVybiBmYWxzZTsK KysgIH0KKysgIHNpb19pbml0cGFyKCZwYXIpOworKyAgcGFyLnJhdGUgPSBwYXJhbXMuc2FtcGxl X3JhdGUoKTsKKysgIHBhci5wY2hhbiA9IHBhcmFtcy5jaGFubmVscygpOworKyAgcGFyLmJpdHMg PSBTYW1wbGVGb3JtYXRUb0JpdHNQZXJDaGFubmVsKGtTYW1wbGVGb3JtYXQpOworKyAgcGFyLmJw cyA9IHBhci5iaXRzIC8gODsKKysgIHBhci5zaWcgPSBzaWcgPSBwYXIuYml0cyAhPSA4ID8gMSA6 IDA7CisrICBwYXIubGUgPSBTSU9fTEVfTkFUSVZFOworKyAgcGFyLmFwcGJ1ZnN6ID0gcGFyYW1z LmZyYW1lc19wZXJfYnVmZmVyKCk7CisrCisrICBoZGwgPSBzaW9fb3BlbihTSU9fREVWQU5ZLCBT SU9fUExBWSwgMCk7CisrICBpZiAoaGRsID09IE5VTEwpIHsKKysgICAgTE9HKEVSUk9SKSA8PCAi Q291bGRuJ3Qgb3BlbiBhdWRpbyBkZXZpY2UuIjsKKysgICAgcmV0dXJuIGZhbHNlOworKyAgfQor KyAgaWYgKCFzaW9fc2V0cGFyKGhkbCwgJnBhcikgfHwgIXNpb19nZXRwYXIoaGRsLCAmcGFyKSkg eworKyAgICBMT0coRVJST1IpIDw8ICJDb3VsZG4ndCBzZXQgYXVkaW8gcGFyYW1ldGVycy4iOwor KyAgICBnb3RvIGJhZF9jbG9zZTsKKysgIH0KKysgIGlmIChwYXIucmF0ZSAgIT0gKHVuc2lnbmVk IGludClwYXJhbXMuc2FtcGxlX3JhdGUoKSB8fAorKyAgICAgIHBhci5wY2hhbiAhPSAodW5zaWdu ZWQgaW50KXBhcmFtcy5jaGFubmVscygpIHx8CisrICAgICAgcGFyLmJpdHMgICE9ICh1bnNpZ25l ZCBpbnQpU2FtcGxlRm9ybWF0VG9CaXRzUGVyQ2hhbm5lbChrU2FtcGxlRm9ybWF0KSB8fAorKyAg ICAgIHBhci5zaWcgICAhPSAodW5zaWduZWQgaW50KXNpZyB8fAorKyAgICAgIChwYXIuYnBzID4g MSAmJiBwYXIubGUgIT0gU0lPX0xFX05BVElWRSkgfHwKKysgICAgICAocGFyLmJpdHMgIT0gcGFy LmJwcyAqIDgpKSB7CisrICAgIExPRyhFUlJPUikgPDwgIlVuc3VwcG9ydGVkIGF1ZGlvIHBhcmFt ZXRlcnMuIjsKKysgICAgZ290byBiYWRfY2xvc2U7CisrICB9CisrICBzdGF0ZSA9IGtTdG9wcGVk OworKyAgdm9scGVuZGluZyA9IDA7CisrICB2b2wgPSAwOworKyAgYnVmZmVyID0gbmV3IGNoYXJb YXVkaW9fYnVzLT5mcmFtZXMoKSAqIHBhcmFtcy5HZXRCeXRlc1BlckZyYW1lKGtTYW1wbGVGb3Jt YXQpXTsKKysgIHNpb19vbm1vdmUoaGRsLCAmT25Nb3ZlQ2FsbGJhY2ssIHRoaXMpOworKyAgc2lv X29udm9sKGhkbCwgJk9uVm9sQ2FsbGJhY2ssIHRoaXMpOworKyAgcmV0dXJuIHRydWU7CisrIGJh ZF9jbG9zZToKKysgIHNpb19jbG9zZShoZGwpOworKyAgcmV0dXJuIGZhbHNlOworK30KKysKKyt2 b2lkIFNuZGlvQXVkaW9PdXRwdXRTdHJlYW06OkNsb3NlKCkgeworKyAgaWYgKHN0YXRlID09IGtD bG9zZWQpCisrICAgIHJldHVybjsKKysgIGlmIChzdGF0ZSA9PSBrUnVubmluZykKKysgICAgU3Rv cCgpOworKyAgc3RhdGUgPSBrQ2xvc2VkOworKyAgZGVsZXRlIFtdIGJ1ZmZlcjsKKysgIHNpb19j bG9zZShoZGwpOworKyAgbWFuYWdlci0+UmVsZWFzZU91dHB1dFN0cmVhbSh0aGlzKTsgIC8vIENh bGxzIHRoZSBkZXN0cnVjdG9yCisrfQorKworK3ZvaWQgU25kaW9BdWRpb091dHB1dFN0cmVhbTo6 U3RhcnQoQXVkaW9Tb3VyY2VDYWxsYmFjayogY2FsbGJhY2spIHsKKysgIHN0YXRlID0ga1J1bm5p bmc7CisrICBod19kZWxheSA9IDA7CisrICBzb3VyY2UgPSBjYWxsYmFjazsKKysgIHNpb19zdGFy dChoZGwpOworKyAgaWYgKHB0aHJlYWRfY3JlYXRlKCZ0aHJlYWQsIE5VTEwsICZUaHJlYWRFbnRy eSwgdGhpcykgIT0gMCkgeworKyAgICBMT0coRVJST1IpIDw8ICJGYWlsZWQgdG8gY3JlYXRlIHJl YWwtdGltZSB0aHJlYWQuIjsKKysgICAgc2lvX3N0b3AoaGRsKTsKKysgICAgc3RhdGUgPSBrU3Rv cHBlZDsKKysgIH0KKyt9CisrCisrdm9pZCBTbmRpb0F1ZGlvT3V0cHV0U3RyZWFtOjpTdG9wKCkg eworKyAgaWYgKHN0YXRlID09IGtTdG9wcGVkKQorKyAgICByZXR1cm47CisrICBzdGF0ZSA9IGtT dG9wV2FpdDsKKysgIHB0aHJlYWRfam9pbih0aHJlYWQsIE5VTEwpOworKyAgc2lvX3N0b3AoaGRs KTsKKysgIHN0YXRlID0ga1N0b3BwZWQ7CisrfQorKworK3ZvaWQgU25kaW9BdWRpb091dHB1dFN0 cmVhbTo6U2V0Vm9sdW1lKGRvdWJsZSB2KSB7CisrICBwdGhyZWFkX211dGV4X2xvY2soJm11dGV4 KTsKKysgIHZvbCA9IHYgKiBTSU9fTUFYVk9MOworKyAgdm9scGVuZGluZyA9IDE7CisrICBwdGhy ZWFkX211dGV4X3VubG9jaygmbXV0ZXgpOworK30KKysKKyt2b2lkIFNuZGlvQXVkaW9PdXRwdXRT dHJlYW06OkdldFZvbHVtZShkb3VibGUqIHYpIHsKKysgIHB0aHJlYWRfbXV0ZXhfbG9jaygmbXV0 ZXgpOworKyAgKnYgPSB2b2wgKiAoMS4gLyBTSU9fTUFYVk9MKTsKKysgIHB0aHJlYWRfbXV0ZXhf dW5sb2NrKCZtdXRleCk7CisrfQorKworKy8vIFRoaXMgc3RyZWFtIGlzIGFsd2F5cyB1c2VkIHdp dGggc3ViIHNlY29uZCBidWZmZXIgc2l6ZXMsIHdoZXJlIGl0J3MKKysvLyBzdWZmaWNpZW50IHRv IHNpbXBseSBhbHdheXMgZmx1c2ggdXBvbiBTdGFydCgpLgorK3ZvaWQgU25kaW9BdWRpb091dHB1 dFN0cmVhbTo6Rmx1c2goKSB7fQorKworK3ZvaWQgU25kaW9BdWRpb091dHB1dFN0cmVhbTo6VGhy ZWFkTG9vcCh2b2lkKSB7CisrICBpbnQgYXZhaWwsIGNvdW50LCByZXN1bHQ7CisrCisrICB3aGls ZSAoc3RhdGUgPT0ga1J1bm5pbmcpIHsKKysgICAgLy8gVXBkYXRlIHZvbHVtZSBpZiBuZWVkZWQK KysgICAgcHRocmVhZF9tdXRleF9sb2NrKCZtdXRleCk7CisrICAgIGlmICh2b2xwZW5kaW5nKSB7 CisrICAgICAgdm9scGVuZGluZyA9IDA7CisrICAgICAgc2lvX3NldHZvbChoZGwsIHZvbCk7Cisr ICAgIH0KKysgICAgcHRocmVhZF9tdXRleF91bmxvY2soJm11dGV4KTsKKysKKysgICAgLy8gR2V0 IGRhdGEgdG8gcGxheQorKyAgICBjb25zdCBiYXNlOjpUaW1lRGVsdGEgZGVsYXkgPSBBdWRpb1Rp bWVzdGFtcEhlbHBlcjo6RnJhbWVzVG9UaW1lKGh3X2RlbGF5LAorKwlwYXJhbXMuc2FtcGxlX3Jh dGUoKSk7CisrICAgIGNvdW50ID0gc291cmNlLT5Pbk1vcmVEYXRhKGRlbGF5LCBiYXNlOjpUaW1l VGlja3M6Ok5vdygpLCAwLCBhdWRpb19idXMuZ2V0KCkpOworKyAgICBhdWRpb19idXMtPlRvSW50 ZXJsZWF2ZWQ8U2lnbmVkSW50MTZTYW1wbGVUeXBlVHJhaXRzPihjb3VudCwgcmVpbnRlcnByZXRf Y2FzdDxpbnQxNl90Kj4oYnVmZmVyKSk7CisrICAgIGlmIChjb3VudCA9PSAwKSB7CisrICAgICAg Ly8gV2UgaGF2ZSB0byBzdWJtaXQgc29tZXRoaW5nIHRvIHRoZSBkZXZpY2UKKysgICAgICBjb3Vu dCA9IGF1ZGlvX2J1cy0+ZnJhbWVzKCk7CisrICAgICAgbWVtc2V0KGJ1ZmZlciwgMCwgY291bnQg KiBwYXJhbXMuR2V0Qnl0ZXNQZXJGcmFtZShrU2FtcGxlRm9ybWF0KSk7CisrICAgICAgTE9HKFdB Uk5JTkcpIDw8ICJObyBkYXRhIHRvIHBsYXksIHJ1bm5pbmcgZW1wdHkgY3ljbGUuIjsKKysgICAg fQorKworKyAgICAvLyBTdWJtaXQgZGF0YSB0byB0aGUgZGV2aWNlCisrICAgIGF2YWlsID0gY291 bnQgKiBwYXJhbXMuR2V0Qnl0ZXNQZXJGcmFtZShrU2FtcGxlRm9ybWF0KTsKKysgICAgcmVzdWx0 ID0gc2lvX3dyaXRlKGhkbCwgYnVmZmVyLCBhdmFpbCk7CisrICAgIGlmIChyZXN1bHQgPT0gMCkg eworKyAgICAgIExPRyhXQVJOSU5HKSA8PCAiQXVkaW8gZGV2aWNlIGRpc2Nvbm5lY3RlZC4iOwor KyAgICAgIGJyZWFrOworKyAgICB9CisrCisrICAgIC8vIFVwZGF0ZSBoYXJkd2FyZSBwb2ludGVy CisrICAgIGh3X2RlbGF5ICs9IGNvdW50OworKyAgfQorK30KKysKKyt9ICAvLyBuYW1lc3BhY2Ug bWVkaWEKKy0tLSAvZGV2L251bGwKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9tZWRpYS9h dWRpby9zbmRpby9zbmRpb19vdXRwdXQuaAorQEAgLTAsMCArMSw4NiBAQAorKy8vIENvcHlyaWdo dCAoYykgMjAxMiBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKysv LyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNl bnNlIHRoYXQgY2FuIGJlCisrLy8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKysKKysjaWZu ZGVmIE1FRElBX0FVRElPX1NORElPX1NORElPX09VVFBVVF9IXworKyNkZWZpbmUgTUVESUFfQVVE SU9fU05ESU9fU05ESU9fT1VUUFVUX0hfCisrCisrI2luY2x1ZGUgPHB0aHJlYWQuaD4KKysjaW5j bHVkZSA8c25kaW8uaD4KKysKKysjaW5jbHVkZSAiYmFzZS90aW1lL3RpY2tfY2xvY2suaCIKKysj aW5jbHVkZSAiYmFzZS90aW1lL3RpbWUuaCIKKysjaW5jbHVkZSAibWVkaWEvYXVkaW8vYXVkaW9f aW8uaCIKKysKKytuYW1lc3BhY2UgbWVkaWEgeworKworK2NsYXNzIEF1ZGlvTWFuYWdlckJhc2U7 CisrCisrLy8gSW1wbGVtZW50YXRpb24gb2YgQXVkaW9PdXRwdXRTdHJlYW0gdXNpbmcgc25kaW8o NykKKytjbGFzcyBTbmRpb0F1ZGlvT3V0cHV0U3RyZWFtIDogcHVibGljIEF1ZGlvT3V0cHV0U3Ry ZWFtIHsKKysgcHVibGljOgorKyAgLy8gVGhlIG1hbmFnZXIgaXMgY3JlYXRpbmcgdGhpcyBvYmpl Y3QKKysgIFNuZGlvQXVkaW9PdXRwdXRTdHJlYW0oY29uc3QgQXVkaW9QYXJhbWV0ZXJzJiBwYXJh bXMsCisrICAgICAgICAgICAgICAgICAgICAgICAgIEF1ZGlvTWFuYWdlckJhc2UqIG1hbmFnZXIp OworKyAgdmlydHVhbCB+U25kaW9BdWRpb091dHB1dFN0cmVhbSgpOworKworKyAgLy8gSW1wbGVt ZW50YXRpb24gb2YgQXVkaW9PdXRwdXRTdHJlYW0uCisrICBib29sIE9wZW4oKSBvdmVycmlkZTsK KysgIHZvaWQgQ2xvc2UoKSBvdmVycmlkZTsKKysgIHZvaWQgU3RhcnQoQXVkaW9Tb3VyY2VDYWxs YmFjayogY2FsbGJhY2spIG92ZXJyaWRlOworKyAgdm9pZCBTdG9wKCkgb3ZlcnJpZGU7CisrICB2 b2lkIFNldFZvbHVtZShkb3VibGUgdm9sdW1lKSBvdmVycmlkZTsKKysgIHZvaWQgR2V0Vm9sdW1l KGRvdWJsZSogdm9sdW1lKSBvdmVycmlkZTsKKysgIHZvaWQgRmx1c2goKSBvdmVycmlkZTsKKysK KysgIGZyaWVuZCB2b2lkIHNuZGlvX29ubW92ZSh2b2lkICphcmcsIGludCBkZWx0YSk7CisrICBm cmllbmQgdm9pZCBzbmRpb19vbnZvbCh2b2lkICphcmcsIHVuc2lnbmVkIGludCB2b2wpOworKyAg ZnJpZW5kIHZvaWQgKnNuZGlvX3RocmVhZHN0YXJ0KHZvaWQgKmFyZyk7CisrCisrIHByaXZhdGU6 CisrICBlbnVtIFN0cmVhbVN0YXRlIHsKKysgICAga0Nsb3NlZCwgICAgICAgICAgICAvLyBOb3Qg b3BlbmVkIHlldAorKyAgICBrU3RvcHBlZCwgICAgICAgICAgIC8vIERldmljZSBvcGVuZWQsIGJ1 dCBub3Qgc3RhcnRlZCB5ZXQKKysgICAga1J1bm5pbmcsICAgICAgICAgICAvLyBTdGFydGVkLCBk ZXZpY2UgcGxheWluZworKyAgICBrU3RvcFdhaXQgICAgICAgICAgIC8vIFN0b3BwaW5nLCB3YWl0 aW5nIGZvciB0aGUgcmVhbC10aW1lIHRocmVhZCB0byBleGl0CisrICB9OworKworKyAgLy8gQy1z dHlsZSBjYWxsLWJhY2tzCisrICBzdGF0aWMgdm9pZCBPbk1vdmVDYWxsYmFjayh2b2lkICphcmcs IGludCBkZWx0YSk7CisrICBzdGF0aWMgdm9pZCBPblZvbENhbGxiYWNrKHZvaWQgKmFyZywgdW5z aWduZWQgaW50IHZvbCk7CisrICBzdGF0aWMgdm9pZCogVGhyZWFkRW50cnkodm9pZCAqYXJnKTsK KysKKysgIC8vIENvbnRpbnVvdXNseSBtb3ZlcyBkYXRhIGZyb20gdGhlIHByb2R1Y2VyIHRvIHRo ZSBkZXZpY2UKKysgIHZvaWQgVGhyZWFkTG9vcCh2b2lkKTsKKysKKysgIC8vIE91ciBjcmVhdG9y LCB0aGUgYXVkaW8gbWFuYWdlciBuZWVkcyB0byBiZSBub3RpZmllZCB3aGVuIHdlIGNsb3NlLgor KyAgQXVkaW9NYW5hZ2VyQmFzZSogbWFuYWdlcjsKKysgIC8vIFBhcmFtZXRlcnMgb2YgdGhlIHNv dXJjZQorKyAgQXVkaW9QYXJhbWV0ZXJzIHBhcmFtczsKKysgIC8vIFNvdXJjZSBzdG9yZXMgZGF0 YSBoZXJlCisrICBzdGQ6OnVuaXF1ZV9wdHI8QXVkaW9CdXM+IGF1ZGlvX2J1czsKKysgIC8vIENh bGwtYmFjayB0aGF0IHByb2R1Y2VzIGRhdGEgdG8gcGxheQorKyAgQXVkaW9Tb3VyY2VDYWxsYmFj ayogc291cmNlOworKyAgLy8gSGFuZGxlIG9mIHRoZSBhdWRpbyBkZXZpY2UKKysgIHN0cnVjdCBz aW9faGRsKiBoZGw7CisrICAvLyBDdXJyZW50IHN0YXRlIG9mIHRoZSBzdHJlYW0KKysgIGVudW0g U3RyZWFtU3RhdGUgc3RhdGU7CisrICAvLyBIaWdoIHByaW9yaXR5IHRocmVhZCBydW5uaW5nIFRo cmVhZExvb3AoKQorKyAgcHRocmVhZF90IHRocmVhZDsKKysgIC8vIFByb3RlY3RzIHZvbCwgdm9s cGVuZGluZyBhbmQgaHdfZGVsYXkKKysgIHB0aHJlYWRfbXV0ZXhfdCBtdXRleDsKKysgIC8vIEN1 cnJlbnQgdm9sdW1lIGluIHRoZSAwLi5TSU9fTUFYVk9MIHJhbmdlCisrICBpbnQgdm9sOworKyAg Ly8gU2V0IHRvIDEgaWYgdm9sdW1lcyBtdXN0IGJlIHJlZnJlc2hlZCBpbiB0aGUgcmVhbHRpbWUg dGhyZWFkCisrICBpbnQgdm9scGVuZGluZzsKKysgIC8vIE51bWJlciBvZiBmcmFtZXMgYnVmZmVy ZWQgaW4gdGhlIGhhcmR3YXJlCisrICBpbnQgaHdfZGVsYXk7CisrICAvLyBUZW1wb3JhcnkgYnVm ZmVyIHdoZXJlIGRhdGEgaXMgc3RvcmVkIHNuZGlvLWNvbXBhdGlibGUgZm9ybWF0CisrICBjaGFy KiBidWZmZXI7CisrCisrICBESVNBTExPV19DT1BZX0FORF9BU1NJR04oU25kaW9BdWRpb091dHB1 dFN0cmVhbSk7CisrfTsKKysKKyt9ICAvLyBuYW1lc3BhY2UgbWVkaWEKKysKKysjZW5kaWYgIC8v IE1FRElBX0FVRElPX1NORElPX1NORElPX09VVFBVVF9IXworLS0tIGEvc3JjLzNyZHBhcnR5L2No cm9taXVtL21lZGlhL21lZGlhX29wdGlvbnMuZ25pCisrKysgYi9zcmMvM3JkcGFydHkvY2hyb21p dW0vbWVkaWEvbWVkaWFfb3B0aW9ucy5nbmkKK0BAIC0xODksNiArMTg5LDkgQEAgZGVjbGFyZV9h cmdzKCkgeworICAgIyBFbmFibGVzIHJ1bnRpbWUgc2VsZWN0aW9uIG9mIEFMU0EgbGlicmFyeSBm b3IgYXVkaW8uCisgICB1c2VfYWxzYSA9IGZhbHNlCisgCisrICAjIEVuYWJsZSBydW50aW1lIHNl bGVjdGlvbiBvZiBzbmRpbyg3KQorKyAgdXNlX3NuZGlvID0gZmFsc2UKKysKKyAgICMgQWxzYSBz aG91bGQgYmUgdXNlZCBvbiBhbGwgbm9uLUFuZHJvaWQsIG5vbi1NYWMgUE9TSVggc3lzdGVtcyAt IHdpdGggdGhlCisgICAjIGV4Y2VwdGlvbiBvZiBDYXN0T1MgZGVza3RvcCBidWlsZHMuCisgICAj CmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTU1LXN5c3R5cGVzLnBhdGNo IGIvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDE0NC1zeXN0eXBlcy5wYXRjaApzaW1pbGFyaXR5 IGluZGV4IDkzJQpyZW5hbWUgZnJvbSBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTU1LXN5c3R5 cGVzLnBhdGNoCnJlbmFtZSB0byBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTQ0LXN5c3R5cGVz LnBhdGNoCmluZGV4IGY0ZTcxZTkzOWNkMWNlLi40MzFmN2FkZDc4NGRhMiAxMDA2NDQKLS0tIGEv c3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDE1NS1zeXN0eXBlcy5wYXRjaAorKysgYi9zcmNwa2dz L3F0Ni1wZGYvcGF0Y2hlcy8wMTQ0LXN5c3R5cGVzLnBhdGNoCkBAIC0xLDYgKzEsNiBAQAogLS0t IGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL2Jhc2UvdGhpcmRfcGFydHkvc3ltYm9saXplL3N5bWJv bGl6ZS5oCiArKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vYmFzZS90aGlyZF9wYXJ0eS9zeW1i b2xpemUvc3ltYm9saXplLmgKLUBAIC01OCw2ICs1OCw4IEBACitAQCAtNjAsNiArNjAsOCBAQAog ICNpbmNsdWRlICJjb25maWcuaCIKICAjaW5jbHVkZSAiZ2xvZy9sb2dnaW5nLmgiCiAgCmRpZmYg LS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTUwLWNocm9taXVtLXVuYnVuZGxlLWZm bXBlZy1hdl9zdHJlYW1fZ2V0X2ZpcnN0X2R0cy5wYXRjaCBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRj aGVzLzAxNDUtdW5idW5kbGUtZmZtcGVnLWF2X3N0cmVhbV9nZXRfZmlyc3RfZHRzLnBhdGNoCnNp bWlsYXJpdHkgaW5kZXggNTYlCnJlbmFtZSBmcm9tIHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAx NTAtY2hyb21pdW0tdW5idW5kbGUtZmZtcGVnLWF2X3N0cmVhbV9nZXRfZmlyc3RfZHRzLnBhdGNo CnJlbmFtZSB0byBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTQ1LXVuYnVuZGxlLWZmbXBlZy1h dl9zdHJlYW1fZ2V0X2ZpcnN0X2R0cy5wYXRjaAppbmRleCBlN2Y2MDQ4ZmJjMWM3Yi4uN2Q0MjYw OThlZDAyMjggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxNTAtY2hyb21p dW0tdW5idW5kbGUtZmZtcGVnLWF2X3N0cmVhbV9nZXRfZmlyc3RfZHRzLnBhdGNoCisrKyBiL3Ny Y3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxNDUtdW5idW5kbGUtZmZtcGVnLWF2X3N0cmVhbV9nZXRf Zmlyc3RfZHRzLnBhdGNoCkBAIC0xLDUgKzEsNSBAQAotLS0tIHF0Ni13ZWJlbmdpbmUtNi40LjIu b3JpZy9zcmMvM3JkcGFydHkvY2hyb21pdW0vYnVpbGQvbGludXgvdW5idW5kbGUvZmZtcGVnLmdu Ci0rKysgcXQ2LXdlYmVuZ2luZS02LjQuMi9zcmMvM3JkcGFydHkvY2hyb21pdW0vYnVpbGQvbGlu dXgvdW5idW5kbGUvZmZtcGVnLmduCistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vYnVpbGQv bGludXgvdW5idW5kbGUvZmZtcGVnLmduCisrKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vYnVp bGQvbGludXgvdW5idW5kbGUvZmZtcGVnLmduCiBAQCAtMTIsNiArMTIsNyBAQCBwa2dfY29uZmln KCJzeXN0ZW1fZmZtcGVnIikgewogICAgICAibGliYXZmb3JtYXQiLAogICAgICAibGliYXZ1dGls IiwKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxNTEtY2hyb21pdW0tdW5i dW5kbGVkLWNyb3NzLXRvb2xjaGFpbi5wYXRjaCBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAx NDYtdW5idW5kbGVkLWNyb3NzLXRvb2xjaGFpbi5wYXRjaApzaW1pbGFyaXR5IGluZGV4IDU2JQpy ZW5hbWUgZnJvbSBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTUxLWNocm9taXVtLXVuYnVuZGxl ZC1jcm9zcy10b29sY2hhaW4ucGF0Y2gKcmVuYW1lIHRvIHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVz LzAxNDYtdW5idW5kbGVkLWNyb3NzLXRvb2xjaGFpbi5wYXRjaAppbmRleCA3NDZkMmRmYjlhN2Vk Mi4uNDM4MWQwNzc5ZWRlNzQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAx NTEtY2hyb21pdW0tdW5idW5kbGVkLWNyb3NzLXRvb2xjaGFpbi5wYXRjaAorKysgYi9zcmNwa2dz L3F0Ni1wZGYvcGF0Y2hlcy8wMTQ2LXVuYnVuZGxlZC1jcm9zcy10b29sY2hhaW4ucGF0Y2gKQEAg LTEsNSArMSw1IEBACi0tLS0gcXQ2LXdlYmVuZ2luZS02LjQuMi5vcmlnL3NyYy8zcmRwYXJ0eS9j aHJvbWl1bS9idWlsZC90b29sY2hhaW4vbGludXgvdW5idW5kbGUvQlVJTEQuZ24KLSsrKyBxdDYt d2ViZW5naW5lLTYuNC4yL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9idWlsZC90b29sY2hhaW4vbGlu dXgvdW5idW5kbGUvQlVJTEQuZ24KKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9idWlsZC90 b29sY2hhaW4vbGludXgvdW5idW5kbGUvQlVJTEQuZ24KKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJv bWl1bS9idWlsZC90b29sY2hhaW4vbGludXgvdW5idW5kbGUvQlVJTEQuZ24KIEBAIC0zNSw4ICsz NSw4IEBAIGdjY190b29sY2hhaW4oImhvc3QiKSB7CiAgICBleHRyYV9sZGZsYWdzID0gZ2V0ZW52 KCJCVUlMRF9MREZMQUdTIikKICAKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVz LzAxNDgtd2VicnRjLXNpemVfdC5wYXRjaCBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxNDgt d2VicnRjLXNpemVfdC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw MDAwMC4uYzlmMjZiMTVlNmE4MjEKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3F0Ni1wZGYv cGF0Y2hlcy8wMTQ4LXdlYnJ0Yy1zaXplX3QucGF0Y2gKQEAgLTAsMCArMSwxMCBAQAorLS0tIGEv c3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L3dlYnJ0Yy9tb2R1bGVzL2F1ZGlvX3By b2Nlc3NpbmcvYWVjMy9jbG9ja2RyaWZ0X2RldGVjdG9yLmgKKysrKyBiL3NyYy8zcmRwYXJ0eS9j aHJvbWl1bS90aGlyZF9wYXJ0eS93ZWJydGMvbW9kdWxlcy9hdWRpb19wcm9jZXNzaW5nL2FlYzMv Y2xvY2tkcmlmdF9kZXRlY3Rvci5oCitAQCAtMTQsNiArMTQsNyBAQAorICNpbmNsdWRlIDxzdGRk ZWYuaD4KKyAKKyAjaW5jbHVkZSA8YXJyYXk+CisrI2luY2x1ZGUgPGNzdGRkZWY+CisgCisgbmFt ZXNwYWNlIHdlYnJ0YyB7CisgCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8w MTUyLWNocm9taXVtLXdlYnJ0Yy1zaXplX3QucGF0Y2ggYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hl cy8wMTUyLWNocm9taXVtLXdlYnJ0Yy1zaXplX3QucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDhmNjAyMDRmZjU4NDVkLi4wMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3F0 Ni1wZGYvcGF0Y2hlcy8wMTUyLWNocm9taXVtLXdlYnJ0Yy1zaXplX3QucGF0Y2gKKysrIC9kZXYv bnVsbApAQCAtMSwxMCArMCwwIEBACi0tLS0gcXQ2LXdlYmVuZ2luZS02LjQuMi5vcmlnL3NyYy8z cmRwYXJ0eS9jaHJvbWl1bS90aGlyZF9wYXJ0eS93ZWJydGMvbW9kdWxlcy9hdWRpb19wcm9jZXNz aW5nL2FlYzMvY2xvY2tkcmlmdF9kZXRlY3Rvci5oCi0rKysgcXQ2LXdlYmVuZ2luZS02LjQuMi9z cmMvM3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFydHkvd2VicnRjL21vZHVsZXMvYXVkaW9fcHJv Y2Vzc2luZy9hZWMzL2Nsb2NrZHJpZnRfZGV0ZWN0b3IuaAotQEAgLTE0LDYgKzE0LDcgQEAKLSAj aW5jbHVkZSA8c3RkZGVmLmg+Ci0gCi0gI2luY2x1ZGUgPGFycmF5PgotKyNpbmNsdWRlIDxjc3Rk ZGVmPgotIAotIG5hbWVzcGFjZSB3ZWJydGMgewotIApkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdDYt cGRmL3BhdGNoZXMvMDE1My1jaHJvbWl1bS13ZWJydGMtc2l6ZV90LnBhdGNoIGIvc3JjcGtncy9x dDYtcGRmL3BhdGNoZXMvMDE1My1jaHJvbWl1bS13ZWJydGMtc2l6ZV90LnBhdGNoCmRlbGV0ZWQg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzYjViN2EzZDUzYjk5NS4uMDAwMDAwMDAwMDAwMDAKLS0t IGEvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDE1My1jaHJvbWl1bS13ZWJydGMtc2l6ZV90LnBh dGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTYgKzAsMCBAQAotLS0tIHF0Ni13ZWJlbmdpbmUtNi40 LjIub3JpZy9zcmMvM3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFydHkvYW5nbGUvaW5jbHVkZS9w bGF0Zm9ybS9QbGF0Zm9ybU1ldGhvZHMuaAotKysrIHF0Ni13ZWJlbmdpbmUtNi40LjIvc3JjLzNy ZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L2FuZ2xlL2luY2x1ZGUvcGxhdGZvcm0vUGxhdGZv cm1NZXRob2RzLmgKLUBAIC0yMjIsMTEgKzIyMiwxMSBAQCBpbmxpbmUgdm9pZCBEZWZhdWx0SGlz dG9ncmFtQm9vbGVhbihQbGF0Ci0gdXNpbmcgUHJvZ3JhbUtleVR5cGUgICA9IHN0ZDo6YXJyYXk8 dWludDhfdCwgMjA+OwotIHVzaW5nIENhY2hlUHJvZ3JhbUZ1bmMgPSB2b2lkICgqKShQbGF0Zm9y bU1ldGhvZHMgKnBsYXRmb3JtLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj b25zdCBQcm9ncmFtS2V5VHlwZSAma2V5LAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBzaXplX3QgcHJvZ3JhbVNpemUsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHN0ZDo6c2l6ZV90IHByb2dyYW1TaXplLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBjb25zdCB1aW50OF90ICpwcm9ncmFtQnl0ZXMpOwotIGlubGluZSB2b2lkIERlZmF1 bHRDYWNoZVByb2dyYW0oUGxhdGZvcm1NZXRob2RzICpwbGF0Zm9ybSwKLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGNvbnN0IFByb2dyYW1LZXlUeXBlICZrZXksCi0tICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBzaXplX3QgcHJvZ3JhbVNpemUsCi0rICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBzdGQ6OnNpemVfdCBwcm9ncmFtU2l6ZSwKLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQ4X3QgKnByb2dyYW1CeXRlcykKLSB7fQot IApkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDE1NC1jaHJvbWl1bS11aXRf dC5wYXRjaCBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAxNTQtY2hyb21pdW0tdWl0X3QucGF0 Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQxM2EzMWZlZTQwMmIwLi4wMDAwMDAw MDAwMDAwMAotLS0gYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMTU0LWNocm9taXVtLXVpdF90 LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTEgKzAsMCBAQAotLS0tIHF0Ni13ZWJlbmdpbmUt Ni40LjIub3JpZy9zcmMvM3JkcGFydHkvY2hyb21pdW0vc2FuZGJveC9saW51eC9zZXJ2aWNlcy9j cmVkZW50aWFscy5oCi0rKysgcXQ2LXdlYmVuZ2luZS02LjQuMi9zcmMvM3JkcGFydHkvY2hyb21p dW0vc2FuZGJveC9saW51eC9zZXJ2aWNlcy9jcmVkZW50aWFscy5oCi1AQCAtMTQsNiArMTQsOCBA QAotICNpbmNsdWRlIDxzdHJpbmc+Ci0gI2luY2x1ZGUgPHZlY3Rvcj4KLSAKLSsjaW5jbHVkZSA8 c3lzL3R5cGVzLmg+Ci0rCi0gI2luY2x1ZGUgInNhbmRib3gvbGludXgvc3lzdGVtX2hlYWRlcnMv Y2FwYWJpbGl0eS5oIgotICNpbmNsdWRlICJzYW5kYm94L3NhbmRib3hfZXhwb3J0LmgiCi0gCmRp ZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMzAwLWNocm9taXVtLW11c2wtaGFj a3MucGF0Y2ggYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMzAwLWNocm9taXVtLW11c2wtaGFj a3MucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGUwYjkxYTA5YTg0ZjRiLi4w MDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMzAwLWNocm9taXVt LW11c2wtaGFja3MucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwzOCArMCwwIEBACi0tLS0gcXQ2 LXdlYmVuZ2luZS02LjQuMi5vcmlnL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9iYXNlL2RlYnVnL3N0 YWNrX3RyYWNlLmNjCi0rKysgcXQ2LXdlYmVuZ2luZS02LjQuMi9zcmMvM3JkcGFydHkvY2hyb21p dW0vYmFzZS9kZWJ1Zy9zdGFja190cmFjZS5jYwotQEAgLTIzNCw3ICsyMzQsNyBAQCBib29sIFN0 YWNrVHJhY2U6OldpbGxTeW1ib2xpemVUb1N0cmVhbUZvCi0gICAvLyBTeW1ib2xzIGFyZSBub3Qg ZXhwZWN0ZWQgdG8gYmUgcmVsaWFibGUgd2hlbiBnbiBhcmdzIHNwZWNpZmllcwotICAgLy8gc3lt Ym9sX2xldmVsPTAuCi0gICByZXR1cm4gZmFsc2U7Ci0tI2VsaWYgZGVmaW5lZChfX1VDTElCQ19f KSB8fCBkZWZpbmVkKF9BSVgpCi0rI2VsaWYgZGVmaW5lZChfX0dMSUJDX18pIHx8IGRlZmluZWQo X0FJWCkKLSAgIC8vIFN0YWNrVHJhY2U6Ok91dHB1dFRvU3RyZWFtKCkgaXMgbm90IGltcGxlbWVu dGVkIHVuZGVyIHVjbGliYywgbm9yIEFJWC4KLSAgIC8vIFNlZSBodHRwczovL2NyYnVnLmNvbS83 MDY3MjgKLSAgIHJldHVybiBmYWxzZTsKLUBAIC0yNzMsNyArMjczLDkgQEAgdm9pZCBTdGFja1Ry YWNlOjpQcmludCgpIGNvbnN0IHsKLSB9Ci0gCi0gdm9pZCBTdGFja1RyYWNlOjpPdXRwdXRUb1N0 cmVhbShzdGQ6Om9zdHJlYW0qIG9zKSBjb25zdCB7Ci0rI2lmIGRlZmluZWQoX19HTElCQ19fKQot ICAgT3V0cHV0VG9TdHJlYW1XaXRoUHJlZml4KG9zLCBudWxscHRyKTsKLSsjZW5kaWYKLSB9Ci0g Ci0gc3RkOjpzdHJpbmcgU3RhY2tUcmFjZTo6VG9TdHJpbmcoKSBjb25zdCB7Ci1AQCAtMjgxLDE0 ICsyODMsMTQgQEAgc3RkOjpzdHJpbmcgU3RhY2tUcmFjZTo6VG9TdHJpbmcoKSBjb25zdAotIH0K LSBzdGQ6OnN0cmluZyBTdGFja1RyYWNlOjpUb1N0cmluZ1dpdGhQcmVmaXgoY29uc3QgY2hhciog cHJlZml4X3N0cmluZykgY29uc3QgewotICAgc3RkOjpzdHJpbmdzdHJlYW0gc3RyZWFtOwotLSNp ZiAhZGVmaW5lZChfX1VDTElCQ19fKSAmJiAhZGVmaW5lZChfQUlYKQotKyNpZiBkZWZpbmVkKF9f R0xJQkNfXykgJiYgIWRlZmluZWQoX0FJWCkKLSAgIE91dHB1dFRvU3RyZWFtV2l0aFByZWZpeCgm c3RyZWFtLCBwcmVmaXhfc3RyaW5nKTsKLSAjZW5kaWYKLSAgIHJldHVybiBzdHJlYW0uc3RyKCk7 Ci0gfQotIAotIHN0ZDo6b3N0cmVhbSYgb3BlcmF0b3I8PChzdGQ6Om9zdHJlYW0mIG9zLCBjb25z dCBTdGFja1RyYWNlJiBzKSB7Ci0tI2lmICFkZWZpbmVkKF9fVUNMSUJDX18pICYmICFkZWZpbmVk KF9BSVgpCi0rI2lmIGRlZmluZWQoX19HTElCQ19fKSAmJiAhZGVmaW5lZChfQUlYKQotICAgcy5P dXRwdXRUb1N0cmVhbSgmb3MpOwotICNlbHNlCi0gICBvcyA8PCAiU3RhY2tUcmFjZTo6T3V0cHV0 VG9TdHJlYW0gbm90IGltcGxlbWVudGVkLiI7CmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYv cGF0Y2hlcy8wMzAxLWNocm9taXVtLW11c2wtc2FuZGJveC5wYXRjaCBiL3NyY3BrZ3MvcXQ2LXBk Zi9wYXRjaGVzLzAzMDEtY2hyb21pdW0tbXVzbC1zYW5kYm94LnBhdGNoCmRlbGV0ZWQgZmlsZSBt b2RlIDEwMDY0NAppbmRleCA4MzMyZTZhNjcxMTdlMS4uMDAwMDAwMDAwMDAwMDAKLS0tIGEvc3Jj cGtncy9xdDYtcGRmL3BhdGNoZXMvMDMwMS1jaHJvbWl1bS1tdXNsLXNhbmRib3gucGF0Y2gKKysr IC9kZXYvbnVsbApAQCAtMSw3MCArMCwwIEBACi0tLS0gcXQ2LXdlYmVuZ2luZS02LjQuMi5vcmln L3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9zYW5kYm94L2xpbnV4L3NlY2NvbXAtYnBmLWhlbHBlcnMv c3lzY2FsbF9wYXJhbWV0ZXJzX3Jlc3RyaWN0aW9ucy5jYwotKysrIHF0Ni13ZWJlbmdpbmUtNi40 LjIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3NhbmRib3gvbGludXgvc2VjY29tcC1icGYtaGVscGVy cy9zeXNjYWxsX3BhcmFtZXRlcnNfcmVzdHJpY3Rpb25zLmNjCi1AQCAtMTM0LDYgKzEzNCw3IEBA IG5hbWVzcGFjZSBzYW5kYm94IHsKLSBSZXN1bHRFeHByIFJlc3RyaWN0Q2xvbmVUb1RocmVhZHNB bmRFUEVSTUZvcmsoKSB7Ci0gICBjb25zdCBBcmc8dW5zaWduZWQgbG9uZz4gZmxhZ3MoMCk7Ci0g Ci0rI2lmZGVmIF9fR0xJQkNfXwotICAgLy8gVE9ETyhtZGVtcHNreSk6IEV4dGVuZCBEU0wgdG8g c3VwcG9ydCAoZmxhZ3MgJiB+bWFzazEpID09IG1hc2syLgotICAgY29uc3QgdWludDY0X3Qga0Fu ZHJvaWRDbG9uZU1hc2sgPSBDTE9ORV9WTSB8IENMT05FX0ZTIHwgQ0xPTkVfRklMRVMgfAotICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDTE9ORV9TSUdIQU5EIHwgQ0xPTkVf VEhSRUFEIHwKLUBAIC0xNjAsNiArMTYxLDE2IEBAIFJlc3VsdEV4cHIgUmVzdHJpY3RDbG9uZVRv VGhyZWFkc0FuZEVQRVIKLSAgIHJldHVybiBJZihJc0FuZHJvaWQoKSA/IGFuZHJvaWRfdGVzdCA6 IGdsaWJjX3Rlc3QsIEFsbG93KCkpCi0gICAgICAgLkVsc2VJZihpc19mb3JrX29yX2Nsb25lX3Zm b3JrLCBFcnJvcihFUEVSTSkpCi0gICAgICAgLkVsc2UoQ3Jhc2hTSUdTWVNDbG9uZSgpKTsKLSsj ZWxzZQotKyAgY29uc3QgaW50IHJlcXVpcmVkID0gQ0xPTkVfVk0gfCBDTE9ORV9GUyB8IENMT05F X0ZJTEVTIHwgQ0xPTkVfU0lHSEFORCB8Ci0rICAgICAgICAgICAgICAgICAgICAgICBDTE9ORV9U SFJFQUQgfCBDTE9ORV9TWVNWU0VNOwotKyAgY29uc3QgaW50IHNhZmUgPSBDTE9ORV9TRVRUTFMg fCBDTE9ORV9QQVJFTlRfU0VUVElEIHwgQ0xPTkVfQ0hJTERfQ0xFQVJUSUQgfAotKyAgICAgICAg ICAgICAgICAgICBDTE9ORV9ERVRBQ0hFRDsKLSsgIGNvbnN0IEJvb2xFeHByIHRocmVhZF9jbG9u ZV9vayA9IChmbGFncyZ+c2FmZSk9PXJlcXVpcmVkOwotKyAgcmV0dXJuIElmKHRocmVhZF9jbG9u ZV9vaywgQWxsb3coKSkKLSsgICAgICAuRWxzZUlmKChmbGFncyAmIChDTE9ORV9WTSB8IENMT05F X1RIUkVBRCkpID09IDAsIEVycm9yKEVQRVJNKSkKLSsgICAgICAuRWxzZShDcmFzaFNJR1NZU0Ns b25lKCkpOwotKyNlbmRpZgotIH0KLSAKLSAjaWZuZGVmIFBSX1BBQ19SRVNFVF9LRVlTCi0tLS0g cXQ2LXdlYmVuZ2luZS02LjQuMi5vcmlnL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9zYW5kYm94L2xp bnV4L3NlY2NvbXAtYnBmLWhlbHBlcnMvc3lzY2FsbF9zZXRzLmNjCi0rKysgcXQ2LXdlYmVuZ2lu ZS02LjQuMi9zcmMvM3JkcGFydHkvY2hyb21pdW0vc2FuZGJveC9saW51eC9zZWNjb21wLWJwZi1o ZWxwZXJzL3N5c2NhbGxfc2V0cy5jYwotQEAgLTQyNCw2ICs0MjQsOSBAQCBib29sIFN5c2NhbGxT ZXRzOjpJc0FsbG93ZWRQcm9jZXNzU3RhcnRPCi0gI2lmIGRlZmluZWQoX19pMzg2X18pCi0gICAg IGNhc2UgX19OUl93YWl0cGlkOgotICNlbmRpZgotKyNpZiAhZGVmaW5lZChfX0dMSUJDX18pCi0r ICAgIGNhc2UgX19OUl9zZXRfdGlkX2FkZHJlc3M6Ci0rI2VuZGlmCi0gICAgICAgcmV0dXJuIHRy dWU7Ci0gICAgIGNhc2UgX19OUl9jbG9uZTogIC8vIFNob3VsZCBiZSBwYXJhbWV0ZXItcmVzdHJp Y3RlZC4KLSAgICAgY2FzZSBfX05SX3NldG5zOiAgLy8gUHJpdmlsZWdlZC4KLUBAIC00MzYsNyAr NDM5LDkgQEAgYm9vbCBTeXNjYWxsU2V0czo6SXNBbGxvd2VkUHJvY2Vzc1N0YXJ0TwotICNpZiBk ZWZpbmVkKF9faTM4Nl9fKSB8fCBkZWZpbmVkKF9feDg2XzY0X18pIHx8IGRlZmluZWQoX19taXBz X18pCi0gICAgIGNhc2UgX19OUl9zZXRfdGhyZWFkX2FyZWE6Ci0gI2VuZGlmCi0rI2lmIGRlZmlu ZWQoX19HTElCQ19fKQotICAgICBjYXNlIF9fTlJfc2V0X3RpZF9hZGRyZXNzOgotKyNlbmRpZgot ICAgICBjYXNlIF9fTlJfdW5zaGFyZToKLSAjaWYgIWRlZmluZWQoX19taXBzX18pICYmICFkZWZp bmVkKF9fYWFyY2g2NF9fKQotICAgICBjYXNlIF9fTlJfdmZvcms6Ci1AQCAtNTUwLDYgKzU1NSwx MCBAQCBib29sIFN5c2NhbGxTZXRzOjpJc0FsbG93ZWRBZGRyZXNzU3BhY2VBCi0gICAgIGNhc2Ug X19OUl9tbG9jazoKLSAgICAgY2FzZSBfX05SX211bmxvY2s6Ci0gICAgIGNhc2UgX19OUl9tdW5t YXA6Ci0rI2lmbmRlZiBfX0dMSUJDX18KLSsgICAgY2FzZSBfX05SX21yZW1hcDoKLSsgICAgY2Fz ZSBfX05SX21lbWJhcnJpZXI6Ci0rI2VuZGlmCi0gICAgICAgcmV0dXJuIHRydWU7Ci0gICAgIGNh c2UgX19OUl9tYWR2aXNlOgotICAgICBjYXNlIF9fTlJfbWluY29yZToKLUBAIC01NjcsNyArNTc1 LDkgQEAgYm9vbCBTeXNjYWxsU2V0czo6SXNBbGxvd2VkQWRkcmVzc1NwYWNlQQotICAgICBjYXNl IF9fTlJfbW9kaWZ5X2xkdDoKLSAjZW5kaWYKLSAgICAgY2FzZSBfX05SX21wcm90ZWN0OgotKyNp ZmRlZiBfX0dMSUJDX18KLSAgICAgY2FzZSBfX05SX21yZW1hcDoKLSsjZW5kaWYKLSAgICAgY2Fz ZSBfX05SX21zeW5jOgotICAgICBjYXNlIF9fTlJfbXVubG9ja2FsbDoKLSAgICAgY2FzZSBfX05S X3JlYWRhaGVhZDoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzA3MDAtYXJt djdsLW5lb24ucGF0Y2ggYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wNzAwLWFybXY3bC1uZW9u LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1Y2ExOTUzZDJjYjM1ZC4uMDAw MDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDcwMC1hcm12N2wtbmVv bi5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDEwICswLDAgQEAKLS0tLSBxdDYtd2ViZW5naW5l LTYuNC4yLm9yaWcvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3NraWEvQlVJTEQuZ24KLSsrKyBxdDYt d2ViZW5naW5lLTYuNC4yL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9za2lhL0JVSUxELmduCi1AQCAt Nzg2LDcgKzc4Niw2IEBAIHNraWFfc291cmNlX3NldCgic2tpYV9vcHRzIikgewotICAgICAgICAg IyBSb290IGJ1aWxkIGNvbmZpZyBzZXRzIC1tZnB1PSRhcm1fZnB1LCB3aGljaCB3ZSBleHBlY3Qg dG8gYmUgbmVvbgotICAgICAgICAgIyB3aGVuIHJ1bm5pbmcgdGhpcy4KLSAgICAgICAgIGlmICgh YXJtX3VzZV9uZW9uKSB7Ci0tICAgICAgICAgIGNvbmZpZ3MgLT0gWyAiLy9idWlsZC9jb25maWcv Y29tcGlsZXI6Y29tcGlsZXJfYXJtX2ZwdSIgXQotICAgICAgICAgICBjZmxhZ3MgKz0gWyAiLW1m cHU9bmVvbiIgXQotICAgICAgICAgfQotICAgICAgIH0KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2 LXBkZi9wYXRjaGVzLzA3NTAtY2hyb21pdW0tbXVzbC1jcm9zcy1uby1hc21fcHRyYWNlX2gucGF0 Y2ggYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wNzUwLWNocm9taXVtLW11c2wtY3Jvc3Mtbm8t YXNtX3B0cmFjZV9oLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjYTdiMDE1 MDk2MmM3YS4uMDAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDc1 MC1jaHJvbWl1bS1tdXNsLWNyb3NzLW5vLWFzbV9wdHJhY2VfaC5wYXRjaAorKysgL2Rldi9udWxs CkBAIC0xLDMwICswLDAgQEAKLS0tLSBxdDYtd2ViZW5naW5lLTYuNC4yLm9yaWcvc3JjLzNyZHBh cnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L2JyZWFrcGFkL2JyZWFrcGFkL3NyYy9jbGllbnQvbGlu dXgvbWluaWR1bXBfd3JpdGVyL2xpbnV4X3B0cmFjZV9kdW1wZXIuY2MKLSsrKyBxdDYtd2ViZW5n aW5lLTYuNC4yL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS90aGlyZF9wYXJ0eS9icmVha3BhZC9icmVh a3BhZC9zcmMvY2xpZW50L2xpbnV4L21pbmlkdW1wX3dyaXRlci9saW51eF9wdHJhY2VfZHVtcGVy LmNjCi1AQCAtMzgsNyArMzgsMTIgQEAKLSAKLSAjaW5jbHVkZSAiY2xpZW50L2xpbnV4L21pbmlk dW1wX3dyaXRlci9saW51eF9wdHJhY2VfZHVtcGVyLmgiCi0gCi0rI2lmIGRlZmluZWQoX19HTElC Q19fKQotICNpbmNsdWRlIDxhc20vcHRyYWNlLmg+Ci0rI2Vsc2UKLSsvKiBGb3IgYXJtKi1tdXNs IHRoaXMgZGVmaW5pdGlvbiBpcyBtaXNzaW5nICovCi0rI2RlZmluZSBBUk1fc3AgdXJlZ3NbMTNd Ci0rI2VuZGlmCi0gI2luY2x1ZGUgPGFzc2VydC5oPgotICNpbmNsdWRlIDxlcnJuby5oPgotICNp bmNsdWRlIDxmY250bC5oPgotLS0tIHF0Ni13ZWJlbmdpbmUtNi40LjIub3JpZy9zcmMvM3JkcGFy dHkvY2hyb21pdW0vdGhpcmRfcGFydHkvYnJlYWtwYWQvYnJlYWtwYWQvc3JjL2NsaWVudC9saW51 eC9taW5pZHVtcF93cml0ZXIvbGludXhfY29yZV9kdW1wZXIuY2MKLSsrKyBxdDYtd2ViZW5naW5l LTYuNC4yL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS90aGlyZF9wYXJ0eS9icmVha3BhZC9icmVha3Bh ZC9zcmMvY2xpZW50L2xpbnV4L21pbmlkdW1wX3dyaXRlci9saW51eF9jb3JlX2R1bXBlci5jYwot QEAgLTMyLDcgKzMyLDEyIEBACi0gCi0gI2luY2x1ZGUgImNsaWVudC9saW51eC9taW5pZHVtcF93 cml0ZXIvbGludXhfY29yZV9kdW1wZXIuaCIKLSAKLSsjaWYgZGVmaW5lZChfX0dMSUJDX18pCi0g I2luY2x1ZGUgPGFzbS9wdHJhY2UuaD4KLSsjZWxzZQotKy8qIEZvciBhcm0qLW11c2wgdGhpcyBk ZWZpbml0aW9uIGlzIG1pc3NpbmcgKi8KLSsjZGVmaW5lIEFSTV9zcCB1cmVnc1sxM10KLSsjZW5k aWYKLSAjaW5jbHVkZSA8YXNzZXJ0Lmg+Ci0gI2luY2x1ZGUgPGVsZi5oPgotICNpbmNsdWRlIDxz dGRpby5oPgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDc1MS1jaHJvbWl1 bS1tdXNsLWFybS11c2VyX3ZmcC5wYXRjaCBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzA3NTEt Y2hyb21pdW0tbXVzbC1hcm0tdXNlcl92ZnAucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IGQ3YzE4MDM2ZDUwM2EwLi4wMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3F0Ni1w ZGYvcGF0Y2hlcy8wNzUxLWNocm9taXVtLW11c2wtYXJtLXVzZXJfdmZwLnBhdGNoCisrKyAvZGV2 L251bGwKQEAgLTEsMjAgKzAsMCBAQAotLS0tIHF0Ni13ZWJlbmdpbmUtNi40LjIub3JpZy9zcmMv M3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFydHkvY3Jhc2hwYWQvY3Jhc2hwYWQvdXRpbC9saW51 eC90aHJlYWRfaW5mby5oCi0rKysgcXQ2LXdlYmVuZ2luZS02LjQuMi9zcmMvM3JkcGFydHkvY2hy b21pdW0vdGhpcmRfcGFydHkvY3Jhc2hwYWQvY3Jhc2hwYWQvdXRpbC9saW51eC90aHJlYWRfaW5m by5oCi1AQCAtMTcsNiArMTcsMTcgQEAKLSAKLSAjaW5jbHVkZSA8c3RkaW50Lmg+Ci0gI2luY2x1 ZGUgPHN5cy91c2VyLmg+Ci0rI2lmICFkZWZpbmVkKF9fR0xJQkNfXykKLStzdHJ1Y3QgdXNlcl92 ZnAgewotKwl1bnNpZ25lZCBsb25nIGxvbmcgZnByZWdzWzMyXTsKLSsJdW5zaWduZWQgbG9uZyBm cHNjcjsKLSt9OwotK3N0cnVjdCB1c2VyX3ZmcF9leGMgewotKwl1bnNpZ25lZCBsb25nIGZwZXhj OwotKwl1bnNpZ25lZCBsb25nIGZwaW5zdDsKLSsJdW5zaWduZWQgbG9uZyBmcGluc3QyOwotK307 Ci0rI2VuZGlmIC8qICFkZWZpbmVkKF9fR0xJQkNfXykgKi8KLSAKLSAjaW5jbHVkZSA8dHlwZV90 cmFpdHM+Ci0gCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wNzUyLWNocm9t aXVtLW11c2wtYXJtLWVsZl9hdXh2X3QucGF0Y2ggYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8w NzUyLWNocm9taXVtLW11c2wtYXJtLWVsZl9hdXh2X3QucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUg MTAwNjQ0CmluZGV4IDUyZjVmNDdiZTgzMWQ3Li4wMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dz L3F0Ni1wZGYvcGF0Y2hlcy8wNzUyLWNocm9taXVtLW11c2wtYXJtLWVsZl9hdXh2X3QucGF0Y2gK KysrIC9kZXYvbnVsbApAQCAtMSwxOCArMCwwIEBACi0tLS0gcXQ2LXdlYmVuZ2luZS02LjQuMi5v cmlnL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS92OC9zcmMvYmFzZS9jcHUuY2MKLSsrKyBxdDYtd2Vi ZW5naW5lLTYuNC4yL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS92OC9zcmMvYmFzZS9jcHUuY2MKLUBA IC0xNjUsNiArMTY1LDE1IEBAIHN0YXRpYyBWOF9JTkxJTkUgdm9pZCBfX2NwdWlkKGludCBjcHVf aW4KLSAKLSAjaWYgVjhfSE9TVF9BUkNIX0FSTSB8fCBWOF9IT1NUX0FSQ0hfQVJNNjQKLSAKLSsj aWZuZGVmIF9fR0xJQkNfXwotKyNpbmNsdWRlIDxlbGYuaD4KLSsjaWZkZWYgX19MUDY0X18KLSt0 eXBlZGVmIEVsZjY0X2F1eHZfdCBlbGZfYXV4dl90OwotKyNlbHNlCi0rdHlwZWRlZiBFbGYzMl9h dXh2X3QgZWxmX2F1eHZfdDsKLSsjZW5kaWYKLSsjZW5kaWYKLSsKLSBzdGF0aWMgdWludDMyX3Qg UmVhZEVMRkhXQ2FwcygpIHsKLSAgIHVpbnQzMl90IHJlc3VsdCA9IDA7Ci0gI2lmIFY4X0dMSUJD X1BSRVJFUSgyLCAxNikKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzA3NTMt Y2hyb21pdW0tbXVzbC0zMi1iaXQtZnN0YXQucGF0Y2ggYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hl cy8wNzUzLWNocm9taXVtLW11c2wtMzItYml0LWZzdGF0LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAwOTIzOWE4MTk4NDE3YS4uMDAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtn cy9xdDYtcGRmL3BhdGNoZXMvMDc1My1jaHJvbWl1bS1tdXNsLTMyLWJpdC1mc3RhdC5wYXRjaAor KysgL2Rldi9udWxsCkBAIC0xLDEzICswLDAgQEAKLS0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1 bS90aGlyZF9wYXJ0eS9sc3MvbGludXhfc3lzY2FsbF9zdXBwb3J0LmgKLSsrKyBiL3NyYy8zcmRw YXJ0eS9jaHJvbWl1bS90aGlyZF9wYXJ0eS9sc3MvbGludXhfc3lzY2FsbF9zdXBwb3J0LmgKLUBA IC0yOTMsNiArMjkzLDEwIEBAIHN0cnVjdCBrZXJuZWxfcnVzYWdlIHsKLSAgIGxvbmcgICAgICAg ICAgICAgICBydV9uaXZjc3c7Ci0gfTsKLSAKLSsjaWZkZWYgZnN0YXRhdDY0Ci0rI3VuZGVmIGZz dGF0YXQ2NAotKyNlbmRpZgotKwotICNpZiBkZWZpbmVkKF9faTM4Nl9fKSB8fCBkZWZpbmVkKF9f QVJNX0VBQklfXykgfHwgZGVmaW5lZChfX0FSTV9BUkNIXzNfXykgXAotICAgfHwgZGVmaW5lZChf X1BQQ19fKSB8fCAoZGVmaW5lZChfX3MzOTBfXykgJiYgIWRlZmluZWQoX19zMzkweF9fKSkgXAot ICAgfHwgZGVmaW5lZChfX2Uya19fKQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdDYtcGRmL3BhdGNo ZXMvMDgwMC1tdXNsLXNhbmRib3gucGF0Y2ggYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wODAw LW11c2wtc2FuZGJveC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw MDAwMC4uYTU5YzI3MzY1MzAxMmIKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3F0Ni1wZGYv cGF0Y2hlcy8wODAwLW11c2wtc2FuZGJveC5wYXRjaApAQCAtMCwwICsxLDEyMSBAQAorU291cmNl OiBodHRwczovL2dpdC5hbHBpbmVsaW51eC5vcmcvYXBvcnRzL3RyZWUvY29tbXVuaXR5L2Nocm9t aXVtL211c2wtc2FuZGJveC5wYXRjaAorbXVzbCB1c2VzIGRpZmZlcmVudCBzeXNjYWxscyBmcm9t IGdsaWJjIGZvciBzb21lIGZ1bmN0aW9ucywKK3NvIHRoZSBzYW5kYm94IGhhcyB0byBhY2NvdW50 IGZvciB0aGF0CistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vc2FuZGJveC9saW51eC9zZWNj b21wLWJwZi1oZWxwZXJzL3N5c2NhbGxfcGFyYW1ldGVyc19yZXN0cmljdGlvbnMuY2MKKysrKyBi L3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9zYW5kYm94L2xpbnV4L3NlY2NvbXAtYnBmLWhlbHBlcnMv c3lzY2FsbF9wYXJhbWV0ZXJzX3Jlc3RyaWN0aW9ucy5jYworQEAgLTEzMiw2ICsxMzIsNyBAQCBu YW1lc3BhY2Ugc2FuZGJveCB7CisgUmVzdWx0RXhwciBSZXN0cmljdENsb25lVG9UaHJlYWRzQW5k RVBFUk1Gb3JrKCkgeworICAgY29uc3QgQXJnPHVuc2lnbmVkIGxvbmc+IGZsYWdzKDApOworIAor KyNpZmRlZiBfX0dMSUJDX18KKyAgIC8vIFRPRE8obWRlbXBza3kpOiBFeHRlbmQgRFNMIHRvIHN1 cHBvcnQgKGZsYWdzICYgfm1hc2sxKSA9PSBtYXNrMi4KKyAgIGNvbnN0IHVpbnQ2NF90IGtBbmRy b2lkQ2xvbmVNYXNrID0gQ0xPTkVfVk0gfCBDTE9ORV9GUyB8IENMT05FX0ZJTEVTIHwKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ0xPTkVfU0lHSEFORCB8IENMT05FX1RI UkVBRCB8CitAQCAtMTQ2LDYgKzE0NywxMyBAQCBSZXN1bHRFeHByIFJlc3RyaWN0Q2xvbmVUb1Ro cmVhZHNBbmRFUEVSCisgICBjb25zdCBCb29sRXhwciBhbmRyb2lkX3Rlc3QgPQorICAgICAgIEFu eU9mKGZsYWdzID09IGtBbmRyb2lkQ2xvbmVNYXNrLCBmbGFncyA9PSBrT2Jzb2xldGVBbmRyb2lk Q2xvbmVNYXNrLAorICAgICAgICAgICAgIGZsYWdzID09IGtHbGliY1B0aHJlYWRGbGFncyk7Cisr I2Vsc2UKKysgIGNvbnN0IGludCByZXF1aXJlZCA9IENMT05FX1ZNIHwgQ0xPTkVfRlMgfCBDTE9O RV9GSUxFUyB8IENMT05FX1NJR0hBTkQgfAorKyAgICAgICAgICAgICAgICAgICAgICAgQ0xPTkVf VEhSRUFEIHwgQ0xPTkVfU1lTVlNFTTsKKysgIGNvbnN0IGludCBzYWZlID0gQ0xPTkVfU0VUVExT IHwgQ0xPTkVfUEFSRU5UX1NFVFRJRCB8IENMT05FX0NISUxEX0NMRUFSVElEIHwKKysgICAgICAg ICAgICAgICAgICAgQ0xPTkVfREVUQUNIRUQ7CisrICBjb25zdCBCb29sRXhwciB0aHJlYWRfY2xv bmVfb2sgPSAoZmxhZ3MmfnNhZmUpPT1yZXF1aXJlZDsKKysjZW5kaWYKKyAKKyAgIC8vIFRoZSBm b2xsb3dpbmcgdHdvIGZsYWdzIGFyZSB0aGUgdHdvIGltcG9ydGFudCBmbGFncyBpbiBhbnkgdmZv cmstZW11bGF0aW5nCisgICAvLyBjbG9uZSBjYWxsLiBFUEVSTSBhbnkgY2xvbmUgY2FsbCB0aGF0 IGNvbnRhaW5zIGJvdGggb2YgdGhlbS4KK0BAIC0xNTUsNyArMTYzLDExIEBAIFJlc3VsdEV4cHIg UmVzdHJpY3RDbG9uZVRvVGhyZWFkc0FuZEVQRVIKKyAgICAgICBBbnlPZigoZmxhZ3MgJiAoQ0xP TkVfVk0gfCBDTE9ORV9USFJFQUQpKSA9PSAwLAorICAgICAgICAgICAgIChmbGFncyAmIGtJbXBv cnRhbnRDbG9uZVZmb3JrRmxhZ3MpID09IGtJbXBvcnRhbnRDbG9uZVZmb3JrRmxhZ3MpOworIAor KyNpZmRlZiBfX0dMSUJDX18KKyAgIHJldHVybiBJZihJc0FuZHJvaWQoKSA/IGFuZHJvaWRfdGVz dCA6IGdsaWJjX3Rlc3QsIEFsbG93KCkpCisrI2Vsc2UKKysgIHJldHVybiBJZih0aHJlYWRfY2xv bmVfb2ssIEFsbG93KCkpCisrI2VuZGlmCisgICAgICAgLkVsc2VJZihpc19mb3JrX29yX2Nsb25l X3Zmb3JrLCBFcnJvcihFUEVSTSkpCisgICAgICAgLkVsc2UoQ3Jhc2hTSUdTWVNDbG9uZSgpKTsK KyB9CistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vc2FuZGJveC9saW51eC9zZWNjb21wLWJw Zi1oZWxwZXJzL3N5c2NhbGxfc2V0cy5jYworKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3Nh bmRib3gvbGludXgvc2VjY29tcC1icGYtaGVscGVycy9zeXNjYWxsX3NldHMuY2MKK0BAIC00Mzks NiArNDM5LDkgQEAgYm9vbCBTeXNjYWxsU2V0czo6SXNBbGxvd2VkUHJvY2Vzc1N0YXJ0TworICNp ZiBkZWZpbmVkKF9faTM4Nl9fKQorICAgICBjYXNlIF9fTlJfd2FpdHBpZDoKKyAjZW5kaWYKKysj aWYgIWRlZmluZWQoX19HTElCQ19fKQorKyAgICBjYXNlIF9fTlJfc2V0X3RpZF9hZGRyZXNzOgor KyNlbmRpZgorICAgICAgIHJldHVybiB0cnVlOworICAgICBjYXNlIF9fTlJfY2xvbmU6ICAvLyBT aG91bGQgYmUgcGFyYW1ldGVyLXJlc3RyaWN0ZWQuCisgICAgIGNhc2UgX19OUl9zZXRuczogIC8v IFByaXZpbGVnZWQuCitAQCAtNDUxLDcgKzQ1NCw5IEBAIGJvb2wgU3lzY2FsbFNldHM6OklzQWxs b3dlZFByb2Nlc3NTdGFydE8KKyAjaWYgZGVmaW5lZChfX2kzODZfXykgfHwgZGVmaW5lZChfX3g4 Nl82NF9fKSB8fCBkZWZpbmVkKF9fbWlwc19fKQorICAgICBjYXNlIF9fTlJfc2V0X3RocmVhZF9h cmVhOgorICNlbmRpZgorKyNpZiBkZWZpbmVkKF9fR0xJQkNfXykKKyAgICAgY2FzZSBfX05SX3Nl dF90aWRfYWRkcmVzczoKKysjZW5kaWYKKyAgICAgY2FzZSBfX05SX3Vuc2hhcmU6CisgI2lmICFk ZWZpbmVkKF9fbWlwc19fKSAmJiAhZGVmaW5lZChfX2FhcmNoNjRfXykKKyAgICAgY2FzZSBfX05S X3Zmb3JrOgorQEAgLTU0OSw2ICs1NTQsMTAgQEAgYm9vbCBTeXNjYWxsU2V0czo6SXNBbGxvd2Vk QWRkcmVzc1NwYWNlQQorICAgICBjYXNlIF9fTlJfbWxvY2s6CisgICAgIGNhc2UgX19OUl9tdW5s b2NrOgorICAgICBjYXNlIF9fTlJfbXVubWFwOgorKyNpZm5kZWYgX19HTElCQ19fCisrICAgIGNh c2UgX19OUl9tcmVtYXA6CisrICAgIGNhc2UgX19OUl9tZW1iYXJyaWVyOgorKyNlbmRpZgorICAg ICAgIHJldHVybiB0cnVlOworICAgICBjYXNlIF9fTlJfbWFkdmlzZToKKyAgICAgY2FzZSBfX05S X21pbmNvcmU6CitAQCAtNTY2LDcgKzU3NSw5IEBAIGJvb2wgU3lzY2FsbFNldHM6OklzQWxsb3dl ZEFkZHJlc3NTcGFjZUEKKyAgICAgY2FzZSBfX05SX21vZGlmeV9sZHQ6CisgI2VuZGlmCisgICAg IGNhc2UgX19OUl9tcHJvdGVjdDoKKysjaWZkZWYgX19HTElCQ19fCisgICAgIGNhc2UgX19OUl9t cmVtYXA6CisrI2VuZGlmCisgICAgIGNhc2UgX19OUl9tc3luYzoKKyAgICAgY2FzZSBfX05SX211 bmxvY2thbGw6CisgICAgIGNhc2UgX19OUl9yZWFkYWhlYWQ6CistLS0gYS9zcmMvM3JkcGFydHkv Y2hyb21pdW0vc2FuZGJveC9saW51eC9zZWNjb21wLWJwZi1oZWxwZXJzL2Jhc2VsaW5lX3BvbGlj eS5jYworKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3NhbmRib3gvbGludXgvc2VjY29tcC1i cGYtaGVscGVycy9iYXNlbGluZV9wb2xpY3kuY2MKK0BAIC0yMjUsMTIgKzIyNSwyNiBAQCBSZXN1 bHRFeHByIEV2YWx1YXRlU3lzY2FsbEltcGwoaW50IGZzX2RlCisgICBpZiAoc3lzbm8gPT0gX19O Ul9nZXRwcmlvcml0eSB8fCBzeXNubyA9PV9fTlJfc2V0cHJpb3JpdHkpCisgICAgIHJldHVybiBS ZXN0cmljdEdldFNldHByaW9yaXR5KGN1cnJlbnRfcGlkKTsKKyAKKysjaWZuZGVmIF9fR0xJQkNf XworKyAgLy8gWFhYOiBoYWNrcyBmb3IgbXVzbCBzYW5kYm94LCBjYWxscyBuZWVkZWQ/CisrICBp ZiAoc3lzbm8gPT0gX19OUl9zY2hlZF9nZXRwYXJhbSB8fCBzeXNubyA9PSBfX05SX3NjaGVkX2dl dHNjaGVkdWxlciB8fAorKyAgICAgIHN5c25vID09IF9fTlJfc2NoZWRfc2V0c2NoZWR1bGVyKSB7 CisrICAgIHJldHVybiBBbGxvdygpOworKyAgfQorKyNlbmRpZgorKworICAgLy8gVGhlIHNjaGVk dWxpbmcgc3lzY2FsbHMgYXJlIHVzZWQgaW4gdGhyZWFkaW5nIGxpYnJhcmllcyBhbmQgYWxzbyBo ZWF2aWx5IGluCisgICAvLyBhYnNlaWwuIFNlZSBmb3IgZXhhbXBsZSBodHRwczovL2NyYnVnLmNv bS8xMzcwMzk0LgorKyNpZmRlZiBfX0dMSUJDX18KKyAgIGlmIChzeXNubyA9PSBfX05SX3NjaGVk X2dldGFmZmluaXR5IHx8IHN5c25vID09IF9fTlJfc2NoZWRfZ2V0cGFyYW0gfHwKKyAgICAgICBz eXNubyA9PSBfX05SX3NjaGVkX2dldHNjaGVkdWxlciB8fCBzeXNubyA9PSBfX05SX3NjaGVkX3Nl dHNjaGVkdWxlcikgeworICAgICByZXR1cm4gUmVzdHJpY3RTY2hlZFRhcmdldChjdXJyZW50X3Bp ZCwgc3lzbm8pOworICAgfQorKyNlbHNlCisrICBpZiAoc3lzbm8gPT0gX19OUl9zY2hlZF9nZXRh ZmZpbml0eSkgeworKyAgICByZXR1cm4gUmVzdHJpY3RTY2hlZFRhcmdldChjdXJyZW50X3BpZCwg c3lzbm8pOworKyAgfQorKyNlbmRpZgorIAorICAgaWYgKHN5c25vID09IF9fTlJfZ2V0cmFuZG9t KSB7CisgICAgIHJldHVybiBSZXN0cmljdEdldFJhbmRvbSgpOworLS0tIGEvc3JjLzNyZHBhcnR5 L2Nocm9taXVtL3NhbmRib3gvbGludXgvc3lzdGVtX2hlYWRlcnMvbGludXhfc3lzY2FsbHMuaAor KysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3NhbmRib3gvbGludXgvc3lzdGVtX2hlYWRlcnMv bGludXhfc3lzY2FsbHMuaAorQEAgLTEwLDYgKzEwLDcgQEAKKyAjZGVmaW5lIFNBTkRCT1hfTElO VVhfU1lTVEVNX0hFQURFUlNfTElOVVhfU1lTQ0FMTFNfSF8KKyAKKyAjaW5jbHVkZSAiYnVpbGQv YnVpbGRfY29uZmlnLmgiCisrI2luY2x1ZGUgPHN5cy9zeXNjYWxsLmg+CisgCisgI2lmIGRlZmlu ZWQoX194ODZfNjRfXykKKyAjaW5jbHVkZSAic2FuZGJveC9saW51eC9zeXN0ZW1faGVhZGVycy94 ODZfNjRfbGludXhfc3lzY2FsbHMuaCIKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRj aGVzLzAwMTAtY2hyb21pdW0tbXVzbC10aWQtY2FjaGluZy5wYXRjaCBiL3NyY3BrZ3MvcXQ2LXBk Zi9wYXRjaGVzLzA4MDEtbXVzbC10aWQtY2FjaGluZy5wYXRjaApzaW1pbGFyaXR5IGluZGV4IDky JQpyZW5hbWUgZnJvbSBzcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wMDEwLWNocm9taXVtLW11c2wt dGlkLWNhY2hpbmcucGF0Y2gKcmVuYW1lIHRvIHNyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzA4MDEt bXVzbC10aWQtY2FjaGluZy5wYXRjaAppbmRleCA4ZmJmNGMwYjFiYTZmOC4uNWU0ODI2NjdmY2Zi NmUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzAwMTAtY2hyb21pdW0tbXVz bC10aWQtY2FjaGluZy5wYXRjaAorKysgYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wODAxLW11 c2wtdGlkLWNhY2hpbmcucGF0Y2gKQEAgLTIsMTMgKzIsMTMgQEAgU291cmNlOiBodHRwczovL2dp dC5hbHBpbmVsaW51eC5vcmcvYXBvcnRzL3BsYWluL2NvbW11bml0eS9jaHJvbWl1bS9tdXNsLXRp ZC1jYWMKIHRoZSBzYW5kYm94IGNhY2hpbmcgb2YgdGhyZWFkIGlkJ3Mgb25seSB3b3JrcyB3aXRo IGdsaWJjCiBzZWU6IGh0dHBzOi8vZ2l0bGFiLmFscGluZWxpbnV4Lm9yZy9hbHBpbmUvYXBvcnRz Ly0vbWVyZ2VfcmVxdWVzdHMvMzIzNTYKIHNlZTogaHR0cHM6Ly9naXRsYWIuYWxwaW5lbGludXgu b3JnL2FscGluZS9hcG9ydHMvLS9pc3N1ZXMvMTM1NzkKLS0tCiAtLS0gYS9zcmMvM3JkcGFydHkv Y2hyb21pdW0vc2FuZGJveC9saW51eC9zZXJ2aWNlcy9uYW1lc3BhY2Vfc2FuZGJveC5jYwogKysr IGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3NhbmRib3gvbGludXgvc2VydmljZXMvbmFtZXNwYWNl X3NhbmRib3guY2MKLUBAIC0yMDksNiArMjA5LDcwIEBACitAQCAtMjA4LDYgKzIwOCw3MiBAQCBi YXNlOjpQcm9jZXNzIE5hbWVzcGFjZVNhbmRib3g6OkxhdW5jaFByCiAgICByZXR1cm4gYmFzZTo6 TGF1bmNoUHJvY2Vzcyhhcmd2LCBsYXVuY2hfb3B0aW9uc19jb3B5KTsKICB9CiAgCisrI2lmbmRl ZiBfX0dMSUJDX18KICsjaWYgZGVmaW5lZChfX2FhcmNoNjRfXykgfHwgZGVmaW5lZChfX2FybV9f KSB8fCBkZWZpbmVkKF9fcG93ZXJwY19fKQogKyNkZWZpbmUgVExTX0FCT1ZFX1RQCiArI2VuZGlm CkBAIC03MiwxNSArNzIsMTYgQEAgc2VlOiBodHRwczovL2dpdGxhYi5hbHBpbmVsaW51eC5vcmcv YWxwaW5lL2Fwb3J0cy8tL2lzc3Vlcy8xMzU3OQogKyAgcGlkX3QqIGNhY2hlZF90aWRfbG9jYXRp b24gPSAmcmVpbnRlcnByZXRfY2FzdDxzdHJ1Y3QgbXVzbF9wdGhyZWFkKj4ocHRocmVhZF9zZWxm KCkpLT50aWQ7CiArICAqY2FjaGVkX3RpZF9sb2NhdGlvbiA9IHJlYWxfdGlkOwogK30KKysjZW5k aWYKICsKICAvLyBzdGF0aWMKICBwaWRfdCBOYW1lc3BhY2VTYW5kYm94OjpGb3JrSW5OZXdQaWRO YW1lc3BhY2UoYm9vbCBkcm9wX2NhcGFiaWxpdGllc19pbl9jaGlsZCkgewogICAgY29uc3QgcGlk X3QgcGlkID0KLUBAIC0yMjYsNiArMjkwLDggQEAKK0BAIC0yMjUsNiArMjkxLDkgQEAgcGlkX3Qg TmFtZXNwYWNlU2FuZGJveDo6Rm9ya0luTmV3UGlkTmFtZQogICNpZiBkZWZpbmVkKExJQkNfR0xJ QkMpCiAgICAgIE1heWJlVXBkYXRlR2xpYmNUaWRDYWNoZSgpOwotLSNlbmRpZgotKyNlbHNlCisg I2VuZGlmCisrI2lmbmRlZiBfX0dMSUJDX18KICsgICAgTWF5YmVVcGRhdGVNdXNsVGlkQ2FjaGUo KTsKICsjZW5kaWYKICAgICAgcmV0dXJuIDA7CmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYv cGF0Y2hlcy8wODAyLW11c2wtbm8tcmVzLW5pbml0LW5jbG9zZS5wYXRjaCBiL3NyY3BrZ3MvcXQ2 LXBkZi9wYXRjaGVzLzA4MDItbXVzbC1uby1yZXMtbmluaXQtbmNsb3NlLnBhdGNoCm5ldyBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwLi5lMmEwMWQ5NDZkM2M5NQotLS0gL2Rl di9udWxsCisrKyBiL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzA4MDItbXVzbC1uby1yZXMtbmlu aXQtbmNsb3NlLnBhdGNoCkBAIC0wLDAgKzEsMjAgQEAKKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJv bWl1bS9uZXQvZG5zL3B1YmxpYy9zY29wZWRfcmVzX3N0YXRlLmNjCisrKysgYi9zcmMvM3JkcGFy dHkvY2hyb21pdW0vbmV0L2Rucy9wdWJsaWMvc2NvcGVkX3Jlc19zdGF0ZS5jYworQEAgLTEzLDcg KzEzLDcgQEAKKyBuYW1lc3BhY2UgbmV0IHsKKyAKKyBTY29wZWRSZXNTdGF0ZTo6U2NvcGVkUmVz U3RhdGUoKSB7CistI2lmIEJVSUxERkxBRyhJU19PUEVOQlNEKSB8fCBCVUlMREZMQUcoSVNfRlVD SFNJQSkKKysjaWZuZGVmIF9fR0xJQkNfXworICAgLy8gTm90ZTogcmVzX25pbml0IGluIGdsaWJj IGFsd2F5cyByZXR1cm5zIDAgYW5kIHNldHMgUkVTX0lOSVQuCisgICAvLyByZXNfaW5pdCBiZWhh dmVzIHRoZSBzYW1lIHdheS4KKyAgIG1lbXNldCgmX3JlcywgMCwgc2l6ZW9mKF9yZXMpKTsKK0BA IC0zMCw3ICszMCw3IEBAIFNjb3BlZFJlc1N0YXRlOjp+U2NvcGVkUmVzU3RhdGUoKSB7CisgICAv LyBQcmVmZXIgcmVzX25kZXN0cm95IHdoZXJlIGF2YWlsYWJsZS4KKyAjaWYgQlVJTERGTEFHKElT X0FQUExFKSB8fCBCVUlMREZMQUcoSVNfRlJFRUJTRCkKKyAgIHJlc19uZGVzdHJveSgmcmVzXyk7 CistI2Vsc2UKKysjZWxpZiBkZWZpbmVkKF9fR0xJQkNfXykKKyAgIHJlc19uY2xvc2UoJnJlc18p OworICNlbmRpZiAgLy8gQlVJTERGTEFHKElTX0FQUExFKSB8fCBCVUlMREZMQUcoSVNfRlJFRUJT RCkKKyAKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzA4MDMtbXVzbC1pbmNs dWRlLnBhdGNoIGIvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDgwMy1tdXNsLWluY2x1ZGUucGF0 Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAuLmI4ZTI0NzYyYzc3 YWExCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDgwMy1tdXNs LWluY2x1ZGUucGF0Y2gKQEAgLTAsMCArMSwxMCBAQAorLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9t aXVtL2dwdS9jb25maWcvZ3B1X2RyaXZlcl9idWdfd29ya2Fyb3VuZHMuaAorKysrIGIvc3JjLzNy ZHBhcnR5L2Nocm9taXVtL2dwdS9jb25maWcvZ3B1X2RyaXZlcl9idWdfd29ya2Fyb3VuZHMuaAor QEAgLTUsNiArNSw3IEBACisgI2lmbmRlZiBHUFVfQ09ORklHX0dQVV9EUklWRVJfQlVHX1dPUktB Uk9VTkRTX0hfCisgI2RlZmluZSBHUFVfQ09ORklHX0dQVV9EUklWRVJfQlVHX1dPUktBUk9VTkRT X0hfCisgCisrI2luY2x1ZGUgPGNzdGRpbnQ+CisgI2luY2x1ZGUgPHZlY3Rvcj4KKyAKKyAjaW5j bHVkZSAiYnVpbGQvYnVpbGRfY29uZmlnLmgiCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYv cGF0Y2hlcy8wOTk4LWNyb3NzLnBhdGNoIGIvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvMDk5OC1j cm9zcy5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOWU2MmJlNGI0YzY0ZDQu LjAwMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVzLzA5OTgtY3Jvc3Mu cGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwxOCArMCwwIEBACi0tLS0gYS9leGFtcGxlcy9DTWFr ZUxpc3RzLnR4dAkyMDIzLTEwLTAzIDIxOjQ5OjU0LjAwMDAwMDAwMCArMDIwMAotKysrIC0JMjAy My0xMC0yNyAxMToxMjowMS41NzMyOTMwNDIgKzAyMDAKLUBAIC00LDcgKzQsNyBAQAotIGNtYWtl X21pbmltdW1fcmVxdWlyZWQoVkVSU0lPTiAzLjE2KQotIAotIHF0X2V4YW1wbGVzX2J1aWxkX2Jl Z2luKEVYVEVSTkFMX0JVSUxEKQotLWlmKE5PVCBDTUFLRV9DUk9TU0NPTVBJTElORykgI1FUQlVH LTg2NTMzCi0rI2lmKE5PVCBDTUFLRV9DUk9TU0NPTVBJTElORykgI1FUQlVHLTg2NTMzCi0gICAg IGlmKFRBUkdFVCBRdDo6V2ViRW5naW5lQ29yZSkKLSAgICAgICAgIGFkZF9zdWJkaXJlY3Rvcnko d2ViZW5naW5lcXVpY2spCi0gICAgIGVuZGlmKCkKLUBAIC0xNyw1ICsxNyw1IEBACi0gICAgIGlm KFRBUkdFVCBRdDo6UGRmV2lkZ2V0cykKLSAgICAgICAgIGFkZF9zdWJkaXJlY3RvcnkocGRmd2lk Z2V0cykKLSAgICAgZW5kaWYoKQotLWVuZGlmKCkKLSsjZW5kaWYoKQotIHF0X2V4YW1wbGVzX2J1 aWxkX2VuZCgpCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wOTk4LWV4YW1w bGUtY3Jvc3MtYnVpbGQucGF0Y2ggYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8wOTk4LWV4YW1w bGUtY3Jvc3MtYnVpbGQucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw MDAwMDAuLjhmYjRjNzc5OTg1N2Q4Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9xdDYtcGRm L3BhdGNoZXMvMDk5OC1leGFtcGxlLWNyb3NzLWJ1aWxkLnBhdGNoCkBAIC0wLDAgKzEsMTEgQEAK Ky0tLSBhL2V4YW1wbGVzL0NNYWtlTGlzdHMudHh0CisrKysgYi9leGFtcGxlcy9DTWFrZUxpc3Rz LnR4dAorQEAgLTQsNyArNCw3IEBACisgY21ha2VfbWluaW11bV9yZXF1aXJlZChWRVJTSU9OIDMu MTYpCisgCisgcXRfZXhhbXBsZXNfYnVpbGRfYmVnaW4oRVhURVJOQUxfQlVJTEQpCistaWYoTk9U IENNQUtFX0NST1NTQ09NUElMSU5HKSAjUVRCVUctODY1MzMKKytpZihUUlVFKSAjUVRCVUctODY1 MzMKKyAgICAgaWYoVEFSR0VUIFF0OjpXZWJFbmdpbmVDb3JlKQorICAgICAgICAgYWRkX3N1YmRp cmVjdG9yeSh3ZWJlbmdpbmVxdWljaykKKyAgICAgZW5kaWYoKQpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9xdDYtcGRmL3BhdGNoZXMvMDk5OS1weXRob24zLjEyLnBhdGNoIGIvc3JjcGtncy9xdDYtcGRm L3BhdGNoZXMvMDk5OS1weXRob24zLjEyLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp bmRleCA0MGQ0MDEwYzgyNjg4Yi4uMDAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9xdDYtcGRm L3BhdGNoZXMvMDk5OS1weXRob24zLjEyLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMjAgKzAs MCBAQAotLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL21vam8vcHVibGljL3Rvb2xzL21vam9t L21vam9tL2ZpbGV1dGlsLnB5CTIwMjMtMTAtMDMgMjE6NDk6NTQuMDAwMDAwMDAwICswMjAwCi0r KysgLQkyMDIzLTEwLTEzIDIzOjI2OjU2LjE1MTAyNTg3OCArMDIwMAotQEAgLTMsNyArMyw2IEBA Ci0gIyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgotIAotIGltcG9ydCBlcnJubwotLWltcG9y dCBpbXAKLSBpbXBvcnQgb3MucGF0aAotIGltcG9ydCBzeXMKLSAKLS0tLSBhL3NyYy8zcmRwYXJ0 eS9jaHJvbWl1bS9tb2pvL3B1YmxpYy90b29scy9tb2pvbS9tb2pvbS9wYXJzZS9sZXhlci5weQky MDIzLTEwLTAzIDIxOjQ5OjU0LjAwMDAwMDAwMCArMDIwMAotKysrIC0JMjAyMy0xMC0xMyAyMzoy ODo1Ni4zOTE5ODcwNTEgKzAyMDAKLUBAIC0yLDcgKzIsNiBAQAotICMgVXNlIG9mIHRoaXMgc291 cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQot ICMgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KLSAKLS1pbXBvcnQgaW1wCi0gaW1wb3J0IG9z LnBhdGgKLSBpbXBvcnQgc3lzCi0KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVz LzEwMDAtd2Uta25vdy13aGF0LXdpbGwtYmUtc3VwcG9ydGVkLnBhdGNoIGIvc3JjcGtncy9xdDYt cGRmL3BhdGNoZXMvMTAwMC13ZS1rbm93LXdoYXQtd2lsbC1iZS1zdXBwb3J0ZWQucGF0Y2gKaW5k ZXggZDlkZDFjNzUzNTI3YTMuLmZjZjUxNTA3MWZlY2MwIDEwMDY0NAotLS0gYS9zcmNwa2dzL3F0 Ni1wZGYvcGF0Y2hlcy8xMDAwLXdlLWtub3ctd2hhdC13aWxsLWJlLXN1cHBvcnRlZC5wYXRjaAor KysgYi9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy8xMDAwLXdlLWtub3ctd2hhdC13aWxsLWJlLXN1 cHBvcnRlZC5wYXRjaApAQCAtMSwyNyArMSwxNSBAQAotLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9t aXVtL0JVSUxELmduCi0rKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vQlVJTEQuZ24KLUBAIC0x NjQ3LDkgKzE2NDcsNyBAQCBpZiAoIWlzX2lvcyAmJiAhaXNfcXR3ZWJlbmdpbmUpIHsKLSB9Ci0g Ci0gIyBUT0RPKGNhc3Nldyk6IEFkZCBtb3JlIE9TJ3MgdGhhdCBkb24ndCBzdXBwb3J0IHg4Ni4K LS1pc192YWxpZF94ODZfdGFyZ2V0ID0KLS0gICAgdGFyZ2V0X29zICE9ICJpb3MiICYmIHRhcmdl dF9vcyAhPSAibWFjIiAmJgotLSAgICAodGFyZ2V0X29zICE9ICJsaW51eCIgfHwgdXNlX2xpYmZ1 enplciB8fCAhYnVpbGRfd2l0aF9jaHJvbWl1bSkKLStpc192YWxpZF94ODZfdGFyZ2V0ID0gdHJ1 ZQotIAotICMgTm90ZTogdjhfdGFyZ2V0X2NwdSA9PSBhcm0gYWxsb3dzIHVzaW5nIHRoZSBWOCBh cm0gc2ltdWxhdG9yIG9uIHg4NiBmb3IgZnV6emluZy4KLSBhc3NlcnQoCiAtLS0gYS9zcmMvaG9z dC9DTWFrZUxpc3RzLnR4dAogKysrIGIvc3JjL2hvc3QvQ01ha2VMaXN0cy50eHQKLUBAIC00OCwx OCArNDgsMyBAQCBpZihRVF9GRUFUVVJFX3F0cGRmX2J1aWxkKQorQEAgLTUwLDE5ICs1MCwzIEBA IGlmKFFUX0ZFQVRVUkVfcXRwZGZfYnVpbGQpCiAgICAgICAgICBERVNUSU5BVElPTiAke1dFQkVO R0lORV9ST09UX0JVSUxEX0RJUn0vc3JjL3BkZi92OF90b29sY2hhaW4KICAgICAgKQogIGVuZGlm KCkKIC0KIC0jIFRPRE86IHRoaXMgY291bGQgYmUgcnVuIGFzIHBhcnQgb2YgbWFpbiBjb25maWd1 cmUgd2l0aCBleGVjdXRlX3Byb2Nlc3MKKy0jIFNraXAgZm9yIHF0cGRmKGFuZHJvaWQpCiAtCiAt aWYoQ01BS0VfQ1hYX0NPTVBJTEVSX0lEIFNUUkVRVUFMIEdOVSBBTkQgVEVTVF9hcmNoaXRlY3R1 cmVfYXJjaCBTVFJFUVVBTCAieDg2XzY0IgotLUFORCBHTl9UQVJHRVRfQ1BVIFNUUkVRVUFMICJh cm0iKQorLSAgICBBTkQgR05fVEFSR0VUX0NQVSBTVFJFUVVBTCAiYXJtIiBBTkQgTk9UIE1JTkdX IEFORCBOT1QgQU5EUk9JRCkKIC0gICAgdHJ5X2NvbXBpbGUoCiAtICAgICAgICBoYXMzMkhvc3RD b21waWxlcgogLSAgICAgICAgIiR7Q01BS0VfQ1VSUkVOVF9CSU5BUllfRElSfS9jb25maWcudGVz dHMvaG9zdGNvbXBpbGVyIgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvUGFy dGlhbC1taWdyYXRpb24tZnJvbS1pbXAtdG8taW1wb3J0bGliLnBhdGNoIGIvc3JjcGtncy9xdDYt cGRmL3BhdGNoZXMvUGFydGlhbC1taWdyYXRpb24tZnJvbS1pbXAtdG8taW1wb3J0bGliLnBhdGNo CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0NmNjODhmOWJmMTc3MC4uMDAwMDAwMDAw MDAwMDAKLS0tIGEvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvUGFydGlhbC1taWdyYXRpb24tZnJv bS1pbXAtdG8taW1wb3J0bGliLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMzYgKzAsMCBAQAot RnJvbSBjYmY1ZjdhZDYxOWE5NjdiZDU0NDgyZTFkMWRmMzZkODBiMjgxNDVhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQotRnJvbTogPT9VVEYtOD9xP0ZyYW50aT1DNT1BMWVrPTIwWmF0bG91a2Fs Pz0gPGZ6YXRsb3VrQHJlZGhhdC5jb20+Ci1EYXRlOiBUaHUsIDEzIEp1bCAyMDIzIDEyOjE4OjAw ICswMjAwCi1TdWJqZWN0OiBbUEFUQ0hdIFBhcnRpYWwgbWlncmF0aW9uIGZyb20gaW1wIHRvIGlt cG9ydGxpYgotCi0tLS0KLSAuLi4vcmVzb3VyY2VzL3Byb3RvYnVmcy9iaW5hcnlfcHJvdG9fZ2Vu ZXJhdG9yLnB5ICAgICAgICAgICB8IDYgKysrKy0tCi0gMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0 aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdpdCBhL3NyYy8zcmRwYXJ0eS9jaHJv bWl1bS9jb21wb25lbnRzL3Jlc291cmNlcy9wcm90b2J1ZnMvYmluYXJ5X3Byb3RvX2dlbmVyYXRv ci5weSBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9jb21wb25lbnRzL3Jlc291cmNlcy9wcm90b2J1 ZnMvYmluYXJ5X3Byb3RvX2dlbmVyYXRvci5weQotaW5kZXggMmExODAyZC4uYmE2NzI1MSAxMDA3 NTUKLS0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9jb21wb25lbnRzL3Jlc291cmNlcy9wcm90 b2J1ZnMvYmluYXJ5X3Byb3RvX2dlbmVyYXRvci5weQotKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9t aXVtL2NvbXBvbmVudHMvcmVzb3VyY2VzL3Byb3RvYnVmcy9iaW5hcnlfcHJvdG9fZ2VuZXJhdG9y LnB5Ci1AQCAtOSw3ICs5LDcgQEAKLSAiIiIKLSBmcm9tIF9fZnV0dXJlX18gaW1wb3J0IHByaW50 X2Z1bmN0aW9uCi0gaW1wb3J0IGFiYwotLWltcG9ydCBpbXAKLStmcm9tIGltcG9ydGxpYiBpbXBv cnQgdXRpbAotIGltcG9ydCBvcHRwYXJzZQotIGltcG9ydCBvcwotIGltcG9ydCByZQotQEAgLTY4 LDcgKzY4LDkgQEAgY2xhc3MgR29vZ2xlUHJvdG9idWZNb2R1bGVJbXBvcnRlcjoKLSAgICAgICBy YWlzZSBJbXBvcnRFcnJvcihmdWxsbmFtZSkKLSAKLSAgICAgZmlsZXBhdGggPSBzZWxmLl9mdWxs bmFtZV90b19maWxlcGF0aChmdWxsbmFtZSkKLS0gICAgcmV0dXJuIGltcC5sb2FkX3NvdXJjZShm dWxsbmFtZSwgZmlsZXBhdGgpCi0rICAgIHNwZWMgPSB1dGlsLnNwZWNfZnJvbV9maWxlX2xvY2F0 aW9uKGZ1bGxuYW1lLCBmaWxlcGF0aCkKLSsgICAgbG9hZGVkID0gdXRpbC5tb2R1bGVfZnJvbV9z cGVjKHNwZWMpCi0rICAgIHJldHVybiBzcGVjLmxvYWRlci5leGVjX21vZHVsZShsb2FkZWQpCi0g Ci0gY2xhc3MgQmluYXJ5UHJvdG9HZW5lcmF0b3I6Ci0gCi0tLSAKLTIuNDEuMAotCmRpZmYgLS1n aXQgYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hlcy9maXgtbGlieG1sMi0yLjEyLnBhdGNoIGIvc3Jj cGtncy9xdDYtcGRmL3BhdGNoZXMvZml4LWxpYnhtbDItMi4xMi5wYXRjaApkZWxldGVkIGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggZjg1ZWU0ZDAxZmY2NGYuLjAwMDAwMDAwMDAwMDAwCi0tLSBhL3Ny Y3BrZ3MvcXQ2LXBkZi9wYXRjaGVzL2ZpeC1saWJ4bWwyLTIuMTIucGF0Y2gKKysrIC9kZXYvbnVs bApAQCAtMSwzNCArMCwwIEBACi1CYXNlZCBvbjogaHR0cHM6Ly9naXRodWIuY29tL2Nocm9taXVt L2Nocm9taXVtL2NvbW1pdC84NzFmOGFlOWI2NWNlMjY3OWIwYmMwYmUzNjkwMmQ2NWVkZjBjMWU0 Ci0KLWRpZmYgLS1naXQgYS90aGlyZF9wYXJ0eS9ibGluay9yZW5kZXJlci9jb3JlL3htbC94c2x0 X3Byb2Nlc3Nvci5oIGIvdGhpcmRfcGFydHkvYmxpbmsvcmVuZGVyZXIvY29yZS94bWwveHNsdF9w cm9jZXNzb3IuaAotaW5kZXggZDUzODM1ZTk2NzU3OTNlLi4yZWFlYTMxZWQyOWI5MGYgMTAwNjQ0 Ci0tLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFydHkvYmxpbmsvcmVuZGVyZXIv Y29yZS94bWwveHNsdF9wcm9jZXNzb3IuaAotKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3Ro aXJkX3BhcnR5L2JsaW5rL3JlbmRlcmVyL2NvcmUveG1sL3hzbHRfcHJvY2Vzc29yLmgKLUBAIC03 OSw3ICs3OSwxMSBAQCBjbGFzcyBYU0xUUHJvY2Vzc29yIGZpbmFsIDogcHVibGljIFNjcmlwCi0g Ci0gICB2b2lkIHJlc2V0KCk7Ci0gCi0rI2lmIExJQlhNTF9WRVJTSU9OID49IDIxMjAwCi0rICBz dGF0aWMgdm9pZCBQYXJzZUVycm9yRnVuYyh2b2lkKiB1c2VyX2RhdGEsIGNvbnN0IHhtbEVycm9y Kik7Ci0rI2Vsc2UKLSAgIHN0YXRpYyB2b2lkIFBhcnNlRXJyb3JGdW5jKHZvaWQqIHVzZXJfZGF0 YSwgeG1sRXJyb3IqKTsKLSsjZW5kaWYKLSAgIHN0YXRpYyB2b2lkIEdlbmVyaWNFcnJvckZ1bmMo dm9pZCogdXNlcl9kYXRhLCBjb25zdCBjaGFyKiBtc2csIC4uLik7Ci0gCi0gICAvLyBPbmx5IGZv ciBsaWJYU0xUIGNhbGxiYWNrcwotZGlmZiAtLWdpdCBhL3RoaXJkX3BhcnR5L2JsaW5rL3JlbmRl cmVyL2NvcmUveG1sL3hzbHRfcHJvY2Vzc29yX2xpYnhzbHQuY2MgYi90aGlyZF9wYXJ0eS9ibGlu ay9yZW5kZXJlci9jb3JlL3htbC94c2x0X3Byb2Nlc3Nvcl9saWJ4c2x0LmNjCi1pbmRleCAxMzNl MGIzMzU1ZDJmMDkuLmY0MjQwNzcwODlkYTg3ZCAxMDA2NDQKLS0tLSBhL3NyYy8zcmRwYXJ0eS9j aHJvbWl1bS90aGlyZF9wYXJ0eS9ibGluay9yZW5kZXJlci9jb3JlL3htbC94c2x0X3Byb2Nlc3Nv cl9saWJ4c2x0LmNjCi0rKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFydHkvYmxp bmsvcmVuZGVyZXIvY29yZS94bWwveHNsdF9wcm9jZXNzb3JfbGlieHNsdC5jYwotQEAgLTYwLDcg KzYwLDExIEBAIHZvaWQgWFNMVFByb2Nlc3Nvcjo6R2VuZXJpY0Vycm9yRnVuYyh2b2kKLSAgIC8v IEl0IHdvdWxkIGJlIG5pY2UgdG8gZG8gc29tZXRoaW5nIHdpdGggdGhpcyBlcnJvciBtZXNzYWdl LgotIH0KLSAKLSsjaWYgTElCWE1MX1ZFUlNJT04gPj0gMjEyMDAKLSt2b2lkIFhTTFRQcm9jZXNz b3I6OlBhcnNlRXJyb3JGdW5jKHZvaWQqIHVzZXJfZGF0YSwgY29uc3QgeG1sRXJyb3IqIGVycm9y KSB7Ci0rI2Vsc2UKLSB2b2lkIFhTTFRQcm9jZXNzb3I6OlBhcnNlRXJyb3JGdW5jKHZvaWQqIHVz ZXJfZGF0YSwgeG1sRXJyb3IqIGVycm9yKSB7Ci0rI2VuZGlmCi0gICBGcmFtZUNvbnNvbGUqIGNv bnNvbGUgPSBzdGF0aWNfY2FzdDxGcmFtZUNvbnNvbGUqPih1c2VyX2RhdGEpOwotICAgaWYgKCFj b25zb2xlKQotICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYvcGF0Y2hl cy9waXBld2lyZS1mY250bC1jYWxsLnBhdGNoIGIvc3JjcGtncy9xdDYtcGRmL3BhdGNoZXMvcGlw ZXdpcmUtZmNudGwtY2FsbC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTEz OWE3ZThhNTMyY2UuLjAwMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvcXQ2LXBkZi9wYXRjaGVz L3BpcGV3aXJlLWZjbnRsLWNhbGwucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwxOCArMCwwIEBA Ci1QYXRjaC1Tb3VyY2U6IGh0dHBzOi8vd2VicnRjLXJldmlldy5nb29nbGVzb3VyY2UuY29tL2Mv c3JjLysvMzA1MTIwCi0tLQotZGlmZiAtLWdpdCBhL21vZHVsZXMvZGVza3RvcF9jYXB0dXJlL2xp bnV4L3dheWxhbmQvc2hhcmVkX3NjcmVlbmNhc3Rfc3RyZWFtLmNjIGIvbW9kdWxlcy9kZXNrdG9w X2NhcHR1cmUvbGludXgvd2F5bGFuZC9zaGFyZWRfc2NyZWVuY2FzdF9zdHJlYW0uY2MKLWluZGV4 IDU4NzgxODAuLmIyYWQ3YWQgMTAwNjQ0Ci0tLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vdGhp cmRfcGFydHkvd2VicnRjL21vZHVsZXMvZGVza3RvcF9jYXB0dXJlL2xpbnV4L3dheWxhbmQvc2hh cmVkX3NjcmVlbmNhc3Rfc3RyZWFtLmNjCi0rKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vdGhp cmRfcGFydHkvd2VicnRjL21vZHVsZXMvZGVza3RvcF9jYXB0dXJlL2xpbnV4L3dheWxhbmQvc2hh cmVkX3NjcmVlbmNhc3Rfc3RyZWFtLmNjCi1AQCAtNDUyLDggKzQ1Miw4IEBACi0gICAgIFBpcGVX aXJlVGhyZWFkTG9vcExvY2sgdGhyZWFkX2xvb3BfbG9jayhwd19tYWluX2xvb3BfKTsKLSAKLSAg ICAgaWYgKGZkID49IDApIHsKLS0gICAgICBwd19jb3JlXyA9IHB3X2NvbnRleHRfY29ubmVjdF9m ZCgKLS0gICAgICAgICAgcHdfY29udGV4dF8sIGZjbnRsKGZkLCBGX0RVUEZEX0NMT0VYRUMpLCBu dWxscHRyLCAwKTsKLSsgICAgICBwd19jb3JlXyA9IHB3X2NvbnRleHRfY29ubmVjdF9mZCgKLSsg ICAgICAgICAgcHdfY29udGV4dF8sIGZjbnRsKGZkLCBGX0RVUEZEX0NMT0VYRUMsIDApLCBudWxs cHRyLCAwKTsKLSAgICAgfSBlbHNlIHsKLSAgICAgICBwd19jb3JlXyA9IHB3X2NvbnRleHRfY29u bmVjdChwd19jb250ZXh0XywgbnVsbHB0ciwgMCk7Ci0gICAgIH0KLQpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9xdDYtcGRmL3RlbXBsYXRlIGIvc3JjcGtncy9xdDYtcGRmL3RlbXBsYXRlCmluZGV4IGVj ZGE4NGFmYWMxMzEwLi5hN2Y2MWVhMGIwYWE1ZCAxMDA2NDQKLS0tIGEvc3JjcGtncy9xdDYtcGRm L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcXQ2LXBkZi90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3F0Ni1wZGYnCiBwa2duYW1lPXF0Ni1wZGYKLXZlcnNpb249 Ni42LjAKLXJldmlzaW9uPTMKK3ZlcnNpb249Ni43LjIKK3JldmlzaW9uPTEKIGJ1aWxkX3N0eWxl PWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURRVF9GRUFUVVJFX3F0cGRmX2J1aWxkPU9OCiAgLURR VF9GRUFUVVJFX3F0cGRmX3dpZGdldHNfYnVpbGQ9T04KQEAgLTEwLDcgKzEwLDggQEAgY29uZmln dXJlX2FyZ3M9Ii1EUVRfRkVBVFVSRV9xdHBkZl9idWlsZD1PTgogIC1EUVRfQlVJTERfRVhBTVBM RVM9T04iCiBob3N0bWFrZWRlcGVuZHM9InF0Ni1iYXNlLWRldmVsIHBlcmwgcGtnLWNvbmZpZyBu b2RlanMgcHl0aG9uMy1odG1sNWxpYgogIHF0Ni1kZWNsYXJhdGl2ZS1ob3N0LXRvb2xzIGdwZXJm IGJpc29uIGZsZXggbnNzLWRldmVsIgotbWFrZWRlcGVuZHM9InF0Ni1iYXNlLWRldmVsIHF0Ni1k ZWNsYXJhdGl2ZS1kZXZlbCBxdDYtc3ZnLWRldmVsIHpsaWItZGV2ZWwKK21ha2VkZXBlbmRzPSJx dDYtYmFzZS1wcml2YXRlLWRldmVsIHF0Ni1kZWNsYXJhdGl2ZS1wcml2YXRlLWRldmVsCisgcXQ2 LXN2Zy1kZXZlbCB6bGliLWRldmVsCiAgcGNpdXRpbHMtZGV2ZWwgb3B1cy1kZXZlbCBsaWJ4c2x0 LWRldmVsIGxpYnhtbDItZGV2ZWwgZmZtcGVnLWRldmVsCiAgbGNtczItZGV2ZWwgbGlid2VicC1k ZXZlbCBpY3UtZGV2ZWwgcmUyLWRldmVsIHNuYXBweS1kZXZlbCBsaWJldmVudC1kZXZlbAogIGxp YnZweC1kZXZlbCBtaW5pemlwLWRldmVsIHRpZmYtZGV2ZWwgbGlicG5nLWRldmVsIGhhcmZidXp6 LWRldmVsCkBAIC0yMSw3ICsyMiw3IEBAIG1haW50YWluZXI9IkpvaG4gPG1lQGpvaG5ueW5hdG9y LmRldj4iCiBsaWNlbnNlPSJHUEwtMy4wLW9ubHksIEdQTC0yLjAtb25seSwgTEdQTC0zLjAtb25s eSwgQlNELTMtQ2xhdXNlIgogaG9tZXBhZ2U9Imh0dHBzOi8vd3d3LnF0LmlvIgogZGlzdGZpbGVz PSJodHRwczovL2Rvd25sb2FkLnF0LmlvL29mZmljaWFsX3JlbGVhc2VzL3F0LyR7dmVyc2lvbiUu Kn0vJHt2ZXJzaW9ufS9zdWJtb2R1bGVzL3F0d2ViZW5naW5lLWV2ZXJ5d2hlcmUtc3JjLSR7dmVy c2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZDVkYzlmZjA1YTJjNTdhZGJmOTljYmYwYzdjYjZmMTk1 MjdmNjcyMTZjYWY2MjdiMGNjMTYwYTFkMjUzYjc4MAorY2hlY2tzdW09Yzc3NTU4NzU1OTRkOGJl MzgyYjA3YmYzNjM0ZDQ0ZmQ3NzAxMjgwNTc5NGQ4YjU4ODg5MTcwOWE2NDA1ZmZkMQogCiBpZiBb ICIkWEJQU19MSUJDIiA9ICJtdXNsIiBdOyB0aGVuCiAJaG9zdG1ha2VkZXBlbmRzKz0iIG11c2wt bGVnYWN5LWNvbXBhdCIKQEAgLTYyLDYgKzYzLDcgQEAgaWYgWyAiJF9oYXZlX3dlYmVuZ2luZSIg PSB5ZXMgXTsgdGhlbgogCSAtRFFUX0ZFQVRVUkVfd2ViZW5naW5lX3N5c3RlbV9saWJldmVudD1P TgogCSAtRFFUX0ZFQVRVUkVfd2ViZW5naW5lX3N5c3RlbV9nbj1PTgogCSAtRFFUX0ZFQVRVUkVf d2ViZW5naW5lX3N5c3RlbV9pY3U9T04KKwkgLURRVF9GRUFUVVJFX3dlYmVuZ2luZV9zeXN0ZW1f cmUyPU9OCiAJIC1EUVRfRkVBVFVSRV93ZWJlbmdpbmVfd2VicnRjX3BpcGV3aXJlPU9OCiAJIC1E UVRfRkVBVFVSRV93ZWJlbmdpbmVfZW1iZWRkZWRfYnVpbGQ9T0ZGCiAJIC1EUVRfRkVBVFVSRV93 ZWJlbmdpbmVfcHJvcHJpZXRhcnlfY29kZWNzPU9OIgpAQCAtMTY3LDYgKzE2OSw4IEBAIHByZV9p bnN0YWxsKCkgewogCiBwb3N0X2luc3RhbGwoKSB7CiAJbG9jYWwgX2ZpbGUKKwlybSAtcmYgIiR7 REVTVERJUn0vdXNyL3Rlc3RzIgorCXJtIC1mICIke0RFU1RESVJ9L3Vzci9saWIvcXQ2L2Jpbi90 ZXN0YnJvd3NlciIKIAlmaW5kICIke0RFU1RESVJ9Ii91c3IvbGliL3F0Ni9leGFtcGxlcyBcCiAJ CS1wYXRoICcqL2xpYi9xdDYvKiovbGliL3F0Ni8qJyAtdHlwZSBmIHwKIAl3aGlsZSByZWFkIF9m aWxlOyBkbwoKRnJvbSBjZjVkNjExNjJhZjFiYjZhNjc2N2IyMDJlZWQ2NDIzNjczYjIzMGFjIE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0PTkwbz1DMz1BMG49MjBU cj1FMT1CQT1BN249MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4K RGF0ZTogU3VuLCAyMyBKdW4gMjAyNCAxMDo0NDozMCArMDcwMApTdWJqZWN0OiBbUEFUQ0ggMTYv NDRdIHF0Ni1jaGFydHM6IHVwZGF0ZSB0byA2LjcuMi4KCi0tLQogc3JjcGtncy9xdDYtY2hhcnRz L3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdDYtY2hhcnRzL3RlbXBsYXRlIGIv c3JjcGtncy9xdDYtY2hhcnRzL3RlbXBsYXRlCmluZGV4IDRjZDlmZDYwZWQwMjIwLi4zZTQyYzQw ODJlZDVmOSAxMDA2NDQKLS0tIGEvc3JjcGtncy9xdDYtY2hhcnRzL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3MvcXQ2LWNoYXJ0cy90ZW1wbGF0ZQpAQCAtMSwxNiArMSwxNiBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAncXQ2LWNoYXJ0cycKIHBrZ25hbWU9cXQ2LWNoYXJ0cwotdmVyc2lvbj02LjYuMAor dmVyc2lvbj02LjcuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGhvc3RtYWtlZGVw ZW5kcz0icGVybCBxdDYtZGVjbGFyYXRpdmUtaG9zdC10b29scyIKLW1ha2VkZXBlbmRzPSJxdDYt ZGVjbGFyYXRpdmUtZGV2ZWwiCittYWtlZGVwZW5kcz0icXQ2LWRlY2xhcmF0aXZlLXByaXZhdGUt ZGV2ZWwgcXQ2LWJhc2UtcHJpdmF0ZS1kZXZlbCIKIHNob3J0X2Rlc2M9IkNyb3NzLXBsYXRmb3Jt IGFwcGxpY2F0aW9uIGFuZCBVSSBmcmFtZXdvcmsgLSBjaGFydHMiCiBtYWludGFpbmVyPSJKb2hu IDxtZUBqb2hubnluYXRvci5kZXY+IgogbGljZW5zZT0iR1BMLTMuMC1vbmx5IgogaG9tZXBhZ2U9 Imh0dHBzOi8vcXQuaW8vIgogZGlzdGZpbGVzPSJodHRwOi8vZG93bmxvYWQucXQuaW8vb2ZmaWNp YWxfcmVsZWFzZXMvcXQvJHt2ZXJzaW9uJS4qfS8ke3ZlcnNpb259L3N1Ym1vZHVsZXMvcXRjaGFy dHMtZXZlcnl3aGVyZS1zcmMtJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1lNmJlYWJjZGM3 MGM3NzE5ODE4NDU5ZDJiMmRiNjNkN2IwYjVhZGM1NTcyYjg4MDIzNjhiNjk4ZjY0MjkyY2Y1Citj aGVja3N1bT0wMGY2YTQzNzQ1OGI3ZjJjNGU4MWQ3NDhkYmUyYTA3NzU2N2E5ZTZhZDhkOGUzODIw YjM2YzM5ZGM1Mjc5YmRhCiAKIHByZV9jaGVjaygpIHsKIAlleHBvcnQgUU1MMl9JTVBPUlRfUEFU SD0iJHdya3NyYy9idWlsZC9saWIke1hCUFNfVEFSR0VUX1dPUkRTSVpFfS9xdDYvcW1sIgoKRnJv bSA0ODY3NjVhMmJmNWU4ODY0YTk4OTFiNDI3NmJmOTU0NWFhNTVmZmIxIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0PTkwbz1DMz1BMG49MjBUcj1FMT1CQT1BN249 MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTogU3VuLCAy MyBKdW4gMjAyNCAxMDo0NDozMSArMDcwMApTdWJqZWN0OiBbUEFUQ0ggMTcvNDRdIHF0Ni1jb25u ZWN0aXZpdHk6IHVwZGF0ZSB0byA2LjcuMi4KCi0tLQogc3JjcGtncy9xdDYtY29ubmVjdGl2aXR5 L3RlbXBsYXRlIHwgMTQgKysrKysrKysrKy0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAxMCBpbnNlcnRp b25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LWNvbm5lY3Rp dml0eS90ZW1wbGF0ZSBiL3NyY3BrZ3MvcXQ2LWNvbm5lY3Rpdml0eS90ZW1wbGF0ZQppbmRleCAz MTIyOTE3MDRkZGUyNS4uYTM3ODkyYjYxZjJkOWYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcXQ2LWNv bm5lY3Rpdml0eS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3F0Ni1jb25uZWN0aXZpdHkvdGVtcGxh dGUKQEAgLTEsMTYgKzEsMjIgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3F0Ni1jb25uZWN0aXZp dHknCiBwa2duYW1lPXF0Ni1jb25uZWN0aXZpdHkKLXZlcnNpb249Ni42LjAKK3ZlcnNpb249Ni43 LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNtYWtlCi1ob3N0bWFrZWRlcGVuZHM9InBlcmwg cXQ2LWRlY2xhcmF0aXZlLWhvc3QtdG9vbHMiCi1tYWtlZGVwZW5kcz0icXQ2LWRlY2xhcmF0aXZl LWRldmVsIgorY29uZmlndXJlX2FyZ3M9Ii1EUVRfRkVBVFVSRV9wY3NjbGl0ZT1PTiIKK2hvc3Rt YWtlZGVwZW5kcz0icGVybCBxdDYtZGVjbGFyYXRpdmUtaG9zdC10b29scyBwa2ctY29uZmlnIgor bWFrZWRlcGVuZHM9InF0Ni1kZWNsYXJhdGl2ZS1wcml2YXRlLWRldmVsIGxpYmJsdWV0b290aC1k ZXZlbCBwY3NjbGl0ZS1kZXZlbAorIHF0Ni1iYXNlLXByaXZhdGUtZGV2ZWwiCiBzaG9ydF9kZXNj PSJDcm9zcy1wbGF0Zm9ybSBhcHBsaWNhdGlvbiBhbmQgVUkgZnJhbWV3b3JrIC0gQ29ubmVjdGl2 aXR5IgogbWFpbnRhaW5lcj0ixJBvw6BuIFRy4bqnbiBDw7RuZyBEYW5oIDxjb25nZGFuaHF4QGdt YWlsLmNvbT4iCiBsaWNlbnNlPSJHUEwtMy4wLW9ubHkiCiBob21lcGFnZT0iaHR0cHM6Ly9xdC5p by8iCiBkaXN0ZmlsZXM9Imh0dHA6Ly9kb3dubG9hZC5xdC5pby9vZmZpY2lhbF9yZWxlYXNlcy9x dC8ke3ZlcnNpb24lLip9LyR7dmVyc2lvbn0vc3VibW9kdWxlcy9xdGNvbm5lY3Rpdml0eS1ldmVy eXdoZXJlLXNyYy0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTFjMjljMjYyNDdjMjhlZjE5 YjljYTg3YzM4YjRkNjFhMWY5NGVlOTAyMTg5Nzk2MmUwZDViYTIxNWYxYzQwMTAKK2NoZWNrc3Vt PThlZDMyMWIyNDJmMGU5NTY0NzNhMjk1ZmEzMTY3MDI3MWY5YjNhY2I3OTc1MDg2NDRjYjc0MGY4 OWY2YzA4ZTgKKworZG9fY2hlY2soKSB7CisJY3Rlc3QgLUUgdHN0X3Fsb3dlbmVyZ3ljb250cm9s bGVyCit9CiAKIHF0Ni1jb25uZWN0aXZpdHktZGV2ZWxfcGFja2FnZSgpIHsKIAlkZXBlbmRzPSIk e3NvdXJjZXBrZ30+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0KCkZyb20gZTdiNmRkMDg4ODA5ZTVh YTk1MmNkMDM2OTMzODFkM2EwMDdlODEwNCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog PT9VVEYtOD9xPz1DND05MG89QzM9QTBuPTIwVHI9RTE9QkE9QTduPTIwQz1DMz1CNG5nPTIwRGFu aD89CiA8Y29uZ2RhbmhxeEBnbWFpbC5jb20+CkRhdGU6IFN1biwgMjMgSnVuIDIwMjQgMTA6NDQ6 MzEgKzA3MDAKU3ViamVjdDogW1BBVENIIDE4LzQ0XSBxdDYtaW1hZ2Vmb3JtYXRzOiB1cGRhdGUg dG8gNi43LjIuCgotLS0KIHNyY3BrZ3MvcXQ2LWltYWdlZm9ybWF0cy90ZW1wbGF0ZSB8IDQgKyst LQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL3F0Ni1pbWFnZWZvcm1hdHMvdGVtcGxhdGUgYi9zcmNwa2dzL3F0Ni1p bWFnZWZvcm1hdHMvdGVtcGxhdGUKaW5kZXggZjU1MDEwN2U4MGQwZTEuLjVhNmM4OWVlMDcwODRj IDEwMDY0NAotLS0gYS9zcmNwa2dzL3F0Ni1pbWFnZWZvcm1hdHMvdGVtcGxhdGUKKysrIGIvc3Jj cGtncy9xdDYtaW1hZ2Vmb3JtYXRzL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0 ZSBmaWxlIGZvciAncXQ2LWltYWdlZm9ybWF0cycKIHBrZ25hbWU9cXQ2LWltYWdlZm9ybWF0cwot dmVyc2lvbj02LjYuMAordmVyc2lvbj02LjcuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21h a2UKIGhvc3RtYWtlZGVwZW5kcz0icGVybCBxdDYtYmFzZSIKQEAgLTEwLDQgKzEwLDQgQEAgbWFp bnRhaW5lcj0iSm9obiA8bWVAam9obm55bmF0b3IuZGV2PiIKIGxpY2Vuc2U9IkxHUEwtMy4wLW9u bHkgT1IgR1BMLTIuMC1vbmx5IE9SIEdQTC0zLjAtb25seSIKIGhvbWVwYWdlPSJodHRwczovL3F0 LmlvLyIKIGRpc3RmaWxlcz0iaHR0cDovL2Rvd25sb2FkLnF0LmlvL29mZmljaWFsX3JlbGVhc2Vz L3F0LyR7dmVyc2lvbiUuKn0vJHt2ZXJzaW9ufS9zdWJtb2R1bGVzL3F0aW1hZ2Vmb3JtYXRzLWV2 ZXJ5d2hlcmUtc3JjLSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZTE1NDJjYjUwMTc2ZTIz NzgwOTg5NWM2NTQ5NTk4YzA4NTg3YzYzNzAzZDEwMGJlNTRhYzJkODA2ODM0ZTM4NAorY2hlY2tz dW09ZTFhMWQ4Nzg1ZmFlNjdkMTZhZDBhNDQzYjAxZDVmMzI2NjNhNmI2OGQyNzVmMTgwNmViYWIy NTc0ODVjZTVkNgoKRnJvbSA3N2RlMzU1MWVhODU2ZTNkYmI2ZmQxNzRjNGNjNDQ0ZDZhMzA2Zjk5 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0PTkwbz1DMz1BMG49 MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4QGdtYWlsLmNv bT4KRGF0ZTogU3VuLCAyMyBKdW4gMjAyNCAxMDo0NDozMSArMDcwMApTdWJqZWN0OiBbUEFUQ0gg MTkvNDRdIHF0Ni1sb2NhdGlvbjogdXBkYXRlIHRvIDYuNy4yLgoKLS0tCiBzcmNwa2dzL3F0Ni1s b2NhdGlvbi90ZW1wbGF0ZSB8IDcgKysrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9u cygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1sb2NhdGlvbi90 ZW1wbGF0ZSBiL3NyY3BrZ3MvcXQ2LWxvY2F0aW9uL3RlbXBsYXRlCmluZGV4IDk4NWE4MjQwOGU1 ZTUyLi45OTcwOGM2NjMyMWEzNyAxMDA2NDQKLS0tIGEvc3JjcGtncy9xdDYtbG9jYXRpb24vdGVt cGxhdGUKKysrIGIvc3JjcGtncy9xdDYtbG9jYXRpb24vdGVtcGxhdGUKQEAgLTEsMTYgKzEsMTcg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3F0Ni1sb2NhdGlvbicKIHBrZ25hbWU9cXQ2LWxvY2F0 aW9uCi12ZXJzaW9uPTYuNi4wCit2ZXJzaW9uPTYuNy4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHls ZT1jbWFrZQogaG9zdG1ha2VkZXBlbmRzPSJwZXJsIHF0Ni1iYXNlIHF0Ni1kZWNsYXJhdGl2ZS1o b3N0LXRvb2xzIgotbWFrZWRlcGVuZHM9InF0Ni1zZXJpYWxwb3J0LWRldmVsIHF0Ni1kZWNsYXJh dGl2ZS1kZXZlbCBxdDYtcG9zaXRpb24tZGV2ZWwiCittYWtlZGVwZW5kcz0icXQ2LXNlcmlhbHBv cnQtZGV2ZWwgcXQ2LWRlY2xhcmF0aXZlLXByaXZhdGUtZGV2ZWwgcXQ2LXBvc2l0aW9uLWRldmVs CisgcXQ2LWJhc2UtcHJpdmF0ZS1kZXZlbCIKIHNob3J0X2Rlc2M9IkNyb3NzLXBsYXRmb3JtIGFw cGxpY2F0aW9uIGFuZCBVSSBmcmFtZXdvcmsgLSBsb2NhdGlvbiIKIG1haW50YWluZXI9IkpvaG4g PG1lQGpvaG5ueW5hdG9yLmRldj4iCiBsaWNlbnNlPSIoTEdQTC0zLjAtb25seSBPUiBHUEwtMi4w LW9ubHkgT1IgR1BMLTMuMC1vbmx5KSBBTkQgR1BMLTMuMC1vbmx5IHdpdGggUXQtR1BMLWV4Y2Vw dGlvbi0xLjAiCiBob21lcGFnZT0iaHR0cHM6Ly9xdC5pby8iCiBkaXN0ZmlsZXM9Imh0dHA6Ly9k b3dubG9hZC5xdC5pby9vZmZpY2lhbF9yZWxlYXNlcy9xdC8ke3ZlcnNpb24lLip9LyR7dmVyc2lv bn0vc3VibW9kdWxlcy9xdGxvY2F0aW9uLWV2ZXJ5d2hlcmUtc3JjLSR7dmVyc2lvbn0udGFyLnh6 IgotY2hlY2tzdW09ZjU5NjhiZTc2MTA4YmYyMmFmMzM0YjQwMzAyN2NmMGE4NTkyODRjYjgyNDI1 MGU3MjhiYjhkYWNhMmQ3MDc5NAorY2hlY2tzdW09ZjIzMmRhNThiZjExODliNjlmMWY3MDI5NDE3 ZGRmZWZmY2ZiODAxYjI3NWFlZGM3MjBlMzgyNDRmODhhNDg1ZAogCiBwcmVfY2hlY2soKSB7CiAJ ZXhwb3J0IFFNTDJfSU1QT1JUX1BBVEg9IiR3cmtzcmMvYnVpbGQvbGliJHtYQlBTX1RBUkdFVF9X T1JEU0laRX0vcXQ2L3FtbCIKCkZyb20gZGQzYjNjNzA3ZDRhYWMyYmI1ZjdmMThlNDljMGY5YTkx YTEzOGY3YiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogPT9VVEYtOD9xPz1DND05MG89 QzM9QTBuPTIwVHI9RTE9QkE9QTduPTIwQz1DMz1CNG5nPTIwRGFuaD89CiA8Y29uZ2RhbmhxeEBn bWFpbC5jb20+CkRhdGU6IFN1biwgMjMgSnVuIDIwMjQgMTA6NDQ6MzEgKzA3MDAKU3ViamVjdDog W1BBVENIIDIwLzQ0XSBxdDYtbG90dGllOiB1cGRhdGUgdG8gNi43LjIuCgotLS0KIHNyY3BrZ3Mv cXQ2LWxvdHRpZS1wcml2YXRlLWRldmVsIHwgIDEgKwogc3JjcGtncy9xdDYtbG90dGllL3RlbXBs YXRlICAgICAgfCAyMiArKysrKysrKysrKysrKysrKysrLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDIw IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMjAwMDAgc3JjcGtn cy9xdDYtbG90dGllLXByaXZhdGUtZGV2ZWwKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1sb3R0 aWUtcHJpdmF0ZS1kZXZlbCBiL3NyY3BrZ3MvcXQ2LWxvdHRpZS1wcml2YXRlLWRldmVsCm5ldyBm aWxlIG1vZGUgMTIwMDAwCmluZGV4IDAwMDAwMDAwMDAwMDAwLi5iYTkxNWM1NTg5Yjg5NwotLS0g L2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvcXQ2LWxvdHRpZS1wcml2YXRlLWRldmVsCkBAIC0wLDAg KzEgQEAKK3F0Ni1sb3R0aWUKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQg YS9zcmNwa2dzL3F0Ni1sb3R0aWUvdGVtcGxhdGUgYi9zcmNwa2dzL3F0Ni1sb3R0aWUvdGVtcGxh dGUKaW5kZXggZjVkOGMzNjM2ZTg5MTQuLjg0OTUxNTNkNGI1MTQ4IDEwMDY0NAotLS0gYS9zcmNw a2dzL3F0Ni1sb3R0aWUvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9xdDYtbG90dGllL3RlbXBsYXRl CkBAIC0xLDIxICsxLDIzIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdxdDYtbG90dGllJwogcGtn bmFtZT1xdDYtbG90dGllCi12ZXJzaW9uPTYuNi4wCit2ZXJzaW9uPTYuNy4yCiByZXZpc2lvbj0x CiBidWlsZF9zdHlsZT1jbWFrZQogaG9zdG1ha2VkZXBlbmRzPSJwZXJsIHF0Ni1iYXNlIHF0Ni1k ZWNsYXJhdGl2ZS1ob3N0LXRvb2xzIgotbWFrZWRlcGVuZHM9InF0Ni1kZWNsYXJhdGl2ZS1kZXZl bCIKK21ha2VkZXBlbmRzPSJxdDYtZGVjbGFyYXRpdmUtcHJpdmF0ZS1kZXZlbCBxdDYtYmFzZS1w cml2YXRlLWRldmVsIgogc2hvcnRfZGVzYz0iQ3Jvc3MtcGxhdGZvcm0gYXBwbGljYXRpb24gYW5k IFVJIGZyYW1ld29yayAtIGxvdHRpZSIKIG1haW50YWluZXI9IkpvaG4gPG1lQGpvaG5ueW5hdG9y LmRldj4iCiBsaWNlbnNlPSJHUEwtMy4wLW9ubHkiCiBob21lcGFnZT0iaHR0cHM6Ly9xdC5pby8i CiBkaXN0ZmlsZXM9Imh0dHA6Ly9kb3dubG9hZC5xdC5pby9vZmZpY2lhbF9yZWxlYXNlcy9xdC8k e3ZlcnNpb24lLip9LyR7dmVyc2lvbn0vc3VibW9kdWxlcy9xdGxvdHRpZS1ldmVyeXdoZXJlLXNy Yy0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTFkOThiNDUxMDdhNGI5YTYzMzdiYzdhYzM3 YjllNTRjZGFhNjgxMTBmODE0ZDkzZWVjYzhmYmY4ZDMzOGY4NGYKK2NoZWNrc3VtPWQ5YWZiYzkz NThkMzUyYTRlNTIxZDQ2OTNkNWJkYWQ2YTAwNDI3MmI2ZThhOWVjN2E5Zjg1MTcwMGZlM2YxMGUK IAogaWYgWyAiJFhCUFNfQ0hFQ0tfUEtHUyIgXTsgdGhlbgogCWNvbmZpZ3VyZV9hcmdzPSItRFFU X0JVSUxEX1RFU1RTPU9OIgogZmkKIAorc3VicGFja2FnZXM9InF0Ni1sb3R0aWUtcHJpdmF0ZS1k ZXZlbCBxdDYtbG90dGllLWRldmVsIgorCiBwcmVfY2hlY2soKSB7CiAJZXhwb3J0IFFNTDJfSU1Q T1JUX1BBVEg9IiR3cmtzcmMvYnVpbGQvbGliJHtYQlBTX1RBUkdFVF9XT1JEU0laRX0vcXQ2L3Ft bCIKIH0KQEAgLTI0LDYgKzI2LDIwIEBAIHBvc3RfaW5zdGFsbCgpIHsKIAlybSAtcmYgJHtERVNU RElSfS91c3IvdGVzdHMKIH0KIAorcXQ2LWxvdHRpZS1wcml2YXRlLWRldmVsX3BhY2thZ2UoKSB7 CisJZGVwZW5kcz0icXQ2LWxvdHRpZS1kZXZlbD49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlz aG9ydF9kZXNjKz0iIC0gcHJpdmF0ZSBkZXZlbG9wbWVudCBmaWxlcyIKKwlwa2dfaW5zdGFsbCgp IHsKKwkJZm9yIGRpciBpbiAkKGNkICR7REVTVERJUn0gJiYgZmluZCB1c3IvaW5jbHVkZSAtdHlw ZSBkIC1uYW1lIHByaXZhdGUpOyBkbworCQkJdm1vdmUgIiRkaXIiCisJCWRvbmUKKwkJdm1vdmUg InVzci9saWIvY21ha2UvKlByaXZhdGUiCisJCXZtb3ZlICJ1c3IvbGliL3F0Ni9tZXRhdHlwZXMv KnByaXZhdGVfKl9tZXRhdHlwZXMuanNvbiIKKwkJdm1vdmUgInVzci9saWIvcXQ2L21rc3BlY3Mv bW9kdWxlcy8qX3ByaXZhdGUucHJpIgorCQl2bW92ZSAidXNyL2xpYi9xdDYvbW9kdWxlcy8qUHJp dmF0ZS5qc29uIgorCX0KK30KKwogcXQ2LWxvdHRpZS1kZXZlbF9wYWNrYWdlKCkgewogCWRlcGVu ZHM9IiR7c291cmNlcGtnfT49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKIAlzaG9ydF9kZXNjKz0i IC0gZGV2ZWxvcG1lbnQgZmlsZXMiCgpGcm9tIDIyZjI4MmNkZGZjZmI4MDdhNTBkYmViNjRmNzI5 MWZkZmE5MjQ5YWYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRGLTg/cT89QzQ9 OTBvPUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0yMEM9QzM9QjRuZz0yMERhbmg/PQogPGNvbmdkYW5o cXhAZ21haWwuY29tPgpEYXRlOiBTdW4sIDIzIEp1biAyMDI0IDEwOjQ0OjMxICswNzAwClN1Ympl Y3Q6IFtQQVRDSCAyMS80NF0gcXQ2LW5ldHdvcmthdXRoOiB1cGRhdGUgdG8gNi43LjIuCgotLS0K IHNyY3BrZ3MvcXQ2LW5ldHdvcmthdXRoL3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFu Z2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9xdDYtbmV0d29ya2F1dGgvdGVtcGxhdGUgYi9zcmNwa2dzL3F0Ni1uZXR3b3JrYXV0aC90ZW1w bGF0ZQppbmRleCAxYmJkNmI5NzgwMzQ3NS4uNjVmNDY4ZGE4MWRmNzIgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvcXQ2LW5ldHdvcmthdXRoL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcXQ2LW5ldHdvcmth dXRoL3RlbXBsYXRlCkBAIC0xLDE2ICsxLDE2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdxdDYt bmV0d29ya2F1dGgnCiBwa2duYW1lPXF0Ni1uZXR3b3JrYXV0aAotdmVyc2lvbj02LjYuMAordmVy c2lvbj02LjcuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGhvc3RtYWtlZGVwZW5k cz0icGVybCBxdDYtYmFzZSIKLW1ha2VkZXBlbmRzPSJxdDYtYmFzZS1kZXZlbCBxdDYtcGx1Z2lu LW5ldHdvcmtpbmZvcm1hdGlvbiIKK21ha2VkZXBlbmRzPSJxdDYtYmFzZS1wcml2YXRlLWRldmVs IHF0Ni1wbHVnaW4tbmV0d29ya2luZm9ybWF0aW9uIgogc2hvcnRfZGVzYz0iQ3Jvc3MtcGxhdGZv cm0gYXBwbGljYXRpb24gYW5kIFVJIGZyYW1ld29yayAtIG5ldHdvcmthdXRoIgogbWFpbnRhaW5l cj0iSm9obiA8bWVAam9obm55bmF0b3IuZGV2PiIKIGxpY2Vuc2U9IkdQTC0zLjAtb25seSIKIGhv bWVwYWdlPSJodHRwczovL3F0LmlvLyIKIGRpc3RmaWxlcz0iaHR0cDovL2Rvd25sb2FkLnF0Lmlv L29mZmljaWFsX3JlbGVhc2VzL3F0LyR7dmVyc2lvbiUuKn0vJHt2ZXJzaW9ufS9zdWJtb2R1bGVz L3F0bmV0d29ya2F1dGgtZXZlcnl3aGVyZS1zcmMtJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1 bT0yMGQ1YzA3NDZjMDBlYjMzMzNmMTdjOTg2OTI5NmQwYWNkMGVlZDkzNTE4ZWEyNzM0Yjk4NDA1 Y2M2Y2M4ODMwCitjaGVja3N1bT03ZjA5ODI0ZmNmZTU4OWViMzIyNjBjMzA1ZmY5YTEyNmZlM2Jm OTNiZTIxOGQzNzJlOGU5YzEwZTIxMmRmNDcwCiAKIGlmIFsgIiRYQlBTX0NIRUNLX1BLR1MiIF07 IHRoZW4KIAljb25maWd1cmVfYXJncz0iLURRVF9CVUlMRF9URVNUUz1PTiIKCkZyb20gZjQyY2Ri YmQ0NmQ1NWU0NGRhMjg1NTM3MmFmYzUwMGFjOTg3MzkxMyBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogPT9VVEYtOD9xPz1DND05MG89QzM9QTBuPTIwVHI9RTE9QkE9QTduPTIwQz1DMz1C NG5nPTIwRGFuaD89CiA8Y29uZ2RhbmhxeEBnbWFpbC5jb20+CkRhdGU6IFN1biwgMjMgSnVuIDIw MjQgMTA6NDQ6MzEgKzA3MDAKU3ViamVjdDogW1BBVENIIDIyLzQ0XSBxdDYtcG9zaXRpb246IHVw ZGF0ZSB0byA2LjcuMi4KCi0tLQogc3JjcGtncy9xdDYtcG9zaXRpb24vdGVtcGxhdGUgfCA3ICsr KystLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9xdDYtcG9zaXRpb24vdGVtcGxhdGUgYi9zcmNwa2dzL3F0Ni1w b3NpdGlvbi90ZW1wbGF0ZQppbmRleCAzMmM0MDkzZTE2NDVkZC4uNjFlNDYzZTgxZGQwNWEgMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvcXQ2LXBvc2l0aW9uL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcXQ2 LXBvc2l0aW9uL3RlbXBsYXRlCkBAIC0xLDE2ICsxLDE3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICdxdDYtcG9zaXRpb24nCiBwa2duYW1lPXF0Ni1wb3NpdGlvbgotdmVyc2lvbj02LjYuMAordmVy c2lvbj02LjcuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGhvc3RtYWtlZGVwZW5k cz0icGVybCBxdDYtYmFzZSBxdDYtZGVjbGFyYXRpdmUtaG9zdC10b29scyIKLW1ha2VkZXBlbmRz PSJxdDYtc2VyaWFscG9ydC1kZXZlbCBxdDYtZGVjbGFyYXRpdmUtZGV2ZWwiCittYWtlZGVwZW5k cz0icXQ2LXNlcmlhbHBvcnQtZGV2ZWwgcXQ2LWRlY2xhcmF0aXZlLXByaXZhdGUtZGV2ZWwKKyBx dDYtYmFzZS1wcml2YXRlLWRldmVsIgogc2hvcnRfZGVzYz0iQ3Jvc3MtcGxhdGZvcm0gYXBwbGlj YXRpb24gYW5kIFVJIGZyYW1ld29yayAtIHBvc2l0aW9uIgogbWFpbnRhaW5lcj0iSm9obiA8bWVA am9obm55bmF0b3IuZGV2PiIKIGxpY2Vuc2U9IihMR1BMLTMuMC1vbmx5IE9SIEdQTC0yLjAtb25s eSBPUiBHUEwtMy4wLW9ubHkpIEFORCBHUEwtMy4wLW9ubHkgd2l0aCBRdC1HUEwtZXhjZXB0aW9u LTEuMCIKIGhvbWVwYWdlPSJodHRwczovL3F0LmlvLyIKIGRpc3RmaWxlcz0iaHR0cDovL2Rvd25s b2FkLnF0LmlvL29mZmljaWFsX3JlbGVhc2VzL3F0LyR7dmVyc2lvbiUuKn0vJHt2ZXJzaW9ufS9z dWJtb2R1bGVzL3F0cG9zaXRpb25pbmctZXZlcnl3aGVyZS1zcmMtJHt2ZXJzaW9ufS50YXIueHoi Ci1jaGVja3N1bT04ZDY1MjBmYTNjNzU5ZWQzM2VhZWE3Y2IxYWE3ZTFlN2VjOTk5ZjgyOGU0OTZh NmM1OTI4NDdkNjFmMGZhNTM5CitjaGVja3N1bT0wMjAwMDlmMGFhOGY2YjEwNDI5NjNhNDViNmUx OWYyNzg0Y2M5Mzc5NDljZGI2NzNmM2I4NzYxNTNlMDg3YjFjCiAKIHByZV9jaGVjaygpIHsKIAll eHBvcnQgUU1MMl9JTVBPUlRfUEFUSD0iJHdya3NyYy9idWlsZC9saWIke1hCUFNfVEFSR0VUX1dP UkRTSVpFfS9xdDYvcW1sIgoKRnJvbSA5MzFkNTdjMzYzM2ZlNGY1NDAyYTQyYzI1NmRkMmYwZmZh YWIwZWU4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0PTkwbz1D Mz1BMG49MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4QGdt YWlsLmNvbT4KRGF0ZTogU3VuLCAyMyBKdW4gMjAyNCAxMDo0NDozMSArMDcwMApTdWJqZWN0OiBb UEFUQ0ggMjMvNDRdIHF0Ni1yZW1vdGVvYmplY3RzOiB1cGRhdGUgdG8gNi43LjIuCgotLS0KIHNy Y3BrZ3MvcXQ2LXJlbW90ZW9iamVjdHMvdGVtcGxhdGUgfCA3ICsrKystLS0KIDEgZmlsZSBjaGFu Z2VkLCA0IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9xdDYtcmVtb3Rlb2JqZWN0cy90ZW1wbGF0ZSBiL3NyY3BrZ3MvcXQ2LXJlbW90ZW9iamVjdHMv dGVtcGxhdGUKaW5kZXggNTFkZTVlYmQ3YWI5OTMuLjFmNmFhNjFkYzg4MzFjIDEwMDY0NAotLS0g YS9zcmNwa2dzL3F0Ni1yZW1vdGVvYmplY3RzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcXQ2LXJl bW90ZW9iamVjdHMvdGVtcGxhdGUKQEAgLTEsMTAgKzEsMTEgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ3F0Ni1yZW1vdGVvYmplY3RzJwogcGtnbmFtZT1xdDYtcmVtb3Rlb2JqZWN0cwotdmVyc2lv bj02LjYuMAordmVyc2lvbj02LjcuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGhv c3RtYWtlZGVwZW5kcz0icGVybCBxdDYtZGVjbGFyYXRpdmUtaG9zdC10b29scyBwa2ctY29uZmln IgotbWFrZWRlcGVuZHM9InF0Ni1kZWNsYXJhdGl2ZS1kZXZlbCBxdDYtY29ubmVjdGl2aXR5LWRl dmVsIgorbWFrZWRlcGVuZHM9InF0Ni1kZWNsYXJhdGl2ZS1wcml2YXRlLWRldmVsIHF0Ni1jb25u ZWN0aXZpdHktZGV2ZWwKKyBxdDYtYmFzZS1wcml2YXRlLWRldmVsIgogIyBOb3QgYSBzdHJpY3Qg ZGVwZW5kZW5jeSwgYnV0IGl0J3MgMjAyMiwgZXZlcnlvbmUgc2hvdWxkIHVzZSBUTFMKIGRlcGVu ZHM9InF0Ni1wbHVnaW4tdGxzLW9wZW5zc2wiCiBjaGVja2RlcGVuZHM9IiRkZXBlbmRzIgpAQCAt MTMsNyArMTQsNyBAQCBtYWludGFpbmVyPSLEkG/DoG4gVHLhuqduIEPDtG5nIERhbmggPGNvbmdk YW5ocXhAZ21haWwuY29tPiIKIGxpY2Vuc2U9IihMR1BMLTMuMC1vbmx5IE9SIEdQTC0yLjAtb25s eSBPUiBHUEwtMy4wLW9ubHkpIEFORCBHUEwtMy4wLW9ubHkgd2l0aCBRdC1HUEwtZXhjZXB0aW9u LTEuMCIKIGhvbWVwYWdlPSJodHRwczovL3F0LmlvLyIKIGRpc3RmaWxlcz0iaHR0cDovL2Rvd25s b2FkLnF0LmlvL29mZmljaWFsX3JlbGVhc2VzL3F0LyR7dmVyc2lvbiUuKn0vJHt2ZXJzaW9ufS9z dWJtb2R1bGVzL3F0cmVtb3Rlb2JqZWN0cy1ldmVyeXdoZXJlLXNyYy0ke3ZlcnNpb259LnRhci54 eiIKLWNoZWNrc3VtPTI2MTE5NGUzNWJiOTQyMDIyNWYwOTVjNThhNWE1NDk2ODY3OTdhM2QyYjdl YTZmMGQ1ODJkN2Q2ODFmMWY3NmIKK2NoZWNrc3VtPTBiOTA2YjgxYWE3ZDZmNGU0N2Q0YTI5OGRh Njc4OTQ0MzNmMzA5NmEwNmY0YzQyMzc3ODhjMWIyY2I5Yjc0ODMKIAogaWYgWyAiJENST1NTX0JV SUxEIiBdOyB0aGVuCiAJaG9zdG1ha2VkZXBlbmRzKz0iIHF0Ni1yZW1vdGVvYmplY3RzIgoKRnJv bSA1ZjkxYjZhOWQwY2Q5NjJlY2U1YzBhNDljOTdhMmY0ZmFmZDY0NzFiIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0PTkwbz1DMz1BMG49MjBUcj1FMT1CQT1BN249 MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTogU3VuLCAy MyBKdW4gMjAyNCAxMDo0NDozMiArMDcwMApTdWJqZWN0OiBbUEFUQ0ggMjQvNDRdIHF0Ni1zY3ht bDogdXBkYXRlIHRvIDYuNy4yLgoKLS0tCiBzcmNwa2dzL3F0Ni1zY3htbC90ZW1wbGF0ZSB8IDkg KysrKystLS0tCiAxIGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LXNjeG1sL3RlbXBsYXRlIGIvc3JjcGtncy9xdDYt c2N4bWwvdGVtcGxhdGUKaW5kZXggMWFhY2E5MDZkZTIxZjAuLmE1ZGZiMWY4NTM1N2RlIDEwMDY0 NAotLS0gYS9zcmNwa2dzL3F0Ni1zY3htbC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3F0Ni1zY3ht bC90ZW1wbGF0ZQpAQCAtMSwyMCArMSwyMSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncXQ2LXNj eG1sJwogcGtnbmFtZT1xdDYtc2N4bWwKLXZlcnNpb249Ni42LjAKK3ZlcnNpb249Ni43LjIKIHJl dmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNtYWtlCitjb25maWd1cmVfYXJncz0iLURRVF9GRUFUVVJF X3NjeG1sX2VjbWFzY3JpcHRkYXRhbW9kZWw9T04iCiBob3N0bWFrZWRlcGVuZHM9InBlcmwgcXQ2 LWRlY2xhcmF0aXZlLWhvc3QtdG9vbHMiCi1tYWtlZGVwZW5kcz0icXQ2LWRlY2xhcmF0aXZlLWRl dmVsIgorbWFrZWRlcGVuZHM9InF0Ni1kZWNsYXJhdGl2ZS1wcml2YXRlLWRldmVsIHF0Ni1iYXNl LXByaXZhdGUtZGV2ZWwiCiBzaG9ydF9kZXNjPSJDcm9zcy1wbGF0Zm9ybSBhcHBsaWNhdGlvbiBh bmQgVUkgZnJhbWV3b3JrIC0gc2N4bWwiCiBtYWludGFpbmVyPSJKb2huIDxtZUBqb2hubnluYXRv ci5kZXY+IgogbGljZW5zZT0iTEdQTC0zLjAtb25seSBPUiBHUEwtMi4wLW9ubHkgT1IgR1BMLTMu MC1vbmx5IgogaG9tZXBhZ2U9Imh0dHBzOi8vcXQuaW8vIgogZGlzdGZpbGVzPSJodHRwOi8vZG93 bmxvYWQucXQuaW8vb2ZmaWNpYWxfcmVsZWFzZXMvcXQvJHt2ZXJzaW9uJS4qfS8ke3ZlcnNpb259 L3N1Ym1vZHVsZXMvcXRzY3htbC1ldmVyeXdoZXJlLXNyYy0ke3ZlcnNpb259LnRhci54eiIKLWNo ZWNrc3VtPTU3ZWNkMGRiNWQ4YjA2M2QwMzM0YzRiMjE0NjE1ODViNDkwNGQ0ODg0Yzg4ZGUxMjVi ZDcyZTk2N2U4YTEwNDMKK2NoZWNrc3VtPTIwZWNmOTM1MDZkNDhmMjdiNDkyYWQzZGQ5ZDg4ODMw ZTA4ZDY0MmZhZWMzMDcxY2U1MzM5NmE4YWUwNWM4NmYKIAogc3VicGFja2FnZXM9InF0Ni1zY3ht bC10b29scyBxdDYtc2N4bWwtZGV2ZWwiCiBpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KLQlj b25maWd1cmVfYXJncz0iLURRVF9GT1JDRV9CVUlMRF9UT09MUz10cnVlIgorCWNvbmZpZ3VyZV9h cmdzKz0iIC1EUVRfRk9SQ0VfQlVJTERfVE9PTFM9dHJ1ZSIKIAlob3N0bWFrZWRlcGVuZHMrPSIg cXQ2LXNjeG1sLXRvb2xzIgogZmkKIAoKRnJvbSAzNmZmNDE4OGVjZDZmZDEyZGM3MjZhYmVjOTZj YjI2NTFhOWIzZDdjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0 PTkwbz1DMz1BMG49MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFu aHF4QGdtYWlsLmNvbT4KRGF0ZTogU3VuLCAyMyBKdW4gMjAyNCAxMDo0NDozMiArMDcwMApTdWJq ZWN0OiBbUEFUQ0ggMjUvNDRdIHF0Ni1zZW5zb3JzOiB1cGRhdGUgdG8gNi43LjIuCgotLS0KIHNy Y3BrZ3MvcXQ2LXNlbnNvcnMvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMg aW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1z ZW5zb3JzL3RlbXBsYXRlIGIvc3JjcGtncy9xdDYtc2Vuc29ycy90ZW1wbGF0ZQppbmRleCBkODM1 ZjI5Y2EwOTFiZS4uOGRiZmQ5MjA3OWJhNDYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcXQ2LXNlbnNv cnMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9xdDYtc2Vuc29ycy90ZW1wbGF0ZQpAQCAtMSwxNiAr MSwxNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncXQ2LXNlbnNvcnMnCiBwa2duYW1lPXF0Ni1z ZW5zb3JzCi12ZXJzaW9uPTYuNi4wCit2ZXJzaW9uPTYuNy4yCiByZXZpc2lvbj0xCiBidWlsZF9z dHlsZT1jbWFrZQogaG9zdG1ha2VkZXBlbmRzPSJwZXJsIHF0Ni1kZWNsYXJhdGl2ZS1ob3N0LXRv b2xzIHBrZy1jb25maWciCi1tYWtlZGVwZW5kcz0icXQ2LWRlY2xhcmF0aXZlLWRldmVsIHF0Ni1z dmctZGV2ZWwiCittYWtlZGVwZW5kcz0icXQ2LWRlY2xhcmF0aXZlLXByaXZhdGUtZGV2ZWwgcXQ2 LXN2Zy1kZXZlbCBxdDYtYmFzZS1wcml2YXRlLWRldmVsIgogc2hvcnRfZGVzYz0iQ3Jvc3MtcGxh dGZvcm0gYXBwbGljYXRpb24gYW5kIFVJIGZyYW1ld29yayAtIFNlbnNvcnMiCiBtYWludGFpbmVy PSLEkG/DoG4gVHLhuqduIEPDtG5nIERhbmggPGNvbmdkYW5ocXhAZ21haWwuY29tPiIKIGxpY2Vu c2U9IihMR1BMLTMuMC1vbmx5IE9SIEdQTC0yLjAtb25seSBPUiBHUEwtMy4wLW9ubHkpIEFORCBH UEwtMy4wLW9ubHkgd2l0aCBRdC1HUEwtZXhjZXB0aW9uLTEuMCIKIGhvbWVwYWdlPSJodHRwczov L3F0LmlvLyIKIGRpc3RmaWxlcz0iaHR0cDovL2Rvd25sb2FkLnF0LmlvL29mZmljaWFsX3JlbGVh c2VzL3F0LyR7dmVyc2lvbiUuKn0vJHt2ZXJzaW9ufS9zdWJtb2R1bGVzL3F0c2Vuc29ycy1ldmVy eXdoZXJlLXNyYy0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTI4ZjBiZTVkNGVhYzEwM2Jh M2JiNjYwZWE2MTgwNmQwZTE5M2MxZmFiOTQ5ZDFjOTVmMmNiN2NiMzlkODQ0OTgKK2NoZWNrc3Vt PWVhZDFkZWM3ODdjNTZlZDRkYzAyZWQ4MTBhZjU0ZmYxZTFmNjg3NWNiNWNjMjUwNmM3NGVlYjk1 NTRlNmJiNTkKIAogcG9zdF9pbnN0YWxsKCkgewogCXJtIC1yZiAke0RFU1RESVJ9L3Vzci90ZXN0 cwoKRnJvbSBhNWNkZWM1NzAyMGRkY2QzYjllZjNmZTIzM2UzYTY3YzI1NDg5NmZlIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0PTkwbz1DMz1BMG49MjBUcj1FMT1C QT1BN249MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTog U3VuLCAyMyBKdW4gMjAyNCAxMDo0NDozMiArMDcwMApTdWJqZWN0OiBbUEFUQ0ggMjYvNDRdIHF0 Ni1zZXJpYWxwb3J0OiB1cGRhdGUgdG8gNi43LjIuCgotLS0KIHNyY3BrZ3MvcXQ2LXNlcmlhbHBv cnQvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwg MyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1zZXJpYWxwb3J0L3RlbXBs YXRlIGIvc3JjcGtncy9xdDYtc2VyaWFscG9ydC90ZW1wbGF0ZQppbmRleCA1YzgwMmZlN2E2ZTI2 My4uNDkxZTE0NjNkYWEzNjYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcXQ2LXNlcmlhbHBvcnQvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9xdDYtc2VyaWFscG9ydC90ZW1wbGF0ZQpAQCAtMSwxNiArMSwx NiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncXQ2LXNlcmlhbHBvcnQnCiBwa2duYW1lPXF0Ni1z ZXJpYWxwb3J0Ci12ZXJzaW9uPTYuNi4wCit2ZXJzaW9uPTYuNy4yCiByZXZpc2lvbj0xCiBidWls ZF9zdHlsZT1jbWFrZQogaG9zdG1ha2VkZXBlbmRzPSJwZXJsIHF0Ni1iYXNlIHBrZy1jb25maWci Ci1tYWtlZGVwZW5kcz0icXQ2LWJhc2UtZGV2ZWwiCittYWtlZGVwZW5kcz0icXQ2LWJhc2UtcHJp dmF0ZS1kZXZlbCIKIHNob3J0X2Rlc2M9IkNyb3NzLXBsYXRmb3JtIGFwcGxpY2F0aW9uIGFuZCBV SSBmcmFtZXdvcmsgLSBzZXJpYWxwb3J0IgogbWFpbnRhaW5lcj0iSm9obiA8bWVAam9obm55bmF0 b3IuZGV2PiIKIGxpY2Vuc2U9IihMR1BMLTMuMC1vbmx5IE9SIEdQTC0yLjAtb25seSBPUiBHUEwt My4wLW9ubHkpIEFORCBHUEwtMy4wLW9ubHkgd2l0aCBRdC1HUEwtZXhjZXB0aW9uLTEuMCIKIGhv bWVwYWdlPSJodHRwczovL3F0LmlvLyIKIGRpc3RmaWxlcz0iaHR0cDovL2Rvd25sb2FkLnF0Lmlv L29mZmljaWFsX3JlbGVhc2VzL3F0LyR7dmVyc2lvbiUuKn0vJHt2ZXJzaW9ufS9zdWJtb2R1bGVz L3F0c2VyaWFscG9ydC1ldmVyeXdoZXJlLXNyYy0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3Vt PWVjZmNiYmYxYzQ3YTY3ZmY1OTlhNDA5YmY3NjgyZmVkNDE2Zjc5Nzg2MGMwMWM5MzRmNWE3OGMz MzZkYTQwNjUKK2NoZWNrc3VtPTIxYzM0Y2QxMTYxY2I1MTk3YmNlYzY2MmQyNmExNzY0N2I1OWI2 ZmRmZjVjMzY0NTc2ODgzYzQyZGJkM2I0ZmMKIAogcXQ2LXNlcmlhbHBvcnQtZGV2ZWxfcGFja2Fn ZSgpIHsKIAlkZXBlbmRzPSIke3NvdXJjZXBrZ30+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0gcXQ2 LWJhc2UtZGV2ZWw+PSR7dmVyc2lvbn1fMSIKCkZyb20gM2U5ZDgwZmNhOTZjYWE4ZTkzZGYzODNk YmI1ZmVmYzk0ZjkyYmIyYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogPT9VVEYtOD9x Pz1DND05MG89QzM9QTBuPTIwVHI9RTE9QkE9QTduPTIwQz1DMz1CNG5nPTIwRGFuaD89CiA8Y29u Z2RhbmhxeEBnbWFpbC5jb20+CkRhdGU6IFN1biwgMjMgSnVuIDIwMjQgMTA6NDQ6MzIgKzA3MDAK U3ViamVjdDogW1BBVENIIDI3LzQ0XSBxdDYtc3BlZWNoOiB1cGRhdGUgdG8gNi43LjIuCgotLS0K IHNyY3BrZ3MvcXQ2LXNwZWVjaC90ZW1wbGF0ZSB8IDggKysrKy0tLS0KIDEgZmlsZSBjaGFuZ2Vk LCA0IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9x dDYtc3BlZWNoL3RlbXBsYXRlIGIvc3JjcGtncy9xdDYtc3BlZWNoL3RlbXBsYXRlCmluZGV4IDc1 OTZhMDU1ZGI1ZGJkLi43NzY5OTVmMjU2N2M3NSAxMDA2NDQKLS0tIGEvc3JjcGtncy9xdDYtc3Bl ZWNoL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcXQ2LXNwZWVjaC90ZW1wbGF0ZQpAQCAtMSwxNyAr MSwxNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncXQ2LXNwZWVjaCcKIHBrZ25hbWU9cXQ2LXNw ZWVjaAotdmVyc2lvbj02LjYuMAordmVyc2lvbj02LjcuMgogcmV2aXNpb249MQogYnVpbGRfc3R5 bGU9Y21ha2UKIGhvc3RtYWtlZGVwZW5kcz0icGVybCBwa2ctY29uZmlnIHF0Ni1kZWNsYXJhdGl2 ZS1ob3N0LXRvb2xzIgotbWFrZWRlcGVuZHM9InF0Ni1iYXNlLWRldmVsIHF0Ni1tdWx0aW1lZGlh LWRldmVsIHF0Ni1kZWNsYXJhdGl2ZS1kZXZlbAotIGZsaXRlLWRldmVsIHNwZWVjaC1kaXNwYXRj aGVyLWRldmVsIGFsc2EtbGliLWRldmVsIgorbWFrZWRlcGVuZHM9InF0Ni1iYXNlLXByaXZhdGUt ZGV2ZWwgcXQ2LWRlY2xhcmF0aXZlLXByaXZhdGUtZGV2ZWwKKyBxdDYtbXVsdGltZWRpYS1kZXZl bCBmbGl0ZS1kZXZlbCBzcGVlY2gtZGlzcGF0Y2hlci1kZXZlbCBhbHNhLWxpYi1kZXZlbCIKIHNo b3J0X2Rlc2M9IkNyb3NzLXBsYXRmb3JtIGFwcGxpY2F0aW9uIGFuZCBVSSBmcmFtZXdvcmsgKFFU NikgLSBTcGVlY2ggY29tcG9uZW50IgogbWFpbnRhaW5lcj0iSm9obiA8bWVAam9obm55bmF0b3Iu ZGV2PiIKIGxpY2Vuc2U9IihMR1BMLTMuMC1vbmx5IE9SIEdQTC0yLjAtb25seSBPUiBHUEwtMy4w LW9ubHkpIEFORCBHUEwtMy4wLW9ubHkgd2l0aCBRdC1HUEwtZXhjZXB0aW9uLTEuMCIKIGhvbWVw YWdlPSJodHRwczovL3d3dy5xdC5pbyIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9kb3dubG9hZC5xdC5p by9vZmZpY2lhbF9yZWxlYXNlcy9xdC8ke3ZlcnNpb24lLip9LyR7dmVyc2lvbn0vc3VibW9kdWxl cy9xdHNwZWVjaC1ldmVyeXdoZXJlLXNyYy0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTk2 OWJkYmZmODI2ODA4ZjBjZmQ4MGU4ZjJlMzU3ZjAwMTc0NDg5ZjMwZDlmODk1MzkwY2Y1OTgxNGFi ZTlmOWMKK2NoZWNrc3VtPWNjOGM3Njk0MDRlM2U0OTcxM2JlMzA0YTczZjkzNjg5MGExZWYyZjg4 ZDU5MDczMjc4NWYzNDY5MmE0ODE0Y2UKIAogaWYgWyAiJFhCUFNfQ0hFQ0tfUEtHUyIgXTsgdGhl bgogCWNvbmZpZ3VyZV9hcmdzPSItRFFUX0JVSUxEX1RFU1RTPU9OIgoKRnJvbSA4MWY0MDliZTI1 YmE1Y2ZhMWFjYmNjMzE3YWQ2YTVjMmE0MzFmZWY0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiA9P1VURi04P3E/PUM0PTkwbz1DMz1BMG49MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0bmc9 MjBEYW5oPz0KIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTogU3VuLCAyMyBKdW4gMjAyNCAx MDo0NDozMiArMDcwMApTdWJqZWN0OiBbUEFUQ0ggMjgvNDRdIHF0Ni12aXJ0dWFsa2V5Ym9hcmQ6 IHVwZGF0ZSB0byA2LjcuMi4KCi0tLQogc3JjcGtncy9xdDYtdmlydHVhbGtleWJvYXJkL3RlbXBs YXRlIHwgNyArKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAzIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LXZpcnR1YWxrZXlib2FyZC90ZW1wbGF0 ZSBiL3NyY3BrZ3MvcXQ2LXZpcnR1YWxrZXlib2FyZC90ZW1wbGF0ZQppbmRleCBmMzBlZjkxMWI3 MDQ2Ni4uNWYwNjAyNWM3NTkzNTggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcXQ2LXZpcnR1YWxrZXli b2FyZC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3F0Ni12aXJ0dWFsa2V5Ym9hcmQvdGVtcGxhdGUK QEAgLTEsMTYgKzEsMTcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3F0Ni12aXJ0dWFsa2V5Ym9h cmQnCiBwa2duYW1lPXF0Ni12aXJ0dWFsa2V5Ym9hcmQKLXZlcnNpb249Ni42LjAKK3ZlcnNpb249 Ni43LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNtYWtlCiBob3N0bWFrZWRlcGVuZHM9InBl cmwgcGtnLWNvbmZpZyBxdDYtZGVjbGFyYXRpdmUtaG9zdC10b29scyIKLW1ha2VkZXBlbmRzPSJx dDYtZGVjbGFyYXRpdmUtZGV2ZWwgcXQ2LXN2Zy1kZXZlbCBodW5zcGVsbC1kZXZlbCIKK21ha2Vk ZXBlbmRzPSJxdDYtZGVjbGFyYXRpdmUtcHJpdmF0ZS1kZXZlbCBxdDYtc3ZnLWRldmVsIGh1bnNw ZWxsLWRldmVsCisgcXQ2LWJhc2UtcHJpdmF0ZS1kZXZlbCIKIHNob3J0X2Rlc2M9IkNyb3NzLXBs YXRmb3JtIGFwcGxpY2F0aW9uIGFuZCBVSSBmcmFtZXdvcmsgLSB2aXJ0dWFsa2V5Ym9hcmQiCiBt YWludGFpbmVyPSJKb2huIDxtZUBqb2hubnluYXRvci5kZXY+IgogbGljZW5zZT0iR1BMLTMuMC1v bmx5IgogaG9tZXBhZ2U9Imh0dHBzOi8vcXQuaW8vIgogZGlzdGZpbGVzPSJodHRwOi8vZG93bmxv YWQucXQuaW8vb2ZmaWNpYWxfcmVsZWFzZXMvcXQvJHt2ZXJzaW9uJS4qfS8ke3ZlcnNpb259L3N1 Ym1vZHVsZXMvcXR2aXJ0dWFsa2V5Ym9hcmQtZXZlcnl3aGVyZS1zcmMtJHt2ZXJzaW9ufS50YXIu eHoiCi1jaGVja3N1bT0yNzg0ZGI0M2Y1MTRiZmQzYTJjZTBlNzllMDA5NmRlZWE5NWEzODY2MjU0 ZDM3NmE5MTM0YmM1MTJiZmE3NzdiCitjaGVja3N1bT0zMjA2NjRiNTVhMDk2MGZmNzljMWI4MjJk Y2Y2ZThjZWJlM2UwOGI3OTExNDdkNDFiNTcwOTk2ZDgxY2UxODBmCiAKIGlmIFsgIiRYQlBTX0NI RUNLX1BLR1MiIF07IHRoZW4KIAljb25maWd1cmVfYXJncz0iLURRVF9CVUlMRF9URVNUUz1PTiIK CkZyb20gNjljOGQyMjA3YWE3Y2JkNjk5MmQ3MWY3ZTU3M2Q0ODQyNTg5NTZmYiBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogPT9VVEYtOD9xPz1DND05MG89QzM9QTBuPTIwVHI9RTE9QkE9 QTduPTIwQz1DMz1CNG5nPTIwRGFuaD89CiA8Y29uZ2RhbmhxeEBnbWFpbC5jb20+CkRhdGU6IFN1 biwgMjMgSnVuIDIwMjQgMTA6NDQ6MzIgKzA3MDAKU3ViamVjdDogW1BBVENIIDI5LzQ0XSBxdDYt d2Vic29ja2V0czogdXBkYXRlIHRvIDYuNy4yLgoKLS0tCiBzcmNwa2dzL3F0Ni13ZWJzb2NrZXRz L3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdDYtd2Vic29ja2V0cy90ZW1wbGF0 ZSBiL3NyY3BrZ3MvcXQ2LXdlYnNvY2tldHMvdGVtcGxhdGUKaW5kZXggMTc2MzE1YzI4NzcyYWQu LjRiODE2ZGIzM2JmYmE3IDEwMDY0NAotLS0gYS9zcmNwa2dzL3F0Ni13ZWJzb2NrZXRzL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvcXQ2LXdlYnNvY2tldHMvdGVtcGxhdGUKQEAgLTEsMTAgKzEsMTAg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3F0Ni13ZWJzb2NrZXRzJwogcGtnbmFtZT1xdDYtd2Vi c29ja2V0cwotdmVyc2lvbj02LjYuMAordmVyc2lvbj02LjcuMgogcmV2aXNpb249MQogYnVpbGRf c3R5bGU9Y21ha2UKIGhvc3RtYWtlZGVwZW5kcz0icGVybCBxdDYtYmFzZSBxdDYtZGVjbGFyYXRp dmUtaG9zdC10b29scyIKLW1ha2VkZXBlbmRzPSJxdDYtYmFzZS1kZXZlbCBxdDYtZGVjbGFyYXRp dmUtZGV2ZWwiCittYWtlZGVwZW5kcz0icXQ2LWJhc2UtcHJpdmF0ZS1kZXZlbCBxdDYtZGVjbGFy YXRpdmUtcHJpdmF0ZS1kZXZlbCIKIGRlcGVuZHM9InF0Ni1wbHVnaW4tdGxzLW9wZW5zc2wiCiBj aGVja2RlcGVuZHM9IiRkZXBlbmRzIgogc2hvcnRfZGVzYz0iQ3Jvc3MtcGxhdGZvcm0gYXBwbGlj YXRpb24gYW5kIFVJIGZyYW1ld29yayAtIHdlYnNvY2tldHMiCkBAIC0xMiw3ICsxMiw3IEBAIG1h aW50YWluZXI9IkpvaG4gPG1lQGpvaG5ueW5hdG9yLmRldj4iCiBsaWNlbnNlPSIoTEdQTC0zLjAt b25seSBPUiBHUEwtMi4wLW9ubHkgT1IgR1BMLTMuMC1vbmx5KSBBTkQgR1BMLTMuMC1vbmx5IHdp dGggUXQtR1BMLWV4Y2VwdGlvbi0xLjAiCiBob21lcGFnZT0iaHR0cHM6Ly9xdC5pby8iCiBkaXN0 ZmlsZXM9Imh0dHA6Ly9kb3dubG9hZC5xdC5pby9vZmZpY2lhbF9yZWxlYXNlcy9xdC8ke3ZlcnNp b24lLip9LyR7dmVyc2lvbn0vc3VibW9kdWxlcy9xdHdlYnNvY2tldHMtZXZlcnl3aGVyZS1zcmMt JHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0yZTA1YjE1YzBjNmU4MmM0ODRjZjNhNGEzOWEz ZTNlNDg0YTZjOGY3MmJjMzFlZTVjZjYxNWQ1MmQwN2RmMzBlCitjaGVja3N1bT01YmRlNGFmNmVj OWNlOGM4NjMyYjc4MmFiNzdiODJkOTEwNzIxYmUyYzcxNGU2ZDM4OTAyNTIxYmNkMWQyMTVmCiAK IGRvX2NoZWNrKCkgewogCWNkIGJ1aWxkCgpGcm9tIDEyZDllMmI5YTMwNTJkOGQwNDQ4M2I2NmQw YzFhM2U5ZGE5ZDgyYjUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRGLTg/cT89 QzQ9OTBvPUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0yMEM9QzM9QjRuZz0yMERhbmg/PQogPGNvbmdk YW5ocXhAZ21haWwuY29tPgpEYXRlOiBTdW4sIDIzIEp1biAyMDI0IDEwOjQ0OjMyICswNzAwClN1 YmplY3Q6IFtQQVRDSCAzMC80NF0gcXQ2LXdlYnZpZXc6IHVwZGF0ZSB0byA2LjcuMi4KCi0tLQog c3JjcGtncy9xdDYtd2Vidmlldy90ZW1wbGF0ZSB8IDEwICsrKysrKystLS0KIDEgZmlsZSBjaGFu Z2VkLCA3IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9xdDYtd2Vidmlldy90ZW1wbGF0ZSBiL3NyY3BrZ3MvcXQ2LXdlYnZpZXcvdGVtcGxhdGUKaW5k ZXggY2MyMjczMDUyOTA3YmUuLmFiZGZhNjU4Mjk0MjlkIDEwMDY0NAotLS0gYS9zcmNwa2dzL3F0 Ni13ZWJ2aWV3L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcXQ2LXdlYnZpZXcvdGVtcGxhdGUKQEAg LTEsMTYgKzEsMjAgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3F0Ni13ZWJ2aWV3JwogcGtnbmFt ZT1xdDYtd2VidmlldwotdmVyc2lvbj02LjYuMAordmVyc2lvbj02LjcuMgogcmV2aXNpb249MQog YnVpbGRfc3R5bGU9Y21ha2UKIGhvc3RtYWtlZGVwZW5kcz0icXQ2LWJhc2UgcXQ2LWRlY2xhcmF0 aXZlLWhvc3QtdG9vbHMiCi1tYWtlZGVwZW5kcz0icXQ2LWJhc2UtZGV2ZWwgcXQ2LWRlY2xhcmF0 aXZlLWRldmVsIHF0Ni13ZWJlbmdpbmUtZGV2ZWwiCittYWtlZGVwZW5kcz0icXQ2LWJhc2UtcHJp dmF0ZS1kZXZlbCBxdDYtZGVjbGFyYXRpdmUtcHJpdmF0ZS1kZXZlbCBxdDYtd2ViZW5naW5lLWRl dmVsIgogc2hvcnRfZGVzYz0iQ3Jvc3MtcGxhdGZvcm0gYXBwbGljYXRpb24gYW5kIFVJIGZyYW1l d29yayAtIFdlYlZpZXciCiBtYWludGFpbmVyPSLEkG/DoG4gVHLhuqduIEPDtG5nIERhbmggPGNv bmdkYW5ocXhAZ21haWwuY29tPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb25seSwgR1BMLTIuMC1vbmx5 LCBMR1BMLTMuMC1vbmx5IgogaG9tZXBhZ2U9Imh0dHBzOi8vd3d3LnF0LmlvIgogZGlzdGZpbGVz PSJodHRwczovL2Rvd25sb2FkLnF0LmlvL29mZmljaWFsX3JlbGVhc2VzL3F0LyR7dmVyc2lvbiUu Kn0vJHt2ZXJzaW9ufS9zdWJtb2R1bGVzL3F0d2Vidmlldy1ldmVyeXdoZXJlLXNyYy0ke3ZlcnNp b259LnRhci54eiIKLWNoZWNrc3VtPWE1YTQ4ZDliNWRmYWM2MGI2NmE3MzdmODQ0ZGM1N2RlMzEx ZGU5ZDE1NGZlMTBjY2Q4ZWM0OTg1MDY3NTMzOTIKK2NoZWNrc3VtPTRjZTEwOTY5MDNkNGZlYzM5 YmZjZDk1ZDQwMTVhY2JmMTA1ZWRkZjY2YTM4NDMwM2NiMGZlODk5ZGQyNGU0ZmUKKworaWYgWyAi JFhCUFNfV09SRFNJWkUkWEJQU19XT1JEU0laRSIgIT0gIjY0JFhCUFNfVEFSR0VUX1dPUkRTSVpF IiBdOyB0aGVuCisJYnJva2VuPSJubyBxdDYtd2ViZW5naW5lIgorZmkKIAogcXQ2LXdlYnZpZXct ZGV2ZWxfcGFja2FnZSgpIHsKIAlkZXBlbmRzPSIke3NvdXJjZXBrZ30+PSR7dmVyc2lvbn1fJHty ZXZpc2lvbn0iCgpGcm9tIGYzZmE1YWQ0YjA0ZmFlNTVkM2EzYTY5ODFiYjAwZjM0NzMyNTkxODIg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRGLTg/cT89QzQ9OTBvPUMzPUEwbj0y MFRyPUUxPUJBPUE3bj0yMEM9QzM9QjRuZz0yMERhbmg/PQogPGNvbmdkYW5ocXhAZ21haWwuY29t PgpEYXRlOiBTdW4sIDIzIEp1biAyMDI0IDEwOjQ0OjMzICswNzAwClN1YmplY3Q6IFtQQVRDSCAz MS80NF0gcHl0aG9uMy1weXF0NjogdXBkYXRlIHRvIDYuNy4wLgoKLS0tCiAuLi5uZWN0aXZpdHkt ZGV2ZWwgPT4gcHl0aG9uMy1weXF0Ni1iaW5kaW5nc30gfCAgIDAKIHNyY3BrZ3MvcHl0aG9uMy1w eXF0Ni1jb3JlLWRldmVsICAgICAgICAgICAgICB8ICAgMSAtCiBzcmNwa2dzL3B5dGhvbjMtcHlx dDYtZGJ1cy1kZXZlbCAgICAgICAgICAgICAgfCAgIDEgLQogc3JjcGtncy9weXRob24zLXB5cXQ2 LWRlY2xhcmF0aXZlLWRldmVsICAgICAgIHwgICAxIC0KIHNyY3BrZ3MvcHl0aG9uMy1weXF0Ni1n dWktZGV2ZWwgICAgICAgICAgICAgICB8ICAgMSAtCiBzcmNwa2dzL3B5dGhvbjMtcHlxdDYtbXVs dGltZWRpYS1kZXZlbCAgICAgICAgfCAgIDEgLQogc3JjcGtncy9weXRob24zLXB5cXQ2LW5ldHdv cmstZGV2ZWwgICAgICAgICAgIHwgICAxIC0KIHNyY3BrZ3MvcHl0aG9uMy1weXF0Ni1vcGVuZ2wt d2lkZ2V0cy1kZXZlbCAgICB8ICAgMSAtCiBzcmNwa2dzL3B5dGhvbjMtcHlxdDYtcGRmLWRldmVs ICAgICAgICAgICAgICAgfCAgIDEgLQogc3JjcGtncy9weXRob24zLXB5cXQ2LXBvc2l0aW9uLWRl dmVsICAgICAgICAgIHwgICAxIC0KIHNyY3BrZ3MvcHl0aG9uMy1weXF0Ni1wcmludHN1cHBvcnQt ZGV2ZWwgICAgICB8ICAgMSAtCiBzcmNwa2dzL3B5dGhvbjMtcHlxdDYtcXVpY2szZC1kZXZlbCAg ICAgICAgICAgfCAgIDEgLQogc3JjcGtncy9weXRob24zLXB5cXQ2LXJlbW90ZW9iamVjdHMtZGV2 ZWwgICAgIHwgICAxIC0KIHNyY3BrZ3MvcHl0aG9uMy1weXF0Ni1zZW5zb3JzLWRldmVsICAgICAg ICAgICB8ICAgMSAtCiBzcmNwa2dzL3B5dGhvbjMtcHlxdDYtc2VyaWFscG9ydC1kZXZlbCAgICAg ICAgfCAgIDEgLQogc3JjcGtncy9weXRob24zLXB5cXQ2LXNwZWVjaC1kZXZlbCAgICAgICAgICAg IHwgICAxIC0KIHNyY3BrZ3MvcHl0aG9uMy1weXF0Ni1zcWwtZGV2ZWwgICAgICAgICAgICAgICB8 ICAgMSAtCiBzcmNwa2dzL3B5dGhvbjMtcHlxdDYtc3ZnLWRldmVsICAgICAgICAgICAgICAgfCAg IDEgLQogc3JjcGtncy9weXRob24zLXB5cXQ2LXRlc3QtZGV2ZWwgICAgICAgICAgICAgIHwgICAx IC0KIHNyY3BrZ3MvcHl0aG9uMy1weXF0Ni10b29scy1kZXZlbCAgICAgICAgICAgICB8ICAgMSAt CiBzcmNwa2dzL3B5dGhvbjMtcHlxdDYtd2ViY2hhbm5lbC1kZXZlbCAgICAgICAgfCAgIDEgLQog c3JjcGtncy9weXRob24zLXB5cXQ2LXdlYnNvY2tldHMtZGV2ZWwgICAgICAgIHwgICAxIC0KIHNy Y3BrZ3MvcHl0aG9uMy1weXF0Ni13aWRnZXRzLWRldmVsICAgICAgICAgICB8ICAgMSAtCiBzcmNw a2dzL3B5dGhvbjMtcHlxdDYteG1sLWRldmVsICAgICAgICAgICAgICAgfCAgIDEgLQogc3JjcGtn cy9weXRob24zLXB5cXQ2L3RlbXBsYXRlICAgICAgICAgICAgICAgIHwgMzM5ICsrKy0tLS0tLS0t LS0tLS0tLQogMjUgZmlsZXMgY2hhbmdlZCwgNTggaW5zZXJ0aW9ucygrKSwgMzA0IGRlbGV0aW9u cygtKQogcmVuYW1lIHNyY3BrZ3Mve3B5dGhvbjMtcHlxdDYtY29ubmVjdGl2aXR5LWRldmVsID0+ IHB5dGhvbjMtcHlxdDYtYmluZGluZ3N9ICgxMDAlKQogZGVsZXRlIG1vZGUgMTIwMDAwIHNyY3Br Z3MvcHl0aG9uMy1weXF0Ni1jb3JlLWRldmVsCiBkZWxldGUgbW9kZSAxMjAwMDAgc3JjcGtncy9w eXRob24zLXB5cXQ2LWRidXMtZGV2ZWwKIGRlbGV0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL3B5dGhv bjMtcHlxdDYtZGVjbGFyYXRpdmUtZGV2ZWwKIGRlbGV0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL3B5 dGhvbjMtcHlxdDYtZ3VpLWRldmVsCiBkZWxldGUgbW9kZSAxMjAwMDAgc3JjcGtncy9weXRob24z LXB5cXQ2LW11bHRpbWVkaWEtZGV2ZWwKIGRlbGV0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL3B5dGhv bjMtcHlxdDYtbmV0d29yay1kZXZlbAogZGVsZXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvcHl0aG9u My1weXF0Ni1vcGVuZ2wtd2lkZ2V0cy1kZXZlbAogZGVsZXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3Mv cHl0aG9uMy1weXF0Ni1wZGYtZGV2ZWwKIGRlbGV0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL3B5dGhv bjMtcHlxdDYtcG9zaXRpb24tZGV2ZWwKIGRlbGV0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL3B5dGhv bjMtcHlxdDYtcHJpbnRzdXBwb3J0LWRldmVsCiBkZWxldGUgbW9kZSAxMjAwMDAgc3JjcGtncy9w eXRob24zLXB5cXQ2LXF1aWNrM2QtZGV2ZWwKIGRlbGV0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL3B5 dGhvbjMtcHlxdDYtcmVtb3Rlb2JqZWN0cy1kZXZlbAogZGVsZXRlIG1vZGUgMTIwMDAwIHNyY3Br Z3MvcHl0aG9uMy1weXF0Ni1zZW5zb3JzLWRldmVsCiBkZWxldGUgbW9kZSAxMjAwMDAgc3JjcGtn cy9weXRob24zLXB5cXQ2LXNlcmlhbHBvcnQtZGV2ZWwKIGRlbGV0ZSBtb2RlIDEyMDAwMCBzcmNw a2dzL3B5dGhvbjMtcHlxdDYtc3BlZWNoLWRldmVsCiBkZWxldGUgbW9kZSAxMjAwMDAgc3JjcGtn cy9weXRob24zLXB5cXQ2LXNxbC1kZXZlbAogZGVsZXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvcHl0 aG9uMy1weXF0Ni1zdmctZGV2ZWwKIGRlbGV0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL3B5dGhvbjMt cHlxdDYtdGVzdC1kZXZlbAogZGVsZXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvcHl0aG9uMy1weXF0 Ni10b29scy1kZXZlbAogZGVsZXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvcHl0aG9uMy1weXF0Ni13 ZWJjaGFubmVsLWRldmVsCiBkZWxldGUgbW9kZSAxMjAwMDAgc3JjcGtncy9weXRob24zLXB5cXQ2 LXdlYnNvY2tldHMtZGV2ZWwKIGRlbGV0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL3B5dGhvbjMtcHlx dDYtd2lkZ2V0cy1kZXZlbAogZGVsZXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvcHl0aG9uMy1weXF0 Ni14bWwtZGV2ZWwKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3B5dGhvbjMtcHlxdDYtY29ubmVjdGl2 aXR5LWRldmVsIGIvc3JjcGtncy9weXRob24zLXB5cXQ2LWJpbmRpbmdzCnNpbWlsYXJpdHkgaW5k ZXggMTAwJQpyZW5hbWUgZnJvbSBzcmNwa2dzL3B5dGhvbjMtcHlxdDYtY29ubmVjdGl2aXR5LWRl dmVsCnJlbmFtZSB0byBzcmNwa2dzL3B5dGhvbjMtcHlxdDYtYmluZGluZ3MKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvcHl0aG9uMy1weXF0Ni1jb3JlLWRldmVsIGIvc3JjcGtncy9weXRob24zLXB5cXQ2 LWNvcmUtZGV2ZWwKZGVsZXRlZCBmaWxlIG1vZGUgMTIwMDAwCmluZGV4IGRkNjAzZDY4MjM0OWZm Li4wMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3B5dGhvbjMtcHlxdDYtY29yZS1kZXZlbAor KysgL2Rldi9udWxsCkBAIC0xICswLDAgQEAKLXB5dGhvbjMtcHlxdDYKXCBObyBuZXdsaW5lIGF0 IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL3B5dGhvbjMtcHlxdDYtZGJ1cy1kZXZl bCBiL3NyY3BrZ3MvcHl0aG9uMy1weXF0Ni1kYnVzLWRldmVsCmRlbGV0ZWQgZmlsZSBtb2RlIDEy MDAwMAppbmRleCBkZDYwM2Q2ODIzNDlmZi4uMDAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9w eXRob24zLXB5cXQ2LWRidXMtZGV2ZWwKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi1weXRo b24zLXB5cXQ2ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9weXRob24zLXB5cXQ2LWRlY2xhcmF0aXZlLWRldmVsIGIvc3JjcGtncy9weXRob24zLXB5cXQ2 LWRlY2xhcmF0aXZlLWRldmVsCmRlbGV0ZWQgZmlsZSBtb2RlIDEyMDAwMAppbmRleCBkZDYwM2Q2 ODIzNDlmZi4uMDAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9weXRob24zLXB5cXQ2LWRlY2xh cmF0aXZlLWRldmVsCisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotcHl0aG9uMy1weXF0Ngpc IE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHl0aG9uMy1w eXF0Ni1ndWktZGV2ZWwgYi9zcmNwa2dzL3B5dGhvbjMtcHlxdDYtZ3VpLWRldmVsCmRlbGV0ZWQg ZmlsZSBtb2RlIDEyMDAwMAppbmRleCBkZDYwM2Q2ODIzNDlmZi4uMDAwMDAwMDAwMDAwMDAKLS0t IGEvc3JjcGtncy9weXRob24zLXB5cXQ2LWd1aS1kZXZlbAorKysgL2Rldi9udWxsCkBAIC0xICsw LDAgQEAKLXB5dGhvbjMtcHlxdDYKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1n aXQgYS9zcmNwa2dzL3B5dGhvbjMtcHlxdDYtbXVsdGltZWRpYS1kZXZlbCBiL3NyY3BrZ3MvcHl0 aG9uMy1weXF0Ni1tdWx0aW1lZGlhLWRldmVsCmRlbGV0ZWQgZmlsZSBtb2RlIDEyMDAwMAppbmRl eCBkZDYwM2Q2ODIzNDlmZi4uMDAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9weXRob24zLXB5 cXQ2LW11bHRpbWVkaWEtZGV2ZWwKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi1weXRob24z LXB5cXQ2ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9w eXRob24zLXB5cXQ2LW5ldHdvcmstZGV2ZWwgYi9zcmNwa2dzL3B5dGhvbjMtcHlxdDYtbmV0d29y ay1kZXZlbApkZWxldGVkIGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggZGQ2MDNkNjgyMzQ5ZmYuLjAw MDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvcHl0aG9uMy1weXF0Ni1uZXR3b3JrLWRldmVsCisr KyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotcHl0aG9uMy1weXF0NgpcIE5vIG5ld2xpbmUgYXQg ZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHl0aG9uMy1weXF0Ni1vcGVuZ2wtd2lk Z2V0cy1kZXZlbCBiL3NyY3BrZ3MvcHl0aG9uMy1weXF0Ni1vcGVuZ2wtd2lkZ2V0cy1kZXZlbApk ZWxldGVkIGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggZGQ2MDNkNjgyMzQ5ZmYuLjAwMDAwMDAwMDAw MDAwCi0tLSBhL3NyY3BrZ3MvcHl0aG9uMy1weXF0Ni1vcGVuZ2wtd2lkZ2V0cy1kZXZlbAorKysg L2Rldi9udWxsCkBAIC0xICswLDAgQEAKLXB5dGhvbjMtcHlxdDYKXCBObyBuZXdsaW5lIGF0IGVu ZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL3B5dGhvbjMtcHlxdDYtcGRmLWRldmVsIGIv c3JjcGtncy9weXRob24zLXB5cXQ2LXBkZi1kZXZlbApkZWxldGVkIGZpbGUgbW9kZSAxMjAwMDAK aW5kZXggZGQ2MDNkNjgyMzQ5ZmYuLjAwMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvcHl0aG9u My1weXF0Ni1wZGYtZGV2ZWwKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi1weXRob24zLXB5 cXQ2ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9weXRo b24zLXB5cXQ2LXBvc2l0aW9uLWRldmVsIGIvc3JjcGtncy9weXRob24zLXB5cXQ2LXBvc2l0aW9u LWRldmVsCmRlbGV0ZWQgZmlsZSBtb2RlIDEyMDAwMAppbmRleCBkZDYwM2Q2ODIzNDlmZi4uMDAw MDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9weXRob24zLXB5cXQ2LXBvc2l0aW9uLWRldmVsCisr KyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotcHl0aG9uMy1weXF0NgpcIE5vIG5ld2xpbmUgYXQg ZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHl0aG9uMy1weXF0Ni1wcmludHN1cHBv cnQtZGV2ZWwgYi9zcmNwa2dzL3B5dGhvbjMtcHlxdDYtcHJpbnRzdXBwb3J0LWRldmVsCmRlbGV0 ZWQgZmlsZSBtb2RlIDEyMDAwMAppbmRleCBkZDYwM2Q2ODIzNDlmZi4uMDAwMDAwMDAwMDAwMDAK LS0tIGEvc3JjcGtncy9weXRob24zLXB5cXQ2LXByaW50c3VwcG9ydC1kZXZlbAorKysgL2Rldi9u dWxsCkBAIC0xICswLDAgQEAKLXB5dGhvbjMtcHlxdDYKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm aWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL3B5dGhvbjMtcHlxdDYtcXVpY2szZC1kZXZlbCBiL3Ny Y3BrZ3MvcHl0aG9uMy1weXF0Ni1xdWljazNkLWRldmVsCmRlbGV0ZWQgZmlsZSBtb2RlIDEyMDAw MAppbmRleCBkZDYwM2Q2ODIzNDlmZi4uMDAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9weXRo b24zLXB5cXQ2LXF1aWNrM2QtZGV2ZWwKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi1weXRo b24zLXB5cXQ2ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9weXRob24zLXB5cXQ2LXJlbW90ZW9iamVjdHMtZGV2ZWwgYi9zcmNwa2dzL3B5dGhvbjMtcHlx dDYtcmVtb3Rlb2JqZWN0cy1kZXZlbApkZWxldGVkIGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggZGQ2 MDNkNjgyMzQ5ZmYuLjAwMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvcHl0aG9uMy1weXF0Ni1y ZW1vdGVvYmplY3RzLWRldmVsCisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotcHl0aG9uMy1w eXF0NgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHl0 aG9uMy1weXF0Ni1zZW5zb3JzLWRldmVsIGIvc3JjcGtncy9weXRob24zLXB5cXQ2LXNlbnNvcnMt ZGV2ZWwKZGVsZXRlZCBmaWxlIG1vZGUgMTIwMDAwCmluZGV4IGRkNjAzZDY4MjM0OWZmLi4wMDAw MDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3B5dGhvbjMtcHlxdDYtc2Vuc29ycy1kZXZlbAorKysg L2Rldi9udWxsCkBAIC0xICswLDAgQEAKLXB5dGhvbjMtcHlxdDYKXCBObyBuZXdsaW5lIGF0IGVu ZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL3B5dGhvbjMtcHlxdDYtc2VyaWFscG9ydC1k ZXZlbCBiL3NyY3BrZ3MvcHl0aG9uMy1weXF0Ni1zZXJpYWxwb3J0LWRldmVsCmRlbGV0ZWQgZmls ZSBtb2RlIDEyMDAwMAppbmRleCBkZDYwM2Q2ODIzNDlmZi4uMDAwMDAwMDAwMDAwMDAKLS0tIGEv c3JjcGtncy9weXRob24zLXB5cXQ2LXNlcmlhbHBvcnQtZGV2ZWwKKysrIC9kZXYvbnVsbApAQCAt MSArMCwwIEBACi1weXRob24zLXB5cXQ2ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZm IC0tZ2l0IGEvc3JjcGtncy9weXRob24zLXB5cXQ2LXNwZWVjaC1kZXZlbCBiL3NyY3BrZ3MvcHl0 aG9uMy1weXF0Ni1zcGVlY2gtZGV2ZWwKZGVsZXRlZCBmaWxlIG1vZGUgMTIwMDAwCmluZGV4IGRk NjAzZDY4MjM0OWZmLi4wMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3B5dGhvbjMtcHlxdDYt c3BlZWNoLWRldmVsCisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotcHl0aG9uMy1weXF0Ngpc IE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHl0aG9uMy1w eXF0Ni1zcWwtZGV2ZWwgYi9zcmNwa2dzL3B5dGhvbjMtcHlxdDYtc3FsLWRldmVsCmRlbGV0ZWQg ZmlsZSBtb2RlIDEyMDAwMAppbmRleCBkZDYwM2Q2ODIzNDlmZi4uMDAwMDAwMDAwMDAwMDAKLS0t IGEvc3JjcGtncy9weXRob24zLXB5cXQ2LXNxbC1kZXZlbAorKysgL2Rldi9udWxsCkBAIC0xICsw LDAgQEAKLXB5dGhvbjMtcHlxdDYKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1n aXQgYS9zcmNwa2dzL3B5dGhvbjMtcHlxdDYtc3ZnLWRldmVsIGIvc3JjcGtncy9weXRob24zLXB5 cXQ2LXN2Zy1kZXZlbApkZWxldGVkIGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggZGQ2MDNkNjgyMzQ5 ZmYuLjAwMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvcHl0aG9uMy1weXF0Ni1zdmctZGV2ZWwK KysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi1weXRob24zLXB5cXQ2ClwgTm8gbmV3bGluZSBh dCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9weXRob24zLXB5cXQ2LXRlc3QtZGV2 ZWwgYi9zcmNwa2dzL3B5dGhvbjMtcHlxdDYtdGVzdC1kZXZlbApkZWxldGVkIGZpbGUgbW9kZSAx MjAwMDAKaW5kZXggZGQ2MDNkNjgyMzQ5ZmYuLjAwMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3Mv cHl0aG9uMy1weXF0Ni10ZXN0LWRldmVsCisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotcHl0 aG9uMy1weXF0NgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvcHl0aG9uMy1weXF0Ni10b29scy1kZXZlbCBiL3NyY3BrZ3MvcHl0aG9uMy1weXF0Ni10b29s cy1kZXZlbApkZWxldGVkIGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggZGQ2MDNkNjgyMzQ5ZmYuLjAw MDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvcHl0aG9uMy1weXF0Ni10b29scy1kZXZlbAorKysg L2Rldi9udWxsCkBAIC0xICswLDAgQEAKLXB5dGhvbjMtcHlxdDYKXCBObyBuZXdsaW5lIGF0IGVu ZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL3B5dGhvbjMtcHlxdDYtd2ViY2hhbm5lbC1k ZXZlbCBiL3NyY3BrZ3MvcHl0aG9uMy1weXF0Ni13ZWJjaGFubmVsLWRldmVsCmRlbGV0ZWQgZmls ZSBtb2RlIDEyMDAwMAppbmRleCBkZDYwM2Q2ODIzNDlmZi4uMDAwMDAwMDAwMDAwMDAKLS0tIGEv c3JjcGtncy9weXRob24zLXB5cXQ2LXdlYmNoYW5uZWwtZGV2ZWwKKysrIC9kZXYvbnVsbApAQCAt MSArMCwwIEBACi1weXRob24zLXB5cXQ2ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZm IC0tZ2l0IGEvc3JjcGtncy9weXRob24zLXB5cXQ2LXdlYnNvY2tldHMtZGV2ZWwgYi9zcmNwa2dz L3B5dGhvbjMtcHlxdDYtd2Vic29ja2V0cy1kZXZlbApkZWxldGVkIGZpbGUgbW9kZSAxMjAwMDAK aW5kZXggZGQ2MDNkNjgyMzQ5ZmYuLjAwMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvcHl0aG9u My1weXF0Ni13ZWJzb2NrZXRzLWRldmVsCisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotcHl0 aG9uMy1weXF0NgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvcHl0aG9uMy1weXF0Ni13aWRnZXRzLWRldmVsIGIvc3JjcGtncy9weXRob24zLXB5cXQ2LXdp ZGdldHMtZGV2ZWwKZGVsZXRlZCBmaWxlIG1vZGUgMTIwMDAwCmluZGV4IGRkNjAzZDY4MjM0OWZm Li4wMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3B5dGhvbjMtcHlxdDYtd2lkZ2V0cy1kZXZl bAorKysgL2Rldi9udWxsCkBAIC0xICswLDAgQEAKLXB5dGhvbjMtcHlxdDYKXCBObyBuZXdsaW5l IGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL3B5dGhvbjMtcHlxdDYteG1sLWRl dmVsIGIvc3JjcGtncy9weXRob24zLXB5cXQ2LXhtbC1kZXZlbApkZWxldGVkIGZpbGUgbW9kZSAx MjAwMDAKaW5kZXggZGQ2MDNkNjgyMzQ5ZmYuLjAwMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3Mv cHl0aG9uMy1weXF0Ni14bWwtZGV2ZWwKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi1weXRo b24zLXB5cXQ2ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9weXRob24zLXB5cXQ2L3RlbXBsYXRlIGIvc3JjcGtncy9weXRob24zLXB5cXQ2L3RlbXBsYXRl CmluZGV4IDE1MWJhNmE1NTRlZDdiLi5kZTRmYmRmOTFiMWE1OSAxMDA2NDQKLS0tIGEvc3JjcGtn cy9weXRob24zLXB5cXQ2L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcHl0aG9uMy1weXF0Ni90ZW1w bGF0ZQpAQCAtMSwxMCArMSwxMSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncHl0aG9uMy1weXF0 NicKIHBrZ25hbWU9cHl0aG9uMy1weXF0NgotdmVyc2lvbj02LjYuMQotcmV2aXNpb249MgordmVy c2lvbj02LjcuMAorcmV2aXNpb249MQogYnVpbGRfc3R5bGU9c2lwLWJ1aWxkCiBidWlsZF9oZWxw ZXI9cWVtdQotY29uZmlndXJlX2FyZ3M9Ii0tY29uZmlybS1saWNlbnNlIC0tZGJ1cyAkWEJQU19D Uk9TU19CQVNFL3Vzci9pbmNsdWRlL2RidXMtMS4wIgorY29uZmlndXJlX2FyZ3M9Ii0tY29uZmly bS1saWNlbnNlIC0tZGJ1cyAkWEJQU19DUk9TU19CQVNFL3Vzci9pbmNsdWRlL2RidXMtMS4wCisg LS12ZXJib3NlIgogaG9zdG1ha2VkZXBlbmRzPSJxdDYtYmFzZSBweXRob24zLWRidXMgcHl0aG9u My1QeVF0LWJ1aWxkZXIgcGtnLWNvbmZpZyIKIG1ha2VkZXBlbmRzPSJxdDYtYmFzZS1kZXZlbCBx dDYtZGVjbGFyYXRpdmUtZGV2ZWwgcXQ2LXRvb2xzLWRldmVsCiAgcXQ2LXdlYmNoYW5uZWwtZGV2 ZWwgcXQ2LW11bHRpbWVkaWEtZGV2ZWwgcXQ2LWxvY2F0aW9uLWRldmVsCkBAIC0xNywzMyArMTgs MzMgQEAgbWFpbnRhaW5lcj0ixJBvw6BuIFRy4bqnbiBDw7RuZyBEYW5oIDxjb25nZGFuaHF4QGdt YWlsLmNvbT4iCiBsaWNlbnNlPSJHUEwtMy4wLW9ubHkiCiBob21lcGFnZT0iaHR0cHM6Ly93d3cu cml2ZXJiYW5rY29tcHV0aW5nLmNvbS9zb2Z0d2FyZS9weXF0LyIKIGRpc3RmaWxlcz0iJFBZUElf U0lURS9QL1B5UXQ2L1B5UXQ2LSR2ZXJzaW9uLnRhci5neiIKLWNoZWNrc3VtPTlmMTU4YWEyOWQy MDUxNDJjNTZmMGYzNWQwNzc4NGI4ZGYwYmUyODM3OGQyMGE5N2JjZGE4YmQ2NGZmZDAzNzkKK2No ZWNrc3VtPTNkMzFiMmM1OWRjMzc4ZWUyNmUxNjU4NmQ5NDY5ODQyNDgzNTg4MTQyZmMzNzcyODBh YWQyMmFhZjJmYTYyMzUKIGxpYjMyZGlzYWJsZWQ9eWVzCiAKLXN1YnBhY2thZ2VzPSJweXRob24z LXB5cXQ2LWNvcmUtZGV2ZWwKK3N1YnBhY2thZ2VzPSJweXRob24zLXB5cXQ2LWJpbmRpbmdzCiAg cHl0aG9uMy1weXF0Ni1kZXZlbCBweXRob24zLXB5cXQ2LWRldmVsLXRvb2xzCi0gcHl0aG9uMy1w eXF0Ni1jb25uZWN0aXZpdHkgcHl0aG9uMy1weXF0Ni1jb25uZWN0aXZpdHktZGV2ZWwKLSBweXRo b24zLXB5cXQ2LWRidXMgcHl0aG9uMy1weXF0Ni1kYnVzLWRldmVsCi0gcHl0aG9uMy1weXF0Ni1k ZWNsYXJhdGl2ZSBweXRob24zLXB5cXQ2LWRlY2xhcmF0aXZlLWRldmVsCi0gcHl0aG9uMy1weXF0 Ni1ndWkgcHl0aG9uMy1weXF0Ni1ndWktZGV2ZWwKLSBweXRob24zLXB5cXQ2LW11bHRpbWVkaWEg cHl0aG9uMy1weXF0Ni1tdWx0aW1lZGlhLWRldmVsCi0gcHl0aG9uMy1weXF0Ni1uZXR3b3JrIHB5 dGhvbjMtcHlxdDYtbmV0d29yay1kZXZlbAotIHB5dGhvbjMtcHlxdDYtb3BlbmdsLXdpZGdldHMg cHl0aG9uMy1weXF0Ni1vcGVuZ2wtd2lkZ2V0cy1kZXZlbAotIHB5dGhvbjMtcHlxdDYtcG9zaXRp b24gcHl0aG9uMy1weXF0Ni1wb3NpdGlvbi1kZXZlbAotIHB5dGhvbjMtcHlxdDYtcHJpbnRzdXBw b3J0IHB5dGhvbjMtcHlxdDYtcHJpbnRzdXBwb3J0LWRldmVsCi0gcHl0aG9uMy1weXF0Ni1xdWlj azNkIHB5dGhvbjMtcHlxdDYtcXVpY2szZC1kZXZlbAotIHB5dGhvbjMtcHlxdDYtcmVtb3Rlb2Jq ZWN0cyBweXRob24zLXB5cXQ2LXJlbW90ZW9iamVjdHMtZGV2ZWwKLSBweXRob24zLXB5cXQ2LXNl bnNvcnMgcHl0aG9uMy1weXF0Ni1zZW5zb3JzLWRldmVsCi0gcHl0aG9uMy1weXF0Ni1zZXJpYWxw b3J0IHB5dGhvbjMtcHlxdDYtc2VyaWFscG9ydC1kZXZlbAotIHB5dGhvbjMtcHlxdDYtc3BlZWNo IHB5dGhvbjMtcHlxdDYtc3BlZWNoLWRldmVsCi0gcHl0aG9uMy1weXF0Ni1zcWwgcHl0aG9uMy1w eXF0Ni1zcWwtZGV2ZWwKLSBweXRob24zLXB5cXQ2LXN2ZyBweXRob24zLXB5cXQ2LXN2Zy1kZXZl bAotIHB5dGhvbjMtcHlxdDYtdGVzdCBweXRob24zLXB5cXQ2LXRlc3QtZGV2ZWwKLSBweXRob24z LXB5cXQ2LXRvb2xzIHB5dGhvbjMtcHlxdDYtdG9vbHMtZGV2ZWwKLSBweXRob24zLXB5cXQ2LXdl YnNvY2tldHMgcHl0aG9uMy1weXF0Ni13ZWJzb2NrZXRzLWRldmVsCi0gcHl0aG9uMy1weXF0Ni13 ZWJjaGFubmVsIHB5dGhvbjMtcHlxdDYtd2ViY2hhbm5lbC1kZXZlbAotIHB5dGhvbjMtcHlxdDYt d2lkZ2V0cyBweXRob24zLXB5cXQ2LXdpZGdldHMtZGV2ZWwKLSBweXRob24zLXB5cXQ2LXhtbCBw eXRob24zLXB5cXQ2LXhtbC1kZXZlbAorIHB5dGhvbjMtcHlxdDYtY29ubmVjdGl2aXR5CisgcHl0 aG9uMy1weXF0Ni1kYnVzCisgcHl0aG9uMy1weXF0Ni1kZWNsYXJhdGl2ZQorIHB5dGhvbjMtcHlx dDYtZ3VpCisgcHl0aG9uMy1weXF0Ni1tdWx0aW1lZGlhCisgcHl0aG9uMy1weXF0Ni1uZXR3b3Jr CisgcHl0aG9uMy1weXF0Ni1vcGVuZ2wtd2lkZ2V0cworIHB5dGhvbjMtcHlxdDYtcG9zaXRpb24K KyBweXRob24zLXB5cXQ2LXByaW50c3VwcG9ydAorIHB5dGhvbjMtcHlxdDYtcXVpY2szZAorIHB5 dGhvbjMtcHlxdDYtcmVtb3Rlb2JqZWN0cworIHB5dGhvbjMtcHlxdDYtc2Vuc29ycworIHB5dGhv bjMtcHlxdDYtc2VyaWFscG9ydAorIHB5dGhvbjMtcHlxdDYtc3BlZWNoCisgcHl0aG9uMy1weXF0 Ni1zcWwKKyBweXRob24zLXB5cXQ2LXN2ZworIHB5dGhvbjMtcHlxdDYtdGVzdAorIHB5dGhvbjMt cHlxdDYtdG9vbHMKKyBweXRob24zLXB5cXQ2LXdlYnNvY2tldHMKKyBweXRob24zLXB5cXQ2LXdl YmNoYW5uZWwKKyBweXRob24zLXB5cXQ2LXdpZGdldHMKKyBweXRob24zLXB5cXQ2LXhtbAogICIK IAogY2FzZSAiJFhCUFNfVEFSR0VUX01BQ0hJTkUiIGluCkBAIC01MiwxOCArNTMsNDIgQEAgY2Fz ZSAiJFhCUFNfVEFSR0VUX01BQ0hJTkUiIGluCiAJYXJtdjUqIHwgYXJtdjYqKSA7OwogCSopCiAJ CW1ha2VkZXBlbmRzKz0iIHF0Ni1wZGYtZGV2ZWwiCi0JCXN1YnBhY2thZ2VzKz0iIHB5dGhvbjMt cHlxdDYtcGRmIHB5dGhvbjMtcHlxdDYtcGRmLWRldmVsIgorCQlzdWJwYWNrYWdlcys9IiBweXRo b24zLXB5cXQ2LXBkZiIKIAkJOzsKIGVzYWMKICMgU3BsaXQgbGlrZSBxdDYsIGJ1dCBrZWVwIHF0 Ni1jb3JlIGluIG1haW4gcGtnCiAKLXB5dGhvbjMtcHlxdDYtY29yZS1kZXZlbF9wYWNrYWdlKCkg ewotCWxpYjMyZGlzYWJsZWQ9eWVzCitweXRob24zLXB5cXQ2LWJpbmRpbmdzX3BhY2thZ2UoKSB7 CisJbGliMzJkaXNhYmxlZD15ZXMKKwlyZXBsYWNlcz0icHl0aG9uMy1weXF0Ni1jb3JlLWRldmVs CisJIHB5dGhvbjMtcHlxdDYtY29ubmVjdGl2aXR5LWRldmVsCisJIHB5dGhvbjMtcHlxdDYtZGJ1 cy1kZXZlbAorCSBweXRob24zLXB5cXQ2LWRlY2xhcmF0aXZlLWRldmVsCisJIHB5dGhvbjMtcHlx dDYtZ3VpLWRldmVsCisJIHB5dGhvbjMtcHlxdDYtbXVsdGltZWRpYS1kZXZlbAorCSBweXRob24z LXB5cXQ2LW5ldHdvcmstZGV2ZWwKKwkgcHl0aG9uMy1weXF0Ni1vcGVuZ2wtd2lkZ2V0cy1kZXZl bAorCSBweXRob24zLXB5cXQ2LXBkZi1kZXZlbAorCSBweXRob24zLXB5cXQ2LXBvc2l0aW9uLWRl dmVsCisJIHB5dGhvbjMtcHlxdDYtcHJpbnRzdXBwb3J0LWRldmVsCisJIHB5dGhvbjMtcHlxdDYt cXVpY2szZC1kZXZlbAorCSBweXRob24zLXB5cXQ2LXJlbW90ZW9iamVjdHMtZGV2ZWwKKwkgcHl0 aG9uMy1weXF0Ni1zZW5zb3JzLWRldmVsCisJIHB5dGhvbjMtcHlxdDYtc2VyaWFscG9ydC1kZXZl bAorCSBweXRob24zLXB5cXQ2LXNwZWVjaC1kZXZlbAorCSBweXRob24zLXB5cXQ2LXNxbC1kZXZl bAorCSBweXRob24zLXB5cXQ2LXN2Zy1kZXZlbAorCSBweXRob24zLXB5cXQ2LXRlc3QtZGV2ZWwK KwkgcHl0aG9uMy1weXF0Ni10b29scy1kZXZlbAorCSBweXRob24zLXB5cXQ2LXdlYnNvY2tldHMt ZGV2ZWwKKwkgcHl0aG9uMy1weXF0Ni13ZWJjaGFubmVsLWRldmVsCisJIHB5dGhvbjMtcHlxdDYt d2lkZ2V0cy1kZXZlbAorCSBweXRob24zLXB5cXQ2LXhtbC1kZXZlbCIKIAlkZXBlbmRzPSIke3Nv dXJjZXBrZ30+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0KIAkgcXQ2LWJhc2UtZGV2ZWwgcHl0aG9u My1kZXZlbCBzaXAiCi0Jc2hvcnRfZGVzYz0iJHtzaG9ydF9kZXNjfSAtIGNvcmUgZGV2ZWxvcG1l bnQgZmlsZXMiCisJc2hvcnRfZGVzYz0iJHtzaG9ydF9kZXNjfSAtIFNJUCBiaW5kaW5ncyIKIAlw a2dfaW5zdGFsbCgpIHsKLQkJdm1vdmUgIiR7cHkzX3NpdGVsaWJ9L1B5UXQ2L2JpbmRpbmdzL1F0 Q29yZSIKKwkJdm1vdmUgIiR7cHkzX3NpdGVsaWJ9L1B5UXQ2L2JpbmRpbmdzIgogCX0KIH0KIApA QCAtNzcsMTYgKzEwMiw2IEBAIHB5dGhvbjMtcHlxdDYtZGJ1c19wYWNrYWdlKCkgewogCX0KIH0K IAotcHl0aG9uMy1weXF0Ni1kYnVzLWRldmVsX3BhY2thZ2UoKSB7Ci0JbGliMzJkaXNhYmxlZD15 ZXMKLQlkZXBlbmRzPSJweXRob24zLXB5cXQ2LWRidXM+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0K LQkgcHl0aG9uMy1weXF0Ni1jb3JlLWRldmVsPj0ke3ZlcnNpb259XyR7cmV2aXNpb259IgotCXNo b3J0X2Rlc2M9IiR7c2hvcnRfZGVzY30gLSBEQnVzIC0gZGV2ZWxvcG1lbnQgZmlsZXMiCi0JcGtn X2luc3RhbGwoKSB7Ci0JCXZtb3ZlICIke3B5M19zaXRlbGlifS9QeVF0Ni9iaW5kaW5ncy9RdERC dXMiCi0JfQotfQotCiBweXRob24zLXB5cXQ2LXRvb2xzX3BhY2thZ2UoKSB7CiAJbGliMzJkaXNh YmxlZD15ZXMKIAlkZXBlbmRzPSIke3NvdXJjZXBrZ30+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0i CkBAIC05OCwxNyArMTEzLDYgQEAgcHl0aG9uMy1weXF0Ni10b29sc19wYWNrYWdlKCkgewogCX0K IH0KIAotcHl0aG9uMy1weXF0Ni10b29scy1kZXZlbF9wYWNrYWdlKCkgewotCWxpYjMyZGlzYWJs ZWQ9eWVzCi0JZGVwZW5kcz0icHl0aG9uMy1weXF0Ni10b29scz49JHt2ZXJzaW9ufV8ke3Jldmlz aW9ufSBxdDYtdG9vbHMtZGV2ZWwKLQkgcHl0aG9uMy1weXF0Ni13aWRnZXRzLWRldmVsPj0ke3Zl cnNpb259XyR7cmV2aXNpb259IgotCXNob3J0X2Rlc2M9IiR7c2hvcnRfZGVzY30gLSBUb29scyAt IGRldmVsb3BtZW50IGZpbGVzIgotCXBrZ19pbnN0YWxsKCkgewotCQl2bW92ZSAiJHtweTNfc2l0 ZWxpYn0vUHlRdDYvYmluZGluZ3MvUXREZXNpZ25lciIKLQkJdm1vdmUgIiR7cHkzX3NpdGVsaWJ9 L1B5UXQ2L2JpbmRpbmdzL1F0SGVscCIKLQl9Ci19Ci0KIHB5dGhvbjMtcHlxdDYtZ3VpX3BhY2th Z2UoKSB7CiAJbGliMzJkaXNhYmxlZD15ZXMKIAlkZXBlbmRzPSIke3NvdXJjZXBrZ30+PSR7dmVy c2lvbn1fJHtyZXZpc2lvbn0iCkBAIC0xMTksMTcgKzEyMyw2IEBAIHB5dGhvbjMtcHlxdDYtZ3Vp X3BhY2thZ2UoKSB7CiAJfQogfQogCi1weXRob24zLXB5cXQ2LWd1aS1kZXZlbF9wYWNrYWdlKCkg ewotCWxpYjMyZGlzYWJsZWQ9eWVzCi0JZGVwZW5kcz0icHl0aG9uMy1weXF0Ni1ndWk+PSR7dmVy c2lvbn1fJHtyZXZpc2lvbn0KLQkgcHl0aG9uMy1weXF0Ni1jb3JlLWRldmVsPj0ke3ZlcnNpb259 XyR7cmV2aXNpb259IgotCXNob3J0X2Rlc2M9IiR7c2hvcnRfZGVzY30gLSBHVUkgLSBkZXZlbG9w bWVudCBmaWxlcyIKLQlwa2dfaW5zdGFsbCgpIHsKLQkJdm1vdmUgIiR7cHkzX3NpdGVsaWJ9L1B5 UXQ2L2JpbmRpbmdzL1F0R3VpIgotCQl2bW92ZSAiJHtweTNfc2l0ZWxpYn0vUHlRdDYvYmluZGlu Z3MvUXRPcGVuR0wiCi0JfQotfQotCiBweXRob24zLXB5cXQ2LW5ldHdvcmtfcGFja2FnZSgpIHsK IAlsaWIzMmRpc2FibGVkPXllcwogCWRlcGVuZHM9IiR7c291cmNlcGtnfT49JHt2ZXJzaW9ufV8k e3JldmlzaW9ufSIKQEAgLTEzOSwxNiArMTMyLDYgQEAgcHl0aG9uMy1weXF0Ni1uZXR3b3JrX3Bh Y2thZ2UoKSB7CiAJfQogfQogCi1weXRob24zLXB5cXQ2LW5ldHdvcmstZGV2ZWxfcGFja2FnZSgp IHsKLQlsaWIzMmRpc2FibGVkPXllcwotCWRlcGVuZHM9InB5dGhvbjMtcHlxdDYtbmV0d29yaz49 JHt2ZXJzaW9ufV8ke3JldmlzaW9ufQotCSBweXRob24zLXB5cXQ2LWNvcmUtZGV2ZWw+PSR7dmVy c2lvbn1fJHtyZXZpc2lvbn0iCi0Jc2hvcnRfZGVzYz0iJHtzaG9ydF9kZXNjfSAtIE5ldHdvcmsi Ci0JcGtnX2luc3RhbGwoKSB7Ci0JCXZtb3ZlICIke3B5M19zaXRlbGlifS9QeVF0Ni9iaW5kaW5n cy9RdE5ldHdvcmsiCi0JfQotfQotCiBweXRob24zLXB5cXQ2LW9wZW5nbC13aWRnZXRzX3BhY2th Z2UoKSB7CiAJbGliMzJkaXNhYmxlZD15ZXMKIAlkZXBlbmRzPSIke3NvdXJjZXBrZ30+PSR7dmVy c2lvbn1fJHtyZXZpc2lvbn0iCkBAIC0xNTgsMTYgKzE0MSw2IEBAIHB5dGhvbjMtcHlxdDYtb3Bl bmdsLXdpZGdldHNfcGFja2FnZSgpIHsKIAl9CiB9CiAKLXB5dGhvbjMtcHlxdDYtb3BlbmdsLXdp ZGdldHMtZGV2ZWxfcGFja2FnZSgpIHsKLQlsaWIzMmRpc2FibGVkPXllcwotCWRlcGVuZHM9InB5 dGhvbjMtcHlxdDYtb3BlbmdsLXdpZGdldHM+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0KLQkgcHl0 aG9uMy1weXF0Ni13aWRnZXRzLWRldmVsPj0ke3ZlcnNpb259XyR7cmV2aXNpb259IgotCXNob3J0 X2Rlc2M9IiR7c2hvcnRfZGVzY30gLSBPcGVuR0wgV2lkZ2V0cyAtIGRldmVsb3BtZW50IGZpbGVz IgotCXBrZ19pbnN0YWxsKCkgewotCQl2bW92ZSAiJHtweTNfc2l0ZWxpYn0vUHlRdDYvYmluZGlu Z3MvUXRPcGVuR0xXaWRnZXRzIgotCX0KLX0KLQogcHl0aG9uMy1weXF0Ni1wcmludHN1cHBvcnRf cGFja2FnZSgpIHsKIAlsaWIzMmRpc2FibGVkPXllcwogCWRlcGVuZHM9IiR7c291cmNlcGtnfT49 JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKQEAgLTE3NywxNiArMTUwLDYgQEAgcHl0aG9uMy1weXF0 Ni1wcmludHN1cHBvcnRfcGFja2FnZSgpIHsKIAl9CiB9CiAKLXB5dGhvbjMtcHlxdDYtcHJpbnRz dXBwb3J0LWRldmVsX3BhY2thZ2UoKSB7Ci0JbGliMzJkaXNhYmxlZD15ZXMKLQlkZXBlbmRzPSJw eXRob24zLXB5cXQ2LXByaW50c3VwcG9ydD49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufQotCSBweXRo b24zLXB5cXQ2LXdpZGdldHMtZGV2ZWw+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCi0Jc2hvcnRf ZGVzYz0iJHtzaG9ydF9kZXNjfSAtIFByaW50IFN1cHBvcnQgLSBkZXZlbG9wbWVudCBmaWxlcyIK LQlwa2dfaW5zdGFsbCgpIHsKLQkJdm1vdmUgIiR7cHkzX3NpdGVsaWJ9L1B5UXQ2L2JpbmRpbmdz L1F0UHJpbnRTdXBwb3J0IgotCX0KLX0KLQogcHl0aG9uMy1weXF0Ni1kZWNsYXJhdGl2ZV9wYWNr YWdlKCkgewogCWxpYjMyZGlzYWJsZWQ9eWVzCiAJZGVwZW5kcz0iJHtzb3VyY2Vwa2d9Pj0ke3Zl cnNpb259XyR7cmV2aXNpb259IgpAQCAtMTk5LDE4ICsxNjIsNiBAQCBweXRob24zLXB5cXQ2LWRl Y2xhcmF0aXZlX3BhY2thZ2UoKSB7CiAJfQogfQogCi1weXRob24zLXB5cXQ2LWRlY2xhcmF0aXZl LWRldmVsX3BhY2thZ2UoKSB7Ci0JbGliMzJkaXNhYmxlZD15ZXMKLQlkZXBlbmRzPSJweXRob24z LXB5cXQ2LWRlY2xhcmF0aXZlPj0ke3ZlcnNpb259XyR7cmV2aXNpb259Ci0JIHF0Ni1kZWNsYXJh dGl2ZS1kZXZlbCBweXRob24zLXB5cXQ2LXdpZGdldHMtZGV2ZWw+PSR7dmVyc2lvbn1fJHtyZXZp c2lvbn0iCi0Jc2hvcnRfZGVzYz0iJHtzaG9ydF9kZXNjfSAtIERlY2xhcmF0aXZlIC0gZGV2ZWxv cG1lbnQgZmlsZXMiCi0JcGtnX2luc3RhbGwoKSB7Ci0JCXZtb3ZlICIke3B5M19zaXRlbGlifS9Q eVF0Ni9iaW5kaW5ncy9RdFFtbCIKLQkJdm1vdmUgIiR7cHkzX3NpdGVsaWJ9L1B5UXQ2L2JpbmRp bmdzL1F0UXVpY2siCi0JCXZtb3ZlICIke3B5M19zaXRlbGlifS9QeVF0Ni9iaW5kaW5ncy9RdFF1 aWNrV2lkZ2V0cyIKLQl9Ci19Ci0KIHB5dGhvbjMtcHlxdDYtcXVpY2szZF9wYWNrYWdlKCkgewog CWxpYjMyZGlzYWJsZWQ9eWVzCiAJZGVwZW5kcz0iJHtzb3VyY2Vwa2d9Pj0ke3ZlcnNpb259XyR7 cmV2aXNpb259IgpAQCAtMjIwLDE2ICsxNzEsNiBAQCBweXRob24zLXB5cXQ2LXF1aWNrM2RfcGFj a2FnZSgpIHsKIAl9CiB9CiAKLXB5dGhvbjMtcHlxdDYtcXVpY2szZC1kZXZlbF9wYWNrYWdlKCkg ewotCWxpYjMyZGlzYWJsZWQ9eWVzCi0JZGVwZW5kcz0icHl0aG9uMy1weXF0Ni1xdWljazNkPj0k e3ZlcnNpb259XyR7cmV2aXNpb259IHF0Ni1xdWljazNkLWRldmVsCi0JIHB5dGhvbjMtcHlxdDYt ZGVjbGFyYXRpdmUtZGV2ZWw+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCi0Jc2hvcnRfZGVzYz0i JHtzaG9ydF9kZXNjfSAtIFF1aWNrM0QgLSBkZXZlbG9wbWVudCBmaWxlcyIKLQlwa2dfaW5zdGFs bCgpIHsKLQkJdm1vdmUgIiR7cHkzX3NpdGVsaWJ9L1B5UXQ2L2JpbmRpbmdzL1F0UXVpY2szRCIK LQl9Ci19Ci0KIHB5dGhvbjMtcHlxdDYtc3FsX3BhY2thZ2UoKSB7CiAJbGliMzJkaXNhYmxlZD15 ZXMKIAlkZXBlbmRzPSIke3NvdXJjZXBrZ30+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCkBAIC0y MzksMTYgKzE4MCw2IEBAIHB5dGhvbjMtcHlxdDYtc3FsX3BhY2thZ2UoKSB7CiAJfQogfQogCi1w eXRob24zLXB5cXQ2LXNxbC1kZXZlbF9wYWNrYWdlKCkgewotCWxpYjMyZGlzYWJsZWQ9eWVzCi0J ZGVwZW5kcz0icHl0aG9uMy1weXF0Ni1zcWw+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0KLQkgcHl0 aG9uMy1weXF0Ni13aWRnZXRzLWRldmVsPj0ke3ZlcnNpb259XyR7cmV2aXNpb259IgotCXNob3J0 X2Rlc2M9IiR7c2hvcnRfZGVzY30gLSBTUUwgLSBkZXZlbG9wbWVudCBmaWxlcyIKLQlwa2dfaW5z dGFsbCgpIHsKLQkJdm1vdmUgIiR7cHkzX3NpdGVsaWJ9L1B5UXQ2L2JpbmRpbmdzL1F0U3FsIgot CX0KLX0KLQogcHl0aG9uMy1weXF0Ni1zdmdfcGFja2FnZSgpIHsKIAlsaWIzMmRpc2FibGVkPXll cwogCWRlcGVuZHM9IiR7c291cmNlcGtnfT49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKQEAgLTI1 OSwxNyArMTkwLDYgQEAgcHl0aG9uMy1weXF0Ni1zdmdfcGFja2FnZSgpIHsKIAl9CiB9CiAKLXB5 dGhvbjMtcHlxdDYtc3ZnLWRldmVsX3BhY2thZ2UoKSB7Ci0JbGliMzJkaXNhYmxlZD15ZXMKLQlk ZXBlbmRzPSJweXRob24zLXB5cXQ2LXN2Zz49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSBxdDYtc3Zn LWRldmVsCi0JIHB5dGhvbjMtcHlxdDYtd2lkZ2V0cy1kZXZlbD49JHt2ZXJzaW9ufV8ke3Jldmlz aW9ufSIKLQlzaG9ydF9kZXNjPSIke3Nob3J0X2Rlc2N9IC0gc3ZnIC0gZGV2ZWxvcG1lbnQgZmls ZXMiCi0JcGtnX2luc3RhbGwoKSB7Ci0JCXZtb3ZlICIke3B5M19zaXRlbGlifS9QeVF0Ni9iaW5k aW5ncy9RdFN2ZyIKLQkJdm1vdmUgIiR7cHkzX3NpdGVsaWJ9L1B5UXQ2L2JpbmRpbmdzL1F0U3Zn V2lkZ2V0cyIKLQl9Ci19Ci0KIHB5dGhvbjMtcHlxdDYtdGVzdF9wYWNrYWdlKCkgewogCWxpYjMy ZGlzYWJsZWQ9eWVzCiAJZGVwZW5kcz0iJHtzb3VyY2Vwa2d9Pj0ke3ZlcnNpb259XyR7cmV2aXNp b259IgpAQCAtMjc5LDE2ICsxOTksNiBAQCBweXRob24zLXB5cXQ2LXRlc3RfcGFja2FnZSgpIHsK IAl9CiB9CiAKLXB5dGhvbjMtcHlxdDYtdGVzdC1kZXZlbF9wYWNrYWdlKCkgewotCWxpYjMyZGlz YWJsZWQ9eWVzCi0JZGVwZW5kcz0icHl0aG9uMy1weXF0Ni10ZXN0Pj0ke3ZlcnNpb259XyR7cmV2 aXNpb259Ci0JIHB5dGhvbjMtcHlxdDYtd2lkZ2V0cy1kZXZlbD49JHt2ZXJzaW9ufV8ke3Jldmlz aW9ufSIKLQlzaG9ydF9kZXNjPSIke3Nob3J0X2Rlc2N9IC0gVGVzdCAtIGRldmVsb3BtZW50IGZp bGVzIgotCXBrZ19pbnN0YWxsKCkgewotCQl2bW92ZSAiJHtweTNfc2l0ZWxpYn0vUHlRdDYvYmlu ZGluZ3MvUXRUZXN0IgotCX0KLX0KLQogcHl0aG9uMy1weXF0Ni13aWRnZXRzX3BhY2thZ2UoKSB7 CiAJbGliMzJkaXNhYmxlZD15ZXMKIAlkZXBlbmRzPSIke3NvdXJjZXBrZ30+PSR7dmVyc2lvbn1f JHtyZXZpc2lvbn0iCkBAIC0yOTgsMTYgKzIwOCw2IEBAIHB5dGhvbjMtcHlxdDYtd2lkZ2V0c19w YWNrYWdlKCkgewogCX0KIH0KIAotcHl0aG9uMy1weXF0Ni13aWRnZXRzLWRldmVsX3BhY2thZ2Uo KSB7Ci0JbGliMzJkaXNhYmxlZD15ZXMKLQlkZXBlbmRzPSJweXRob24zLXB5cXQ2LXdpZGdldHM+ PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0KLQkgcHl0aG9uMy1weXF0Ni1ndWktZGV2ZWw+PSR7dmVy c2lvbn1fJHtyZXZpc2lvbn0iCi0Jc2hvcnRfZGVzYz0iJHtzaG9ydF9kZXNjfSAtIFdpZGdldHMi Ci0JcGtnX2luc3RhbGwoKSB7Ci0JCXZtb3ZlICIke3B5M19zaXRlbGlifS9QeVF0Ni9iaW5kaW5n cy9RdFdpZGdldHMiCi0JfQotfQotCiBweXRob24zLXB5cXQ2LXhtbF9wYWNrYWdlKCkgewogCWxp YjMyZGlzYWJsZWQ9eWVzCiAJZGVwZW5kcz0iJHtzb3VyY2Vwa2d9Pj0ke3ZlcnNpb259XyR7cmV2 aXNpb259IgpAQCAtMzE3LDE2ICsyMTcsNiBAQCBweXRob24zLXB5cXQ2LXhtbF9wYWNrYWdlKCkg ewogCX0KIH0KIAotcHl0aG9uMy1weXF0Ni14bWwtZGV2ZWxfcGFja2FnZSgpIHsKLQlsaWIzMmRp c2FibGVkPXllcwotCWRlcGVuZHM9IiR7c291cmNlcGtnfT49JHt2ZXJzaW9ufV8ke3JldmlzaW9u fQotCSBweXRob24zLXB5cXQ2LWNvcmUtZGV2ZWw+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCi0J c2hvcnRfZGVzYz0iJHtzaG9ydF9kZXNjfSAtIFhtbCAtIGRldmVsb3BtZW50IGZpbGVzIgotCXBr Z19pbnN0YWxsKCkgewotCQl2bW92ZSAiJHtweTNfc2l0ZWxpYn0vUHlRdDYvYmluZGluZ3MvUXRY bWwiCi0JfQotfQotCiBweXRob24zLXB5cXQ2LWRldmVsLXRvb2xzX3BhY2thZ2UoKSB7CiAJbGli MzJkaXNhYmxlZD15ZXMKIAlkZXBlbmRzPSIke3NvdXJjZXBrZ30+PSR7dmVyc2lvbn1fJHtyZXZp c2lvbn0iCkBAIC0zNDEsNyArMjMxLDcgQEAgcHl0aG9uMy1weXF0Ni1kZXZlbC10b29sc19wYWNr YWdlKCkgewogcHl0aG9uMy1weXF0Ni1kZXZlbF9wYWNrYWdlKCkgewogCWxpYjMyZGlzYWJsZWQ9 eWVzCiAJYnVpbGRfc3R5bGU9bWV0YQotCWRlcGVuZHM9IiR7c3VicGFja2FnZXMvcHl0aG9uMy1w eXF0Ni1kZXZlbCAvfSIKKwlkZXBlbmRzPSJweXRob24zLXB5cXQ2LWRldmVsLXRvb2xzIHB5dGhv bjMtcHlxdDYtYmluZGluZ3MiCiAJc2hvcnRfZGVzYz0iJHtzaG9ydF9kZXNjfSAtIGRldmVsb3Bt ZW50IGZpbGVzIgogfQogCkBAIC0zNTQsMTcgKzI0NCw2IEBAIHB5dGhvbjMtcHlxdDYtd2Vic29j a2V0c19wYWNrYWdlKCkgewogCX0KIH0KIAotcHl0aG9uMy1weXF0Ni13ZWJzb2NrZXRzLWRldmVs X3BhY2thZ2UoKSB7Ci0JbGliMzJkaXNhYmxlZD15ZXMKLQlzaG9ydF9kZXNjKz0iIC0gV2ViU29j a2V0cyAtIGRldmVsb3BtZW50IGZpbGVzIgotCWRlcGVuZHM9InB5dGhvbjMtcHlxdDYtd2Vic29j a2V0cz49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufQotCSBweXRob24zLXB5cXQ2LWNvcmUtZGV2ZWw+ PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0KLQkgcXQ2LXdlYnNvY2tldHMtZGV2ZWwiCi0JcGtnX2lu c3RhbGwoKSB7Ci0JCXZtb3ZlICIke3B5M19zaXRlbGlifS9QeVF0Ni9iaW5kaW5ncy9RdFdlYlNv Y2tldHMiCi0JfQotfQotCiBweXRob24zLXB5cXQ2LXdlYmNoYW5uZWxfcGFja2FnZSgpIHsKIAls aWIzMmRpc2FibGVkPXllcwogCXNob3J0X2Rlc2MrPSIgLSBXZWJDaGFubmVsIgpAQCAtMzc0LDE3 ICsyNTMsNiBAQCBweXRob24zLXB5cXQ2LXdlYmNoYW5uZWxfcGFja2FnZSgpIHsKIAl9CiB9CiAK LXB5dGhvbjMtcHlxdDYtd2ViY2hhbm5lbC1kZXZlbF9wYWNrYWdlKCkgewotCWxpYjMyZGlzYWJs ZWQ9eWVzCi0Jc2hvcnRfZGVzYys9IiAtIFdlYkNoYW5uZWwgLSBkZXZlbG9wbWVudCBmaWxlcyIK LQlkZXBlbmRzPSJweXRob24zLXB5cXQ2LXdlYmNoYW5uZWw+PSR7dmVyc2lvbn1fJHtyZXZpc2lv bn0KLQkgcHl0aG9uMy1weXF0Ni1jb3JlLWRldmVsPj0ke3ZlcnNpb259XyR7cmV2aXNpb259Ci0J IHF0Ni13ZWJjaGFubmVsLWRldmVsIgotCXBrZ19pbnN0YWxsKCkgewotCQl2bW92ZSAiJHtweTNf c2l0ZWxpYn0vUHlRdDYvYmluZGluZ3MvUXRXZWJDaGFubmVsIgotCX0KLX0KLQogcHl0aG9uMy1w eXF0Ni1tdWx0aW1lZGlhX3BhY2thZ2UoKSB7CiAJbGliMzJkaXNhYmxlZD15ZXMKIAlzaG9ydF9k ZXNjKz0iIC0gTXVsdGltZWRpYSIKQEAgLTM5NSwxOCArMjYzLDYgQEAgcHl0aG9uMy1weXF0Ni1t dWx0aW1lZGlhX3BhY2thZ2UoKSB7CiAJfQogfQogCi1weXRob24zLXB5cXQ2LW11bHRpbWVkaWEt ZGV2ZWxfcGFja2FnZSgpIHsKLQlsaWIzMmRpc2FibGVkPXllcwotCXNob3J0X2Rlc2MrPSIgLSBN dWx0aW1lZGlhIC0gZGV2ZWxvcG1lbnQgZmlsZXMiCi0JZGVwZW5kcz0icHl0aG9uMy1weXF0Ni1t dWx0aW1lZGlhPj0ke3ZlcnNpb259XyR7cmV2aXNpb259Ci0JIHB5dGhvbjMtcHlxdDYtY29yZS1k ZXZlbD49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufQotCSBxdDYtbXVsdGltZWRpYS1kZXZlbCIKLQlw a2dfaW5zdGFsbCgpIHsKLQkJdm1vdmUgIiR7cHkzX3NpdGVsaWJ9L1B5UXQ2L2JpbmRpbmdzL1F0 TXVsdGltZWRpYSoiCi0JCXZtb3ZlICIke3B5M19zaXRlbGlifS9QeVF0Ni9iaW5kaW5ncy9RdFNw YXRpYWxBdWRpbyoiCi0JfQotfQotCiBweXRob24zLXB5cXQ2LXBvc2l0aW9uX3BhY2thZ2UoKSB7 CiAJbGliMzJkaXNhYmxlZD15ZXMKIAlzaG9ydF9kZXNjKz0iIC0gUG9zaXRpb24iCkBAIC00MTYs MTcgKzI3Miw2IEBAIHB5dGhvbjMtcHlxdDYtcG9zaXRpb25fcGFja2FnZSgpIHsKIAl9CiB9CiAK LXB5dGhvbjMtcHlxdDYtcG9zaXRpb24tZGV2ZWxfcGFja2FnZSgpIHsKLQlsaWIzMmRpc2FibGVk PXllcwotCXNob3J0X2Rlc2MrPSIgLSBQb3NpdGlvbiAtIGRldmVsb3BtZW50IGZpbGVzIgotCWRl cGVuZHM9InB5dGhvbjMtcHlxdDYtcG9zaXRpb24+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0KLQkg cHl0aG9uMy1weXF0Ni1jb3JlLWRldmVsPj0ke3ZlcnNpb259XyR7cmV2aXNpb259Ci0JIHF0Ni1s b2NhdGlvbi1kZXZlbCIKLQlwa2dfaW5zdGFsbCgpIHsKLQkJdm1vdmUgIiR7cHkzX3NpdGVsaWJ9 L1B5UXQ2L2JpbmRpbmdzL1F0UG9zaXRpb25pbmciCi0JfQotfQotCiBweXRob24zLXB5cXQ2LXJl bW90ZW9iamVjdHNfcGFja2FnZSgpIHsKIAlsaWIzMmRpc2FibGVkPXllcwogCXNob3J0X2Rlc2Mr PSIgLSBSZW1vdGVPYmplY3RzIgpAQCAtNDM2LDE3ICsyODEsNiBAQCBweXRob24zLXB5cXQ2LXJl bW90ZW9iamVjdHNfcGFja2FnZSgpIHsKIAl9CiB9CiAKLXB5dGhvbjMtcHlxdDYtcmVtb3Rlb2Jq ZWN0cy1kZXZlbF9wYWNrYWdlKCkgewotCWxpYjMyZGlzYWJsZWQ9eWVzCi0Jc2hvcnRfZGVzYys9 IiAtIFJlbW90ZU9iamVjdHMgLSBkZXZlbG9wbWVudCBmaWxlcyIKLQlkZXBlbmRzPSJweXRob24z LXB5cXQ2LXJlbW90ZW9iamVjdHM+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0KLQkgcHl0aG9uMy1w eXF0Ni1jb3JlLWRldmVsPj0ke3ZlcnNpb259XyR7cmV2aXNpb259Ci0JIHF0Ni1yZW1vdGVvYmpl Y3RzLWRldmVsIgotCXBrZ19pbnN0YWxsKCkgewotCQl2bW92ZSAiJHtweTNfc2l0ZWxpYn0vUHlR dDYvYmluZGluZ3MvUXRSZW1vdGVPYmplY3RzIgotCX0KLX0KLQogcHl0aG9uMy1weXF0Ni1zZW5z b3JzX3BhY2thZ2UoKSB7CiAJbGliMzJkaXNhYmxlZD15ZXMKIAlzaG9ydF9kZXNjKz0iIC0gU2Vu c29ycyIKQEAgLTQ1NiwxNyArMjkwLDYgQEAgcHl0aG9uMy1weXF0Ni1zZW5zb3JzX3BhY2thZ2Uo KSB7CiAJfQogfQogCi1weXRob24zLXB5cXQ2LXNlbnNvcnMtZGV2ZWxfcGFja2FnZSgpIHsKLQls aWIzMmRpc2FibGVkPXllcwotCXNob3J0X2Rlc2MrPSIgLSBTZW5zb3JzIC0gZGV2ZWxvcG1lbnQg ZmlsZXMiCi0JZGVwZW5kcz0icHl0aG9uMy1weXF0Ni1zZW5zb3JzPj0ke3ZlcnNpb259XyR7cmV2 aXNpb259Ci0JIHB5dGhvbjMtcHlxdDYtY29yZS1kZXZlbD49JHt2ZXJzaW9ufV8ke3JldmlzaW9u fQotCSBxdDYtc2Vuc29ycy1kZXZlbCIKLQlwa2dfaW5zdGFsbCgpIHsKLQkJdm1vdmUgIiR7cHkz X3NpdGVsaWJ9L1B5UXQ2L2JpbmRpbmdzL1F0U2Vuc29ycyIKLQl9Ci19Ci0KIHB5dGhvbjMtcHlx dDYtc2VyaWFscG9ydF9wYWNrYWdlKCkgewogCWxpYjMyZGlzYWJsZWQ9eWVzCiAJc2hvcnRfZGVz Yys9IiAtIFNlcmlhbFBvcnQiCkBAIC00NzYsMTcgKzI5OSw2IEBAIHB5dGhvbjMtcHlxdDYtc2Vy aWFscG9ydF9wYWNrYWdlKCkgewogCX0KIH0KIAotcHl0aG9uMy1weXF0Ni1zZXJpYWxwb3J0LWRl dmVsX3BhY2thZ2UoKSB7Ci0JbGliMzJkaXNhYmxlZD15ZXMKLQlzaG9ydF9kZXNjKz0iIC0gU2Vy aWFsUG9ydCAtIGRldmVsb3BtZW50IGZpbGVzIgotCWRlcGVuZHM9InB5dGhvbjMtcHlxdDYtc2Vy aWFscG9ydD49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufQotCSBweXRob24zLXB5cXQ2LWNvcmUtZGV2 ZWw+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0KLQkgcXQ2LXNlcmlhbHBvcnQtZGV2ZWwiCi0JcGtn X2luc3RhbGwoKSB7Ci0JCXZtb3ZlICIke3B5M19zaXRlbGlifS9QeVF0Ni9iaW5kaW5ncy9RdFNl cmlhbFBvcnQiCi0JfQotfQotCiBweXRob24zLXB5cXQ2LWNvbm5lY3Rpdml0eV9wYWNrYWdlKCkg ewogCWxpYjMyZGlzYWJsZWQ9eWVzCiAJc2hvcnRfZGVzYys9IiAtIENvbm5lY3Rpdml0eSIKQEAg LTQ5NywxOCArMzA5LDYgQEAgcHl0aG9uMy1weXF0Ni1jb25uZWN0aXZpdHlfcGFja2FnZSgpIHsK IAl9CiB9CiAKLXB5dGhvbjMtcHlxdDYtY29ubmVjdGl2aXR5LWRldmVsX3BhY2thZ2UoKSB7Ci0J bGliMzJkaXNhYmxlZD15ZXMKLQlzaG9ydF9kZXNjKz0iIC0gQ29ubmVjdGl2aXR5IC0gZGV2ZWxv cG1lbnQgZmlsZXMiCi0JZGVwZW5kcz0icHl0aG9uMy1weXF0Ni1jb25uZWN0aXZpdHk+PSR7dmVy c2lvbn1fJHtyZXZpc2lvbn0KLQkgcHl0aG9uMy1weXF0Ni1jb3JlLWRldmVsPj0ke3ZlcnNpb259 XyR7cmV2aXNpb259Ci0JIHF0Ni1jb25uZWN0aXZpdHktZGV2ZWwiCi0JcGtnX2luc3RhbGwoKSB7 Ci0JCXZtb3ZlICIke3B5M19zaXRlbGlifS9QeVF0Ni9iaW5kaW5ncy9RdEJsdWV0b290aCIKLQkJ dm1vdmUgIiR7cHkzX3NpdGVsaWJ9L1B5UXQ2L2JpbmRpbmdzL1F0TmZjIgotCX0KLX0KLQogcHl0 aG9uMy1weXF0Ni1wZGZfcGFja2FnZSgpIHsKIAlsaWIzMmRpc2FibGVkPXllcwogCXNob3J0X2Rl c2MrPSIgLSBQZGYiCkBAIC01MTksMTggKzMxOSw2IEBAIHB5dGhvbjMtcHlxdDYtcGRmX3BhY2th Z2UoKSB7CiAJfQogfQogCi1weXRob24zLXB5cXQ2LXBkZi1kZXZlbF9wYWNrYWdlKCkgewotCWxp YjMyZGlzYWJsZWQ9eWVzCi0Jc2hvcnRfZGVzYys9IiAtIFBkZiAtIGRldmVsb3BtZW50IGZpbGVz IgotCWRlcGVuZHM9InB5dGhvbjMtcHlxdDYtcGRmPj0ke3ZlcnNpb259XyR7cmV2aXNpb259Ci0J IHB5dGhvbjMtcHlxdDYtY29yZS1kZXZlbD49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufQotCSBxdDYt cGRmLWRldmVsIgotCXBrZ19pbnN0YWxsKCkgewotCQl2bW92ZSAiJHtweTNfc2l0ZWxpYn0vUHlR dDYvYmluZGluZ3MvUXRQZGYiCi0JCXZtb3ZlICIke3B5M19zaXRlbGlifS9QeVF0Ni9iaW5kaW5n cy9RdFBkZldpZGdldHMiCi0JfQotfQotCiBweXRob24zLXB5cXQ2LXNwZWVjaF9wYWNrYWdlKCkg ewogCWxpYjMyZGlzYWJsZWQ9eWVzCiAJc2hvcnRfZGVzYys9IiAtIFNwZWVjaCIKQEAgLTUzOSwx NCArMzI3LDMgQEAgcHl0aG9uMy1weXF0Ni1zcGVlY2hfcGFja2FnZSgpIHsKIAkJdm1vdmUgIiR7 cHkzX3NpdGVsaWJ9L1B5UXQ2L1F0VGV4dFRvU3BlZWNoLioiCiAJfQogfQotCi1weXRob24zLXB5 cXQ2LXNwZWVjaC1kZXZlbF9wYWNrYWdlKCkgewotCWxpYjMyZGlzYWJsZWQ9eWVzCi0Jc2hvcnRf ZGVzYys9IiAtIFNwZWVjaCAtIGRldmVsb3BtZW50IGZpbGVzIgotCWRlcGVuZHM9InB5dGhvbjMt cHlxdDYtc3BlZWNoPj0ke3ZlcnNpb259XyR7cmV2aXNpb259Ci0JIHB5dGhvbjMtcHlxdDYtY29y ZS1kZXZlbD49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufQotCSBxdDYtc3BlZWNoLWRldmVsIgotCXBr Z19pbnN0YWxsKCkgewotCQl2bW92ZSAiJHtweTNfc2l0ZWxpYn0vUHlRdDYvYmluZGluZ3MvUXRU ZXh0VG9TcGVlY2giCi0JfQotfQoKRnJvbSA5MjY2ZmE5OWIwZjQwYzlkMjlmZjU5OGEwNDFiMTE3 NmI5MWQ0MzljIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0PTkw bz1DMz1BMG49MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4 QGdtYWlsLmNvbT4KRGF0ZTogU3VuLCAyMyBKdW4gMjAyNCAxMDo0NDozMyArMDcwMApTdWJqZWN0 OiBbUEFUQ0ggMzIvNDRdIHB5dGhvbjMtcHlxdDYtM2Q6IHVwZGF0ZSB0byA2LjcuMC4KCi0tLQog c3JjcGtncy9weXRob24zLXB5cXQ2LTNkL3RlbXBsYXRlIHwgOCArKysrLS0tLQogMSBmaWxlIGNo YW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNw a2dzL3B5dGhvbjMtcHlxdDYtM2QvdGVtcGxhdGUgYi9zcmNwa2dzL3B5dGhvbjMtcHlxdDYtM2Qv dGVtcGxhdGUKaW5kZXggZjNhMDQ4OGE0ZWVhNjUuLmU2MGE1MTM5N2Q3MTBjIDEwMDY0NAotLS0g YS9zcmNwa2dzL3B5dGhvbjMtcHlxdDYtM2QvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9weXRob24z LXB5cXQ2LTNkL3RlbXBsYXRlCkBAIC0xLDE4ICsxLDE4IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICdweXRob24zLXB5cXQ2LTNkJwogcGtnbmFtZT1weXRob24zLXB5cXQ2LTNkCi12ZXJzaW9uPTYu Ni4wCi1yZXZpc2lvbj0yCit2ZXJzaW9uPTYuNy4wCityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1z aXAtYnVpbGQKIGJ1aWxkX2hlbHBlcj0icHl0aG9uMyIKIGhvc3RtYWtlZGVwZW5kcz0icXQ2LWJh c2UgcHl0aG9uMy1QeVF0LWJ1aWxkZXIgcGtnLWNvbmZpZyIKLW1ha2VkZXBlbmRzPSJweXRob24z LXB5cXQ2LWd1aS1kZXZlbCBxdDYtM2QtZGV2ZWwiCittYWtlZGVwZW5kcz0icHl0aG9uMy1weXF0 Ni1iaW5kaW5ncyBxdDYtM2QtZGV2ZWwiCiBkZXBlbmRzPSJweXRob24zLXB5cXQ2Igogc2hvcnRf ZGVzYz0iUXQ2IGJpbmRpbmdzIGZvciAzRCAtIFB5dGhvbiAzIgogbWFpbnRhaW5lcj0ixJBvw6Bu IFRy4bqnbiBDw7RuZyBEYW5oIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4iCiBsaWNlbnNlPSJHUEwt My4wLW9ubHkiCiBob21lcGFnZT0iaHR0cHM6Ly93d3cucml2ZXJiYW5rY29tcHV0aW5nLmNvbS9z b2Z0d2FyZS9weXF0M2QvIgogZGlzdGZpbGVzPSIkUFlQSV9TSVRFL1AvUHlRdDYtM0QvUHlRdDZf M0QtJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT0zNzJiMjA2ZWI4MTg1ZjJiNmZmMDQ4NjI5 ZDMyOTZjYjEzN2M5ZTU5MDFiMTEzMTE5ZmZhNDZhMzE3NzI2OTg4CitjaGVja3N1bT0zZTk5YmZj ODAxOTE4YWI0NzU4ZGQyNjYwYjJkMjM1OGUwMDU3Yzk0M2ViMmJkOWY4ZDBkZGYxNTZlYTVjY2Q3 CiBsaWIzMmRpc2FibGVkPXllcwogCiBweXRob24zLXB5cXQ2LTNkLWRldmVsX3BhY2thZ2UoKSB7 CgpGcm9tIDdiNGFmMDhkNTIxMDQ0MTg4OTYzZGUzMDFhYWM3OWQ4NmY3YjJkZjcgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRGLTg/cT89QzQ9OTBvPUMzPUEwbj0yMFRyPUUxPUJB PUE3bj0yMEM9QzM9QjRuZz0yMERhbmg/PQogPGNvbmdkYW5ocXhAZ21haWwuY29tPgpEYXRlOiBT dW4sIDIzIEp1biAyMDI0IDEwOjQ0OjMzICswNzAwClN1YmplY3Q6IFtQQVRDSCAzMy80NF0gcHl0 aG9uMy1weXF0Ni1jaGFydHM6IHVwZGF0ZSB0byA2LjcuMC4KCi0tLQogc3JjcGtncy9weXRob24z LXB5cXQ2LWNoYXJ0cy90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNl cnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHl0aG9uMy1w eXF0Ni1jaGFydHMvdGVtcGxhdGUgYi9zcmNwa2dzL3B5dGhvbjMtcHlxdDYtY2hhcnRzL3RlbXBs YXRlCmluZGV4IDc3ODk4OGFmOTcyMTJhLi5hNzc1ZDYxNjk3NWYxYSAxMDA2NDQKLS0tIGEvc3Jj cGtncy9weXRob24zLXB5cXQ2LWNoYXJ0cy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3B5dGhvbjMt cHlxdDYtY2hhcnRzL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAncHl0aG9uMy1weXF0Ni1jaGFydHMnCiBwa2duYW1lPXB5dGhvbjMtcHlxdDYtY2hhcnRzCi12 ZXJzaW9uPTYuNi4wCi1yZXZpc2lvbj0yCit2ZXJzaW9uPTYuNy4wCityZXZpc2lvbj0xCiBidWls ZF9zdHlsZT1zaXAtYnVpbGQKIGJ1aWxkX2hlbHBlcj0icHl0aG9uMyIKIGhvc3RtYWtlZGVwZW5k cz0icXQ2LWJhc2UgcHl0aG9uMy1QeVF0LWJ1aWxkZXIgcGtnLWNvbmZpZyIKQEAgLTEyLDcgKzEy LDcgQEAgbWFpbnRhaW5lcj0ixJBvw6BuIFRy4bqnbiBDw7RuZyBEYW5oIDxjb25nZGFuaHF4QGdt YWlsLmNvbT4iCiBsaWNlbnNlPSJHUEwtMy4wLW9ubHkiCiBob21lcGFnZT0iaHR0cHM6Ly93d3cu cml2ZXJiYW5rY29tcHV0aW5nLmNvbS9zb2Z0d2FyZS9weXF0Y2hhcnQvIgogZGlzdGZpbGVzPSIk UFlQSV9TSVRFL1AvUHlRdDYtQ2hhcnRzL1B5UXQ2X0NoYXJ0cy0ke3ZlcnNpb259LnRhci5neiIK LWNoZWNrc3VtPTE0Y2M2ZTVkMTljYWU4MDEyOTUyNGE0MmZhNjMzMmQwZDVkYWRhNDI4MmE5NDIz NDI1ZTZiOWFlMWI2YmM1NmQKK2NoZWNrc3VtPWM0ZjdjZjM2OTkyOGY3YmYwMzJlNGUzM2Y3MThk M2I4ZmU2NmRhMTc2ZDQ5NTlmZTMwNzM1YTk3MGQ4NmYzNWMKIGxpYjMyZGlzYWJsZWQ9eWVzCiAK IHB5dGhvbjMtcHlxdDYtY2hhcnRzLWRldmVsX3BhY2thZ2UoKSB7CgpGcm9tIGM0ZDdjYzVkOWE0 OGMxNWY1NzE5YWEwMTYzNGU2NDJjZWFkY2RmNWUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZy b206ID0/VVRGLTg/cT89QzQ9OTBvPUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0yMEM9QzM9QjRuZz0y MERhbmg/PQogPGNvbmdkYW5ocXhAZ21haWwuY29tPgpEYXRlOiBTdW4sIDIzIEp1biAyMDI0IDEw OjQ0OjMzICswNzAwClN1YmplY3Q6IFtQQVRDSCAzNC80NF0gcHl0aG9uMy1weXF0Ni1uZXR3b3Jr YXV0aDogdXBkYXRlIHRvIDYuNy4wLgoKLS0tCiBzcmNwa2dzL3B5dGhvbjMtcHlxdDYtY2hhcnRz L3RlbXBsYXRlICAgICAgfCAyICstCiBzcmNwa2dzL3B5dGhvbjMtcHlxdDYtbmV0d29ya2F1dGgv dGVtcGxhdGUgfCA4ICsrKystLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwg NSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3B5dGhvbjMtcHlxdDYtY2hhcnRz L3RlbXBsYXRlIGIvc3JjcGtncy9weXRob24zLXB5cXQ2LWNoYXJ0cy90ZW1wbGF0ZQppbmRleCBh Nzc1ZDYxNjk3NWYxYS4uZWVlNDI0ZGM3ZWZjZTQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcHl0aG9u My1weXF0Ni1jaGFydHMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9weXRob24zLXB5cXQ2LWNoYXJ0 cy90ZW1wbGF0ZQpAQCAtNSw3ICs1LDcgQEAgcmV2aXNpb249MQogYnVpbGRfc3R5bGU9c2lwLWJ1 aWxkCiBidWlsZF9oZWxwZXI9InB5dGhvbjMiCiBob3N0bWFrZWRlcGVuZHM9InF0Ni1iYXNlIHB5 dGhvbjMtUHlRdC1idWlsZGVyIHBrZy1jb25maWciCi1tYWtlZGVwZW5kcz0icXQ2LWNoYXJ0cy1k ZXZlbCBweXRob24zLXB5cXQ2LXdpZGdldHMtZGV2ZWwiCittYWtlZGVwZW5kcz0icXQ2LWNoYXJ0 cy1kZXZlbCBweXRob24zLXB5cXQ2LWJpbmRpbmdzIgogZGVwZW5kcz0icHl0aG9uMy1weXF0NiIK IHNob3J0X2Rlc2M9IlF0NiBiaW5kaW5ncyBmb3IgQ2hhcnRzIC0gUHl0aG9uIDMiCiBtYWludGFp bmVyPSLEkG/DoG4gVHLhuqduIEPDtG5nIERhbmggPGNvbmdkYW5ocXhAZ21haWwuY29tPiIKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvcHl0aG9uMy1weXF0Ni1uZXR3b3JrYXV0aC90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvcHl0aG9uMy1weXF0Ni1uZXR3b3JrYXV0aC90ZW1wbGF0ZQppbmRleCA5NTAxMDU3OGJm NjFlMi4uZjRlY2UwOTg5OTQyNWEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcHl0aG9uMy1weXF0Ni1u ZXR3b3JrYXV0aC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3B5dGhvbjMtcHlxdDYtbmV0d29ya2F1 dGgvdGVtcGxhdGUKQEAgLTEsMTggKzEsMTggQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3B5dGhv bjMtcHlxdDYtbmV0d29ya2F1dGgnCiBwa2duYW1lPXB5dGhvbjMtcHlxdDYtbmV0d29ya2F1dGgK LXZlcnNpb249Ni42LjAKLXJldmlzaW9uPTIKK3ZlcnNpb249Ni43LjAKK3JldmlzaW9uPTEKIGJ1 aWxkX3N0eWxlPXNpcC1idWlsZAogYnVpbGRfaGVscGVyPSJweXRob24zIgogaG9zdG1ha2VkZXBl bmRzPSJxdDYtYmFzZSBweXRob24zLVB5UXQtYnVpbGRlciBwa2ctY29uZmlnIgotbWFrZWRlcGVu ZHM9InB5dGhvbjMtcHlxdDYtbmV0d29yay1kZXZlbCBxdDYtbmV0d29ya2F1dGgtZGV2ZWwiCitt YWtlZGVwZW5kcz0icHl0aG9uMy1weXF0Ni1iaW5kaW5ncyBxdDYtbmV0d29ya2F1dGgtZGV2ZWwi CiBkZXBlbmRzPSJweXRob24zLXB5cXQ2Igogc2hvcnRfZGVzYz0iUXQ2IGJpbmRpbmdzIGZvciBO ZXR3b3JrQXV0aCAtIFB5dGhvbiAzIgogbWFpbnRhaW5lcj0ixJBvw6BuIFRy4bqnbiBDw7RuZyBE YW5oIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4iCiBsaWNlbnNlPSJHUEwtMy4wLW9ubHkiCiBob21l cGFnZT0iaHR0cHM6Ly93d3cucml2ZXJiYW5rY29tcHV0aW5nLmNvbS9zb2Z0d2FyZS9weXF0bmV0 d29ya2F1dGgvIgogZGlzdGZpbGVzPSIkUFlQSV9TSVRFL1AvUHlRdDYtTmV0d29ya0F1dGgvUHlR dDZfTmV0d29ya0F1dGgtJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT1jZGZjMGJmYWVhMTZh OWUwOWYwNzViZGFmZWZiOTk2YWE5ZmRlYzM5MjA1MmJhNGZiM2NiYWMyMzNjMTk1OGZiCitjaGVj a3N1bT05NzQ5ODM1MjU0Mzc2MzNhMGYwMTZjMGZmYTBkYzMxMTg0NzA4OWYyNTNkZmU2ODQwYjBl YzhjZTIxZGM4Njg1CiBsaWIzMmRpc2FibGVkPXllcwogCiBweXRob24zLXB5cXQ2LW5ldHdvcmth dXRoLWRldmVsX3BhY2thZ2UoKSB7CgpGcm9tIDU0MTdjNzViNDI5NDNkYzRjZmQ2NDViN2VhZGJk YmFhMWM0ZTg2YTUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRGLTg/cT89QzQ9 OTBvPUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0yMEM9QzM9QjRuZz0yMERhbmg/PQogPGNvbmdkYW5o cXhAZ21haWwuY29tPgpEYXRlOiBTdW4sIDIzIEp1biAyMDI0IDEwOjQ0OjMzICswNzAwClN1Ympl Y3Q6IFtQQVRDSCAzNS80NF0gcHl0aG9uMy1weXF0Ni13ZWJlbmdpbmU6IHVwZGF0ZSB0byA2Ljcu MC4KCi0tLQogc3JjcGtncy9weXRob24zLXB5cXQ2LXdlYmVuZ2luZS90ZW1wbGF0ZSB8IDExICsr KystLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHl0aG9uMy1weXF0Ni13ZWJlbmdpbmUvdGVtcGxhdGUg Yi9zcmNwa2dzL3B5dGhvbjMtcHlxdDYtd2ViZW5naW5lL3RlbXBsYXRlCmluZGV4IDc5M2IzMzcy ZDAzMmFiLi41ZDcxOGRiNmMwMjNjNyAxMDA2NDQKLS0tIGEvc3JjcGtncy9weXRob24zLXB5cXQ2 LXdlYmVuZ2luZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3B5dGhvbjMtcHlxdDYtd2ViZW5naW5l L3RlbXBsYXRlCkBAIC0xLDIxICsxLDE4IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdweXRob24z LXB5cXQ2LXdlYmVuZ2luZScKIHBrZ25hbWU9cHl0aG9uMy1weXF0Ni13ZWJlbmdpbmUKLXZlcnNp b249Ni42LjAKLXJldmlzaW9uPTIKK3ZlcnNpb249Ni43LjAKK3JldmlzaW9uPTEKIGJ1aWxkX3N0 eWxlPXNpcC1idWlsZAogYnVpbGRfaGVscGVyPXB5dGhvbjMKIGhvc3RtYWtlZGVwZW5kcz0icXQ2 LWJhc2UgcHl0aG9uMy1QeVF0LWJ1aWxkZXIgcGtnLWNvbmZpZyIKLW1ha2VkZXBlbmRzPSJweXRo b24zLXB5cXQ2LWd1aS1kZXZlbCBxdDYtd2ViZW5naW5lLWRldmVsCi0gcHl0aG9uMy1weXF0Ni1u ZXR3b3JrLWRldmVsIHB5dGhvbjMtcHlxdDYtd2ViY2hhbm5lbC1kZXZlbAotIHB5dGhvbjMtcHlx dDYtZGVjbGFyYXRpdmUtZGV2ZWwgcHl0aG9uMy1weXF0Ni1wcmludHN1cHBvcnQtZGV2ZWwKLSBw eXRob24zLXB5cXQ2LXdpZGdldHMtZGV2ZWwiCittYWtlZGVwZW5kcz0icXQ2LXdlYmVuZ2luZS1k ZXZlbCBxdDYtd2ViY2hhbm5lbC1kZXZlbCBweXRob24zLXB5cXQ2LWJpbmRpbmdzIgogZGVwZW5k cz0icHl0aG9uMy1weXF0NiIKIHNob3J0X2Rlc2M9IlB5dGhvbiAzIGJpbmRpbmdzIGZvciBRdDYg LSBXZWJFbmdpbmUiCiBtYWludGFpbmVyPSLEkG/DoG4gVHLhuqduIEPDtG5nIERhbmggPGNvbmdk YW5ocXhAZ21haWwuY29tPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0i aHR0cHM6Ly93d3cucml2ZXJiYW5rY29tcHV0aW5nLmNvbS9zb2Z0d2FyZS9weXF0d2ViZW5naW5l LyIKIGRpc3RmaWxlcz0iJFBZUElfU0lURS9QL1B5UXQ2X1dlYkVuZ2luZS9QeVF0Nl9XZWJFbmdp bmUtJHZlcnNpb24udGFyLmd6IgotY2hlY2tzdW09ZDUwYjk4NGMzZjg1ZTQwOWU2OTJiMTU2MTMy NzIxNTIyZDRlOGNmOWI2YzI1ZTBjZjkyN2VlYTJkZmIzOTQ4NworY2hlY2tzdW09NjhlZGM3YWRi NmQ5ZTI3NWY1ZGU5NTY4ODFlNzljY2EwZDcxZmFkNDM5YWJlYWExMGQ4MjNiZmY1YWM1NTAwMQog bGliMzJkaXNhYmxlZD15ZXMKIAogY2FzZSAiJFhCUFNfVEFSR0VUX01BQ0hJTkUiIGluCgpGcm9t IDU3ODEyOWE1Mjc1YTkxMTQ5NjNjN2E4NWNiYTJlMTQ3YjI0OTMyMzEgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206ID0/VVRGLTg/cT89QzQ9OTBvPUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0y MEM9QzM9QjRuZz0yMERhbmg/PQogPGNvbmdkYW5ocXhAZ21haWwuY29tPgpEYXRlOiBTdW4sIDIz IEp1biAyMDI0IDEwOjQ0OjMzICswNzAwClN1YmplY3Q6IFtQQVRDSCAzNi80NF0gcXQ2Y3Q6IGZv ciBxdDYtNi43CgotLS0KIHNyY3BrZ3MvcXQ2Y3QvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBj aGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9xdDZjdC90ZW1wbGF0ZSBiL3NyY3BrZ3MvcXQ2Y3QvdGVtcGxhdGUKaW5kZXggM2IwZDkx YjM3NDc0YmUuLjE2OTAzODU4ZDE3Mjg0IDEwMDY0NAotLS0gYS9zcmNwa2dzL3F0NmN0L3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvcXQ2Y3QvdGVtcGxhdGUKQEAgLTEsMTAgKzEsMTAgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ3F0NmN0JwogcGtnbmFtZT1xdDZjdAogdmVyc2lvbj0wLjkKLXJldmlz aW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBob3N0bWFrZWRlcGVuZHM9InF0 Ni10b29scyBxdDYtYmFzZSIKLW1ha2VkZXBlbmRzPSJxdDYtYmFzZS1kZXZlbCIKK21ha2VkZXBl bmRzPSJxdDYtYmFzZS1wcml2YXRlLWRldmVsIgogZGVwZW5kcz0icXQ2LXN2ZyIKIHNob3J0X2Rl c2M9IlF0NiBDb25maWd1cmF0aW9uIFRvb2wiCiBtYWludGFpbmVyPSJBZGFtIFBzY2hvcnIgPGFk YW1wc2Nob3JyMTNAYW9sLmNvbT4iCgpGcm9tIDFhNGU2ZDc0NWY1YzcyYjk5OTgwY2NkZmFmNmRl Y2EzODQ1NDBlZDYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRGLTg/cT89QzQ9 OTBvPUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0yMEM9QzM9QjRuZz0yMERhbmg/PQogPGNvbmdkYW5o cXhAZ21haWwuY29tPgpEYXRlOiBTdW4sIDIzIEp1biAyMDI0IDEwOjQ0OjMzICswNzAwClN1Ympl Y3Q6IFtQQVRDSCAzNy80NF0gbGlicXR4ZGc6IGZvciBxdDYtNi43CgotLS0KIHNyY3BrZ3MvbGli cXR4ZGcvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyks IDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJxdHhkZy90ZW1wbGF0ZSBi L3NyY3BrZ3MvbGlicXR4ZGcvdGVtcGxhdGUKaW5kZXggZmQzN2U2Mzc0YmFjNTIuLmJiM2Q2YzVh OTQ5YzdhIDEwMDY0NAotLS0gYS9zcmNwa2dzL2xpYnF0eGRnL3RlbXBsYXRlCisrKyBiL3NyY3Br Z3MvbGlicXR4ZGcvdGVtcGxhdGUKQEAgLTEsMTAgKzEsMTAgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ2xpYnF0eGRnJwogcGtnbmFtZT1saWJxdHhkZwogdmVyc2lvbj00LjAuMAotcmV2aXNpb249 MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNv bmZpZyBseHF0LWJ1aWxkLXRvb2xzIHF0Ni1iYXNlIgotbWFrZWRlcGVuZHM9InF0Ni1iYXNlIHF0 Ni1zdmctZGV2ZWwgbGliZ2xpYi1kZXZlbCIKK21ha2VkZXBlbmRzPSJxdDYtYmFzZS1wcml2YXRl LWRldmVsIHF0Ni1zdmctZGV2ZWwgbGliZ2xpYi1kZXZlbCIKIHNob3J0X2Rlc2M9IlF0IGltcGxl bWVudGF0aW9uIG9mIGZyZWVkZXNrdG9wLm9yZyBYREcgc3BlY2lmaWNhdGlvbnMiCiBtYWludGFp bmVyPSJIZWxtdXQgUG96aW1za2kgPGhlbG11dEBwb3ppbXNraS5ldT4iCiBsaWNlbnNlPSJMR1BM LTIuMS1vci1sYXRlciIKCkZyb20gOTkwY2RhODUxZDdkMWI4NGRkZWRhZmM1NmY2OWY2MmU3MGY4 YzZlMSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogPT9VVEYtOD9xPz1DND05MG89QzM9 QTBuPTIwVHI9RTE9QkE9QTduPTIwQz1DMz1CNG5nPTIwRGFuaD89CiA8Y29uZ2RhbmhxeEBnbWFp bC5jb20+CkRhdGU6IFN1biwgMjMgSnVuIDIwMjQgMTA6NDQ6MzMgKzA3MDAKU3ViamVjdDogW1BB VENIIDM4LzQ0XSBrZGVjb25uZWN0OiBlbmFibGUgYmx1ZXRvb3RoCgotLS0KIHNyY3BrZ3Mva2Rl Y29ubmVjdC90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25z KCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mva2RlY29ubmVjdC90ZW1w bGF0ZSBiL3NyY3BrZ3Mva2RlY29ubmVjdC90ZW1wbGF0ZQppbmRleCA1MTRhZTVhNzczMzg3Ny4u MWQ4NDk1ZWQxNTQ3MWQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mva2RlY29ubmVjdC90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2tkZWNvbm5lY3QvdGVtcGxhdGUKQEAgLTEsMTAgKzEsMTAgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ2tkZWNvbm5lY3QnCiBwa2duYW1lPWtkZWNvbm5lY3QKIHZlcnNpb249 MjQuMDUuMAotcmV2aXNpb249MgorcmV2aXNpb249MwogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZp Z3VyZV9hcmdzPSItRFdheWxhbmRTY2FubmVyX0VYRUNVVEFCTEU9L3Vzci9iaW4vd2F5bGFuZC1z Y2FubmVyCi0gLURLREVfSU5TVEFMTF9RTUxESVI9bGliL3F0Ni9xbWwKKyAtREtERV9JTlNUQUxM X1FNTERJUj1saWIvcXQ2L3FtbCAtREJMVUVUT09USF9FTkFCTEVEPU9OCiAgLURLRjZfSE9TVF9U T09MSU5HPS91c3IvbGliL2NtYWtlIC1ES0RFX0lOU1RBTExfUVRQTFVHSU5ESVI9bGliL3F0Ni9w bHVnaW5zIgogaG9zdG1ha2VkZXBlbmRzPSJleHRyYS1jbWFrZS1tb2R1bGVzIHF0Ni10b29scwog IHBrZy1jb25maWcgd2F5bGFuZC1kZXZlbCBxdDYtYmFzZSBweXRob24zIGtmNi1rZG9jdG9vbHMg a2Y2LWtwYWNrYWdlIGtmNi1rY29uZmlnCkBAIC0xNSw3ICsxNSw3IEBAIG1ha2VkZXBlbmRzPSJr ZjYta2NtdXRpbHMtZGV2ZWwga2Y2LWtjb25maWd3aWRnZXRzLWRldmVsIGtmNi1rZGJ1c2FkZG9u cy1kZXZlbAogIGtmNi1raXJpZ2FtaS1kZXZlbCBrZjYta25vdGlmaWNhdGlvbnMtZGV2ZWwga2Y2 LWtzdGF0dXNub3RpZmllcml0ZW0tZGV2ZWwKICBrZjYta3NlcnZpY2UtZGV2ZWwga2Y2LXFxYzIt ZGVza3RvcC1zdHlsZS1kZXZlbCBrZjYtbW9kZW1tYW5hZ2VyLXF0LWRldmVsCiAga2Y2LWtwYWNr YWdlLWRldmVsIGtmNi1rcGVvcGxlLWRldmVsIGtmNi1rd2F5bGFuZC1kZXZlbAotIGxpYmZha2Vr ZXktZGV2ZWwgcWNhLXF0Ni1kZXZlbCBwdWxzZWF1ZGlvLXF0LWRldmVsIHF0Ni1iYXNlLWRldmVs CisgbGliZmFrZWtleS1kZXZlbCBxY2EtcXQ2LWRldmVsIHB1bHNlYXVkaW8tcXQtZGV2ZWwgcXQ2 LWJhc2UtcHJpdmF0ZS1kZXZlbAogIHF0Ni1jb25uZWN0aXZpdHktZGV2ZWwgcXQ2LW11bHRpbWVk aWEtZGV2ZWwga2lyaWdhbWktYWRkb25zLWRldmVsIgogZGVwZW5kcz0ia2RlLWNsaS10b29scyBx Y2EtcXQ2IGZ1c2Utc3NoZnMga2Y2LWtpcmlnYW1pIGtmNi1xcWMyLWRlc2t0b3Atc3R5bGUKICBi cmVlemUtaWNvbnMga2lyaWdhbWktYWRkb25zIHF0Ni1wbHVnaW4tdGxzLW9wZW5zc2wiCgpGcm9t IGYyNWE3MmIwZjhkODhkNmFjNmMwMmFkODEwMTJhNGZjOWRkNzg5ZGUgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206ID0/VVRGLTg/cT89QzQ9OTBvPUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0y MEM9QzM9QjRuZz0yMERhbmg/PQogPGNvbmdkYW5ocXhAZ21haWwuY29tPgpEYXRlOiBTdW4sIDIz IEp1biAyMDI0IDEwOjQ0OjM0ICswNzAwClN1YmplY3Q6IFtQQVRDSCAzOS80NF0gY2FsaWJyZTog Zml4IGJ1aWxkIGFmdGVyIHB5cXQ2IHJlc3RydWN0dXJlCgotLS0KIHNyY3BrZ3MvY2FsaWJyZS90 ZW1wbGF0ZSB8IDUgKysrKy0KIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDEgZGVs ZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2NhbGlicmUvdGVtcGxhdGUgYi9zcmNwa2dz L2NhbGlicmUvdGVtcGxhdGUKaW5kZXggYjAzMDJjMmY5ZjI0N2UuLjc5MDdmNzFiMTgxODRlIDEw MDY0NAotLS0gYS9zcmNwa2dzL2NhbGlicmUvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9jYWxpYnJl L3RlbXBsYXRlCkBAIC02LDYgKzYsNyBAQCBidWlsZF9oZWxwZXI9cHl0aG9uMwogcHljb21waWxl X2RpcnM9Ii91c3IvbGliL2NhbGlicmUvIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGNt YWtlIHB5dGhvbjMtQmVhdXRpZnVsU291cDQgcHl0aG9uMy1QaWxsb3cKICBweXRob24zLWFwc3cg cHl0aG9uMy1jc3MtcGFyc2VyIHB5dGhvbjMtZGF0ZXV0aWwgc2lwIHF0Ni1iYXNlIHB5dGhvbjMt cHk3enIKKyBweXRob24zLXB5cXQ2LWRldmVsLXRvb2xzCiAgcHl0aG9uMy1odG1sNS1wYXJzZXIg cHl0aG9uMy1tc2dwYWNrIHB5dGhvbjMtcmVnZXggcHl0aG9uMy1tZWNoYW5pemUKICBtYXRoamF4 IGxpYmVyYXRpb24tZm9udHMtdHRmIHB5dGhvbjMtemVyb2NvbmYgeGRnLXV0aWxzIHJhcHlkc2Ny aXB0LW5nCiAgcHl0aG9uMy1QeVF0LWJ1aWxkZXIgcHl0aG9uMy1NYXJrZG93biBweXRob24zLXh4 aGFzaCIKQEAgLTEzLDcgKzE0LDkgQEAgbWFrZWRlcGVuZHM9ImxpYmlucHV0LWRldmVsIGxpYm1h Z2ljay1kZXZlbCBsaWJtdHAtZGV2ZWwgbGlic3RlbW1lci1kZXZlbAogIGxpYnBvZG9mby1kZXZl bCBsaWJ3bWYtZGV2ZWwgbGlieGtiY29tbW9uLWRldmVsIHBvcHBsZXItY3BwLWRldmVsCiAgZnJl ZXR5cGUtZGV2ZWwgdWNoYXJkZXQtZGV2ZWwgb3BlbnNzbC1kZXZlbCBpY3UtZGV2ZWwgbGlidXNi LWRldmVsCiAgc3FsaXRlLWRldmVsIHRzbGliLWRldmVsIGh1bnNwZWxsLWRldmVsIGh5cGhlbi1k ZXZlbCBsaWJzdGVtbWVyLWRldmVsCi0gcHl0aG9uMy1weXF0Ni1kZXZlbCBweXRob24zLXB5cXQ2 LXdlYmVuZ2luZS1kZXZlbCIKKyBweXRob24zLXB5cXQ2LWd1aSBweXRob24zLXB5cXQ2LXN2ZyBw eXRob24zLXB5cXQ2LXdpZGdldHMgcHl0aG9uMy1weXF0Ni1uZXR3b3JrCisgcHl0aG9uMy1weXF0 Ni1wcmludHN1cHBvcnQgcHl0aG9uMy1weXF0Ni13ZWJlbmdpbmUgcHl0aG9uMy1weXF0Ni13ZWJj aGFubmVsCisgcXQ2LWJhc2UtcHJpdmF0ZS1kZXZlbCBweXRob24zLXB5cXQ2LWJpbmRpbmdzIHB5 dGhvbjMtcHlxdDYtd2ViZW5naW5lLWRldmVsIgogZGVwZW5kcz0iZGVza3RvcC1maWxlLXV0aWxz IG9wdGlwbmcgcG9wcGxlciBweXRob24zLUJlYXV0aWZ1bFNvdXA0CiAgcXQ2LWltYWdlZm9ybWF0 cyBweXRob24zLVB5Z21lbnRzIHB5dGhvbjMtcHljcnlwdG9kb21lIHB5dGhvbjMteHhoYXNoCiAg cHl0aG9uMy1NYXJrZG93biBweXRob24zLVBpbGxvdyBweXRob24zLXplcm9jb25mIHB5dGhvbjMt UHlnbWVudHMgcHl0aG9uMy1hcHN3CgpGcm9tIDEzYWNjY2ViMzAzYWM1NDU2ZmRhMDhmN2U4ZGI5 NmYyYzgzMzNlODAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRGLTg/cT89QzQ9 OTBvPUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0yMEM9QzM9QjRuZz0yMERhbmg/PQogPGNvbmdkYW5o cXhAZ21haWwuY29tPgpEYXRlOiBTdW4sIDIzIEp1biAyMDI0IDEwOjQ0OjM0ICswNzAwClN1Ympl Y3Q6IFtQQVRDSCA0MC80NF0ga2Y2LWFrb25hZGk6IGZvciBxdDYtNi43CgotLS0KIHNyY3BrZ3Mv a2Y2LWFrb25hZGkvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24o KyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2tmNi1ha29uYWRpL3RlbXBs YXRlIGIvc3JjcGtncy9rZjYtYWtvbmFkaS90ZW1wbGF0ZQppbmRleCA3NTQxNmM1ZDc3ZDhkMi4u MDIwZGQ5ODcyY2ZmMjQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mva2Y2LWFrb25hZGkvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9rZjYtYWtvbmFkaS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ2tmNi1ha29uYWRpJwogcGtnbmFtZT1rZjYtYWtvbmFkaQogdmVyc2lv bj0yNC4wMi4yCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1jbWFrZQogYnVp bGRfaGVscGVyPSJxZW11IgogY29uZmlndXJlX2FyZ3M9Ii1ES0Y2X0hPU1RfVE9PTElORz0vdXNy L2xpYi9jbWFrZQoKRnJvbSA4ZDMzOGE4MDZiMWVjM2FkMWY3ZDhhN2ZjZmI3MzVmYmU4ZTk4N2Ni IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0PTkwbz1DMz1BMG49 MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4QGdtYWlsLmNv bT4KRGF0ZTogU3VuLCAyMyBKdW4gMjAyNCAxMDo0NDozNCArMDcwMApTdWJqZWN0OiBbUEFUQ0gg NDEvNDRdIGdwZ21lLXF0NjogZm9yIHF0Ni02LjcKCi0tLQogc3JjcGtncy9ncGdtZS1xdDYvdGVt cGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24o LSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dwZ21lLXF0Ni90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ3Bn bWUtcXQ2L3RlbXBsYXRlCmluZGV4IDYyODgxM2EwNzRmNGQ4Li42NDFiNjU2OTEwNjM0ZSAxMDA2 NDQKLS0tIGEvc3JjcGtncy9ncGdtZS1xdDYvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9ncGdtZS1x dDYvdGVtcGxhdGUKQEAgLTcsNyArNyw3IEBACiAjICAgICAgICAgIC0+IGNvbG9yZCAtPiBzYW5l IC0+IHBvcHBsZXIgLT4gZ3BnbWUgLT4gcXQ1IC0+IFNETDIKIHBrZ25hbWU9Z3BnbWUtcXQ2CiB2 ZXJzaW9uPTEuMjMuMgotcmV2aXNpb249NAorcmV2aXNpb249NQogYnVpbGRfc3R5bGU9Z251LWNv bmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZW5hYmxlLWZkLXBhc3NpbmcKICAtLXdpdGgtbGli Z3BnLWVycm9yLXByZWZpeD0kWEJQU19DUk9TU19CQVNFL3VzcgoKRnJvbSBlZTJjOTUxMGNlNzZk OWQxYzM5ZTg1MWExZThkNGU2ODZlNTJiODE0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiA9P1VURi04P3E/PUM0PTkwbz1DMz1BMG49MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0bmc9MjBE YW5oPz0KIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTogU3VuLCAyMyBKdW4gMjAyNCAxMDo0 NDozNCArMDcwMApTdWJqZWN0OiBbUEFUQ0ggNDIvNDRdIGtmNi1rZGVjbGFyYXRpdmU6IGZvciBx dDYtNi43CgotLS0KIHNyY3BrZ3Mva2Y2LWtkZWNsYXJhdGl2ZS90ZW1wbGF0ZSB8IDIgKy0KIDEg ZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3Mva2Y2LWtkZWNsYXJhdGl2ZS90ZW1wbGF0ZSBiL3NyY3BrZ3Mva2Y2LWtkZWNsYXJh dGl2ZS90ZW1wbGF0ZQppbmRleCA0MjcwZGY0NmYyNmM1ZC4uMGFiMTc1OTVkOGI2ZDMgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3Mva2Y2LWtkZWNsYXJhdGl2ZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2tm Ni1rZGVjbGFyYXRpdmUvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICdrZjYta2RlY2xhcmF0aXZlJwogcGtnbmFtZT1rZjYta2RlY2xhcmF0aXZlCiB2ZXJzaW9u PTYuMy4wCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmln dXJlX2FyZ3M9Ii1ES0RFX0lOU1RBTExfUU1MRElSPWxpYi9xdDYvcW1sIgogaG9zdG1ha2VkZXBl bmRzPSJleHRyYS1jbWFrZS1tb2R1bGVzIHF0Ni10b29scyBxdDYtYmFzZQoKRnJvbSA1ZjkwMzhl NjQ4NDJlNWM0MmQ2ZTg0ZDI5ZmIzZWI0ZmI1MDAzOTk4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiA9P1VURi04P3E/PUM0PTkwbz1DMz1BMG49MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0 bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTogU3VuLCAyMyBKdW4gMjAy NCAxNToyOTowNSArMDcwMApTdWJqZWN0OiBbUEFUQ0ggNDMvNDRdIGZjaXR4NS1xdDogZm9yIHF0 Ni02LjcKCi0tLQogc3JjcGtncy9mY2l0eDUtcXQvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBj aGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9mY2l0eDUtcXQvdGVtcGxhdGUgYi9zcmNwa2dzL2ZjaXR4NS1xdC90ZW1wbGF0ZQppbmRl eCBlZmZkMDBlZTlmY2I1OS4uMDY0YTYzNTkzYjNjYjAgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZmNp dHg1LXF0L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZmNpdHg1LXF0L3RlbXBsYXRlCkBAIC0xLDcg KzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZmNpdHg1LXF0JwogcGtnbmFtZT1mY2l0eDUt cXQKIHZlcnNpb249NS4xLjYKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWNt YWtlCiBjb25maWd1cmVfYXJncz0iLURFTkFCTEVfUVQ0PU9GRiAtREVOQUJMRV9RVDU9T04KICAt RENNQUtFX0lOU1RBTExfUVQ2UExVR0lORElSPS91c3IvbGliL3F0Ni9wbHVnaW5zCkBAIC05LDcg KzksNyBAQCBjb25maWd1cmVfYXJncz0iLURFTkFCTEVfUVQ0PU9GRiAtREVOQUJMRV9RVDU9T04K IGhvc3RtYWtlZGVwZW5kcz0iY2xkci1lbW9qaS1hbm5vdGF0aW9uIHBrZy1jb25maWcgZ2V0dGV4 dCBkb3h5Z2VuCiAgZXh0cmEtY21ha2UtbW9kdWxlcyBxdDUtcW1ha2UgcXQ1LWhvc3QtdG9vbHMg cXQ2LWJhc2UiCiBtYWtlZGVwZW5kcz0ibGliZmNpdHg1LWRldmVsIGZtdC1kZXZlbCBxdDUtZGV2 ZWwgbGlieGtiY29tbW9uLWRldmVsCi0gcXQ2LWJhc2UtZGV2ZWwgcXQ2LXdheWxhbmQtZGV2ZWwi CisgcXQ2LWJhc2UtcHJpdmF0ZS1kZXZlbCBxdDYtd2F5bGFuZC1wcml2YXRlLWRldmVsIgogc2hv cnRfZGVzYz0iRmxleGlibGUgQ29udGV4dC1hd2FyZSBJbnB1dCBUb29sIHdpdGggZVh0ZW5zaW9u IHY1IC0gUXQiCiBtYWludGFpbmVyPSLEkG/DoG4gVHLhuqduIEPDtG5nIERhbmggPGNvbmdkYW5o cXhAZ21haWwuY29tPiIKIGxpY2Vuc2U9IkxHUEwtMi4xLW9yLWxhdGVyLCBCU0QtMy1DbGF1c2Ui CgpGcm9tIGMwMzRiOWVmM2IzMWE0ODZmZDQzOTY3ZDNlMTIxNDcwMGVkYzRjNGMgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRGLTg/cT89QzQ9OTBvPUMzPUEwbj0yMFRyPUUxPUJB PUE3bj0yMEM9QzM9QjRuZz0yMERhbmg/PQogPGNvbmdkYW5ocXhAZ21haWwuY29tPgpEYXRlOiBT dW4sIDIzIEp1biAyMDI0IDEwOjQ0OjM0ICswNzAwClN1YmplY3Q6IFtQQVRDSCA0NC80NF0ga2Y2 LWtzdmc6IGZvciBxdDYtNi43CgotLS0KIHNyY3BrZ3Mva2Y2LWtzdmcvdGVtcGxhdGUgfCAyICst CiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2tmNi1rc3ZnL3RlbXBsYXRlIGIvc3JjcGtncy9rZjYta3N2Zy90ZW1wbGF0 ZQppbmRleCAzNzM3OTQ4MmM1YzdjNy4uYTVjZDlhM2ZjOTRlZWIgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3Mva2Y2LWtzdmcvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9rZjYta3N2Zy90ZW1wbGF0ZQpAQCAt MSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2tmNi1rc3ZnJwogcGtnbmFtZT1rZjYt a3N2ZwogdmVyc2lvbj02LjMuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9 Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItREtERV9JTlNUQUxMX1FNTERJUj1saWIvcXQ2L3FtbAog IC1ES0RFX0lOU1RBTExfUVRQTFVHSU5ESVI9bGliL3F0Ni9wbHVnaW5zIgo= --===============5473887148256119777==--