From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 20567 invoked from network); 26 Feb 2022 09:40:46 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 26 Feb 2022 09:40:46 -0000 Content-Type: multipart/mixed; boundary="===============0891831972835905127==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_New_package=3A_PolyMC-1=2E0=2E6?= To: ml@inbox.vuxu.org From: oynqr Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Sat, 26 Feb 2022 10:40:46 +0100 List-Id: Message-ID: <20220226094046.EJxseN-5sdqF1S9oRTWa5dJcWlCB3KF_99l4cnniFGY@z> GitHub notification mails are now in MIME to allow UTF8. --===============0891831972835905127== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgb3lucXIgYWdhaW5zdCBtYXN0ZXIg b24gdGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29tL295bnFy L3ZvaWQtcGFja2FnZXMgUG9seU1DCmh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQt cGFja2FnZXMvcHVsbC8zNDk3OQoKTmV3IHBhY2thZ2U6IFBvbHlNQy0xLjAuNgo8IS0tIFVuY29t bWVudCByZWxldmFudCBzZWN0aW9ucyBhbmQgZGVsZXRlIG9wdGlvbnMgd2hpY2ggYXJlIG5vdCBh cHBsaWNhYmxlIC0tPg0KDQojIyMjIFRlc3RpbmcgdGhlIGNoYW5nZXMNCi0gSSB0ZXN0ZWQgdGhl IGNoYW5nZXMgaW4gdGhpcyBQUjogKipZRVMqKg0KDQpUZXN0aW5nIHdhcyBkb25lIG9uIG15IEtE RSB3b3Jrc3RhdGlvbiBhbmQgYWxzbyBvbiBhIGNsZWFuIGxpdmUgYm9vdGVkIGVudmlyb25tZW50 IChvbmx5IG1hbnVhbCBwYWNrYWdlcyB3ZXJlOiBiYXNlLXN5c3RlbSwgeG9yZywgUG9seU1DKS4g TG9nZ2luZyBpbiB3aXRoIGEgTWljcm9zb2Z0IGFjY291bnQgd2FzIG5vdCB0ZXN0ZWQsIHNpbmNl IEkgZG9uJ3QgaGF2ZSBvbmUuIE1pbmVjcmFmdCB2ZXJzaW9ucyAxLjE2LjUgYW5kIDIxdzE4YSB3 ZXJlIHN1Y2Nlc3NmdWxseSB0ZXN0ZWQgd2l0aCB0aGUgc3lzdGVtIGpkayBhbmQgdGhlIGxhdGVz dCBNaW5lY3JhZnQgcmVsZWFzZSAxLjE4LjEgd2l0aCBqZGsgMTcgZnJvbSBhZG9wdGl1bS4NCg0K SSB3YXNuJ3QgdG9vIHN1cmUgd2hpY2ggbGljZW5zZSB0byBwaWNrLCBzbyBJIGp1c3QgdHJpZWQg dG8gYmUgYXMgY29tcHJlaGVuc2l2ZSBhcyBwb3NzaWJsZS4NCg0KQ2xvc2VzICMzNDkzMw0KDQo8 IS0tDQojIyMjIE5ldyBwYWNrYWdlDQotIFRoaXMgbmV3IHBhY2thZ2UgY29uZm9ybXMgdG8gdGhl IFtxdWFsaXR5IHJlcXVpcmVtZW50c10oaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9p ZC1wYWNrYWdlcy9ibG9iL21hc3Rlci9NYW51YWwubWQjcXVhbGl0eS1yZXF1aXJlbWVudHMpOiAq KllFUyoqfCoqTk8qKg0KLS0+DQoNCjwhLS0gTm90ZTogSWYgdGhlIGJ1aWxkIGlzIGxpa2VseSB0 byB0YWtlIG1vcmUgdGhhbiAyIGhvdXJzLCBwbGVhc2UgW3NraXAgQ0ldKGh0dHBzOi8vZ2l0aHVi LmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvYmxvYi9tYXN0ZXIvQ09OVFJJQlVUSU5HLm1k I2NvbnRpbnVvdXMtaW50ZWdyYXRpb24pDQphbmQgdGVzdCBhdCBsZWFzdCBvbmUgbmF0aXZlIGJ1 aWxkIGFuZCwgaWYgc3VwcG9ydGVkLCBhdCBsZWFzdCBvbmUgY3Jvc3MgYnVpbGQuDQpJZ25vcmUg dGhpcyBzZWN0aW9uIGlmIHRoaXMgUFIgaXMgbm90IHNraXBwaW5nIENJLg0KLS0+DQo8IS0tIA0K IyMjIyBMb2NhbCBidWlsZCB0ZXN0aW5nDQotIEkgYnVpbHQgdGhpcyBQUiBsb2NhbGx5IGZvciBt eSBuYXRpdmUgYXJjaGl0ZWN0dXJlLCAoQVJDSC1MSUJDKQ0KLSBJIGJ1aWx0IHRoaXMgUFIgbG9j YWxseSBmb3IgdGhlc2UgYXJjaGl0ZWN0dXJlcyAoaWYgc3VwcG9ydGVkLiBtYXJrIGNyb3NzYnVp bGRzKToNCiAgLSBhYXJjaDY0LW11c2wNCiAgLSBhcm12N2wNCiAgLSBhcm12NmwtbXVzbA0KLS0+ DQoKCkEgcGF0Y2ggZmlsZSBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQt cGFja2FnZXMvcHVsbC8zNDk3OS5wYXRjaCBpcyBhdHRhY2hlZA== --===============0891831972835905127== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-PolyMC-34979.patch" RnJvbSAyOGJjMTFhZTIzYzVlNzM3ZDI4N2ViNmE1YjA5MTM0NjdhNzUzMmY4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBQaGlsaXBwIERhdmlkIDxwZEAzYi5wbT4KRGF0ZTogTW9uLCAx MCBKYW4gMjAyMiAxMTozMjoyMiArMDEwMApTdWJqZWN0OiBbUEFUQ0hdIE5ldyBwYWNrYWdlOiBQ b2x5TUMtMS4wLjYKCi0tLQogLi4uL1BvbHlNQy9wYXRjaGVzLzAwLWJhY2twb3J0LWZpeGVzLnBh dGNoICAgIHwgNjkzICsrKysrKysrKysrKysrKysrKwogc3JjcGtncy9Qb2x5TUMvdGVtcGxhdGUg ICAgICAgICAgICAgICAgICAgICAgIHwgIDM3ICsKIDIgZmlsZXMgY2hhbmdlZCwgNzMwIGluc2Vy dGlvbnMoKykKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL1BvbHlNQy9wYXRjaGVzLzAwLWJh Y2twb3J0LWZpeGVzLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9Qb2x5TUMvdGVt cGxhdGUKCmRpZmYgLS1naXQgYS9zcmNwa2dzL1BvbHlNQy9wYXRjaGVzLzAwLWJhY2twb3J0LWZp eGVzLnBhdGNoIGIvc3JjcGtncy9Qb2x5TUMvcGF0Y2hlcy8wMC1iYWNrcG9ydC1maXhlcy5wYXRj aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjlhYTY5ODJjODYzOQot LS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvUG9seU1DL3BhdGNoZXMvMDAtYmFja3BvcnQtZml4 ZXMucGF0Y2gKQEAgLTAsMCArMSw2OTMgQEAKKyMgVGhlc2UgYXJlIGFsbCB1cHN0cmVhbSBiYWNr cG9ydHMsIHRvIGJlIGRyb3BwZWQgd2l0aCB0aGUgbmV4dCByZWxlYXNlLgorZGlmZiAtLWdpdCBh L0NNYWtlTGlzdHMudHh0IGIvQ01ha2VMaXN0cy50eHQKK2luZGV4IGIyNTA3YTQ4Li5kMjhiMDVm NiAxMDA2NDQKKy0tLSBhL0NNYWtlTGlzdHMudHh0CisrKysgYi9DTWFrZUxpc3RzLnR4dAorQEAg LTQ2LDcgKzQ2LDggQEAgc2V0KENNQUtFX0NYWF9GTEFHUyAiJHtDTUFLRV9DWFhfRkxBR1N9IC1E UVRfTk9fREVQUkVDQVRFRF9XQVJOSU5HUz1ZIikKKyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIFNldCBBcHBsaWNhdGlvbiBvcHRpb25zICMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMKKyAKKyAjIyMjIyMjIyBTZXQgVVJMcyAjIyMjIyMjIworLXNldChM YXVuY2hlcl9ORVdTX1JTU19VUkwgImh0dHBzOi8vbXVsdGltYy5vcmcvcnNzLnhtbCIgQ0FDSEUg U1RSSU5HICJVUkwgdG8gZmV0Y2ggTGF1bmNoZXIncyBuZXdzIFJTUyBmZWVkIGZyb20uIikKKytz ZXQoTGF1bmNoZXJfTkVXU19SU1NfVVJMICJodHRwczovL3BvbHltYy5naXRodWIuaW8vZmVlZC9m ZWVkLnhtbCIgQ0FDSEUgU1RSSU5HICJVUkwgdG8gZmV0Y2ggUG9seU1DJ3MgbmV3cyBSU1MgZmVl ZCBmcm9tLiIpCisrc2V0KExhdW5jaGVyX05FV1NfT1BFTl9VUkwgImh0dHBzOi8vcG9seW1jLmdp dGh1Yi5pby9uZXdzLyIgQ0FDSEUgU1RSSU5HICJVUkwgdGhhdCBnZXRzIG9wZW5lZCB3aGVuIHRo ZSB1c2VyIGNsaWNrcyAnTW9yZSBOZXdzJyIpCisgCisgIyMjIyMjIyMgU2V0IHZlcnNpb24gbnVt YmVycyAjIyMjIyMjIworIHNldChMYXVuY2hlcl9WRVJTSU9OX01BSk9SICAgIDEpCitAQCAtNjgs OSArNjksNiBAQCBzZXQoTGF1bmNoZXJfTk9USUZJQ0FUSU9OX1VSTCAiIiBDQUNIRSBTVFJJTkcg IlVSTCBmb3IgY2hlY2tpbmcgZm9yIG5vdGlmaWNhdGlvbgorICMgVGhlIG1ldGFkYXRhIHNlcnZl cgorIHNldChMYXVuY2hlcl9NRVRBX1VSTCAiaHR0cHM6Ly9tZXRhLnBvbHltYy5vcmcvdjEvIiBD QUNIRSBTVFJJTkcgIlVSTCB0byBmZXRjaCBQb2x5TUMncyBtZXRhIGZpbGVzIGZyb20uIikKKyAK Ky0jIHBhc3RlLmVlIEFQSSBrZXkKKy1zZXQoTGF1bmNoZXJfUEFTVEVfRUVfQVBJX0tFWSAidXRM dmNpVW91U1VSRnpmalB4TEJmNVc0SVNzVVg0cHdCREY3TjFBZloiIENBQ0hFIFNUUklORyAiQVBJ IGtleSB5b3UgY2FuIGdldCBmcm9tIHBhc3RlLmVlIHdoZW4geW91IHJlZ2lzdGVyIGFuIGFjY291 bnQiKQorLQorICMgSW1ndXIgQVBJIENsaWVudCBJRAorIHNldChMYXVuY2hlcl9JTUdVUl9DTElF TlRfSUQgIjViOTdiMDcxM2ZiYTRhMyIgQ0FDSEUgU1RSSU5HICJDbGllbnQgSUQgeW91IGNhbiBn ZXQgZnJvbSBJbWd1ciB3aGVuIHlvdSByZWdpc3RlciBhbiBhcHBsaWNhdGlvbiIpCisgCitAQCAt ODAsNiArNzgsOSBAQCBzZXQoTGF1bmNoZXJfTVNBX0NMSUVOVF9JRCAiMTdiNDdlZGQtYzg4NC00 OTk3LTkyNmQtOWU3ZjlhNmI0NjQ3IiBDQUNIRSBTVFJJTkcgIgorICMgQnVnIHRyYWNrZXIgVVJM Cisgc2V0KExhdW5jaGVyX0JVR19UUkFDS0VSX1VSTCAiaHR0cHM6Ly9naXRodWIuY29tL1BvbHlN Qy9Qb2x5TUMvaXNzdWVzIiBDQUNIRSBTVFJJTkcgIlVSTCBmb3IgdGhlIGJ1ZyB0cmFja2VyLiIp CisgCisrIyBUcmFuc2xhdGlvbnMgUGxhdGZvcm0gVVJMCisrc2V0KExhdW5jaGVyX1RSQU5TTEFU SU9OU19VUkwgImh0dHBzOi8vaG9zdGVkLndlYmxhdGUub3JnL3Byb2plY3RzL3BvbHltYy9wb2x5 bWMvIiBDQUNIRSBTVFJJTkcgIlVSTCBmb3IgdGhlIHRyYW5zbGF0aW9ucyBwbGF0Zm9ybS4iKQor KworICMgRGlzY29yZCBVUkwKKyBzZXQoTGF1bmNoZXJfRElTQ09SRF9VUkwgImh0dHBzOi8vZGlz Y29yZC5nZy9aNTJwd3hXQ0hQIiBDQUNIRSBTVFJJTkcgIlVSTCBmb3IgdGhlIERpc2NvcmQgZ3Vp bGQuIikKKyAKK2RpZmYgLS1naXQgYS9idWlsZGNvbmZpZy9CdWlsZENvbmZpZy5jcHAuaW4gYi9i dWlsZGNvbmZpZy9CdWlsZENvbmZpZy5jcHAuaW4KK2luZGV4IGFmODg0NWRjLi4yYzg3MjEyNCAx MDA2NDQKKy0tLSBhL2J1aWxkY29uZmlnL0J1aWxkQ29uZmlnLmNwcC5pbgorKysrIGIvYnVpbGRj b25maWcvQnVpbGRDb25maWcuY3BwLmluCitAQCAtNDIsMTIgKzQyLDEzIEBAIENvbmZpZzo6Q29u ZmlnKCkKKyAKKyAgICAgVkVSU0lPTl9TVFIgPSAiQExhdW5jaGVyX1ZFUlNJT05fU1RSSU5HQCI7 CisgICAgIE5FV1NfUlNTX1VSTCA9ICJATGF1bmNoZXJfTkVXU19SU1NfVVJMQCI7CistICAgIFBB U1RFX0VFX0tFWSA9ICJATGF1bmNoZXJfUEFTVEVfRUVfQVBJX0tFWUAiOworKyAgICBORVdTX09Q RU5fVVJMID0gIkBMYXVuY2hlcl9ORVdTX09QRU5fVVJMQCI7CisgICAgIElNR1VSX0NMSUVOVF9J RCA9ICJATGF1bmNoZXJfSU1HVVJfQ0xJRU5UX0lEQCI7CisgICAgIE1TQV9DTElFTlRfSUQgPSAi QExhdW5jaGVyX01TQV9DTElFTlRfSURAIjsKKyAgICAgTUVUQV9VUkwgPSAiQExhdW5jaGVyX01F VEFfVVJMQCI7CisgCisgICAgIEJVR19UUkFDS0VSX1VSTCA9ICJATGF1bmNoZXJfQlVHX1RSQUNL RVJfVVJMQCI7CisrICAgIFRSQU5TTEFUSU9OU19VUkwgPSAiQExhdW5jaGVyX1RSQU5TTEFUSU9O U19VUkxAIjsKKyAgICAgRElTQ09SRF9VUkwgPSAiQExhdW5jaGVyX0RJU0NPUkRfVVJMQCI7Cisg ICAgIFNVQlJFRERJVF9VUkwgPSAiQExhdW5jaGVyX1NVQlJFRERJVF9VUkxAIjsKKyB9CitkaWZm IC0tZ2l0IGEvYnVpbGRjb25maWcvQnVpbGRDb25maWcuaCBiL2J1aWxkY29uZmlnL0J1aWxkQ29u ZmlnLmgKK2luZGV4IDAwOWZiMmJjLi43NjBkMjA4YSAxMDA2NDQKKy0tLSBhL2J1aWxkY29uZmln L0J1aWxkQ29uZmlnLmgKKysrKyBiL2J1aWxkY29uZmlnL0J1aWxkQ29uZmlnLmgKK0BAIC02OCw5 ICs2OCw5IEBAIHB1YmxpYzoKKyAgICAgUVN0cmluZyBORVdTX1JTU19VUkw7CisgCisgICAgIC8q KgorLSAgICAgKiBBUEkga2V5IHlvdSBjYW4gZ2V0IGZyb20gcGFzdGUuZWUgd2hlbiB5b3UgcmVn aXN0ZXIgYW4gYWNjb3VudAorKyAgICAgKiBVUkwgdGhhdCBnZXRzIG9wZW5lZCB3aGVuIHRoZSB1 c2VyIGNsaWNrcyAiTW9yZSBOZXdzIgorICAgICAgKi8KKy0gICAgUVN0cmluZyBQQVNURV9FRV9L RVk7CisrICAgIFFTdHJpbmcgTkVXU19PUEVOX1VSTDsKKyAKKyAgICAgLyoqCisgICAgICAqIENs aWVudCBJRCB5b3UgY2FuIGdldCBmcm9tIEltZ3VyIHdoZW4geW91IHJlZ2lzdGVyIGFuIGFwcGxp Y2F0aW9uCitAQCAtODgsNiArODgsNyBAQCBwdWJsaWM6CisgICAgIFFTdHJpbmcgTUVUQV9VUkw7 CisgCisgICAgIFFTdHJpbmcgQlVHX1RSQUNLRVJfVVJMOworKyAgICBRU3RyaW5nIFRSQU5TTEFU SU9OU19VUkw7CisgICAgIFFTdHJpbmcgRElTQ09SRF9VUkw7CisgICAgIFFTdHJpbmcgU1VCUkVE RElUX1VSTDsKKyAKK0BAIC05Niw3ICs5Nyw3IEBAIHB1YmxpYzoKKyAgICAgUVN0cmluZyBBVVRI X0JBU0UgPSAiaHR0cHM6Ly9hdXRoc2VydmVyLm1vamFuZy5jb20vIjsKKyAgICAgUVN0cmluZyBJ TUdVUl9CQVNFX1VSTCA9ICJodHRwczovL2FwaS5pbWd1ci5jb20vMy8iOworICAgICBRU3RyaW5n IEZNTExJQlNfQkFTRV9VUkwgPSAiaHR0cHM6Ly9maWxlcy5tdWx0aW1jLm9yZy9mbWxsaWJzLyI7 CistICAgIFFTdHJpbmcgVFJBTlNMQVRJT05TX0JBU0VfVVJMID0gImh0dHBzOi8vZmlsZXMubXVs dGltYy5vcmcvdHJhbnNsYXRpb25zLyI7CisrICAgIFFTdHJpbmcgVFJBTlNMQVRJT05TX0JBU0Vf VVJMID0gImh0dHBzOi8vaTE4bi5wb2x5bWMub3JnLyI7CisgCisgICAgIFFTdHJpbmcgTU9EUEFD S1NDSF9BUElfQkFTRV9VUkwgPSAiaHR0cHM6Ly9hcGkubW9kcGFja3MuY2gvIjsKKyAKK2RpZmYg LS1naXQgYS9sYXVuY2hlci9BcHBsaWNhdGlvbi5jcHAgYi9sYXVuY2hlci9BcHBsaWNhdGlvbi5j cHAKK2luZGV4IDliZDRlYmFlLi45NDcyZjBlZiAxMDA2NDQKKy0tLSBhL2xhdW5jaGVyL0FwcGxp Y2F0aW9uLmNwcAorKysrIGIvbGF1bmNoZXIvQXBwbGljYXRpb24uY3BwCitAQCAtMTQsNyArMTQs NyBAQAorICNpbmNsdWRlICJ1aS9wYWdlcy9nbG9iYWwvUHJveHlQYWdlLmgiCisgI2luY2x1ZGUg InVpL3BhZ2VzL2dsb2JhbC9FeHRlcm5hbFRvb2xzUGFnZS5oIgorICNpbmNsdWRlICJ1aS9wYWdl cy9nbG9iYWwvQWNjb3VudExpc3RQYWdlLmgiCistI2luY2x1ZGUgInVpL3BhZ2VzL2dsb2JhbC9Q YXN0ZUVFUGFnZS5oIgorKyNpbmNsdWRlICJ1aS9wYWdlcy9nbG9iYWwvUGFzdGVQYWdlLmgiCisg I2luY2x1ZGUgInVpL3BhZ2VzL2dsb2JhbC9DdXN0b21Db21tYW5kc1BhZ2UuaCIKKyAKKyAjaW5j bHVkZSAidWkvdGhlbWVzL0lUaGVtZS5oIgorQEAgLTcxNCw4ICs3MTQsOCBAQCBBcHBsaWNhdGlv bjo6QXBwbGljYXRpb24oaW50ICZhcmdjLCBjaGFyICoqYXJndikgOiBRQXBwbGljYXRpb24oYXJn YywgYXJndikKKyAKKyAgICAgICAgIG1fc2V0dGluZ3MtPnJlZ2lzdGVyU2V0dGluZygiVXBkYXRl RGlhbG9nR2VvbWV0cnkiLCAiIik7CisgCistICAgICAgICAvLyBwYXN0ZS5lZSBBUEkga2V5Cist ICAgICAgICBtX3NldHRpbmdzLT5yZWdpc3RlclNldHRpbmcoIlBhc3RlRUVBUElLZXkiLCAibXVs dGltYyIpOworKyAgICAgICAgLy8gcGFzdGViaW4gVVJMCisrICAgICAgICBtX3NldHRpbmdzLT5y ZWdpc3RlclNldHRpbmcoIlBhc3RlYmluVVJMIiwgImh0dHBzOi8vMHgwLnN0Iik7CisgCisgICAg ICAgICAvLyBJbml0IHBhZ2UgcHJvdmlkZXIKKyAgICAgICAgIHsKK0BAIC03MjgsNyArNzI4LDcg QEAgQXBwbGljYXRpb246OkFwcGxpY2F0aW9uKGludCAmYXJnYywgY2hhciAqKmFyZ3YpIDogUUFw cGxpY2F0aW9uKGFyZ2MsIGFyZ3YpCisgICAgICAgICAgICAgbV9nbG9iYWxTZXR0aW5nc1Byb3Zp ZGVyLT5hZGRQYWdlPFByb3h5UGFnZT4oKTsKKyAgICAgICAgICAgICBtX2dsb2JhbFNldHRpbmdz UHJvdmlkZXItPmFkZFBhZ2U8RXh0ZXJuYWxUb29sc1BhZ2U+KCk7CisgICAgICAgICAgICAgbV9n bG9iYWxTZXR0aW5nc1Byb3ZpZGVyLT5hZGRQYWdlPEFjY291bnRMaXN0UGFnZT4oKTsKKy0gICAg ICAgICAgICBtX2dsb2JhbFNldHRpbmdzUHJvdmlkZXItPmFkZFBhZ2U8UGFzdGVFRVBhZ2U+KCk7 CisrICAgICAgICAgICAgbV9nbG9iYWxTZXR0aW5nc1Byb3ZpZGVyLT5hZGRQYWdlPFBhc3RlUGFn ZT4oKTsKKyAgICAgICAgIH0KKyAgICAgICAgIHFEZWJ1ZygpIDw8ICI8PiBTZXR0aW5ncyBsb2Fk ZWQuIjsKKyAgICAgfQorZGlmZiAtLWdpdCBhL2xhdW5jaGVyL0NNYWtlTGlzdHMudHh0IGIvbGF1 bmNoZXIvQ01ha2VMaXN0cy50eHQKK2luZGV4IGI1YzUyYWZhLi5jNDliNjhiMiAxMDA2NDQKKy0t LSBhL2xhdW5jaGVyL0NNYWtlTGlzdHMudHh0CisrKysgYi9sYXVuY2hlci9DTWFrZUxpc3RzLnR4 dAorQEAgLTcwNyw4ICs3MDcsOCBAQCBTRVQoTEFVTkNIRVJfU09VUkNFUworICAgICB1aS9wYWdl cy9nbG9iYWwvTGF1bmNoZXJQYWdlLmgKKyAgICAgdWkvcGFnZXMvZ2xvYmFsL1Byb3h5UGFnZS5j cHAKKyAgICAgdWkvcGFnZXMvZ2xvYmFsL1Byb3h5UGFnZS5oCistICAgIHVpL3BhZ2VzL2dsb2Jh bC9QYXN0ZUVFUGFnZS5jcHAKKy0gICAgdWkvcGFnZXMvZ2xvYmFsL1Bhc3RlRUVQYWdlLmgKKysg ICAgdWkvcGFnZXMvZ2xvYmFsL1Bhc3RlUGFnZS5jcHAKKysgICAgdWkvcGFnZXMvZ2xvYmFsL1Bh c3RlUGFnZS5oCisgCisgICAgICMgR1VJIC0gcGxhdGZvcm0gcGFnZXMKKyAgICAgdWkvcGFnZXMv bW9kcGxhdGZvcm0vVmFuaWxsYVBhZ2UuY3BwCitAQCAtODQyLDcgKzg0Miw3IEBAIHF0NV93cmFw X3VpKExBVU5DSEVSX1VJCisgICAgIHVpL3BhZ2VzL2dsb2JhbC9BY2NvdW50TGlzdFBhZ2UudWkK KyAgICAgdWkvcGFnZXMvZ2xvYmFsL0phdmFQYWdlLnVpCisgICAgIHVpL3BhZ2VzL2dsb2JhbC9M YXVuY2hlclBhZ2UudWkKKy0gICAgdWkvcGFnZXMvZ2xvYmFsL1Bhc3RlRUVQYWdlLnVpCisrICAg IHVpL3BhZ2VzL2dsb2JhbC9QYXN0ZVBhZ2UudWkKKyAgICAgdWkvcGFnZXMvZ2xvYmFsL1Byb3h5 UGFnZS51aQorICAgICB1aS9wYWdlcy9nbG9iYWwvTWluZWNyYWZ0UGFnZS51aQorICAgICB1aS9w YWdlcy9nbG9iYWwvRXh0ZXJuYWxUb29sc1BhZ2UudWkKK2RpZmYgLS1naXQgYS9sYXVuY2hlci9u ZXQvUGFzdGVVcGxvYWQuY3BwIGIvbGF1bmNoZXIvbmV0L1Bhc3RlVXBsb2FkLmNwcAoraW5kZXgg NGI2OWI2OGEuLjZjNWFhMjIxIDEwMDY0NAorLS0tIGEvbGF1bmNoZXIvbmV0L1Bhc3RlVXBsb2Fk LmNwcAorKysrIGIvbGF1bmNoZXIvbmV0L1Bhc3RlVXBsb2FkLmNwcAorQEAgLTgsNDQgKzgsMzQg QEAKKyAjaW5jbHVkZSA8UUpzb25Eb2N1bWVudD4KKyAjaW5jbHVkZSA8UUZpbGU+CisgCistUGFz dGVVcGxvYWQ6OlBhc3RlVXBsb2FkKFFXaWRnZXQgKndpbmRvdywgUVN0cmluZyB0ZXh0LCBRU3Ry aW5nIGtleSkgOiBtX3dpbmRvdyh3aW5kb3cpCisrUGFzdGVVcGxvYWQ6OlBhc3RlVXBsb2FkKFFX aWRnZXQgKndpbmRvdywgUVN0cmluZyB0ZXh0LCBRU3RyaW5nIHVybCkgOiBtX3dpbmRvdyh3aW5k b3cpLCBtX3VwbG9hZFVybCh1cmwpLCBtX3RleHQodGV4dC50b1V0ZjgoKSkKKyB7CistICAgIG1f a2V5ID0ga2V5OworLSAgICBRQnl0ZUFycmF5IHRlbXA7CistICAgIFFKc29uT2JqZWN0IHRvcExl dmVsT2JqOworLSAgICBRSnNvbk9iamVjdCBzZWN0aW9uT2JqZWN0OworLSAgICBzZWN0aW9uT2Jq ZWN0Lmluc2VydCgiY29udGVudHMiLCB0ZXh0KTsKKy0gICAgUUpzb25BcnJheSBzZWN0aW9uQXJy YXk7CistICAgIHNlY3Rpb25BcnJheS5hcHBlbmQoc2VjdGlvbk9iamVjdCk7CistICAgIHRvcExl dmVsT2JqLmluc2VydCgiZGVzY3JpcHRpb24iLCAiTG9nIFVwbG9hZCIpOworLSAgICB0b3BMZXZl bE9iai5pbnNlcnQoInNlY3Rpb25zIiwgc2VjdGlvbkFycmF5KTsKKy0gICAgUUpzb25Eb2N1bWVu dCBkb2NPdXQ7CistICAgIGRvY091dC5zZXRPYmplY3QodG9wTGV2ZWxPYmopOworLSAgICBtX2pz b25Db250ZW50ID0gZG9jT3V0LnRvSnNvbigpOworIH0KKyAKKyBQYXN0ZVVwbG9hZDo6flBhc3Rl VXBsb2FkKCkKKyB7CisgfQorIAorLWJvb2wgUGFzdGVVcGxvYWQ6OnZhbGlkYXRlVGV4dCgpCist eworLSAgICByZXR1cm4gbV9qc29uQ29udGVudC5zaXplKCkgPD0gbWF4U2l6ZSgpOworLX0KKy0K KyB2b2lkIFBhc3RlVXBsb2FkOjpleGVjdXRlVGFzaygpCisgeworLSAgICBRTmV0d29ya1JlcXVl c3QgcmVxdWVzdChRVXJsKCJodHRwczovL2FwaS5wYXN0ZS5lZS92MS9wYXN0ZXMiKSk7CisrICAg IFFOZXR3b3JrUmVxdWVzdCByZXF1ZXN0e1FVcmwobV91cGxvYWRVcmwpfTsKKyAgICAgcmVxdWVz dC5zZXRIZWFkZXIoUU5ldHdvcmtSZXF1ZXN0OjpVc2VyQWdlbnRIZWFkZXIsIEJ1aWxkQ29uZmln LlVTRVJfQUdFTlRfVU5DQUNIRUQpOworIAorLSAgICByZXF1ZXN0LnNldFJhd0hlYWRlcigiQ29u dGVudC1UeXBlIiwgImFwcGxpY2F0aW9uL2pzb24iKTsKKy0gICAgcmVxdWVzdC5zZXRSYXdIZWFk ZXIoIkNvbnRlbnQtTGVuZ3RoIiwgUUJ5dGVBcnJheTo6bnVtYmVyKG1fanNvbkNvbnRlbnQuc2l6 ZSgpKSk7CistICAgIHJlcXVlc3Quc2V0UmF3SGVhZGVyKCJYLUF1dGgtVG9rZW4iLCBtX2tleS50 b1N0ZFN0cmluZygpLmNfc3RyKCkpOworKyAgICBRSHR0cE11bHRpUGFydCAqbXVsdGlQYXJ0ID0g bmV3IFFIdHRwTXVsdGlQYXJ0e1FIdHRwTXVsdGlQYXJ0OjpGb3JtRGF0YVR5cGV9OworIAorLSAg ICBRTmV0d29ya1JlcGx5ICpyZXAgPSBBUFBMSUNBVElPTi0+bmV0d29yaygpLT5wb3N0KHJlcXVl c3QsIG1fanNvbkNvbnRlbnQpOworKyAgICBRSHR0cFBhcnQgZmlsZVBhcnQ7CisrICAgIGZpbGVQ YXJ0LnNldEJvZHkobV90ZXh0KTsKKysgICAgZmlsZVBhcnQuc2V0SGVhZGVyKFFOZXR3b3JrUmVx dWVzdDo6Q29udGVudFR5cGVIZWFkZXIsICJ0ZXh0L3BsYWluIik7CisrICAgIGZpbGVQYXJ0LnNl dEhlYWRlcihRTmV0d29ya1JlcXVlc3Q6OkNvbnRlbnREaXNwb3NpdGlvbkhlYWRlciwgImZvcm0t ZGF0YTsgbmFtZT1cImZpbGVcIjsgZmlsZW5hbWU9XCJsb2cudHh0XCIiKTsKKysKKysgICAgbXVs dGlQYXJ0LT5hcHBlbmQoZmlsZVBhcnQpOworKworKyAgICBRTmV0d29ya1JlcGx5ICpyZXAgPSBB UFBMSUNBVElPTi0+bmV0d29yaygpLT5wb3N0KHJlcXVlc3QsIG11bHRpUGFydCk7CisrICAgIG11 bHRpUGFydC0+c2V0UGFyZW50KHJlcCk7CisgCisgICAgIG1fcmVwbHkgPSBzdGQ6OnNoYXJlZF9w dHI8UU5ldHdvcmtSZXBseT4ocmVwKTsKKy0gICAgc2V0U3RhdHVzKHRyKCJVcGxvYWRpbmcgdG8g cGFzdGUuZWUiKSk7CisrICAgIHNldFN0YXR1cyh0cigiVXBsb2FkaW5nIHRvICUxIikuYXJnKG1f dXBsb2FkVXJsKSk7CisrCisgICAgIGNvbm5lY3QocmVwLCAmUU5ldHdvcmtSZXBseTo6dXBsb2Fk UHJvZ3Jlc3MsIHRoaXMsICZUYXNrOjpzZXRQcm9ncmVzcyk7CisgICAgIGNvbm5lY3QocmVwLCBT SUdOQUwoZXJyb3IoUU5ldHdvcmtSZXBseTo6TmV0d29ya0Vycm9yKSksIHRoaXMsIFNMT1QoZG93 bmxvYWRFcnJvcihRTmV0d29ya1JlcGx5OjpOZXR3b3JrRXJyb3IpKSk7CisgICAgIGNvbm5lY3Qo cmVwLCBTSUdOQUwoZmluaXNoZWQoKSksIHRoaXMsIFNMT1QoZG93bmxvYWRGaW5pc2hlZCgpKSk7 CitAQCAtNjEsNDUgKzUxLDIzIEBAIHZvaWQgUGFzdGVVcGxvYWQ6OmRvd25sb2FkRXJyb3IoUU5l dHdvcmtSZXBseTo6TmV0d29ya0Vycm9yIGVycm9yKQorIHZvaWQgUGFzdGVVcGxvYWQ6OmRvd25s b2FkRmluaXNoZWQoKQorIHsKKyAgICAgUUJ5dGVBcnJheSBkYXRhID0gbV9yZXBseS0+cmVhZEFs bCgpOworLSAgICAvLyBpZiB0aGUgZG93bmxvYWQgc3VjY2VlZGVkCistICAgIGlmIChtX3JlcGx5 LT5lcnJvcigpID09IFFOZXR3b3JrUmVwbHk6Ok5ldHdvcmtFcnJvcjo6Tm9FcnJvcikKKysgICAg aW50IHN0YXR1c0NvZGUgPSBtX3JlcGx5LT5hdHRyaWJ1dGUoUU5ldHdvcmtSZXF1ZXN0OjpIdHRw U3RhdHVzQ29kZUF0dHJpYnV0ZSkudG9JbnQoKTsKKysKKysgICAgaWYgKG1fcmVwbHktPmVycm9y KCkgIT0gUU5ldHdvcmtSZXBseTo6TmV0d29ya0Vycm9yOjpOb0Vycm9yKQorICAgICB7CistICAg ICAgICBtX3JlcGx5LnJlc2V0KCk7CistICAgICAgICBRSnNvblBhcnNlRXJyb3IganNvbkVycm9y OworLSAgICAgICAgUUpzb25Eb2N1bWVudCBkb2MgPSBRSnNvbkRvY3VtZW50Ojpmcm9tSnNvbihk YXRhLCAmanNvbkVycm9yKTsKKy0gICAgICAgIGlmIChqc29uRXJyb3IuZXJyb3IgIT0gUUpzb25Q YXJzZUVycm9yOjpOb0Vycm9yKQorLSAgICAgICAgeworLSAgICAgICAgICAgIGVtaXRGYWlsZWQo anNvbkVycm9yLmVycm9yU3RyaW5nKCkpOworLSAgICAgICAgICAgIHJldHVybjsKKy0gICAgICAg IH0KKy0gICAgICAgIGlmICghcGFyc2VSZXN1bHQoZG9jKSkKKy0gICAgICAgIHsKKy0gICAgICAg ICAgICBlbWl0RmFpbGVkKHRyKCJwYXN0ZS5lZSByZXR1cm5lZCBhbiBlcnJvci4gUGxlYXNlIGNv bnN1bHQgdGhlIGxvZ3MgZm9yIG1vcmUgaW5mb3JtYXRpb24iKSk7CistICAgICAgICAgICAgcmV0 dXJuOworLSAgICAgICAgfQorLSAgICB9CistICAgIC8vIGVsc2UgdGhlIGRvd25sb2FkIGZhaWxl ZAorLSAgICBlbHNlCistICAgIHsKKy0gICAgICAgIGVtaXRGYWlsZWQoUVN0cmluZygiTmV0d29y ayBlcnJvcjogJTEiKS5hcmcobV9yZXBseS0+ZXJyb3JTdHJpbmcoKSkpOworKyAgICAgICAgZW1p dEZhaWxlZCh0cigiTmV0d29yayBlcnJvcjogJTEiKS5hcmcobV9yZXBseS0+ZXJyb3JTdHJpbmco KSkpOworICAgICAgICAgbV9yZXBseS5yZXNldCgpOworICAgICAgICAgcmV0dXJuOworICAgICB9 CisrICAgIGVsc2UgaWYgKHN0YXR1c0NvZGUgIT0gMjAwKQorKyAgICB7CisrICAgICAgICBRU3Ry aW5nIHJlYXNvblBocmFzZSA9IG1fcmVwbHktPmF0dHJpYnV0ZShRTmV0d29ya1JlcXVlc3Q6Okh0 dHBSZWFzb25QaHJhc2VBdHRyaWJ1dGUpLnRvU3RyaW5nKCk7CisrICAgICAgICBlbWl0RmFpbGVk KHRyKCJFcnJvcjogJTEgcmV0dXJuZWQgdW5leHBlY3RlZCBzdGF0dXMgY29kZSAlMiAlMyIpLmFy ZyhtX3VwbG9hZFVybCkuYXJnKHN0YXR1c0NvZGUpLmFyZyhyZWFzb25QaHJhc2UpKTsKKysgICAg ICAgIHFDcml0aWNhbCgpIDw8IG1fdXBsb2FkVXJsIDw8ICIgcmV0dXJuZWQgdW5leHBlY3RlZCBz dGF0dXMgY29kZSAiIDw8IHN0YXR1c0NvZGUgPDwgIiB3aXRoIGJvZHk6ICIgPDwgZGF0YTsKKysg ICAgICAgIG1fcmVwbHkucmVzZXQoKTsKKysgICAgICAgIHJldHVybjsKKysgICAgfQorKworKyAg ICBtX3Bhc3RlTGluayA9IFFTdHJpbmc6OmZyb21VdGY4KGRhdGEpOworICAgICBlbWl0U3VjY2Vl ZGVkKCk7CisgfQorLQorLWJvb2wgUGFzdGVVcGxvYWQ6OnBhcnNlUmVzdWx0KFFKc29uRG9jdW1l bnQgZG9jKQorLXsKKy0gICAgYXV0byBvYmplY3QgPSBkb2Mub2JqZWN0KCk7CistICAgIGF1dG8g c3RhdHVzID0gb2JqZWN0LnZhbHVlKCJzdWNjZXNzIikudG9Cb29sKCk7CistICAgIGlmICghc3Rh dHVzKQorLSAgICB7CistICAgICAgICBxQ3JpdGljYWwoKSA8PCAicGFzdGUuZWUgcmVwb3J0ZWQg ZXJyb3I6IiA8PCBRU3RyaW5nKG9iamVjdC52YWx1ZSgiZXJyb3IiKS50b1N0cmluZygpKTsKKy0g ICAgICAgIHJldHVybiBmYWxzZTsKKy0gICAgfQorLSAgICBtX3Bhc3RlTGluayA9IG9iamVjdC52 YWx1ZSgibGluayIpLnRvU3RyaW5nKCk7CistICAgIG1fcGFzdGVJRCA9IG9iamVjdC52YWx1ZSgi aWQiKS50b1N0cmluZygpOworLSAgICBxRGVidWcoKSA8PCBtX3Bhc3RlTGluazsKKy0gICAgcmV0 dXJuIHRydWU7CistfQorLQorZGlmZiAtLWdpdCBhL2xhdW5jaGVyL25ldC9QYXN0ZVVwbG9hZC5o IGIvbGF1bmNoZXIvbmV0L1Bhc3RlVXBsb2FkLmgKK2luZGV4IDU1MTRlMDU4Li42MmIyZGMzNiAx MDA2NDQKKy0tLSBhL2xhdW5jaGVyL25ldC9QYXN0ZVVwbG9hZC5oCisrKysgYi9sYXVuY2hlci9u ZXQvUGFzdGVVcGxvYWQuaAorQEAgLTgsMzcgKzgsMjEgQEAgY2xhc3MgUGFzdGVVcGxvYWQgOiBw dWJsaWMgVGFzaworIHsKKyAgICAgUV9PQkpFQ1QKKyBwdWJsaWM6CistICAgIFBhc3RlVXBsb2Fk KFFXaWRnZXQgKndpbmRvdywgUVN0cmluZyB0ZXh0LCBRU3RyaW5nIGtleSA9ICJwdWJsaWMiKTsK KysgICAgUGFzdGVVcGxvYWQoUVdpZGdldCAqd2luZG93LCBRU3RyaW5nIHRleHQsIFFTdHJpbmcg dXJsKTsKKyAgICAgdmlydHVhbCB+UGFzdGVVcGxvYWQoKTsKKyAKKyAgICAgUVN0cmluZyBwYXN0 ZUxpbmsoKQorICAgICB7CisgICAgICAgICByZXR1cm4gbV9wYXN0ZUxpbms7CisgICAgIH0KKy0g ICAgUVN0cmluZyBwYXN0ZUlEKCkKKy0gICAgeworLSAgICAgICAgcmV0dXJuIG1fcGFzdGVJRDsK Ky0gICAgfQorLSAgICBpbnQgbWF4U2l6ZSgpCistICAgIHsKKy0gICAgICAgIC8vIDJNQiBmb3Ig cGFzdGUuZWUgLSBwdWJsaWMKKy0gICAgICAgIGlmKG1fa2V5ID09ICJwdWJsaWMiKQorLSAgICAg ICAgICAgIHJldHVybiAxMDI0KjEwMjQqMjsKKy0gICAgICAgIC8vIDEyTUIgZm9yIHBhc3RlLmVl IC0gd2l0aCBhY3R1YWwga2V5CistICAgICAgICByZXR1cm4gMTAyNCoxMDI0KjEyOworLSAgICB9 CistICAgIGJvb2wgdmFsaWRhdGVUZXh0KCk7CisgcHJvdGVjdGVkOgorICAgICB2aXJ0dWFsIHZv aWQgZXhlY3V0ZVRhc2soKTsKKyAKKyBwcml2YXRlOgorLSAgICBib29sIHBhcnNlUmVzdWx0KFFK c29uRG9jdW1lbnQgZG9jKTsKKy0gICAgUVN0cmluZyBtX2Vycm9yOworICAgICBRV2lkZ2V0ICpt X3dpbmRvdzsKKy0gICAgUVN0cmluZyBtX3Bhc3RlSUQ7CisgICAgIFFTdHJpbmcgbV9wYXN0ZUxp bms7CistICAgIFFTdHJpbmcgbV9rZXk7CistICAgIFFCeXRlQXJyYXkgbV9qc29uQ29udGVudDsK KysgICAgUVN0cmluZyBtX3VwbG9hZFVybDsKKysgICAgUUJ5dGVBcnJheSBtX3RleHQ7CisgICAg IHN0ZDo6c2hhcmVkX3B0cjxRTmV0d29ya1JlcGx5PiBtX3JlcGx5OworIHB1YmxpYworIHNsb3Rz OgorZGlmZiAtLWdpdCBhL2xhdW5jaGVyL25ld3MvTmV3c0NoZWNrZXIuY3BwIGIvbGF1bmNoZXIv bmV3cy9OZXdzQ2hlY2tlci5jcHAKK2luZGV4IDRmNDM1OWI4Li42NzI0OTUwZiAxMDA2NDQKKy0t LSBhL2xhdW5jaGVyL25ld3MvTmV3c0NoZWNrZXIuY3BwCisrKysgYi9sYXVuY2hlci9uZXdzL05l d3NDaGVja2VyLmNwcAorQEAgLTcwLDcgKzcwLDcgQEAgdm9pZCBOZXdzQ2hlY2tlcjo6cnNzRG93 bmxvYWRGaW5pc2hlZCgpCisgICAgIH0KKyAKKyAgICAgLy8gSWYgdGhlIHBhcnNpbmcgc3VjY2Vl ZGVkLCByZWFkIGl0LgorLSAgICBRRG9tTm9kZUxpc3QgaXRlbXMgPSBkb2MuZWxlbWVudHNCeVRh Z05hbWUoIml0ZW0iKTsKKysgICAgUURvbU5vZGVMaXN0IGl0ZW1zID0gZG9jLmVsZW1lbnRzQnlU YWdOYW1lKCJlbnRyeSIpOworICAgICBtX25ld3NFbnRyaWVzLmNsZWFyKCk7CisgICAgIGZvciAo aW50IGkgPSAwOyBpIDwgaXRlbXMubGVuZ3RoKCk7IGkrKykKKyAgICAgeworZGlmZiAtLWdpdCBh L2xhdW5jaGVyL3RyYW5zbGF0aW9ucy9UcmFuc2xhdGlvbnNNb2RlbC5jcHAgYi9sYXVuY2hlci90 cmFuc2xhdGlvbnMvVHJhbnNsYXRpb25zTW9kZWwuY3BwCitpbmRleCAyZTc0NDAwNy4uNWY3ZGI0 ZDcgMTAwNjQ0CistLS0gYS9sYXVuY2hlci90cmFuc2xhdGlvbnMvVHJhbnNsYXRpb25zTW9kZWwu Y3BwCisrKysgYi9sYXVuY2hlci90cmFuc2xhdGlvbnMvVHJhbnNsYXRpb25zTW9kZWwuY3BwCitA QCAtNTc2LDcgKzU3Niw3IEBAIHZvaWQgVHJhbnNsYXRpb25zTW9kZWw6OmRvd25sb2FkSW5kZXgo KQorICAgICBkLT5tX2luZGV4X2pvYiA9IG5ldyBOZXRKb2IoIlRyYW5zbGF0aW9ucyBJbmRleCIs IEFQUExJQ0FUSU9OLT5uZXR3b3JrKCkpOworICAgICBNZXRhRW50cnlQdHIgZW50cnkgPSBBUFBM SUNBVElPTi0+bWV0YWNhY2hlKCktPnJlc29sdmVFbnRyeSgidHJhbnNsYXRpb25zIiwgImluZGV4 X3YyLmpzb24iKTsKKyAgICAgZW50cnktPnNldFN0YWxlKHRydWUpOworLSAgICBkLT5tX2luZGV4 X3Rhc2sgPSBOZXQ6OkRvd25sb2FkOjptYWtlQ2FjaGVkKFFVcmwoImh0dHBzOi8vZmlsZXMubXVs dGltYy5vcmcvdHJhbnNsYXRpb25zL2luZGV4X3YyLmpzb24iKSwgZW50cnkpOworKyAgICBkLT5t X2luZGV4X3Rhc2sgPSBOZXQ6OkRvd25sb2FkOjptYWtlQ2FjaGVkKFFVcmwoQnVpbGRDb25maWcu VFJBTlNMQVRJT05TX0JBU0VfVVJMICsgImluZGV4X3YyLmpzb24iKSwgZW50cnkpOworICAgICBk LT5tX2luZGV4X2pvYi0+YWRkTmV0QWN0aW9uKGQtPm1faW5kZXhfdGFzayk7CisgICAgIGNvbm5l Y3QoZC0+bV9pbmRleF9qb2IuZ2V0KCksICZOZXRKb2I6OmZhaWxlZCwgdGhpcywgJlRyYW5zbGF0 aW9uc01vZGVsOjppbmRleEZhaWxlZCk7CisgICAgIGNvbm5lY3QoZC0+bV9pbmRleF9qb2IuZ2V0 KCksICZOZXRKb2I6OnN1Y2NlZWRlZCwgdGhpcywgJlRyYW5zbGF0aW9uc01vZGVsOjppbmRleFJl Y2VpdmVkKTsKK2RpZmYgLS1naXQgYS9sYXVuY2hlci91aS9HdWlVdGlsLmNwcCBiL2xhdW5jaGVy L3VpL0d1aVV0aWwuY3BwCitpbmRleCBlZmIxYTRkZi4uOWViNjU4ZTIgMTAwNjQ0CistLS0gYS9s YXVuY2hlci91aS9HdWlVdGlsLmNwcAorKysrIGIvbGF1bmNoZXIvdWkvR3VpVXRpbC5jcHAKK0BA IC0xNiwyMSArMTYsOCBAQAorIFFTdHJpbmcgR3VpVXRpbDo6dXBsb2FkUGFzdGUoY29uc3QgUVN0 cmluZyAmdGV4dCwgUVdpZGdldCAqcGFyZW50V2lkZ2V0KQorIHsKKyAgICAgUHJvZ3Jlc3NEaWFs b2cgZGlhbG9nKHBhcmVudFdpZGdldCk7CistICAgIGF1dG8gQVBJS2V5U2V0dGluZyA9IEFQUExJ Q0FUSU9OLT5zZXR0aW5ncygpLT5nZXQoIlBhc3RlRUVBUElLZXkiKS50b1N0cmluZygpOworLSAg ICBpZihBUElLZXlTZXR0aW5nID09ICJtdWx0aW1jIikKKy0gICAgeworLSAgICAgICAgQVBJS2V5 U2V0dGluZyA9IEJ1aWxkQ29uZmlnLlBBU1RFX0VFX0tFWTsKKy0gICAgfQorLSAgICBzdGQ6OnVu aXF1ZV9wdHI8UGFzdGVVcGxvYWQ+IHBhc3RlKG5ldyBQYXN0ZVVwbG9hZChwYXJlbnRXaWRnZXQs IHRleHQsIEFQSUtleVNldHRpbmcpKTsKKy0KKy0gICAgaWYgKCFwYXN0ZS0+dmFsaWRhdGVUZXh0 KCkpCistICAgIHsKKy0gICAgICAgIEN1c3RvbU1lc3NhZ2VCb3g6OnNlbGVjdGFibGUoCistICAg ICAgICAgICAgcGFyZW50V2lkZ2V0LCBRT2JqZWN0Ojp0cigiVXBsb2FkIGZhaWxlZCIpLAorLSAg ICAgICAgICAgIFFPYmplY3Q6OnRyKCJUaGUgbG9nIGZpbGUgaXMgdG9vIGJpZy4gWW91J2xsIGhh dmUgdG8gdXBsb2FkIGl0IG1hbnVhbGx5LiIpLAorLSAgICAgICAgICAgIFFNZXNzYWdlQm94OjpX YXJuaW5nKS0+ZXhlYygpOworLSAgICAgICAgcmV0dXJuIFFTdHJpbmcoKTsKKy0gICAgfQorKyAg ICBhdXRvIHBhc3RlVXJsU2V0dGluZyA9IEFQUExJQ0FUSU9OLT5zZXR0aW5ncygpLT5nZXQoIlBh c3RlYmluVVJMIikudG9TdHJpbmcoKTsKKysgICAgc3RkOjp1bmlxdWVfcHRyPFBhc3RlVXBsb2Fk PiBwYXN0ZShuZXcgUGFzdGVVcGxvYWQocGFyZW50V2lkZ2V0LCB0ZXh0LCBwYXN0ZVVybFNldHRp bmcpKTsKKyAKKyAgICAgZGlhbG9nLmV4ZWNXaXRoVGFzayhwYXN0ZS5nZXQoKSk7CisgICAgIGlm ICghcGFzdGUtPndhc1N1Y2Nlc3NmdWwoKSkKK2RpZmYgLS1naXQgYS9sYXVuY2hlci91aS9NYWlu V2luZG93LmNwcCBiL2xhdW5jaGVyL3VpL01haW5XaW5kb3cuY3BwCitpbmRleCAzZGNjOGVlOS4u MzJiMjdhZmIgMTAwNjQ0CistLS0gYS9sYXVuY2hlci91aS9NYWluV2luZG93LmNwcAorKysrIGIv bGF1bmNoZXIvdWkvTWFpbldpbmRvdy5jcHAKK0BAIC0xNjg3LDcgKzE2ODcsNyBAQCB2b2lkIE1h aW5XaW5kb3c6Om9uX2FjdGlvblJlcG9ydEJ1Z190cmlnZ2VyZWQoKQorIAorIHZvaWQgTWFpbldp bmRvdzo6b25fYWN0aW9uTW9yZU5ld3NfdHJpZ2dlcmVkKCkKKyB7CistICAgIERlc2t0b3BTZXJ2 aWNlczo6b3BlblVybChRVXJsKCJodHRwczovL211bHRpbWMub3JnL3Bvc3RzLmh0bWwiKSk7Cisr ICAgIERlc2t0b3BTZXJ2aWNlczo6b3BlblVybChRVXJsKEJ1aWxkQ29uZmlnLk5FV1NfT1BFTl9V UkwpKTsKKyB9CisgCisgdm9pZCBNYWluV2luZG93OjpuZXdzQnV0dG9uQ2xpY2tlZCgpCitAQCAt MTY5OSw3ICsxNjk5LDcgQEAgdm9pZCBNYWluV2luZG93OjpuZXdzQnV0dG9uQ2xpY2tlZCgpCisg ICAgIH0KKyAgICAgZWxzZQorICAgICB7CistICAgICAgICBEZXNrdG9wU2VydmljZXM6Om9wZW5V cmwoUVVybCgiaHR0cHM6Ly9tdWx0aW1jLm9yZy9wb3N0cy5odG1sIikpOworKyAgICAgICAgRGVz a3RvcFNlcnZpY2VzOjpvcGVuVXJsKFFVcmwoQnVpbGRDb25maWcuTkVXU19PUEVOX1VSTCkpOwor ICAgICB9CisgfQorIAorZGlmZiAtLWdpdCBhL2xhdW5jaGVyL3VpL3BhZ2VzL2dsb2JhbC9QYXN0 ZUVFUGFnZS5jcHAgYi9sYXVuY2hlci91aS9wYWdlcy9nbG9iYWwvUGFzdGVQYWdlLmNwcAorc2lt aWxhcml0eSBpbmRleCA1MSUKK3JlbmFtZSBmcm9tIGxhdW5jaGVyL3VpL3BhZ2VzL2dsb2JhbC9Q YXN0ZUVFUGFnZS5jcHAKK3JlbmFtZSB0byBsYXVuY2hlci91aS9wYWdlcy9nbG9iYWwvUGFzdGVQ YWdlLmNwcAoraW5kZXggNGIzNzVkOWEuLjdjNjllMWE0IDEwMDY0NAorLS0tIGEvbGF1bmNoZXIv dWkvcGFnZXMvZ2xvYmFsL1Bhc3RlRUVQYWdlLmNwcAorKysrIGIvbGF1bmNoZXIvdWkvcGFnZXMv Z2xvYmFsL1Bhc3RlUGFnZS5jcHAKK0BAIC0xLDQgKzEsNCBAQAorLS8qIENvcHlyaWdodCAyMDEz LTIwMjEgTXVsdGlNQyBDb250cmlidXRvcnMKKysvKiBDb3B5cmlnaHQgMjAxMy0yMDIxIE11bHRp TUMgJiBQb2x5TUMgQ29udHJpYnV0b3JzCisgICoKKyAgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBh Y2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAgKiB5b3UgbWF5IG5v dCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCitA QCAtMTMsNjkgKzEzLDUxIEBACisgICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisg ICovCisgCistI2luY2x1ZGUgIlBhc3RlRUVQYWdlLmgiCistI2luY2x1ZGUgInVpX1Bhc3RlRUVQ YWdlLmgiCisrI2luY2x1ZGUgIlBhc3RlUGFnZS5oIgorKyNpbmNsdWRlICJ1aV9QYXN0ZVBhZ2Uu aCIKKyAKKyAjaW5jbHVkZSA8UU1lc3NhZ2VCb3g+CisgI2luY2x1ZGUgPFFGaWxlRGlhbG9nPgor ICNpbmNsdWRlIDxRU3RhbmRhcmRQYXRocz4KKyAjaW5jbHVkZSA8UVRhYkJhcj4KKysjaW5jbHVk ZSA8UVZhcmlhbnQ+CisgCisgI2luY2x1ZGUgInNldHRpbmdzL1NldHRpbmdzT2JqZWN0LmgiCisg I2luY2x1ZGUgInRvb2xzL0Jhc2VQcm9maWxlci5oIgorICNpbmNsdWRlICJBcHBsaWNhdGlvbi5o IgorIAorLVBhc3RlRUVQYWdlOjpQYXN0ZUVFUGFnZShRV2lkZ2V0ICpwYXJlbnQpIDoKKytQYXN0 ZVBhZ2U6OlBhc3RlUGFnZShRV2lkZ2V0ICpwYXJlbnQpIDoKKyAgICAgUVdpZGdldChwYXJlbnQp LAorLSAgICB1aShuZXcgVWk6OlBhc3RlRUVQYWdlKQorKyAgICB1aShuZXcgVWk6OlBhc3RlUGFn ZSkKKyB7CisrICAgIHN0YXRpYyBRUmVndWxhckV4cHJlc3Npb24gdmFsaWRVcmxSZWdFeHAoImh0 dHBzPzovLy4rIik7CisgICAgIHVpLT5zZXR1cFVpKHRoaXMpOworKyAgICB1aS0+dXJsQ2hvaWNl cy0+c2V0VmFsaWRhdG9yKG5ldyBRUmVndWxhckV4cHJlc3Npb25WYWxpZGF0b3IodmFsaWRVcmxS ZWdFeHAsIHVpLT51cmxDaG9pY2VzKSk7CisgICAgIHVpLT50YWJXaWRnZXQtPnRhYkJhcigpLT5o aWRlKCk7XAorLSAgICBjb25uZWN0KHVpLT5jdXN0b21BUElrZXlFZGl0LCAmUUxpbmVFZGl0Ojp0 ZXh0RWRpdGVkLCB0aGlzLCAmUGFzdGVFRVBhZ2U6OnRleHRFZGl0ZWQpOworICAgICBsb2FkU2V0 dGluZ3MoKTsKKyB9CisgCistUGFzdGVFRVBhZ2U6On5QYXN0ZUVFUGFnZSgpCisrUGFzdGVQYWdl Ojp+UGFzdGVQYWdlKCkKKyB7CisgICAgIGRlbGV0ZSB1aTsKKyB9CisgCistdm9pZCBQYXN0ZUVF UGFnZTo6bG9hZFNldHRpbmdzKCkKKyt2b2lkIFBhc3RlUGFnZTo6bG9hZFNldHRpbmdzKCkKKyB7 CisgICAgIGF1dG8gcyA9IEFQUExJQ0FUSU9OLT5zZXR0aW5ncygpOworLSAgICBRU3RyaW5nIGtl eVRvVXNlID0gcy0+Z2V0KCJQYXN0ZUVFQVBJS2V5IikudG9TdHJpbmcoKTsKKy0gICAgaWYoa2V5 VG9Vc2UgPT0gIm11bHRpbWMiKQorLSAgICB7CistICAgICAgICB1aS0+bXVsdGltY0J1dHRvbi0+ c2V0Q2hlY2tlZCh0cnVlKTsKKy0gICAgfQorLSAgICBlbHNlCistICAgIHsKKy0gICAgICAgIHVp LT5jdXN0b21CdXR0b24tPnNldENoZWNrZWQodHJ1ZSk7CistICAgICAgICB1aS0+Y3VzdG9tQVBJ a2V5RWRpdC0+c2V0VGV4dChrZXlUb1VzZSk7CistICAgIH0KKysgICAgUVN0cmluZyBwYXN0ZWJp blVSTCA9IHMtPmdldCgiUGFzdGViaW5VUkwiKS50b1N0cmluZygpOworKyAgICB1aS0+dXJsQ2hv aWNlcy0+c2V0Q3VycmVudFRleHQocGFzdGViaW5VUkwpOworIH0KKyAKKy12b2lkIFBhc3RlRUVQ YWdlOjphcHBseVNldHRpbmdzKCkKKyt2b2lkIFBhc3RlUGFnZTo6YXBwbHlTZXR0aW5ncygpCisg eworICAgICBhdXRvIHMgPSBBUFBMSUNBVElPTi0+c2V0dGluZ3MoKTsKKy0KKy0gICAgUVN0cmlu ZyBwYXN0ZUtleVRvVXNlOworLSAgICBpZiAodWktPmN1c3RvbUJ1dHRvbi0+aXNDaGVja2VkKCkp CistICAgICAgICBwYXN0ZUtleVRvVXNlID0gdWktPmN1c3RvbUFQSWtleUVkaXQtPnRleHQoKTsK Ky0gICAgZWxzZQorLSAgICB7CistICAgICAgICBwYXN0ZUtleVRvVXNlID0gICJtdWx0aW1jIjsK Ky0gICAgfQorLSAgICBzLT5zZXQoIlBhc3RlRUVBUElLZXkiLCBwYXN0ZUtleVRvVXNlKTsKKysg ICAgUVN0cmluZyBwYXN0ZWJpblVSTCA9IHVpLT51cmxDaG9pY2VzLT5jdXJyZW50VGV4dCgpOwor KyAgICBzLT5zZXQoIlBhc3RlYmluVVJMIiwgcGFzdGViaW5VUkwpOworIH0KKyAKKy1ib29sIFBh c3RlRUVQYWdlOjphcHBseSgpCisrYm9vbCBQYXN0ZVBhZ2U6OmFwcGx5KCkKKyB7CisgICAgIGFw cGx5U2V0dGluZ3MoKTsKKyAgICAgcmV0dXJuIHRydWU7CisgfQorLQorLXZvaWQgUGFzdGVFRVBh Z2U6OnRleHRFZGl0ZWQoY29uc3QgUVN0cmluZyYgdGV4dCkKKy17CistICAgIHVpLT5jdXN0b21C dXR0b24tPnNldENoZWNrZWQodHJ1ZSk7CistfQorZGlmZiAtLWdpdCBhL2xhdW5jaGVyL3VpL3Bh Z2VzL2dsb2JhbC9QYXN0ZUVFUGFnZS5oIGIvbGF1bmNoZXIvdWkvcGFnZXMvZ2xvYmFsL1Bhc3Rl UGFnZS5oCitzaW1pbGFyaXR5IGluZGV4IDg0JQorcmVuYW1lIGZyb20gbGF1bmNoZXIvdWkvcGFn ZXMvZ2xvYmFsL1Bhc3RlRUVQYWdlLmgKK3JlbmFtZSB0byBsYXVuY2hlci91aS9wYWdlcy9nbG9i YWwvUGFzdGVQYWdlLmgKK2luZGV4IGExYzdkNDM0Li5kNDc1ZGZkOSAxMDA2NDQKKy0tLSBhL2xh dW5jaGVyL3VpL3BhZ2VzL2dsb2JhbC9QYXN0ZUVFUGFnZS5oCisrKysgYi9sYXVuY2hlci91aS9w YWdlcy9nbG9iYWwvUGFzdGVQYWdlLmgKK0BAIC0yMSwxNiArMjEsMTYgQEAKKyAjaW5jbHVkZSA8 QXBwbGljYXRpb24uaD4KKyAKKyBuYW1lc3BhY2UgVWkgeworLWNsYXNzIFBhc3RlRUVQYWdlOwor K2NsYXNzIFBhc3RlUGFnZTsKKyB9CisgCistY2xhc3MgUGFzdGVFRVBhZ2UgOiBwdWJsaWMgUVdp ZGdldCwgcHVibGljIEJhc2VQYWdlCisrY2xhc3MgUGFzdGVQYWdlIDogcHVibGljIFFXaWRnZXQs IHB1YmxpYyBCYXNlUGFnZQorIHsKKyAgICAgUV9PQkpFQ1QKKyAKKyBwdWJsaWM6CistICAgIGV4 cGxpY2l0IFBhc3RlRUVQYWdlKFFXaWRnZXQgKnBhcmVudCA9IDApOworLSAgICB+UGFzdGVFRVBh Z2UoKTsKKysgICAgZXhwbGljaXQgUGFzdGVQYWdlKFFXaWRnZXQgKnBhcmVudCA9IDApOworKyAg ICB+UGFzdGVQYWdlKCk7CisgCisgICAgIFFTdHJpbmcgZGlzcGxheU5hbWUoKSBjb25zdCBvdmVy cmlkZQorICAgICB7CitAQCAtNTQsOSArNTQsNyBAQCBwcml2YXRlOgorICAgICB2b2lkIGxvYWRT ZXR0aW5ncygpOworICAgICB2b2lkIGFwcGx5U2V0dGluZ3MoKTsKKyAKKy1wcml2YXRlIHNsb3Rz OgorLSAgICB2b2lkIHRleHRFZGl0ZWQoY29uc3QgUVN0cmluZyAmdGV4dCk7CistCisgcHJpdmF0 ZToKKy0gICAgVWk6OlBhc3RlRUVQYWdlICp1aTsKKysgICAgVWk6OlBhc3RlUGFnZSAqdWk7Cisg fTsKKysKK2RpZmYgLS1naXQgYS9sYXVuY2hlci91aS9wYWdlcy9nbG9iYWwvUGFzdGVFRVBhZ2Uu dWkgYi9sYXVuY2hlci91aS9wYWdlcy9nbG9iYWwvUGFzdGVQYWdlLnVpCitzaW1pbGFyaXR5IGlu ZGV4IDYxJQorcmVuYW1lIGZyb20gbGF1bmNoZXIvdWkvcGFnZXMvZ2xvYmFsL1Bhc3RlRUVQYWdl LnVpCityZW5hbWUgdG8gbGF1bmNoZXIvdWkvcGFnZXMvZ2xvYmFsL1Bhc3RlUGFnZS51aQoraW5k ZXggMTA4ODM3ODEuLjJkMTNhNzY1IDEwMDY0NAorLS0tIGEvbGF1bmNoZXIvdWkvcGFnZXMvZ2xv YmFsL1Bhc3RlRUVQYWdlLnVpCisrKysgYi9sYXVuY2hlci91aS9wYWdlcy9nbG9iYWwvUGFzdGVQ YWdlLnVpCitAQCAtMSw3ICsxLDcgQEAKKyA8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJV VEYtOCI/PgorIDx1aSB2ZXJzaW9uPSI0LjAiPgorLSA8Y2xhc3M+UGFzdGVFRVBhZ2U8L2NsYXNz PgorLSA8d2lkZ2V0IGNsYXNzPSJRV2lkZ2V0IiBuYW1lPSJQYXN0ZUVFUGFnZSI+CisrIDxjbGFz cz5QYXN0ZVBhZ2U8L2NsYXNzPgorKyA8d2lkZ2V0IGNsYXNzPSJRV2lkZ2V0IiBuYW1lPSJQYXN0 ZVBhZ2UiPgorICAgPHByb3BlcnR5IG5hbWU9Imdlb21ldHJ5Ij4KKyAgICA8cmVjdD4KKyAgICAg PHg+MDwveD4KK0BAIC0zNiwzOSArMzYsOSBAQAorICAgICAgICA8aXRlbT4KKyAgICAgICAgIDx3 aWRnZXQgY2xhc3M9IlFHcm91cEJveCIgbmFtZT0iZ3JvdXBCb3hfMiI+CisgICAgICAgICAgPHBy b3BlcnR5IG5hbWU9InRpdGxlIj4KKy0gICAgICAgICAgPHN0cmluZz5wYXN0ZS5lZSBBUEkga2V5 PC9zdHJpbmc+CisrICAgICAgICAgIDxzdHJpbmc+UGFzdGViaW4gVVJMPC9zdHJpbmc+CisgICAg ICAgICAgPC9wcm9wZXJ0eT4KKy0gICAgICAgICA8bGF5b3V0IGNsYXNzPSJRVkJveExheW91dCIg bmFtZT0idmVydGljYWxMYXlvdXRfMTAiPgorLSAgICAgICAgICA8aXRlbT4KKy0gICAgICAgICAg IDx3aWRnZXQgY2xhc3M9IlFSYWRpb0J1dHRvbiIgbmFtZT0ibXVsdGltY0J1dHRvbiI+CistICAg ICAgICAgICAgPHByb3BlcnR5IG5hbWU9InRleHQiPgorLSAgICAgICAgICAgICA8c3RyaW5nPk11 bHRpTUMga2V5IC0gMTJNQiAmYW1wO3VwbG9hZCBsaW1pdDwvc3RyaW5nPgorLSAgICAgICAgICAg IDwvcHJvcGVydHk+CistICAgICAgICAgICAgPGF0dHJpYnV0ZSBuYW1lPSJidXR0b25Hcm91cCI+ CistICAgICAgICAgICAgIDxzdHJpbmcgbm90cj0idHJ1ZSI+cGFzdGVCdXR0b25Hcm91cDwvc3Ry aW5nPgorLSAgICAgICAgICAgIDwvYXR0cmlidXRlPgorLSAgICAgICAgICAgPC93aWRnZXQ+Cist ICAgICAgICAgIDwvaXRlbT4KKy0gICAgICAgICAgPGl0ZW0+CistICAgICAgICAgICA8d2lkZ2V0 IGNsYXNzPSJRUmFkaW9CdXR0b24iIG5hbWU9ImN1c3RvbUJ1dHRvbiI+CistICAgICAgICAgICAg PHByb3BlcnR5IG5hbWU9InRleHQiPgorLSAgICAgICAgICAgICA8c3RyaW5nPiZhbXA7WW91ciBv d24ga2V5IC0gMTJNQiB1cGxvYWQgbGltaXQ6PC9zdHJpbmc+CistICAgICAgICAgICAgPC9wcm9w ZXJ0eT4KKy0gICAgICAgICAgICA8YXR0cmlidXRlIG5hbWU9ImJ1dHRvbkdyb3VwIj4KKy0gICAg ICAgICAgICAgPHN0cmluZyBub3RyPSJ0cnVlIj5wYXN0ZUJ1dHRvbkdyb3VwPC9zdHJpbmc+Cist ICAgICAgICAgICAgPC9hdHRyaWJ1dGU+CistICAgICAgICAgICA8L3dpZGdldD4KKy0gICAgICAg ICAgPC9pdGVtPgorLSAgICAgICAgICA8aXRlbT4KKy0gICAgICAgICAgIDx3aWRnZXQgY2xhc3M9 IlFMaW5lRWRpdCIgbmFtZT0iY3VzdG9tQVBJa2V5RWRpdCI+CistICAgICAgICAgICAgPHByb3Bl cnR5IG5hbWU9ImVjaG9Nb2RlIj4KKy0gICAgICAgICAgICAgPGVudW0+UUxpbmVFZGl0OjpQYXNz d29yZDwvZW51bT4KKy0gICAgICAgICAgICA8L3Byb3BlcnR5PgorLSAgICAgICAgICAgIDxwcm9w ZXJ0eSBuYW1lPSJwbGFjZWhvbGRlclRleHQiPgorLSAgICAgICAgICAgICA8c3RyaW5nPlBhc3Rl IHlvdXIgQVBJIGtleSBoZXJlITwvc3RyaW5nPgorLSAgICAgICAgICAgIDwvcHJvcGVydHk+Cist ICAgICAgICAgICA8L3dpZGdldD4KKy0gICAgICAgICAgPC9pdGVtPgorKyAgICAgICAgIDxsYXlv dXQgY2xhc3M9IlFWQm94TGF5b3V0IiBuYW1lPSJ2ZXJ0aWNhbExheW91dF8zIj4KKyAgICAgICAg ICAgPGl0ZW0+CisgICAgICAgICAgICA8d2lkZ2V0IGNsYXNzPSJMaW5lIiBuYW1lPSJsaW5lIj4K KyAgICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0ib3JpZW50YXRpb24iPgorQEAgLTc2LDEwICs0 Niw0NSBAQAorICAgICAgICAgICAgIDwvcHJvcGVydHk+CisgICAgICAgICAgICA8L3dpZGdldD4K KyAgICAgICAgICAgPC9pdGVtPgorKyAgICAgICAgICA8aXRlbT4KKysgICAgICAgICAgIDx3aWRn ZXQgY2xhc3M9IlFMYWJlbCIgbmFtZT0ibGFiZWxfMiI+CisrICAgICAgICAgICAgPHByb3BlcnR5 IG5hbWU9ImZvbnQiPgorKyAgICAgICAgICAgICA8Zm9udD4KKysgICAgICAgICAgICAgIDxwb2lu dHNpemU+MTA8L3BvaW50c2l6ZT4KKysgICAgICAgICAgICAgPC9mb250PgorKyAgICAgICAgICAg IDwvcHJvcGVydHk+CisrICAgICAgICAgICAgPHByb3BlcnR5IG5hbWU9InRleHQiPgorKyAgICAg ICAgICAgICA8c3RyaW5nPiZsdDtodG1sJmd0OyZsdDtoZWFkLyZndDsmbHQ7Ym9keSZndDsmbHQ7 cCZndDtOb3RlOiBvbmx5IGlucHV0IHRoYXQgc3RhcnRzIHdpdGggJmx0O3NwYW4gc3R5bGU9JnF1 b3Q7IGZvbnQtd2VpZ2h0OjYwMDsmcXVvdDsmZ3Q7aHR0cDovLyZsdDsvc3BhbiZndDsgb3IgJmx0 O3NwYW4gc3R5bGU9JnF1b3Q7IGZvbnQtd2VpZ2h0OjYwMDsmcXVvdDsmZ3Q7aHR0cHM6Ly8mbHQ7 L3NwYW4mZ3Q7IHdpbGwgYmUgYWNjZXB0ZWQuJmx0Oy9wJmd0OyZsdDsvYm9keSZndDsmbHQ7L2h0 bWwmZ3Q7PC9zdHJpbmc+CisrICAgICAgICAgICAgPC9wcm9wZXJ0eT4KKysgICAgICAgICAgICA8 cHJvcGVydHkgbmFtZT0ic2NhbGVkQ29udGVudHMiPgorKyAgICAgICAgICAgICA8Ym9vbD5mYWxz ZTwvYm9vbD4KKysgICAgICAgICAgICA8L3Byb3BlcnR5PgorKyAgICAgICAgICAgPC93aWRnZXQ+ CisrICAgICAgICAgIDwvaXRlbT4KKysgICAgICAgICAgPGl0ZW0+CisrICAgICAgICAgICA8d2lk Z2V0IGNsYXNzPSJRQ29tYm9Cb3giIG5hbWU9InVybENob2ljZXMiPgorKyAgICAgICAgICAgIDxw cm9wZXJ0eSBuYW1lPSJlZGl0YWJsZSI+CisrICAgICAgICAgICAgIDxib29sPnRydWU8L2Jvb2w+ CisrICAgICAgICAgICAgPC9wcm9wZXJ0eT4KKysgICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0i aW5zZXJ0UG9saWN5Ij4KKysgICAgICAgICAgICAgPGVudW0+UUNvbWJvQm94OjpOb0luc2VydDwv ZW51bT4KKysgICAgICAgICAgICA8L3Byb3BlcnR5PgorKyAgICAgICAgICAgIDxpdGVtPgorKyAg ICAgICAgICAgICA8cHJvcGVydHkgbmFtZT0idGV4dCI+CisrICAgICAgICAgICAgICA8c3RyaW5n Pmh0dHBzOi8vMHgwLnN0PC9zdHJpbmc+CisrICAgICAgICAgICAgIDwvcHJvcGVydHk+CisrICAg ICAgICAgICAgPC9pdGVtPgorKyAgICAgICAgICAgIDxpdGVtPgorKyAgICAgICAgICAgICA8cHJv cGVydHkgbmFtZT0idGV4dCI+CisrICAgICAgICAgICAgICA8c3RyaW5nPmh0dHBzOi8vcGFzdGUu cG9seW1jLm9yZzwvc3RyaW5nPgorKyAgICAgICAgICAgICA8L3Byb3BlcnR5PgorKyAgICAgICAg ICAgIDwvaXRlbT4KKysgICAgICAgICAgIDwvd2lkZ2V0PgorKyAgICAgICAgICA8L2l0ZW0+Cisg ICAgICAgICAgIDxpdGVtPgorICAgICAgICAgICAgPHdpZGdldCBjbGFzcz0iUUxhYmVsIiBuYW1l PSJsYWJlbCI+CisgICAgICAgICAgICAgPHByb3BlcnR5IG5hbWU9InRleHQiPgorLSAgICAgICAg ICAgICA8c3RyaW5nPiZsdDtodG1sJmd0OyZsdDtoZWFkLyZndDsmbHQ7Ym9keSZndDsmbHQ7cCZn dDsmbHQ7YSBocmVmPSZxdW90O2h0dHBzOi8vcGFzdGUuZWUmcXVvdDsmZ3Q7cGFzdGUuZWUmbHQ7 L2EmZ3Q7IGlzIHVzZWQgYnkgTXVsdGlNQyBmb3IgbG9nIHVwbG9hZHMuIElmIHlvdSBoYXZlIGEg Jmx0O2EgaHJlZj0mcXVvdDtodHRwczovL3Bhc3RlLmVlJnF1b3Q7Jmd0O3Bhc3RlLmVlJmx0Oy9h Jmd0OyBhY2NvdW50LCB5b3UgY2FuIGFkZCB5b3VyIEFQSSBrZXkgaGVyZSBhbmQgaGF2ZSB5b3Vy IHVwbG9hZGVkIGxvZ3MgcGFpcmVkIHdpdGggeW91ciBhY2NvdW50LiZsdDsvcCZndDsmbHQ7L2Jv ZHkmZ3Q7Jmx0Oy9odG1sJmd0Ozwvc3RyaW5nPgorKyAgICAgICAgICAgICA8c3RyaW5nPiZsdDto dG1sJmd0OyZsdDtoZWFkLyZndDsmbHQ7Ym9keSZndDsmbHQ7cCZndDtIZXJlIHlvdSBjYW4gY2hv b3NlIGZyb20gYSBwcmVkZWZpbmVkIGxpc3Qgb2YgcGFzdGUgc2VydmljZXMsIG9yIGlucHV0IHRo ZSBVUkwgb2YgYSBkaWZmZXJlbnQgcGFzdGUgc2VydmljZSBvZiB5b3VyIGNob2ljZSwgcHJvdmlk ZWQgaXQgc3VwcG9ydHMgdGhlIHNhbWUgcHJvdG9jb2wgYXMgMHgwLnN0LCB0aGF0IGlzIFBPU1Qg YSBmaWxlIHBhcmFtZXRlciB0byB0aGUgVVJMIGFuZCByZXR1cm4gYSBsaW5rIGluIHRoZSByZXNw b25zZSBib2R5LiZsdDsvcCZndDsmbHQ7L2JvZHkmZ3Q7Jmx0Oy9odG1sJmd0Ozwvc3RyaW5nPgor ICAgICAgICAgICAgIDwvcHJvcGVydHk+CisgICAgICAgICAgICAgPHByb3BlcnR5IG5hbWU9InRl eHRGb3JtYXQiPgorICAgICAgICAgICAgICA8ZW51bT5RdDo6UmljaFRleHQ8L2VudW0+CitAQCAt MTE2LDEzICsxMjEsNyBAQAorICA8L3dpZGdldD4KKyAgPHRhYnN0b3BzPgorICAgPHRhYnN0b3A+ dGFiV2lkZ2V0PC90YWJzdG9wPgorLSAgPHRhYnN0b3A+bXVsdGltY0J1dHRvbjwvdGFic3RvcD4K Ky0gIDx0YWJzdG9wPmN1c3RvbUJ1dHRvbjwvdGFic3RvcD4KKy0gIDx0YWJzdG9wPmN1c3RvbUFQ SWtleUVkaXQ8L3RhYnN0b3A+CisgIDwvdGFic3RvcHM+CisgIDxyZXNvdXJjZXMvPgorICA8Y29u bmVjdGlvbnMvPgorLSA8YnV0dG9uZ3JvdXBzPgorLSAgPGJ1dHRvbmdyb3VwIG5hbWU9InBhc3Rl QnV0dG9uR3JvdXAiLz4KKy0gPC9idXR0b25ncm91cHM+CisgPC91aT4KK2RpZmYgLS1naXQgYS9s YXVuY2hlci91aS9wYWdlcy9pbnN0YW5jZS9Mb2dQYWdlLnVpIGIvbGF1bmNoZXIvdWkvcGFnZXMv aW5zdGFuY2UvTG9nUGFnZS51aQoraW5kZXggY2NmYzE1NTEuLjMxYmIzNjhjIDEwMDY0NAorLS0t IGEvbGF1bmNoZXIvdWkvcGFnZXMvaW5zdGFuY2UvTG9nUGFnZS51aQorKysrIGIvbGF1bmNoZXIv dWkvcGFnZXMvaW5zdGFuY2UvTG9nUGFnZS51aQorQEAgLTEwMCw3ICsxMDAsNyBAQAorICAgICAg ICAgIDxpdGVtPgorICAgICAgICAgICA8d2lkZ2V0IGNsYXNzPSJRUHVzaEJ1dHRvbiIgbmFtZT0i YnRuUGFzdGUiPgorICAgICAgICAgICAgPHByb3BlcnR5IG5hbWU9InRvb2xUaXAiPgorLSAgICAg ICAgICAgIDxzdHJpbmc+VXBsb2FkIHRoZSBsb2cgdG8gcGFzdGUuZWUgLSBpdCB3aWxsIHN0YXkg b25saW5lIGZvciBhIG1vbnRoPC9zdHJpbmc+CisrICAgICAgICAgICAgPHN0cmluZz5VcGxvYWQg dGhlIGxvZyB0byB0aGUgcGFzdGUgc2VydmljZSBjb25maWd1cmVkIGluIHByZWZlcmVuY2VzPC9z dHJpbmc+CisgICAgICAgICAgICA8L3Byb3BlcnR5PgorICAgICAgICAgICAgPHByb3BlcnR5IG5h bWU9InRleHQiPgorICAgICAgICAgICAgIDxzdHJpbmc+VXBsb2FkPC9zdHJpbmc+CitkaWZmIC0t Z2l0IGEvbGF1bmNoZXIvdWkvcGFnZXMvaW5zdGFuY2UvT3RoZXJMb2dzUGFnZS51aSBiL2xhdW5j aGVyL3VpL3BhZ2VzL2luc3RhbmNlL090aGVyTG9nc1BhZ2UudWkKK2luZGV4IDU2ZmYzYjYyLi43 N2YzZTY0NyAxMDA2NDQKKy0tLSBhL2xhdW5jaGVyL3VpL3BhZ2VzL2luc3RhbmNlL090aGVyTG9n c1BhZ2UudWkKKysrKyBiL2xhdW5jaGVyL3VpL3BhZ2VzL2luc3RhbmNlL090aGVyTG9nc1BhZ2Uu dWkKK0BAIC04NCw3ICs4NCw3IEBACisgICAgICAgICAgPGl0ZW0gcm93PSIzIiBjb2x1bW49IjIi PgorICAgICAgICAgICA8d2lkZ2V0IGNsYXNzPSJRUHVzaEJ1dHRvbiIgbmFtZT0iYnRuUGFzdGUi PgorICAgICAgICAgICAgPHByb3BlcnR5IG5hbWU9InRvb2xUaXAiPgorLSAgICAgICAgICAgIDxz dHJpbmc+VXBsb2FkIHRoZSBsb2cgdG8gcGFzdGUuZWUgLSBpdCB3aWxsIHN0YXkgb25saW5lIGZv ciBhIG1vbnRoPC9zdHJpbmc+CisrICAgICAgICAgICAgPHN0cmluZz5VcGxvYWQgdGhlIGxvZyB0 byB0aGUgcGFzdGUgc2VydmljZSBjb25maWd1cmVkIGluIHByZWZlcmVuY2VzLjwvc3RyaW5nPgor ICAgICAgICAgICAgPC9wcm9wZXJ0eT4KKyAgICAgICAgICAgIDxwcm9wZXJ0eSBuYW1lPSJ0ZXh0 Ij4KKyAgICAgICAgICAgICA8c3RyaW5nPlVwbG9hZDwvc3RyaW5nPgorZGlmZiAtLWdpdCBhL2xh dW5jaGVyL3VpL3dpZGdldHMvTGFuZ3VhZ2VTZWxlY3Rpb25XaWRnZXQuY3BwIGIvbGF1bmNoZXIv dWkvd2lkZ2V0cy9MYW5ndWFnZVNlbGVjdGlvbldpZGdldC5jcHAKK2luZGV4IGNmNzBjN2I0Li5m YzA4OWYyNiAxMDA2NDQKKy0tLSBhL2xhdW5jaGVyL3VpL3dpZGdldHMvTGFuZ3VhZ2VTZWxlY3Rp b25XaWRnZXQuY3BwCisrKysgYi9sYXVuY2hlci91aS93aWRnZXRzL0xhbmd1YWdlU2VsZWN0aW9u V2lkZ2V0LmNwcAorQEAgLTUsNiArNSw3IEBACisgI2luY2x1ZGUgPFFIZWFkZXJWaWV3PgorICNp bmNsdWRlIDxRTGFiZWw+CisgI2luY2x1ZGUgIkFwcGxpY2F0aW9uLmgiCisrI2luY2x1ZGUgIkJ1 aWxkQ29uZmlnLmgiCisgI2luY2x1ZGUgInRyYW5zbGF0aW9ucy9UcmFuc2xhdGlvbnNNb2RlbC5o IgorIAorIExhbmd1YWdlU2VsZWN0aW9uV2lkZ2V0OjpMYW5ndWFnZVNlbGVjdGlvbldpZGdldChR V2lkZ2V0ICpwYXJlbnQpIDoKK0BAIC00OCw3ICs0OSw3IEBAIFFTdHJpbmcgTGFuZ3VhZ2VTZWxl Y3Rpb25XaWRnZXQ6OmdldFNlbGVjdGVkTGFuZ3VhZ2VLZXkoKSBjb25zdAorIHZvaWQgTGFuZ3Vh Z2VTZWxlY3Rpb25XaWRnZXQ6OnJldHJhbnNsYXRlKCkKKyB7CisgICAgIFFTdHJpbmcgdGV4dCA9 IHRyKCJEb24ndCBzZWUgeW91ciBsYW5ndWFnZSBvciB0aGUgcXVhbGl0eSBpcyBwb29yPzxici8+ PGEgaHJlZj1cIiUxXCI+SGVscCB1cyB3aXRoIHRyYW5zbGF0aW9ucyE8L2E+IikKKy0gICAgICAg IC5hcmcoImh0dHBzOi8vZ2l0aHViLmNvbS9NdWx0aU1DL0xhdW5jaGVyL3dpa2kvVHJhbnNsYXRp bmctTXVsdGlNQyIpOworKyAgICAgICAgLmFyZyhCdWlsZENvbmZpZy5UUkFOU0xBVElPTlNfVVJM KTsKKyAgICAgaGVscFVzTGFiZWwtPnNldFRleHQodGV4dCk7CisgCisgfQpkaWZmIC0tZ2l0IGEv c3JjcGtncy9Qb2x5TUMvdGVtcGxhdGUgYi9zcmNwa2dzL1BvbHlNQy90ZW1wbGF0ZQpuZXcgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLmYyMDQ3YzUwYmQyNgotLS0gL2Rldi9u dWxsCisrKyBiL3NyY3BrZ3MvUG9seU1DL3RlbXBsYXRlCkBAIC0wLDAgKzEsMzcgQEAKKyMgVGVt cGxhdGUgZmlsZSBmb3IgJ1BvbHlNQycKK3BrZ25hbWU9UG9seU1DCit2ZXJzaW9uPTEuMC42City ZXZpc2lvbj0xCitfbmJ0dmVyc2lvbj0iZGM3MmEyMGI3ZWZkMzA0ZDEyYWYyMDI1MjIzZmFkMDdi NGI3ODQ2NCIKK19xdWF6aXB2ZXJzaW9uPSJjOWVmMzJkZTE5YmNlYjU4ZDIzNmY1YzIyMzgyNjk4 ZGVhZWM2OWZkIgorYnVpbGRfc3R5bGU9Y21ha2UKK2NvbmZpZ3VyZV9hcmdzPSItRExhdW5jaGVy X0JVSUxEX1BMQVRGT1JNPVZvaWQgLURMYXVuY2hlcl9MQVlPVVQ9bGluLXN5c3RlbSIKK2hvc3Rt YWtlZGVwZW5kcz0ib3BlbmpkazExIHF0NS1ob3N0LXRvb2xzIHF0NS1xbWFrZSIKK21ha2VkZXBl bmRzPSJxdDUtZGV2ZWwiCitkZXBlbmRzPSJ2aXJ0dWFsP2phdmEtcnVudGltZSIKK3Nob3J0X2Rl c2M9IkN1c3RvbSBsYXVuY2hlciBmb3IgTWluZWNyYWZ0IgorbWFpbnRhaW5lcj0iUGhpbGlwcCBE YXZpZCA8cGRAM2IucG0+IgorbGljZW5zZT0iQXBhY2hlLTIuMCwgR1BMLTMuMC1vci1sYXRlciwg TEdQTC0zLjAtb3ItbGF0ZXIsIExHUEwtMi4xLW9yLWxhdGVyLAorIE1JVCwgQlNELTMtQ2xhdXNl LCBCU0QtMi1DbGF1c2UiCitob21lcGFnZT0iaHR0cHM6Ly9wb2x5bWMub3JnLyIKK2Rpc3RmaWxl cz0iaHR0cHM6Ly9naXRodWIuY29tL1BvbHlNQy9Qb2x5TUMvYXJjaGl2ZS8ke3ZlcnNpb259LnRh ci5negorIGh0dHBzOi8vZ2l0aHViLmNvbS9NdWx0aU1DL2xpYm5idHBsdXNwbHVzL2FyY2hpdmUv JHtfbmJ0dmVyc2lvbn0udGFyLmd6CisgaHR0cHM6Ly9naXRodWIuY29tL1BvbHlNQy9xdWF6aXAv YXJjaGl2ZS8ke19xdWF6aXB2ZXJzaW9ufS50YXIuZ3oiCitjaGVja3N1bT0iNzhjN2IyNGM2ODk1 YTM3ZjQ1ZjU2M2I4OGNmMGFkNWNmMjZkZDY2MjY0MzgzZWQ3NzkwOWU2NjA2NWRmOWVhNgorIDJl ZDlkYzgyNDAwN2I0ZjdiMTJmODA3ZjU2Yzk4ZTEyNDhiOGE3YWJhN2VjYTQ4MzgwODUwOTI5NThk YzE1OTUKKyA2YzVlNzE5ODMzYzE0M2YzMDBkN2Y2MTAxYjNjMDRkZmIxYmMwMjVlM2Y2NzJkODAz ZGNlZjBmYmNlMjllMjU0IgorCitjYXNlICIkWEJQU19UQVJHRVRfTUFDSElORSIgaW4KKwlhcm12 KikgYnJva2VuPSJodHRwczovL2dpdGh1Yi5jb20vTXVsdGlNQy9NdWx0aU1DNS9pc3N1ZXMvMjg5 NSI7OworZXNhYworCitwb3N0X2V4dHJhY3QoKSB7CisJcm1kaXIgbGlicmFyaWVzL2xpYm5idHBs dXNwbHVzCisJcm1kaXIgbGlicmFyaWVzL3F1YXppcAorCW12IC4uL2xpYm5idHBsdXNwbHVzLSR7 X25idHZlcnNpb259IGxpYnJhcmllcy9saWJuYnRwbHVzcGx1cworCW12IC4uL3F1YXppcC0ke19x dWF6aXB2ZXJzaW9ufSBsaWJyYXJpZXMvcXVhemlwCit9CisKK3Bvc3RfaW5zdGFsbCgpIHsKKwl2 bGljZW5zZSBDT1BZSU5HLm1kCit9Cg== --===============0891831972835905127==--