From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from mail-eopbgr720109.outbound.protection.outlook.com ([40.107.72.109] helo=NAM05-CO1-obe.outbound.protection.outlook.com) by metis.ext.pengutronix.de with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1gahCA-0005Q8-N8 for ptxdist@pengutronix.de; Sat, 22 Dec 2018 14:20:00 +0100 From: "Baeuerle, Florian" Date: Sat, 22 Dec 2018 13:19:52 +0000 Message-ID: <20181222131932.15277-2-florian.baeuerle@allegion.com> References: <20181210141752.18468-1-wolfram.dold@allegion.com> <20181222131932.15277-1-florian.baeuerle@allegion.com> In-Reply-To: <20181222131932.15277-1-florian.baeuerle@allegion.com> Content-Language: en-US Content-ID: MIME-Version: 1.0 Subject: [ptxdist] [PATCH v3 1/3] polkit: add debian patches List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: ptxdist@pengutronix.de Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ptxdist-bounces@pengutronix.de Sender: "ptxdist" To: "ptxdist@pengutronix.de" QWRkIDQxIHBhdGNoZXMgdGhhdCBkZWJpYW4gYmFja3BvcnRlZCB0byBwb2xraXQgMC4xMDUuDQoN ClNpZ25lZC1vZmYtYnk6IEZsb3JpYW4gQsOkdWVybGUgPGZsb3JpYW4uYmFldWVybGVAYWxsZWdp b24uY29tPg0KLS0tDQogLi4uaGVscGVyLXBhbS1GaXgtbmV3bGluZS10cmltbWluZy1jb2RlLnBh dGNoIHwgIDQzICsrDQogLi4uaXgtLmdpci1nZW5lcmF0aW9uLWZvci1wYXJhbGxlbC1tYWtlLnBh dGNoIHwgIDQxICsrDQogcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTAvMDRfZ2V0X2N3ZC5wYXRj aCAgIHwgIDQwICsrDQogLi4uSE9SSVRZLWVudmlyb25tZW50LXZhcmlhYmxlLWlmLXVuc2V0LnBh dGNoIHwgIDU4ICsrDQogLi4uLzAuMTExLzA5X3BhbV9lbnZpcm9ubWVudC5wYXRjaCAgICAgICAg ICAgIHwgIDQzICsrDQogLi4uLzAuMTExL0ZpeC1hLW1lbW9yeS1sZWFrLnBhdGNoICAgICAgICAg ICAgIHwgIDIyICsNCiAuLi4vMC4xMTIvMDBnaXRfdHlwZV9yZWdpc3RyYXRpb24ucGF0Y2ggICAg ICAgfCAxMTggKysrKw0KIC4uLi8wLjExMi8wOF9kZXByZWNhdGVfcmFjeV9BUElzLnBhdGNoICAg ICAgICB8ICAyNyArDQogLi4uL3BvbGtpdC0wLjEwNS8wLjExMi9jdmUtMjAxMy00Mjg4LnBhdGNo ICAgIHwgMTE2ICsrKysNCiAuLi4vMC4xMTMvMDBnaXRfZml4X21lbWxlYWsucGF0Y2ggICAgICAg ICAgICAgfCAgMjYgKw0KIC4uLi8wLjExMy8wMGdpdF9pbnZhbGlkX29iamVjdF9wYXRocy5wYXRj aCAgICB8IDExNiArKysrDQogLi4ub24tZml4LXJhY2UtYmV0d2Vlbi1jaGlsZC1hbmQtaW8td2F0 LnBhdGNoIHwgMTIwICsrKysNCiAuLi4vQ1ZFLTIwMTUtMzI1NS1GaXgtR0hhc2hUYWJsZS11c2Fn ZS5wYXRjaCAgfCAgNjggKysrDQogLi4uQmluZC11c2Utb2YtY29va2llcy10by1zcGVjaWZpYy11 aWRzLnBhdGNoIHwgNDg0ICsrKysrKysrKysrKysrKw0KIC4uLmUtdW5wcmVkaWN0YWJsZS1jb29r aWUtdmFsdWVzLWtlZXAtdC5wYXRjaCB8IDU0MCArKysrKysrKysrKysrKysrKw0KIC4uLnJvci1k YXRhLXJldHVybmVkLWJ5LXBvbGtpdF9zeXN0ZW1fYi5wYXRjaCB8ICAyNSArDQogLi4uLXR3by1h dXRoZW50aWNhdGlvbi1yZXF1ZXN0cy1hcmUtaW4tLnBhdGNoIHwgIDM2ICsrDQogLi4uay13aGVu LXJlZ2lzdGVyaW5nLWFuLWF1dGhlbnRpY2F0aW9uLnBhdGNoIHwgIDIyICsNCiAuLi4vRml4LWEt cGVyLWF1dGhvcml6YXRpb24tbWVtb3J5LWxlYWsucGF0Y2ggfCAgNDkgKysNCiAuLi4vRml4LWEt cG9zc2libGUtTlVMTC1kZXJlZmVyZW5jZS5wYXRjaCAgICAgfCAgMzUgKysNCiAuLi5pY2F0ZS1H RXJyb3ItdXNlLXdoZW4tdWlkLWlzLW1pc3NpbmcucGF0Y2ggfCAgMzIgKw0KIC4uLmUtYWZ0ZXIt ZnJlZS1pbi1wb2xraXRhZ2VudHNlc3Npb24uYy5wYXRjaCB8ICAzMiArDQogLi4uZC1jb21waWxh dGlvbi1wcm9ibGVtLWluLXRoZS1iYWNrZW5kLnBhdGNoIHwgIDIzICsNCiAuLi5hbWUtQWRkLXB1 YmxpYy1BUEktdG8tcmV0cmlldmUtVW5peC0ucGF0Y2ggfCAxNjYgKysrKysNCiAuLi5vbi1kZXBy ZWNhdGVkLVBvbGtpdFByb2Nlc3MtQVBJLXdoZXIucGF0Y2ggfCAgMjkgKw0KIC4uLmVuZC1zZWN1 cml0eS1yZXBvcnRzLXZpYS1EQnVzLXMtbWVjaC5wYXRjaCB8ICAzOSArKw0KIC4uLmUtZHVwbGlj YXRlLXVzZXItYXJndW1lbnRzLXRvLXBrZXhlYy5wYXRjaCB8ICAzOCArKw0KIC4uLi8wLjExMy9S ZW1vdmUtYS1yZWR1bmRhbnQtYXNzaWdubWVudC5wYXRjaCB8ICAyNiArDQogLi4uY2hhbmdlcy10 by11aWQtYmluZGluZy1BdXRoZW50aWNhdGlvLnBhdGNoIHwgMjU5ICsrKysrKysrDQogLi4ubmQt c3lzdGVtZC1pbmplY3RpbmctYnJva2VuLVhER19SVU5ULnBhdGNoIHwgIDc2ICsrKw0KIC4uLmxl bS13aXRoLXJlbW92aW5nLW5vbi1leGlzdGVudC1zb3VyYy5wYXRjaCB8ICAyMyArDQogLi4ubml0 b3Itc3lzdGVtZC1EZWR1cGxpY2F0ZS1jb2RlLXBhdGhzLnBhdGNoIHwgMTA0ICsrKysNCiAuLi55 c3RlbWQtVXNlLXNkX3VpZF9nZXRfc3RhdGUtdG8tY2hlY2sucGF0Y2ggfCAgNzMgKysrDQogLi4u eXN0ZW1kLXByZXBhcmUtZm9yLUQtQnVzLXVzZXItYnVzLW1vLnBhdGNoIHwgIDg5ICsrKw0KIC4u LmRkLWdldHRleHQtc3VwcG9ydC1mb3ItLnBvbGljeS1maWxlcy5wYXRjaCB8ICA1OCArKw0KIC4u Li8wLjExNC9GaXgtbXVsdGktbGluZS1wYW0tdGV4dC1pbmZvLnBhdGNoICB8ICAzOSArKw0KIC4u Li8wLjExNC9SZWZhY3Rvci1zZW5kX3RvX2hlbHBlci11c2FnZS5wYXRjaCB8IDE0OSArKysrKw0K IC4uLm4tYWdlbnQtcnVubmluZy1vdXRzaWRlLXVzZXItc2Vzc2lvbi5wYXRjaCB8ICA1MSArKw0K IC4uLnR0ZXh0LXN3aXRjaC10by1kZWZhdWx0LXRyYW5zbGF0ZS1uby5wYXRjaCB8ICA0MSArKw0K IC4uLjE4LTExMTYtVHJ1c3RpbmctY2xpZW50LXN1cHBsaWVkLVVJRC5wYXRjaCB8IDU2OSArKysr KysrKysrKysrKysrKysNCiAuLi5pZHMtaW4tUG9sa2l0VW5peFVzZXItYW5kLUdyb3VwLW9iamUu cGF0Y2ggfCAxODYgKysrKysrDQogcGF0Y2hlcy9wb2xraXQtMC4xMDUvc2VyaWVzICAgICAgICAg ICAgICAgICAgIHwgIDQ2ICstDQogNDIgZmlsZXMgY2hhbmdlZCwgNDE3NCBpbnNlcnRpb25zKCsp LCAzIGRlbGV0aW9ucygtKQ0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBwYXRjaGVzL3BvbGtpdC0wLjEw NS8wLjEwNi9hZ2VudGhlbHBlci1wYW0tRml4LW5ld2xpbmUtdHJpbW1pbmctY29kZS5wYXRjaA0K IGNyZWF0ZSBtb2RlIDEwMDY0NCBwYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjEwOC9idWlsZC1GaXgt Lmdpci1nZW5lcmF0aW9uLWZvci1wYXJhbGxlbC1tYWtlLnBhdGNoDQogY3JlYXRlIG1vZGUgMTAw NjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEwLzA0X2dldF9jd2QucGF0Y2gNCiBjcmVhdGUg bW9kZSAxMDA2NDQgcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTAvMDdfc2V0LVhBVVRIT1JJVFkt ZW52aXJvbm1lbnQtdmFyaWFibGUtaWYtdW5zZXQucGF0Y2gNCiBjcmVhdGUgbW9kZSAxMDA2NDQg cGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTEvMDlfcGFtX2Vudmlyb25tZW50LnBhdGNoDQogY3Jl YXRlIG1vZGUgMTAwNjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTExL0ZpeC1hLW1lbW9yeS1s ZWFrLnBhdGNoDQogY3JlYXRlIG1vZGUgMTAwNjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEy LzAwZ2l0X3R5cGVfcmVnaXN0cmF0aW9uLnBhdGNoDQogY3JlYXRlIG1vZGUgMTAwNjQ0IHBhdGNo ZXMvcG9sa2l0LTAuMTA1LzAuMTEyLzA4X2RlcHJlY2F0ZV9yYWN5X0FQSXMucGF0Y2gNCiBjcmVh dGUgbW9kZSAxMDA2NDQgcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTIvY3ZlLTIwMTMtNDI4OC5w YXRjaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBwYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy8wMGdp dF9maXhfbWVtbGVhay5wYXRjaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBwYXRjaGVzL3BvbGtpdC0w LjEwNS8wLjExMy8wMGdpdF9pbnZhbGlkX29iamVjdF9wYXRocy5wYXRjaA0KIGNyZWF0ZSBtb2Rl IDEwMDY0NCBwYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy8wM19Qb2xraXRBZ2VudFNlc3Npb24t Zml4LXJhY2UtYmV0d2Vlbi1jaGlsZC1hbmQtaW8td2F0LnBhdGNoDQogY3JlYXRlIG1vZGUgMTAw NjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL0NWRS0yMDE1LTMyNTUtRml4LUdIYXNoVGFi bGUtdXNhZ2UucGF0Y2gNCiBjcmVhdGUgbW9kZSAxMDA2NDQgcGF0Y2hlcy9wb2xraXQtMC4xMDUv MC4xMTMvQ1ZFLTIwMTUtNDYyNS1CaW5kLXVzZS1vZi1jb29raWVzLXRvLXNwZWNpZmljLXVpZHMu cGF0Y2gNCiBjcmVhdGUgbW9kZSAxMDA2NDQgcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvQ1ZF LTIwMTUtNDYyNS1Vc2UtdW5wcmVkaWN0YWJsZS1jb29raWUtdmFsdWVzLWtlZXAtdC5wYXRjaA0K IGNyZWF0ZSBtb2RlIDEwMDY0NCBwYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9Eb24tdC1kaXNj YXJkLWVycm9yLWRhdGEtcmV0dXJuZWQtYnktcG9sa2l0X3N5c3RlbV9iLnBhdGNoDQogY3JlYXRl IG1vZGUgMTAwNjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL0ZpeC1hLWNyYXNoLXdoZW4t dHdvLWF1dGhlbnRpY2F0aW9uLXJlcXVlc3RzLWFyZS1pbi0ucGF0Y2gNCiBjcmVhdGUgbW9kZSAx MDA2NDQgcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvRml4LWEtbWVtb3J5LWxlYWstd2hlbi1y ZWdpc3RlcmluZy1hbi1hdXRoZW50aWNhdGlvbi5wYXRjaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBw YXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9GaXgtYS1wZXItYXV0aG9yaXphdGlvbi1tZW1vcnkt bGVhay5wYXRjaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBwYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjEx My9GaXgtYS1wb3NzaWJsZS1OVUxMLWRlcmVmZXJlbmNlLnBhdGNoDQogY3JlYXRlIG1vZGUgMTAw NjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL0ZpeC1kdXBsaWNhdGUtR0Vycm9yLXVzZS13 aGVuLXVpZC1pcy1taXNzaW5nLnBhdGNoDQogY3JlYXRlIG1vZGUgMTAwNjQ0IHBhdGNoZXMvcG9s a2l0LTAuMTA1LzAuMTEzL0ZpeC11c2UtYWZ0ZXItZnJlZS1pbi1wb2xraXRhZ2VudHNlc3Npb24u Yy5wYXRjaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBwYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9G aXhlZC1jb21waWxhdGlvbi1wcm9ibGVtLWluLXRoZS1iYWNrZW5kLnBhdGNoDQogY3JlYXRlIG1v ZGUgMTAwNjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL1BvbGtpdFN5c3RlbUJ1c05hbWUt QWRkLXB1YmxpYy1BUEktdG8tcmV0cmlldmUtVW5peC0ucGF0Y2gNCiBjcmVhdGUgbW9kZSAxMDA2 NDQgcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvUG9ydC1pbnRlcm5hbHMtbm9uLWRlcHJlY2F0 ZWQtUG9sa2l0UHJvY2Vzcy1BUEktd2hlci5wYXRjaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBwYXRj aGVzL3BvbGtpdC0wLjEwNS8wLjExMy9SRUFETUUtTm90ZS10by1zZW5kLXNlY3VyaXR5LXJlcG9y dHMtdmlhLURCdXMtcy1tZWNoLnBhdGNoDQogY3JlYXRlIG1vZGUgMTAwNjQ0IHBhdGNoZXMvcG9s a2l0LTAuMTA1LzAuMTEzL1JlZnVzZS1kdXBsaWNhdGUtdXNlci1hcmd1bWVudHMtdG8tcGtleGVj LnBhdGNoDQogY3JlYXRlIG1vZGUgMTAwNjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL1Jl bW92ZS1hLXJlZHVuZGFudC1hc3NpZ25tZW50LnBhdGNoDQogY3JlYXRlIG1vZGUgMTAwNjQ0IHBh dGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL2RvY3MtVXBkYXRlLWZvci1jaGFuZ2VzLXRvLXVpZC1i aW5kaW5nLUF1dGhlbnRpY2F0aW8ucGF0Y2gNCiBjcmVhdGUgbW9kZSAxMDA2NDQgcGF0Y2hlcy9w b2xraXQtMC4xMDUvMC4xMTMvcGtleGVjLVdvcmstYXJvdW5kLXN5c3RlbWQtaW5qZWN0aW5nLWJy b2tlbi1YREdfUlVOVC5wYXRjaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBwYXRjaGVzL3BvbGtpdC0w LjEwNS8wLjExMy9wb2xraXRkLUZpeC1wcm9ibGVtLXdpdGgtcmVtb3Zpbmctbm9uLWV4aXN0ZW50 LXNvdXJjLnBhdGNoDQogY3JlYXRlIG1vZGUgMTAwNjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAu MTEzL3Nlc3Npb25tb25pdG9yLXN5c3RlbWQtRGVkdXBsaWNhdGUtY29kZS1wYXRocy5wYXRjaA0K IGNyZWF0ZSBtb2RlIDEwMDY0NCBwYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9zZXNzaW9ubW9u aXRvci1zeXN0ZW1kLVVzZS1zZF91aWRfZ2V0X3N0YXRlLXRvLWNoZWNrLnBhdGNoDQogY3JlYXRl IG1vZGUgMTAwNjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL3Nlc3Npb25tb25pdG9yLXN5 c3RlbWQtcHJlcGFyZS1mb3ItRC1CdXMtdXNlci1idXMtbW8ucGF0Y2gNCiBjcmVhdGUgbW9kZSAx MDA2NDQgcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTQvQWRkLWdldHRleHQtc3VwcG9ydC1mb3It LnBvbGljeS1maWxlcy5wYXRjaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBwYXRjaGVzL3BvbGtpdC0w LjEwNS8wLjExNC9GaXgtbXVsdGktbGluZS1wYW0tdGV4dC1pbmZvLnBhdGNoDQogY3JlYXRlIG1v ZGUgMTAwNjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTE0L1JlZmFjdG9yLXNlbmRfdG9faGVs cGVyLXVzYWdlLnBhdGNoDQogY3JlYXRlIG1vZGUgMTAwNjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1 LzAuMTE0L1N1cHBvcnQtcG9sa2l0LXNlc3Npb24tYWdlbnQtcnVubmluZy1vdXRzaWRlLXVzZXIt c2Vzc2lvbi5wYXRjaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBwYXRjaGVzL3BvbGtpdC0wLjEwNS8w LjExNC9nZXR0ZXh0LXN3aXRjaC10by1kZWZhdWx0LXRyYW5zbGF0ZS1uby5wYXRjaA0KIGNyZWF0 ZSBtb2RlIDEwMDY0NCBwYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExNS9GaXgtQ1ZFLTIwMTgtMTEx Ni1UcnVzdGluZy1jbGllbnQtc3VwcGxpZWQtVUlELnBhdGNoDQogY3JlYXRlIG1vZGUgMTAwNjQ0 IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTE2L0FsbG93LW5lZ2F0aXZlLXVpZHMtZ2lkcy1pbi1Q b2xraXRVbml4VXNlci1hbmQtR3JvdXAtb2JqZS5wYXRjaA0KDQpkaWZmIC0tZ2l0IGEvcGF0Y2hl cy9wb2xraXQtMC4xMDUvMC4xMDYvYWdlbnRoZWxwZXItcGFtLUZpeC1uZXdsaW5lLXRyaW1taW5n LWNvZGUucGF0Y2ggYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjEwNi9hZ2VudGhlbHBlci1wYW0t Rml4LW5ld2xpbmUtdHJpbW1pbmctY29kZS5wYXRjaA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmlu ZGV4IDAwMDAwMDAwMC4uMDUxNWI1MzVhDQotLS0gL2Rldi9udWxsDQorKysgYi9wYXRjaGVzL3Bv bGtpdC0wLjEwNS8wLjEwNi9hZ2VudGhlbHBlci1wYW0tRml4LW5ld2xpbmUtdHJpbW1pbmctY29k ZS5wYXRjaA0KQEAgLTAsMCArMSw0MyBAQA0KK0Zyb206IENvbGluIFdhbHRlcnMgPHdhbHRlcnNA dmVyYnVtLm9yZz4NCitEYXRlOiBXZWQsIDYgSnVuIDIwMTIgMDk6MDU6MTQgLTA0MDANCitTdWJq ZWN0OiBhZ2VudGhlbHBlci1wYW06IEZpeCBuZXdsaW5lLXRyaW1taW5nIGNvZGUNCisNCitGaXJz dCwgd2Ugd2VyZSB1c2luZyA9PSBpbnN0ZWFkIG9mID0sIGFzIHRoZSBhdXRob3IgcHJvYmFibHkg aW50ZW5kZWQuDQorQnV0IGFmdGVyIGNoYW5naW5nIHRoYXQsIHdlJ3JlIG5vdyBhc3NpZ25pbmcg dG8gY29uc3QgbWVtb3J5LiAgRml4DQordGhhdCBieSB3cml0aW5nIHRvIGEgdGVtcG9yYXJ5IHN0 cmluZyBidWZmZXIuDQorDQorU2lnbmVkLW9mZi1ieTogRGF2aWQgWmV1dGhlbiA8emV1dGhlbkBn bWFpbC5jb20+DQorT3JpZ2luOiB1cHN0cmVhbSwgMC4xMDYsIGNvbW1pdDoxNDEyMWZkYTdlNGZh OTQ2M2M2NmNlNDE5Y2MzMmJlN2U3ZjNiNTM1DQorLS0tDQorIHNyYy9wb2xraXRhZ2VudC9wb2xr aXRhZ2VudGhlbHBlci1wYW0uYyB8IDExICsrKysrKysrLS0tDQorIDEgZmlsZSBjaGFuZ2VkLCA4 IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pDQorDQorZGlmZiAtLWdpdCBhL3NyYy9wb2xr aXRhZ2VudC9wb2xraXRhZ2VudGhlbHBlci1wYW0uYyBiL3NyYy9wb2xraXRhZ2VudC9wb2xraXRh Z2VudGhlbHBlci1wYW0uYw0KK2luZGV4IDg1YTI2NzEuLjdhZjUzMjEgMTAwNjQ0DQorLS0tIGEv c3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50aGVscGVyLXBhbS5jDQorKysrIGIvc3JjL3BvbGtp dGFnZW50L3BvbGtpdGFnZW50aGVscGVyLXBhbS5jDQorQEAgLTIyNyw2ICsyMjcsOCBAQCBjb252 ZXJzYXRpb25fZnVuY3Rpb24gKGludCBuLCBjb25zdCBzdHJ1Y3QgcGFtX21lc3NhZ2UgKiptc2cs IHN0cnVjdCBwYW1fcmVzcG9ucw0KKyAgIGNoYXIgYnVmW1BBTV9NQVhfUkVTUF9TSVpFXTsNCisg ICBpbnQgaTsNCisgICBnY2hhciAqZXNjYXBlZCA9IE5VTEw7DQorKyAgZ2NoYXIgKnRtcCA9IE5V TEw7DQorKyAgc2l6ZV90IGxlbjsNCisgDQorICAgZGF0YSA9IGRhdGE7DQorICAgaWYgKG4gPD0g MCB8fCBuID4gUEFNX01BWF9OVU1fTVNHKQ0KK0BAIC0yNTgsOSArMjYwLDEyIEBAIGNvbnZlcnNh dGlvbl9mdW5jdGlvbiAoaW50IG4sIGNvbnN0IHN0cnVjdCBwYW1fbWVzc2FnZSAqKm1zZywgc3Ry dWN0IHBhbV9yZXNwb25zDQorICNpZmRlZiBQQUhfREVCVUcNCisgICAgICAgICAgIGZwcmludGYg KHN0ZGVyciwgInBvbGtpdC1hZ2VudC1oZWxwZXItMTogd3JpdGluZyBgJXMnIHRvIHN0ZG91dFxu IiwgbXNnW2ldLT5tc2cpOw0KKyAjZW5kaWYgLyogUEFIX0RFQlVHICovDQorLSAgICAgICAgICBp ZiAoc3RybGVuIChtc2dbaV0tPm1zZykgPiAwICYmIG1zZ1tpXS0+bXNnW3N0cmxlbiAobXNnW2ld LT5tc2cpIC0gMV0gPT0gJ1xuJykNCistICAgICAgICAgICAgbXNnW2ldLT5tc2dbc3RybGVuICht c2dbaV0tPm1zZykgLSAxXSA9PSAnXDAnOw0KKy0gICAgICAgICAgZXNjYXBlZCA9IGdfc3RyZXNj YXBlIChtc2dbaV0tPm1zZywgTlVMTCk7DQorKyAgICAgICAgICB0bXAgPSBnX3N0cmR1cCAobXNn W2ldLT5tc2cpOw0KKysgICAgICAgICAgbGVuID0gc3RybGVuICh0bXApOw0KKysgICAgICAgICAg aWYgKGxlbiA+IDAgJiYgdG1wW2xlbiAtIDFdID09ICdcbicpDQorKyAgICAgICAgICAgIHRtcFts ZW4gLSAxXSA9ICdcMCc7DQorKyAgICAgICAgICBlc2NhcGVkID0gZ19zdHJlc2NhcGUgKHRtcCwg TlVMTCk7DQorKyAgICAgICAgICBnX2ZyZWUgKHRtcCk7DQorICAgICAgICAgICBmcHV0cyAoZXNj YXBlZCwgc3Rkb3V0KTsNCisgICAgICAgICAgIGdfZnJlZSAoZXNjYXBlZCk7DQorICNpZmRlZiBQ QUhfREVCVUcNCmRpZmYgLS1naXQgYS9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjEwOC9idWlsZC1G aXgtLmdpci1nZW5lcmF0aW9uLWZvci1wYXJhbGxlbC1tYWtlLnBhdGNoIGIvcGF0Y2hlcy9wb2xr aXQtMC4xMDUvMC4xMDgvYnVpbGQtRml4LS5naXItZ2VuZXJhdGlvbi1mb3ItcGFyYWxsZWwtbWFr ZS5wYXRjaA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMC4uNThmNmZiYmQ3 DQotLS0gL2Rldi9udWxsDQorKysgYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjEwOC9idWlsZC1G aXgtLmdpci1nZW5lcmF0aW9uLWZvci1wYXJhbGxlbC1tYWtlLnBhdGNoDQpAQCAtMCwwICsxLDQx IEBADQorRnJvbTogUnlhbiBMb3J0aWUgPGRlc3J0QHZlbG9jaXR5Lihub25lKT4NCitEYXRlOiBU dWUsIDEzIE5vdiAyMDEyIDExOjUwOjE0IC0wNTAwDQorU3ViamVjdDogYnVpbGQ6IEZpeCAuZ2ly IGdlbmVyYXRpb24gZm9yIHBhcmFsbGVsIG1ha2UNCisNCitBcyBwZXIgdGhlIGludHJ1Y3Rpb25z IGluIHRoZSBpbnRyb3NwZWN0aW9uIE1ha2VmaWxlLCB3ZSBzaG91bGQgaGF2ZSBhDQorbGluZSBk ZWNsYXJpbmcgYSBkZXBlbmRlbmN5IGJldHdlZW4gdGhlIC5naXIgYW5kIC5sYSBmaWxlcy4NCisN CitCdWc6IGh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTU3MDc3 DQorU2lnbmVkLW9mZi1ieTogRGF2aWQgWmV1dGhlbiA8emV1dGhlbkBnbWFpbC5jb20+DQorQnVn LURlYmlhbjogaHR0cHM6Ly9idWdzLmRlYmlhbi5vcmcvODk0MjA1DQorLS0tDQorIHNyYy9wb2xr aXQvTWFrZWZpbGUuYW0gICAgICB8IDIgKysNCisgc3JjL3BvbGtpdGFnZW50L01ha2VmaWxlLmFt IHwgMiArKw0KKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKQ0KKw0KK2RpZmYgLS1n aXQgYS9zcmMvcG9sa2l0L01ha2VmaWxlLmFtIGIvc3JjL3BvbGtpdC9NYWtlZmlsZS5hbQ0KK2lu ZGV4IDEwNjhlYTEuLjQxY2NmNWMgMTAwNjQ0DQorLS0tIGEvc3JjL3BvbGtpdC9NYWtlZmlsZS5h bQ0KKysrKyBiL3NyYy9wb2xraXQvTWFrZWZpbGUuYW0NCitAQCAtMTA2LDYgKzEwNiw4IEBAIGlm IEhBVkVfSU5UUk9TUEVDVElPTg0KKyANCisgSU5UUk9TUEVDVElPTl9HSVJTID0gUG9sa2l0LTEu MC5naXINCisgDQorK1BvbGtpdC0xLjAuZ2lyOiBsaWJwb2xraXQtZ29iamVjdC0xLmxhDQorKw0K KyBnaXJkaXIgPSAkKElOVFJPU1BFQ1RJT05fR0lSRElSKQ0KKyBnaXJfREFUQSA9IFBvbGtpdC0x LjAuZ2lyDQorIA0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0YWdlbnQvTWFrZWZpbGUuYW0gYi9z cmMvcG9sa2l0YWdlbnQvTWFrZWZpbGUuYW0NCitpbmRleCBlOGM5ZmIxLi43YjUxMTM3IDEwMDY0 NA0KKy0tLSBhL3NyYy9wb2xraXRhZ2VudC9NYWtlZmlsZS5hbQ0KKysrKyBiL3NyYy9wb2xraXRh Z2VudC9NYWtlZmlsZS5hbQ0KK0BAIC0xMDYsNiArMTA2LDggQEAgaWYgSEFWRV9JTlRST1NQRUNU SU9ODQorIGdpcmRpciA9ICQoSU5UUk9TUEVDVElPTl9HSVJESVIpDQorIGdpcl9EQVRBID0gUG9s a2l0QWdlbnQtMS4wLmdpcg0KKyANCisrUG9sa2l0QWdlbnQtMS4wLmdpcjogbGlicG9sa2l0LWFn ZW50LTEubGENCisrDQorIHR5cGVsaWJzZGlyID0gJChJTlRST1NQRUNUSU9OX1RZUEVMSUJESVIp DQorIHR5cGVsaWJzX0RBVEEgPSBQb2xraXRBZ2VudC0xLjAudHlwZWxpYg0KKyANCmRpZmYgLS1n aXQgYS9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMC8wNF9nZXRfY3dkLnBhdGNoIGIvcGF0Y2hl cy9wb2xraXQtMC4xMDUvMC4xMTAvMDRfZ2V0X2N3ZC5wYXRjaA0KbmV3IGZpbGUgbW9kZSAxMDA2 NDQNCmluZGV4IDAwMDAwMDAwMC4uYWNhYTY4ZDUxDQotLS0gL2Rldi9udWxsDQorKysgYi9wYXRj aGVzL3BvbGtpdC0wLjEwNS8wLjExMC8wNF9nZXRfY3dkLnBhdGNoDQpAQCAtMCwwICsxLDQwIEBA DQorRnJvbTogRW1pbGlvIFBvenVlbG8gTW9uZm9ydCA8cG9jaHUyN0BnbWFpbC5jb20+DQorRGF0 ZTogU2F0LCAyNiBNYXIgMjAxMSAwNzoyODoxNCArMDAwMA0KK1N1YmplY3Q6IEZpeCBidWlsZCBv biBHTlUgSHVyZA0KKw0KK0J1ZzogaHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9zaG93X2J1 Zy5jZ2k/aWQ9MzU2ODUNCitBcHBsaWVkLXVwc3RyZWFtOiAwLjExMCwgY29tbWl0OmQ2ZGUxM2Ux MjM3OTgyNmFmOGNhOTM1NWEzMmRhNDg3MDdiOTgzMWYNCistLS0NCisgc3JjL3Byb2dyYW1zL3Br ZXhlYy5jIHwgNSArKystLQ0KKyAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAyIGRl bGV0aW9ucygtKQ0KKw0KK2RpZmYgLS1naXQgYS9zcmMvcHJvZ3JhbXMvcGtleGVjLmMgYi9zcmMv cHJvZ3JhbXMvcGtleGVjLmMNCitpbmRleCA3ZmFmYTE0Li42ODJmZTk1IDEwMDY0NA0KKy0tLSBh L3NyYy9wcm9ncmFtcy9wa2V4ZWMuYw0KKysrKyBiL3NyYy9wcm9ncmFtcy9wa2V4ZWMuYw0KK0BA IC01Myw3ICs1Myw3IEBADQorICNpbmNsdWRlIDxwb2xraXRhZ2VudC9wb2xraXRhZ2VudC5oPg0K KyANCisgc3RhdGljIGdjaGFyICpvcmlnaW5hbF91c2VyX25hbWUgPSBOVUxMOw0KKy1zdGF0aWMg Z2NoYXIgb3JpZ2luYWxfY3dkW1BBVEhfTUFYXTsNCisrc3RhdGljIGdjaGFyICpvcmlnaW5hbF9j d2Q7DQorIHN0YXRpYyBnY2hhciAqY29tbWFuZF9saW5lID0gTlVMTDsNCisgc3RhdGljIHN0cnVj dCBwYXNzd2QgKnB3Ow0KKyANCitAQCAtNDY1LDcgKzQ2NSw3IEBAIG1haW4gKGludCBhcmdjLCBj aGFyICphcmd2W10pDQorICAgICAgIGdvdG8gb3V0Ow0KKyAgICAgfQ0KKyANCistICBpZiAoZ2V0 Y3dkIChvcmlnaW5hbF9jd2QsIHNpemVvZiAob3JpZ2luYWxfY3dkKSkgPT0gTlVMTCkNCisrICBp ZiAoKG9yaWdpbmFsX2N3ZCA9IGdfZ2V0X2N1cnJlbnRfZGlyICgpKSA9PSBOVUxMKQ0KKyAgICAg ew0KKyAgICAgICBnX3ByaW50ZXJyICgiRXJyb3IgZ2V0dGluZyBjd2Q6ICVzXG4iLA0KKyAgICAg ICAgICAgICAgICAgICBnX3N0cmVycm9yIChlcnJubykpOw0KK0BAIC05NTMsNiArOTUzLDcgQEAg bWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkNCisgICAgICAgZ19wdHJfYXJyYXlfZnJlZSAo c2F2ZWRfZW52LCBUUlVFKTsNCisgICAgIH0NCisgDQorKyAgZ19mcmVlIChvcmlnaW5hbF9jd2Qp Ow0KKyAgIGdfZnJlZSAocGF0aCk7DQorICAgZ19mcmVlIChjb21tYW5kX2xpbmUpOw0KKyAgIGdf ZnJlZSAob3B0X3VzZXIpOw0KZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEw LzA3X3NldC1YQVVUSE9SSVRZLWVudmlyb25tZW50LXZhcmlhYmxlLWlmLXVuc2V0LnBhdGNoIGIv cGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTAvMDdfc2V0LVhBVVRIT1JJVFktZW52aXJvbm1lbnQt dmFyaWFibGUtaWYtdW5zZXQucGF0Y2gNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAw MDAwMDAuLjFkZGY3OGNhYg0KLS0tIC9kZXYvbnVsbA0KKysrIGIvcGF0Y2hlcy9wb2xraXQtMC4x MDUvMC4xMTAvMDdfc2V0LVhBVVRIT1JJVFktZW52aXJvbm1lbnQtdmFyaWFibGUtaWYtdW5zZXQu cGF0Y2gNCkBAIC0wLDAgKzEsNTggQEANCitGcm9tOiBEYXZpZCBaZXV0aGVuIDx6ZXV0aGVuQGdt YWlsLmNvbT4NCitEYXRlOiBXZWQsIDE5IERlYyAyMDEyIDE0OjI4OjI5IC0wNTAwDQorU3ViamVj dDogU2V0IFhBVVRIT1JJVFkgZW52aXJvbm1lbnQgdmFyaWFibGUgaWYgaXMgdW5zZXQNCisNCitU aGUgd2F5IGl0IHdvcmtzIGlzIHRoYXQgaWYgWEFVVEhPUklUWSBpcyB1bnNldCwgdGhlbiBpdHMg ZGVmYXVsdA0KK3ZhbHVlIGlzICRIT01FLy5YYXV0aG9yaXR5LiBCdXQgc2luY2Ugd2UncmUgY2hh bmdpbmcgdXNlciBpZGVudGl0eQ0KK3RoaXMgd2lsbCBub3Qgd29yayBzaW5jZSAkSE9NRSB3aWxs IG5vdyBjaGFuZ2UuIFRoZXJlZm9yZSwgaWYNCitYQVVUSE9SSVRZIGlzIHVuc2V0LCBqdXN0IHNl dCBpdHMgZGVmYXVsdCB2YWx1ZSBiZWZvcmUgY2hhbmdpbmcNCitpZGVudGl0eS4gVGhpcyBidWcg b25seSBhZmZlY3RlZCBsb2dpbiBtYW5hZ2VycyB1c2luZyBYIFdpbmRvdw0KK0F1dGhvcml6YXRp b24gYnV0IG5vdCBleHBsaWNpdGx5IHNldHRpbmcgdGhlIFhBVVRIT1JJVFkgdmFyaWFibGUuDQor DQorWW91IGNhbiBhcmd1ZSB0aGF0IFhBVVRIT1JJVFkgaXMgYnJva2VuIHNpbmNlIGl0IGZvcmNl cyB1aWQtY2hhbmdpbmcNCithcHBzIGxpa2UgcGtleGVjKDEpIHRvIGRvIG1vcmUgd29yayAtIGFu ZCBnZXQgaW52b2x2ZWQgaW4gaW50aW1hdGUNCitkZXRhaWxzIG9mIGhvdyBYIHdvcmtzIGFuZCBz byBvbiAtIGJ1dCB0aGF0IGRvZXNuJ3QgY2hhbmdlIGhvdyB0aGluZ3MNCit3b3JrLg0KKw0KK0Jh c2VkIG9uIGEgcGF0Y2ggZnJvbSBQZXRlciBXdSA8bGVrZW5zdGV5bkBnbWFpbC5jb20+Lg0KKw0K K0J1ZzogaHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTE2MjMN CitTaWduZWQtb2ZmLWJ5OiBEYXZpZCBaZXV0aGVuIDx6ZXV0aGVuQGdtYWlsLmNvbT4NCitPcmln aW46IHVwc3RyZWFtLCAwLjExMCwgY29tbWl0OmQ2YWNlY2RkMGViYjQyZTI4ZmYyOGUwNGUwMjA3 Y2IwMWZhMjA5MTANCistLS0NCisgc3JjL3Byb2dyYW1zL3BrZXhlYy5jIHwgMjIgKysrKysrKysr KysrKysrKysrKysrKw0KKyAxIGZpbGUgY2hhbmdlZCwgMjIgaW5zZXJ0aW9ucygrKQ0KKw0KK2Rp ZmYgLS1naXQgYS9zcmMvcHJvZ3JhbXMvcGtleGVjLmMgYi9zcmMvcHJvZ3JhbXMvcGtleGVjLmMN CitpbmRleCAzNzM5NzdiLi43ZmFmYTE0IDEwMDY0NA0KKy0tLSBhL3NyYy9wcm9ncmFtcy9wa2V4 ZWMuYw0KKysrKyBiL3NyYy9wcm9ncmFtcy9wa2V4ZWMuYw0KK0BAIC01OTcsNiArNTk3LDI4IEBA IG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2W10pDQorICAgICAgIGdfcHRyX2FycmF5X2FkZCAo c2F2ZWRfZW52LCBnX3N0cmR1cCAodmFsdWUpKTsNCisgICAgIH0NCisgDQorKyAgLyogJFhBVVRI T1JJVFkgaXMgInNwZWNpYWwiIC0gaWYgdW5zZXQsIHdlIG5lZWQgdG8gc2V0IGl0IHRvIH4vLlhh dXRob3JpdHkuIFllcywNCisrICAgKiB0aGlzIGlzIGJyb2tlbiBidXQgaXQncyB1bmZvcnR1bmF0 ZWx5IGhvdyB0aGluZ3Mgd29yayAoc2VlIGZkbyAjNTE2MjMgZm9yDQorKyAgICogZGV0YWlscykN CisrICAgKi8NCisrICBpZiAoZ19nZXRlbnYgKCJYQVVUSE9SSVRZIikgPT0gTlVMTCkNCisrICAg IHsNCisrICAgICAgY29uc3QgZ2NoYXIgKmhvbWU7DQorKw0KKysgICAgICAvKiBwcmUtMi4zNiBH TGliIGRvZXMgbm90IGV4YW1pbmUgJEhPTUUgKGl0IGFsd2F5cyBsb29rcyBpbiAvZXRjL3Bhc3N3 ZCkgYW5kDQorKyAgICAgICAqIHRoaXMgaXMgbm90IHdoYXQgd2Ugd2FudA0KKysgICAgICAgKi8N CisrICAgICAgaG9tZSA9IGdfZ2V0ZW52ICgiSE9NRSIpOw0KKysgICAgICBpZiAoaG9tZSA9PSBO VUxMKQ0KKysgICAgICAgIGhvbWUgPSBnX2dldF9ob21lX2RpciAoKTsNCisrDQorKyAgICAgIGlm IChob21lICE9IE5VTEwpDQorKyAgICAgICAgew0KKysgICAgICAgICAgZ19wdHJfYXJyYXlfYWRk IChzYXZlZF9lbnYsIGdfc3RyZHVwICgiWEFVVEhPUklUWSIpKTsNCisrICAgICAgICAgIGdfcHRy X2FycmF5X2FkZCAoc2F2ZWRfZW52LCBnX2J1aWxkX2ZpbGVuYW1lIChob21lLCAiLlhhdXRob3Jp dHkiLCBOVUxMKSk7DQorKyAgICAgICAgfQ0KKysgICAgfQ0KKysNCisgICAvKiBOdWtlIHRoZSBl bnZpcm9ubWVudCB0byBnZXQgYSB3ZWxsLWtub3duIGFuZCBzYW5pdGl6ZWQgZW52aXJvbm1lbnQg dG8gYXZvaWQgYXR0YWNrcw0KKyAgICAqIHZpYSBlLmcuIHRoZSBEQlVTX1NZU1RFTV9CVVNfQURE UkVTUyBlbnZpcm9ubWVudCB2YXJpYWJsZSBhbmQgc2ltaWxhci4NCisgICAgKi8NCmRpZmYgLS1n aXQgYS9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMS8wOV9wYW1fZW52aXJvbm1lbnQucGF0Y2gg Yi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMS8wOV9wYW1fZW52aXJvbm1lbnQucGF0Y2gNCm5l dyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAuLjc5M2VmZWU2NA0KLS0tIC9kZXYv bnVsbA0KKysrIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTEvMDlfcGFtX2Vudmlyb25tZW50 LnBhdGNoDQpAQCAtMCwwICsxLDQzIEBADQorRnJvbTogU3RldmUgTGFuZ2FzZWsgPHN0ZXZlLmxh bmdhc2VrQGNhbm9uaWNhbC5jb20+DQorRGF0ZTogRnJpLCA4IE1hciAyMDEzIDEyOjAwOjAwICsw MTAwDQorU3ViamVjdDogcGtleGVjOiBTZXQgcHJvY2VzcyBlbnZpcm9ubWVudCBmcm9tIHBhbV9n ZXRlbnZsaXN0KCkNCisNCitWYXJpb3VzIHBhbSBtb2R1bGVzIHByb3ZpZGUgZW52aXJvbm1lbnQg dmFyaWFibGVzIHRoYXQgYXJlIGludGVuZGVkIHRvIGJlIHNldA0KK2luIHRoZSBlbnZpcm9ubWVu dCBvZiB0aGUgcGFtIHNlc3Npb24uICBwa2V4ZWMgbmVlZHMgdG8gcHJvY2VzcyB0aGUgb3V0cHV0 IG9mDQorcGFtX2dldGVudmxpc3QoKSB0byBnZXQgdGhlc2UuDQorDQorQnVnOiBodHRwczovL2J1 Z3MuZnJlZWRlc2t0b3Aub3JnL3Nob3dfYnVnLmNnaT9pZD02MjAxNg0KK0FwcGxpZWQtdXBzdHJl YW06IDAuMTExLCBjb21taXQ6NWFlZjk3MjJjMTVhMzUwZmJmOGIyMGEzYjU4NDE5ZjE1NmNjN2M5 OA0KK0J1Zy1VYnVudHU6IGh0dHBzOi8vYnVncy5sYXVuY2hwYWQubmV0L2J1Z3MvOTgyNjg0DQor LS0tDQorIHNyYy9wcm9ncmFtcy9wa2V4ZWMuYyB8IDEwICsrKysrKysrKysNCisgMSBmaWxlIGNo YW5nZWQsIDEwIGluc2VydGlvbnMoKykNCisNCitkaWZmIC0tZ2l0IGEvc3JjL3Byb2dyYW1zL3Br ZXhlYy5jIGIvc3JjL3Byb2dyYW1zL3BrZXhlYy5jDQoraW5kZXggNjgyZmU5NS4uOWEwNTcwYSAx MDA2NDQNCistLS0gYS9zcmMvcHJvZ3JhbXMvcGtleGVjLmMNCisrKysgYi9zcmMvcHJvZ3JhbXMv cGtleGVjLmMNCitAQCAtMTQ1LDYgKzE0NSw3IEBAIG9wZW5fc2Vzc2lvbiAoY29uc3QgZ2NoYXIg KnVzZXJfdG9fYXV0aCkNCisgICBnYm9vbGVhbiByZXQ7DQorICAgZ2ludCByYzsNCisgICBwYW1f aGFuZGxlX3QgKnBhbV9oOw0KKysgIGNoYXIgKiplbnZsaXN0Ow0KKyAgIHN0cnVjdCBwYW1fY29u diBjb252ZXJzYXRpb247DQorIA0KKyAgIHJldCA9IEZBTFNFOw0KK0BAIC0xNzYsNiArMTc3LDE1 IEBAIG9wZW5fc2Vzc2lvbiAoY29uc3QgZ2NoYXIgKnVzZXJfdG9fYXV0aCkNCisgDQorICAgcmV0 ID0gVFJVRTsNCisgDQorKyAgZW52bGlzdCA9IHBhbV9nZXRlbnZsaXN0IChwYW1faCk7DQorKyAg aWYgKGVudmxpc3QgIT0gTlVMTCkNCisrICAgIHsNCisrICAgICAgZ3VpbnQgbjsNCisrICAgICAg Zm9yIChuID0gMDsgZW52bGlzdFtuXTsgbisrKQ0KKysgICAgICAgIHB1dGVudiAoZW52bGlzdFtu XSk7DQorKyAgICAgIGZyZWUgKGVudmxpc3QpOw0KKysgICAgfQ0KKysNCisgb3V0Og0KKyAgIGlm IChwYW1faCAhPSBOVUxMKQ0KKyAgICAgcGFtX2VuZCAocGFtX2gsIHJjKTsNCmRpZmYgLS1naXQg YS9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMS9GaXgtYS1tZW1vcnktbGVhay5wYXRjaCBiL3Bh dGNoZXMvcG9sa2l0LTAuMTA1LzAuMTExL0ZpeC1hLW1lbW9yeS1sZWFrLnBhdGNoDQpuZXcgZmls ZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi45YWE2NmJmNGYNCi0tLSAvZGV2L251bGwN CisrKyBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTExL0ZpeC1hLW1lbW9yeS1sZWFrLnBhdGNo DQpAQCAtMCwwICsxLDIyIEBADQorRnJvbTogPT91dGYtOD9xP01pbG9zbGF2X1RybWE9QzQ9OEQ/ PSA8bWl0ckByZWRoYXQuY29tPg0KK0RhdGU6IFR1ZSwgNyBNYXkgMjAxMyAyMjozMDoyNSArMDIw MA0KK1N1YmplY3Q6IEZpeCBhIG1lbW9yeSBsZWFrDQorDQorQnVnOiBodHRwczovL2J1Z3MuZnJl ZWRlc2t0b3Aub3JnL3Nob3dfYnVnLmNnaT9pZD02NDMzNg0KK09yaWdpbjogdXBzdHJlYW0sIDAu MTExLCBjb21taXQ6ZDdiNmFiNDBiNTg2YzI1NWM0OWFiYTIyZjU1OGViNjYwMmM4OGIxZQ0KKy0t LQ0KKyBzcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRoZWxwZXItcGFtLmMgfCAxICsNCisgMSBm aWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspDQorDQorZGlmZiAtLWdpdCBhL3NyYy9wb2xraXRh Z2VudC9wb2xraXRhZ2VudGhlbHBlci1wYW0uYyBiL3NyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2Vu dGhlbHBlci1wYW0uYw0KK2luZGV4IDdhZjUzMjEuLjI5MmFiYmUgMTAwNjQ0DQorLS0tIGEvc3Jj L3BvbGtpdGFnZW50L3BvbGtpdGFnZW50aGVscGVyLXBhbS5jDQorKysrIGIvc3JjL3BvbGtpdGFn ZW50L3BvbGtpdGFnZW50aGVscGVyLXBhbS5jDQorQEAgLTMyMSw2ICszMjEsNyBAQCBlcnJvcjoN CisgICAgICAgfQ0KKyAgICAgfQ0KKyAgIG1lbXNldCAoYXJlc3AsIDAsIG4gKiBzaXplb2YgKmFy ZXNwKTsNCisrICBmcmVlIChhcmVzcCk7DQorICAgKnJlc3AgPSBOVUxMOw0KKyAgIHJldHVybiBQ QU1fQ09OVl9FUlI7DQorIH0NCmRpZmYgLS1naXQgYS9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjEx Mi8wMGdpdF90eXBlX3JlZ2lzdHJhdGlvbi5wYXRjaCBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAu MTEyLzAwZ2l0X3R5cGVfcmVnaXN0cmF0aW9uLnBhdGNoDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0K aW5kZXggMDAwMDAwMDAwLi4zOTM2ODAxZjINCi0tLSAvZGV2L251bGwNCisrKyBiL3BhdGNoZXMv cG9sa2l0LTAuMTA1LzAuMTEyLzAwZ2l0X3R5cGVfcmVnaXN0cmF0aW9uLnBhdGNoDQpAQCAtMCww ICsxLDExOCBAQA0KK0Zyb206IFRvbWFzIEJ6YXRlayA8dGJ6YXRla0ByZWRoYXQuY29tPg0KK0Rh dGU6IFdlZCwgMjkgTWF5IDIwMTMgMTM6NDU6MzEgKzAwMDANCitTdWJqZWN0OiBVc2UgR09uY2Ug Zm9yIGludGVyZmFjZSB0eXBlIHJlZ2lzdHJhdGlvbg0KKw0KK1N0YXRpYyBsb2NhbCB2YXJpYWJs ZSBtYXkgbm90IGJlIGVub3VnaCBzaW5jZSBpdCBkb2Vzbid0IHByb3ZpZGUgbG9ja2luZy4NCisN CitSZWxhdGVkIHRvIHRoZXNlIHVkaXNrc2Qgd2FybmluZ3M6DQorICBHTGliLUdPYmplY3QtV0FS TklORyAqKjogY2Fubm90IHJlZ2lzdGVyIGV4aXN0aW5nIHR5cGUgYFBvbGtpdFN1YmplY3QnDQor DQorVGhhbmtzIHRvIEhhbnMgZGUgR29lZGUgZm9yIHNwb3R0aW5nIHRoaXMhDQorDQorQnVnOiBo dHRwczovL2J1Z3MuZnJlZWRlc2t0b3Aub3JnL3Nob3dfYnVnLmNnaT9pZD02NTEzMA0KK09yaWdp bjogdXBzdHJlYW0sIDAuMTEyLCBjb21taXQ6MjBhZDExNmE2NTgyZTU3ZDIwZjlkODE5Nzc1ODk0 NzkxODc1M2E0Yw0KKy0tLQ0KKyBzcmMvcG9sa2l0L3BvbGtpdGlkZW50aXR5LmMgICAgICAgICAg ICAgICAgICAgfCAxMCArKysrKystLS0tDQorIHNyYy9wb2xraXQvcG9sa2l0c3ViamVjdC5jICAg ICAgICAgICAgICAgICAgICB8IDEwICsrKysrKy0tLS0NCisgc3JjL3BvbGtpdGJhY2tlbmQvcG9s a2l0YmFja2VuZGFjdGlvbmxvb2t1cC5jIHwgMTAgKysrKysrLS0tLQ0KKyAzIGZpbGVzIGNoYW5n ZWQsIDE4IGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQ0KKw0KK2RpZmYgLS1naXQgYS9z cmMvcG9sa2l0L3BvbGtpdGlkZW50aXR5LmMgYi9zcmMvcG9sa2l0L3BvbGtpdGlkZW50aXR5LmMN CitpbmRleCBkZDE1YjJmLi43ODEzYzJjIDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xraXQvcG9sa2l0 aWRlbnRpdHkuYw0KKysrKyBiL3NyYy9wb2xraXQvcG9sa2l0aWRlbnRpdHkuYw0KK0BAIC00OSw5 ICs0OSw5IEBAIGJhc2VfaW5pdCAoZ3BvaW50ZXIgZ19pZmFjZSkNCisgR1R5cGUNCisgcG9sa2l0 X2lkZW50aXR5X2dldF90eXBlICh2b2lkKQ0KKyB7DQorLSAgc3RhdGljIEdUeXBlIGlmYWNlX3R5 cGUgPSAwOw0KKysgIHN0YXRpYyB2b2xhdGlsZSBnc2l6ZSBnX2RlZmluZV90eXBlX2lkX192b2xh dGlsZSA9IDA7DQorIA0KKy0gIGlmIChpZmFjZV90eXBlID09IDApDQorKyAgaWYgKGdfb25jZV9p bml0X2VudGVyICgmZ19kZWZpbmVfdHlwZV9pZF9fdm9sYXRpbGUpKQ0KKyAgICAgew0KKyAgICAg ICBzdGF0aWMgY29uc3QgR1R5cGVJbmZvIGluZm8gPQ0KKyAgICAgICB7DQorQEAgLTY3LDEyICs2 NywxNCBAQCBwb2xraXRfaWRlbnRpdHlfZ2V0X3R5cGUgKHZvaWQpDQorICAgICAgICAgTlVMTCAg ICAgICAgICAgICAgICAgICAgLyogdmFsdWVfdGFibGUgICAgKi8NCisgICAgICAgfTsNCisgDQor LSAgICAgIGlmYWNlX3R5cGUgPSBnX3R5cGVfcmVnaXN0ZXJfc3RhdGljIChHX1RZUEVfSU5URVJG QUNFLCAiUG9sa2l0SWRlbnRpdHkiLCAmaW5mbywgMCk7DQorKyAgICAgIEdUeXBlIGlmYWNlX3R5 cGUgPQ0KKysgICAgICAgIGdfdHlwZV9yZWdpc3Rlcl9zdGF0aWMgKEdfVFlQRV9JTlRFUkZBQ0Us ICJQb2xraXRJZGVudGl0eSIsICZpbmZvLCAwKTsNCisgDQorICAgICAgIGdfdHlwZV9pbnRlcmZh Y2VfYWRkX3ByZXJlcXVpc2l0ZSAoaWZhY2VfdHlwZSwgR19UWVBFX09CSkVDVCk7DQorKyAgICAg IGdfb25jZV9pbml0X2xlYXZlICgmZ19kZWZpbmVfdHlwZV9pZF9fdm9sYXRpbGUsIGlmYWNlX3R5 cGUpOw0KKyAgICAgfQ0KKyANCistICByZXR1cm4gaWZhY2VfdHlwZTsNCisrICByZXR1cm4gZ19k ZWZpbmVfdHlwZV9pZF9fdm9sYXRpbGU7DQorIH0NCisgDQorIC8qKg0KK2RpZmYgLS1naXQgYS9z cmMvcG9sa2l0L3BvbGtpdHN1YmplY3QuYyBiL3NyYy9wb2xraXQvcG9sa2l0c3ViamVjdC5jDQor aW5kZXggZDJjNGMyMC4uYWVkNTc5NSAxMDA2NDQNCistLS0gYS9zcmMvcG9sa2l0L3BvbGtpdHN1 YmplY3QuYw0KKysrKyBiL3NyYy9wb2xraXQvcG9sa2l0c3ViamVjdC5jDQorQEAgLTUwLDkgKzUw LDkgQEAgYmFzZV9pbml0IChncG9pbnRlciBnX2lmYWNlKQ0KKyBHVHlwZQ0KKyBwb2xraXRfc3Vi amVjdF9nZXRfdHlwZSAodm9pZCkNCisgew0KKy0gIHN0YXRpYyBHVHlwZSBpZmFjZV90eXBlID0g MDsNCisrICBzdGF0aWMgdm9sYXRpbGUgZ3NpemUgZ19kZWZpbmVfdHlwZV9pZF9fdm9sYXRpbGUg PSAwOw0KKyANCistICBpZiAoaWZhY2VfdHlwZSA9PSAwKQ0KKysgIGlmIChnX29uY2VfaW5pdF9l bnRlciAoJmdfZGVmaW5lX3R5cGVfaWRfX3ZvbGF0aWxlKSkNCisgICAgIHsNCisgICAgICAgc3Rh dGljIGNvbnN0IEdUeXBlSW5mbyBpbmZvID0NCisgICAgICAgew0KK0BAIC02OCwxMiArNjgsMTQg QEAgcG9sa2l0X3N1YmplY3RfZ2V0X3R5cGUgKHZvaWQpDQorICAgICAgICAgTlVMTCAgICAgICAg ICAgICAgICAgICAgLyogdmFsdWVfdGFibGUgICAgKi8NCisgICAgICAgfTsNCisgDQorLSAgICAg IGlmYWNlX3R5cGUgPSBnX3R5cGVfcmVnaXN0ZXJfc3RhdGljIChHX1RZUEVfSU5URVJGQUNFLCAi UG9sa2l0U3ViamVjdCIsICZpbmZvLCAwKTsNCisrICAgICAgR1R5cGUgaWZhY2VfdHlwZSA9DQor KyAgICAgICAgZ190eXBlX3JlZ2lzdGVyX3N0YXRpYyAoR19UWVBFX0lOVEVSRkFDRSwgIlBvbGtp dFN1YmplY3QiLCAmaW5mbywgMCk7DQorIA0KKyAgICAgICBnX3R5cGVfaW50ZXJmYWNlX2FkZF9w cmVyZXF1aXNpdGUgKGlmYWNlX3R5cGUsIEdfVFlQRV9PQkpFQ1QpOw0KKysgICAgICBnX29uY2Vf aW5pdF9sZWF2ZSAoJmdfZGVmaW5lX3R5cGVfaWRfX3ZvbGF0aWxlLCBpZmFjZV90eXBlKTsNCisg ICAgIH0NCisgDQorLSAgcmV0dXJuIGlmYWNlX3R5cGU7DQorKyAgcmV0dXJuIGdfZGVmaW5lX3R5 cGVfaWRfX3ZvbGF0aWxlOw0KKyB9DQorIA0KKyAvKioNCitkaWZmIC0tZ2l0IGEvc3JjL3BvbGtp dGJhY2tlbmQvcG9sa2l0YmFja2VuZGFjdGlvbmxvb2t1cC5jIGIvc3JjL3BvbGtpdGJhY2tlbmQv cG9sa2l0YmFja2VuZGFjdGlvbmxvb2t1cC5jDQoraW5kZXggNWExYTIyOC4uMjA3NDdlNyAxMDA2 NDQNCistLS0gYS9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kYWN0aW9ubG9va3VwLmMN CisrKysgYi9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kYWN0aW9ubG9va3VwLmMNCitA QCAtNzQsOSArNzQsOSBAQCBiYXNlX2luaXQgKGdwb2ludGVyIGdfaWZhY2UpDQorIEdUeXBlDQor IHBvbGtpdF9iYWNrZW5kX2FjdGlvbl9sb29rdXBfZ2V0X3R5cGUgKHZvaWQpDQorIHsNCistICBz dGF0aWMgR1R5cGUgaWZhY2VfdHlwZSA9IDA7DQorKyAgc3RhdGljIHZvbGF0aWxlIGdzaXplIGdf ZGVmaW5lX3R5cGVfaWRfX3ZvbGF0aWxlID0gMDsNCisgDQorLSAgaWYgKGlmYWNlX3R5cGUgPT0g MCkNCisrICBpZiAoZ19vbmNlX2luaXRfZW50ZXIgKCZnX2RlZmluZV90eXBlX2lkX192b2xhdGls ZSkpDQorICAgICB7DQorICAgICAgIHN0YXRpYyBjb25zdCBHVHlwZUluZm8gaW5mbyA9DQorICAg ICAgIHsNCitAQCAtOTIsMTIgKzkyLDE0IEBAIHBvbGtpdF9iYWNrZW5kX2FjdGlvbl9sb29rdXBf Z2V0X3R5cGUgKHZvaWQpDQorICAgICAgICAgTlVMTCAgICAgICAgICAgICAgICAgICAgLyogdmFs dWVfdGFibGUgICAgKi8NCisgICAgICAgfTsNCisgDQorLSAgICAgIGlmYWNlX3R5cGUgPSBnX3R5 cGVfcmVnaXN0ZXJfc3RhdGljIChHX1RZUEVfSU5URVJGQUNFLCAiUG9sa2l0QmFja2VuZEFjdGlv bkxvb2t1cCIsICZpbmZvLCAwKTsNCisrICAgICAgR1R5cGUgaWZhY2VfdHlwZSA9DQorKyAgICAg ICAgZ190eXBlX3JlZ2lzdGVyX3N0YXRpYyAoR19UWVBFX0lOVEVSRkFDRSwgIlBvbGtpdEJhY2tl bmRBY3Rpb25Mb29rdXAiLCAmaW5mbywgMCk7DQorIA0KKyAgICAgICBnX3R5cGVfaW50ZXJmYWNl X2FkZF9wcmVyZXF1aXNpdGUgKGlmYWNlX3R5cGUsIEdfVFlQRV9PQkpFQ1QpOw0KKysgICAgICBn X29uY2VfaW5pdF9sZWF2ZSAoJmdfZGVmaW5lX3R5cGVfaWRfX3ZvbGF0aWxlLCBpZmFjZV90eXBl KTsNCisgICAgIH0NCisgDQorLSAgcmV0dXJuIGlmYWNlX3R5cGU7DQorKyAgcmV0dXJuIGdfZGVm aW5lX3R5cGVfaWRfX3ZvbGF0aWxlOw0KKyB9DQorIA0KKyAvKioNCmRpZmYgLS1naXQgYS9wYXRj aGVzL3BvbGtpdC0wLjEwNS8wLjExMi8wOF9kZXByZWNhdGVfcmFjeV9BUElzLnBhdGNoIGIvcGF0 Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTIvMDhfZGVwcmVjYXRlX3JhY3lfQVBJcy5wYXRjaA0KbmV3 IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMC4uNzI1YTQ0YTJkDQotLS0gL2Rldi9u dWxsDQorKysgYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMi8wOF9kZXByZWNhdGVfcmFjeV9B UElzLnBhdGNoDQpAQCAtMCwwICsxLDI3IEBADQorRnJvbTogQ29saW4gV2FsdGVycyA8d2FsdGVy c0B2ZXJidW0ub3JnPg0KK0RhdGU6IFR1ZSwgMjAgQXVnIDIwMTMgMTU6MTU6MzEgLTA0MDANCitT dWJqZWN0OiBwb2xraXR1bml4cHJvY2VzczogRGVwcmVjYXRlIHJhY3kgQVBJcw0KKw0KK0l0J3Mg b25seSBzYWZlIGZvciBwcm9jZXNzZXMgdG8gYmUgY3JlYXRlZCB3aXRoIHRoZWlyIG93bmluZyB1 aWQsDQorKHdpdGhvdXQga2VybmVsIHN1cHBvcnQsIHdoaWNoIHdlIGRvbid0IGhhdmUpLiAgQW55 dGhpbmcgZWxzZSBpcw0KK3N1YmplY3QgdG8gY2xpZW50cyBleGVjKClpbmcgc2V0dWlkIGJpbmFy aWVzIGFmdGVyIHRoZSBmYWN0Lg0KKw0KK09yaWdpbjogdXBzdHJlYW0sIDAuMTEyLCBjb21taXQ6 MDgyOTE3ODlhMWY5OWQ0YWIyOWM3NGMzOTM0NDMwNGJjY2E0MzAyMw0KKy0tLQ0KKyBzcmMvcG9s a2l0L3BvbGtpdHVuaXhwcm9jZXNzLmggfCAyICsrDQorIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2Vy dGlvbnMoKykNCisNCitkaWZmIC0tZ2l0IGEvc3JjL3BvbGtpdC9wb2xraXR1bml4cHJvY2Vzcy5o IGIvc3JjL3BvbGtpdC9wb2xraXR1bml4cHJvY2Vzcy5oDQoraW5kZXggNTMxYTU3ZC4uZjVlZDFh NyAxMDA2NDQNCistLS0gYS9zcmMvcG9sa2l0L3BvbGtpdHVuaXhwcm9jZXNzLmgNCisrKysgYi9z cmMvcG9sa2l0L3BvbGtpdHVuaXhwcm9jZXNzLmgNCitAQCAtNDcsNyArNDcsOSBAQCB0eXBlZGVm IHN0cnVjdCBfUG9sa2l0VW5peFByb2Nlc3MgUG9sa2l0VW5peFByb2Nlc3M7DQorIHR5cGVkZWYg c3RydWN0IF9Qb2xraXRVbml4UHJvY2Vzc0NsYXNzIFBvbGtpdFVuaXhQcm9jZXNzQ2xhc3M7DQor IA0KKyBHVHlwZSAgICAgICAgICAgcG9sa2l0X3VuaXhfcHJvY2Vzc19nZXRfdHlwZSAgICAgICAo dm9pZCkgR19HTlVDX0NPTlNUOw0KKytHX0dOVUNfREVQUkVDQVRFRF9GT1IocG9sa2l0X3VuaXhf cHJvY2Vzc19uZXdfZm9yX293bmVyKQ0KKyBQb2xraXRTdWJqZWN0ICAqcG9sa2l0X3VuaXhfcHJv Y2Vzc19uZXcgICAgICAgICAgICAoZ2ludCAgICAgICAgICAgICAgIHBpZCk7DQorK0dfR05VQ19E RVBSRUNBVEVEX0ZPUihwb2xraXRfdW5peF9wcm9jZXNzX25ld19mb3Jfb3duZXIpDQorIFBvbGtp dFN1YmplY3QgICpwb2xraXRfdW5peF9wcm9jZXNzX25ld19mdWxsICAgICAgIChnaW50ICAgICAg ICAgICAgICAgcGlkLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgZ3VpbnQ2NCAgICAgICAgICAgIHN0YXJ0X3RpbWUpOw0KKyBQb2xraXRTdWJq ZWN0ICAqcG9sa2l0X3VuaXhfcHJvY2Vzc19uZXdfZm9yX293bmVyICAoZ2ludCAgICAgICAgICAg ICAgIHBpZCwNCmRpZmYgLS1naXQgYS9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMi9jdmUtMjAx My00Mjg4LnBhdGNoIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTIvY3ZlLTIwMTMtNDI4OC5w YXRjaA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMC4uMjA3YmNmMDQ0DQot LS0gL2Rldi9udWxsDQorKysgYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMi9jdmUtMjAxMy00 Mjg4LnBhdGNoDQpAQCAtMCwwICsxLDExNiBAQA0KK0Zyb206IENvbGluIFdhbHRlcnMgPHdhbHRl cnNAdmVyYnVtLm9yZz4NCitEYXRlOiBNb24sIDE5IEF1ZyAyMDEzIDEyOjE2OjExIC0wNDAwDQor U3ViamVjdDogcGtjaGVjazogU3VwcG9ydCAtLXByb2Nlc3M9cGlkLHN0YXJ0LXRpbWUsdWlkIHN5 bnRheCB0b28NCisNCitUaGUgdWlkIGlzIGEgbmV3IGFkZGl0aW9uOyB0aGlzIGFsbG93cyBjYWxs ZXJzIHN1Y2ggYXMgbGlidmlydCB0bw0KK2Nsb3NlIGEgcmFjZSBjb25kaXRpb24gaW4gcmVhZGlu ZyB0aGUgdWlkIG9mIHRoZSBwcm9jZXNzIHRhbGtpbmcgdG8NCit0aGVtLiAgVGhleSBjYW4gcmVh ZCBpdCB2aWEgZ2V0c29ja29wdChTT19QRUVSQ1JFRCkgb3IgZXF1aXZhbGVudCwNCityYXRoZXIg dGhhbiBoYXZpbmcgcGtjaGVjayBsb29rIGF0IC9wcm9jIGxhdGVyIGFmdGVyIHRoZSBmYWN0Lg0K Kw0KK1Byb2dyYW1zIHdoaWNoIGludm9rZSBwa2NoZWNrIGJ1dCBuZWVkIHRvIGtub3cgYmVmb3Jl aGFuZCAoaS5lLiAgYXQNCitjb21waWxlIHRpbWUpIHdoZXRoZXIgb3Igbm90IGl0IHN1cHBvcnRz IHBhc3NpbmcgdGhlIHVpZCBjYW4NCit1c2U6DQorDQorcGtjaGVja19zdXBwb3J0c191aWQ9JCgk UEtHX0NPTkZJRyAtLXZhcmlhYmxlIHBrY2hlY2tfc3VwcG9ydHNfdWlkIHBvbGtpdC1nb2JqZWN0 LTEpDQordGVzdCB4JHBrY2hlY2tfc3VwcG9ydHNfdWlkID0geHllcw0KKw0KK09yaWdpbjogdXBz dHJlYW0sIDAuMTEyLCBjb21taXQ6Mzk2ODQxMWIwYzdiYTE5M2Y5YjkyNzZlYzkxMTY5MmFlYzI0 ODYwOA0KKy0tLQ0KKyBkYXRhL3BvbGtpdC1nb2JqZWN0LTEucGMuaW4gfCAgMyArKysNCisgZG9j cy9tYW4vcGtjaGVjay54bWwgICAgICAgIHwgMjkgKysrKysrKysrKysrKysrKysrKystLS0tLS0t LS0NCisgc3JjL3Byb2dyYW1zL3BrY2hlY2suYyAgICAgIHwgIDcgKysrKysrLQ0KKyAzIGZpbGVz IGNoYW5nZWQsIDI5IGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQ0KKw0KK2RpZmYgLS1n aXQgYS9kYXRhL3BvbGtpdC1nb2JqZWN0LTEucGMuaW4gYi9kYXRhL3BvbGtpdC1nb2JqZWN0LTEu cGMuaW4NCitpbmRleCBjMzk2NzdkLi41YzRjNjIwIDEwMDY0NA0KKy0tLSBhL2RhdGEvcG9sa2l0 LWdvYmplY3QtMS5wYy5pbg0KKysrKyBiL2RhdGEvcG9sa2l0LWdvYmplY3QtMS5wYy5pbg0KK0BA IC0xMSwzICsxMSw2IEBAIFZlcnNpb246IEBWRVJTSU9OQA0KKyBMaWJzOiAtTCR7bGliZGlyfSAt bHBvbGtpdC1nb2JqZWN0LTENCisgQ2ZsYWdzOiAtSSR7aW5jbHVkZWRpcn0vcG9sa2l0LTENCisg UmVxdWlyZXM6IGdpby0yLjAgPj0gMi4xOCBnbGliLTIuMCA+PSAyLjE4DQorKyMgUHJvZ3JhbXMg dXNpbmcgcGtjaGVjayBjYW4gdXNlIHRoaXMgdG8gZGV0ZXJtaW5lDQorKyMgd2hldGhlciBvciBu b3QgaXQgY2FuIGJlIHBhc3NlZCBhIHVpZC4NCisrcGtjaGVja19zdXBwb3J0c191aWQ9dHJ1ZQ0K K2RpZmYgLS1naXQgYS9kb2NzL21hbi9wa2NoZWNrLnhtbCBiL2RvY3MvbWFuL3BrY2hlY2sueG1s DQoraW5kZXggNmI4YTg3NC4uNTA4NDQ3ZSAxMDA2NDQNCistLS0gYS9kb2NzL21hbi9wa2NoZWNr LnhtbA0KKysrKyBiL2RvY3MvbWFuL3BrY2hlY2sueG1sDQorQEAgLTU1LDYgKzU1LDkgQEANCisg ICAgICAgICAgICAgPGFyZyBjaG9pY2U9InBsYWluIj4NCisgICAgICAgICAgICAgICA8cmVwbGFj ZWFibGU+cGlkLHBpZC1zdGFydC10aW1lPC9yZXBsYWNlYWJsZT4NCisgICAgICAgICAgICAgPC9h cmc+DQorKyAgICAgICAgICAgIDxhcmcgY2hvaWNlPSJwbGFpbiI+DQorKyAgICAgICAgICAgICAg PHJlcGxhY2VhYmxlPnBpZCxwaWQtc3RhcnQtdGltZSx1aWQ8L3JlcGxhY2VhYmxlPg0KKysgICAg ICAgICAgICA8L2FyZz4NCisgICAgICAgICAgIDwvZ3JvdXA+DQorICAgICAgICAgPC9hcmc+DQor ICAgICAgICAgPGFyZyBjaG9pY2U9InBsYWluIj4NCitAQCAtOTAsNyArOTMsNyBAQA0KKyAgICAg PHRpdGxlPkRFU0NSSVBUSU9OPC90aXRsZT4NCisgICAgIDxwYXJhPg0KKyAgICAgICA8Y29tbWFu ZD5wa2NoZWNrPC9jb21tYW5kPiBpcyB1c2VkIHRvIGNoZWNrIHdoZXRoZXIgYSBwcm9jZXNzLCBz cGVjaWZpZWQgYnkNCistICAgICAgZWl0aGVyIDxvcHRpb24+LS1wcm9jZXNzPC9vcHRpb24+IG9y IDxvcHRpb24+LS1zeXN0ZW0tYnVzLW5hbWU8L29wdGlvbj4sDQorKyAgICAgIGVpdGhlciA8b3B0 aW9uPi0tcHJvY2Vzczwvb3B0aW9uPiAoc2VlIGJlbG93KSBvciA8b3B0aW9uPi0tc3lzdGVtLWJ1 cy1uYW1lPC9vcHRpb24+LA0KKyAgICAgICBpcyBhdXRob3JpemVkIGZvciA8cmVwbGFjZWFibGU+ YWN0aW9uPC9yZXBsYWNlYWJsZT4uIFRoZSA8b3B0aW9uPi0tZGV0YWlsPC9vcHRpb24+DQorICAg ICAgIG9wdGlvbiBjYW4gYmUgdXNlZCB6ZXJvIG9yIG1vcmUgdGltZXMgdG8gcGFzcyBkZXRhaWxz IGFib3V0IDxyZXBsYWNlYWJsZT5hY3Rpb248L3JlcGxhY2VhYmxlPi4NCisgICAgICAgSWYgPG9w dGlvbj4tLWFsbG93LXVzZXItaW50ZXJhY3Rpb248L29wdGlvbj4gaXMgcGFzc2VkLCA8Y29tbWFu ZD5wa2NoZWNrPC9jb21tYW5kPiBibG9ja3MNCitAQCAtMTYwLDE3ICsxNjMsMjUgQEAgS0VZMz1W QUxVRTMNCisgICA8cmVmc2VjdDEgaWQ9InBrY2hlY2stbm90ZXMiPg0KKyAgICAgPHRpdGxlPk5P VEVTPC90aXRsZT4NCisgICAgIDxwYXJhPg0KKy0gICAgICBTaW5jZSBwcm9jZXNzIGlkZW50aWZp ZXJzIGNhbiBiZSByZWN5Y2xlZCwgdGhlIGNhbGxlciBzaG91bGQgYWx3YXlzIHVzZQ0KKy0gICAg ICA8cmVwbGFjZWFibGU+cGlkLHBpZC1zdGFydC10aW1lPC9yZXBsYWNlYWJsZT4gdG8gc3BlY2lm eSB0aGUgcHJvY2Vzcw0KKy0gICAgICB0byBjaGVjayBmb3IgYXV0aG9yaXphdGlvbiB3aGVuIHVz aW5nIHRoZSA8b3B0aW9uPi0tcHJvY2Vzczwvb3B0aW9uPiBvcHRpb24uDQorLSAgICAgIFRoZSB2 YWx1ZSBvZiA8cmVwbGFjZWFibGU+cGlkLXN0YXJ0LXRpbWU8L3JlcGxhY2VhYmxlPg0KKy0gICAg ICBjYW4gYmUgZGV0ZXJtaW5lZCBieSBjb25zdWx0aW5nIGUuZy4gdGhlDQorKyAgICAgIERvIG5v dCB1c2UgZWl0aGVyIHRoZSBiYXJlIDxyZXBsYWNlYWJsZT5waWQ8L3JlcGxhY2VhYmxlPiBvcg0K KysgICAgICA8cmVwbGFjZWFibGU+cGlkLHN0YXJ0LXRpbWU8L3JlcGxhY2VhYmxlPiBzeW50YXgg Zm9ybXMgZm9yDQorKyAgICAgIDxvcHRpb24+LS1wcm9jZXNzPC9vcHRpb24+LiAgVGhlcmUgYXJl IHJhY2UgY29uZGl0aW9ucyBpbiBib3RoLg0KKysgICAgICBOZXcgY29kZSBzaG91bGQgYWx3YXlz IHVzZQ0KKysgICAgICA8cmVwbGFjZWFibGU+cGlkLHBpZC1zdGFydC10aW1lLHVpZDwvcmVwbGFj ZWFibGU+LiAgVGhlIHZhbHVlIG9mDQorKyAgICAgIDxyZXBsYWNlYWJsZT5zdGFydC10aW1lPC9y ZXBsYWNlYWJsZT4gY2FuIGJlIGRldGVybWluZWQgYnkNCisrICAgICAgY29uc3VsdGluZyBlLmcu IHRoZQ0KKyAgICAgICA8Y2l0ZXJlZmVudHJ5Pg0KKyAgICAgICAgIDxyZWZlbnRyeXRpdGxlPnBy b2M8L3JlZmVudHJ5dGl0bGU+PG1hbnZvbG51bT41PC9tYW52b2xudW0+DQorICAgICAgIDwvY2l0 ZXJlZmVudHJ5Pg0KKy0gICAgICBmaWxlIHN5c3RlbSBkZXBlbmRpbmcgb24gdGhlIG9wZXJhdGlu ZyBzeXN0ZW0uIElmIG9ubHkgPHJlcGxhY2VhYmxlPnBpZDwvcmVwbGFjZWFibGU+DQorLSAgICAg IGlzIHBhc3NlZCB0byB0aGUgPG9wdGlvbj4tLXByb2Nlc3M8L29wdGlvbj4gb3B0aW9uLCB0aGVu IDxjb21tYW5kPnBrY2hlY2s8L2NvbW1hbmQ+DQorLSAgICAgIHdpbGwgbG9vayB1cCB0aGUgc3Rh cnQgdGltZSBpdHNlbGYgYnV0IG5vdGUgdGhhdCB0aGlzIG1heSBiZSByYWN5Lg0KKysgICAgICBm aWxlIHN5c3RlbSBkZXBlbmRpbmcgb24gdGhlIG9wZXJhdGluZyBzeXN0ZW0uICBJZiBmZXdlciB0 aGFuIDMNCisrICAgICAgYXJndW1lbnRzIGFyZSBwYXNzZWQsIDxjb21tYW5kPnBrY2hlY2s8L2Nv bW1hbmQ+IHdpbGwgYXR0ZW1wdCB0bw0KKysgICAgICBsb29rIHVwIHRoZW0gdXAgaW50ZXJuYWxs eSwgYnV0IG5vdGUgdGhhdCB0aGlzIG1heSBiZSByYWN5Lg0KKysgICAgPC9wYXJhPg0KKysgICAg PHBhcmE+DQorKyAgICAgIElmIHlvdXIgcHJvZ3JhbSBpcyBhIGRhZW1vbiB3aXRoIGUuZy4gYSBj dXN0b20gVW5peCBkb21haW4NCisrICAgICAgc29ja2V0LCB5b3Ugc2hvdWxkIGRldGVybWluZSB0 aGUgPHJlcGxhY2VhYmxlPnVpZDwvcmVwbGFjZWFibGU+DQorKyAgICAgIHBhcmFtZXRlciB2aWEg b3BlcmF0aW5nIHN5c3RlbSBtZWNoYW5pc21zIHN1Y2ggYXMNCisrICAgICAgPGxpdGVyYWw+UEVF UkNSRUQ8L2xpdGVyYWw+Lg0KKyAgICAgPC9wYXJhPg0KKyAgIDwvcmVmc2VjdDE+DQorIA0KK2Rp ZmYgLS1naXQgYS9zcmMvcHJvZ3JhbXMvcGtjaGVjay5jIGIvc3JjL3Byb2dyYW1zL3BrY2hlY2su Yw0KK2luZGV4IDcxOWEzNmMuLjA1N2U5MjYgMTAwNjQ0DQorLS0tIGEvc3JjL3Byb2dyYW1zL3Br Y2hlY2suYw0KKysrKyBiL3NyYy9wcm9ncmFtcy9wa2NoZWNrLmMNCitAQCAtMzcyLDYgKzM3Miw3 IEBAIG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2W10pDQorICAgICAgIGVsc2UgaWYgKGdfc3Ry Y21wMCAoYXJndltuXSwgIi0tcHJvY2VzcyIpID09IDAgfHwgZ19zdHJjbXAwIChhcmd2W25dLCAi LXAiKSA9PSAwKQ0KKyAgICAgICAgIHsNCisgICAgICAgICAgIGdpbnQgcGlkOw0KKysJICBndWlu dCB1aWQ7DQorICAgICAgICAgICBndWludDY0IHBpZF9zdGFydF90aW1lOw0KKyANCisgICAgICAg ICAgIG4rKzsNCitAQCAtMzgxLDcgKzM4MiwxMSBAQCBtYWluIChpbnQgYXJnYywgY2hhciAqYXJn dltdKQ0KKyAgICAgICAgICAgICAgIGdvdG8gb3V0Ow0KKyAgICAgICAgICAgICB9DQorIA0KKy0g ICAgICAgICAgaWYgKHNzY2FuZiAoYXJndltuXSwgIiVpLCUiIEdfR1VJTlQ2NF9GT1JNQVQsICZw aWQsICZwaWRfc3RhcnRfdGltZSkgPT0gMikNCisrICAgICAgICAgIGlmIChzc2NhbmYgKGFyZ3Zb bl0sICIlaSwlIiBHX0dVSU5UNjRfRk9STUFUICIsJXUiLCAmcGlkLCAmcGlkX3N0YXJ0X3RpbWUs ICZ1aWQpID09IDMpDQorKyAgICAgICAgICAgIHsNCisrICAgICAgICAgICAgICBzdWJqZWN0ID0g cG9sa2l0X3VuaXhfcHJvY2Vzc19uZXdfZm9yX293bmVyIChwaWQsIHBpZF9zdGFydF90aW1lLCB1 aWQpOw0KKysgICAgICAgICAgICB9DQorKyAgICAgICAgICBlbHNlIGlmIChzc2NhbmYgKGFyZ3Zb bl0sICIlaSwlIiBHX0dVSU5UNjRfRk9STUFULCAmcGlkLCAmcGlkX3N0YXJ0X3RpbWUpID09IDIp DQorICAgICAgICAgICAgIHsNCisgICAgICAgICAgICAgICBzdWJqZWN0ID0gcG9sa2l0X3VuaXhf cHJvY2Vzc19uZXdfZnVsbCAocGlkLCBwaWRfc3RhcnRfdGltZSk7DQorICAgICAgICAgICAgIH0N CmRpZmYgLS1naXQgYS9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy8wMGdpdF9maXhfbWVtbGVh ay5wYXRjaCBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzLzAwZ2l0X2ZpeF9tZW1sZWFrLnBh dGNoDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi40MjgzMzQ1YTANCi0t LSAvZGV2L251bGwNCisrKyBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzLzAwZ2l0X2ZpeF9t ZW1sZWFrLnBhdGNoDQpAQCAtMCwwICsxLDI2IEBADQorRnJvbTogIk1heCBBLiBEZWRuZXYiIDxk ZWRuZXZAcmFtYmxlci5ydT4NCitEYXRlOiBTdW4sIDExIEphbiAyMDE1IDIwOjAwOjQ0IC0wNTAw DQorU3ViamVjdDogYXV0aG9yaXR5OiBGaXggbWVtb3J5IGxlYWsgaW4gRW51bWVyYXRlQWN0aW9u cyBjYWxsIHJlc3VsdHMgaGFuZGxlcg0KKw0KK1BvbGljeWtpdC0xIGRvZXNuJ3QgcmVsZWFzZSBy ZWZlcmVuY2UgY291bnRlcnMgb2YgR1ZhcmlhbnQgZGF0YSBmb3INCitvcmcuZnJlZWRlc2t0b3Au UG9saWN5S2l0MS5BdXRob3JpdHkuRW51bWVyYXRlQWN0aW9ucyBkYnVzIGNhbGwuICBUaGlzDQor cGF0Y2ggZml4ZWQgcmVmZXJlbmNlIGNvdW50aW5nIGFuZCBmb2xsb3dpbmcgbWVtb3J5IGxlYWsu DQorDQorQnVnOiBodHRwczovL2J1Z3MuZnJlZWRlc2t0b3Aub3JnL3Nob3dfYnVnLmNnaT9pZD04 ODI4OA0KK09yaWdpbjogdXBzdHJlYW0sIDAuMTEzLCBjb21taXQ6ZjRkNzFlMGRlODg1MDEwNDk0 YjhiMGI4ZDYyY2E5MTAwMTFkNzU0NA0KKy0tLQ0KKyBzcmMvcG9sa2l0L3BvbGtpdGF1dGhvcml0 eS5jIHwgMSAtDQorIDEgZmlsZSBjaGFuZ2VkLCAxIGRlbGV0aW9uKC0pDQorDQorZGlmZiAtLWdp dCBhL3NyYy9wb2xraXQvcG9sa2l0YXV0aG9yaXR5LmMgYi9zcmMvcG9sa2l0L3BvbGtpdGF1dGhv cml0eS5jDQoraW5kZXggOTk0N2NmMy4uODRkYWI3MiAxMDA2NDQNCistLS0gYS9zcmMvcG9sa2l0 L3BvbGtpdGF1dGhvcml0eS5jDQorKysrIGIvc3JjL3BvbGtpdC9wb2xraXRhdXRob3JpdHkuYw0K K0BAIC03MTUsNyArNzE1LDYgQEAgcG9sa2l0X2F1dGhvcml0eV9lbnVtZXJhdGVfYWN0aW9uc19m aW5pc2ggKFBvbGtpdEF1dGhvcml0eSAqYXV0aG9yaXR5LA0KKyAgIHdoaWxlICgoY2hpbGQgPSBn X3ZhcmlhbnRfaXRlcl9uZXh0X3ZhbHVlICgmaXRlcikpICE9IE5VTEwpDQorICAgICB7DQorICAg ICAgIHJldCA9IGdfbGlzdF9wcmVwZW5kIChyZXQsIHBvbGtpdF9hY3Rpb25fZGVzY3JpcHRpb25f bmV3X2Zvcl9ndmFyaWFudCAoY2hpbGQpKTsNCistICAgICAgZ192YXJpYW50X3JlZl9zaW5rIChj aGlsZCk7DQorICAgICAgIGdfdmFyaWFudF91bnJlZiAoY2hpbGQpOw0KKyAgICAgfQ0KKyAgIHJl dCA9IGdfbGlzdF9yZXZlcnNlIChyZXQpOw0KZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9sa2l0LTAu MTA1LzAuMTEzLzAwZ2l0X2ludmFsaWRfb2JqZWN0X3BhdGhzLnBhdGNoIGIvcGF0Y2hlcy9wb2xr aXQtMC4xMDUvMC4xMTMvMDBnaXRfaW52YWxpZF9vYmplY3RfcGF0aHMucGF0Y2gNCm5ldyBmaWxl IG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAuLjA4OGQxNzBhMA0KLS0tIC9kZXYvbnVsbA0K KysrIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvMDBnaXRfaW52YWxpZF9vYmplY3RfcGF0 aHMucGF0Y2gNCkBAIC0wLDAgKzEsMTE2IEBADQorRnJvbTogQ29saW4gV2FsdGVycyA8d2FsdGVy c0ByZWRoYXQuY29tPg0KK0RhdGU6IFNhdCwgMzAgTWF5IDIwMTUgMDk6MDY6MjMgLTA0MDANCitT dWJqZWN0OiBDVkUtMjAxNS0zMjE4OiBiYWNrZW5kOiBIYW5kbGUgaW52YWxpZCBvYmplY3QgcGF0 aHMgaW4NCisgUmVnaXN0ZXJBdXRoZW50aWNhdGlvbkFnZW50DQorTUlNRS1WZXJzaW9uOiAxLjAN CitDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9InV0Zi04Ig0KK0NvbnRlbnQtVHJh bnNmZXItRW5jb2Rpbmc6IDhiaXQNCisNCitQcm9wZXJseSBwcm9wYWdhdGUgdGhlIGVycm9yLCBv dGhlcndpc2Ugd2UgZGVyZWZlcmVuY2UgYSBgTlVMTGANCitwb2ludGVyLiAgVGhpcyBpcyBhIGxv Y2FsLCBhdXRoZW50aWNhdGVkIERvUy4NCisNCitgUmVnaXN0ZXJBdXRoZW50aWNhdGlvbkFnZW50 V2l0aE9wdGlvbnNgIGFuZA0KK2BVbnJlZ2lzdGVyQXV0aGVudGljYXRpb25gIGhhdmUgYmVlbiB2 YWxpZGF0ZWQgdG8gbm90IG5lZWQgY2hhbmdlcyBmb3INCit0aGlzLg0KKw0KK2h0dHA6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvYXJjaGl2ZXMvcG9sa2l0LWRldmVsLzIwMTUtTWF5LzAwMDQyMC5o dG1sDQorDQorQnVnOiBodHRwczovL2J1Z3MuZnJlZWRlc2t0b3Aub3JnL3Nob3dfYnVnLmNnaT9p ZD05MDgyOQ0KK0J1Zy1EZWJpYW46IGh0dHBzOi8vYnVncy5kZWJpYW4ub3JnLzc4NzkzMg0KK1Jl cG9ydGVkLWJ5OiBUYXZpcyBPcm1hbmR5IDx0YXZpc29AZ29vZ2xlLmNvbT4NCitSZXZpZXdlZC1i eTogUGhpbGlwIFdpdGhuYWxsIDxwaGlsaXBAdGVjbm9jb2RlLmNvLnVrPg0KK1Jldmlld2VkLWJ5 OiBNaWxvc2xhdiBUcm1hxI0gPG1pdHJAcmVkaGF0LmNvbT4NCitTaWduZWQtb2ZmLWJ5OiBDb2xp biBXYWx0ZXJzIDx3YWx0ZXJzQHJlZGhhdC5jb20+DQorT3JpZ2luOiB1cHN0cmVhbSwgMC4xMTMs IGNvbW1pdDo0OGU2NDY5MThlZmIyYmYwYjNiNTA1NzQ3NjU1NzI2ZDc4NjlmMzFjDQorLS0tDQor IC4uLi9wb2xraXRiYWNrZW5kaW50ZXJhY3RpdmVhdXRob3JpdHkuYyAgICAgICAgICAgIHwgNTMg KysrKysrKysrKysrLS0tLS0tLS0tLQ0KKyAxIGZpbGUgY2hhbmdlZCwgMzAgaW5zZXJ0aW9ucygr KSwgMjMgZGVsZXRpb25zKC0pDQorDQorZGlmZiAtLWdpdCBhL3NyYy9wb2xraXRiYWNrZW5kL3Bv bGtpdGJhY2tlbmRpbnRlcmFjdGl2ZWF1dGhvcml0eS5jIGIvc3JjL3BvbGtpdGJhY2tlbmQvcG9s a2l0YmFja2VuZGludGVyYWN0aXZlYXV0aG9yaXR5LmMNCitpbmRleCBiMjM3ZTlkLi4yNWUxM2Zi IDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRpbnRlcmFjdGl2 ZWF1dGhvcml0eS5jDQorKysrIGIvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGludGVy YWN0aXZlYXV0aG9yaXR5LmMNCitAQCAtMTU1OCwzNiArMTU1OCw0MiBAQCBhdXRoZW50aWNhdGlv bl9hZ2VudF9uZXcgKFBvbGtpdFN1YmplY3QgKnNjb3BlLA0KKyAgICAgICAgICAgICAgICAgICAg ICAgICAgIGNvbnN0IGdjaGFyICp1bmlxdWVfc3lzdGVtX2J1c19uYW1lLA0KKyAgICAgICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IGdjaGFyICpsb2NhbGUsDQorICAgICAgICAgICAgICAgICAg ICAgICAgICAgY29uc3QgZ2NoYXIgKm9iamVjdF9wYXRoLA0KKy0gICAgICAgICAgICAgICAgICAg ICAgICAgIEdWYXJpYW50ICAgICpyZWdpc3RyYXRpb25fb3B0aW9ucykNCisrICAgICAgICAgICAg ICAgICAgICAgICAgICBHVmFyaWFudCAgICAqcmVnaXN0cmF0aW9uX29wdGlvbnMsDQorKyAgICAg ICAgICAgICAgICAgICAgICAgICAgR0Vycm9yICAgICAqKmVycm9yKQ0KKyB7DQorICAgQXV0aGVu dGljYXRpb25BZ2VudCAqYWdlbnQ7DQorLSAgR0Vycm9yICplcnJvcjsNCisrICBHREJ1c1Byb3h5 ICpwcm94eTsNCisgDQorLSAgYWdlbnQgPSBnX25ldzAgKEF1dGhlbnRpY2F0aW9uQWdlbnQsIDEp Ow0KKysgIGlmICghZ192YXJpYW50X2lzX29iamVjdF9wYXRoIChvYmplY3RfcGF0aCkpDQorKyAg ICB7DQorKyAgICAgIGdfc2V0X2Vycm9yIChlcnJvciwgUE9MS0lUX0VSUk9SLCBQT0xLSVRfRVJS T1JfRkFJTEVELA0KKysgICAgICAgICAgICAgICAgICAgIkludmFsaWQgb2JqZWN0IHBhdGggJyVz JyIsIG9iamVjdF9wYXRoKTsNCisrICAgICAgcmV0dXJuIE5VTEw7DQorKyAgICB9DQorKw0KKysg IHByb3h5ID0gZ19kYnVzX3Byb3h5X25ld19mb3JfYnVzX3N5bmMgKEdfQlVTX1RZUEVfU1lTVEVN LA0KKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdfREJVU19QUk9Y WV9GTEFHU19ET19OT1RfTE9BRF9QUk9QRVJUSUVTIHwNCisrICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBHX0RCVVNfUFJPWFlfRkxBR1NfRE9fTk9UX0NPTk5FQ1RfU0lH TkFMUywNCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAv KiBHREJ1c0ludGVyZmFjZUluZm8qICovDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgdW5pcXVlX3N5c3RlbV9idXNfbmFtZSwNCisrICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBvYmplY3RfcGF0aCwNCisrICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAib3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aGVu dGljYXRpb25BZ2VudCIsDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgTlVMTCwgLyogR0NhbmNlbGxhYmxlKiAqLw0KKysgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGVycm9yKTsNCisrICBpZiAocHJveHkgPT0gTlVMTCkNCisrICAgIHsN CisrICAgICAgZ19wcmVmaXhfZXJyb3IgKGVycm9yLCAiRmFpbGVkIHRvIGNvbnN0cnVjdCBwcm94 eSBmb3IgYWdlbnQ6ICIgKTsNCisrICAgICAgcmV0dXJuIE5VTEw7DQorKyAgICB9DQorIA0KKysg IGFnZW50ID0gZ19uZXcwIChBdXRoZW50aWNhdGlvbkFnZW50LCAxKTsNCisgICBhZ2VudC0+cmVm X2NvdW50ID0gMTsNCisgICBhZ2VudC0+c2NvcGUgPSBnX29iamVjdF9yZWYgKHNjb3BlKTsNCisg ICBhZ2VudC0+b2JqZWN0X3BhdGggPSBnX3N0cmR1cCAob2JqZWN0X3BhdGgpOw0KKyAgIGFnZW50 LT51bmlxdWVfc3lzdGVtX2J1c19uYW1lID0gZ19zdHJkdXAgKHVuaXF1ZV9zeXN0ZW1fYnVzX25h bWUpOw0KKyAgIGFnZW50LT5sb2NhbGUgPSBnX3N0cmR1cCAobG9jYWxlKTsNCisgICBhZ2VudC0+ cmVnaXN0cmF0aW9uX29wdGlvbnMgPSByZWdpc3RyYXRpb25fb3B0aW9ucyAhPSBOVUxMID8gZ192 YXJpYW50X3JlZiAocmVnaXN0cmF0aW9uX29wdGlvbnMpIDogTlVMTDsNCistDQorLSAgZXJyb3Ig PSBOVUxMOw0KKy0gIGFnZW50LT5wcm94eSA9IGdfZGJ1c19wcm94eV9uZXdfZm9yX2J1c19zeW5j IChHX0JVU19UWVBFX1NZU1RFTSwNCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgR19EQlVTX1BST1hZX0ZMQUdTX0RPX05PVF9MT0FEX1BST1BFUlRJRVMg fA0KKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHX0RC VVNfUFJPWFlfRkxBR1NfRE9fTk9UX0NPTk5FQ1RfU0lHTkFMUywNCistICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogR0RCdXNJbnRlcmZhY2VJ bmZvKiAqLw0KKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBhZ2VudC0+dW5pcXVlX3N5c3RlbV9idXNfbmFtZSwNCistICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgYWdlbnQtPm9iamVjdF9wYXRoLA0KKy0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3JnLmZyZWVkZXNrdG9w LlBvbGljeUtpdDEuQXV0aGVudGljYXRpb25BZ2VudCIsDQorLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIEdDYW5jZWxsYWJsZSogKi8NCist ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmVycm9yKTsN CistICBpZiAoYWdlbnQtPnByb3h5ID09IE5VTEwpDQorLSAgICB7DQorLSAgICAgIGdfd2Fybmlu ZyAoIkVycm9yIGNvbnN0cnVjdGluZyBwcm94eSBmb3IgYWdlbnQ6ICVzIiwgZXJyb3ItPm1lc3Nh Z2UpOw0KKy0gICAgICBnX2Vycm9yX2ZyZWUgKGVycm9yKTsNCistICAgICAgLyogVE9ETzogTWFr ZSBhdXRoZW50aWNhdGlvbl9hZ2VudF9uZXcoKSByZXR1cm4gTlVMTCBhbmQgc2V0IGEgR0Vycm9y ICovDQorLSAgICB9DQorKyAgYWdlbnQtPnByb3h5ID0gcHJveHk7DQorIA0KKyAgIHJldHVybiBh Z2VudDsNCisgfQ0KK0BAIC0yMjM0LDggKzIyNDAsNiBAQCBwb2xraXRfYmFja2VuZF9pbnRlcmFj dGl2ZV9hdXRob3JpdHlfcmVnaXN0ZXJfYXV0aGVudGljYXRpb25fYWdlbnQgKFBvbGtpdEJhY2tl bg0KKyAgIGNhbGxlcl9jbWRsaW5lID0gTlVMTDsNCisgICBhZ2VudCA9IE5VTEw7DQorIA0KKy0g IC8qIFRPRE86IHZhbGlkYXRlIHRoYXQgb2JqZWN0IHBhdGggaXMgd2VsbC1mb3JtZWQgKi8NCist DQorICAgaW50ZXJhY3RpdmVfYXV0aG9yaXR5ID0gUE9MS0lUX0JBQ0tFTkRfSU5URVJBQ1RJVkVf QVVUSE9SSVRZIChhdXRob3JpdHkpOw0KKyAgIHByaXYgPSBQT0xLSVRfQkFDS0VORF9JTlRFUkFD VElWRV9BVVRIT1JJVFlfR0VUX1BSSVZBVEUgKGludGVyYWN0aXZlX2F1dGhvcml0eSk7DQorIA0K K0BAIC0yMzIyLDcgKzIzMjYsMTAgQEAgcG9sa2l0X2JhY2tlbmRfaW50ZXJhY3RpdmVfYXV0aG9y aXR5X3JlZ2lzdGVyX2F1dGhlbnRpY2F0aW9uX2FnZW50IChQb2xraXRCYWNrZW4NCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9sa2l0X3N5c3RlbV9idXNfbmFtZV9nZXRf bmFtZSAoUE9MS0lUX1NZU1RFTV9CVVNfTkFNRSAoY2FsbGVyKSksDQorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGxvY2FsZSwNCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgb2JqZWN0X3BhdGgsDQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIG9wdGlvbnMpOw0KKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBv cHRpb25zLA0KKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcik7DQor KyAgaWYgKCFhZ2VudCkNCisrICAgIGdvdG8gb3V0Ow0KKyANCisgICBnX2hhc2hfdGFibGVfaW5z ZXJ0IChwcml2LT5oYXNoX3Njb3BlX3RvX2F1dGhlbnRpY2F0aW9uX2FnZW50LA0KKyAgICAgICAg ICAgICAgICAgICAgICAgIGdfb2JqZWN0X3JlZiAoc3ViamVjdCksDQpkaWZmIC0tZ2l0IGEvcGF0 Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvMDNfUG9sa2l0QWdlbnRTZXNzaW9uLWZpeC1yYWNlLWJl dHdlZW4tY2hpbGQtYW5kLWlvLXdhdC5wYXRjaCBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEz LzAzX1BvbGtpdEFnZW50U2Vzc2lvbi1maXgtcmFjZS1iZXR3ZWVuLWNoaWxkLWFuZC1pby13YXQu cGF0Y2gNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAuLjk1NjA5OWI2ZA0K LS0tIC9kZXYvbnVsbA0KKysrIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvMDNfUG9sa2l0 QWdlbnRTZXNzaW9uLWZpeC1yYWNlLWJldHdlZW4tY2hpbGQtYW5kLWlvLXdhdC5wYXRjaA0KQEAg LTAsMCArMSwxMjAgQEANCitGcm9tOiBSdWkgTWF0b3MgPHRpYWdvbWF0b3NAZ21haWwuY29tPg0K K0RhdGU6IFRodSwgNiBGZWIgMjAxNCAxODo0MToxOCArMDEwMA0KK1N1YmplY3Q6IFBvbGtpdEFn ZW50U2Vzc2lvbjogZml4IHJhY2UgYmV0d2VlbiBjaGlsZCBhbmQgaW8gd2F0Y2hlcw0KKw0KK1Ro ZSBoZWxwZXIgZmx1c2hlcyBhbmQgZmRhdGFzeW5jcyBzdGRvdXQgYW5kIHN0ZGVyciBiZWZvcmUg dGVybWluYXRpbmcNCitidXQgdGhpcyBkb2Vzbid0IGd1YXJhbnRlZSB0aGF0IG91ciBpbyB3YXRj aCBpcyBjYWxsZWQgYmVmb3JlIG91cg0KK2NoaWxkIHdhdGNoLiBUaGlzIG1lYW5zIHRoYXQgd2Ug Y2FuIGVuZCB1cCB3aXRoIGEgc3VjY2Vzc2Z1bCByZXR1cm4NCitmcm9tIHRoZSBoZWxwZXIgd2hp Y2ggd2Ugc3RpbGwgcmVwb3J0IGFzIGEgZmFpbHVyZS4NCisNCitJZiB3ZSBhZGQgR19JT19IVVAg YW5kIEdfSU9fRVJSIHRvIHRoZSBjb25kaXRpb25zIHdlIGxvb2sgZm9yIGluIHRoZQ0KK2lvIHdh dGNoIGFuZCB0aGUgY2hpbGQgdGVybWluYXRlcyB3ZSBzdGlsbCBydW4gdGhlIGlvIHdhdGNoIGhh bmRsZXINCit3aGljaCB3aWxsIGNvbXBsZXRlIHRoZSBzZXNzaW9uLg0KKw0KK1RoaXMgbWVhbnMg dGhhdCB0aGUgY2hpbGQgd2F0Y2ggaXMgaW4gZmFjdCBuZWVkbGVzcyBhbmQgd2UgY2FuIHJlbW92 ZQ0KK2l0Lg0KKw0KK0J1ZzogaHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9zaG93X2J1Zy5j Z2k/aWQ9NjA4NDcNCitPcmlnaW46IHVwc3RyZWFtLCAwLjExMywgY29tbWl0Ojc2NTBhZDFlMDhh YjEzYmRiNDYxNzgzYzQ5OTVkMTg2ZDkzOTI4NDANCitCdWc6IGh0dHA6Ly9idWdzLmZyZWVkZXNr dG9wLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzA1MTUNCitCdWctVWJ1bnR1OiBodHRwczovL2xhdW5j aHBhZC5uZXQvYnVncy82NDk5MzkNCitCdWctVWJ1bnR1OiBodHRwczovL2xhdW5jaHBhZC5uZXQv YnVncy80NDUzMDMNCistLS0NCisgc3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50c2Vzc2lvbi5j IHwgNDcgKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQorIDEgZmlsZSBjaGFu Z2VkLCAxMSBpbnNlcnRpb25zKCspLCAzNiBkZWxldGlvbnMoLSkNCisNCitkaWZmIC0tZ2l0IGEv c3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50c2Vzc2lvbi5jIGIvc3JjL3BvbGtpdGFnZW50L3Bv bGtpdGFnZW50c2Vzc2lvbi5jDQoraW5kZXggODEyOWNkOS4uYTY1OGEyMiAxMDA2NDQNCistLS0g YS9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRzZXNzaW9uLmMNCisrKysgYi9zcmMvcG9sa2l0 YWdlbnQvcG9sa2l0YWdlbnRzZXNzaW9uLmMNCitAQCAtOTIsNyArOTIsNiBAQCBzdHJ1Y3QgX1Bv bGtpdEFnZW50U2Vzc2lvbg0KKyAgIGludCBjaGlsZF9zdGRvdXQ7DQorICAgR1BpZCBjaGlsZF9w aWQ7DQorIA0KKy0gIEdTb3VyY2UgKmNoaWxkX3dhdGNoX3NvdXJjZTsNCisgICBHU291cmNlICpj aGlsZF9zdGRvdXRfd2F0Y2hfc291cmNlOw0KKyAgIEdJT0NoYW5uZWwgKmNoaWxkX3N0ZG91dF9j aGFubmVsOw0KKyANCitAQCAtMzc3LDEzICszNzYsNiBAQCBraWxsX2hlbHBlciAoUG9sa2l0QWdl bnRTZXNzaW9uICpzZXNzaW9uKQ0KKyAgICAgICBzZXNzaW9uLT5jaGlsZF9waWQgPSAwOw0KKyAg ICAgfQ0KKyANCistICBpZiAoc2Vzc2lvbi0+Y2hpbGRfd2F0Y2hfc291cmNlICE9IE5VTEwpDQor LSAgICB7DQorLSAgICAgIGdfc291cmNlX2Rlc3Ryb3kgKHNlc3Npb24tPmNoaWxkX3dhdGNoX3Nv dXJjZSk7DQorLSAgICAgIGdfc291cmNlX3VucmVmIChzZXNzaW9uLT5jaGlsZF93YXRjaF9zb3Vy Y2UpOw0KKy0gICAgICBzZXNzaW9uLT5jaGlsZF93YXRjaF9zb3VyY2UgPSBOVUxMOw0KKy0gICAg fQ0KKy0NCisgICBpZiAoc2Vzc2lvbi0+Y2hpbGRfc3Rkb3V0X3dhdGNoX3NvdXJjZSAhPSBOVUxM KQ0KKyAgICAgew0KKyAgICAgICBnX3NvdXJjZV9kZXN0cm95IChzZXNzaW9uLT5jaGlsZF9zdGRv dXRfd2F0Y2hfc291cmNlKTsNCitAQCAtNDI5LDI2ICs0MjEsNiBAQCBjb21wbGV0ZV9zZXNzaW9u IChQb2xraXRBZ2VudFNlc3Npb24gKnNlc3Npb24sDQorICAgICB9DQorIH0NCisgDQorLXN0YXRp YyB2b2lkDQorLWNoaWxkX3dhdGNoX2Z1bmMgKEdQaWQgICAgIHBpZCwNCistICAgICAgICAgICAg ICAgICAgZ2ludCAgICAgc3RhdHVzLA0KKy0gICAgICAgICAgICAgICAgICBncG9pbnRlciB1c2Vy X2RhdGEpDQorLXsNCistICBQb2xraXRBZ2VudFNlc3Npb24gKnNlc3Npb24gPSBQT0xLSVRfQUdF TlRfU0VTU0lPTiAodXNlcl9kYXRhKTsNCistDQorLSAgaWYgKEdfVU5MSUtFTFkgKF9zaG93X2Rl YnVnICgpKSkNCistICAgIHsNCistICAgICAgZ19wcmludCAoIlBvbGtpdEFnZW50U2Vzc2lvbjog aW4gY2hpbGRfd2F0Y2hfZnVuYyBmb3IgcGlkICVkIChXSUZFWElURUQ9JWQgV0VYSVRTVEFUVVM9 JWQpXG4iLA0KKy0gICAgICAgICAgICAgICAoZ2ludCkgcGlkLA0KKy0gICAgICAgICAgICAgICBX SUZFWElURUQoc3RhdHVzKSwNCistICAgICAgICAgICAgICAgV0VYSVRTVEFUVVMoc3RhdHVzKSk7 DQorLSAgICB9DQorLQ0KKy0gIC8qIGtpbGwgYWxsIHRoZSB3YXRjaGVzIHdlIGhhdmUgc2V0IHVw LCBleGNlcHQgZm9yIHRoZSBjaGlsZCBzaW5jZSBpdCBoYXMgZXhpdGVkIGFscmVhZHkgKi8NCist ICBzZXNzaW9uLT5jaGlsZF9waWQgPSAwOw0KKy0gIGNvbXBsZXRlX3Nlc3Npb24gKHNlc3Npb24s IEZBTFNFKTsNCistfQ0KKy0NCisgc3RhdGljIGdib29sZWFuDQorIGlvX3dhdGNoX2hhdmVfZGF0 YSAoR0lPQ2hhbm5lbCAgICAqY2hhbm5lbCwNCisgICAgICAgICAgICAgICAgICAgICBHSU9Db25k aXRpb24gICBjb25kaXRpb24sDQorQEAgLTQ3NSwxMCArNDQ3LDEzIEBAIGlvX3dhdGNoX2hhdmVf ZGF0YSAoR0lPQ2hhbm5lbCAgICAqY2hhbm5lbCwNCisgICAgICAgICAgICAgICAgICAgICAgICAg ICBOVUxMLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsDQorICAgICAgICAgICAg ICAgICAgICAgICAgICAgJmVycm9yKTsNCistICBpZiAoZXJyb3IgIT0gTlVMTCkNCisrICBpZiAo ZXJyb3IgIT0gTlVMTCB8fCBsaW5lID09IE5VTEwpDQorICAgICB7DQorLSAgICAgIGdfd2Fybmlu ZyAoIkVycm9yIHJlYWRpbmcgbGluZSBmcm9tIGhlbHBlcjogJXMiLCBlcnJvci0+bWVzc2FnZSk7 DQorLSAgICAgIGdfZXJyb3JfZnJlZSAoZXJyb3IpOw0KKysgICAgICAvKiBJbiBjYXNlIHdlIGdl dCBqdXN0IEdfSU9fSFVQLCBsaW5lIGlzIE5VTEwgYnV0IGVycm9yIGlzDQorKyAgICAgICAgIHVu c2V0LiovDQorKyAgICAgIGdfd2FybmluZyAoIkVycm9yIHJlYWRpbmcgbGluZSBmcm9tIGhlbHBl cjogJXMiLA0KKysgICAgICAgICAgICAgICAgIGVycm9yID8gZXJyb3ItPm1lc3NhZ2UgOiAibm90 aGluZyB0byByZWFkIik7DQorKyAgICAgIGdfY2xlYXJfZXJyb3IgKCZlcnJvcik7DQorIA0KKyAg ICAgICBjb21wbGV0ZV9zZXNzaW9uIChzZXNzaW9uLCBGQUxTRSk7DQorICAgICAgIGdvdG8gb3V0 Ow0KK0BAIC01NDAsNiArNTE1LDkgQEAgaW9fd2F0Y2hfaGF2ZV9kYXRhIChHSU9DaGFubmVsICAg ICpjaGFubmVsLA0KKyAgIGdfZnJlZSAobGluZSk7DQorICAgZ19mcmVlICh1bmVzY2FwZWQpOw0K KyANCisrICBpZiAoY29uZGl0aW9uICYgKEdfSU9fRVJSIHwgR19JT19IVVApKQ0KKysgICAgY29t cGxldGVfc2Vzc2lvbiAoc2Vzc2lvbiwgRkFMU0UpOw0KKysNCisgICAvKiBrZWVwIHRoZSBJT0No YW5uZWwgYXJvdW5kICovDQorICAgcmV0dXJuIFRSVUU7DQorIH0NCitAQCAtNjUwLDEyICs2Mjgs OSBAQCBwb2xraXRfYWdlbnRfc2Vzc2lvbl9pbml0aWF0ZSAoUG9sa2l0QWdlbnRTZXNzaW9uICpz ZXNzaW9uKQ0KKyAgIGlmIChHX1VOTElLRUxZIChfc2hvd19kZWJ1ZyAoKSkpDQorICAgICBnX3By aW50ICgiUG9sa2l0QWdlbnRTZXNzaW9uOiBzcGF3bmVkIGhlbHBlciB3aXRoIHBpZCAlZFxuIiwg KGdpbnQpIHNlc3Npb24tPmNoaWxkX3BpZCk7DQorIA0KKy0gIHNlc3Npb24tPmNoaWxkX3dhdGNo X3NvdXJjZSA9IGdfY2hpbGRfd2F0Y2hfc291cmNlX25ldyAoc2Vzc2lvbi0+Y2hpbGRfcGlkKTsN CistICBnX3NvdXJjZV9zZXRfY2FsbGJhY2sgKHNlc3Npb24tPmNoaWxkX3dhdGNoX3NvdXJjZSwg KEdTb3VyY2VGdW5jKSBjaGlsZF93YXRjaF9mdW5jLCBzZXNzaW9uLCBOVUxMKTsNCistICBnX3Nv dXJjZV9hdHRhY2ggKHNlc3Npb24tPmNoaWxkX3dhdGNoX3NvdXJjZSwgZ19tYWluX2NvbnRleHRf Z2V0X3RocmVhZF9kZWZhdWx0ICgpKTsNCistDQorICAgc2Vzc2lvbi0+Y2hpbGRfc3Rkb3V0X2No YW5uZWwgPSBnX2lvX2NoYW5uZWxfdW5peF9uZXcgKHNlc3Npb24tPmNoaWxkX3N0ZG91dCk7DQor LSAgc2Vzc2lvbi0+Y2hpbGRfc3Rkb3V0X3dhdGNoX3NvdXJjZSA9IGdfaW9fY3JlYXRlX3dhdGNo IChzZXNzaW9uLT5jaGlsZF9zdGRvdXRfY2hhbm5lbCwgR19JT19JTik7DQorKyAgc2Vzc2lvbi0+ Y2hpbGRfc3Rkb3V0X3dhdGNoX3NvdXJjZSA9IGdfaW9fY3JlYXRlX3dhdGNoIChzZXNzaW9uLT5j aGlsZF9zdGRvdXRfY2hhbm5lbCwNCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIEdfSU9fSU4gfCBHX0lPX0VSUiB8IEdfSU9fSFVQKTsN CisgICBnX3NvdXJjZV9zZXRfY2FsbGJhY2sgKHNlc3Npb24tPmNoaWxkX3N0ZG91dF93YXRjaF9z b3VyY2UsIChHU291cmNlRnVuYykgaW9fd2F0Y2hfaGF2ZV9kYXRhLCBzZXNzaW9uLCBOVUxMKTsN CisgICBnX3NvdXJjZV9hdHRhY2ggKHNlc3Npb24tPmNoaWxkX3N0ZG91dF93YXRjaF9zb3VyY2Us IGdfbWFpbl9jb250ZXh0X2dldF90aHJlYWRfZGVmYXVsdCAoKSk7DQorIA0KZGlmZiAtLWdpdCBh L3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL0NWRS0yMDE1LTMyNTUtRml4LUdIYXNoVGFibGUt dXNhZ2UucGF0Y2ggYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9DVkUtMjAxNS0zMjU1LUZp eC1HSGFzaFRhYmxlLXVzYWdlLnBhdGNoDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAw MDAwMDAwLi5mMjBmYWIyZjkNCi0tLSAvZGV2L251bGwNCisrKyBiL3BhdGNoZXMvcG9sa2l0LTAu MTA1LzAuMTEzL0NWRS0yMDE1LTMyNTUtRml4LUdIYXNoVGFibGUtdXNhZ2UucGF0Y2gNCkBAIC0w LDAgKzEsNjggQEANCitGcm9tOiA9P3V0Zi04P3E/TWlsb3NsYXZfVHJtYT1DND04RD89IDxtaXRy QHJlZGhhdC5jb20+DQorRGF0ZTogV2VkLCAxIEFwciAyMDE1IDA1OjIyOjM3ICswMjAwDQorU3Vi amVjdDogQ1ZFLTIwMTUtMzI1NSBGaXggR0hhc2hUYWJsZSB1c2FnZS4NCisNCitEb24ndCBhc3N1 bWUgdGhhdCB0aGUgaGFzaCB0YWJsZSB3aXRoIGZyZWUgYm90aCB0aGUga2V5IGFuZCB0aGUgdmFs dWUNCithdCB0aGUgc2FtZSB0aW1lLCBzdXBwbHkgcHJvcGVyIGRlYWxsb2NhdGlvbiBmdW5jdGlv bnMgZm9yIHRoZSBrZXkNCithbmQgdmFsdWUgc2VwYXJhdGVseS4NCisNCitUaGVuIGRyb3AgUGFy c2VkQWN0aW9uOjphY3Rpb25faWQgd2hpY2ggaXMgbm8gbG9uZ2VyIHVzZWQgZm9yIGFueXRoaW5n Lg0KKw0KK2h0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTY5NTAx DQorYW5kDQoraHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODM1 OTANCisNCitDVkU6IENWRS0yMDE1LTMyNTUNCitPcmlnaW46IHVwc3RyZWFtLCAwLjExMywgY29t bWl0OjlmNWUwYzczMTc4NDAwM2JkNGQ2ZmM3NWFiNzM5ZmY4YjJlYTI2OWYNCitCdWctRGViaWFu OiBodHRwczovL2J1Z3MuZGViaWFuLm9yZy83OTYxMzQNCistLS0NCisgc3JjL3BvbGtpdGJhY2tl bmQvcG9sa2l0YmFja2VuZGFjdGlvbnBvb2wuYyB8IDggKysrLS0tLS0NCisgMSBmaWxlIGNoYW5n ZWQsIDMgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkNCisNCitkaWZmIC0tZ2l0IGEvc3Jj L3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGFjdGlvbnBvb2wuYyBiL3NyYy9wb2xraXRiYWNr ZW5kL3BvbGtpdGJhY2tlbmRhY3Rpb25wb29sLmMNCitpbmRleCBlM2VkMzhkLi40MjcwZDRlIDEw MDY0NA0KKy0tLSBhL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRhY3Rpb25wb29sLmMN CisrKysgYi9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kYWN0aW9ucG9vbC5jDQorQEAg LTQwLDcgKzQwLDYgQEANCisgDQorIHR5cGVkZWYgc3RydWN0DQorIHsNCistICBnY2hhciAqYWN0 aW9uX2lkOw0KKyAgIGdjaGFyICp2ZW5kb3JfbmFtZTsNCisgICBnY2hhciAqdmVuZG9yX3VybDsN CisgICBnY2hhciAqaWNvbl9uYW1lOw0KK0BAIC02Miw3ICs2MSw2IEBAIHR5cGVkZWYgc3RydWN0 DQorIHN0YXRpYyB2b2lkDQorIHBhcnNlZF9hY3Rpb25fZnJlZSAoUGFyc2VkQWN0aW9uICphY3Rp b24pDQorIHsNCistICBnX2ZyZWUgKGFjdGlvbi0+YWN0aW9uX2lkKTsNCisgICBnX2ZyZWUgKGFj dGlvbi0+dmVuZG9yX25hbWUpOw0KKyAgIGdfZnJlZSAoYWN0aW9uLT52ZW5kb3JfdXJsKTsNCisg ICBnX2ZyZWUgKGFjdGlvbi0+aWNvbl9uYW1lKTsNCitAQCAtMTM0LDcgKzEzMiw3IEBAIHBvbGtp dF9iYWNrZW5kX2FjdGlvbl9wb29sX2luaXQgKFBvbGtpdEJhY2tlbmRBY3Rpb25Qb29sICpwb29s KQ0KKyANCisgICBwcml2LT5wYXJzZWRfYWN0aW9ucyA9IGdfaGFzaF90YWJsZV9uZXdfZnVsbCAo Z19zdHJfaGFzaCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgZ19zdHJfZXF1YWwsDQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIE5VTEwsDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGdfZnJlZSwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgKEdEZXN0cm95Tm90aWZ5KSBwYXJzZWRfYWN0aW9uX2ZyZWUpOw0KKyAN CisgICBwcml2LT5wYXJzZWRfZmlsZXMgPSBnX2hhc2hfdGFibGVfbmV3X2Z1bGwgKGdfc3RyX2hh c2gsDQorQEAgLTk4OCw3ICs5ODYsNiBAQCBfZW5kICh2b2lkICpkYXRhLCBjb25zdCBjaGFyICpl bCkNCisgICAgICAgICAgIGljb25fbmFtZSA9IHBkLT5nbG9iYWxfaWNvbl9uYW1lOw0KKyANCisg ICAgICAgICBhY3Rpb24gPSBnX25ldzAgKFBhcnNlZEFjdGlvbiwgMSk7DQorLSAgICAgICAgYWN0 aW9uLT5hY3Rpb25faWQgPSBnX3N0cmR1cCAocGQtPmFjdGlvbl9pZCk7DQorICAgICAgICAgYWN0 aW9uLT52ZW5kb3JfbmFtZSA9IGdfc3RyZHVwICh2ZW5kb3IpOw0KKyAgICAgICAgIGFjdGlvbi0+ dmVuZG9yX3VybCA9IGdfc3RyZHVwICh2ZW5kb3JfdXJsKTsNCisgICAgICAgICBhY3Rpb24tPmlj b25fbmFtZSA9IGdfc3RyZHVwIChpY29uX25hbWUpOw0KK0BAIC0xMDAzLDcgKzEwMDAsOCBAQCBf ZW5kICh2b2lkICpkYXRhLCBjb25zdCBjaGFyICplbCkNCisgICAgICAgICBhY3Rpb24tPmltcGxp Y2l0X2F1dGhvcml6YXRpb25faW5hY3RpdmUgPSBwZC0+aW1wbGljaXRfYXV0aG9yaXphdGlvbl9p bmFjdGl2ZTsNCisgICAgICAgICBhY3Rpb24tPmltcGxpY2l0X2F1dGhvcml6YXRpb25fYWN0aXZl ID0gcGQtPmltcGxpY2l0X2F1dGhvcml6YXRpb25fYWN0aXZlOw0KKyANCistICAgICAgICBnX2hh c2hfdGFibGVfaW5zZXJ0IChwcml2LT5wYXJzZWRfYWN0aW9ucywgYWN0aW9uLT5hY3Rpb25faWQs IGFjdGlvbik7DQorKyAgICAgICAgZ19oYXNoX3RhYmxlX2luc2VydCAocHJpdi0+cGFyc2VkX2Fj dGlvbnMsIGdfc3RyZHVwIChwZC0+YWN0aW9uX2lkKSwNCisrICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBhY3Rpb24pOw0KKyANCisgICAgICAgICAvKiB3ZSBzdGVhbCB0aGVzZSBoYXNoIHRh YmxlcyAqLw0KKyAgICAgICAgIHBkLT5hbm5vdGF0aW9ucyA9IE5VTEw7DQpkaWZmIC0tZ2l0IGEv cGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvQ1ZFLTIwMTUtNDYyNS1CaW5kLXVzZS1vZi1jb29r aWVzLXRvLXNwZWNpZmljLXVpZHMucGF0Y2ggYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9D VkUtMjAxNS00NjI1LUJpbmQtdXNlLW9mLWNvb2tpZXMtdG8tc3BlY2lmaWMtdWlkcy5wYXRjaA0K bmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMC4uOGI1ODRhNzY0DQotLS0gL2Rl di9udWxsDQorKysgYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9DVkUtMjAxNS00NjI1LUJp bmQtdXNlLW9mLWNvb2tpZXMtdG8tc3BlY2lmaWMtdWlkcy5wYXRjaA0KQEAgLTAsMCArMSw0ODQg QEANCitGcm9tOiBDb2xpbiBXYWx0ZXJzIDx3YWx0ZXJzQHJlZGhhdC5jb20+DQorRGF0ZTogV2Vk LCAxNyBKdW4gMjAxNSAxMzowNzowMiAtMDQwMA0KK1N1YmplY3Q6IENWRS0yMDE1LTQ2MjU6IEJp bmQgdXNlIG9mIGNvb2tpZXMgdG8gc3BlY2lmaWMgdWlkcw0KK01JTUUtVmVyc2lvbjogMS4wDQor Q29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PSJ1dGYtOCINCitDb250ZW50LVRyYW5z ZmVyLUVuY29kaW5nOiA4Yml0DQorDQoraHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9hcmNo aXZlcy9wb2xraXQtZGV2ZWwvMjAxNS1KdW5lLzAwMDQyNS5odG1sDQorDQorVGhlICJjb29raWUi IHZhbHVlIHRoYXQgUG9sa2l0IGhhbmRzIG91dCBpcyBnbG9iYWwgdG8gYWxsIHBvbGtpdA0KK3Vz ZXJzLiAgQW5kIHdoZW4gYEF1dGhlbnRpY2F0aW9uQWdlbnRSZXNwb25zZWAgaXMgaW52b2tlZCwg d2UNCitwcmV2aW91c2x5IG9ubHkgcmVjZWl2ZWQgdGhlIGNvb2tpZSBhbmQgKnRhcmdldCogaWRl bnRpdHksIGFuZA0KK2F0dGVtcHRlZCB0byBmaW5kIGFuIGFnZW50IGZyb20gdGhhdC4NCisNCitU aGUgcHJvYmxlbSBpcyB0aGF0IHRoZSBjdXJyZW50IGNvb2tpZSBpcyBqdXN0IGFuIGludGVnZXIN Citjb3VudGVyLCBhbmQgaWYgaXQgb3ZlcmZsb3dlZCwgaXQgd291bGQgYmUgcG9zc2libGUgZm9y DQorYW4gc3VjY2Vzc2Z1bCBhdXRob3JpemF0aW9uIGluIG9uZSBzZXNzaW9uIHRvIHRyaWdnZXIg YSByZXNwb25zZQ0KK2luIGFub3RoZXIgc2Vzc2lvbi4NCisNCitUaGUgb3ZlcmZsb3cgYW5kIGFi aWxpdHkgdG8gZ3Vlc3MgdGhlIGNvb2tpZSB3ZXJlIGZpeGVkIGJ5IHRoZQ0KK3ByZXZpb3VzIHBh dGNoLg0KKw0KK1RoaXMgcGF0Y2ggaXMgY29uY2VwdHVhbGx5IGZ1cnRoZXIgaGFyZGVuaW5nIG9u IHRvcCBvZiB0aGF0LiAgUG9sa2l0DQorY3VycmVudGx5IHRyZWF0cyB1aWRzIGFzIGVxdWl2YWxl bnQgZnJvbSBhIHNlY3VyaXR5IGRvbWFpbg0KK3BlcnNwZWN0aXZlOyB0aGVyZSBpcyBubyBzdXBw b3J0IGZvcg0KK1NFTGludXgvQXBwQXJtb3IvZXRjLiBkaWZmZXJlbnRpYXRpb24uDQorDQorV2Ug Y2FuIHJldHJpZXZlIHRoZSB1aWQgZnJvbSBgZ2V0dWlkKClgIGluIHRoZSBzZXR1aWQgaGVscGVy LCB3aGljaA0KK2FsbG93cyB1cyB0byBlbnN1cmUgdGhlIHVpZCBpbnZva2luZyBgQXV0aGVudGlj YXRpb25BZ2VudFJlc3BvbnNlMmANCittYXRjaGVzIHRoYXQgb2YgdGhlIGFnZW50Lg0KKw0KK1Ro ZW4gdGhlIGF1dGhvcml0eSBvbmx5IGxvb2tzIGF0IGF1dGhlbnRpY2F0aW9uIHNlc3Npb25zIG1h dGNoaW5nIHRoZQ0KK2Nvb2tpZSB0aGF0IHdlcmUgY3JlYXRlZCBieSBhIG1hdGNoaW5nIHVpZCwg dGh1cyByZW1vdmluZyB0aGUgYWJpbGl0eQ0KK2ZvciBkaWZmZXJlbnQgdWlkcyB0byBpbnRlcmZl cmUgd2l0aCBlYWNoIG90aGVyIGVudGlyZWx5Lg0KKw0KK1NldmVyYWwgZml4ZXMgdG8gdGhpcyBw YXRjaCB3ZXJlIGNvbnRyaWJ1dGVkIGJ5Og0KK01pbG9zbGF2IFRybWHEjSA8bWl0ckByZWRoYXQu Y29tPg0KKw0KK0J1ZzogaHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9zaG93X2J1Zy5jZ2k/ aWQ9OTA4MzcNCitDVkU6IENWRS0yMDE1LTQ2MjUNCitSZXBvcnRlZC1ieTogVGF2aXMgT3JtYW5k eSA8dGF2aXNvQGdvb2dsZS5jb20+DQorUmV2aWV3ZWQtYnk6IE1pbG9zbGF2IFRybWHEjSA8bWl0 ckByZWRoYXQuY29tPg0KK1NpZ25lZC1vZmYtYnk6IENvbGluIFdhbHRlcnMgPHdhbHRlcnNAcmVk aGF0LmNvbT4NCitPcmlnaW46IHVwc3RyZWFtLCAwLjExMywgY29tbWl0OjQ5M2FhNWRjMWQyNzhh YjkwOTcxMTBjMTI2MmY1MjI5YmJhZjE3NjYNCitCdWctRGViaWFuOiBodHRwczovL2J1Z3MuZGVi aWFuLm9yZy83OTYxMzQNCistLS0NCisgLi4uLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aGVu dGljYXRpb25BZ2VudC54bWwgfCAxNCArKysrLQ0KKyBkYXRhL29yZy5mcmVlZGVza3RvcC5Qb2xp Y3lLaXQxLkF1dGhvcml0eS54bWwgICAgICB8IDI0ICsrKysrKysrLQ0KKyAuLi5lcmZhY2Utb3Jn LmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aG9yaXR5LnhtbCB8IDQ2ICsrKysrKysrKysrKysr Ky0NCisgZG9jcy9wb2xraXQvb3ZlcnZpZXcueG1sICAgICAgICAgICAgICAgICAgICAgICAgICAg fCAxOCArKysrLS0tDQorIHNyYy9wb2xraXQvcG9sa2l0YXV0aG9yaXR5LmMgICAgICAgICAgICAg ICAgICAgICAgIHwgMTMgKysrKy0NCisgc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGF1 dGhvcml0eS5jICAgICAgICAgfCA2MSArKysrKysrKysrKysrKysrKysrKystDQorIHNyYy9wb2xr aXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRhdXRob3JpdHkuaCAgICAgICAgIHwgIDIgKw0KKyAuLi4v cG9sa2l0YmFja2VuZGludGVyYWN0aXZlYXV0aG9yaXR5LmMgICAgICAgICAgICB8IDM5ICsrKysr KysrKysrKy0tDQorIDggZmlsZXMgY2hhbmdlZCwgMTk4IGluc2VydGlvbnMoKyksIDE5IGRlbGV0 aW9ucygtKQ0KKw0KK2RpZmYgLS1naXQgYS9kYXRhL29yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQx LkF1dGhlbnRpY2F0aW9uQWdlbnQueG1sIGIvZGF0YS9vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0 MS5BdXRoZW50aWNhdGlvbkFnZW50LnhtbA0KK2luZGV4IDNiNTE5YzIuLjViZWVmN2QgMTAwNjQ0 DQorLS0tIGEvZGF0YS9vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRoZW50aWNhdGlvbkFn ZW50LnhtbA0KKysrKyBiL2RhdGEvb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aGVudGlj YXRpb25BZ2VudC54bWwNCitAQCAtOCw3ICs4LDE5IEBADQorICAgICA8YW5ub3RhdGlvbiBuYW1l PSJvcmcuZ3RrLkVnZ0RCdXMuRG9jU3RyaW5nIiB2YWx1ZT0iPHBhcmE+VGhpcyBELUJ1cyBpbnRl cmZhY2UgaXMgdXNlZCBmb3IgY29tbXVuaWNhdGlvbiBiZXR3ZWVuIHRoZSBzeXN0ZW0td2lkZSBQ b2xpY3lLaXQgZGFlbW9uIGFuZCBvbmUgb3IgbW9yZSBhdXRoZW50aWNhdGlvbiBhZ2VudHMgZWFj aCBydW5uaW5nIGluIGEgdXNlciBzZXNzaW9uLjwvcGFyYT48cGFyYT5BbiBhdXRoZW50aWNhdGlv biBhZ2VudCBtdXN0IGltcGxlbWVudCB0aGlzIGludGVyZmFjZSBhbmQgcmVnaXN0ZXIgKHBhc3Np bmcgdGhlIG9iamVjdCBwYXRoIG9mIHRoZSBvYmplY3QgaW1wbGVtZW50aW5nIHRoZSBpbnRlcmZh Y2UpIHVzaW5nIHRoZSBvcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHkuUmVnaXN0 ZXJBdXRoZW50aWNhdGlvbkFnZW50KCkgYW5kIG9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1 dGhvcml0eS5VbnJlZ2lzdGVyQXV0aGVudGljYXRpb25BZ2VudCgpIG1ldGhvZHMgb24gdGhlICNv cmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHkgaW50ZXJmYWNlIG9mIHRoZSBQb2xp Y3lLaXQgZGFlbW9uLjwvcGFyYT4iLz4NCisgDQorICAgICA8bWV0aG9kIG5hbWU9IkJlZ2luQXV0 aGVudGljYXRpb24iPg0KKy0gICAgICA8YW5ub3RhdGlvbiBuYW1lPSJvcmcuZ3RrLkVnZ0RCdXMu RG9jU3RyaW5nIiB2YWx1ZT0iPHBhcmE+Q2FsbGVkIGJ5IHRoZSBQb2xpY3lLaXQgZGFlbW9uIHdo ZW4gdGhlIGF1dGhlbnRpY2F0aW9uIGFnZW50IG5lZWRzIHRoZSB1c2VyIHRvIGF1dGhlbnRpY2F0 ZSBhcyBvbmUgb2YgdGhlIGlkZW50aXRpZXMgaW4gQGlkZW50aXRpZXMgZm9yIHRoZSBhY3Rpb24g d2l0aCB0aGUgaWRlbnRpZmllciBAYWN0aW9uX2lkLjwvcGFyYT48cGFyYT5VcG9uIHN1Y2Nlc2Z1 bCBhdXRoZW50aWNhdGlvbiwgdGhlIGF1dGhlbnRpY2F0aW9uIGFnZW50IG11c3QgaW52b2tlIHRo ZSBvcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHkuQXV0aGVudGljYXRpb25BZ2Vu dFJlc3BvbnNlKCkgbWV0aG9kIG9uIHRoZSAjb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0 aG9yaXR5IGludGVyZmFjZSBvZiB0aGUgUG9saWN5S2l0IGRhZW1vbiBiZWZvcmUgcmV0dXJuaW5n LjwvcGFyYT48cGFyYT5JZiB0aGUgdXNlciBkaXNtaXNzZXMgdGhlIGF1dGhlbnRpY2F0aW9uIGRp YWxvZywgdGhlIGF1dGhlbnRpY2F0aW9uIGFnZW50IHNob3VsZCByZXR1cm4gYW4gZXJyb3IuPC9w YXJhPiIvPg0KKysgICAgICA8YW5ub3RhdGlvbiBuYW1lPSJvcmcuZ3RrLkVnZ0RCdXMuRG9jU3Ry aW5nIiB2YWx1ZT0iPHBhcmE+Q2FsbGVkDQorKyAgICAgIGJ5IHRoZSBQb2xpY3lLaXQgZGFlbW9u IHdoZW4gdGhlIGF1dGhlbnRpY2F0aW9uIGFnZW50IG5lZWRzIHRoZQ0KKysgICAgICB1c2VyIHRv IGF1dGhlbnRpY2F0ZSBhcyBvbmUgb2YgdGhlIGlkZW50aXRpZXMgaW4gQGlkZW50aXRpZXMgZm9y DQorKyAgICAgIHRoZSBhY3Rpb24gd2l0aCB0aGUgaWRlbnRpZmllciBAYWN0aW9uX2lkLjwvcGFy YT48cGFyYT5UaGlzDQorKyAgICAgIGF1dGhlbnRpY2F0aW9uIGlzIG5vcm1hbGx5IGFjaGlldmVk IHZpYSB0aGUNCisrICAgICAgcG9sa2l0X2FnZW50X3Nlc3Npb25fcmVzcG9uc2UoKSBBUEksIHdo aWNoIGludm9rZXMgYSBwcml2YXRlDQorKyAgICAgIHNldHVpZCBoZWxwZXIgcHJvY2VzcyB0byB2 ZXJpZnkgdGhlIGF1dGhlbnRpY2F0aW9uLiAgV2hlbg0KKysgICAgICBzdWNjZXNzZnVsLCBpdCBj YWxscyB0aGUNCisrICAgICAgb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aG9yaXR5LkF1 dGhlbnRpY2F0aW9uQWdlbnRSZXNwb25zZTIoKQ0KKysgICAgICBtZXRob2Qgb24gdGhlICNvcmcu ZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHkgaW50ZXJmYWNlIG9mDQorKyAgICAgIHRo ZSBQb2xpY3lLaXQgZGFlbW9uIGJlZm9yZSByZXR1cm5pbmcuICBJZiB0aGUgdXNlciBkaXNtaXNz ZXMgdGhlDQorKyAgICAgIGF1dGhlbnRpY2F0aW9uIGRpYWxvZywgdGhlIGF1dGhlbnRpY2F0aW9u IGFnZW50IHNob3VsZCBjYWxsDQorKyAgICAgIHBvbGtpdF9hZ2VudF9zZXNzaW9uX2NhbmNlbCgp LjwvcGFyYT4iLz4NCisgDQorICAgICAgIDxhcmcgbmFtZT0iYWN0aW9uX2lkIiBkaXJlY3Rpb249 ImluIiB0eXBlPSJzIj4NCisgICAgICAgICA8YW5ub3RhdGlvbiBuYW1lPSJvcmcuZ3RrLkVnZ0RC dXMuRG9jU3RyaW5nIiB2YWx1ZT0iVGhlIGlkZW50aWZpZXIgZm9yIHRoZSBhY3Rpb24gdGhhdCB0 aGUgdXNlciBpcyBhdXRoZW50aWNhdGlvbiBmb3IuIi8+DQorZGlmZiAtLWdpdCBhL2RhdGEvb3Jn LmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aG9yaXR5LnhtbCBiL2RhdGEvb3JnLmZyZWVkZXNr dG9wLlBvbGljeUtpdDEuQXV0aG9yaXR5LnhtbA0KK2luZGV4IGZiZmI5Y2QuLmY5MDIxZWUgMTAw NjQ0DQorLS0tIGEvZGF0YS9vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHkueG1s DQorKysrIGIvZGF0YS9vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHkueG1sDQor QEAgLTMxMyw3ICszMTMsMjkgQEANCisgICAgIDwvbWV0aG9kPg0KKyANCisgICAgIDxtZXRob2Qg bmFtZT0iQXV0aGVudGljYXRpb25BZ2VudFJlc3BvbnNlIj4NCistICAgICAgPGFubm90YXRpb24g bmFtZT0ib3JnLmd0ay5FZ2dEQnVzLkRvY1N0cmluZyIgdmFsdWU9Ik1ldGhvZCBmb3IgYXV0aGVu dGljYXRpb24gYWdlbnRzIHRvIGludm9rZSBvbiBzdWNjZXNzZnVsIGF1dGhlbnRpY2F0aW9uLiBU aGlzIG1ldGhvZCB3aWxsIGZhaWwgdW5sZXNzIGEgc3VmZmljaWVudGx5IHByaXZpbGVnZWQgY2Fs bGVyIGludm9rZXMgaXQuIi8+DQorKyAgICAgIDxhbm5vdGF0aW9uIG5hbWU9Im9yZy5ndGsuRWdn REJ1cy5Eb2NTdHJpbmciIHZhbHVlPSJNZXRob2QgZm9yIGF1dGhlbnRpY2F0aW9uIGFnZW50cyB0 byBpbnZva2Ugb24gc3VjY2Vzc2Z1bA0KKythdXRoZW50aWNhdGlvbiwgaW50ZW5kZWQgb25seSBm b3IgdXNlIGJ5IGEgcHJpdmlsZWdlZCBoZWxwZXIgcHJvY2Vzcw0KKytpbnRlcm5hbCB0byBwb2xr aXQuIi8+DQorKw0KKysgICAgICA8YXJnIG5hbWU9ImNvb2tpZSIgZGlyZWN0aW9uPSJpbiIgdHlw ZT0icyI+DQorKyAgICAgICAgPGFubm90YXRpb24gbmFtZT0ib3JnLmd0ay5FZ2dEQnVzLkRvY1N0 cmluZyIgdmFsdWU9IlRoZSBjb29raWUgaWRlbnRpZnlpbmcgdGhlIGF1dGhlbnRpY2F0aW9uIHJl cXVlc3QgdGhhdCB3YXMgcGFzc2VkIHRvIHRoZSBhdXRoZW50aWNhdGlvbiBhZ2VudC4iLz4NCisr ICAgICAgPC9hcmc+DQorKw0KKysgICAgICA8YXJnIG5hbWU9ImlkZW50aXR5IiBkaXJlY3Rpb249 ImluIiB0eXBlPSIoc2F7c3Z9KSI+DQorKyAgICAgICAgPGFubm90YXRpb24gbmFtZT0ib3JnLmd0 ay5FZ2dEQnVzLlR5cGUiIHZhbHVlPSJJZGVudGl0eSIvPg0KKysgICAgICAgIDxhbm5vdGF0aW9u IG5hbWU9Im9yZy5ndGsuRWdnREJ1cy5Eb2NTdHJpbmciIHZhbHVlPSJBICNJZGVudGl0eSBzdHJ1 Y3QgZGVzY3JpYmluZyB3aGF0IGlkZW50aXR5IHdhcyBhdXRoZW50aWNhdGVkLiIvPg0KKysgICAg ICA8L2FyZz4NCisrICAgIDwvbWV0aG9kPg0KKysNCisrICAgIDxtZXRob2QgbmFtZT0iQXV0aGVu dGljYXRpb25BZ2VudFJlc3BvbnNlMiI+DQorKyAgICAgIDxhbm5vdGF0aW9uIG5hbWU9Im9yZy5n dGsuRWdnREJ1cy5Eb2NTdHJpbmciIHZhbHVlPSJNZXRob2QgZm9yIGF1dGhlbnRpY2F0aW9uIGFn ZW50cyB0byBpbnZva2Ugb24gc3VjY2Vzc2Z1bA0KKythdXRoZW50aWNhdGlvbiwgaW50ZW5kZWQg b25seSBmb3IgdXNlIGJ5IGEgcHJpdmlsZWdlZCBoZWxwZXIgcHJvY2Vzcw0KKytpbnRlcm5hbCB0 byBwb2xraXQuICAgTm90ZSB0aGlzIG1ldGhvZCB3YXMgYWRkZWQgaW4gMC4xMTQsIGFuZCBzaG91 bGQgYmUgcHJlZmVycmVkIG92ZXIgQXV0aGVudGljYXRpb25BZ2VudFJlc3BvbnNlDQorK2FzIGl0 IGZpeGVzIGEgc2VjdXJpdHkgaXNzdWUuIi8+DQorKw0KKysgICAgICA8YXJnIG5hbWU9InVpZCIg ZGlyZWN0aW9uPSJpbiIgdHlwZT0idSI+DQorKyAgICAgICAgPGFubm90YXRpb24gbmFtZT0ib3Jn Lmd0ay5FZ2dEQnVzLkRvY1N0cmluZyIgdmFsdWU9IlRoZSByZWFsIHVpZCBvZiB0aGUgYWdlbnQu ICBOb3JtYWxseSBzZXQgYnkgdGhlIHNldHVpZCBoZWxwZXIgcHJvZ3JhbS4iLz4NCisrICAgICAg PC9hcmc+DQorIA0KKyAgICAgICA8YXJnIG5hbWU9ImNvb2tpZSIgZGlyZWN0aW9uPSJpbiIgdHlw ZT0icyI+DQorICAgICAgICAgPGFubm90YXRpb24gbmFtZT0ib3JnLmd0ay5FZ2dEQnVzLkRvY1N0 cmluZyIgdmFsdWU9IlRoZSBjb29raWUgaWRlbnRpZnlpbmcgdGhlIGF1dGhlbnRpY2F0aW9uIHJl cXVlc3QgdGhhdCB3YXMgcGFzc2VkIHRvIHRoZSBhdXRoZW50aWNhdGlvbiBhZ2VudC4iLz4NCitk aWZmIC0tZ2l0IGEvZG9jcy9wb2xraXQvZG9jYm9vay1pbnRlcmZhY2Utb3JnLmZyZWVkZXNrdG9w LlBvbGljeUtpdDEuQXV0aG9yaXR5LnhtbCBiL2RvY3MvcG9sa2l0L2RvY2Jvb2staW50ZXJmYWNl LW9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhvcml0eS54bWwNCitpbmRleCA2NTI1ZTI1 Li5lNjZiZjUzIDEwMDY0NA0KKy0tLSBhL2RvY3MvcG9sa2l0L2RvY2Jvb2staW50ZXJmYWNlLW9y Zy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhvcml0eS54bWwNCisrKysgYi9kb2NzL3BvbGtp dC9kb2Nib29rLWludGVyZmFjZS1vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHku eG1sDQorQEAgLTQyLDYgKzQyLDggQEAgU3RydWN0dXJlICAgIDxsaW5rIGxpbmtlbmQ9ImVnZ2Ri dXMtc3RydWN0LVRlbXBvcmFyeUF1dGhvcml6YXRpb24iPlRlbXBvcmFyeUF1dGgNCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOICBTdHJpbmcgICAgICAgICAgICAgICAgICAg ICAgICAgb2JqZWN0X3BhdGgpDQorIDxsaW5rIGxpbmtlbmQ9ImVnZ2RidXMtbWV0aG9kLW9yZy5m cmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhvcml0eS5BdXRoZW50aWNhdGlvbkFnZW50UmVzcG9u c2UiPkF1dGhlbnRpY2F0aW9uQWdlbnRSZXNwb25zZTwvbGluaz4gICAgICAoSU4gIFN0cmluZyAg ICAgICAgICAgICAgICAgICAgICAgICBjb29raWUsDQorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBJTiAgPGxpbmsgbGlua2VuZD0iZWdnZGJ1cy1zdHJ1Y3QtSWRlbnRpdHkiPklk ZW50aXR5PC9saW5rPiAgICAgICAgICAgICAgICAgICAgICAgaWRlbnRpdHkpDQorKzxsaW5rIGxp bmtlbmQ9ImVnZ2RidXMtbWV0aG9kLW9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhvcml0 eS5BdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2UiPkF1dGhlbnRpY2F0aW9uQWdlbnRSZXNwb25z ZTI8L2xpbms+ICAgICAgKElOIHVpbnQzMiB1aWQsIElOICBTdHJpbmcgICAgICAgICAgICAgICAg ICAgICAgICAgY29va2llLA0KKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSU4g IDxsaW5rIGxpbmtlbmQ9ImVnZ2RidXMtc3RydWN0LUlkZW50aXR5Ij5JZGVudGl0eTwvbGluaz4g ICAgICAgICAgICAgICAgICAgICAgIGlkZW50aXR5KQ0KKyA8bGluayBsaW5rZW5kPSJlZ2dkYnVz LW1ldGhvZC1vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHkuRW51bWVyYXRlVGVt cG9yYXJ5QXV0aG9yaXphdGlvbnMiPkVudW1lcmF0ZVRlbXBvcmFyeUF1dGhvcml6YXRpb25zPC9s aW5rPiAoSU4gIDxsaW5rIGxpbmtlbmQ9ImVnZ2RidXMtc3RydWN0LVN1YmplY3QiPlN1YmplY3Q8 L2xpbms+ICAgICAgICAgICAgICAgICAgICAgICAgc3ViamVjdCwNCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIE9VVCBBcnJheSZsdDs8bGluayBsaW5rZW5kPSJlZ2dkYnVzLXN0 cnVjdC1UZW1wb3JhcnlBdXRob3JpemF0aW9uIj5UZW1wb3JhcnlBdXRob3JpemF0aW9uPC9saW5r PiZndDsgIHRlbXBvcmFyeV9hdXRob3JpemF0aW9ucykNCisgPGxpbmsgbGlua2VuZD0iZWdnZGJ1 cy1tZXRob2Qtb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aG9yaXR5LlJldm9rZVRlbXBv cmFyeUF1dGhvcml6YXRpb25zIj5SZXZva2VUZW1wb3JhcnlBdXRob3JpemF0aW9uczwvbGluaz4g ICAgKElOICA8bGluayBsaW5rZW5kPSJlZ2dkYnVzLXN0cnVjdC1TdWJqZWN0Ij5TdWJqZWN0PC9s aW5rPiAgICAgICAgICAgICAgICAgICAgICAgIHN1YmplY3QpDQorQEAgLTc3Nyw5ICs3NzksNTEg QEAgQXV0aGVudGljYXRpb25BZ2VudFJlc3BvbnNlIChJTiAgU3RyaW5nICAgIGNvb2tpZSwNCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTiAgPGxpbmsgbGlua2VuZD0iZWdnZGJ1cy1z dHJ1Y3QtSWRlbnRpdHkiPklkZW50aXR5PC9saW5rPiAgaWRlbnRpdHkpDQorICAgICA8L3Byb2dy YW1saXN0aW5nPg0KKyAgICAgPHBhcmE+DQorLU1ldGhvZCBmb3IgYXV0aGVudGljYXRpb24gYWdl bnRzIHRvIGludm9rZSBvbiBzdWNjZXNzZnVsIGF1dGhlbnRpY2F0aW9uLiBUaGlzIG1ldGhvZCB3 aWxsIGZhaWwgdW5sZXNzIGEgc3VmZmljaWVudGx5IHByaXZpbGVnZWQgY2FsbGVyIGludm9rZXMg aXQuDQorK01ldGhvZCBmb3IgYXV0aGVudGljYXRpb24gYWdlbnRzIHRvIGludm9rZSBvbiBzdWNj ZXNzZnVsDQorK2F1dGhlbnRpY2F0aW9uLCBpbnRlbmRlZCBvbmx5IGZvciB1c2UgYnkgYSBwcml2 aWxlZ2VkIGhlbHBlciBwcm9jZXNzDQorK2ludGVybmFsIHRvIHBvbGtpdC4gIERlcHJlY2F0ZWQg aW4gZmF2b3Igb2YgQXV0aGVudGljYXRpb25BZ2VudFJlc3BvbnNlMi4NCisrICAgIDwvcGFyYT4N CisrPHZhcmlhYmxlbGlzdCByb2xlPSJwYXJhbXMiPg0KKysgIDx2YXJsaXN0ZW50cnk+DQorKyAg ICA8dGVybT48bGl0ZXJhbD5JTiAgU3RyaW5nIDxwYXJhbWV0ZXI+Y29va2llPC9wYXJhbWV0ZXI+ PC9saXRlcmFsPjo8L3Rlcm0+DQorKyAgICA8bGlzdGl0ZW0+DQorKyAgICAgIDxwYXJhPg0KKytU aGUgY29va2llIGlkZW50aWZ5aW5nIHRoZSBhdXRoZW50aWNhdGlvbiByZXF1ZXN0IHRoYXQgd2Fz IHBhc3NlZCB0byB0aGUgYXV0aGVudGljYXRpb24gYWdlbnQuDQorKyAgICAgIDwvcGFyYT4NCisr ICAgIDwvbGlzdGl0ZW0+DQorKyAgPC92YXJsaXN0ZW50cnk+DQorKyAgPHZhcmxpc3RlbnRyeT4N CisrICAgIDx0ZXJtPjxsaXRlcmFsPklOICA8bGluayBsaW5rZW5kPSJlZ2dkYnVzLXN0cnVjdC1J ZGVudGl0eSI+SWRlbnRpdHk8L2xpbms+IDxwYXJhbWV0ZXI+aWRlbnRpdHk8L3BhcmFtZXRlcj48 L2xpdGVyYWw+OjwvdGVybT4NCisrICAgIDxsaXN0aXRlbT4NCisrICAgICAgPHBhcmE+DQorK0Eg PGxpbmsgbGlua2VuZD0iZWdnZGJ1cy1zdHJ1Y3QtSWRlbnRpdHkiPklkZW50aXR5PC9saW5rPiBz dHJ1Y3QgZGVzY3JpYmluZyB3aGF0IGlkZW50aXR5IHdhcyBhdXRoZW50aWNhdGVkLg0KKysgICAg ICA8L3BhcmE+DQorKyAgICA8L2xpc3RpdGVtPg0KKysgIDwvdmFybGlzdGVudHJ5Pg0KKys8L3Zh cmlhYmxlbGlzdD4NCisrICAgIDwvcmVmc2VjdDI+DQorKyAgICA8cmVmc2VjdDIgcm9sZT0iZnVu Y3Rpb24iIGlkPSJlZ2dkYnVzLW1ldGhvZC1vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRo b3JpdHkuQXV0aGVudGljYXRpb25BZ2VudFJlc3BvbnNlMiI+DQorKyAgICAgIDx0aXRsZT5BdXRo ZW50aWNhdGlvbkFnZW50UmVzcG9uc2UyICgpPC90aXRsZT4NCisrICAgIDxwcm9ncmFtbGlzdGlu Zz4NCisrQXV0aGVudGljYXRpb25BZ2VudFJlc3BvbnNlMiAoSU4gIHVpbnQzMiB1aWQsDQorKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOICBTdHJpbmcgY29va2llLA0KKysgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBJTiAgPGxpbmsgbGlua2VuZD0iZWdnZGJ1cy1zdHJ1Y3Qt SWRlbnRpdHkiPklkZW50aXR5PC9saW5rPiAgaWRlbnRpdHkpDQorKyAgICA8L3Byb2dyYW1saXN0 aW5nPg0KKysgICAgPHBhcmE+DQorK01ldGhvZCBmb3IgYXV0aGVudGljYXRpb24gYWdlbnRzIHRv IGludm9rZSBvbiBzdWNjZXNzZnVsDQorK2F1dGhlbnRpY2F0aW9uLCBpbnRlbmRlZCBvbmx5IGZv ciB1c2UgYnkgYSBwcml2aWxlZ2VkIGhlbHBlciBwcm9jZXNzDQorK2ludGVybmFsIHRvIHBvbGtp dC4gIE5vdGUgdGhpcyBtZXRob2Qgd2FzIGludHJvZHVjZWQgaW4gMC4xMTQgdG8gZml4IGEgc2Vj dXJpdHkgaXNzdWUuDQorICAgICA8L3BhcmE+DQorIDx2YXJpYWJsZWxpc3Qgcm9sZT0icGFyYW1z Ij4NCisrICA8dmFybGlzdGVudHJ5Pg0KKysgICAgPHRlcm0+PGxpdGVyYWw+SU4gIHVpbnQzMiA8 cGFyYW1ldGVyPnVpZDwvcGFyYW1ldGVyPjwvbGl0ZXJhbD46PC90ZXJtPg0KKysgICAgPGxpc3Rp dGVtPg0KKysgICAgICA8cGFyYT4NCisrVGhlIHVzZXIgaWQgb2YgdGhlIGFnZW50OyBub3JtYWxs eSB0aGlzIGlzIHRoZSBvd25lciBvZiB0aGUgcGFyZW50IHBpZA0KKytvZiB0aGUgcHJvY2VzcyB0 aGF0IGludm9rZWQgdGhlIGludGVybmFsIHNldHVpZCBoZWxwZXIuDQorKyAgICAgIDwvcGFyYT4N CisrICAgIDwvbGlzdGl0ZW0+DQorKyAgPC92YXJsaXN0ZW50cnk+DQorICAgPHZhcmxpc3RlbnRy eT4NCisgICAgIDx0ZXJtPjxsaXRlcmFsPklOICBTdHJpbmcgPHBhcmFtZXRlcj5jb29raWU8L3Bh cmFtZXRlcj48L2xpdGVyYWw+OjwvdGVybT4NCisgICAgIDxsaXN0aXRlbT4NCitkaWZmIC0tZ2l0 IGEvZG9jcy9wb2xraXQvb3ZlcnZpZXcueG1sIGIvZG9jcy9wb2xraXQvb3ZlcnZpZXcueG1sDQor aW5kZXggMjQ0NDBkMi4uYzI5ZDhkYSAxMDA2NDQNCistLS0gYS9kb2NzL3BvbGtpdC9vdmVydmll dy54bWwNCisrKysgYi9kb2NzL3BvbGtpdC9vdmVydmlldy54bWwNCitAQCAtNjYsMTYgKzY2LDE4 IEBADQorICAgICA8cGFyYT4NCisgICAgICAgQXV0aGVudGljYXRpb24gYWdlbnRzIGFyZSBwcm92 aWRlZCBieSBkZXNrdG9wIGVudmlyb25tZW50cy4gV2hlbg0KKyAgICAgICBhbiB1c2VyIHNlc3Np b24gc3RhcnRzLCB0aGUgYWdlbnQgcmVnaXN0ZXJzIHdpdGggdGhlIHBvbGtpdA0KKy0gICAgICBB dXRob3JpdHkgdXNpbmcNCistICAgICAgdGhlIDxsaW5rIGxpbmtlbmQ9ImVnZ2RidXMtbWV0aG9k LW9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhvcml0eS5SZWdpc3RlckF1dGhlbnRpY2F0 aW9uQWdlbnQiPlJlZ2lzdGVyQXV0aGVudGljYXRpb25BZ2VudCgpPC9saW5rPg0KKysgICAgICBB dXRob3JpdHkgdXNpbmcgdGhlIDxsaW5rDQorKyAgICAgIGxpbmtlbmQ9ImVnZ2RidXMtbWV0aG9k LW9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhvcml0eS5SZWdpc3RlckF1dGhlbnRpY2F0 aW9uQWdlbnQiPlJlZ2lzdGVyQXV0aGVudGljYXRpb25BZ2VudCgpPC9saW5rPg0KKyAgICAgICBt ZXRob2QuIFdoZW4gc2VydmljZXMgYXJlIG5lZWRlZCwgdGhlIGF1dGhvcml0eSB3aWxsIGludm9r ZQ0KKy0gICAgICBtZXRob2RzIG9uDQorLSAgICAgIHRoZSA8bGluayBsaW5rZW5kPSJlZ2dkYnVz LWludGVyZmFjZS1vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRoZW50aWNhdGlvbkFnZW50 Ij5vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRoZW50aWNhdGlvbkFnZW50PC9saW5rPg0K KysgICAgICBtZXRob2RzIG9uIHRoZSA8bGluaw0KKysgICAgICBsaW5rZW5kPSJlZ2dkYnVzLWlu dGVyZmFjZS1vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRoZW50aWNhdGlvbkFnZW50Ij5v cmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRoZW50aWNhdGlvbkFnZW50PC9saW5rPg0KKyAg ICAgICBELUJ1cyBpbnRlcmZhY2UuIE9uY2UgdGhlIHVzZXIgaXMgYXV0aGVudGljYXRlZCwgKGEg cHJpdmlsZWdlZA0KKy0gICAgICBwYXJ0IG9mKSB0aGUgYWdlbnQgaW52b2tlcw0KKy0gICAgICB0 aGUgPGxpbmsgbGlua2VuZD0iZWdnZGJ1cy1tZXRob2Qtb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtp dDEuQXV0aG9yaXR5LkF1dGhlbnRpY2F0aW9uQWdlbnRSZXNwb25zZSI+QXV0aGVudGljYXRpb25B Z2VudFJlc3BvbnNlKCk8L2xpbms+DQorLSAgICAgIG1ldGhvZC4gIE5vdGUgdGhhdCB0aGUgcG9s a2l0IEF1dGhvcml0eSBpdHNlbGYgZG9lcyBub3QgY2FyZQ0KKy0gICAgICBob3cgdGhlIGFnZW50 IGF1dGhlbnRpY2F0ZXMgdGhlIHVzZXIuDQorKyAgICAgIHBhcnQgb2YpIHRoZSBhZ2VudCBpbnZv a2VzIHRoZSA8bGluaw0KKysgICAgICBsaW5rZW5kPSJlZ2dkYnVzLW1ldGhvZC1vcmcuZnJlZWRl c2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHkuQXV0aGVudGljYXRpb25BZ2VudFJlc3BvbnNlIj5B dXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2UoKTwvbGluaz4NCisrICAgICAgbWV0aG9kLiAgVGhp cyBtZXRob2Qgc2hvdWxkIGJlIHRyZWF0ZWQgYXMgYW4gaW50ZXJuYWwNCisrICAgICAgaW1wbGVt ZW50YXRpb24gZGV0YWlsLCBhbmQgY2FsbGVycyBzaG91bGQgdXNlIHRoZSBwdWJsaWMgc2hhcmVk DQorKyAgICAgIGxpYnJhcnkgQVBJIHRvIGludm9rZSBpdCwgd2hpY2ggY3VycmVudGx5IHVzZXMg YSBzZXR1aWQgaGVscGVyDQorKyAgICAgIHByb2dyYW0uDQorICAgICA8L3BhcmE+DQorICAgICA8 cGFyYT4NCisgICAgICAgVGhlIDxsaW5rIGxpbmtlbmQ9InJlZi1hdXRoZW50aWNhdGlvbi1hZ2Vu dC1hcGkiPmxpYnBvbGtpdC1hZ2VudC0xPC9saW5rPg0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0 L3BvbGtpdGF1dGhvcml0eS5jIGIvc3JjL3BvbGtpdC9wb2xraXRhdXRob3JpdHkuYw0KK2luZGV4 IDg0ZGFiNzIuLmY0NWFiYzQgMTAwNjQ0DQorLS0tIGEvc3JjL3BvbGtpdC9wb2xraXRhdXRob3Jp dHkuYw0KKysrKyBiL3NyYy9wb2xraXQvcG9sa2l0YXV0aG9yaXR5LmMNCitAQCAtMTQ5Miw2ICsx NDkyLDE0IEBAIHBvbGtpdF9hdXRob3JpdHlfYXV0aGVudGljYXRpb25fYWdlbnRfcmVzcG9uc2Ug KFBvbGtpdEF1dGhvcml0eSAgICAgICphdXRob3JpdHksDQorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdwb2ludGVyICAgICAgICAgICAgICB1c2VyX2Rh dGEpDQorIHsNCisgICBHVmFyaWFudCAqaWRlbnRpdHlfdmFsdWU7DQorKyAgLyogTm90ZSB0aGF0 IGluIHJlYWxpdHksIHRoaXMgQVBJIGlzIG9ubHkgYWNjZXNzaWJsZSB0byByb290LCBhbmQNCisr ICAgKiBvbmx5IGNhbGxlZCBmcm9tIHRoZSBzZXR1aWQgaGVscGVyIGBwb2xraXQtYWdlbnQtaGVs cGVyLTFgLg0KKysgICAqDQorKyAgICogSG93ZXZlciwgYmVjYXVzZSB0aGlzIGlzIGN1cnJlbnRs eSBwdWJsaWMgQVBJLCB3ZSBhdm9pZA0KKysgICAqIHRyaWdnZXJpbmcgd2FybmluZ3MgZnJvbSBB QkkgZGlmZiB0eXBlIHByb2dyYW1zIGJ5IGp1c3QgZ3JhYmJpbmcNCisrICAgKiB0aGUgcmVhbCB1 aWQgb2YgdGhlIGNhbGxlciBoZXJlLg0KKysgICAqLw0KKysgIHVpZF90IHVpZCA9IGdldHVpZCAo KTsNCisgDQorICAgZ19yZXR1cm5faWZfZmFpbCAoUE9MS0lUX0lTX0FVVEhPUklUWSAoYXV0aG9y aXR5KSk7DQorICAgZ19yZXR1cm5faWZfZmFpbCAoY29va2llICE9IE5VTEwpOw0KK0BAIC0xNTAx LDggKzE1MDksOSBAQCBwb2xraXRfYXV0aG9yaXR5X2F1dGhlbnRpY2F0aW9uX2FnZW50X3Jlc3Bv bnNlIChQb2xraXRBdXRob3JpdHkgICAgICAqYXV0aG9yaXR5LA0KKyAgIGlkZW50aXR5X3ZhbHVl ID0gcG9sa2l0X2lkZW50aXR5X3RvX2d2YXJpYW50IChpZGVudGl0eSk7DQorICAgZ192YXJpYW50 X3JlZl9zaW5rIChpZGVudGl0eV92YWx1ZSk7DQorICAgZ19kYnVzX3Byb3h5X2NhbGwgKGF1dGhv cml0eS0+cHJveHksDQorLSAgICAgICAgICAgICAgICAgICAgICJBdXRoZW50aWNhdGlvbkFnZW50 UmVzcG9uc2UiLA0KKy0gICAgICAgICAgICAgICAgICAgICBnX3ZhcmlhbnRfbmV3ICgiKHNAKHNh e3N2fSkpIiwNCisrICAgICAgICAgICAgICAgICAgICAgIkF1dGhlbnRpY2F0aW9uQWdlbnRSZXNw b25zZTIiLA0KKysgICAgICAgICAgICAgICAgICAgICBnX3ZhcmlhbnRfbmV3ICgiKHVzQChzYXtz dn0pKSIsDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChndWludDMyKXVp ZCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29va2llLA0KKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZGVudGl0eV92YWx1ZSksDQorICAgICAg ICAgICAgICAgICAgICAgIEdfREJVU19DQUxMX0ZMQUdTX05PTkUsDQorZGlmZiAtLWdpdCBhL3Ny Yy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRhdXRob3JpdHkuYyBiL3NyYy9wb2xraXRiYWNr ZW5kL3BvbGtpdGJhY2tlbmRhdXRob3JpdHkuYw0KK2luZGV4IGZkNGYxNjEuLmQxYjFhMjUgMTAw NjQ0DQorLS0tIGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGF1dGhvcml0eS5jDQor KysrIGIvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGF1dGhvcml0eS5jDQorQEAgLTM1 NSw2ICszNTUsNyBAQCBwb2xraXRfYmFja2VuZF9hdXRob3JpdHlfdW5yZWdpc3Rlcl9hdXRoZW50 aWNhdGlvbl9hZ2VudCAoUG9sa2l0QmFja2VuZEF1dGhvcml0eQ0KKyBnYm9vbGVhbg0KKyBwb2xr aXRfYmFja2VuZF9hdXRob3JpdHlfYXV0aGVudGljYXRpb25fYWdlbnRfcmVzcG9uc2UgKFBvbGtp dEJhY2tlbmRBdXRob3JpdHkgICAgKmF1dGhvcml0eSwNCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQb2xraXRTdWJqZWN0ICAgICAgICAg ICAgICpjYWxsZXIsDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgdWlkX3QgICAgICAgICAgICAgICAgICAgICAgdWlkLA0KKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGdj aGFyICAgICAgICAgICAgICAgKmNvb2tpZSwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQb2xraXRJZGVudGl0eSAgICAgICAgICAgICpp ZGVudGl0eSwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBHRXJyb3IgICAgICAgICAgICAgICAgICAgKiplcnJvcikNCitAQCAtMzczLDcg KzM3NCw3IEBAIHBvbGtpdF9iYWNrZW5kX2F1dGhvcml0eV9hdXRoZW50aWNhdGlvbl9hZ2VudF9y ZXNwb25zZSAoUG9sa2l0QmFja2VuZEF1dGhvcml0eQ0KKyAgICAgfQ0KKyAgIGVsc2UNCisgICAg IHsNCistICAgICAgcmV0dXJuIGtsYXNzLT5hdXRoZW50aWNhdGlvbl9hZ2VudF9yZXNwb25zZSAo YXV0aG9yaXR5LCBjYWxsZXIsIGNvb2tpZSwgaWRlbnRpdHksIGVycm9yKTsNCisrICAgICAgcmV0 dXJuIGtsYXNzLT5hdXRoZW50aWNhdGlvbl9hZ2VudF9yZXNwb25zZSAoYXV0aG9yaXR5LCBjYWxs ZXIsIHVpZCwgY29va2llLCBpZGVudGl0eSwgZXJyb3IpOw0KKyAgICAgfQ0KKyB9DQorIA0KK0BA IC01ODcsNiArNTg4LDExIEBAIHN0YXRpYyBjb25zdCBnY2hhciAqc2VydmVyX2ludHJvc3BlY3Rp b25fZGF0YSA9DQorICAgIiAgICAgIDxhcmcgdHlwZT0ncycgbmFtZT0nY29va2llJyBkaXJlY3Rp b249J2luJy8+Ig0KKyAgICIgICAgICA8YXJnIHR5cGU9JyhzYXtzdn0pJyBuYW1lPSdpZGVudGl0 eScgZGlyZWN0aW9uPSdpbicvPiINCisgICAiICAgIDwvbWV0aG9kPiINCisrICAiICAgIDxtZXRo b2QgbmFtZT0nQXV0aGVudGljYXRpb25BZ2VudFJlc3BvbnNlMic+Ig0KKysgICIgICAgICA8YXJn IHR5cGU9J3UnIG5hbWU9J3VpZCcgZGlyZWN0aW9uPSdpbicvPiINCisrICAiICAgICAgPGFyZyB0 eXBlPSdzJyBuYW1lPSdjb29raWUnIGRpcmVjdGlvbj0naW4nLz4iDQorKyAgIiAgICAgIDxhcmcg dHlwZT0nKHNhe3N2fSknIG5hbWU9J2lkZW50aXR5JyBkaXJlY3Rpb249J2luJy8+Ig0KKysgICIg ICAgPC9tZXRob2Q+Ig0KKyAgICIgICAgPG1ldGhvZCBuYW1lPSdFbnVtZXJhdGVUZW1wb3JhcnlB dXRob3JpemF0aW9ucyc+Ig0KKyAgICIgICAgICA8YXJnIHR5cGU9JyhzYXtzdn0pJyBuYW1lPSdz dWJqZWN0JyBkaXJlY3Rpb249J2luJy8+Ig0KKyAgICIgICAgICA8YXJnIHR5cGU9J2Eoc3Moc2F7 c3Z9KXR0KScgbmFtZT0ndGVtcG9yYXJ5X2F1dGhvcml6YXRpb25zJyBkaXJlY3Rpb249J291dCcv PiINCitAQCAtMTAzNSw2ICsxMDQxLDU3IEBAIHNlcnZlcl9oYW5kbGVfYXV0aGVudGljYXRpb25f YWdlbnRfcmVzcG9uc2UgKFNlcnZlciAgICAgICAgICAgICAgICAgKnNlcnZlciwNCisgICBlcnJv ciA9IE5VTEw7DQorICAgaWYgKCFwb2xraXRfYmFja2VuZF9hdXRob3JpdHlfYXV0aGVudGljYXRp b25fYWdlbnRfcmVzcG9uc2UgKHNlcnZlci0+YXV0aG9yaXR5LA0KKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxsZXIsDQor KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICh1aWRfdCktMSwNCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29va2llLA0KKysgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZGVudGl0eSwNCisr ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgJmVycm9yKSkNCisrICAgIHsNCisrICAgICAgZ19kYnVzX21ldGhvZF9pbnZvY2F0aW9u X3JldHVybl9nZXJyb3IgKGludm9jYXRpb24sIGVycm9yKTsNCisrICAgICAgZ19lcnJvcl9mcmVl IChlcnJvcik7DQorKyAgICAgIGdvdG8gb3V0Ow0KKysgICAgfQ0KKysNCisrICBnX2RidXNfbWV0 aG9kX2ludm9jYXRpb25fcmV0dXJuX3ZhbHVlIChpbnZvY2F0aW9uLCBnX3ZhcmlhbnRfbmV3ICgi KCkiKSk7DQorKw0KKysgb3V0Og0KKysgIGlmIChpZGVudGl0eSAhPSBOVUxMKQ0KKysgICAgZ19v YmplY3RfdW5yZWYgKGlkZW50aXR5KTsNCisrfQ0KKysNCisrc3RhdGljIHZvaWQNCisrc2VydmVy X2hhbmRsZV9hdXRoZW50aWNhdGlvbl9hZ2VudF9yZXNwb25zZTIgKFNlcnZlciAgICAgICAgICAg ICAgICAgKnNlcnZlciwNCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIEdWYXJpYW50ICAgICAgICAgICAgICAgKnBhcmFtZXRlcnMsDQorKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQb2xraXRTdWJqZWN0ICAgICAgICAg ICpjYWxsZXIsDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBHREJ1c01ldGhvZEludm9jYXRpb24gICppbnZvY2F0aW9uKQ0KKyt7DQorKyAgY29uc3QgZ2No YXIgKmNvb2tpZTsNCisrICBHVmFyaWFudCAqaWRlbnRpdHlfZ3ZhcmlhbnQ7DQorKyAgUG9sa2l0 SWRlbnRpdHkgKmlkZW50aXR5Ow0KKysgIEdFcnJvciAqZXJyb3I7DQorKyAgZ3VpbnQzMiB1aWQ7 DQorKw0KKysgIGlkZW50aXR5ID0gTlVMTDsNCisrDQorKyAgZ192YXJpYW50X2dldCAocGFyYW1l dGVycywNCisrICAgICAgICAgICAgICAgICAiKHUmc0Aoc2F7c3Z9KSkiLA0KKysgICAgICAgICAg ICAgICAgICZ1aWQsDQorKyAgICAgICAgICAgICAgICAgJmNvb2tpZSwNCisrICAgICAgICAgICAg ICAgICAmaWRlbnRpdHlfZ3ZhcmlhbnQpOw0KKysNCisrICBlcnJvciA9IE5VTEw7DQorKyAgaWRl bnRpdHkgPSBwb2xraXRfaWRlbnRpdHlfbmV3X2Zvcl9ndmFyaWFudCAoaWRlbnRpdHlfZ3Zhcmlh bnQsICZlcnJvcik7DQorKyAgaWYgKGlkZW50aXR5ID09IE5VTEwpDQorKyAgICB7DQorKyAgICAg IGdfcHJlZml4X2Vycm9yICgmZXJyb3IsICJFcnJvciBnZXR0aW5nIGlkZW50aXR5OiAiKTsNCisr ICAgICAgZ19kYnVzX21ldGhvZF9pbnZvY2F0aW9uX3JldHVybl9nZXJyb3IgKGludm9jYXRpb24s IGVycm9yKTsNCisrICAgICAgZ19lcnJvcl9mcmVlIChlcnJvcik7DQorKyAgICAgIGdvdG8gb3V0 Ow0KKysgICAgfQ0KKysNCisrICBlcnJvciA9IE5VTEw7DQorKyAgaWYgKCFwb2xraXRfYmFja2Vu ZF9hdXRob3JpdHlfYXV0aGVudGljYXRpb25fYWdlbnRfcmVzcG9uc2UgKHNlcnZlci0+YXV0aG9y aXR5LA0KKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBjYWxsZXIsDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1aWRfdCl1aWQsDQorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvb2tp ZSwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgaWRlbnRpdHksDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZlcnJvcikpDQorQEAgLTEyMjIsNiArMTI3 OSw4IEBAIHNlcnZlcl9oYW5kbGVfbWV0aG9kX2NhbGwgKEdEQnVzQ29ubmVjdGlvbiAgICAgICAg KmNvbm5lY3Rpb24sDQorICAgICBzZXJ2ZXJfaGFuZGxlX3VucmVnaXN0ZXJfYXV0aGVudGljYXRp b25fYWdlbnQgKHNlcnZlciwgcGFyYW1ldGVycywgY2FsbGVyLCBpbnZvY2F0aW9uKTsNCisgICBl bHNlIGlmIChnX3N0cmNtcDAgKG1ldGhvZF9uYW1lLCAiQXV0aGVudGljYXRpb25BZ2VudFJlc3Bv bnNlIikgPT0gMCkNCisgICAgIHNlcnZlcl9oYW5kbGVfYXV0aGVudGljYXRpb25fYWdlbnRfcmVz cG9uc2UgKHNlcnZlciwgcGFyYW1ldGVycywgY2FsbGVyLCBpbnZvY2F0aW9uKTsNCisrICBlbHNl IGlmIChnX3N0cmNtcDAgKG1ldGhvZF9uYW1lLCAiQXV0aGVudGljYXRpb25BZ2VudFJlc3BvbnNl MiIpID09IDApDQorKyAgICBzZXJ2ZXJfaGFuZGxlX2F1dGhlbnRpY2F0aW9uX2FnZW50X3Jlc3Bv bnNlMiAoc2VydmVyLCBwYXJhbWV0ZXJzLCBjYWxsZXIsIGludm9jYXRpb24pOw0KKyAgIGVsc2Ug aWYgKGdfc3RyY21wMCAobWV0aG9kX25hbWUsICJFbnVtZXJhdGVUZW1wb3JhcnlBdXRob3JpemF0 aW9ucyIpID09IDApDQorICAgICBzZXJ2ZXJfaGFuZGxlX2VudW1lcmF0ZV90ZW1wb3JhcnlfYXV0 aG9yaXphdGlvbnMgKHNlcnZlciwgcGFyYW1ldGVycywgY2FsbGVyLCBpbnZvY2F0aW9uKTsNCisg ICBlbHNlIGlmIChnX3N0cmNtcDAgKG1ldGhvZF9uYW1lLCAiUmV2b2tlVGVtcG9yYXJ5QXV0aG9y aXphdGlvbnMiKSA9PSAwKQ0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRi YWNrZW5kYXV0aG9yaXR5LmggYi9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kYXV0aG9y aXR5LmgNCitpbmRleCBhNTY0MDU0Li4xYzIxMmUwIDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xraXRi YWNrZW5kL3BvbGtpdGJhY2tlbmRhdXRob3JpdHkuaA0KKysrKyBiL3NyYy9wb2xraXRiYWNrZW5k L3BvbGtpdGJhY2tlbmRhdXRob3JpdHkuaA0KK0BAIC0xNTQsNiArMTU0LDcgQEAgc3RydWN0IF9Q b2xraXRCYWNrZW5kQXV0aG9yaXR5Q2xhc3MNCisgDQorICAgZ2Jvb2xlYW4gKCphdXRoZW50aWNh dGlvbl9hZ2VudF9yZXNwb25zZSkgKFBvbGtpdEJhY2tlbmRBdXRob3JpdHkgICAqYXV0aG9yaXR5 LA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQb2xraXRT dWJqZWN0ICAgICAgICAgICAgKmNhbGxlciwNCisrICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdWlkX3QgICAgICAgICAgICAgICAgICAgICB1aWQsDQorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGdjaGFyICAgICAg ICAgICAgICAqY29va2llLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBQb2xraXRJZGVudGl0eSAgICAgICAgICAgKmlkZW50aXR5LA0KKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHRXJyb3IgICAgICAgICAgICAgICAg ICAqKmVycm9yKTsNCitAQCAtMjU2LDYgKzI1Nyw3IEBAIGdib29sZWFuIHBvbGtpdF9iYWNrZW5k X2F1dGhvcml0eV91bnJlZ2lzdGVyX2F1dGhlbnRpY2F0aW9uX2FnZW50IChQb2xraXRCYWNrZW5k DQorIA0KKyBnYm9vbGVhbiBwb2xraXRfYmFja2VuZF9hdXRob3JpdHlfYXV0aGVudGljYXRpb25f YWdlbnRfcmVzcG9uc2UgKFBvbGtpdEJhY2tlbmRBdXRob3JpdHkgICAgKmF1dGhvcml0eSwNCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBQb2xraXRTdWJqZWN0ICAgICAgICAgICAgICpjYWxsZXIsDQorKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWlk X3QgICAgICAgICAgICAgICAgICAgICAgdWlkLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGdjaGFyICAgICAg ICAgICAgICAgKmNvb2tpZSwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQb2xraXRJZGVudGl0eSAgICAgICAgICAgICpp ZGVudGl0eSwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBHRXJyb3IgICAgICAgICAgICAgICAgICAgKiplcnJvcik7DQor ZGlmZiAtLWdpdCBhL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRpbnRlcmFjdGl2ZWF1 dGhvcml0eS5jIGIvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGludGVyYWN0aXZlYXV0 aG9yaXR5LmMNCitpbmRleCAxMGVkYTJjLi41ZTI5YWYyIDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xr aXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRpbnRlcmFjdGl2ZWF1dGhvcml0eS5jDQorKysrIGIvc3Jj L3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGludGVyYWN0aXZlYXV0aG9yaXR5LmMNCitAQCAt MTA2LDggKzEwNiw5IEBAIHN0YXRpYyBBdXRoZW50aWNhdGlvbkFnZW50ICpnZXRfYXV0aGVudGlj YXRpb25fYWdlbnRfZm9yX3N1YmplY3QgKFBvbGtpdEJhY2tlbmRJDQorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBvbGtp dFN1YmplY3QgKnN1YmplY3QpOw0KKyANCisgDQorLXN0YXRpYyBBdXRoZW50aWNhdGlvblNlc3Np b24gKmdldF9hdXRoZW50aWNhdGlvbl9zZXNzaW9uX2Zvcl9jb29raWUgKFBvbGtpdEJhY2tlbmRJ bnRlcmFjdGl2ZUF1dGhvcml0eSAqYXV0aG9yaXR5LA0KKy0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnY2hh ciAqY29va2llKTsNCisrc3RhdGljIEF1dGhlbnRpY2F0aW9uU2Vzc2lvbiAqZ2V0X2F1dGhlbnRp Y2F0aW9uX3Nlc3Npb25fZm9yX3VpZF9hbmRfY29va2llIChQb2xraXRCYWNrZW5kSW50ZXJhY3Rp dmVBdXRob3JpdHkgKmF1dGhvcml0eSwNCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aWRfdCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHVpZCwNCisrICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z dCBnY2hhciAgICAgICAgICAgICAgICAgICAgICAgKmNvb2tpZSk7DQorIA0KKyBzdGF0aWMgR0xp c3QgKmdldF9hdXRoZW50aWNhdGlvbl9zZXNzaW9uc19pbml0aWF0ZWRfYnlfc3lzdGVtX2J1c191 bmlxdWVfbmFtZSAoUG9sa2l0QmFja2VuZEludGVyYWN0aXZlQXV0aG9yaXR5ICphdXRob3JpdHks DQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnY2hhciAqc3lzdGVtX2J1c191bmlxdWVf bmFtZSk7DQorQEAgLTE2Nyw2ICsxNjgsNyBAQCBzdGF0aWMgZ2Jvb2xlYW4gcG9sa2l0X2JhY2tl bmRfaW50ZXJhY3RpdmVfYXV0aG9yaXR5X3VucmVnaXN0ZXJfYXV0aGVudGljYXRpb25fYQ0KKyAN Cisgc3RhdGljIGdib29sZWFuIHBvbGtpdF9iYWNrZW5kX2ludGVyYWN0aXZlX2F1dGhvcml0eV9h dXRoZW50aWNhdGlvbl9hZ2VudF9yZXNwb25zZSAoUG9sa2l0QmFja2VuZEF1dGhvcml0eSAgICph dXRob3JpdHksDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBvbGtpdFN1YmplY3QgICAgICAgICAg ICAqY2FsbGVyLA0KKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aWRfdCAgICAgICAgICAgICAgICAg ICAgIHVpZCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2NoYXIgICAgICAgICAgICAg ICpjb29raWUsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBvbGtpdElkZW50aXR5ICAgICAgICAg ICAqaWRlbnRpdHksDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdFcnJvciAgICAgICAgICAgICAg ICAgICoqZXJyb3IpOw0KK0BAIC00MzEsNiArNDMzLDcgQEAgc3RydWN0IEF1dGhlbnRpY2F0aW9u QWdlbnQNCisgew0KKyAgIHZvbGF0aWxlIGdpbnQgcmVmX2NvdW50Ow0KKyANCisrICB1aWRfdCBj cmVhdG9yX3VpZDsNCisgICBQb2xraXRTdWJqZWN0ICpzY29wZTsNCisgICBndWludDY0IHNlcmlh bDsNCisgDQorQEAgLTE2MDMsNiArMTYwNiw3IEBAIGF1dGhlbnRpY2F0aW9uX2FnZW50X3VucmVm IChBdXRoZW50aWNhdGlvbkFnZW50ICphZ2VudCkNCisgc3RhdGljIEF1dGhlbnRpY2F0aW9uQWdl bnQgKg0KKyBhdXRoZW50aWNhdGlvbl9hZ2VudF9uZXcgKGd1aW50NjQgICAgICBzZXJpYWwsDQor ICAgICAgICAgICAgICAgICAgICAgICAgICAgUG9sa2l0U3ViamVjdCAqc2NvcGUsDQorKyAgICAg ICAgICAgICAgICAgICAgICAgICAgUG9sa2l0SWRlbnRpdHkgKmNyZWF0b3IsDQorICAgICAgICAg ICAgICAgICAgICAgICAgICAgY29uc3QgZ2NoYXIgKnVuaXF1ZV9zeXN0ZW1fYnVzX25hbWUsDQor ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2NoYXIgKmxvY2FsZSwNCisgICAgICAg ICAgICAgICAgICAgICAgICAgICBjb25zdCBnY2hhciAqb2JqZWN0X3BhdGgsDQorQEAgLTE2MTEs NiArMTYxNSwxMCBAQCBhdXRoZW50aWNhdGlvbl9hZ2VudF9uZXcgKGd1aW50NjQgICAgICBzZXJp YWwsDQorIHsNCisgICBBdXRoZW50aWNhdGlvbkFnZW50ICphZ2VudDsNCisgICBHREJ1c1Byb3h5 ICpwcm94eTsNCisrICBQb2xraXRVbml4VXNlciAqY3JlYXRvcl91c2VyOw0KKysNCisrICBnX2Fz c2VydCAoUE9MS0lUX0lTX1VOSVhfVVNFUiAoY3JlYXRvcikpOw0KKysgIGNyZWF0b3JfdXNlciA9 IFBPTEtJVF9VTklYX1VTRVIgKGNyZWF0b3IpOw0KKyANCisgICBpZiAoIWdfdmFyaWFudF9pc19v YmplY3RfcGF0aCAob2JqZWN0X3BhdGgpKQ0KKyAgICAgew0KK0BAIC0xNjM4LDYgKzE2NDYsNyBA QCBhdXRoZW50aWNhdGlvbl9hZ2VudF9uZXcgKGd1aW50NjQgICAgICBzZXJpYWwsDQorICAgYWdl bnQtPnJlZl9jb3VudCA9IDE7DQorICAgYWdlbnQtPnNlcmlhbCA9IHNlcmlhbDsNCisgICBhZ2Vu dC0+c2NvcGUgPSBnX29iamVjdF9yZWYgKHNjb3BlKTsNCisrICBhZ2VudC0+Y3JlYXRvcl91aWQg PSAodWlkX3QpcG9sa2l0X3VuaXhfdXNlcl9nZXRfdWlkIChjcmVhdG9yX3VzZXIpOw0KKyAgIGFn ZW50LT5vYmplY3RfcGF0aCA9IGdfc3RyZHVwIChvYmplY3RfcGF0aCk7DQorICAgYWdlbnQtPnVu aXF1ZV9zeXN0ZW1fYnVzX25hbWUgPSBnX3N0cmR1cCAodW5pcXVlX3N5c3RlbV9idXNfbmFtZSk7 DQorICAgYWdlbnQtPmxvY2FsZSA9IGdfc3RyZHVwIChsb2NhbGUpOw0KK0BAIC0xNzM2LDggKzE3 NDUsOSBAQCBnZXRfYXV0aGVudGljYXRpb25fYWdlbnRfZm9yX3N1YmplY3QgKFBvbGtpdEJhY2tl bmRJbnRlcmFjdGl2ZUF1dGhvcml0eSAqYXV0aG9yaQ0KKyB9DQorIA0KKyBzdGF0aWMgQXV0aGVu dGljYXRpb25TZXNzaW9uICoNCistZ2V0X2F1dGhlbnRpY2F0aW9uX3Nlc3Npb25fZm9yX2Nvb2tp ZSAoUG9sa2l0QmFja2VuZEludGVyYWN0aXZlQXV0aG9yaXR5ICphdXRob3JpdHksDQorLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGdjaGFyICpjb29raWUpDQor K2dldF9hdXRoZW50aWNhdGlvbl9zZXNzaW9uX2Zvcl91aWRfYW5kX2Nvb2tpZSAoUG9sa2l0QmFj a2VuZEludGVyYWN0aXZlQXV0aG9yaXR5ICphdXRob3JpdHksDQorKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWlkX3QgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB1aWQsDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgY29uc3QgZ2NoYXIgICAgICAgICAgICAgICAgICAgICAgICpjb29raWUpDQorIHsNCisg ICBQb2xraXRCYWNrZW5kSW50ZXJhY3RpdmVBdXRob3JpdHlQcml2YXRlICpwcml2Ow0KKyAgIEdI YXNoVGFibGVJdGVyIGhhc2hfaXRlcjsNCitAQCAtMTc1NSw2ICsxNzY1LDIzIEBAIGdldF9hdXRo ZW50aWNhdGlvbl9zZXNzaW9uX2Zvcl9jb29raWUgKFBvbGtpdEJhY2tlbmRJbnRlcmFjdGl2ZUF1 dGhvcml0eSAqYXV0aG9yDQorICAgICB7DQorICAgICAgIEdMaXN0ICpsOw0KKyANCisrICAgICAg LyogV2UgbmVlZCB0byBlbnN1cmUgdGhhdCBpZiBzb21laG93IHdlIGhhdmUgZHVwbGljYXRlIGNv b2tpZXMNCisrICAgICAgICogZHVlIHRvIHdyYXBwaW5nLCB0aGF0IHRoZSBjb29raWUgdXNlZCBp cyBtYXRjaGVkIHRvIHRoZSB1c2VyDQorKyAgICAgICAqIHdobyBjYWxsZWQgQXV0aGVudGljYXRp b25BZ2VudFJlc3BvbnNlMi4gIFNlZQ0KKysgICAgICAgKiBodHRwOi8vbGlzdHMuZnJlZWRlc2t0 b3Aub3JnL2FyY2hpdmVzL3BvbGtpdC1kZXZlbC8yMDE1LUp1bmUvMDAwNDI1Lmh0bWwNCisrICAg ICAgICogDQorKyAgICAgICAqIEV4Y2VwdCBpZiB0aGUgbGVnYWN5IEF1dGhlbnRpY2F0aW9uQWdl bnRSZXNwb25zZSBpcyBpbnZva2VkLA0KKysgICAgICAgKiB3ZSBkb24ndCBrbm93IHRoZSB1aWQg YW5kIGhlbmNlIHVzZSAtMS4gIENvbnRpbnVlIHRvIHN1cHBvcnQNCisrICAgICAgICogdGhlIG9s ZCBiZWhhdmlvciBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHksIGFsdGhvdWdoIGV2ZXJ5b25l DQorKyAgICAgICAqIHdobyBpcyB1c2luZyBvdXIgb3duIHNldHVpZCBoZWxwZXIgd2lsbCBhdXRv bWF0aWNhbGx5IGJlIHVwZGF0ZWQNCisrICAgICAgICogdG8gdGhlIG5ldyBBUEkuDQorKyAgICAg ICAqLw0KKysgICAgICBpZiAodWlkICE9ICh1aWRfdCktMSkNCisrICAgICAgICB7DQorKyAgICAg ICAgICBpZiAoYWdlbnQtPmNyZWF0b3JfdWlkICE9IHVpZCkNCisrICAgICAgICAgICAgY29udGlu dWU7DQorKyAgICAgICAgfQ0KKysNCisgICAgICAgZm9yIChsID0gYWdlbnQtPmFjdGl2ZV9zZXNz aW9uczsgbCAhPSBOVUxMOyBsID0gbC0+bmV4dCkNCisgICAgICAgICB7DQorICAgICAgICAgICBB dXRoZW50aWNhdGlvblNlc3Npb24gKnNlc3Npb24gPSBsLT5kYXRhOw0KK0BAIC0yMzg4LDYgKzI0 MTUsNyBAQCBwb2xraXRfYmFja2VuZF9pbnRlcmFjdGl2ZV9hdXRob3JpdHlfcmVnaXN0ZXJfYXV0 aGVudGljYXRpb25fYWdlbnQgKFBvbGtpdEJhY2tlbg0KKyAgIHByaXYtPmFnZW50X3NlcmlhbCsr Ow0KKyAgIGFnZW50ID0gYXV0aGVudGljYXRpb25fYWdlbnRfbmV3IChwcml2LT5hZ2VudF9zZXJp YWwsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1YmplY3QsDQorKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXJfb2ZfY2FsbGVyLA0KKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb2xraXRfc3lzdGVtX2J1c19uYW1lX2dl dF9uYW1lIChQT0xLSVRfU1lTVEVNX0JVU19OQU1FIChjYWxsZXIpKSwNCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgbG9jYWxlLA0KKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBvYmplY3RfcGF0aCwNCitAQCAtMjYwMSw2ICsyNjI5LDcgQEAgcG9sa2l0 X2JhY2tlbmRfaW50ZXJhY3RpdmVfYXV0aG9yaXR5X3VucmVnaXN0ZXJfYXV0aGVudGljYXRpb25f YWdlbnQgKFBvbGtpdEJhY2sNCisgc3RhdGljIGdib29sZWFuDQorIHBvbGtpdF9iYWNrZW5kX2lu dGVyYWN0aXZlX2F1dGhvcml0eV9hdXRoZW50aWNhdGlvbl9hZ2VudF9yZXNwb25zZSAoUG9sa2l0 QmFja2VuZEF1dGhvcml0eSAgICphdXRob3JpdHksDQorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUG9sa2l0U3ViamVjdCAgICAg ICAgICAgICpjYWxsZXIsDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgdWlkX3QgICAgICAgICAgICAgICAgICAgICB1aWQsDQor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgY29uc3QgZ2NoYXIgICAgICAgICAgICAgICpjb29raWUsDQorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUG9sa2l0SWRl bnRpdHkgICAgICAgICAgICppZGVudGl0eSwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHRXJyb3IgICAgICAgICAgICAgICAg ICAqKmVycm9yKQ0KK0BAIC0yNjQzLDcgKzI2NzIsNyBAQCBwb2xraXRfYmFja2VuZF9pbnRlcmFj dGl2ZV9hdXRob3JpdHlfYXV0aGVudGljYXRpb25fYWdlbnRfcmVzcG9uc2UgKFBvbGtpdEJhY2tl bg0KKyAgICAgfQ0KKyANCisgICAvKiBmaW5kIHRoZSBhdXRoZW50aWNhdGlvbiBzZXNzaW9uICov DQorLSAgc2Vzc2lvbiA9IGdldF9hdXRoZW50aWNhdGlvbl9zZXNzaW9uX2Zvcl9jb29raWUgKGlu dGVyYWN0aXZlX2F1dGhvcml0eSwgY29va2llKTsNCisrICBzZXNzaW9uID0gZ2V0X2F1dGhlbnRp Y2F0aW9uX3Nlc3Npb25fZm9yX3VpZF9hbmRfY29va2llIChpbnRlcmFjdGl2ZV9hdXRob3JpdHks IHVpZCwgY29va2llKTsNCisgICBpZiAoc2Vzc2lvbiA9PSBOVUxMKQ0KKyAgICAgew0KKyAgICAg ICBnX3NldF9lcnJvciAoZXJyb3IsDQpkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9wb2xraXQtMC4xMDUv MC4xMTMvQ1ZFLTIwMTUtNDYyNS1Vc2UtdW5wcmVkaWN0YWJsZS1jb29raWUtdmFsdWVzLWtlZXAt dC5wYXRjaCBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL0NWRS0yMDE1LTQ2MjUtVXNlLXVu cHJlZGljdGFibGUtY29va2llLXZhbHVlcy1rZWVwLXQucGF0Y2gNCm5ldyBmaWxlIG1vZGUgMTAw NjQ0DQppbmRleCAwMDAwMDAwMDAuLmY2YTQyNDg5Ng0KLS0tIC9kZXYvbnVsbA0KKysrIGIvcGF0 Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvQ1ZFLTIwMTUtNDYyNS1Vc2UtdW5wcmVkaWN0YWJsZS1j b29raWUtdmFsdWVzLWtlZXAtdC5wYXRjaA0KQEAgLTAsMCArMSw1NDAgQEANCitGcm9tOiBDb2xp biBXYWx0ZXJzIDx3YWx0ZXJzQHJlZGhhdC5jb20+DQorRGF0ZTogVGh1LCA0IEp1biAyMDE1IDEy OjE1OjE4IC0wNDAwDQorU3ViamVjdDogQ1ZFLTIwMTUtNDYyNTogVXNlIHVucHJlZGljdGFibGUg Y29va2llIHZhbHVlcywga2VlcCB0aGVtIHNlY3JldA0KK01JTUUtVmVyc2lvbjogMS4wDQorQ29u dGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PSJ1dGYtOCINCitDb250ZW50LVRyYW5zZmVy LUVuY29kaW5nOiA4Yml0DQorDQorVGF2aXMgbm90ZWQgdGhhdCBpdCdkIGJlIHBvc3NpYmxlIHdp dGggYSAzMiBiaXQgY291bnRlciBmb3Igc29tZW9uZSB0bw0KK2NhdXNlIHRoZSBjb29raWUgdG8g d3JhcCBieSBjcmVhdGluZyBBdXRoZW50aWNhdGlvbiByZXF1ZXN0cyBpbiBhDQorbG9vcC4NCisN CitTb21ldGhpbmcgaW1wb3J0YW50IHRvIG5vdGUgaGVyZSBpcyB0aGF0IHdyYXBwaW5nIG9mIHNp Z25lZCBpbnRlZ2Vycw0KK2lzIHVuZGVmaW5lZCBiZWhhdmlvciBpbiBDLCBzbyB3ZSBkZWZpbml0 ZWx5IHdhbnQgdG8gZml4IHRoYXQuICBBbGwNCitjb3VudGVyIGludGVnZXJzIHVzZWQgaW4gdGhp cyBwYXRjaCBhcmUgdW5zaWduZWQuDQorDQorU2VlIHRoZSBjb21tZW50IGFib3ZlIGBhdXRoZW50 aWNhdGlvbl9hZ2VudF9nZW5lcmF0ZV9jb29raWVgIGZvcg0KK2RldGFpbHMsIGJ1dCBiYXNpY2Fs bHkgd2UncmUgbm93IHVzaW5nIGEgY29va2llIG9mIHRoZSBmb3JtOg0KKw0KK2BgYA0KKyAgICAg ICAgPGFnZW50IHNlcmlhbD4gLSA8YWdlbnQgcmFuZG9tIGlkPiAtIDxzZXNzaW9uIHNlcmlhbD4g LSA8c2Vzc2lvbg0KK3JhbmRvbSBpZD4NCitgYGANCisNCitXaGljaCBoYXMgbXVsdGlwbGUgNjQg Yml0IGNvdW50ZXJzLCBwbHVzIHVucHJlZGljdGFibGUgcmFuZG9tIDEyOCBiaXQNCitpbnRlZ2Vy IGlkcyAoZWZmZWN0aXZlbHkgVVVJRHMsIGJ1dCB3ZSdyZSBub3QgY2FsbGluZyB0aGVtIHRoYXQN CitiZWNhdXNlIHdlIGRvbid0IG5lZWQgdG8gYmUgZ2xvYmFsbHkgdW5pcXVlLg0KKw0KK1dlIGZ1 cnRoZXIgZW5zdXJlIHRoYXQgdGhlIGNvb2tpZXMgYXJlIG5vdCB2aXNpYmxlIHRvIG90aGVyIHBy b2Nlc3Nlcw0KK2J5IGNoYW5naW5nIHRoZSBzZXR1aWQgaGVscGVyIHRvIGFjY2VwdCB0aGVtIG92 ZXIgc3RhbmRhcmQgaW5wdXQuICBUaGlzDQorbWVhbnMgdGhhdCBhbiBhdHRhY2tlciB3b3VsZCBo YXZlIHRvIGd1ZXNzIGJvdGggaWRzLg0KKw0KK0luIGFueSBjYXNlLCB0aGUgc2VjdXJpdHkgaG9s ZSBoZXJlIGlzIGJldHRlciBmaXhlZCB3aXRoIHRoZSBvdGhlcg0KK2NoYW5nZSB0byBiaW5kIHVz ZXIgaWQgKHVpZCkgb2YgdGhlIGFnZW50IHdpdGggY29va2llIGxvb2t1cHMsIG1ha2luZw0KK2Nv b2tpZSBndWVzc2luZyB3b3J0aGxlc3MuDQorDQorTmV2ZXJ0aGVsZXNzLCBJIHRoaW5rIGl0J3Mg d29ydGggZG9pbmcgdGhpcyBjaGFuZ2UgdG9vLCBmb3IgZGVmZW5zZSBpbg0KK2RlcHRoLg0KKw0K K0J1ZzogaHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTA4MzIN CitDVkU6IENWRS0yMDE1LTQ2MjUNCitSZXBvcnRlZC1ieTogVGF2aXMgT3JtYW5keSA8dGF2aXNv QGdvb2dsZS5jb20+DQorUmV2aWV3ZWQtYnk6IE1pbG9zbGF2IFRybWHEjSA8bWl0ckByZWRoYXQu Y29tPg0KK1NpZ25lZC1vZmYtYnk6IENvbGluIFdhbHRlcnMgPHdhbHRlcnNAcmVkaGF0LmNvbT4N CitPcmlnaW46IHVwc3RyZWFtLCAwLjExMywgY29tbWl0OmVhNTQ0ZmZjMTg0MDUyMzdjY2Q5NWQy OGQ3ZjQ1YWZlZjQ5YWNhMTcNCitCdWctRGViaWFuOiBodHRwczovL2J1Z3MuZGViaWFuLm9yZy83 OTYxMzQNCistLS0NCisgY29uZmlndXJlLmFjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgfCAgMiArLQ0KKyBzcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRoZWxwZXItcGFt LmMgICAgICAgICAgICB8IDEyICsrLQ0KKyBzcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRoZWxw ZXItc2hhZG93LmMgICAgICAgICB8IDEyICsrLQ0KKyBzcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdl bnRoZWxwZXJwcml2YXRlLmMgICAgICAgICB8IDMzICsrKysrKysrDQorIHNyYy9wb2xraXRhZ2Vu dC9wb2xraXRhZ2VudGhlbHBlcnByaXZhdGUuaCAgICAgICAgIHwgIDIgKw0KKyBzcmMvcG9sa2l0 YWdlbnQvcG9sa2l0YWdlbnRzZXNzaW9uLmMgICAgICAgICAgICAgICB8IDMwICsrKystLS0NCisg Li4uL3BvbGtpdGJhY2tlbmRpbnRlcmFjdGl2ZWF1dGhvcml0eS5jICAgICAgICAgICAgfCA5OSAr KysrKysrKysrKysrKysrKy0tLS0tDQorIDcgZmlsZXMgY2hhbmdlZCwgMTUwIGluc2VydGlvbnMo KyksIDQwIGRlbGV0aW9ucygtKQ0KKw0KK2RpZmYgLS1naXQgYS9jb25maWd1cmUuYWMgYi9jb25m aWd1cmUuYWMNCitpbmRleCBhYTI3NjBmLi4zODg2MDVkIDEwMDY0NA0KKy0tLSBhL2NvbmZpZ3Vy ZS5hYw0KKysrKyBiL2NvbmZpZ3VyZS5hYw0KK0BAIC0xMjMsNyArMTIzLDcgQEAgaWYgdGVzdCAi eCRHQ0MiID0gInh5ZXMiOyB0aGVuDQorICAgY2hhbmdlcXVvdGUoWyxdKWRubA0KKyBmaQ0KKyAN CistUEtHX0NIRUNLX01PRFVMRVMoR0xJQiwgW2dpby0yLjAgPj0gMi4yOC4wXSkNCisrUEtHX0NI RUNLX01PRFVMRVMoR0xJQiwgW2dtb2R1bGUtMi4wIGdpby11bml4LTIuMCA+PSAyLjMwLjBdKQ0K KyBBQ19TVUJTVChHTElCX0NGTEFHUykNCisgQUNfU1VCU1QoR0xJQl9MSUJTKQ0KKyANCitkaWZm IC0tZ2l0IGEvc3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50aGVscGVyLXBhbS5jIGIvc3JjL3Bv bGtpdGFnZW50L3BvbGtpdGFnZW50aGVscGVyLXBhbS5jDQoraW5kZXggOTM3Mzg2ZS4uMTkwNjJh YSAxMDA2NDQNCistLS0gYS9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRoZWxwZXItcGFtLmMN CisrKysgYi9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRoZWxwZXItcGFtLmMNCitAQCAtNjUs NyArNjUsNyBAQCBtYWluIChpbnQgYXJnYywgY2hhciAqYXJndltdKQ0KKyB7DQorICAgaW50IHJj Ow0KKyAgIGNvbnN0IGNoYXIgKnVzZXJfdG9fYXV0aDsNCistICBjb25zdCBjaGFyICpjb29raWU7 DQorKyAgY2hhciAqY29va2llID0gTlVMTDsNCisgICBzdHJ1Y3QgcGFtX2NvbnYgcGFtX2NvbnZl cnNhdGlvbjsNCisgICBwYW1faGFuZGxlX3QgKnBhbV9oOw0KKyAgIGNvbnN0IHZvaWQgKmF1dGhl ZF91c2VyOw0KK0BAIC05Nyw3ICs5Nyw3IEBAIG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2W10p DQorICAgb3BlbmxvZyAoInBvbGtpdC1hZ2VudC1oZWxwZXItMSIsIExPR19DT05TIHwgTE9HX1BJ RCwgTE9HX0FVVEhQUklWKTsNCisgDQorICAgLyogY2hlY2sgZm9yIGNvcnJlY3QgaW52b2NhdGlv biAqLw0KKy0gIGlmIChhcmdjICE9IDMpDQorKyAgaWYgKCEoYXJnYyA9PSAyIHx8IGFyZ2MgPT0g MykpDQorICAgICB7DQorICAgICAgIHN5c2xvZyAoTE9HX05PVElDRSwgImluYXBwcm9wcmlhdGUg dXNlIG9mIGhlbHBlciwgd3JvbmcgbnVtYmVyIG9mIGFyZ3VtZW50cyBbdWlkPSVkXSIsIGdldHVp ZCAoKSk7DQorICAgICAgIGZwcmludGYgKHN0ZGVyciwgInBvbGtpdC1hZ2VudC1oZWxwZXItMTog d3JvbmcgbnVtYmVyIG9mIGFyZ3VtZW50cy4gVGhpcyBpbmNpZGVudCBoYXMgYmVlbiBsb2dnZWQu XG4iKTsNCitAQCAtMTA1LDcgKzEwNSwxMCBAQCBtYWluIChpbnQgYXJnYywgY2hhciAqYXJndltd KQ0KKyAgICAgfQ0KKyANCisgICB1c2VyX3RvX2F1dGggPSBhcmd2WzFdOw0KKy0gIGNvb2tpZSA9 IGFyZ3ZbMl07DQorKw0KKysgIGNvb2tpZSA9IHJlYWRfY29va2llIChhcmdjLCBhcmd2KTsNCisr ICBpZiAoIWNvb2tpZSkNCisrICAgIGdvdG8gZXJyb3I7DQorIA0KKyAgIGlmIChnZXR1aWQgKCkg IT0gMCkNCisgICAgIHsNCitAQCAtMjAzLDYgKzIwNiw4IEBAIG1haW4gKGludCBhcmdjLCBjaGFy ICphcmd2W10pDQorICAgICAgIGdvdG8gZXJyb3I7DQorICAgICB9DQorIA0KKysgIGZyZWUgKGNv b2tpZSk7DQorKw0KKyAjaWZkZWYgUEFIX0RFQlVHDQorICAgZnByaW50ZiAoc3RkZXJyLCAicG9s a2l0LWFnZW50LWhlbHBlci0xOiBzdWNjZXNzZnVsbHkgc2VudCBELUJ1cyBtZXNzYWdlIHRvIFBv bGljeUtpdCBkYWVtb25cbiIpOw0KKyAjZW5kaWYgLyogUEFIX0RFQlVHICovDQorQEAgLTIxMiw2 ICsyMTcsNyBAQCBtYWluIChpbnQgYXJnYywgY2hhciAqYXJndltdKQ0KKyAgIHJldHVybiAwOw0K KyANCisgZXJyb3I6DQorKyAgZnJlZSAoY29va2llKTsNCisgICBpZiAocGFtX2ggIT0gTlVMTCkN CisgICAgIHBhbV9lbmQgKHBhbV9oLCByYyk7DQorIA0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0 YWdlbnQvcG9sa2l0YWdlbnRoZWxwZXItc2hhZG93LmMgYi9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0 YWdlbnRoZWxwZXItc2hhZG93LmMNCitpbmRleCBhNGY3M2FjLi5lODc3OTE1IDEwMDY0NA0KKy0t LSBhL3NyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudGhlbHBlci1zaGFkb3cuYw0KKysrKyBiL3Ny Yy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudGhlbHBlci1zaGFkb3cuYw0KK0BAIC00Niw3ICs0Niw3 IEBAIG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2W10pDQorIHsNCisgICBzdHJ1Y3Qgc3B3ZCAq c2hhZG93Ow0KKyAgIGNvbnN0IGNoYXIgKnVzZXJfdG9fYXV0aDsNCistICBjb25zdCBjaGFyICpj b29raWU7DQorKyAgY2hhciAqY29va2llID0gTlVMTDsNCisgICB0aW1lX3Qgbm93Ow0KKyANCisg ICAvKiBjbGVhciB0aGUgZW50aXJlIGVudmlyb25tZW50IHRvIGF2b2lkIGF0dGFja3Mgd2l0aA0K K0BAIC02Nyw3ICs2Nyw3IEBAIG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2W10pDQorICAgb3Bl bmxvZyAoInBvbGtpdC1hZ2VudC1oZWxwZXItMSIsIExPR19DT05TIHwgTE9HX1BJRCwgTE9HX0FV VEhQUklWKTsNCisgDQorICAgLyogY2hlY2sgZm9yIGNvcnJlY3QgaW52b2NhdGlvbiAqLw0KKy0g IGlmIChhcmdjICE9IDMpDQorKyAgaWYgKCEoYXJnYyA9PSAyIHx8IGFyZ2MgPT0gMykpDQorICAg ICB7DQorICAgICAgIHN5c2xvZyAoTE9HX05PVElDRSwgImluYXBwcm9wcmlhdGUgdXNlIG9mIGhl bHBlciwgd3JvbmcgbnVtYmVyIG9mIGFyZ3VtZW50cyBbdWlkPSVkXSIsIGdldHVpZCAoKSk7DQor ICAgICAgIGZwcmludGYgKHN0ZGVyciwgInBvbGtpdC1hZ2VudC1oZWxwZXItMTogd3JvbmcgbnVt YmVyIG9mIGFyZ3VtZW50cy4gVGhpcyBpbmNpZGVudCBoYXMgYmVlbiBsb2dnZWQuXG4iKTsNCitA QCAtODYsNyArODYsMTAgQEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkNCisgICAgIH0N CisgDQorICAgdXNlcl90b19hdXRoID0gYXJndlsxXTsNCistICBjb29raWUgPSBhcmd2WzJdOw0K KysNCisrICBjb29raWUgPSByZWFkX2Nvb2tpZSAoYXJnYywgYXJndik7DQorKyAgaWYgKCFjb29r aWUpDQorKyAgICBnb3RvIGVycm9yOw0KKyANCisgI2lmZGVmIFBBSF9ERUJVRw0KKyAgIGZwcmlu dGYgKHN0ZGVyciwgInBvbGtpdC1hZ2VudC1oZWxwZXItMTogdXNlciB0byBhdXRoIGlzICclcycu XG4iLCB1c2VyX3RvX2F1dGgpOw0KK0BAIC0xNTMsNiArMTU2LDggQEAgbWFpbiAoaW50IGFyZ2Ms IGNoYXIgKmFyZ3ZbXSkNCisgICAgICAgZ290byBlcnJvcjsNCisgICAgIH0NCisgDQorKyAgZnJl ZSAoY29va2llKTsNCisrDQorICNpZmRlZiBQQUhfREVCVUcNCisgICBmcHJpbnRmIChzdGRlcnIs ICJwb2xraXQtYWdlbnQtaGVscGVyLTE6IHN1Y2Nlc3NmdWxseSBzZW50IEQtQnVzIG1lc3NhZ2Ug dG8gUG9saWN5S2l0IGRhZW1vblxuIik7DQorICNlbmRpZiAvKiBQQUhfREVCVUcgKi8NCitAQCAt MTYyLDYgKzE2Nyw3IEBAIG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2W10pDQorICAgcmV0dXJu IDA7DQorIA0KKyBlcnJvcjoNCisrICBmcmVlIChjb29raWUpOw0KKyAgIGZwcmludGYgKHN0ZG91 dCwgIkZBSUxVUkVcbiIpOw0KKyAgIGZsdXNoX2FuZF93YWl0ICgpOw0KKyAgIHJldHVybiAxOw0K K2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRoZWxwZXJwcml2YXRlLmMg Yi9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRoZWxwZXJwcml2YXRlLmMNCitpbmRleCA0NDE3 ZTcwLi5hOTlkZTdkIDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudGhl bHBlcnByaXZhdGUuYw0KKysrKyBiL3NyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudGhlbHBlcnBy aXZhdGUuYw0KK0BAIC0yMyw2ICsyMyw3IEBADQorICNpbmNsdWRlICJjb25maWcuaCINCisgI2lu Y2x1ZGUgInBvbGtpdGFnZW50aGVscGVycHJpdmF0ZS5oIg0KKyAjaW5jbHVkZSA8c3RkaW8uaD4N CisrI2luY2x1ZGUgPHN0cmluZy5oPg0KKyAjaW5jbHVkZSA8c3RkbGliLmg+DQorICNpbmNsdWRl IDx1bmlzdGQuaD4NCisgDQorQEAgLTQ1LDYgKzQ2LDM4IEBAIF9wb2xraXRfY2xlYXJlbnYgKHZv aWQpDQorICNlbmRpZg0KKyANCisgDQorK2NoYXIgKg0KKytyZWFkX2Nvb2tpZSAoaW50IGFyZ2Ms IGNoYXIgKiphcmd2KQ0KKyt7DQorKyAgLyogQXMgcGFydCBvZiBDVkUtMjAxNS00NjI1LCB3ZSBz dGFydGVkIHBhc3NpbmcgdGhlIGNvb2tpZQ0KKysgICAqIG9uIHN0YW5kYXJkIGlucHV0LCB0byBl bnN1cmUgaXQncyBub3QgdmlzaWJsZSB0byBvdGhlcg0KKysgICAqIHByb2Nlc3Nlcy4gIEhvd2V2 ZXIsIHRvIGVuc3VyZSB0aGF0IHRoaW5ncyBjb250aW51ZQ0KKysgICAqIHRvIHdvcmsgaWYgdGhl IHNldHVpZCBiaW5hcnkgaXMgdXBncmFkZWQgd2hpbGUgb2xkDQorKyAgICogYWdlbnRzIGFyZSBz dGlsbCBydW5uaW5nICh0aGlzIHdpbGwgYmUgY29tbW9uIHdpdGgNCisrICAgKiBwYWNrYWdlIG1h bmFnZXJzKSwgd2Ugc3VwcG9ydCBib3RoIG1vZGVzLg0KKysgICAqLw0KKysgIGlmIChhcmdjID09 IDMpDQorKyAgICByZXR1cm4gc3RyZHVwIChhcmd2WzJdKTsNCisrICBlbHNlDQorKyAgICB7DQor KyAgICAgIGNoYXIgKnJldCA9IE5VTEw7DQorKyAgICAgIHNpemVfdCBuID0gMDsNCisrICAgICAg c3NpemVfdCByID0gZ2V0bGluZSAoJnJldCwgJm4sIHN0ZGluKTsNCisrICAgICAgaWYgKHIgPT0g LTEpDQorKyAgICAgICAgew0KKysgICAgICAgICAgaWYgKCFmZW9mIChzdGRpbikpDQorKyAgICAg ICAgICAgIHBlcnJvciAoImdldGxpbmUiKTsNCisrICAgICAgICAgIGZyZWUgKHJldCk7DQorKyAg ICAgICAgICByZXR1cm4gTlVMTDsNCisrICAgICAgICB9DQorKyAgICAgIGVsc2UNCisrICAgICAg ICB7DQorKyAgICAgICAgICBnX3N0cmNob21wIChyZXQpOw0KKysgICAgICAgICAgcmV0dXJuIHJl dDsNCisrICAgICAgICB9DQorKyAgICB9DQorK30NCisrDQorIGdib29sZWFuDQorIHNlbmRfZGJ1 c19tZXNzYWdlIChjb25zdCBjaGFyICpjb29raWUsIGNvbnN0IGNoYXIgKnVzZXIpDQorIHsNCitk aWZmIC0tZ2l0IGEvc3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50aGVscGVycHJpdmF0ZS5oIGIv c3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50aGVscGVycHJpdmF0ZS5oDQoraW5kZXggYWVjYTJj Ny4uNTQ3ZmRjYyAxMDA2NDQNCistLS0gYS9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRoZWxw ZXJwcml2YXRlLmgNCisrKysgYi9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRoZWxwZXJwcml2 YXRlLmgNCitAQCAtMzgsNiArMzgsOCBAQA0KKyANCisgaW50IF9wb2xraXRfY2xlYXJlbnYgKHZv aWQpOw0KKyANCisrY2hhciAqcmVhZF9jb29raWUgKGludCBhcmdjLCBjaGFyICoqYXJndik7DQor Kw0KKyBnYm9vbGVhbiBzZW5kX2RidXNfbWVzc2FnZSAoY29uc3QgY2hhciAqY29va2llLCBjb25z dCBjaGFyICp1c2VyKTsNCisgDQorIHZvaWQgZmx1c2hfYW5kX3dhaXQgKCk7DQorZGlmZiAtLWdp dCBhL3NyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudHNlc3Npb24uYyBiL3NyYy9wb2xraXRhZ2Vu dC9wb2xraXRhZ2VudHNlc3Npb24uYw0KK2luZGV4IGE2NThhMjIuLjZhM2Q2YmMgMTAwNjQ0DQor LS0tIGEvc3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50c2Vzc2lvbi5jDQorKysrIGIvc3JjL3Bv bGtpdGFnZW50L3BvbGtpdGFnZW50c2Vzc2lvbi5jDQorQEAgLTU1LDYgKzU1LDcgQEANCisgI2lu Y2x1ZGUgPHN0ZGlvLmg+DQorICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4NCisgI2luY2x1ZGUgPHN5 cy93YWl0Lmg+DQorKyNpbmNsdWRlIDxnaW8vZ3VuaXhvdXRwdXRzdHJlYW0uaD4NCisgI2luY2x1 ZGUgPHB3ZC5oPg0KKyANCisgI2luY2x1ZGUgInBvbGtpdGFnZW50bWFyc2hhbC5oIg0KK0BAIC04 OCw3ICs4OSw3IEBAIHN0cnVjdCBfUG9sa2l0QWdlbnRTZXNzaW9uDQorICAgZ2NoYXIgKmNvb2tp ZTsNCisgICBQb2xraXRJZGVudGl0eSAqaWRlbnRpdHk7DQorIA0KKy0gIGludCBjaGlsZF9zdGRp bjsNCisrICBHT3V0cHV0U3RyZWFtICpjaGlsZF9zdGRpbjsNCisgICBpbnQgY2hpbGRfc3Rkb3V0 Ow0KKyAgIEdQaWQgY2hpbGRfcGlkOw0KKyANCitAQCAtMTI5LDcgKzEzMCw2IEBAIEdfREVGSU5F X1RZUEUgKFBvbGtpdEFnZW50U2Vzc2lvbiwgcG9sa2l0X2FnZW50X3Nlc3Npb24sIEdfVFlQRV9P QkpFQ1QpOw0KKyBzdGF0aWMgdm9pZA0KKyBwb2xraXRfYWdlbnRfc2Vzc2lvbl9pbml0IChQb2xr aXRBZ2VudFNlc3Npb24gKnNlc3Npb24pDQorIHsNCistICBzZXNzaW9uLT5jaGlsZF9zdGRpbiA9 IC0xOw0KKyAgIHNlc3Npb24tPmNoaWxkX3N0ZG91dCA9IC0xOw0KKyB9DQorIA0KK0BAIC0zOTUs MTEgKzM5NSw3IEBAIGtpbGxfaGVscGVyIChQb2xraXRBZ2VudFNlc3Npb24gKnNlc3Npb24pDQor ICAgICAgIHNlc3Npb24tPmNoaWxkX3N0ZG91dCA9IC0xOw0KKyAgICAgfQ0KKyANCistICBpZiAo c2Vzc2lvbi0+Y2hpbGRfc3RkaW4gIT0gLTEpDQorLSAgICB7DQorLSAgICAgIGdfd2Fybl9pZl9m YWlsIChjbG9zZSAoc2Vzc2lvbi0+Y2hpbGRfc3RkaW4pID09IDApOw0KKy0gICAgICBzZXNzaW9u LT5jaGlsZF9zdGRpbiA9IC0xOw0KKy0gICAgfQ0KKysgIGdfY2xlYXJfb2JqZWN0ICgmc2Vzc2lv bi0+Y2hpbGRfc3RkaW4pOw0KKyANCisgICBzZXNzaW9uLT5oZWxwZXJfaXNfcnVubmluZyA9IEZB TFNFOw0KKyANCitAQCAtNTQ1LDkgKzU0MSw5IEBAIHBvbGtpdF9hZ2VudF9zZXNzaW9uX3Jlc3Bv bnNlIChQb2xraXRBZ2VudFNlc3Npb24gKnNlc3Npb24sDQorIA0KKyAgIGFkZF9uZXdsaW5lID0g KHJlc3BvbnNlW3Jlc3BvbnNlX2xlbl0gIT0gJ1xuJyk7DQorIA0KKy0gIHdyaXRlIChzZXNzaW9u LT5jaGlsZF9zdGRpbiwgcmVzcG9uc2UsIHJlc3BvbnNlX2xlbik7DQorKyAgKHZvaWQpIGdfb3V0 cHV0X3N0cmVhbV93cml0ZV9hbGwgKHNlc3Npb24tPmNoaWxkX3N0ZGluLCByZXNwb25zZSwgcmVz cG9uc2VfbGVuLCBOVUxMLCBOVUxMLCBOVUxMKTsNCisgICBpZiAoYWRkX25ld2xpbmUpDQorLSAg ICB3cml0ZSAoc2Vzc2lvbi0+Y2hpbGRfc3RkaW4sIG5ld2xpbmUsIDEpOw0KKysgICAgKHZvaWQp IGdfb3V0cHV0X3N0cmVhbV93cml0ZV9hbGwgKHNlc3Npb24tPmNoaWxkX3N0ZGluLCBuZXdsaW5l LCAxLCBOVUxMLCBOVUxMLCBOVUxMKTsNCisgfQ0KKyANCisgLyoqDQorQEAgLTU2Nyw4ICs1NjMs OSBAQCBwb2xraXRfYWdlbnRfc2Vzc2lvbl9pbml0aWF0ZSAoUG9sa2l0QWdlbnRTZXNzaW9uICpz ZXNzaW9uKQ0KKyB7DQorICAgdWlkX3QgdWlkOw0KKyAgIEdFcnJvciAqZXJyb3I7DQorLSAgZ2No YXIgKmhlbHBlcl9hcmd2WzRdOw0KKysgIGdjaGFyICpoZWxwZXJfYXJndlszXTsNCisgICBzdHJ1 Y3QgcGFzc3dkICpwYXNzd2Q7DQorKyAgaW50IHN0ZGluX2ZkID0gLTE7DQorIA0KKyAgIGdfcmV0 dXJuX2lmX2ZhaWwgKFBPTEtJVF9BR0VOVF9JU19TRVNTSU9OIChzZXNzaW9uKSk7DQorIA0KK0BA IC02MDAsMTAgKzU5Nyw4IEBAIHBvbGtpdF9hZ2VudF9zZXNzaW9uX2luaXRpYXRlIChQb2xraXRB Z2VudFNlc3Npb24gKnNlc3Npb24pDQorIA0KKyAgIGhlbHBlcl9hcmd2WzBdID0gUEFDS0FHRV9M SUJFWEVDX0RJUiAiL3BvbGtpdC1hZ2VudC1oZWxwZXItMSI7DQorICAgaGVscGVyX2FyZ3ZbMV0g PSBwYXNzd2QtPnB3X25hbWU7DQorLSAgaGVscGVyX2FyZ3ZbMl0gPSBzZXNzaW9uLT5jb29raWU7 DQorLSAgaGVscGVyX2FyZ3ZbM10gPSBOVUxMOw0KKysgIGhlbHBlcl9hcmd2WzJdID0gTlVMTDsN CisgDQorLSAgc2Vzc2lvbi0+Y2hpbGRfc3RkaW4gPSAtMTsNCisgICBzZXNzaW9uLT5jaGlsZF9z dGRvdXQgPSAtMTsNCisgDQorICAgZXJyb3IgPSBOVUxMOw0KK0BAIC02MTUsNyArNjEwLDcgQEAg cG9sa2l0X2FnZW50X3Nlc3Npb25faW5pdGlhdGUgKFBvbGtpdEFnZW50U2Vzc2lvbiAqc2Vzc2lv bikNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwNCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwNCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgJnNlc3Npb24tPmNoaWxkX3BpZCwNCistICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgJnNlc3Npb24tPmNoaWxkX3N0ZGluLA0KKysgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAmc3RkaW5fZmQsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICZzZXNzaW9uLT5jaGlsZF9zdGRvdXQsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIE5VTEwsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZlcnJvcikpDQor QEAgLTYyOCw2ICs2MjMsMTMgQEAgcG9sa2l0X2FnZW50X3Nlc3Npb25faW5pdGlhdGUgKFBvbGtp dEFnZW50U2Vzc2lvbiAqc2Vzc2lvbikNCisgICBpZiAoR19VTkxJS0VMWSAoX3Nob3dfZGVidWcg KCkpKQ0KKyAgICAgZ19wcmludCAoIlBvbGtpdEFnZW50U2Vzc2lvbjogc3Bhd25lZCBoZWxwZXIg d2l0aCBwaWQgJWRcbiIsIChnaW50KSBzZXNzaW9uLT5jaGlsZF9waWQpOw0KKyANCisrICBzZXNz aW9uLT5jaGlsZF9zdGRpbiA9IChHT3V0cHV0U3RyZWFtKilnX3VuaXhfb3V0cHV0X3N0cmVhbV9u ZXcgKHN0ZGluX2ZkLCBUUlVFKTsNCisrDQorKyAgLyogV3JpdGUgdGhlIGNvb2tpZSBvbiBzdGRp biBzbyBpdCBjYW4ndCBiZSBzZWVuIGJ5IG90aGVyIHByb2Nlc3NlcyAqLw0KKysgICh2b2lkKSBn X291dHB1dF9zdHJlYW1fd3JpdGVfYWxsIChzZXNzaW9uLT5jaGlsZF9zdGRpbiwgc2Vzc2lvbi0+ Y29va2llLCBzdHJsZW4gKHNlc3Npb24tPmNvb2tpZSksDQorKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIE5VTEwsIE5VTEwsIE5VTEwpOw0KKysgICh2b2lkKSBnX291dHB1dF9z dHJlYW1fd3JpdGVfYWxsIChzZXNzaW9uLT5jaGlsZF9zdGRpbiwgIlxuIiwgMSwgTlVMTCwgTlVM TCwgTlVMTCk7DQorKw0KKyAgIHNlc3Npb24tPmNoaWxkX3N0ZG91dF9jaGFubmVsID0gZ19pb19j aGFubmVsX3VuaXhfbmV3IChzZXNzaW9uLT5jaGlsZF9zdGRvdXQpOw0KKyAgIHNlc3Npb24tPmNo aWxkX3N0ZG91dF93YXRjaF9zb3VyY2UgPSBnX2lvX2NyZWF0ZV93YXRjaCAoc2Vzc2lvbi0+Y2hp bGRfc3Rkb3V0X2NoYW5uZWwsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBHX0lPX0lOIHwgR19JT19FUlIgfCBHX0lPX0hVUCk7DQor ZGlmZiAtLWdpdCBhL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRpbnRlcmFjdGl2ZWF1 dGhvcml0eS5jIGIvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGludGVyYWN0aXZlYXV0 aG9yaXR5LmMNCitpbmRleCAwMGVlMDQ0Li4xMGVkYTJjIDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xr aXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRpbnRlcmFjdGl2ZWF1dGhvcml0eS5jDQorKysrIGIvc3Jj L3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGludGVyYWN0aXZlYXV0aG9yaXR5LmMNCitAQCAt MjEyLDYgKzIxMiw4IEBAIHR5cGVkZWYgc3RydWN0DQorIA0KKyAgIEdEQnVzQ29ubmVjdGlvbiAq c3lzdGVtX2J1c19jb25uZWN0aW9uOw0KKyAgIGd1aW50IG5hbWVfb3duZXJfY2hhbmdlZF9zaWdu YWxfaWQ7DQorKw0KKysgIGd1aW50NjQgYWdlbnRfc2VyaWFsOw0KKyB9IFBvbGtpdEJhY2tlbmRJ bnRlcmFjdGl2ZUF1dGhvcml0eVByaXZhdGU7DQorIA0KKyAvKiAtLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovDQorQEAgLTQzMCwxMSArNDMyLDE1IEBAIHN0cnVj dCBBdXRoZW50aWNhdGlvbkFnZW50DQorICAgdm9sYXRpbGUgZ2ludCByZWZfY291bnQ7DQorIA0K KyAgIFBvbGtpdFN1YmplY3QgKnNjb3BlOw0KKysgIGd1aW50NjQgc2VyaWFsOw0KKyANCisgICBn Y2hhciAqbG9jYWxlOw0KKyAgIEdWYXJpYW50ICpyZWdpc3RyYXRpb25fb3B0aW9uczsNCisgICBn Y2hhciAqb2JqZWN0X3BhdGg7DQorICAgZ2NoYXIgKnVuaXF1ZV9zeXN0ZW1fYnVzX25hbWU7DQor KyAgR1JhbmQgKmNvb2tpZV9wb29sOw0KKysgIGdjaGFyICpjb29raWVfcHJlZml4Ow0KKysgIGd1 aW50NjQgIGNvb2tpZV9zZXJpYWw7DQorIA0KKyAgIEdEQnVzUHJveHkgKnByb3h5Ow0KKyANCitA QCAtMTQzMCw5ICsxNDM2LDU0IEBAIGF1dGhlbnRpY2F0aW9uX3Nlc3Npb25fY2FuY2VsbGVkX2Ni IChHQ2FuY2VsbGFibGUgKmNhbmNlbGxhYmxlLA0KKyAgIGF1dGhlbnRpY2F0aW9uX3Nlc3Npb25f Y2FuY2VsIChzZXNzaW9uKTsNCisgfQ0KKyANCisrLyogV2UncmUgbm90IGNhbGxpbmcgdGhpcyBh IFVVSUQsIGJ1dCBpdCdzIGJhc2ljYWxseQ0KKysgKiB0aGUgc2FtZSB0aGluZywganVzdCBub3Qg Zm9ybWF0dGVkIHRoYXQgd2F5IGJlY2F1c2U6DQorKyAqDQorKyAqICAtIEknbSB0b28gbGF6eSB0 byBkbyBpdA0KKysgKiAgLSBJZiB3ZSBkaWQsIHBlb3BsZSBtaWdodCB0aGluayBpdCB3YXMgYWN0 dWFsbHkNCisrICogICAgZ2VuZXJhdGVkIGZyb20gL2Rldi9yYW5kb20sIHdoaWNoIHdlJ3JlIG5v dCBkb2luZw0KKysgKiAgICBiZWNhdXNlIHRoaXMgdmFsdWUgZG9lc24ndCBhY3R1YWxseSBuZWVk IHRvIGJlDQorKyAqICAgIGdsb2JhbGx5IHVuaXF1ZS4NCisrICovDQorK3N0YXRpYyB2b2lkDQor K2FwcGVuZF9yYW5kX3UxMjhfc3RyIChHU3RyaW5nICpidWYsDQorKyAgICAgICAgICAgICAgICAg ICAgICBHUmFuZCAgICpwb29sKQ0KKyt7DQorKyAgZ19zdHJpbmdfYXBwZW5kX3ByaW50ZiAoYnVm LCAiJTA4eCUwOHglMDh4JTA4eCIsDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgZ19yYW5k X2ludCAocG9vbCksDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgZ19yYW5kX2ludCAocG9v bCksDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgZ19yYW5kX2ludCAocG9vbCksDQorKyAg ICAgICAgICAgICAgICAgICAgICAgICAgZ19yYW5kX2ludCAocG9vbCkpOw0KKyt9DQorKw0KKysv KiBBIHZhbHVlIHRoYXQgc2hvdWxkIGJlIHVuaXF1ZSB0byB0aGUgKEF1dGhlbnRpY2F0aW9uQWdl bnQsIEF1dGhlbnRpY2F0aW9uU2Vzc2lvbikNCisrICogcGFpciwgYW5kIG5vdCBndWVzc2FibGUg Ynkgb3RoZXIgYWdlbnRzLg0KKysgKg0KKysgKiA8YWdlbnQgc2VyaWFsPiAtIDxhZ2VudCB1dWlk PiAtIDxzZXNzaW9uIHNlcmlhbD4gLSA8c2Vzc2lvbiB1dWlkPg0KKysgKg0KKysgKiBTZWUgaHR0 cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9hcmNoaXZlcy9wb2xraXQtZGV2ZWwvMjAxNS1KdW5l LzAwMDQyNS5odG1sDQorKyAqDQorKyAqLw0KKytzdGF0aWMgZ2NoYXIgKg0KKythdXRoZW50aWNh dGlvbl9hZ2VudF9nZW5lcmF0ZV9jb29raWUgKEF1dGhlbnRpY2F0aW9uQWdlbnQgKmFnZW50KQ0K Kyt7DQorKyAgR1N0cmluZyAqYnVmID0gZ19zdHJpbmdfbmV3ICgiIik7DQorKw0KKysgIGdfc3Ry aW5nX2FwcGVuZCAoYnVmLCBhZ2VudC0+Y29va2llX3ByZWZpeCk7DQorKyAgDQorKyAgZ19zdHJp bmdfYXBwZW5kX2MgKGJ1ZiwgJy0nKTsNCisrICBhZ2VudC0+Y29va2llX3NlcmlhbCsrOw0KKysg IGdfc3RyaW5nX2FwcGVuZF9wcmludGYgKGJ1ZiwgIiUiIEdfR1VJTlQ2NF9GT1JNQVQsIA0KKysg ICAgICAgICAgICAgICAgICAgICAgICAgIGFnZW50LT5jb29raWVfc2VyaWFsKTsNCisrICBnX3N0 cmluZ19hcHBlbmRfYyAoYnVmLCAnLScpOw0KKysgIGFwcGVuZF9yYW5kX3UxMjhfc3RyIChidWYs IGFnZW50LT5jb29raWVfcG9vbCk7DQorKw0KKysgIHJldHVybiBnX3N0cmluZ19mcmVlIChidWYs IEZBTFNFKTsNCisrfQ0KKysNCisrDQorIHN0YXRpYyBBdXRoZW50aWNhdGlvblNlc3Npb24gKg0K KyBhdXRoZW50aWNhdGlvbl9zZXNzaW9uX25ldyAoQXV0aGVudGljYXRpb25BZ2VudCAgICAgICAg ICphZ2VudCwNCistICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGdjaGFyICAgICAg ICAgICAgICAgICAqY29va2llLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUG9sa2l0 U3ViamVjdCAgICAgICAgICAgICAgICpzdWJqZWN0LA0KKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgUG9sa2l0SWRlbnRpdHkgICAgICAgICAgICAgICp1c2VyX29mX3N1YmplY3QsDQorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBQb2xraXRTdWJqZWN0ICAgICAgICAgICAgICAgKmNh bGxlciwNCitAQCAtMTQ0OSw3ICsxNTAwLDcgQEAgYXV0aGVudGljYXRpb25fc2Vzc2lvbl9uZXcg KEF1dGhlbnRpY2F0aW9uQWdlbnQgICAgICAgICAqYWdlbnQsDQorIA0KKyAgIHNlc3Npb24gPSBn X25ldzAgKEF1dGhlbnRpY2F0aW9uU2Vzc2lvbiwgMSk7DQorICAgc2Vzc2lvbi0+YWdlbnQgPSBh dXRoZW50aWNhdGlvbl9hZ2VudF9yZWYgKGFnZW50KTsNCistICBzZXNzaW9uLT5jb29raWUgPSBn X3N0cmR1cCAoY29va2llKTsNCisrICBzZXNzaW9uLT5jb29raWUgPSBhdXRoZW50aWNhdGlvbl9h Z2VudF9nZW5lcmF0ZV9jb29raWUgKGFnZW50KTsNCisgICBzZXNzaW9uLT5zdWJqZWN0ID0gZ19v YmplY3RfcmVmIChzdWJqZWN0KTsNCisgICBzZXNzaW9uLT51c2VyX29mX3N1YmplY3QgPSBnX29i amVjdF9yZWYgKHVzZXJfb2Zfc3ViamVjdCk7DQorICAgc2Vzc2lvbi0+Y2FsbGVyID0gZ19vYmpl Y3RfcmVmIChjYWxsZXIpOw0KK0BAIC0xNDk2LDE2ICsxNTQ3LDYgQEAgYXV0aGVudGljYXRpb25f c2Vzc2lvbl9mcmVlIChBdXRoZW50aWNhdGlvblNlc3Npb24gKnNlc3Npb24pDQorICAgZ19mcmVl IChzZXNzaW9uKTsNCisgfQ0KKyANCistc3RhdGljIGdjaGFyICoNCistYXV0aGVudGljYXRpb25f YWdlbnRfbmV3X2Nvb2tpZSAoQXV0aGVudGljYXRpb25BZ2VudCAqYWdlbnQpDQorLXsNCistICBz dGF0aWMgZ2ludCBjb3VudGVyID0gMDsNCistDQorLSAgLyogVE9ETzogdXNlIGEgbW9yZSByYW5k b20tbG9va2luZyBjb29raWUgKi8NCistDQorLSAgcmV0dXJuIGdfc3RyZHVwX3ByaW50ZiAoImNv b2tpZSVkIiwgY291bnRlcisrKTsNCistfQ0KKy0NCisgc3RhdGljIFBvbGtpdFN1YmplY3QgKg0K KyBhdXRoZW50aWNhdGlvbl9hZ2VudF9nZXRfc2NvcGUgKEF1dGhlbnRpY2F0aW9uQWdlbnQgKmFn ZW50KQ0KKyB7DQorQEAgLTE1NTMsMTIgKzE1OTQsMTUgQEAgYXV0aGVudGljYXRpb25fYWdlbnRf dW5yZWYgKEF1dGhlbnRpY2F0aW9uQWdlbnQgKmFnZW50KQ0KKyAgICAgICBnX2ZyZWUgKGFnZW50 LT51bmlxdWVfc3lzdGVtX2J1c19uYW1lKTsNCisgICAgICAgaWYgKGFnZW50LT5yZWdpc3RyYXRp b25fb3B0aW9ucyAhPSBOVUxMKQ0KKyAgICAgICAgIGdfdmFyaWFudF91bnJlZiAoYWdlbnQtPnJl Z2lzdHJhdGlvbl9vcHRpb25zKTsNCisrICAgICAgZ19yYW5kX2ZyZWUgKGFnZW50LT5jb29raWVf cG9vbCk7DQorKyAgICAgIGdfZnJlZSAoYWdlbnQtPmNvb2tpZV9wcmVmaXgpOw0KKyAgICAgICBn X2ZyZWUgKGFnZW50KTsNCisgICAgIH0NCisgfQ0KKyANCisgc3RhdGljIEF1dGhlbnRpY2F0aW9u QWdlbnQgKg0KKy1hdXRoZW50aWNhdGlvbl9hZ2VudF9uZXcgKFBvbGtpdFN1YmplY3QgKnNjb3Bl LA0KKythdXRoZW50aWNhdGlvbl9hZ2VudF9uZXcgKGd1aW50NjQgICAgICBzZXJpYWwsDQorKyAg ICAgICAgICAgICAgICAgICAgICAgICAgUG9sa2l0U3ViamVjdCAqc2NvcGUsDQorICAgICAgICAg ICAgICAgICAgICAgICAgICAgY29uc3QgZ2NoYXIgKnVuaXF1ZV9zeXN0ZW1fYnVzX25hbWUsDQor ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2NoYXIgKmxvY2FsZSwNCisgICAgICAg ICAgICAgICAgICAgICAgICAgICBjb25zdCBnY2hhciAqb2JqZWN0X3BhdGgsDQorQEAgLTE1OTIs NiArMTYzNiw3IEBAIGF1dGhlbnRpY2F0aW9uX2FnZW50X25ldyAoUG9sa2l0U3ViamVjdCAqc2Nv cGUsDQorIA0KKyAgIGFnZW50ID0gZ19uZXcwIChBdXRoZW50aWNhdGlvbkFnZW50LCAxKTsNCisg ICBhZ2VudC0+cmVmX2NvdW50ID0gMTsNCisrICBhZ2VudC0+c2VyaWFsID0gc2VyaWFsOw0KKyAg IGFnZW50LT5zY29wZSA9IGdfb2JqZWN0X3JlZiAoc2NvcGUpOw0KKyAgIGFnZW50LT5vYmplY3Rf cGF0aCA9IGdfc3RyZHVwIChvYmplY3RfcGF0aCk7DQorICAgYWdlbnQtPnVuaXF1ZV9zeXN0ZW1f YnVzX25hbWUgPSBnX3N0cmR1cCAodW5pcXVlX3N5c3RlbV9idXNfbmFtZSk7DQorQEAgLTE1OTks NiArMTY0NCwyNSBAQCBhdXRoZW50aWNhdGlvbl9hZ2VudF9uZXcgKFBvbGtpdFN1YmplY3QgKnNj b3BlLA0KKyAgIGFnZW50LT5yZWdpc3RyYXRpb25fb3B0aW9ucyA9IHJlZ2lzdHJhdGlvbl9vcHRp b25zICE9IE5VTEwgPyBnX3ZhcmlhbnRfcmVmIChyZWdpc3RyYXRpb25fb3B0aW9ucykgOiBOVUxM Ow0KKyAgIGFnZW50LT5wcm94eSA9IHByb3h5Ow0KKyANCisrICB7DQorKyAgICBHU3RyaW5nICpj b29raWVfcHJlZml4ID0gZ19zdHJpbmdfbmV3ICgiIik7DQorKyAgICBHUmFuZCAqYWdlbnRfcHJp dmF0ZV9yYW5kID0gZ19yYW5kX25ldyAoKTsNCisrDQorKyAgICBnX3N0cmluZ19hcHBlbmRfcHJp bnRmIChjb29raWVfcHJlZml4LCAiJSIgR19HVUlOVDY0X0ZPUk1BVCAiLSIsIGFnZW50LT5zZXJp YWwpOw0KKysNCisrICAgIC8qIFVzZSBhIHVuaXF1ZWx5IHNlZWRlZCBQUk5HIHRvIGdldCBhIHBy ZWZpeCBjb29raWUgZm9yIHRoaXMgYWdlbnQsDQorKyAgICAgKiB3aG9zZSBzZXF1ZW5jZSB3aWxs IG5vdCBjb3JyZWxhdGUgd2l0aCB0aGUgcGVyLWF1dGhlbnRpY2F0aW9uIHNlc3Npb24NCisrICAg ICAqIGNvb2tpZXMuDQorKyAgICAgKi8NCisrICAgIGFwcGVuZF9yYW5kX3UxMjhfc3RyIChjb29r aWVfcHJlZml4LCBhZ2VudF9wcml2YXRlX3JhbmQpOw0KKysgICAgZ19yYW5kX2ZyZWUgKGFnZW50 X3ByaXZhdGVfcmFuZCk7DQorKw0KKysgICAgYWdlbnQtPmNvb2tpZV9wcmVmaXggPSBnX3N0cmlu Z19mcmVlIChjb29raWVfcHJlZml4LCBGQUxTRSk7DQorKyAgICANCisrICAgIC8qIEFuZCBhIG5l d2x5IHNlZWRlZCBwb29sIGZvciBwZXItc2Vzc2lvbiBjb29raWVzICovDQorKyAgICBhZ2VudC0+ Y29va2llX3Bvb2wgPSBnX3JhbmRfbmV3ICgpOw0KKysgIH0NCisrDQorICAgcmV0dXJuIGFnZW50 Ow0KKyB9DQorIA0KK0BAIC0yMDgzLDcgKzIxNDcsNiBAQCBhdXRoZW50aWNhdGlvbl9hZ2VudF9p bml0aWF0ZV9jaGFsbGVuZ2UgKEF1dGhlbnRpY2F0aW9uQWdlbnQgICAgICAgICAqYWdlbnQsDQor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3BvaW50ZXIgICAgICAg ICAgICAgICAgICAgICB1c2VyX2RhdGEpDQorIHsNCisgICBBdXRoZW50aWNhdGlvblNlc3Npb24g KnNlc3Npb247DQorLSAgZ2NoYXIgKmNvb2tpZTsNCisgICBHTGlzdCAqbDsNCisgICBHTGlzdCAq aWRlbnRpdGllczsNCisgICBnY2hhciAqbG9jYWxpemVkX21lc3NhZ2U7DQorQEAgLTIxMDQsOCAr MjE2Nyw2IEBAIGF1dGhlbnRpY2F0aW9uX2FnZW50X2luaXRpYXRlX2NoYWxsZW5nZSAoQXV0aGVu dGljYXRpb25BZ2VudCAgICAgICAgICphZ2VudCwNCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgJmxvY2FsaXplZF9pY29uX25hbWUsDQorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICZsb2NhbGl6ZWRfZGV0YWlscyk7DQorIA0KKy0gIGNvb2tpZSA9IGF1 dGhlbnRpY2F0aW9uX2FnZW50X25ld19jb29raWUgKGFnZW50KTsNCistDQorICAgaWRlbnRpdGll cyA9IE5VTEw7DQorIA0KKyAgIC8qIHNlbGVjdCBhZG1pbiB1c2VyIGlmIHJlcXVpcmVkIGJ5IHRo ZSBpbXBsaWNpdCBhdXRob3JpemF0aW9uICovDQorQEAgLTIxMjUsNyArMjE4Niw2IEBAIGF1dGhl bnRpY2F0aW9uX2FnZW50X2luaXRpYXRlX2NoYWxsZW5nZSAoQXV0aGVudGljYXRpb25BZ2VudCAg ICAgICAgICphZ2VudCwNCisgICAgIH0NCisgDQorICAgc2Vzc2lvbiA9IGF1dGhlbnRpY2F0aW9u X3Nlc3Npb25fbmV3IChhZ2VudCwNCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGNvb2tpZSwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHN1YmplY3QsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2Vy X29mX3N1YmplY3QsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj YWxsZXIsDQorQEAgLTIxNzksNyArMjIzOSw2IEBAIGF1dGhlbnRpY2F0aW9uX2FnZW50X2luaXRp YXRlX2NoYWxsZW5nZSAoQXV0aGVudGljYXRpb25BZ2VudCAgICAgICAgICphZ2VudCwNCisgDQor ICAgZ19saXN0X2ZvcmVhY2ggKGlkZW50aXRpZXMsIChHRnVuYykgZ19vYmplY3RfdW5yZWYsIE5V TEwpOw0KKyAgIGdfbGlzdF9mcmVlIChpZGVudGl0aWVzKTsNCistICBnX2ZyZWUgKGNvb2tpZSk7 DQorIA0KKyAgIGdfZnJlZSAobG9jYWxpemVkX21lc3NhZ2UpOw0KKyAgIGdfZnJlZSAobG9jYWxp emVkX2ljb25fbmFtZSk7DQorQEAgLTIzMjYsNyArMjM4NSw5IEBAIHBvbGtpdF9iYWNrZW5kX2lu dGVyYWN0aXZlX2F1dGhvcml0eV9yZWdpc3Rlcl9hdXRoZW50aWNhdGlvbl9hZ2VudCAoUG9sa2l0 QmFja2VuDQorICAgICAgIGdvdG8gb3V0Ow0KKyAgICAgfQ0KKyANCistICBhZ2VudCA9IGF1dGhl bnRpY2F0aW9uX2FnZW50X25ldyAoc3ViamVjdCwNCisrICBwcml2LT5hZ2VudF9zZXJpYWwrKzsN CisrICBhZ2VudCA9IGF1dGhlbnRpY2F0aW9uX2FnZW50X25ldyAocHJpdi0+YWdlbnRfc2VyaWFs LA0KKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdWJqZWN0LA0KKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb2xraXRfc3lzdGVtX2J1c19uYW1lX2dl dF9uYW1lIChQT0xLSVRfU1lTVEVNX0JVU19OQU1FIChjYWxsZXIpKSwNCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgbG9jYWxlLA0KKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBvYmplY3RfcGF0aCwNCmRpZmYgLS1naXQgYS9wYXRjaGVzL3BvbGtpdC0w LjEwNS8wLjExMy9Eb24tdC1kaXNjYXJkLWVycm9yLWRhdGEtcmV0dXJuZWQtYnktcG9sa2l0X3N5 c3RlbV9iLnBhdGNoIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvRG9uLXQtZGlzY2FyZC1l cnJvci1kYXRhLXJldHVybmVkLWJ5LXBvbGtpdF9zeXN0ZW1fYi5wYXRjaA0KbmV3IGZpbGUgbW9k ZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMC4uMGViN2VjMTY0DQotLS0gL2Rldi9udWxsDQorKysg Yi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9Eb24tdC1kaXNjYXJkLWVycm9yLWRhdGEtcmV0 dXJuZWQtYnktcG9sa2l0X3N5c3RlbV9iLnBhdGNoDQpAQCAtMCwwICsxLDI1IEBADQorRnJvbTog PT91dGYtOD9xP01pbG9zbGF2X1RybWE9QzQ9OEQ/PSA8bWl0ckByZWRoYXQuY29tPg0KK0RhdGU6 IE1vbiwgMTEgTm92IDIwMTMgMjM6NTE6MjMgKzAxMDANCitTdWJqZWN0OiBEb24ndCBkaXNjYXJk IGVycm9yIGRhdGEgcmV0dXJuZWQgYnkNCisgcG9sa2l0X3N5c3RlbV9idXNfbmFtZV9nZXRfdXNl cl9zeW5jDQorDQorQnVnOiBodHRwczovL2J1Z3MuZnJlZWRlc2t0b3Aub3JnL3Nob3dfYnVnLmNn aT9pZD03MTQ1OA0KK09yaWdpbjogdXBzdHJlYW0sIDAuMTEzLCBjb21taXQ6IDE0NWQ0M2I5Yzg5 MWYyNDhhZDY4ZWJlNTk3Y2IxNTFhODY1YmRiM2ENCitCdWctRGViaWFuOiBodHRwczovL2J1Z3Mu ZGViaWFuLm9yZy83OTg3NjkNCistLS0NCisgc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2Vu ZHNlc3Npb25tb25pdG9yLmMgfCAyICstDQorIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigr KSwgMSBkZWxldGlvbigtKQ0KKw0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0YmFja2VuZC9wb2xr aXRiYWNrZW5kc2Vzc2lvbm1vbml0b3IuYyBiL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tl bmRzZXNzaW9ubW9uaXRvci5jDQoraW5kZXggMDVmNTFjNS4uZTFhOWFiMyAxMDA2NDQNCistLS0g YS9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kc2Vzc2lvbm1vbml0b3IuYw0KKysrKyBi L3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRzZXNzaW9ubW9uaXRvci5jDQorQEAgLTMw Niw3ICszMDYsNyBAQCBwb2xraXRfYmFja2VuZF9zZXNzaW9uX21vbml0b3JfZ2V0X3VzZXJfZm9y X3N1YmplY3QgKFBvbGtpdEJhY2tlbmRTZXNzaW9uTW9uaXRvcg0KKyAgICAgfQ0KKyAgIGVsc2Ug aWYgKFBPTEtJVF9JU19TWVNURU1fQlVTX05BTUUgKHN1YmplY3QpKQ0KKyAgICAgew0KKy0gICAg ICByZXQgPSAoUG9sa2l0SWRlbnRpdHkqKXBvbGtpdF9zeXN0ZW1fYnVzX25hbWVfZ2V0X3VzZXJf c3luYyAoUE9MS0lUX1NZU1RFTV9CVVNfTkFNRSAoc3ViamVjdCksIE5VTEwsIE5VTEwpOw0KKysg ICAgICByZXQgPSAoUG9sa2l0SWRlbnRpdHkqKXBvbGtpdF9zeXN0ZW1fYnVzX25hbWVfZ2V0X3Vz ZXJfc3luYyAoUE9MS0lUX1NZU1RFTV9CVVNfTkFNRSAoc3ViamVjdCksIE5VTEwsIGVycm9yKTsN CisgICAgIH0NCisgICBlbHNlIGlmIChQT0xLSVRfSVNfVU5JWF9TRVNTSU9OIChzdWJqZWN0KSkN CisgICAgIHsNCmRpZmYgLS1naXQgYS9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9GaXgtYS1j cmFzaC13aGVuLXR3by1hdXRoZW50aWNhdGlvbi1yZXF1ZXN0cy1hcmUtaW4tLnBhdGNoIGIvcGF0 Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvRml4LWEtY3Jhc2gtd2hlbi10d28tYXV0aGVudGljYXRp b24tcmVxdWVzdHMtYXJlLWluLS5wYXRjaA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAw MDAwMDAwMC4uZWU0NDUzMWQwDQotLS0gL2Rldi9udWxsDQorKysgYi9wYXRjaGVzL3BvbGtpdC0w LjEwNS8wLjExMy9GaXgtYS1jcmFzaC13aGVuLXR3by1hdXRoZW50aWNhdGlvbi1yZXF1ZXN0cy1h cmUtaW4tLnBhdGNoDQpAQCAtMCwwICsxLDM2IEBADQorRnJvbTogPT91dGYtOD9xP01pbG9zbGF2 X1RybWE9QzQ9OEQ/PSA8bWl0ckByZWRoYXQuY29tPg0KK0RhdGU6IFNhdCwgNiBKdW4gMjAxNSAw MTowNzowOCArMDIwMA0KK1N1YmplY3Q6IEZpeCBhIGNyYXNoIHdoZW4gdHdvIGF1dGhlbnRpY2F0 aW9uIHJlcXVlc3RzIGFyZSBpbiBmbGlnaHQuDQorDQorVG8gcmVwcm9kdWNlOg0KKzEuIHBrdHR5 YWdlbnQgLXAgJCQgIyBvciBhbm90aGVyIHN1aXRhYmxlIFBJRA0KKzIuIHBrY2hlY2sgLXAgJHRo YXRfcGlkIC1hIG9yZy5mcmVlZGVza3RvcC5wb2xpY3lraXQuZXhlYyAtdQ0KKzMuIHBrY2hlY2sg LXAgJHRoYXRfcGlkIC1hIG9yZy5mcmVlZGVza3RvcC5wb2xpY3lraXQuZXhlYyAtdQ0KKzQuIFRo ZW4sIGluIHRoZSBwa3R0eWFnZW50IHByb21wdCwgcHJlc3MgRW50ZXIuDQorDQorcG9sa2l0X2Fn ZW50X3RleHRfbGlzdGVuZXJfaW5pdGlhdGVfYXV0aGVudGljYXRpb24gd2FzIGFscmVhZHkgc2V0 dGluZw0KK2FuIGFwcHJvcHJpYXRlIGVycm9yIGNvZGUsIHNvIHRoZSBnX2Fzc2VydCB3YXMgdW5u ZWNlc3NhcnkuDQorDQorQnVnOiBodHRwczovL2J1Z3MuZnJlZWRlc2t0b3Aub3JnL3Nob3dfYnVn LmNnaT9pZD05MDg3OQ0KK09yaWdpbjogdXBzdHJlYW0sIDAuMTEzLCBjb21taXQ6ZTJkMmZhZmQx MDY2MjRkZGZlYTRiMTdkM2Y0MDcwNGIyMDMxYzAwYg0KKy0tLQ0KKyBzcmMvcG9sa2l0YWdlbnQv cG9sa2l0YWdlbnR0ZXh0bGlzdGVuZXIuYyB8IDIgLS0NCisgMSBmaWxlIGNoYW5nZWQsIDIgZGVs ZXRpb25zKC0pDQorDQorZGlmZiAtLWdpdCBhL3NyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudHRl eHRsaXN0ZW5lci5jIGIvc3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50dGV4dGxpc3RlbmVyLmMN CitpbmRleCBiNWM4YTNmLi5lNjNjMjg1IDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xraXRhZ2VudC9w b2xraXRhZ2VudHRleHRsaXN0ZW5lci5jDQorKysrIGIvc3JjL3BvbGtpdGFnZW50L3BvbGtpdGFn ZW50dGV4dGxpc3RlbmVyLmMNCitAQCAtNTQ2LDEyICs1NDYsMTAgQEAgcG9sa2l0X2FnZW50X3Rl eHRfbGlzdGVuZXJfaW5pdGlhdGVfYXV0aGVudGljYXRpb25fZmluaXNoIChQb2xraXRBZ2VudExp c3RlbmVyDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgR0FzeW5jUmVzdWx0ICAgICAgICAgKnJlcywNCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHRXJyb3IgICAgICAg ICAgICAgICoqZXJyb3IpDQorIHsNCistICBQb2xraXRBZ2VudFRleHRMaXN0ZW5lciAqbGlzdGVu ZXIgPSBQT0xLSVRfQUdFTlRfVEVYVF9MSVNURU5FUiAoX2xpc3RlbmVyKTsNCisgICBnYm9vbGVh biByZXQ7DQorIA0KKyAgIGdfd2Fybl9pZl9mYWlsIChnX3NpbXBsZV9hc3luY19yZXN1bHRfZ2V0 X3NvdXJjZV90YWcgKEdfU0lNUExFX0FTWU5DX1JFU1VMVCAocmVzKSkgPT0NCisgICAgICAgICAg ICAgICAgICAgcG9sa2l0X2FnZW50X3RleHRfbGlzdGVuZXJfaW5pdGlhdGVfYXV0aGVudGljYXRp b24pOw0KKy0gIGdfYXNzZXJ0IChsaXN0ZW5lci0+YWN0aXZlX3Nlc3Npb24gPT0gTlVMTCk7DQor IA0KKyAgIHJldCA9IEZBTFNFOw0KKyANCmRpZmYgLS1naXQgYS9wYXRjaGVzL3BvbGtpdC0wLjEw NS8wLjExMy9GaXgtYS1tZW1vcnktbGVhay13aGVuLXJlZ2lzdGVyaW5nLWFuLWF1dGhlbnRpY2F0 aW9uLnBhdGNoIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvRml4LWEtbWVtb3J5LWxlYWst d2hlbi1yZWdpc3RlcmluZy1hbi1hdXRoZW50aWNhdGlvbi5wYXRjaA0KbmV3IGZpbGUgbW9kZSAx MDA2NDQNCmluZGV4IDAwMDAwMDAwMC4uYjdmZGNmNDY2DQotLS0gL2Rldi9udWxsDQorKysgYi9w YXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9GaXgtYS1tZW1vcnktbGVhay13aGVuLXJlZ2lzdGVy aW5nLWFuLWF1dGhlbnRpY2F0aW9uLnBhdGNoDQpAQCAtMCwwICsxLDIyIEBADQorRnJvbTogPT91 dGYtOD9xP01pbG9zbGF2X1RybWE9QzQ9OEQ/PSA8bWl0ckByZWRoYXQuY29tPg0KK0RhdGU6IFR1 ZSwgMSBKdWwgMjAxNCAyMDowMDo0OCArMDIwMA0KK1N1YmplY3Q6IEZpeCBhIG1lbW9yeSBsZWFr IHdoZW4gcmVnaXN0ZXJpbmcgYW4gYXV0aGVudGljYXRpb24gYWdlbnQNCisNCitCdWc6IGh0dHBz Oi8vYnVncy5mcmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTY5NTAxDQorT3JpZ2luOiB1 cHN0cmVhbSwgMC4xMTMsIGNvbW1pdDplYzAzOWY5ZDdlZGU1YjgzOWY1NTExZTI2ZDVjZDZhZTkx MDdjYjJlDQorLS0tDQorIHNyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRhdXRob3JpdHku YyB8IDEgKw0KKyAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKykNCisNCitkaWZmIC0tZ2l0 IGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGF1dGhvcml0eS5jIGIvc3JjL3BvbGtp dGJhY2tlbmQvcG9sa2l0YmFja2VuZGF1dGhvcml0eS5jDQoraW5kZXggMzllYjViOS4uYWZlNWI5 MCAxMDA2NDQNCistLS0gYS9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kYXV0aG9yaXR5 LmMNCisrKysgYi9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kYXV0aG9yaXR5LmMNCitA QCAtOTAwLDYgKzkwMCw3IEBAIHNlcnZlcl9oYW5kbGVfcmVnaXN0ZXJfYXV0aGVudGljYXRpb25f YWdlbnQgKFNlcnZlciAgICAgICAgICAgICAgICAgKnNlcnZlciwNCisgICBnX2RidXNfbWV0aG9k X2ludm9jYXRpb25fcmV0dXJuX3ZhbHVlIChpbnZvY2F0aW9uLCBnX3ZhcmlhbnRfbmV3ICgiKCki KSk7DQorIA0KKyAgb3V0Og0KKysgIGdfdmFyaWFudF91bnJlZiAoc3ViamVjdF9ndmFyaWFudCk7 DQorICAgaWYgKHN1YmplY3QgIT0gTlVMTCkNCisgICAgIGdfb2JqZWN0X3VucmVmIChzdWJqZWN0 KTsNCisgfQ0KZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL0ZpeC1hLXBl ci1hdXRob3JpemF0aW9uLW1lbW9yeS1sZWFrLnBhdGNoIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUv MC4xMTMvRml4LWEtcGVyLWF1dGhvcml6YXRpb24tbWVtb3J5LWxlYWsucGF0Y2gNCm5ldyBmaWxl IG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAuLmVhYWZlZDY0NA0KLS0tIC9kZXYvbnVsbA0K KysrIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvRml4LWEtcGVyLWF1dGhvcml6YXRpb24t bWVtb3J5LWxlYWsucGF0Y2gNCkBAIC0wLDAgKzEsNDkgQEANCitGcm9tOiA9P3V0Zi04P3E/TWls b3NsYXZfVHJtYT1DND04RD89IDxtaXRyQHJlZGhhdC5jb20+DQorRGF0ZTogVHVlLCAxIEp1bCAy MDE0IDIwOjAwOjQ4ICswMjAwDQorU3ViamVjdDogRml4IGEgcGVyLWF1dGhvcml6YXRpb24gbWVt b3J5IGxlYWsNCisNCitXZSB3ZXJlIGxlYWtpbmcgUG9sa2l0QXV0aG9yaXphdGlvblJlc3VsdCBv biBldmVyeSByZXF1ZXN0LCBwcmltYXJpbHkgb24NCit0aGUgc3VjY2VzcyBwYXRoLCBidXQgYWxz byBvbiB2YXJpb3VzIGVycm9yIHBhdGhzIGFzIHdlbGwuDQorDQorQnVnOiBodHRwczovL2J1Z3Mu ZnJlZWRlc2t0b3Aub3JnL3Nob3dfYnVnLmNnaT9pZD02OTUwMQ0KK09yaWdpbjogdXBzdHJlYW0s IDAuMTEzLCBjb21taXQ6MGY1ODUyYTRiZGFiZTM3N2RkY2RiZWQwOWEwYzFmOTU3MTBlMTdmZQ0K Ky0tLQ0KKyBzcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kYXV0aG9yaXR5LmMgICAgICAg ICAgICB8IDEgKw0KKyBzcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kaW50ZXJhY3RpdmVh dXRob3JpdHkuYyB8IDUgKysrKy0NCisgMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyks IDEgZGVsZXRpb24oLSkNCisNCitkaWZmIC0tZ2l0IGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0 YmFja2VuZGF1dGhvcml0eS5jIGIvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGF1dGhv cml0eS5jDQoraW5kZXggMTBiOGFmMy4uMzllYjViOSAxMDA2NDQNCistLS0gYS9zcmMvcG9sa2l0 YmFja2VuZC9wb2xraXRiYWNrZW5kYXV0aG9yaXR5LmMNCisrKysgYi9zcmMvcG9sa2l0YmFja2Vu ZC9wb2xraXRiYWNrZW5kYXV0aG9yaXR5LmMNCitAQCAtNzE0LDYgKzcxNCw3IEBAIGNoZWNrX2F1 dGhfY2IgKEdPYmplY3QgICAgICAqc291cmNlX29iamVjdCwNCisgICAgICAgZ192YXJpYW50X3Jl Zl9zaW5rICh2YWx1ZSk7DQorICAgICAgIGdfZGJ1c19tZXRob2RfaW52b2NhdGlvbl9yZXR1cm5f dmFsdWUgKGRhdGEtPmludm9jYXRpb24sIGdfdmFyaWFudF9uZXcgKCIoQChiYmF7c3N9KSkiLCB2 YWx1ZSkpOw0KKyAgICAgICBnX3ZhcmlhbnRfdW5yZWYgKHZhbHVlKTsNCisrICAgICAgZ19vYmpl Y3RfdW5yZWYgKHJlc3VsdCk7DQorICAgICB9DQorIA0KKyAgIGNoZWNrX2F1dGhfZGF0YV9mcmVl IChkYXRhKTsNCitkaWZmIC0tZ2l0IGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGlu dGVyYWN0aXZlYXV0aG9yaXR5LmMgYi9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kaW50 ZXJhY3RpdmVhdXRob3JpdHkuYw0KK2luZGV4IDVlMjlhZjIuLjczZDBhMGUgMTAwNjQ0DQorLS0t IGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGludGVyYWN0aXZlYXV0aG9yaXR5LmMN CisrKysgYi9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kaW50ZXJhY3RpdmVhdXRob3Jp dHkuYw0KK0BAIC0xMDE1LDcgKzEwMTUsNyBAQCBwb2xraXRfYmFja2VuZF9pbnRlcmFjdGl2ZV9h dXRob3JpdHlfY2hlY2tfYXV0aG9yaXphdGlvbiAoUG9sa2l0QmFja2VuZEF1dGhvcml0eQ0KKyAN CisgICAvKiBPdGhlcndpc2UganVzdCByZXR1cm4gdGhlIHJlc3VsdCAqLw0KKyAgIGdfc2ltcGxl X2FzeW5jX3Jlc3VsdF9zZXRfb3BfcmVzX2dwb2ludGVyIChzaW1wbGUsDQorLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdCwNCisrICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ19vYmplY3RfcmVmIChyZXN1bHQpLA0K KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnX29iamVjdF91 bnJlZik7DQorICAgZ19zaW1wbGVfYXN5bmNfcmVzdWx0X2NvbXBsZXRlIChzaW1wbGUpOw0KKyAg IGdfb2JqZWN0X3VucmVmIChzaW1wbGUpOw0KK0BAIC0xMDMyLDYgKzEwMzIsOSBAQCBwb2xraXRf YmFja2VuZF9pbnRlcmFjdGl2ZV9hdXRob3JpdHlfY2hlY2tfYXV0aG9yaXphdGlvbiAoUG9sa2l0 QmFja2VuZEF1dGhvcml0eQ0KKyAgIGdfZnJlZSAoc3ViamVjdF9zdHIpOw0KKyAgIGdfZnJlZSAo dXNlcl9vZl9jYWxsZXJfc3RyKTsNCisgICBnX2ZyZWUgKHVzZXJfb2Zfc3ViamVjdF9zdHIpOw0K KysNCisrICBpZiAocmVzdWx0ICE9IE5VTEwpDQorKyAgICBnX29iamVjdF91bnJlZiAocmVzdWx0 KTsNCisgfQ0KKyANCisgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSAqLw0KZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL0ZpeC1hLXBv c3NpYmxlLU5VTEwtZGVyZWZlcmVuY2UucGF0Y2ggYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjEx My9GaXgtYS1wb3NzaWJsZS1OVUxMLWRlcmVmZXJlbmNlLnBhdGNoDQpuZXcgZmlsZSBtb2RlIDEw MDY0NA0KaW5kZXggMDAwMDAwMDAwLi5iYTY4NWViOWUNCi0tLSAvZGV2L251bGwNCisrKyBiL3Bh dGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL0ZpeC1hLXBvc3NpYmxlLU5VTEwtZGVyZWZlcmVuY2Uu cGF0Y2gNCkBAIC0wLDAgKzEsMzUgQEANCitGcm9tOiA9P3V0Zi04P3E/TWlsb3NsYXZfVHJtYT1D ND04RD89IDxtaXRyQHJlZGhhdC5jb20+DQorRGF0ZTogV2VkLCAxMSBKdW4gMjAxNCAyMjozNjo1 MCArMDIwMA0KK1N1YmplY3Q6IEZpeCBhIHBvc3NpYmxlIE5VTEwgZGVyZWZlcmVuY2UuDQorTUlN RS1WZXJzaW9uOiAxLjANCitDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9InV0Zi04 Ig0KK0NvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQNCisNCitwb2xraXRfYmFja2VuZF9z ZXNzaW9uX21vbml0b3JfZ2V0X3VzZXJfZm9yX3N1YmplY3QoKSBtYXkgcmV0dXJuIE5VTEwNCiso YW5kIGJlY2F1c2UgaXQgaXMgdXNpbmcgZXh0ZXJuYWwgcHJvY2Vzc2VzLCB3ZSBjYW7igJl0IHJl YWxseSBydWxlIGl0DQorb3V0KS4gIFRoZSBjb2RlIHdhcyBhbHJlYWR5IGFudGljaXBhdGluZyBO VUxMIGluIHRoZSBjbGVhbnVwIHNlY3Rpb24sIHNvDQoraGFuZGxlIGl0IGFsc28gd2hlbiBhY3R1 YWxseSB1c2luZyB0aGUgdmFsdWUuDQorDQorQnVnOiBodHRwczovL2J1Z3MuZnJlZWRlc2t0b3Au b3JnL3Nob3dfYnVnLmNnaT9pZD04MDc2Nw0KK09yaWdpbjogdXBzdHJlYW0sIDAuMTEzLCBjb21t aXQ6NjEwOTU0MzMwM2RlZjM2N2I4NGVhYWM5N2QyZmY5Y2VmZTczNWVmYg0KKy0tLQ0KKyBzcmMv cG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kaW50ZXJhY3RpdmVhdXRob3JpdHkuYyB8IDYgKysr KystDQorIDEgZmlsZSBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkNCisN CitkaWZmIC0tZ2l0IGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGludGVyYWN0aXZl YXV0aG9yaXR5LmMgYi9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kaW50ZXJhY3RpdmVh dXRob3JpdHkuYw0KK2luZGV4IDI1ZTEzZmIuLjAwZWUwNDQgMTAwNjQ0DQorLS0tIGEvc3JjL3Bv bGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGludGVyYWN0aXZlYXV0aG9yaXR5LmMNCisrKysgYi9z cmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kaW50ZXJhY3RpdmVhdXRob3JpdHkuYw0KK0BA IC01NTcsNyArNTU3LDExIEBAIGxvZ19yZXN1bHQgKFBvbGtpdEJhY2tlbmRJbnRlcmFjdGl2ZUF1 dGhvcml0eSAgICAqYXV0aG9yaXR5LA0KKyAgIHVzZXJfb2Zfc3ViamVjdCA9IHBvbGtpdF9iYWNr ZW5kX3Nlc3Npb25fbW9uaXRvcl9nZXRfdXNlcl9mb3Jfc3ViamVjdCAocHJpdi0+c2Vzc2lvbl9t b25pdG9yLCBzdWJqZWN0LCBOVUxMKTsNCisgDQorICAgc3ViamVjdF9zdHIgPSBwb2xraXRfc3Vi amVjdF90b19zdHJpbmcgKHN1YmplY3QpOw0KKy0gIHVzZXJfb2Zfc3ViamVjdF9zdHIgPSBwb2xr aXRfaWRlbnRpdHlfdG9fc3RyaW5nICh1c2VyX29mX3N1YmplY3QpOw0KKysNCisrICBpZiAodXNl cl9vZl9zdWJqZWN0ICE9IE5VTEwpDQorKyAgICB1c2VyX29mX3N1YmplY3Rfc3RyID0gcG9sa2l0 X2lkZW50aXR5X3RvX3N0cmluZyAodXNlcl9vZl9zdWJqZWN0KTsNCisrICBlbHNlDQorKyAgICB1 c2VyX29mX3N1YmplY3Rfc3RyID0gZ19zdHJkdXAgKCI8dW5rbm93bj4iKTsNCisgICBjYWxsZXJf c3RyID0gcG9sa2l0X3N1YmplY3RfdG9fc3RyaW5nIChjYWxsZXIpOw0KKyANCisgICBzdWJqZWN0 X2NtZGxpbmUgPSBfcG9sa2l0X3N1YmplY3RfZ2V0X2NtZGxpbmUgKHN1YmplY3QpOw0KZGlmZiAt LWdpdCBhL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL0ZpeC1kdXBsaWNhdGUtR0Vycm9yLXVz ZS13aGVuLXVpZC1pcy1taXNzaW5nLnBhdGNoIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMv Rml4LWR1cGxpY2F0ZS1HRXJyb3ItdXNlLXdoZW4tdWlkLWlzLW1pc3NpbmcucGF0Y2gNCm5ldyBm aWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAuLmYxMWNiM2RmNQ0KLS0tIC9kZXYvbnVs bA0KKysrIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvRml4LWR1cGxpY2F0ZS1HRXJyb3It dXNlLXdoZW4tdWlkLWlzLW1pc3NpbmcucGF0Y2gNCkBAIC0wLDAgKzEsMzIgQEANCitGcm9tOiA9 P3V0Zi04P3E/TWlsb3NsYXZfVHJtYT1DND04RD89IDxtaXRyQHJlZGhhdC5jb20+DQorRGF0ZTog TW9uLCAxNSBTZXAgMjAxNCAxOTo0NToxNSArMDIwMA0KK1N1YmplY3Q6IEZpeCBkdXBsaWNhdGUg R0Vycm9yIHVzZSB3aGVuICJ1aWQiIGlzIG1pc3NpbmcNCisNCitTb21lIEdMaWIgdmVyc2lvbnMg Y29tcGxhaW4gbG91ZGx5IGFib3V0IHRoaXMuDQorDQorVG8gcmVwcm9kdWNlLCBjYWxsIGUuZy4g UmVnaXN0ZXJBdXRoZW50aWNhdGlvbkFnZW50IHdpdGggdGhlIGZvbGxvd2luZw0KK3BhcmFtZXRl cnM6DQorKCJ1bml4LXByb2Nlc3MiLCB7InBpZCI6IF9faW1wb3J0X18oJ2dpLnJlcG9zaXRvcnku R0xpYicsIGdsb2JhbHMoKSwNCitsb2NhbHMoKSwgWydWYXJpYW50J10pLlZhcmlhbnQoInUiLCAx KSwgInN0YXJ0LXRpbWUiOg0KK19faW1wb3J0X18oJ2dpLnJlcG9zaXRvcnkuR0xpYicsIGdsb2Jh bHMoKSwgbG9jYWxzKCksDQorWydWYXJpYW50J10pLlZhcmlhbnQoInQiLCAxKX0pLCAiY3MiLCAi LyINCisNCitCdWc6IGh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lk PTkwODc3DQorT3JpZ2luOiB1cHN0cmVhbSwgMC4xMTMsIGNvbW1pdDoyYzg3Mzg5NDFiZTE4ZWYw NWNlNzI0ZGY0NjU0N2Y0MWRiYzAyZmI1DQorLS0tDQorIHNyYy9wb2xraXQvcG9sa2l0c3ViamVj dC5jIHwgMiArLQ0KKyAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24o LSkNCisNCitkaWZmIC0tZ2l0IGEvc3JjL3BvbGtpdC9wb2xraXRzdWJqZWN0LmMgYi9zcmMvcG9s a2l0L3BvbGtpdHN1YmplY3QuYw0KK2luZGV4IGFlZDU3OTUuLjc4ZWM3NDUgMTAwNjQ0DQorLS0t IGEvc3JjL3BvbGtpdC9wb2xraXRzdWJqZWN0LmMNCisrKysgYi9zcmMvcG9sa2l0L3BvbGtpdHN1 YmplY3QuYw0KK0BAIC00MjQsNyArNDI0LDcgQEAgcG9sa2l0X3N1YmplY3RfbmV3X2Zvcl9ndmFy aWFudCAoR1ZhcmlhbnQgICp2YXJpYW50LA0KKyAgICAgICBzdGFydF90aW1lID0gZ192YXJpYW50 X2dldF91aW50NjQgKHYpOw0KKyAgICAgICBnX3ZhcmlhbnRfdW5yZWYgKHYpOw0KKyANCistICAg ICAgdiA9IGxvb2t1cF9hc3YgKGRldGFpbHNfZ3ZhcmlhbnQsICJ1aWQiLCBHX1ZBUklBTlRfVFlQ RV9JTlQzMiwgZXJyb3IpOw0KKysgICAgICB2ID0gbG9va3VwX2FzdiAoZGV0YWlsc19ndmFyaWFu dCwgInVpZCIsIEdfVkFSSUFOVF9UWVBFX0lOVDMyLCBOVUxMKTsNCisgICAgICAgaWYgKHYgIT0g TlVMTCkNCisgICAgICAgICB7DQorICAgICAgICAgICB1aWQgPSBnX3ZhcmlhbnRfZ2V0X2ludDMy ICh2KTsNCmRpZmYgLS1naXQgYS9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9GaXgtdXNlLWFm dGVyLWZyZWUtaW4tcG9sa2l0YWdlbnRzZXNzaW9uLmMucGF0Y2ggYi9wYXRjaGVzL3BvbGtpdC0w LjEwNS8wLjExMy9GaXgtdXNlLWFmdGVyLWZyZWUtaW4tcG9sa2l0YWdlbnRzZXNzaW9uLmMucGF0 Y2gNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAuLjZmN2JkMzU2Yw0KLS0t IC9kZXYvbnVsbA0KKysrIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvRml4LXVzZS1hZnRl ci1mcmVlLWluLXBvbGtpdGFnZW50c2Vzc2lvbi5jLnBhdGNoDQpAQCAtMCwwICsxLDMyIEBADQor RnJvbTogPT91dGYtOD9xP01pbG9zbGF2X1RybWE9QzQ9OEQ/PSA8bWl0ckByZWRoYXQuY29tPg0K K0RhdGU6IFR1ZSwgMTQgQXByIDIwMTUgMjI6Mjc6NDEgKzAyMDANCitTdWJqZWN0OiBGaXggdXNl LWFmdGVyLWZyZWUgaW4gcG9sa2l0YWdlbnRzZXNzaW9uLmMNCisNCitQb2xraXRBZ2VudFRleHRM aXN0ZW5lcidzICJjb21wbGV0ZWQiIGhhbmRsZXIgZHJvcHMgdGhlIGxhc3QgcmVmZXJlbmNlDQor dG8gdGhlIHNlc3Npb247IGluIGZhY3QgdGhpcyBpcyBleHBsaWNpdGx5IHJlY29tbWVuZGVkIGlu IHRoZSBzaWduYWwncw0KK2RvY3VtZW50YXRpb24uICBTbyB3ZSBtdXN0IG5vdCBhY2Nlc3MgYW55 IG1lbWJlcnMgb2Ygc2Vzc2lvbiBhZnRlcg0KK2VtaXR0aW5nIHRoZSBzaWduYWwuDQorDQorRm91 bmQgd2hpbGUgZGVhbGluZyB3aXRoDQoraHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9zaG93 X2J1Zy5jZ2k/aWQ9Njk1MDENCisNCitPcmlnaW46IHVwc3RyZWFtLCAwLjExMywgY29tbWl0OmVm YjZjZDU2YTQyM2JhMTViYjFmNDRlZTNjNDk4N2FhZDVhNWZkNDUNCistLS0NCisgc3JjL3BvbGtp dGFnZW50L3BvbGtpdGFnZW50c2Vzc2lvbi5jIHwgMyArKy0NCisgMSBmaWxlIGNoYW5nZWQsIDIg aW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQ0KKw0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0 YWdlbnQvcG9sa2l0YWdlbnRzZXNzaW9uLmMgYi9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRz ZXNzaW9uLmMNCitpbmRleCA2YTNkNmJjLi40NmZiYWYwIDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xr aXRhZ2VudC9wb2xraXRhZ2VudHNlc3Npb24uYw0KKysrKyBiL3NyYy9wb2xraXRhZ2VudC9wb2xr aXRhZ2VudHNlc3Npb24uYw0KK0BAIC00MTIsOCArNDEyLDkgQEAgY29tcGxldGVfc2Vzc2lvbiAo UG9sa2l0QWdlbnRTZXNzaW9uICpzZXNzaW9uLA0KKyAgICAgew0KKyAgICAgICBpZiAoR19VTkxJ S0VMWSAoX3Nob3dfZGVidWcgKCkpKQ0KKyAgICAgICAgIGdfcHJpbnQgKCJQb2xraXRBZ2VudFNl c3Npb246IGVtaXR0aW5nIDo6Y29tcGxldGVkKCVzKVxuIiwgcmVzdWx0ID8gIlRSVUUiIDogIkZB TFNFIik7DQorLSAgICAgIGdfc2lnbmFsX2VtaXRfYnlfbmFtZSAoc2Vzc2lvbiwgImNvbXBsZXRl ZCIsIHJlc3VsdCk7DQorICAgICAgIHNlc3Npb24tPmhhdmVfZW1pdHRlZF9jb21wbGV0ZWQgPSBU UlVFOw0KKysgICAgICAvKiBOb3RlIHRoYXQgdGhlIHNpZ25hbCBoYW5kbGVyIG1heSBkcm9wIHRo ZSBsYXN0IHJlZmVyZW5jZSB0byBzZXNzaW9uLiAqLw0KKysgICAgICBnX3NpZ25hbF9lbWl0X2J5 X25hbWUgKHNlc3Npb24sICJjb21wbGV0ZWQiLCByZXN1bHQpOw0KKyAgICAgfQ0KKyB9DQorIA0K ZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL0ZpeGVkLWNvbXBpbGF0aW9u LXByb2JsZW0taW4tdGhlLWJhY2tlbmQucGF0Y2ggYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjEx My9GaXhlZC1jb21waWxhdGlvbi1wcm9ibGVtLWluLXRoZS1iYWNrZW5kLnBhdGNoDQpuZXcgZmls ZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi5jY2JiY2I3NGMNCi0tLSAvZGV2L251bGwN CisrKyBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL0ZpeGVkLWNvbXBpbGF0aW9uLXByb2Js ZW0taW4tdGhlLWJhY2tlbmQucGF0Y2gNCkBAIC0wLDAgKzEsMjMgQEANCitGcm9tOiBYYWJpZXIg Um9kcmlndWV6IENhbHZhciA8Y2FsdmFyaXNAaWdhbGlhLmNvbT4NCitEYXRlOiBTdW4sIDEwIE5v diAyMDEzIDE5OjE2OjQxICswMTAwDQorU3ViamVjdDogRml4ZWQgY29tcGlsYXRpb24gcHJvYmxl bSBpbiB0aGUgYmFja2VuZA0KKw0KK09yaWdpbjogdXBzdHJlYW0sIDAuMTEzLCBjb21taXQ6IGRi YmI3ZGM2MGFiZGQ5NzBhZjBhOGZhZTQwNDQ4NDE4MWZhOTA5YzkNCitCdWctRGViaWFuOiBodHRw czovL2J1Z3MuZGViaWFuLm9yZy83OTg3NjkNCistLS0NCisgc3JjL3BvbGtpdGJhY2tlbmQvcG9s a2l0YmFja2VuZHNlc3Npb25tb25pdG9yLmMgfCAyICstDQorIDEgZmlsZSBjaGFuZ2VkLCAxIGlu c2VydGlvbigrKSwgMSBkZWxldGlvbigtKQ0KKw0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0YmFj a2VuZC9wb2xraXRiYWNrZW5kc2Vzc2lvbm1vbml0b3IuYyBiL3NyYy9wb2xraXRiYWNrZW5kL3Bv bGtpdGJhY2tlbmRzZXNzaW9ubW9uaXRvci5jDQoraW5kZXggNDA3NWQzZi4uMDVmNTFjNSAxMDA2 NDQNCistLS0gYS9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kc2Vzc2lvbm1vbml0b3Iu Yw0KKysrKyBiL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRzZXNzaW9ubW9uaXRvci5j DQorQEAgLTMwNiw3ICszMDYsNyBAQCBwb2xraXRfYmFja2VuZF9zZXNzaW9uX21vbml0b3JfZ2V0 X3VzZXJfZm9yX3N1YmplY3QgKFBvbGtpdEJhY2tlbmRTZXNzaW9uTW9uaXRvcg0KKyAgICAgfQ0K KyAgIGVsc2UgaWYgKFBPTEtJVF9JU19TWVNURU1fQlVTX05BTUUgKHN1YmplY3QpKQ0KKyAgICAg ew0KKy0gICAgICByZXQgPSAoUG9sa2l0SWRlbnRpdHkqKXBvbGtpdF9zeXN0ZW1fYnVzX25hbWVf Z2V0X3VzZXJfc3luYyAoUE9MS0lUX1NZU1RFTV9CVVNfTkFNRSAoc3ViamVjdCkpOw0KKysgICAg ICByZXQgPSAoUG9sa2l0SWRlbnRpdHkqKXBvbGtpdF9zeXN0ZW1fYnVzX25hbWVfZ2V0X3VzZXJf c3luYyAoUE9MS0lUX1NZU1RFTV9CVVNfTkFNRSAoc3ViamVjdCksIE5VTEwsIE5VTEwpOw0KKyAg ICAgfQ0KKyAgIGVsc2UgaWYgKFBPTEtJVF9JU19VTklYX1NFU1NJT04gKHN1YmplY3QpKQ0KKyAg ICAgew0KZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL1BvbGtpdFN5c3Rl bUJ1c05hbWUtQWRkLXB1YmxpYy1BUEktdG8tcmV0cmlldmUtVW5peC0ucGF0Y2ggYi9wYXRjaGVz L3BvbGtpdC0wLjEwNS8wLjExMy9Qb2xraXRTeXN0ZW1CdXNOYW1lLUFkZC1wdWJsaWMtQVBJLXRv LXJldHJpZXZlLVVuaXgtLnBhdGNoDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAw MDAwLi5hMTYyYWVmM2UNCi0tLSAvZGV2L251bGwNCisrKyBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1 LzAuMTEzL1BvbGtpdFN5c3RlbUJ1c05hbWUtQWRkLXB1YmxpYy1BUEktdG8tcmV0cmlldmUtVW5p eC0ucGF0Y2gNCkBAIC0wLDAgKzEsMTY2IEBADQorRnJvbTogQ29saW4gV2FsdGVycyA8d2FsdGVy c0B2ZXJidW0ub3JnPg0KK0RhdGU6IFdlZCwgMjEgQXVnIDIwMTMgMTI6MjM6NTUgLTA0MDANCitT dWJqZWN0OiBQb2xraXRTeXN0ZW1CdXNOYW1lOiBBZGQgcHVibGljIEFQSSB0byByZXRyaWV2ZSBV bml4IHVzZXINCisNCitBbmQgY2hhbmdlIHRoZSBkdXBsaWNhdGVkIGNvZGUgaW4gdGhlIGJhY2tl bmQgc2Vzc2lvbiBtb25pdG9ycyB0byB1c2UNCitpdC4gIFRoaXMganVzdCBhIGNvZGUgY2xlYW51 cCByZXN1bHRpbmcgZnJvbSByZXZpZXcgYWZ0ZXINCitDVkUtMjAxMy00Mjg4LiAgVGhlcmUncyBu byBzZWN1cml0eSBpbXBhY3QgZnJvbSB0aGlzIHBhdGNoLCBpdCBqdXN0DQorcmVtb3ZlcyBkdXBs aWNhdGVkIGNvZGUuDQorDQorQnVnOiBodHRwczovL2J1Z3MuZnJlZWRlc2t0b3Aub3JnL3Nob3df YnVnLmNnaT9pZD02OTUzOA0KK09yaWdpbjogdXBzdHJlYW0sIDAuMTEzLCBjb21taXQ6OTA0ZDg0 MDRkOTNkZWM0NWZjZTNiNzE5ZWIxYTYyNmFjYzZiOGE3Mw0KKy0tLQ0KKyBzcmMvcG9sa2l0L3Bv bGtpdHN5c3RlbWJ1c25hbWUuYyAgICAgICAgICAgICAgICAgICB8IDU2ICsrKysrKysrKysrKysr KysrKysrKysNCisgc3JjL3BvbGtpdC9wb2xraXRzeXN0ZW1idXNuYW1lLmggICAgICAgICAgICAg ICAgICAgfCAgNCArKw0KKyAuLi4vcG9sa2l0YmFja2VuZHNlc3Npb25tb25pdG9yLXN5c3RlbWQu YyAgICAgICAgICB8IDIwICstLS0tLS0tDQorIHNyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tl bmRzZXNzaW9ubW9uaXRvci5jICAgIHwgMjAgKy0tLS0tLS0NCisgNCBmaWxlcyBjaGFuZ2VkLCA2 MiBpbnNlcnRpb25zKCspLCAzOCBkZWxldGlvbnMoLSkNCisNCitkaWZmIC0tZ2l0IGEvc3JjL3Bv bGtpdC9wb2xraXRzeXN0ZW1idXNuYW1lLmMgYi9zcmMvcG9sa2l0L3BvbGtpdHN5c3RlbWJ1c25h bWUuYw0KK2luZGV4IDJhMjk3YzQuLjUxZTRhNjkgMTAwNjQ0DQorLS0tIGEvc3JjL3BvbGtpdC9w b2xraXRzeXN0ZW1idXNuYW1lLmMNCisrKysgYi9zcmMvcG9sa2l0L3BvbGtpdHN5c3RlbWJ1c25h bWUuYw0KK0BAIC0yNSw2ICsyNSw3IEBADQorIA0KKyAjaW5jbHVkZSA8c3RyaW5nLmg+DQorICNp bmNsdWRlICJwb2xraXRzeXN0ZW1idXNuYW1lLmgiDQorKyNpbmNsdWRlICJwb2xraXR1bml4dXNl ci5oIg0KKyAjaW5jbHVkZSAicG9sa2l0c3ViamVjdC5oIg0KKyAjaW5jbHVkZSAicG9sa2l0cHJp dmF0ZS5oIg0KKyANCitAQCAtMzk2LDMgKzM5Nyw1OCBAQCBwb2xraXRfc3lzdGVtX2J1c19uYW1l X2dldF9wcm9jZXNzX3N5bmMgKFBvbGtpdFN5c3RlbUJ1c05hbWUgICpzeXN0ZW1fYnVzX25hbWUs DQorICAgcmV0dXJuIHJldDsNCisgfQ0KKyANCisrLyoqDQorKyAqIHBvbGtpdF9zeXN0ZW1fYnVz X25hbWVfZ2V0X3VzZXJfc3luYzoNCisrICogQHN5c3RlbV9idXNfbmFtZTogQSAjUG9sa2l0U3lz dGVtQnVzTmFtZS4NCisrICogQGNhbmNlbGxhYmxlOiAoYWxsb3ctbm9uZSk6IEEgI0dDYW5jZWxs YWJsZSBvciAlTlVMTC4NCisrICogQGVycm9yOiAoYWxsb3ctbm9uZSk6IFJldHVybiBsb2NhdGlv biBmb3IgZXJyb3Igb3IgJU5VTEwuDQorKyAqDQorKyAqIFN5bmNocm9ub3VzbHkgZ2V0cyBhICNQ b2xraXRVbml4VXNlciBvYmplY3QgZm9yIEBzeXN0ZW1fYnVzX25hbWU7DQorKyAqIHRoZSBjYWxs aW5nIHRocmVhZCBpcyBibG9ja2VkIHVudGlsIGEgcmVwbHkgaXMgcmVjZWl2ZWQuDQorKyAqDQor KyAqIFJldHVybnM6IChhbGxvdy1ub25lKSAodHJhbnNmZXIgZnVsbCk6IEEgI1BvbGtpdFVuaXhV c2VyIG9iamVjdCBvciAlTlVMTCBpZiBAZXJyb3IgaXMgc2V0Lg0KKysgKiovDQorK1BvbGtpdFVu aXhVc2VyICoNCisrcG9sa2l0X3N5c3RlbV9idXNfbmFtZV9nZXRfdXNlcl9zeW5jIChQb2xraXRT eXN0ZW1CdXNOYW1lICAqc3lzdGVtX2J1c19uYW1lLA0KKysJCQkJICAgICAgR0NhbmNlbGxhYmxl ICAgICAgICAgKmNhbmNlbGxhYmxlLA0KKysJCQkJICAgICAgR0Vycm9yICAgICAgICAgICAgICAq KmVycm9yKQ0KKyt7DQorKyAgR0RCdXNDb25uZWN0aW9uICpjb25uZWN0aW9uOw0KKysgIFBvbGtp dFVuaXhVc2VyICpyZXQ7DQorKyAgR1ZhcmlhbnQgKnJlc3VsdDsNCisrICBndWludDMyIHVpZDsN CisrDQorKyAgZ19yZXR1cm5fdmFsX2lmX2ZhaWwgKFBPTEtJVF9JU19TWVNURU1fQlVTX05BTUUg KHN5c3RlbV9idXNfbmFtZSksIE5VTEwpOw0KKysgIGdfcmV0dXJuX3ZhbF9pZl9mYWlsIChjYW5j ZWxsYWJsZSA9PSBOVUxMIHx8IEdfSVNfQ0FOQ0VMTEFCTEUgKGNhbmNlbGxhYmxlKSwgTlVMTCk7 DQorKyAgZ19yZXR1cm5fdmFsX2lmX2ZhaWwgKGVycm9yID09IE5VTEwgfHwgKmVycm9yID09IE5V TEwsIE5VTEwpOw0KKysNCisrICByZXQgPSBOVUxMOw0KKysNCisrICBjb25uZWN0aW9uID0gZ19i dXNfZ2V0X3N5bmMgKEdfQlVTX1RZUEVfU1lTVEVNLCBjYW5jZWxsYWJsZSwgZXJyb3IpOw0KKysg IGlmIChjb25uZWN0aW9uID09IE5VTEwpDQorKyAgICBnb3RvIG91dDsNCisrDQorKyAgcmVzdWx0 ID0gZ19kYnVzX2Nvbm5lY3Rpb25fY2FsbF9zeW5jIChjb25uZWN0aW9uLA0KKysgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm9yZy5mcmVlZGVza3RvcC5EQnVzIiwgICAg ICAgLyogbmFtZSAqLw0KKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Ii9vcmcvZnJlZWRlc2t0b3AvREJ1cyIsICAgICAgLyogb2JqZWN0IHBhdGggKi8NCisrICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJvcmcuZnJlZWRlc2t0b3AuREJ1cyIs ICAgICAgIC8qIGludGVyZmFjZSBuYW1lICovDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAiR2V0Q29ubmVjdGlvblVuaXhVc2VyIiwgICAgICAvKiBtZXRob2QgKi8N CisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdfdmFyaWFudF9uZXcg KCIocykiLCBzeXN0ZW1fYnVzX25hbWUtPm5hbWUpLA0KKysgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgR19WQVJJQU5UX1RZUEUgKCIodSkiKSwNCisrICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdfREJVU19DQUxMX0ZMQUdTX05PTkUsDQorKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtMSwNCisrICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbmNlbGxhYmxlLA0KKysgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3IpOw0KKysgIGlmIChyZXN1bHQgPT0gTlVM TCkNCisrICAgIGdvdG8gb3V0Ow0KKysNCisrICBnX3ZhcmlhbnRfZ2V0IChyZXN1bHQsICIodSki LCAmdWlkKTsNCisrICBnX3ZhcmlhbnRfdW5yZWYgKHJlc3VsdCk7DQorKw0KKysgIHJldCA9IChQ b2xraXRVbml4VXNlciopcG9sa2l0X3VuaXhfdXNlcl9uZXcgKHVpZCk7DQorKw0KKysgb3V0Og0K KysgIGlmIChjb25uZWN0aW9uICE9IE5VTEwpDQorKyAgICBnX29iamVjdF91bnJlZiAoY29ubmVj dGlvbik7DQorKyAgcmV0dXJuIHJldDsNCisrfQ0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0L3Bv bGtpdHN5c3RlbWJ1c25hbWUuaCBiL3NyYy9wb2xraXQvcG9sa2l0c3lzdGVtYnVzbmFtZS5oDQor aW5kZXggMWZjNDY0Zi4uMzhkMzFmNyAxMDA2NDQNCistLS0gYS9zcmMvcG9sa2l0L3BvbGtpdHN5 c3RlbWJ1c25hbWUuaA0KKysrKyBiL3NyYy9wb2xraXQvcG9sa2l0c3lzdGVtYnVzbmFtZS5oDQor QEAgLTU2LDYgKzU2LDEwIEBAIFBvbGtpdFN1YmplY3QgICpwb2xraXRfc3lzdGVtX2J1c19uYW1l X2dldF9wcm9jZXNzX3N5bmMgICAoUG9sa2l0U3lzdGVtQnVzTmFtZQ0KKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdDYW5jZWxsYWJs ZSAgICAgICAgICpjYW5jZWxsYWJsZSwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHRXJyb3IgICAgICAgICAgICAgICoqZXJyb3Ip Ow0KKyANCisrUG9sa2l0VW5peFVzZXIgKiBwb2xraXRfc3lzdGVtX2J1c19uYW1lX2dldF91c2Vy X3N5bmMgICAgIChQb2xraXRTeXN0ZW1CdXNOYW1lICAqc3lzdGVtX2J1c19uYW1lLA0KKysJCQkJ CQkJICAgR0NhbmNlbGxhYmxlICAgICAgICAgKmNhbmNlbGxhYmxlLA0KKysJCQkJCQkJICAgR0Vy cm9yICAgICAgICAgICAgICAqKmVycm9yKTsNCisrDQorIEdfRU5EX0RFQ0xTDQorIA0KKyAjZW5k aWYgLyogX19QT0xLSVRfU1lTVEVNX0JVU19OQU1FX0ggKi8NCitkaWZmIC0tZ2l0IGEvc3JjL3Bv bGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZHNlc3Npb25tb25pdG9yLXN5c3RlbWQuYyBiL3NyYy9w b2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRzZXNzaW9ubW9uaXRvci1zeXN0ZW1kLmMNCitpbmRl eCA1ODU5M2MzLi4wMTg1MzEwIDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtp dGJhY2tlbmRzZXNzaW9ubW9uaXRvci1zeXN0ZW1kLmMNCisrKysgYi9zcmMvcG9sa2l0YmFja2Vu ZC9wb2xraXRiYWNrZW5kc2Vzc2lvbm1vbml0b3Itc3lzdGVtZC5jDQorQEAgLTI3NywyNSArMjc3 LDcgQEAgcG9sa2l0X2JhY2tlbmRfc2Vzc2lvbl9tb25pdG9yX2dldF91c2VyX2Zvcl9zdWJqZWN0 IChQb2xraXRCYWNrZW5kU2Vzc2lvbk1vbml0b3INCisgICAgIH0NCisgICBlbHNlIGlmIChQT0xL SVRfSVNfU1lTVEVNX0JVU19OQU1FIChzdWJqZWN0KSkNCisgICAgIHsNCistICAgICAgR1Zhcmlh bnQgKnJlc3VsdDsNCistDQorLSAgICAgIHJlc3VsdCA9IGdfZGJ1c19jb25uZWN0aW9uX2NhbGxf c3luYyAobW9uaXRvci0+c3lzdGVtX2J1cywNCistICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAib3JnLmZyZWVkZXNrdG9wLkRCdXMiLA0KKy0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIvb3JnL2ZyZWVkZXNrdG9wL0RCdXMiLA0K Ky0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJvcmcuZnJlZWRl c2t0b3AuREJ1cyIsDQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIkdldENvbm5lY3Rpb25Vbml4VXNlciIsDQorLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgZ192YXJpYW50X25ldyAoIihzKSIsIHBvbGtpdF9zeXN0ZW1fYnVz X25hbWVfZ2V0X25hbWUgKFBPTEtJVF9TWVNURU1fQlVTX05BTUUgKHN1YmplY3QpKSksDQorLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR19WQVJJQU5UX1RZUEUg KCIodSkiKSwNCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH X0RCVVNfQ0FMTF9GTEFHU19OT05FLA0KKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIC0xLCAvKiB0aW1lb3V0X21zZWMgKi8NCistICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBHQ2FuY2VsbGFibGUgKi8NCistICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcik7DQorLSAgICAg IGlmIChyZXN1bHQgPT0gTlVMTCkNCistICAgICAgICBnb3RvIG91dDsNCistICAgICAgZ192YXJp YW50X2dldCAocmVzdWx0LCAiKHUpIiwgJnVpZCk7DQorLSAgICAgIGdfdmFyaWFudF91bnJlZiAo cmVzdWx0KTsNCistDQorLSAgICAgIHJldCA9IHBvbGtpdF91bml4X3VzZXJfbmV3ICh1aWQpOw0K KysgICAgICByZXQgPSAoUG9sa2l0SWRlbnRpdHkqKXBvbGtpdF9zeXN0ZW1fYnVzX25hbWVfZ2V0 X3VzZXJfc3luYyAoUE9MS0lUX1NZU1RFTV9CVVNfTkFNRSAoc3ViamVjdCksIE5VTEwsIGVycm9y KTsNCisgICAgIH0NCisgICBlbHNlIGlmIChQT0xLSVRfSVNfVU5JWF9TRVNTSU9OIChzdWJqZWN0 KSkNCisgICAgIHsNCitkaWZmIC0tZ2l0IGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2Vu ZHNlc3Npb25tb25pdG9yLmMgYi9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kc2Vzc2lv bm1vbml0b3IuYw0KK2luZGV4IDljMzMxYjYuLjQwNzVkM2YgMTAwNjQ0DQorLS0tIGEvc3JjL3Bv bGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZHNlc3Npb25tb25pdG9yLmMNCisrKysgYi9zcmMvcG9s a2l0YmFja2VuZC9wb2xraXRiYWNrZW5kc2Vzc2lvbm1vbml0b3IuYw0KK0BAIC0zMDYsMjUgKzMw Niw3IEBAIHBvbGtpdF9iYWNrZW5kX3Nlc3Npb25fbW9uaXRvcl9nZXRfdXNlcl9mb3Jfc3ViamVj dCAoUG9sa2l0QmFja2VuZFNlc3Npb25Nb25pdG9yDQorICAgICB9DQorICAgZWxzZSBpZiAoUE9M S0lUX0lTX1NZU1RFTV9CVVNfTkFNRSAoc3ViamVjdCkpDQorICAgICB7DQorLSAgICAgIEdWYXJp YW50ICpyZXN1bHQ7DQorLQ0KKy0gICAgICByZXN1bHQgPSBnX2RidXNfY29ubmVjdGlvbl9jYWxs X3N5bmMgKG1vbml0b3ItPnN5c3RlbV9idXMsDQorLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIm9yZy5mcmVlZGVza3RvcC5EQnVzIiwNCistICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiL29yZy9mcmVlZGVza3RvcC9EQnVzIiwN CistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3JnLmZyZWVk ZXNrdG9wLkRCdXMiLA0KKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICJHZXRDb25uZWN0aW9uVW5peFVzZXIiLA0KKy0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGdfdmFyaWFudF9uZXcgKCIocykiLCBwb2xraXRfc3lzdGVtX2J1 c19uYW1lX2dldF9uYW1lIChQT0xLSVRfU1lTVEVNX0JVU19OQU1FIChzdWJqZWN0KSkpLA0KKy0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdfVkFSSUFOVF9UWVBF ICgiKHUpIiksDQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg R19EQlVTX0NBTExfRkxBR1NfTk9ORSwNCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAtMSwgLyogdGltZW91dF9tc2VjICovDQorLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogR0NhbmNlbGxhYmxlICovDQorLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3IpOw0KKy0gICAg ICBpZiAocmVzdWx0ID09IE5VTEwpDQorLSAgICAgICAgZ290byBvdXQ7DQorLSAgICAgIGdfdmFy aWFudF9nZXQgKHJlc3VsdCwgIih1KSIsICZ1aWQpOw0KKy0gICAgICBnX3ZhcmlhbnRfdW5yZWYg KHJlc3VsdCk7DQorLQ0KKy0gICAgICByZXQgPSBwb2xraXRfdW5peF91c2VyX25ldyAodWlkKTsN CisrICAgICAgcmV0ID0gKFBvbGtpdElkZW50aXR5Kilwb2xraXRfc3lzdGVtX2J1c19uYW1lX2dl dF91c2VyX3N5bmMgKFBPTEtJVF9TWVNURU1fQlVTX05BTUUgKHN1YmplY3QpKTsNCisgICAgIH0N CisgICBlbHNlIGlmIChQT0xLSVRfSVNfVU5JWF9TRVNTSU9OIChzdWJqZWN0KSkNCisgICAgIHsN CmRpZmYgLS1naXQgYS9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9Qb3J0LWludGVybmFscy1u b24tZGVwcmVjYXRlZC1Qb2xraXRQcm9jZXNzLUFQSS13aGVyLnBhdGNoIGIvcGF0Y2hlcy9wb2xr aXQtMC4xMDUvMC4xMTMvUG9ydC1pbnRlcm5hbHMtbm9uLWRlcHJlY2F0ZWQtUG9sa2l0UHJvY2Vz cy1BUEktd2hlci5wYXRjaA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMC4u OGE4ZmEzY2Y5DQotLS0gL2Rldi9udWxsDQorKysgYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjEx My9Qb3J0LWludGVybmFscy1ub24tZGVwcmVjYXRlZC1Qb2xraXRQcm9jZXNzLUFQSS13aGVyLnBh dGNoDQpAQCAtMCwwICsxLDI5IEBADQorRnJvbTogQ29saW4gV2FsdGVycyA8d2FsdGVyc0B2ZXJi dW0ub3JnPg0KK0RhdGU6IFNhdCwgOSBOb3YgMjAxMyAxMzo0ODoyMSAtMDUwMA0KK1N1YmplY3Q6 IFBvcnQgaW50ZXJuYWxzIG5vbi1kZXByZWNhdGVkIFBvbGtpdFByb2Nlc3MgQVBJIHdoZXJlIHBv c3NpYmxlDQorDQorV2UgY2FuJ3QgcG9ydCBldmVyeXRoaW5nLCBidXQgaW4gUG9sa2l0UGVybWlz c2lvbiBhbmQgdGhlc2UgdGVzdA0KK2Nhc2VzLCB3ZSBjYW4gdXNlIF9mb3Jfb3duZXIoKSB3aXRo IHRoZSByaWdodCBpbmZvcm1hdGlvbi4NCisNCitbc21jdjogZHJvcCB0aGUgcGFydCB0aGF0IHRv dWNoZXMNCit0ZXN0L3BvbGtpdGJhY2tlbmQvdGVzdC1wb2xraXRiYWNrZW5kanNhdXRob3JpdHku YyB3aGljaCBpcyBub3QNCitpbiB0aGlzIGJyYW5jaF0NCisNCitPcmlnaW46IHVwc3RyZWFtLCAw LjExMywgY29tbWl0OjZkM2QwYThmZmIwZmQ4YWU1OWViMzU1OTNiMzA1ZWM4N2RhODg1OGQNCist LS0NCisgc3JjL3BvbGtpdC9wb2xraXRwZXJtaXNzaW9uLmMgfCAyICstDQorIDEgZmlsZSBjaGFu Z2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQ0KKw0KK2RpZmYgLS1naXQgYS9zcmMv cG9sa2l0L3BvbGtpdHBlcm1pc3Npb24uYyBiL3NyYy9wb2xraXQvcG9sa2l0cGVybWlzc2lvbi5j DQoraW5kZXggMjJkMTk1Zi4uZjhhNjY2ZSAxMDA2NDQNCistLS0gYS9zcmMvcG9sa2l0L3BvbGtp dHBlcm1pc3Npb24uYw0KKysrKyBiL3NyYy9wb2xraXQvcG9sa2l0cGVybWlzc2lvbi5jDQorQEAg LTEyMiw3ICsxMjIsNyBAQCBwb2xraXRfcGVybWlzc2lvbl9jb25zdHJ1Y3RlZCAoR09iamVjdCAq b2JqZWN0KQ0KKyAgIFBvbGtpdFBlcm1pc3Npb24gKnBlcm1pc3Npb24gPSBQT0xLSVRfUEVSTUlT U0lPTiAob2JqZWN0KTsNCisgDQorICAgaWYgKHBlcm1pc3Npb24tPnN1YmplY3QgPT0gTlVMTCkN CistICAgIHBlcm1pc3Npb24tPnN1YmplY3QgPSBwb2xraXRfdW5peF9wcm9jZXNzX25ldyAoZ2V0 cGlkICgpKTsNCisrICAgIHBlcm1pc3Npb24tPnN1YmplY3QgPSBwb2xraXRfdW5peF9wcm9jZXNz X25ld19mb3Jfb3duZXIgKGdldHBpZCAoKSwgMCwgZ2V0dWlkICgpKTsNCisgDQorICAgaWYgKEdf T0JKRUNUX0NMQVNTIChwb2xraXRfcGVybWlzc2lvbl9wYXJlbnRfY2xhc3MpLT5jb25zdHJ1Y3Rl ZCAhPSBOVUxMKQ0KKyAgICAgR19PQkpFQ1RfQ0xBU1MgKHBvbGtpdF9wZXJtaXNzaW9uX3BhcmVu dF9jbGFzcyktPmNvbnN0cnVjdGVkIChvYmplY3QpOw0KZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9s a2l0LTAuMTA1LzAuMTEzL1JFQURNRS1Ob3RlLXRvLXNlbmQtc2VjdXJpdHktcmVwb3J0cy12aWEt REJ1cy1zLW1lY2gucGF0Y2ggYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9SRUFETUUtTm90 ZS10by1zZW5kLXNlY3VyaXR5LXJlcG9ydHMtdmlhLURCdXMtcy1tZWNoLnBhdGNoDQpuZXcgZmls ZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi45NDg0Njk5NmUNCi0tLSAvZGV2L251bGwN CisrKyBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL1JFQURNRS1Ob3RlLXRvLXNlbmQtc2Vj dXJpdHktcmVwb3J0cy12aWEtREJ1cy1zLW1lY2gucGF0Y2gNCkBAIC0wLDAgKzEsMzkgQEANCitG cm9tOiBDb2xpbiBXYWx0ZXJzIDx3YWx0ZXJzQHZlcmJ1bS5vcmc+DQorRGF0ZTogVGh1LCA0IEp1 biAyMDE1IDA4OjQxOjM2IC0wNDAwDQorU3ViamVjdDogUkVBRE1FOiBOb3RlIHRvIHNlbmQgc2Vj dXJpdHkgcmVwb3J0cyB2aWEgREJ1cydzIG1lY2hhbmlzbQ0KKw0KK1RoaXMgYXZvaWRzIGR1cGxp Y2F0aW5nIGVmZm9ydC4NCisNCitPcmlnaW46IHVwc3RyZWFtLCAwLjExMywgY29tbWl0OmNjZWM3 NjZjNTA5ZDE2ZGFiNDE3NTgyZTk0ZjQzZDkwNmNlZmQ0YWUNCistLS0NCisgUkVBRE1FIHwgMTgg KysrKysrKysrKysrKysrKystDQorIDEgZmlsZSBjaGFuZ2VkLCAxNyBpbnNlcnRpb25zKCspLCAx IGRlbGV0aW9uKC0pDQorDQorZGlmZiAtLWdpdCBhL1JFQURNRSBiL1JFQURNRQ0KK2luZGV4IGIw NzUxNjIuLjA3MjMwMDIgMTAwNjQ0DQorLS0tIGEvUkVBRE1FDQorKysrIGIvUkVBRE1FDQorQEAg LTIyLDYgKzIyLDIyIEBAIFRvIHZlcmlmeSB0aGUgYXV0aGVudGljaXR5IG9mIHRoZSBjb21wcmVz c2VkIHRhcmJhbGwsIHVzZSB0aGlzIGNvbW1hbmQNCisgQlVHUyBhbmQgREVWRUxPUE1FTlQNCisg PT09PT09PT09PT09PT09PT09PT0NCisgDQorLVBsZWFzZSByZXBvcnQgYnVncyB2aWEgdGhlIGZy ZWVkZXNrdG9wLm9yZyBidWd6aWxsYSBhdA0KKytQbGVhc2UgcmVwb3J0IG5vbi1zZWN1cml0eSBi dWdzIHZpYSB0aGUgZnJlZWRlc2t0b3Aub3JnIGJ1Z3ppbGxhIGF0DQorIA0KKyAgaHR0cHM6Ly9i dWdzLmZyZWVkZXNrdG9wLm9yZy9lbnRlcl9idWcuY2dpP3Byb2R1Y3Q9UG9saWN5S2l0DQorKw0K KytTRUNVUklUWSBJU1NVRVMNCisrPT09PT09PT09PT09PT09DQorKw0KKytwb2xraXQgdXNlcyB0 aGUgc2FtZSBtZWNoYW5pc20gZm9yIHJlcG9ydGluZyBzZWN1cml0eSBpc3N1ZXMgYXMgZGJ1cywN CisrdGhlIG1vc3QgcmVjZW50IGNvcHkgb2YgaW5zdHJ1Y3Rpb25zIGNhbiBiZSBmb3VuZCBpbiB0 aGUgREJ1cyBnaXQNCisrcmVwb3NpdG9yeToNCisrDQorK2h0dHA6Ly9jZ2l0LmZyZWVkZXNrdG9w Lm9yZy9kYnVzL2RidXMvdHJlZS9IQUNLSU5HDQorKw0KKytBIGNvcHkgb2YgdGhlIGluc3RydWN0 aW9ucyBhcyBvZiAyMDE1LTA2LTA0Og0KKysNCisrSWYgeW91IGZpbmQgYSBzZWN1cml0eSB2dWxu ZXJhYmlsaXR5IHRoYXQgaXMgbm90IGtub3duIHRvIHRoZSBwdWJsaWMsDQorK3BsZWFzZSByZXBv cnQgaXQgcHJpdmF0ZWx5IHRvIGRidXMtc2VjdXJpdHlAbGlzdHMuZnJlZWRlc2t0b3Aub3JnDQor K29yIGJ5IHJlcG9ydGluZyBhIGZyZWVkZXNrdG9wLm9yZyBidWcgdGhhdCBpcyBtYXJrZWQgYXMN CisrcmVzdHJpY3RlZCB0byB0aGUgIkQtQlVTIHNlY3VyaXR5IGdyb3VwIi4NCmRpZmYgLS1naXQg YS9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9SZWZ1c2UtZHVwbGljYXRlLXVzZXItYXJndW1l bnRzLXRvLXBrZXhlYy5wYXRjaCBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL1JlZnVzZS1k dXBsaWNhdGUtdXNlci1hcmd1bWVudHMtdG8tcGtleGVjLnBhdGNoDQpuZXcgZmlsZSBtb2RlIDEw MDY0NA0KaW5kZXggMDAwMDAwMDAwLi4xODYzNWU1ODENCi0tLSAvZGV2L251bGwNCisrKyBiL3Bh dGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL1JlZnVzZS1kdXBsaWNhdGUtdXNlci1hcmd1bWVudHMt dG8tcGtleGVjLnBhdGNoDQpAQCAtMCwwICsxLDM4IEBADQorRnJvbTogPT91dGYtOD9xP01pbG9z bGF2X1RybWE9QzQ9OEQ/PSA8bWl0ckByZWRoYXQuY29tPg0KK0RhdGU6IFR1ZSwgMjYgQXVnIDIw MTQgMTc6NTk6NDcgKzAyMDANCitTdWJqZWN0OiBSZWZ1c2UgZHVwbGljYXRlIC0tdXNlciBhcmd1 bWVudHMgdG8gcGtleGVjDQorDQorVGhpcyB1c2FnZSBpcyBjbGVhcmx5IGVycm9uZW91cywgc28g d2Ugc2hvdWxkIHRlbGwgdGhlIHVzZXJzIHRoZXkgYXJlDQorbWFraW5nIGEgbWlzdGFrZS4NCisN CitCZXNpZGVzLCB0aGlzIGFsbG93cyBhbiBhdHRhY2tlciB0byBjYXVzZSBhIGhpZ2ggbnVtYmVy IG9mIGhlYXANCithbGxvY2F0aW9ucyB3aXRoIGF0dGFja2VyLWNvbnRyb2xsZWQgc2l6ZXMgKA0K K2h0dHA6Ly9nb29nbGVwcm9qZWN0emVyby5ibG9nc3BvdC5jei8yMDE0LzA4L3RoZS1wb2lzb25l ZC1udWwtYnl0ZS0yMDE0LWVkaXRpb24uaHRtbA0KKyksIG1ha2luZyBzb21lIGV4cGxvaXRzIGVh c2llci4NCisNCisoVG8gYmUgY2xlYXIsIHRoaXMgaXMgbm90IGEgcGtleGVjIHZ1bG5lcmFiaWxp dHksIGFuZCB3ZSB3aWxsIG5vdA0KK3JlZnVzZSBhdHRhY2tlci1hZmZlY3RlZCBtYWxsb2MoKSB1 c2FnZSBhcyBhIG1hdHRlciBvZiBwb2xpY3k7IGJ1dCB0aGlzDQorY29tbWl0IGlzIGJvdGggdXNl ci1mcmllbmRseSBhbmQgYWRkaW5nIHNvbWUgaGFyZGVuaW5nLikNCisNCitCdWc6IGh0dHBzOi8v YnVncy5mcmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTgzMDkzDQorT3JpZ2luOiB1cHN0 cmVhbSwgMC4xMTMsIGNvbW1pdDo2Yzk5MmJjOGFlZmExOTVhNDFlYWE0MWMwN2Y0NmYxN2RlMThl MjVjDQorLS0tDQorIHNyYy9wcm9ncmFtcy9wa2V4ZWMuYyB8IDUgKysrKysNCisgMSBmaWxlIGNo YW5nZWQsIDUgaW5zZXJ0aW9ucygrKQ0KKw0KK2RpZmYgLS1naXQgYS9zcmMvcHJvZ3JhbXMvcGtl eGVjLmMgYi9zcmMvcHJvZ3JhbXMvcGtleGVjLmMNCitpbmRleCA1ZTk5MDQ0Li5hYmM2NjBkIDEw MDY0NA0KKy0tLSBhL3NyYy9wcm9ncmFtcy9wa2V4ZWMuYw0KKysrKyBiL3NyYy9wcm9ncmFtcy9w a2V4ZWMuYw0KK0BAIC01MzMsNiArNTMzLDExIEBAIG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2 W10pDQorICAgICAgICAgICAgICAgZ290byBvdXQ7DQorICAgICAgICAgICAgIH0NCisgDQorKyAg ICAgICAgICBpZiAob3B0X3VzZXIgIT0gTlVMTCkNCisrICAgICAgICAgICAgew0KKysgICAgICAg ICAgICAgIGdfcHJpbnRlcnIgKCItLXVzZXIgc3BlY2lmaWVkIHR3aWNlXG4iKTsNCisrICAgICAg ICAgICAgICBnb3RvIG91dDsNCisrICAgICAgICAgICAgfQ0KKyAgICAgICAgICAgb3B0X3VzZXIg PSBnX3N0cmR1cCAoYXJndltuXSk7DQorICAgICAgICAgfQ0KKyAgICAgICBlbHNlIGlmIChzdHJj bXAgKGFyZ3Zbbl0sICItLWRpc2FibGUtaW50ZXJuYWwtYWdlbnQiKSA9PSAwKQ0KZGlmZiAtLWdp dCBhL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL1JlbW92ZS1hLXJlZHVuZGFudC1hc3NpZ25t ZW50LnBhdGNoIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvUmVtb3ZlLWEtcmVkdW5kYW50 LWFzc2lnbm1lbnQucGF0Y2gNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAu Ljc5MmNhN2YyNA0KLS0tIC9kZXYvbnVsbA0KKysrIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4x MTMvUmVtb3ZlLWEtcmVkdW5kYW50LWFzc2lnbm1lbnQucGF0Y2gNCkBAIC0wLDAgKzEsMjYgQEAN CitGcm9tOiA9P3V0Zi04P3E/TWlsb3NsYXZfVHJtYT1DND04RD89IDxtaXRyQHJlZGhhdC5jb20+ DQorRGF0ZTogV2VkLCAxMSBKdW4gMjAxNCAyMjo0NDoyOCArMDIwMA0KK1N1YmplY3Q6IFJlbW92 ZSBhIHJlZHVuZGFudCBhc3NpZ25tZW50Lg0KKw0KK0luc3RlYWQgb2YgYSBub25zZW5zaWNhbCAo ZGF0YSA9IGRhdGEpLCB1c2UgdGhlIG1vcmUgY3VzdG9tYXJ5DQorKCh2b2lkKWRhdGEpIHRvIHNp bGVuY2UgdGhlIHdhcm5pbmcgYWJvdXQgYW4gdW51c2VkIHBhcmFtZXRlci4NCisNCitCdWc6IGh0 dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTgwNzY3DQorT3JpZ2lu OiB1cHN0cmVhbSwgMC4xMTMsIGNvbW1pdDozNzE0M2ViMDZjYjBjNGRmZmNhNjcwNzlkZDFjMTBj NWIxOTFiNmE3DQorLS0tDQorIHNyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudGhlbHBlci1wYW0u YyB8IDIgKy0NCisgMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0p DQorDQorZGlmZiAtLWdpdCBhL3NyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudGhlbHBlci1wYW0u YyBiL3NyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudGhlbHBlci1wYW0uYw0KK2luZGV4IDI5MmFi YmUuLjkzNzM4NmUgMTAwNjQ0DQorLS0tIGEvc3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50aGVs cGVyLXBhbS5jDQorKysrIGIvc3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50aGVscGVyLXBhbS5j DQorQEAgLTIzMCw3ICsyMzAsNyBAQCBjb252ZXJzYXRpb25fZnVuY3Rpb24gKGludCBuLCBjb25z dCBzdHJ1Y3QgcGFtX21lc3NhZ2UgKiptc2csIHN0cnVjdCBwYW1fcmVzcG9ucw0KKyAgIGdjaGFy ICp0bXAgPSBOVUxMOw0KKyAgIHNpemVfdCBsZW47DQorIA0KKy0gIGRhdGEgPSBkYXRhOw0KKysg ICh2b2lkKWRhdGE7DQorICAgaWYgKG4gPD0gMCB8fCBuID4gUEFNX01BWF9OVU1fTVNHKQ0KKyAg ICAgcmV0dXJuIFBBTV9DT05WX0VSUjsNCisgDQpkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9wb2xraXQt MC4xMDUvMC4xMTMvZG9jcy1VcGRhdGUtZm9yLWNoYW5nZXMtdG8tdWlkLWJpbmRpbmctQXV0aGVu dGljYXRpby5wYXRjaCBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL2RvY3MtVXBkYXRlLWZv ci1jaGFuZ2VzLXRvLXVpZC1iaW5kaW5nLUF1dGhlbnRpY2F0aW8ucGF0Y2gNCm5ldyBmaWxlIG1v ZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAuLjQ1MWMyOTk4NQ0KLS0tIC9kZXYvbnVsbA0KKysr IGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvZG9jcy1VcGRhdGUtZm9yLWNoYW5nZXMtdG8t dWlkLWJpbmRpbmctQXV0aGVudGljYXRpby5wYXRjaA0KQEAgLTAsMCArMSwyNTkgQEANCitGcm9t OiA9P3V0Zi04P3E/TWlsb3NsYXZfVHJtYT1DND04RD89IDxtaXRyQHJlZGhhdC5jb20+DQorRGF0 ZTogV2VkLCAxNyBKdW4gMjAxNSAwMTowMToyNyArMDIwMA0KK1N1YmplY3Q6IGRvY3M6IFVwZGF0 ZSBmb3IgY2hhbmdlcyB0byB1aWQgYmluZGluZy9BdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2Uy DQorDQorIC0gUmVmZXIgdG8gUG9sa2l0QWdlbnRTZXNzaW9uIGluIGdlbmVyYWwgaW5zdGVhZCBv ZiB0byBfcmVzcG9uc2Ugb25seQ0KKyAtIFJldmVydCB0byB0aGUgb3JpZ2luYWwgZGVzY3JpcHRp b24gb2YgYXV0aGVudGljYXRpb24gY2FuY2VsbGF0aW9uLCB0aGUNCisgICBhZ2VudCByZWFsbHkg bmVlZHMgdG8gcmV0dXJuIGFuIGVycm9yIHRvIHRoZSBjYWxsZXIgKGluIGFkZGl0aW9uIHRvIGRl YWxpbmcNCisgICB3aXRoIHRoZSBzZXNzaW9uIGlmIGFueSkuDQorIC0gRXhwbGljaXRseSBkb2N1 bWVudCB0aGUgVUlEIGFzc3VtcHRpb247IGluIHRoZSBwcm9jZXNzIGZpeGluZyBidWcgIzY5OTgw Lg0KKyAtIEtlZXAgZG9jdW1lbnRpbmcgdGhhdCB3ZSBuZWVkIGEgc3VmZmljaWVudGx5IHByaXZp bGVnZWQgY2FsbGVyLg0KKyAtIFJlZmVyIHRvIHRoZSAuLi5SZXNwb25zZTIgQVBJIGluIG1vcmUg cGxhY2VzLg0KKyAtIEFsc28gdXBkYXRlIGRvY2Jvb2sgZG9jdW1lbnRhdGlvbi4NCisgLSBEcm9w IGEgcGFyYWdyYXBoIHN1Z2dlc3Rpbmcgbm9uLVBvbGtpdEFnZW50U2Vzc2lvbiBpbXBsZW1lbnRh dGlvbnMgYXJlDQorICAgZXhwZWN0ZWQgYW5kIGNvbW1vbnBsYWNlLg0KKw0KK0J1ZzogaHR0cHM6 Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTA4MzcNCitSZXZpZXdlZC1i eTogQ29saW4gV2FsdGVycyA8d2FsdGVyc0ByZWRoYXQuY29tPg0KK09yaWdpbjogdXBzdHJlYW0s IDAuMTEzLCBjb21taXQ6ZmI1MDc2YjdjMDVkMDFhNTMyZDU5M2E0MDc5YTI5Y2YyZDYzYTIyOA0K K0J1Zy1EZWJpYW46IGh0dHBzOi8vYnVncy5kZWJpYW4ub3JnLzc5NjEzNA0KKy0tLQ0KKyAuLi4u ZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRoZW50aWNhdGlvbkFnZW50LnhtbCB8ICA2ICsrKy0t LQ0KKyBkYXRhL29yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhvcml0eS54bWwgICAgICB8 IDExICsrKysrKy0tLS0NCisgLi4uLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aGVudGljYXRp b25BZ2VudC54bWwgfCAgNyArKysrKy0tDQorIC4uLmVyZmFjZS1vcmcuZnJlZWRlc2t0b3AuUG9s aWN5S2l0MS5BdXRob3JpdHkueG1sIHwgMTIgKysrKysrKy0tLS0NCisgZG9jcy9wb2xraXQvb3Zl cnZpZXcueG1sICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgOCArKysrLS0tLQ0KKyBzcmMv cG9sa2l0L3BvbGtpdGF1dGhvcml0eS5jICAgICAgICAgICAgICAgICAgICAgICB8IDI0ICsrKysr KysrKysrKysrKysrKysrLS0NCisgc3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50bGlzdGVuZXIu YyAgICAgICAgICAgICAgfCAgNSArLS0tLQ0KKyBzcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNr ZW5kYXV0aG9yaXR5LmMgICAgICAgICB8ICAxICsNCisgOCBmaWxlcyBjaGFuZ2VkLCA1MSBpbnNl cnRpb25zKCspLCAyMyBkZWxldGlvbnMoLSkNCisNCitkaWZmIC0tZ2l0IGEvZGF0YS9vcmcuZnJl ZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRoZW50aWNhdGlvbkFnZW50LnhtbCBiL2RhdGEvb3JnLmZy ZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aGVudGljYXRpb25BZ2VudC54bWwNCitpbmRleCA1YmVl ZjdkLi40ODIzMzJmIDEwMDY0NA0KKy0tLSBhL2RhdGEvb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtp dDEuQXV0aGVudGljYXRpb25BZ2VudC54bWwNCisrKysgYi9kYXRhL29yZy5mcmVlZGVza3RvcC5Q b2xpY3lLaXQxLkF1dGhlbnRpY2F0aW9uQWdlbnQueG1sDQorQEAgLTEzLDE0ICsxMywxNCBAQA0K KyAgICAgICB1c2VyIHRvIGF1dGhlbnRpY2F0ZSBhcyBvbmUgb2YgdGhlIGlkZW50aXRpZXMgaW4g QGlkZW50aXRpZXMgZm9yDQorICAgICAgIHRoZSBhY3Rpb24gd2l0aCB0aGUgaWRlbnRpZmllciBA YWN0aW9uX2lkLjwvcGFyYT48cGFyYT5UaGlzDQorICAgICAgIGF1dGhlbnRpY2F0aW9uIGlzIG5v cm1hbGx5IGFjaGlldmVkIHZpYSB0aGUNCistICAgICAgcG9sa2l0X2FnZW50X3Nlc3Npb25fcmVz cG9uc2UoKSBBUEksIHdoaWNoIGludm9rZXMgYSBwcml2YXRlDQorKyAgICAgIFBvbGtpdEFnZW50 U2Vzc2lvbiBBUEksIHdoaWNoIGludm9rZXMgYSBwcml2YXRlDQorICAgICAgIHNldHVpZCBoZWxw ZXIgcHJvY2VzcyB0byB2ZXJpZnkgdGhlIGF1dGhlbnRpY2F0aW9uLiAgV2hlbg0KKyAgICAgICBz dWNjZXNzZnVsLCBpdCBjYWxscyB0aGUNCisgICAgICAgb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtp dDEuQXV0aG9yaXR5LkF1dGhlbnRpY2F0aW9uQWdlbnRSZXNwb25zZTIoKQ0KKyAgICAgICBtZXRo b2Qgb24gdGhlICNvcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHkgaW50ZXJmYWNl IG9mDQorICAgICAgIHRoZSBQb2xpY3lLaXQgZGFlbW9uIGJlZm9yZSByZXR1cm5pbmcuICBJZiB0 aGUgdXNlciBkaXNtaXNzZXMgdGhlDQorLSAgICAgIGF1dGhlbnRpY2F0aW9uIGRpYWxvZywgdGhl IGF1dGhlbnRpY2F0aW9uIGFnZW50IHNob3VsZCBjYWxsDQorLSAgICAgIHBvbGtpdF9hZ2VudF9z ZXNzaW9uX2NhbmNlbCgpLjwvcGFyYT4iLz4NCisrICAgICAgYXV0aGVudGljYXRpb24gZGlhbG9n LCB0aGUgYXV0aGVudGljYXRpb24gYWdlbnQgc2hvdWxkIHJldHVybiBhbg0KKysgICAgICBlcnJv ci48L3BhcmE+Ii8+DQorIA0KKyAgICAgICA8YXJnIG5hbWU9ImFjdGlvbl9pZCIgZGlyZWN0aW9u PSJpbiIgdHlwZT0icyI+DQorICAgICAgICAgPGFubm90YXRpb24gbmFtZT0ib3JnLmd0ay5FZ2dE QnVzLkRvY1N0cmluZyIgdmFsdWU9IlRoZSBpZGVudGlmaWVyIGZvciB0aGUgYWN0aW9uIHRoYXQg dGhlIHVzZXIgaXMgYXV0aGVudGljYXRpb24gZm9yLiIvPg0KK2RpZmYgLS1naXQgYS9kYXRhL29y Zy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhvcml0eS54bWwgYi9kYXRhL29yZy5mcmVlZGVz a3RvcC5Qb2xpY3lLaXQxLkF1dGhvcml0eS54bWwNCitpbmRleCBmOTAyMWVlLi44OGRhM2MwIDEw MDY0NA0KKy0tLSBhL2RhdGEvb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aG9yaXR5Lnht bA0KKysrKyBiL2RhdGEvb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aG9yaXR5LnhtbA0K K0BAIC0yODMsNyArMjgzLDcgQEANCisgICAgIDwhLS0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSAtLT4NCisgDQorICAgICA8bWV0aG9kIG5hbWU9IlJlZ2lzdGVy QXV0aGVudGljYXRpb25BZ2VudCI+DQorLSAgICAgIDxhbm5vdGF0aW9uIG5hbWU9Im9yZy5ndGsu RWdnREJ1cy5Eb2NTdHJpbmciIHZhbHVlPSI8cGFyYT5SZWdpc3RlciBhbiBhdXRoZW50aWNhdGlv biBhZ2VudC48L3BhcmE+PHBhcmE+Tm90ZSB0aGF0IGN1cnJlbnQgdmVyc2lvbnMgb2YgUG9saWN5 S2l0IHdpbGwgb25seSB3b3JrIGlmIEBzZXNzaW9uX2lkIGlzIHNldCB0byB0aGUgZW1wdHkgc3Ry aW5nLiBJbiB0aGUgZnV0dXJlIGl0IG1pZ2h0IHdvcmsgZm9yIG5vbi1lbXB0eSBzdHJpbmdzIGlm IHRoZSBjYWxsZXIgaXMgc3VmZmljaWVudGx5IHByaXZpbGVnZWQuPC9wYXJhPiIvPg0KKysgICAg ICA8YW5ub3RhdGlvbiBuYW1lPSJvcmcuZ3RrLkVnZ0RCdXMuRG9jU3RyaW5nIiB2YWx1ZT0iPHBh cmE+UmVnaXN0ZXIgYW4gYXV0aGVudGljYXRpb24gYWdlbnQuPC9wYXJhPjxwYXJhPk5vdGUgdGhh dCB0aGlzIHNob3VsZCBiZSBjYWxsZWQgYnkgdGhlIHNhbWUgZWZmZWN0aXZlIFVJRCB3aGljaCB3 aWxsIGJlIHBhc3NlZCB0byBvcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHkuQXV0 aGVudGljYXRpb25BZ2VudFJlc3BvbnNlMigpLjwvcGFyYT4iLz4NCisgDQorICAgICAgIDxhcmcg bmFtZT0ic3ViamVjdCIgZGlyZWN0aW9uPSJpbiIgdHlwZT0iKHNhe3N2fSkiPg0KKyAgICAgICAg IDxhbm5vdGF0aW9uIG5hbWU9Im9yZy5ndGsuRWdnREJ1cy5UeXBlIiB2YWx1ZT0iU3ViamVjdCIv Pg0KK0BAIC0zMTUsNyArMzE1LDggQEANCisgICAgIDxtZXRob2QgbmFtZT0iQXV0aGVudGljYXRp b25BZ2VudFJlc3BvbnNlIj4NCisgICAgICAgPGFubm90YXRpb24gbmFtZT0ib3JnLmd0ay5FZ2dE QnVzLkRvY1N0cmluZyIgdmFsdWU9Ik1ldGhvZCBmb3IgYXV0aGVudGljYXRpb24gYWdlbnRzIHRv IGludm9rZSBvbiBzdWNjZXNzZnVsDQorIGF1dGhlbnRpY2F0aW9uLCBpbnRlbmRlZCBvbmx5IGZv ciB1c2UgYnkgYSBwcml2aWxlZ2VkIGhlbHBlciBwcm9jZXNzDQorLWludGVybmFsIHRvIHBvbGtp dC4iLz4NCisraW50ZXJuYWwgdG8gcG9sa2l0LiBUaGlzIG1ldGhvZCB3aWxsIGZhaWwgdW5sZXNz IGEgc3VmZmljaWVudGx5IHByaXZpbGVnZWQNCisrY2FsbGVyIGludm9rZXMgaXQuIERlcHJlY2F0 ZWQgaW4gZmF2b3Igb2Ygb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aG9yaXR5LkF1dGhl bnRpY2F0aW9uQWdlbnRSZXNwb25zZTIuIi8+DQorIA0KKyAgICAgICA8YXJnIG5hbWU9ImNvb2tp ZSIgZGlyZWN0aW9uPSJpbiIgdHlwZT0icyI+DQorICAgICAgICAgPGFubm90YXRpb24gbmFtZT0i b3JnLmd0ay5FZ2dEQnVzLkRvY1N0cmluZyIgdmFsdWU9IlRoZSBjb29raWUgaWRlbnRpZnlpbmcg dGhlIGF1dGhlbnRpY2F0aW9uIHJlcXVlc3QgdGhhdCB3YXMgcGFzc2VkIHRvIHRoZSBhdXRoZW50 aWNhdGlvbiBhZ2VudC4iLz4NCitAQCAtMzMwLDExICszMzEsMTMgQEAgaW50ZXJuYWwgdG8gcG9s a2l0LiIvPg0KKyAgICAgPG1ldGhvZCBuYW1lPSJBdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2Uy Ij4NCisgICAgICAgPGFubm90YXRpb24gbmFtZT0ib3JnLmd0ay5FZ2dEQnVzLkRvY1N0cmluZyIg dmFsdWU9Ik1ldGhvZCBmb3IgYXV0aGVudGljYXRpb24gYWdlbnRzIHRvIGludm9rZSBvbiBzdWNj ZXNzZnVsDQorIGF1dGhlbnRpY2F0aW9uLCBpbnRlbmRlZCBvbmx5IGZvciB1c2UgYnkgYSBwcml2 aWxlZ2VkIGhlbHBlciBwcm9jZXNzDQorLWludGVybmFsIHRvIHBvbGtpdC4gICBOb3RlIHRoaXMg bWV0aG9kIHdhcyBhZGRlZCBpbiAwLjExNCwgYW5kIHNob3VsZCBiZSBwcmVmZXJyZWQgb3ZlciBB dXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2UNCisraW50ZXJuYWwgdG8gcG9sa2l0LiBUaGlzIG1l dGhvZCB3aWxsIGZhaWwgdW5sZXNzIGEgc3VmZmljaWVudGx5IHByaXZpbGVnZWQNCisrY2FsbGVy IGludm9rZXMgaXQuIE5vdGUgdGhpcyBtZXRob2Qgd2FzIGFkZGVkIGluIDAuMTE0LCBhbmQgc2hv dWxkIGJlIHByZWZlcnJlZCBvdmVyIG9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhvcml0 eS5BdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2UoKQ0KKyBhcyBpdCBmaXhlcyBhIHNlY3VyaXR5 IGlzc3VlLiIvPg0KKyANCisgICAgICAgPGFyZyBuYW1lPSJ1aWQiIGRpcmVjdGlvbj0iaW4iIHR5 cGU9InUiPg0KKy0gICAgICAgIDxhbm5vdGF0aW9uIG5hbWU9Im9yZy5ndGsuRWdnREJ1cy5Eb2NT dHJpbmciIHZhbHVlPSJUaGUgcmVhbCB1aWQgb2YgdGhlIGFnZW50LiAgTm9ybWFsbHkgc2V0IGJ5 IHRoZSBzZXR1aWQgaGVscGVyIHByb2dyYW0uIi8+DQorKyAgICAgICAgPGFubm90YXRpb24gbmFt ZT0ib3JnLmd0ay5FZ2dEQnVzLkRvY1N0cmluZyIgdmFsdWU9IlRoZSByZWFsIHVpZCBvZiB0aGUg YWdlbnQuICBOb3JtYWxseSBzZXQgYnkgdGhlIHNldHVpZCBoZWxwZXIgcHJvZ3JhbS4NCisrTXVz dCBtYXRjaCB0aGUgZWZmZWN0aXZlIFVJRCBvZiB0aGUgY2FsbGVyIG9mIG9yZy5mcmVlZGVza3Rv cC5Qb2xpY3lLaXQxLkF1dGhvcml0eS5SZWdpc3RlckF1dGhlbnRpY2F0aW9uQWdlbnQoKS4iLz4N CisgICAgICAgPC9hcmc+DQorIA0KKyAgICAgICA8YXJnIG5hbWU9ImNvb2tpZSIgZGlyZWN0aW9u PSJpbiIgdHlwZT0icyI+DQorZGlmZiAtLWdpdCBhL2RvY3MvcG9sa2l0L2RvY2Jvb2staW50ZXJm YWNlLW9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhlbnRpY2F0aW9uQWdlbnQueG1sIGIv ZG9jcy9wb2xraXQvZG9jYm9vay1pbnRlcmZhY2Utb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEu QXV0aGVudGljYXRpb25BZ2VudC54bWwNCitpbmRleCBlYzU5NjI2Li5hYjI3YjJmIDEwMDY0NA0K Ky0tLSBhL2RvY3MvcG9sa2l0L2RvY2Jvb2staW50ZXJmYWNlLW9yZy5mcmVlZGVza3RvcC5Qb2xp Y3lLaXQxLkF1dGhlbnRpY2F0aW9uQWdlbnQueG1sDQorKysrIGIvZG9jcy9wb2xraXQvZG9jYm9v ay1pbnRlcmZhY2Utb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aGVudGljYXRpb25BZ2Vu dC54bWwNCitAQCAtNDcsMTAgKzQ3LDEzIEBAIEJlZ2luQXV0aGVudGljYXRpb24gKElOICBTdHJp bmcgICAgICAgICAgICAgICBhY3Rpb25faWQsDQorICAgICAgICAgaWRlbnRpZmllciA8cGFyYW1l dGVyPmFjdGlvbl9pZDwvcGFyYW1ldGVyPi48L3BhcmE+PHBhcmE+VXBvbg0KKyAgICAgICAgIHN1 Y2Nlc2Z1bCBhdXRoZW50aWNhdGlvbiwgdGhlIGF1dGhlbnRpY2F0aW9uIGFnZW50IG11c3QgaW52 b2tlDQorICAgICAgICAgdGhlIDxsaW5rDQorLSAgICAgICAgbGlua2VuZD0iZWdnZGJ1cy1tZXRo b2Qtb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aG9yaXR5LkF1dGhlbnRpY2F0aW9uQWdl bnRSZXNwb25zZSI+QXV0aGVudGljYXRpb25BZ2VudFJlc3BvbnNlKCk8L2xpbms+DQorKyAgICAg ICAgbGlua2VuZD0iZWdnZGJ1cy1tZXRob2Qtb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0 aG9yaXR5LkF1dGhlbnRpY2F0aW9uQWdlbnRSZXNwb25zZTIiPkF1dGhlbnRpY2F0aW9uQWdlbnRS ZXNwb25zZTIoKTwvbGluaz4NCisgICAgICAgICBtZXRob2Qgb24gdGhlIDxsaW5rDQorICAgICAg ICAgbGlua2VuZD0iZWdnZGJ1cy1pbnRlcmZhY2Utb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEu QXV0aG9yaXR5Ij5vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHk8L2xpbms+DQor LSAgICAgICAgaW50ZXJmYWNlIG9mIHRoZSBQb2xpY3lLaXQgZGFlbW9uIGJlZm9yZSByZXR1cm5p bmcuDQorKyAgICAgICAgaW50ZXJmYWNlIG9mIHRoZSBQb2xpY3lLaXQgZGFlbW9uIGJlZm9yZSBy ZXR1cm5pbmcuIFRoaXMgaXMgbm9ybWFsbHkNCisrICAgICAgICBhY2hpZXZlZCB2aWEgdGhlIDxs aW5rIGxpbmtlbmQ9IlBvbGtpdEFnZW50U2Vzc2lvbiI+UG9sa2l0QWdlbnRTZXNzaW9uPC9saW5r Pg0KKysgICAgICAgIEFQSSwgd2hpY2ggaW52b2tlcyBhIHByaXZhdGUgc2V0dWlkIGhlbHBlciBw cm9jZXNzIHRvIHZlcmlmeSB0aGUNCisrICAgICAgICBhdXRoZW50aWNhdGlvbi4NCisgICAgICAg PC9wYXJhPg0KKyAgICAgICA8cGFyYT4NCisgICAgICAgICBUaGUgYXV0aGVudGljYXRpb24gYWdl bnQgc2hvdWxkIG5vdCByZXR1cm4gdW50aWwgYWZ0ZXIgYXV0aGVudGljYXRpb24gaXMgY29tcGxl dGUuDQorZGlmZiAtLWdpdCBhL2RvY3MvcG9sa2l0L2RvY2Jvb2staW50ZXJmYWNlLW9yZy5mcmVl ZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhvcml0eS54bWwgYi9kb2NzL3BvbGtpdC9kb2Nib29rLWlu dGVyZmFjZS1vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHkueG1sDQoraW5kZXgg ZTY2YmY1My4uZjJlZWQ2MyAxMDA2NDQNCistLS0gYS9kb2NzL3BvbGtpdC9kb2Nib29rLWludGVy ZmFjZS1vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHkueG1sDQorKysrIGIvZG9j cy9wb2xraXQvZG9jYm9vay1pbnRlcmZhY2Utb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0 aG9yaXR5LnhtbA0KK0BAIC00Miw3ICs0Miw3IEBAIFN0cnVjdHVyZSAgICA8bGluayBsaW5rZW5k PSJlZ2dkYnVzLXN0cnVjdC1UZW1wb3JhcnlBdXRob3JpemF0aW9uIj5UZW1wb3JhcnlBdXRoDQor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTiAgU3RyaW5nICAgICAgICAgICAg ICAgICAgICAgICAgIG9iamVjdF9wYXRoKQ0KKyA8bGluayBsaW5rZW5kPSJlZ2dkYnVzLW1ldGhv ZC1vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHkuQXV0aGVudGljYXRpb25BZ2Vu dFJlc3BvbnNlIj5BdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2U8L2xpbms+ICAgICAgKElOICBT dHJpbmcgICAgICAgICAgICAgICAgICAgICAgICAgY29va2llLA0KKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgSU4gIDxsaW5rIGxpbmtlbmQ9ImVnZ2RidXMtc3RydWN0LUlkZW50 aXR5Ij5JZGVudGl0eTwvbGluaz4gICAgICAgICAgICAgICAgICAgICAgIGlkZW50aXR5KQ0KKy08 bGluayBsaW5rZW5kPSJlZ2dkYnVzLW1ldGhvZC1vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5B dXRob3JpdHkuQXV0aGVudGljYXRpb25BZ2VudFJlc3BvbnNlIj5BdXRoZW50aWNhdGlvbkFnZW50 UmVzcG9uc2UyPC9saW5rPiAgICAgIChJTiB1aW50MzIgdWlkLCBJTiAgU3RyaW5nICAgICAgICAg ICAgICAgICAgICAgICAgIGNvb2tpZSwNCisrPGxpbmsgbGlua2VuZD0iZWdnZGJ1cy1tZXRob2Qt b3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aG9yaXR5LkF1dGhlbnRpY2F0aW9uQWdlbnRS ZXNwb25zZTIiPkF1dGhlbnRpY2F0aW9uQWdlbnRSZXNwb25zZTI8L2xpbms+ICAgICAgKElOIHVp bnQzMiB1aWQsIElOICBTdHJpbmcgICAgICAgICAgICAgICAgICAgICAgICAgY29va2llLA0KKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSU4gIDxsaW5rIGxpbmtlbmQ9ImVnZ2Ri dXMtc3RydWN0LUlkZW50aXR5Ij5JZGVudGl0eTwvbGluaz4gICAgICAgICAgICAgICAgICAgICAg IGlkZW50aXR5KQ0KKyA8bGluayBsaW5rZW5kPSJlZ2dkYnVzLW1ldGhvZC1vcmcuZnJlZWRlc2t0 b3AuUG9saWN5S2l0MS5BdXRob3JpdHkuRW51bWVyYXRlVGVtcG9yYXJ5QXV0aG9yaXphdGlvbnMi PkVudW1lcmF0ZVRlbXBvcmFyeUF1dGhvcml6YXRpb25zPC9saW5rPiAoSU4gIDxsaW5rIGxpbmtl bmQ9ImVnZ2RidXMtc3RydWN0LVN1YmplY3QiPlN1YmplY3Q8L2xpbms+ICAgICAgICAgICAgICAg ICAgICAgICAgc3ViamVjdCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9V VCBBcnJheSZsdDs8bGluayBsaW5rZW5kPSJlZ2dkYnVzLXN0cnVjdC1UZW1wb3JhcnlBdXRob3Jp emF0aW9uIj5UZW1wb3JhcnlBdXRob3JpemF0aW9uPC9saW5rPiZndDsgIHRlbXBvcmFyeV9hdXRo b3JpemF0aW9ucykNCitAQCAtNzAxLDcgKzcwMSw3IEBAIFJlZ2lzdGVyQXV0aGVudGljYXRpb25B Z2VudCAoSU4gIDxsaW5rIGxpbmtlbmQ9ImVnZ2RidXMtc3RydWN0LVN1YmplY3QiPlN1YmplY3Q8 DQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSU4gIFN0cmluZyAgIG9iamVjdF9wYXRo KQ0KKyAgICAgPC9wcm9ncmFtbGlzdGluZz4NCisgICAgIDxwYXJhPg0KKy08cGFyYT5SZWdpc3Rl ciBhbiBhdXRoZW50aWNhdGlvbiBhZ2VudC48L3BhcmE+PHBhcmE+Tm90ZSB0aGF0IGN1cnJlbnQg dmVyc2lvbnMgb2YgUG9saWN5S2l0IHdpbGwgb25seSB3b3JrIGlmIDxwYXJhbWV0ZXI+c2Vzc2lv bl9pZDwvcGFyYW1ldGVyPiBpcyBzZXQgdG8gdGhlIGVtcHR5IHN0cmluZy4gSW4gdGhlIGZ1dHVy ZSBpdCBtaWdodCB3b3JrIGZvciBub24tZW1wdHkgc3RyaW5ncyBpZiB0aGUgY2FsbGVyIGlzIHN1 ZmZpY2llbnRseSBwcml2aWxlZ2VkLjwvcGFyYT4NCisrPHBhcmE+UmVnaXN0ZXIgYW4gYXV0aGVu dGljYXRpb24gYWdlbnQuPC9wYXJhPjxwYXJhPk5vdGUgdGhhdCB0aGlzIHNob3VsZCBiZSBjYWxs ZWQgYnkgc2FtZSBlZmZlY3RpdmUgVUlEIHdoaWNoIHdpbGwgYmUgcGFzc2VkIHRvIDxsaW5rIGxp bmtlbmQ9ImVnZ2RidXMtbWV0aG9kLW9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhvcml0 eS5BdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2UyIj5BdXRoZW50aWNhdGlvbkFnZW50UmVzcG9u c2UyKCk8L2xpbms+LjwvcGFyYT4NCisgICAgIDwvcGFyYT4NCisgPHZhcmlhYmxlbGlzdCByb2xl PSJwYXJhbXMiPg0KKyAgIDx2YXJsaXN0ZW50cnk+DQorQEAgLTc4MSw3ICs3ODEsOCBAQCBBdXRo ZW50aWNhdGlvbkFnZW50UmVzcG9uc2UgKElOICBTdHJpbmcgICAgY29va2llLA0KKyAgICAgPHBh cmE+DQorIE1ldGhvZCBmb3IgYXV0aGVudGljYXRpb24gYWdlbnRzIHRvIGludm9rZSBvbiBzdWNj ZXNzZnVsDQorIGF1dGhlbnRpY2F0aW9uLCBpbnRlbmRlZCBvbmx5IGZvciB1c2UgYnkgYSBwcml2 aWxlZ2VkIGhlbHBlciBwcm9jZXNzDQorLWludGVybmFsIHRvIHBvbGtpdC4gIERlcHJlY2F0ZWQg aW4gZmF2b3Igb2YgQXV0aGVudGljYXRpb25BZ2VudFJlc3BvbnNlMi4NCisraW50ZXJuYWwgdG8g cG9sa2l0LiBUaGlzIG1ldGhvZCB3aWxsIGZhaWwgdW5sZXNzIGEgc3VmZmljaWVudGx5IHByaXZp bGVnZWQNCisrK2NhbGxlciBpbnZva2VzIGl0LiBEZXByZWNhdGVkIGluIGZhdm9yIG9mIDxsaW5r IGxpbmtlbmQ9ImVnZ2RidXMtbWV0aG9kLW9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhv cml0eS5BdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2UyIj5BdXRoZW50aWNhdGlvbkFnZW50UmVz cG9uc2UyKCk8L2xpbms+Lg0KKyAgICAgPC9wYXJhPg0KKyA8dmFyaWFibGVsaXN0IHJvbGU9InBh cmFtcyI+DQorICAgPHZhcmxpc3RlbnRyeT4NCitAQCAtODEyLDcgKzgxMywxMCBAQCBBdXRoZW50 aWNhdGlvbkFnZW50UmVzcG9uc2UyIChJTiAgdWludDMyIHVpZCwNCisgICAgIDxwYXJhPg0KKyBN ZXRob2QgZm9yIGF1dGhlbnRpY2F0aW9uIGFnZW50cyB0byBpbnZva2Ugb24gc3VjY2Vzc2Z1bA0K KyBhdXRoZW50aWNhdGlvbiwgaW50ZW5kZWQgb25seSBmb3IgdXNlIGJ5IGEgcHJpdmlsZWdlZCBo ZWxwZXIgcHJvY2Vzcw0KKy1pbnRlcm5hbCB0byBwb2xraXQuICBOb3RlIHRoaXMgbWV0aG9kIHdh cyBpbnRyb2R1Y2VkIGluIDAuMTE0IHRvIGZpeCBhIHNlY3VyaXR5IGlzc3VlLg0KKytpbnRlcm5h bCB0byBwb2xraXQuIFRoaXMgbWV0aG9kIHdpbGwgZmFpbCB1bmxlc3MgYSBzdWZmaWNpZW50bHkg cHJpdmlsZWdlZA0KKytjYWxsZXIgaW52b2tlcyBpdC4gTm90ZSB0aGlzIG1ldGhvZCB3YXMgaW50 cm9kdWNlZCBpbiAwLjExNCBhbmQgc2hvdWxkIGJlDQorK3ByZWZlcnJlZCBvdmVyIDxsaW5rIGxp bmtlbmQ9ImVnZ2RidXMtbWV0aG9kLW9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhvcml0 eS5BdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2UiPkF1dGhlbnRpY2F0aW9uQWdlbnRSZXNwb25z ZSgpPC9saW5rPg0KKythcyBpdCBmaXhlcyBhIHNlY3VyaXR5IGlzc3VlLg0KKyAgICAgPC9wYXJh Pg0KKyA8dmFyaWFibGVsaXN0IHJvbGU9InBhcmFtcyI+DQorICAgPHZhcmxpc3RlbnRyeT4NCitk aWZmIC0tZ2l0IGEvZG9jcy9wb2xraXQvb3ZlcnZpZXcueG1sIGIvZG9jcy9wb2xraXQvb3ZlcnZp ZXcueG1sDQoraW5kZXggYzI5ZDhkYS4uOGRkYjM0YyAxMDA2NDQNCistLS0gYS9kb2NzL3BvbGtp dC9vdmVydmlldy54bWwNCisrKysgYi9kb2NzL3BvbGtpdC9vdmVydmlldy54bWwNCitAQCAtNzMs MTEgKzczLDExIEBADQorICAgICAgIGxpbmtlbmQ9ImVnZ2RidXMtaW50ZXJmYWNlLW9yZy5mcmVl ZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhlbnRpY2F0aW9uQWdlbnQiPm9yZy5mcmVlZGVza3RvcC5Q b2xpY3lLaXQxLkF1dGhlbnRpY2F0aW9uQWdlbnQ8L2xpbms+DQorICAgICAgIEQtQnVzIGludGVy ZmFjZS4gT25jZSB0aGUgdXNlciBpcyBhdXRoZW50aWNhdGVkLCAoYSBwcml2aWxlZ2VkDQorICAg ICAgIHBhcnQgb2YpIHRoZSBhZ2VudCBpbnZva2VzIHRoZSA8bGluaw0KKy0gICAgICBsaW5rZW5k PSJlZ2dkYnVzLW1ldGhvZC1vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHkuQXV0 aGVudGljYXRpb25BZ2VudFJlc3BvbnNlIj5BdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2UoKTwv bGluaz4NCisrICAgICAgbGlua2VuZD0iZWdnZGJ1cy1tZXRob2Qtb3JnLmZyZWVkZXNrdG9wLlBv bGljeUtpdDEuQXV0aG9yaXR5LkF1dGhlbnRpY2F0aW9uQWdlbnRSZXNwb25zZTIiPkF1dGhlbnRp Y2F0aW9uQWdlbnRSZXNwb25zZTIoKTwvbGluaz4NCisgICAgICAgbWV0aG9kLiAgVGhpcyBtZXRo b2Qgc2hvdWxkIGJlIHRyZWF0ZWQgYXMgYW4gaW50ZXJuYWwNCistICAgICAgaW1wbGVtZW50YXRp b24gZGV0YWlsLCBhbmQgY2FsbGVycyBzaG91bGQgdXNlIHRoZSBwdWJsaWMgc2hhcmVkDQorLSAg ICAgIGxpYnJhcnkgQVBJIHRvIGludm9rZSBpdCwgd2hpY2ggY3VycmVudGx5IHVzZXMgYSBzZXR1 aWQgaGVscGVyDQorLSAgICAgIHByb2dyYW0uDQorKyAgICAgIGltcGxlbWVudGF0aW9uIGRldGFp bCwgYW5kIGNhbGxlcnMgc2hvdWxkIHVzZSB0aGUNCisrICAgICAgPGxpbmsgbGlua2VuZD0iUG9s a2l0QWdlbnRTZXNzaW9uIj5Qb2xraXRBZ2VudFNlc3Npb248L2xpbms+IEFQSSB0byBpbnZva2UN CisrICAgICAgaXQsIHdoaWNoIGN1cnJlbnRseSB1c2VzIGEgc2V0dWlkIGhlbHBlciBwcm9ncmFt Lg0KKyAgICAgPC9wYXJhPg0KKyAgICAgPHBhcmE+DQorICAgICAgIFRoZSA8bGluayBsaW5rZW5k PSJyZWYtYXV0aGVudGljYXRpb24tYWdlbnQtYXBpIj5saWJwb2xraXQtYWdlbnQtMTwvbGluaz4N CitkaWZmIC0tZ2l0IGEvc3JjL3BvbGtpdC9wb2xraXRhdXRob3JpdHkuYyBiL3NyYy9wb2xraXQv cG9sa2l0YXV0aG9yaXR5LmMNCitpbmRleCBmNDVhYmM0Li40ZTg4MmU2IDEwMDY0NA0KKy0tLSBh L3NyYy9wb2xraXQvcG9sa2l0YXV0aG9yaXR5LmMNCisrKysgYi9zcmMvcG9sa2l0L3BvbGtpdGF1 dGhvcml0eS5jDQorQEAgLTEwMzgsNiArMTAzOCwxMCBAQCBwb2xraXRfYXV0aG9yaXR5X2NoZWNr X2F1dGhvcml6YXRpb25fc3luYyAoUG9sa2l0QXV0aG9yaXR5ICAgICAgICAgICAgICAgKmF1dGhv cg0KKyAgKg0KKyAgKiBBc3luY2hyb25vdXNseSByZWdpc3RlcnMgYW4gYXV0aGVudGljYXRpb24g YWdlbnQuDQorICAqDQorKyAqIE5vdGUgdGhhdCB0aGlzIHNob3VsZCBiZSBjYWxsZWQgYnkgdGhl IHNhbWUgZWZmZWN0aXZlIFVJRCB3aGljaCB3aWxsIGJlDQorKyAqIHRoZSByZWFsIFVJRCB1c2lu ZyB0aGUgI1BvbGtpdEFnZW50U2Vzc2lvbiBBUEkgb3Igb3RoZXJ3aXNlIGNhbGxpbmcNCisrICog cG9sa2l0X2F1dGhvcml0eV9hdXRoZW50aWNhdGlvbl9hZ2VudF9yZXNwb25zZSgpLg0KKysgKg0K KyAgKiBXaGVuIHRoZSBvcGVyYXRpb24gaXMgZmluaXNoZWQsIEBjYWxsYmFjayB3aWxsIGJlIGlu dm9rZWQgaW4gdGhlDQorICAqIDxsaW5rIGxpbmtlbmQ9ImctbWFpbi1jb250ZXh0LXB1c2gtdGhy ZWFkLWRlZmF1bHQiPnRocmVhZC1kZWZhdWx0DQorICAqIG1haW4gbG9vcDwvbGluaz4gb2YgdGhl IHRocmVhZCB5b3UgYXJlIGNhbGxpbmcgdGhpcyBtZXRob2QNCitAQCAtMTEyOSw3ICsxMTMzLDEz IEBAIHBvbGtpdF9hdXRob3JpdHlfcmVnaXN0ZXJfYXV0aGVudGljYXRpb25fYWdlbnRfZmluaXNo IChQb2xraXRBdXRob3JpdHkgKmF1dGhvcml0DQorICAqIEBjYW5jZWxsYWJsZTogKGFsbG93LW5v bmUpOiBBICNHQ2FuY2VsbGFibGUgb3IgJU5VTEwuDQorICAqIEBlcnJvcjogKGFsbG93LW5vbmUp OiBSZXR1cm4gbG9jYXRpb24gZm9yIGVycm9yIG9yICVOVUxMLg0KKyAgKg0KKy0gKiBSZWdpc3Rl cnMgYW4gYXV0aGVudGljYXRpb24gYWdlbnQuIFRoZSBjYWxsaW5nIHRocmVhZCBpcyBibG9ja2Vk DQorKyAqIFJlZ2lzdGVycyBhbiBhdXRoZW50aWNhdGlvbiBhZ2VudC4NCisrICoNCisrICogTm90 ZSB0aGF0IHRoaXMgc2hvdWxkIGJlIGNhbGxlZCBieSB0aGUgc2FtZSBlZmZlY3RpdmUgVUlEIHdo aWNoIHdpbGwgYmUNCisrICogdGhlIHJlYWwgVUlEIHVzaW5nIHRoZSAjUG9sa2l0QWdlbnRTZXNz aW9uIEFQSSBvciBvdGhlcndpc2UgY2FsbGluZw0KKysgKiBwb2xraXRfYXV0aG9yaXR5X2F1dGhl bnRpY2F0aW9uX2FnZW50X3Jlc3BvbnNlKCkuDQorKyAqDQorKyAqIFRoZSBjYWxsaW5nIHRocmVh ZCBpcyBibG9ja2VkDQorICAqIHVudGlsIGEgcmVwbHkgaXMgcmVjZWl2ZWQuIFNlZQ0KKyAgKiBw b2xraXRfYXV0aG9yaXR5X3JlZ2lzdGVyX2F1dGhlbnRpY2F0aW9uX2FnZW50KCkgZm9yIHRoZQ0K KyAgKiBhc3luY2hyb25vdXMgdmVyc2lvbi4NCitAQCAtMTE3OCw2ICsxMTg4LDEwIEBAIHBvbGtp dF9hdXRob3JpdHlfcmVnaXN0ZXJfYXV0aGVudGljYXRpb25fYWdlbnRfc3luYyAoUG9sa2l0QXV0 aG9yaXR5ICAgICAqYXV0aG9yDQorICAqDQorICAqIEFzeW5jaHJvbm91c2x5IHJlZ2lzdGVycyBh biBhdXRoZW50aWNhdGlvbiBhZ2VudC4NCisgICoNCisrICogTm90ZSB0aGF0IHRoaXMgc2hvdWxk IGJlIGNhbGxlZCBieSB0aGUgc2FtZSBlZmZlY3RpdmUgVUlEIHdoaWNoIHdpbGwgYmUNCisrICog dGhlIHJlYWwgVUlEIHVzaW5nIHRoZSAjUG9sa2l0QWdlbnRTZXNzaW9uIEFQSSBvciBvdGhlcndp c2UgY2FsbGluZw0KKysgKiBwb2xraXRfYXV0aG9yaXR5X2F1dGhlbnRpY2F0aW9uX2FnZW50X3Jl c3BvbnNlKCkuDQorKyAqDQorICAqIFdoZW4gdGhlIG9wZXJhdGlvbiBpcyBmaW5pc2hlZCwgQGNh bGxiYWNrIHdpbGwgYmUgaW52b2tlZCBpbiB0aGUNCisgICogPGxpbmsgbGlua2VuZD0iZy1tYWlu LWNvbnRleHQtcHVzaC10aHJlYWQtZGVmYXVsdCI+dGhyZWFkLWRlZmF1bHQNCisgICogbWFpbiBs b29wPC9saW5rPiBvZiB0aGUgdGhyZWFkIHlvdSBhcmUgY2FsbGluZyB0aGlzIG1ldGhvZA0KK0BA IC0xMjkyLDcgKzEzMDYsMTMgQEAgcG9sa2l0X2F1dGhvcml0eV9yZWdpc3Rlcl9hdXRoZW50aWNh dGlvbl9hZ2VudF93aXRoX29wdGlvbnNfZmluaXNoIChQb2xraXRBdXRob3INCisgICogQGNhbmNl bGxhYmxlOiAoYWxsb3ctbm9uZSk6IEEgI0dDYW5jZWxsYWJsZSBvciAlTlVMTC4NCisgICogQGVy cm9yOiAoYWxsb3ctbm9uZSk6IFJldHVybiBsb2NhdGlvbiBmb3IgZXJyb3Igb3IgJU5VTEwuDQor ICAqDQorLSAqIFJlZ2lzdGVycyBhbiBhdXRoZW50aWNhdGlvbiBhZ2VudC4gVGhlIGNhbGxpbmcg dGhyZWFkIGlzIGJsb2NrZWQNCisrICogUmVnaXN0ZXJzIGFuIGF1dGhlbnRpY2F0aW9uIGFnZW50 Lg0KKysgKg0KKysgKiBOb3RlIHRoYXQgdGhpcyBzaG91bGQgYmUgY2FsbGVkIGJ5IHRoZSBzYW1l IGVmZmVjdGl2ZSBVSUQgd2hpY2ggd2lsbCBiZQ0KKysgKiB0aGUgcmVhbCBVSUQgdXNpbmcgdGhl ICNQb2xraXRBZ2VudFNlc3Npb24gQVBJIG9yIG90aGVyd2lzZSBjYWxsaW5nDQorKyAqIHBvbGtp dF9hdXRob3JpdHlfYXV0aGVudGljYXRpb25fYWdlbnRfcmVzcG9uc2UoKS4NCisrICoNCisrICog VGhlIGNhbGxpbmcgdGhyZWFkIGlzIGJsb2NrZWQNCisgICogdW50aWwgYSByZXBseSBpcyByZWNl aXZlZC4gU2VlDQorICAqIHBvbGtpdF9hdXRob3JpdHlfcmVnaXN0ZXJfYXV0aGVudGljYXRpb25f YWdlbnRfd2l0aF9vcHRpb25zKCkgZm9yIHRoZQ0KKyAgKiBhc3luY2hyb25vdXMgdmVyc2lvbi4N CitkaWZmIC0tZ2l0IGEvc3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50bGlzdGVuZXIuYyBiL3Ny Yy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudGxpc3RlbmVyLmMNCitpbmRleCAwZDk3NTAxLi4xMGRi ZmI5IDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudGxpc3RlbmVyLmMN CisrKysgYi9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRsaXN0ZW5lci5jDQorQEAgLTM3LDEw ICszNyw3IEBADQorICAqDQorICAqIFR5cGljYWxseSBhdXRoZW50aWNhdGlvbiBhZ2VudHMgdXNl ICNQb2xraXRBZ2VudFNlc3Npb24gdG8NCisgICogYXV0aGVudGljYXRlIHVzZXJzICh2aWEgcGFz c3dvcmRzKSBhbmQgY29tbXVuaWNhdGUgYmFjayB0aGUNCistICogYXV0aGVudGljYXRpb24gcmVz dWx0IHRvIHRoZSBQb2xpY3lLaXQgZGFlbW9uLiAgVGhpcyBpcyBob3dldmVyIG5vdA0KKy0gKiBy ZXF1aXJlbWVudC4gRGVwZW5kaW5nIG9uIHRoZSBzeXN0ZW0gYW4gYXV0aGVudGljYXRpb24gYWdl bnQgbWF5DQorLSAqIHVzZSBvdGhlciBtZWFucyAoc3VjaCBhcyBhIFllcy9ObyBkaWFsb2cpIHRv IG9idGFpbiBzdWZmaWNpZW50DQorLSAqIGV2aWRlbmNlIHRoYXQgdGhlIHVzZXIgaXMgb25lIG9m IHRoZSByZXF1ZXN0ZWQgaWRlbnRpdGllcy4NCisrICogYXV0aGVudGljYXRpb24gcmVzdWx0IHRv IHRoZSBQb2xpY3lLaXQgZGFlbW9uLg0KKyAgKg0KKyAgKiBUbyByZWdpc3RlciBhICNQb2xraXRB Z2VudExpc3RlbmVyIHdpdGggdGhlIFBvbGljeUtpdCBkYWVtb24sIHVzZQ0KKyAgKiBwb2xraXRf YWdlbnRfbGlzdGVuZXJfcmVnaXN0ZXIoKSBvcg0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0YmFj a2VuZC9wb2xraXRiYWNrZW5kYXV0aG9yaXR5LmMgYi9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRi YWNrZW5kYXV0aG9yaXR5LmMNCitpbmRleCBkMWIxYTI1Li4xMGI4YWYzIDEwMDY0NA0KKy0tLSBh L3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRhdXRob3JpdHkuYw0KKysrKyBiL3NyYy9w b2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRhdXRob3JpdHkuYw0KK0BAIC0zNDMsNiArMzQzLDcg QEAgcG9sa2l0X2JhY2tlbmRfYXV0aG9yaXR5X3VucmVnaXN0ZXJfYXV0aGVudGljYXRpb25fYWdl bnQgKFBvbGtpdEJhY2tlbmRBdXRob3JpdHkNCisgICogcG9sa2l0X2JhY2tlbmRfYXV0aG9yaXR5 X2F1dGhlbnRpY2F0aW9uX2FnZW50X3Jlc3BvbnNlOg0KKyAgKiBAYXV0aG9yaXR5OiBBICNQb2xr aXRCYWNrZW5kQXV0aG9yaXR5Lg0KKyAgKiBAY2FsbGVyOiBUaGUgc3lzdGVtIGJ1cyBuYW1lIHRo YXQgaW5pdGlhdGVkIHRoZSBxdWVyeS4NCisrICogQHVpZDogVGhlIHJlYWwgVUlEIG9mIHRoZSBy ZWdpc3RlcmVkIGFnZW50LCBvciAodWlkX3QpLTEgaWYgdW5rbm93bi4NCisgICogQGNvb2tpZTog VGhlIGNvb2tpZSBwYXNzZWQgdG8gdGhlIGF1dGhlbnRpY2F0aW9uIGFnZW50IGZyb20gdGhlIGF1 dGhvcml0eS4NCisgICogQGlkZW50aXR5OiBUaGUgaWRlbnRpdHkgdGhhdCB3YXMgYXV0aGVudGlj YXRlZC4NCisgICogQGVycm9yOiBSZXR1cm4gbG9jYXRpb24gZm9yIGVycm9yIG9yICVOVUxMLg0K ZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL3BrZXhlYy1Xb3JrLWFyb3Vu ZC1zeXN0ZW1kLWluamVjdGluZy1icm9rZW4tWERHX1JVTlQucGF0Y2ggYi9wYXRjaGVzL3BvbGtp dC0wLjEwNS8wLjExMy9wa2V4ZWMtV29yay1hcm91bmQtc3lzdGVtZC1pbmplY3RpbmctYnJva2Vu LVhER19SVU5ULnBhdGNoDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi5l OGU5YjZiMWQNCi0tLSAvZGV2L251bGwNCisrKyBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEz L3BrZXhlYy1Xb3JrLWFyb3VuZC1zeXN0ZW1kLWluamVjdGluZy1icm9rZW4tWERHX1JVTlQucGF0 Y2gNCkBAIC0wLDAgKzEsNzYgQEANCitGcm9tOiBDb2xpbiBXYWx0ZXJzIDx3YWx0ZXJzQHZlcmJ1 bS5vcmc+DQorRGF0ZTogVGh1LCAyMSBOb3YgMjAxMyAxNzozOTozNyAtMDUwMA0KK1N1YmplY3Q6 IHBrZXhlYzogV29yayBhcm91bmQgc3lzdGVtZCBpbmplY3RpbmcgYnJva2VuIFhER19SVU5USU1F X0RJUg0KKw0KK1RoaXMgd29ya2Fyb3VuZCBpc24ndCB0b28gbXVjaCBjb2RlLCBhbmQgaXQncyBv ZnRlbiBiZXR0ZXIgdG8gZml4IGJ1Z3MNCitpbiB0d28gcGxhY2VzIGFueXdheXMuDQorDQorRm9y IG1vcmUgaW5mb3JtYXRpb246DQorDQorU2VlIGh0dHBzOi8vYnVnemlsbGEucmVkaGF0LmNvbS9z aG93X2J1Zy5jZ2k/aWQ9NzUzODgyDQorU2VlIGh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv YXJjaGl2ZXMvc3lzdGVtZC1kZXZlbC8yMDEzLU5vdmVtYmVyLzAxNDM3MC5odG1sDQorDQorT3Jp Z2luOiB1cHN0cmVhbSwgMC4xMTMsIGNvbW1pdDo4NjM1ZmZjMTZhZWZmNmEwN2Q2NzVmODYxZmUw ZGVhMDNlYTgxZDdlDQorLS0tDQorIHNyYy9wcm9ncmFtcy9wa2V4ZWMuYyB8IDMzICsrKysrKysr KysrKysrKysrKysrKysrKysrKysrKy0tLQ0KKyAxIGZpbGUgY2hhbmdlZCwgMzAgaW5zZXJ0aW9u cygrKSwgMyBkZWxldGlvbnMoLSkNCisNCitkaWZmIC0tZ2l0IGEvc3JjL3Byb2dyYW1zL3BrZXhl Yy5jIGIvc3JjL3Byb2dyYW1zL3BrZXhlYy5jDQoraW5kZXggOWEwNTcwYS4uNWU5OTA0NCAxMDA2 NDQNCistLS0gYS9zcmMvcHJvZ3JhbXMvcGtleGVjLmMNCisrKysgYi9zcmMvcHJvZ3JhbXMvcGtl eGVjLmMNCitAQCAtMTM5LDggKzEzOSwyMiBAQCBwYW1fY29udmVyc2F0aW9uX2Z1bmN0aW9uIChp bnQgbiwNCisgICByZXR1cm4gUEFNX0NPTlZfRVJSOw0KKyB9DQorIA0KKysvKiBBIHdvcmsgYXJv dW5kIGZvcjoNCisrICogaHR0cHM6Ly9idWd6aWxsYS5yZWRoYXQuY29tL3Nob3dfYnVnLmNnaT9p ZD03NTM4ODINCisrICovDQorK3N0YXRpYyBnYm9vbGVhbg0KKyt4ZGdfcnVudGltZV9kaXJfaXNf b3duZWRfYnkgKGNvbnN0IGNoYXIgKnBhdGgsDQorKwkJCSAgICAgdWlkX3QgICAgICAgdGFyZ2V0 X3VpZCkNCisrew0KKysgIHN0cnVjdCBzdGF0IHN0YnVmOw0KKysNCisrICByZXR1cm4gc3RhdCAo cGF0aCwgJnN0YnVmKSA9PSAwICYmDQorKyAgICBzdGJ1Zi5zdF91aWQgPT0gdGFyZ2V0X3VpZDsN CisrfQ0KKysNCisgc3RhdGljIGdib29sZWFuDQorLW9wZW5fc2Vzc2lvbiAoY29uc3QgZ2NoYXIg KnVzZXJfdG9fYXV0aCkNCisrb3Blbl9zZXNzaW9uIChjb25zdCBnY2hhciAqdXNlcl90b19hdXRo LA0KKysJICAgICAgdWlkX3QgICAgICAgIHRhcmdldF91aWQpDQorIHsNCisgICBnYm9vbGVhbiBy ZXQ7DQorICAgZ2ludCByYzsNCitAQCAtMTgyLDcgKzE5NiwxOSBAQCBvcGVuX3Nlc3Npb24gKGNv bnN0IGdjaGFyICp1c2VyX3RvX2F1dGgpDQorICAgICB7DQorICAgICAgIGd1aW50IG47DQorICAg ICAgIGZvciAobiA9IDA7IGVudmxpc3Rbbl07IG4rKykNCistICAgICAgICBwdXRlbnYgKGVudmxp c3Rbbl0pOw0KKysJew0KKysJICBjb25zdCBjaGFyICplbnZpdGVtID0gZW52bGlzdFtuXTsNCisr CSAgDQorKwkgIGlmIChnX3N0cl9oYXNfcHJlZml4IChlbnZpdGVtLCAiWERHX1JVTlRJTUVfRElS PSIpKQ0KKysJICAgIHsNCisrCSAgICAgIGNvbnN0IGNoYXIgKmVxID0gc3RyY2hyIChlbnZpdGVt LCAnPScpOw0KKysJICAgICAgZ19hc3NlcnQgKGVxKTsNCisrCSAgICAgIGlmICgheGRnX3J1bnRp bWVfZGlyX2lzX293bmVkX2J5IChlcSArIDEsIHRhcmdldF91aWQpKQ0KKysJCWNvbnRpbnVlOw0K KysJICAgIH0NCisrDQorKwkgIHB1dGVudiAoZW52bGlzdFtuXSk7DQorKwl9DQorICAgICAgIGZy ZWUgKGVudmxpc3QpOw0KKyAgICAgfQ0KKyANCitAQCAtODkyLDcgKzkxOCw4IEBAIG1haW4gKGlu dCBhcmdjLCBjaGFyICphcmd2W10pDQorICAgICogQXMgZXZpZGVudCBhYm92ZSwgbmVpdGhlciBz dSgxKSAoYW5kLCBmb3IgdGhhdCBtYXR0ZXIsIG5vciBzdWRvKDgpKSBkb2VzIHRoaXMuDQorICAg ICovDQorICNpZmRlZiBQT0xLSVRfQVVUSEZXX1BBTQ0KKy0gIGlmICghb3Blbl9zZXNzaW9uIChw dy0+cHdfbmFtZSkpDQorKyAgaWYgKCFvcGVuX3Nlc3Npb24gKHB3LT5wd19uYW1lLA0KKysJCSAg ICAgcHctPnB3X3VpZCkpDQorICAgICB7DQorICAgICAgIGdvdG8gb3V0Ow0KKyAgICAgfQ0KZGlm ZiAtLWdpdCBhL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL3BvbGtpdGQtRml4LXByb2JsZW0t d2l0aC1yZW1vdmluZy1ub24tZXhpc3RlbnQtc291cmMucGF0Y2ggYi9wYXRjaGVzL3BvbGtpdC0w LjEwNS8wLjExMy9wb2xraXRkLUZpeC1wcm9ibGVtLXdpdGgtcmVtb3Zpbmctbm9uLWV4aXN0ZW50 LXNvdXJjLnBhdGNoDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi4xNzM3 MDIwZmMNCi0tLSAvZGV2L251bGwNCisrKyBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL3Bv bGtpdGQtRml4LXByb2JsZW0td2l0aC1yZW1vdmluZy1ub24tZXhpc3RlbnQtc291cmMucGF0Y2gN CkBAIC0wLDAgKzEsMjMgQEANCitGcm9tOiBMdWthc3ogU2thbHNraSA8bC5za2Fsc2tpQHNhbXN1 bmcuY29tPg0KK0RhdGU6IFR1ZSwgMjIgQXByIDIwMTQgMTE6MTE6MjAgKzAyMDANCitTdWJqZWN0 OiBwb2xraXRkOiBGaXggcHJvYmxlbSB3aXRoIHJlbW92aW5nIG5vbi1leGlzdGVudCBzb3VyY2UN CisNCitCdWc6IGh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTc3 MTY3DQorQXBwbGllZC11cHN0cmVhbTogMC4xMTMsIGNvbW1pdDozY2E0ZTAwYzdlMDAzZWE4MGFh OTZiNDk5YmM3Y2Q4MzI0NmQ3MTA4DQorLS0tDQorIHNyYy9wb2xraXRkL21haW4uYyB8IDIgKy0N CisgMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pDQorDQorZGlm ZiAtLWdpdCBhL3NyYy9wb2xraXRkL21haW4uYyBiL3NyYy9wb2xraXRkL21haW4uYw0KK2luZGV4 IGIyMTcyM2YuLmYxOGZiOTEgMTAwNjQ0DQorLS0tIGEvc3JjL3BvbGtpdGQvbWFpbi5jDQorKysr IGIvc3JjL3BvbGtpdGQvbWFpbi5jDQorQEAgLTkzLDcgKzkzLDcgQEAgb25fc2lnaW50IChncG9p bnRlciB1c2VyX2RhdGEpDQorIHsNCisgICBnX3ByaW50ICgiSGFuZGxpbmcgU0lHSU5UXG4iKTsN CisgICBnX21haW5fbG9vcF9xdWl0IChsb29wKTsNCistICByZXR1cm4gRkFMU0U7DQorKyAgcmV0 dXJuIFRSVUU7DQorIH0NCisgDQorIGludA0KZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9sa2l0LTAu MTA1LzAuMTEzL3Nlc3Npb25tb25pdG9yLXN5c3RlbWQtRGVkdXBsaWNhdGUtY29kZS1wYXRocy5w YXRjaCBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL3Nlc3Npb25tb25pdG9yLXN5c3RlbWQt RGVkdXBsaWNhdGUtY29kZS1wYXRocy5wYXRjaA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4 IDAwMDAwMDAwMC4uZTdkMGE0YjdmDQotLS0gL2Rldi9udWxsDQorKysgYi9wYXRjaGVzL3BvbGtp dC0wLjEwNS8wLjExMy9zZXNzaW9ubW9uaXRvci1zeXN0ZW1kLURlZHVwbGljYXRlLWNvZGUtcGF0 aHMucGF0Y2gNCkBAIC0wLDAgKzEsMTA0IEBADQorRnJvbTogQ29saW4gV2FsdGVycyA8d2FsdGVy c0B2ZXJidW0ub3JnPg0KK0RhdGU6IFRodSwgNyBOb3YgMjAxMyAxNTo1Nzo1MCAtMDUwMA0KK1N1 YmplY3Q6IHNlc3Npb25tb25pdG9yLXN5c3RlbWQ6IERlZHVwbGljYXRlIGNvZGUgcGF0aHMNCisN CitXZSBoYWQgdGhlIGNvZGUgdG8gZ28gZnJvbSBwaWQgLT4gc2Vzc2lvbiBkdXBsaWNhdGVkLiAg SWYgd2UgaGF2ZSBhDQorUG9sa2l0U3lzdGVtQnVzTmFtZSwgY29udmVydCBpdCB0byBhIFBvbGtp dFVuaXhQcm9jZXNzLg0KK1RoZW4gd2UgY2FuIGRvIFBvbGtpdFVuaXhQcm9jZXNzIC0+IHBpZCAt PiBzZXNzaW9uIGluIG9uZSBwbGFjZS4NCisNCitUaGlzIGlzIGp1c3QgYSBjb2RlIGNsZWFudXAu DQorDQorQnVnOiBodHRwczovL2J1Z3MuZnJlZWRlc2t0b3Aub3JnL3Nob3dfYnVnLmNnaT9pZD02 OTUzOA0KK09yaWdpbjogdXBzdHJlYW0sIDAuMTEzLCBjb21taXQ6MjZkMGMwNTc4MjExZmI5NmZj OGZlNzU1NzJhYTExYWQ2ZWNiZjliOA0KKy0tLQ0KKyAuLi4vcG9sa2l0YmFja2VuZHNlc3Npb25t b25pdG9yLXN5c3RlbWQuYyAgICAgICAgICB8IDYzICsrKysrKysrLS0tLS0tLS0tLS0tLS0NCisg MSBmaWxlIGNoYW5nZWQsIDIyIGluc2VydGlvbnMoKyksIDQxIGRlbGV0aW9ucygtKQ0KKw0KK2Rp ZmYgLS1naXQgYS9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kc2Vzc2lvbm1vbml0b3It c3lzdGVtZC5jIGIvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZHNlc3Npb25tb25pdG9y LXN5c3RlbWQuYw0KK2luZGV4IDAxODUzMTAuLjc1NmI3MjggMTAwNjQ0DQorLS0tIGEvc3JjL3Bv bGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZHNlc3Npb25tb25pdG9yLXN5c3RlbWQuYw0KKysrKyBi L3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRzZXNzaW9ubW9uaXRvci1zeXN0ZW1kLmMN CitAQCAtMzEzLDYxICszMTMsNDIgQEAgcG9sa2l0X2JhY2tlbmRfc2Vzc2lvbl9tb25pdG9yX2dl dF9zZXNzaW9uX2Zvcl9zdWJqZWN0IChQb2xraXRCYWNrZW5kU2Vzc2lvbk1vbmkNCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQb2xraXRT dWJqZWN0ICAgICAgICAgICAgICAgKnN1YmplY3QsDQorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0Vycm9yICAgICAgICAgICAgICAgICAg ICAgKiplcnJvcikNCisgew0KKy0gIFBvbGtpdFN1YmplY3QgKnNlc3Npb247DQorLQ0KKy0gIHNl c3Npb24gPSBOVUxMOw0KKysgIFBvbGtpdFVuaXhQcm9jZXNzICp0bXBfcHJvY2VzcyA9IE5VTEw7 DQorKyAgUG9sa2l0VW5peFByb2Nlc3MgKnByb2Nlc3MgPSBOVUxMOw0KKysgIFBvbGtpdFN1Ympl Y3QgKnNlc3Npb24gPSBOVUxMOw0KKysgIGNoYXIgKnNlc3Npb25faWQgPSBOVUxMOw0KKysgIHBp ZF90IHBpZDsNCisgDQorICAgaWYgKFBPTEtJVF9JU19VTklYX1BST0NFU1MgKHN1YmplY3QpKQ0K Ky0gICAgew0KKy0gICAgICBnY2hhciAqc2Vzc2lvbl9pZDsNCistICAgICAgcGlkX3QgcGlkOw0K Ky0NCistICAgICAgcGlkID0gcG9sa2l0X3VuaXhfcHJvY2Vzc19nZXRfcGlkIChQT0xLSVRfVU5J WF9QUk9DRVNTIChzdWJqZWN0KSk7DQorLSAgICAgIGlmIChzZF9waWRfZ2V0X3Nlc3Npb24gKHBp ZCwgJnNlc3Npb25faWQpIDwgMCkNCistICAgICAgICBnb3RvIG91dDsNCistDQorLSAgICAgIHNl c3Npb24gPSBwb2xraXRfdW5peF9zZXNzaW9uX25ldyAoc2Vzc2lvbl9pZCk7DQorLSAgICAgIGZy ZWUgKHNlc3Npb25faWQpOw0KKy0gICAgfQ0KKysgICAgcHJvY2VzcyA9IFBPTEtJVF9VTklYX1BS T0NFU1MgKHN1YmplY3QpOyAvKiBXZSBhbHJlYWR5IGhhdmUgYSBwcm9jZXNzICovDQorICAgZWxz ZSBpZiAoUE9MS0lUX0lTX1NZU1RFTV9CVVNfTkFNRSAoc3ViamVjdCkpDQorICAgICB7DQorLSAg ICAgIGd1aW50MzIgcGlkOw0KKy0gICAgICBnY2hhciAqc2Vzc2lvbl9pZDsNCistICAgICAgR1Zh cmlhbnQgKnJlc3VsdDsNCistDQorLSAgICAgIHJlc3VsdCA9IGdfZGJ1c19jb25uZWN0aW9uX2Nh bGxfc3luYyAobW9uaXRvci0+c3lzdGVtX2J1cywNCistICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAib3JnLmZyZWVkZXNrdG9wLkRCdXMiLA0KKy0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIvb3JnL2ZyZWVkZXNrdG9wL0RCdXMi LA0KKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJvcmcuZnJl ZWRlc2t0b3AuREJ1cyIsDQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIkdldENvbm5lY3Rpb25Vbml4UHJvY2Vzc0lEIiwNCistICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBnX3ZhcmlhbnRfbmV3ICgiKHMpIiwgcG9sa2l0X3N5 c3RlbV9idXNfbmFtZV9nZXRfbmFtZSAoUE9MS0lUX1NZU1RFTV9CVVNfTkFNRSAoc3ViamVjdCkp KSwNCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHX1ZBUklB TlRfVFlQRSAoIih1KSIpLA0KKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIEdfREJVU19DQUxMX0ZMQUdTX05PTkUsDQorLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgLTEsIC8qIHRpbWVvdXRfbXNlYyAqLw0KKy0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIEdDYW5jZWxsYWJsZSAq Lw0KKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yKTsN CistICAgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQ0KKy0gICAgICAgIGdvdG8gb3V0Ow0KKy0gICAg ICBnX3ZhcmlhbnRfZ2V0IChyZXN1bHQsICIodSkiLCAmcGlkKTsNCistICAgICAgZ192YXJpYW50 X3VucmVmIChyZXN1bHQpOw0KKy0NCistICAgICAgaWYgKHNkX3BpZF9nZXRfc2Vzc2lvbiAocGlk LCAmc2Vzc2lvbl9pZCkgPCAwKQ0KKy0gICAgICAgIGdvdG8gb3V0Ow0KKy0NCistICAgICAgc2Vz c2lvbiA9IHBvbGtpdF91bml4X3Nlc3Npb25fbmV3IChzZXNzaW9uX2lkKTsNCistICAgICAgZnJl ZSAoc2Vzc2lvbl9pZCk7DQorKyAgICAgIC8qIENvbnZlcnQgYnVzIG5hbWUgdG8gcHJvY2VzcyAq Lw0KKysgICAgICB0bXBfcHJvY2VzcyA9IChQb2xraXRVbml4UHJvY2VzcyopcG9sa2l0X3N5c3Rl bV9idXNfbmFtZV9nZXRfcHJvY2Vzc19zeW5jIChQT0xLSVRfU1lTVEVNX0JVU19OQU1FIChzdWJq ZWN0KSwgTlVMTCwgZXJyb3IpOw0KKysgICAgICBpZiAoIXRtcF9wcm9jZXNzKQ0KKysJZ290byBv dXQ7DQorKyAgICAgIHByb2Nlc3MgPSB0bXBfcHJvY2VzczsNCisgICAgIH0NCisgICBlbHNlDQor ICAgICB7DQorICAgICAgIGdfc2V0X2Vycm9yIChlcnJvciwNCisgICAgICAgICAgICAgICAgICAg IFBPTEtJVF9FUlJPUiwNCisgICAgICAgICAgICAgICAgICAgIFBPTEtJVF9FUlJPUl9OT1RfU1VQ UE9SVEVELA0KKy0gICAgICAgICAgICAgICAgICAgIkNhbm5vdCBnZXQgdXNlciBmb3Igc3ViamVj dCBvZiB0eXBlICVzIiwNCisrICAgICAgICAgICAgICAgICAgICJDYW5ub3QgZ2V0IHNlc3Npb24g Zm9yIHN1YmplY3Qgb2YgdHlwZSAlcyIsDQorICAgICAgICAgICAgICAgICAgICBnX3R5cGVfbmFt ZSAoR19UWVBFX0ZST01fSU5TVEFOQ0UgKHN1YmplY3QpKSk7DQorICAgICB9DQorIA0KKy0gb3V0 Og0KKysgIC8qIE5vdyBkbyBwcm9jZXNzIC0+IHBpZCAtPiBzZXNzaW9uICovDQorKyAgZ19hc3Nl cnQgKHByb2Nlc3MgIT0gTlVMTCk7DQorKyAgcGlkID0gcG9sa2l0X3VuaXhfcHJvY2Vzc19nZXRf cGlkIChwcm9jZXNzKTsNCisgDQorKyAgaWYgKHNkX3BpZF9nZXRfc2Vzc2lvbiAocGlkLCAmc2Vz c2lvbl9pZCkgPCAwKQ0KKysgICAgZ290byBvdXQ7DQorKyAgDQorKyAgc2Vzc2lvbiA9IHBvbGtp dF91bml4X3Nlc3Npb25fbmV3IChzZXNzaW9uX2lkKTsNCisrICBmcmVlIChzZXNzaW9uX2lkKTsN CisrIG91dDoNCisrICBpZiAodG1wX3Byb2Nlc3MpIGdfb2JqZWN0X3VucmVmICh0bXBfcHJvY2Vz cyk7DQorICAgcmV0dXJuIHNlc3Npb247DQorIH0NCisgDQpkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9w b2xraXQtMC4xMDUvMC4xMTMvc2Vzc2lvbm1vbml0b3Itc3lzdGVtZC1Vc2Utc2RfdWlkX2dldF9z dGF0ZS10by1jaGVjay5wYXRjaCBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL3Nlc3Npb25t b25pdG9yLXN5c3RlbWQtVXNlLXNkX3VpZF9nZXRfc3RhdGUtdG8tY2hlY2sucGF0Y2gNCm5ldyBm aWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAuLjdjMGNhNGJiNA0KLS0tIC9kZXYvbnVs bA0KKysrIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvc2Vzc2lvbm1vbml0b3Itc3lzdGVt ZC1Vc2Utc2RfdWlkX2dldF9zdGF0ZS10by1jaGVjay5wYXRjaA0KQEAgLTAsMCArMSw3MyBAQA0K K0Zyb206IFBoaWxpcCBXaXRobmFsbCA8cGhpbGlwLndpdGhuYWxsQGNvbGxhYm9yYS5jby51az4N CitEYXRlOiBUdWUsIDIgSnVuIDIwMTUgMTY6MTk6NTEgKzAxMDANCitTdWJqZWN0OiBzZXNzaW9u bW9uaXRvci1zeXN0ZW1kOiBVc2Ugc2RfdWlkX2dldF9zdGF0ZSgpIHRvIGNoZWNrIHNlc3Npb24N CisgYWN0aXZpdHkNCitNSU1FLVZlcnNpb246IDEuMA0KK0NvbnRlbnQtVHlwZTogdGV4dC9wbGFp bjsgY2hhcnNldD0idXRmLTgiDQorQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdA0KKw0K K0luc3RlYWQgb2YgdXNpbmcgc2RfcGlkX2dldF9zZXNzaW9uKCkgdGhlbiBzZF9zZXNzaW9uX2lz X2FjdGl2ZSgpIHRvDQorZGV0ZXJtaW5lIHdoZXRoZXIgdGhlIHVzZXIgaXMgYWN0aXZlLCB1c2Ug c2RfdWlkX2dldF9zdGF0ZSgpIGRpcmVjdGx5Lg0KK1RoaXMgZ2V0cyB0aGUgbWF4aW11bSBvZiB0 aGUgc3RhdGVzIG9mIGFsbCB0aGUgdXNlcuKAmXMgc2Vzc2lvbnMsIHJhdGhlcg0KK3RoYW4gdGhl IHN0YXRlIG9mIHRoZSBzZXNzaW9uIGNvbnRhaW5pbmcgdGhlIHN1YmplY3QgcHJvY2Vzcy4gU2lu Y2UgdGhlDQordXNlciBpcyB0aGUgc2VjdXJpdHkgYm91bmRhcnksIHRoaXMgaXMgZmluZS4NCisN CitUaGlzIGNoYW5nZSBpcyBuZWNlc3NhcnkgZm9yIGBzeXN0ZW1kIC0tdXNlcmAgc2Vzc2lvbnMs IHdoZXJlIG1vc3QgdXNlcg0KK2NvZGUgd2lsbCBiZSBmb3JrZWQgb2ZmIHVzZXJALnNlcnZpY2Us IHJhdGhlciB0aGFuIHJ1bm5pbmcgaW5zaWRlIHRoZQ0KK2xvZ2luZCBzZXNzaW9uICh3aGV0aGVy IHRoYXQgYmUgYSBmb3JlZ3JvdW5kL2FjdGl2ZSBvciBiYWNrZ3JvdW5kL29ubGluZQ0KK3Nlc3Np b24pLg0KKw0KK1BvbGljeS13aXNlLCB0aGUgY2hhbmdlIGlzIGZyb20gY2hlY2tpbmcgd2hldGhl ciB0aGUgc3ViamVjdCBwcm9jZXNzIGlzDQoraW4gYW4gYWN0aXZlIHNlc3Npb247IHRvIGNoZWNr aW5nIHdoZXRoZXIgdGhlIHN1YmplY3QgcHJvY2VzcyBpcyBvd25lZA0KK2J5IGEgdXNlciB3aXRo IGF0IGxlYXN0IG9uZSBhY3RpdmUgc2Vzc2lvbi4NCisNCitCdWc6IGh0dHBzOi8vYnVncy5mcmVl ZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTc2MzU4DQorQXBwbGllZC11cHN0cmVhbTogMC4x MTMsIGNvbW1pdDphMjk2NTNmZmE5OWUwODA5ZTE1YWEzNGFmY2Q3YjJkZjg1OTM4NzFjDQorQnVn LURlYmlhbjogaHR0cHM6Ly9idWdzLmRlYmlhbi5vcmcvNzc5OTg4DQorLS0tDQorIC4uLi9wb2xr aXRiYWNrZW5kc2Vzc2lvbm1vbml0b3Itc3lzdGVtZC5jICAgICAgICAgIHwgMzMgKysrKysrKysr KysrKysrKysrKysrLQ0KKyAxIGZpbGUgY2hhbmdlZCwgMzIgaW5zZXJ0aW9ucygrKSwgMSBkZWxl dGlvbigtKQ0KKw0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5k c2Vzc2lvbm1vbml0b3Itc3lzdGVtZC5jIGIvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2Vu ZHNlc3Npb25tb25pdG9yLXN5c3RlbWQuYw0KK2luZGV4IGViZDA1Y2UuLjZiZDUxN2EgMTAwNjQ0 DQorLS0tIGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZHNlc3Npb25tb25pdG9yLXN5 c3RlbWQuYw0KKysrKyBiL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRzZXNzaW9ubW9u aXRvci1zeXN0ZW1kLmMNCitAQCAtMzkxLDYgKzM5MSwzNyBAQCBnYm9vbGVhbg0KKyBwb2xraXRf YmFja2VuZF9zZXNzaW9uX21vbml0b3JfaXNfc2Vzc2lvbl9hY3RpdmUgKFBvbGtpdEJhY2tlbmRT ZXNzaW9uTW9uaXRvciAqbW9uaXRvciwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBQb2xraXRTdWJqZWN0ICAgICAgICAgICAgICAgKnNlc3Npb24p DQorIHsNCistICByZXR1cm4gc2Rfc2Vzc2lvbl9pc19hY3RpdmUgKHBvbGtpdF91bml4X3Nlc3Np b25fZ2V0X3Nlc3Npb25faWQgKFBPTEtJVF9VTklYX1NFU1NJT04gKHNlc3Npb24pKSk7DQorKyAg Y29uc3QgY2hhciAqc2Vzc2lvbl9pZDsNCisrICBjaGFyICpzdGF0ZTsNCisrICB1aWRfdCB1aWQ7 DQorKyAgZ2Jvb2xlYW4gaXNfYWN0aXZlID0gRkFMU0U7DQorKw0KKysgIHNlc3Npb25faWQgPSBw b2xraXRfdW5peF9zZXNzaW9uX2dldF9zZXNzaW9uX2lkIChQT0xLSVRfVU5JWF9TRVNTSU9OIChz ZXNzaW9uKSk7DQorKw0KKysgIGdfZGVidWcgKCJDaGVja2luZyB3aGV0aGVyIHNlc3Npb24gJXMg aXMgYWN0aXZlLiIsIHNlc3Npb25faWQpOw0KKysNCisrICAvKiBDaGVjayB3aGV0aGVyICphbnkq IG9mIHRoZSB1c2VyJ3MgY3VycmVudCBzZXNzaW9ucyBhcmUgYWN0aXZlLiAqLw0KKysgIGlmIChz ZF9zZXNzaW9uX2dldF91aWQgKHNlc3Npb25faWQsICZ1aWQpIDwgMCkNCisrICAgIGdvdG8gZmFs bGJhY2s7DQorKw0KKysgIGdfZGVidWcgKCJTZXNzaW9uICVzIGhhcyBVSUQgJXUuIiwgc2Vzc2lv bl9pZCwgdWlkKTsNCisrDQorKyAgaWYgKHNkX3VpZF9nZXRfc3RhdGUgKHVpZCwgJnN0YXRlKSA8 IDApDQorKyAgICBnb3RvIGZhbGxiYWNrOw0KKysNCisrICBnX2RlYnVnICgiVUlEICV1IGhhcyBz dGF0ZSAlcy4iLCB1aWQsIHN0YXRlKTsNCisrDQorKyAgaXNfYWN0aXZlID0gKGdfc3RyY21wMCAo c3RhdGUsICJhY3RpdmUiKSA9PSAwKTsNCisrICBmcmVlIChzdGF0ZSk7DQorKw0KKysgIHJldHVy biBpc19hY3RpdmU7DQorKw0KKytmYWxsYmFjazoNCisrICAvKiBGYWxsIGJhY2sgdG8gY2hlY2tp bmcgdGhlIHNlc3Npb24uIFRoaXMgaXMgbm90IGlkZWFsLCBzaW5jZSB0aGUgdXNlcg0KKysgICAq IG1pZ2h0IGhhdmUgbXVsdGlwbGUgc2Vzc2lvbnMsIGFuZCB3ZSBjYW5ub3QgZ3VhcmFudGVlIHRv IGhhdmUgY2hvc2VuDQorKyAgICogdGhlIGFjdGl2ZSBvbmUuDQorKyAgICoNCisrICAgKiBTZWU6 IGh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTc2MzU4LiAqLw0K KysgIHJldHVybiBzZF9zZXNzaW9uX2lzX2FjdGl2ZSAoc2Vzc2lvbl9pZCk7DQorIH0NCisgDQpk aWZmIC0tZ2l0IGEvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvc2Vzc2lvbm1vbml0b3Itc3lz dGVtZC1wcmVwYXJlLWZvci1ELUJ1cy11c2VyLWJ1cy1tby5wYXRjaCBiL3BhdGNoZXMvcG9sa2l0 LTAuMTA1LzAuMTEzL3Nlc3Npb25tb25pdG9yLXN5c3RlbWQtcHJlcGFyZS1mb3ItRC1CdXMtdXNl ci1idXMtbW8ucGF0Y2gNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAuLjZi MDljZTc5YQ0KLS0tIC9kZXYvbnVsbA0KKysrIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMv c2Vzc2lvbm1vbml0b3Itc3lzdGVtZC1wcmVwYXJlLWZvci1ELUJ1cy11c2VyLWJ1cy1tby5wYXRj aA0KQEAgLTAsMCArMSw4OSBAQA0KK0Zyb206IEtheSBTaWV2ZXJzIDxrYXlAdnJmeS5vcmc+DQor RGF0ZTogTW9uLCAxOSBNYXkgMjAxNCAxMDoxOTo0OSArMDkwMA0KK1N1YmplY3Q6IHNlc3Npb25t b25pdG9yLXN5c3RlbWQ6IHByZXBhcmUgZm9yIEQtQnVzICJ1c2VyIGJ1cyIgbW9kZWwNCisNCitJ biB0aGUgRC1CdXMgInVzZXIgYnVzIiBtb2RlbCwgYWxsIHNlc3Npb25zIG9mIGEgdXNlciBzaGFy ZSB0aGUgc2FtZQ0KK0QtQnVzIGluc3RhbmNlLCBhIHBvbGtpdCByZXF1ZXN0aW5nIHByb2Nlc3Mg bWlnaHQgbGl2ZSBvdXRzaWRlIHRoZQ0KK2xvZ2luIHNlc3Npb24gd2hpY2ggcmVnaXN0ZXJlZCB0 aGUgdXNlcidzIHBvbGtpdCBhZ2VudC4NCisNCitJbiBjYXNlIGEgcG9sa2l0IHJlcXVlc3Rpbmcg cHJvY2VzcyBpcyBub3QgcGFydCBvZiB0aGUgdXNlcidzIGxvZ2luDQorc2Vzc2lvbiwgd2UgYXNr IHN5c3RlbWQtbG9naW5kIGZvciB0aGUgdXNlcidzICJkaXNwbGF5IiBzZXNzaW9uDQoraW5zdGVh ZC4NCisNCitCdWc6IGh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lk PTc4OTA1DQorQnVnLURlYmlhbjogaHR0cHM6Ly9idWdzLmRlYmlhbi5vcmcvNzc5OTg4DQorQXBw bGllZC11cHN0cmVhbTogMC4xMTMsIGNvbW1pdDphNjhmNWRmZDc2NjI3NjdiN2I5ODIyMDkwYjcw YmM1YmQxNDVjNTBjDQorW3NtY3Y6IGJhY2twb3J0IGNvbmZpZ3VyZS5hYyBjaGFuZ2VzOyBmYWls IHdpdGggI2Vycm9yIGlmIHRoZSByZXF1aXJlZA0KK0FQSSBpcyBub3QgZm91bmRdDQorLS0tDQor IGNvbmZpZ3VyZS5hYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQg KysrDQorIC4uLi9wb2xraXRiYWNrZW5kc2Vzc2lvbm1vbml0b3Itc3lzdGVtZC5jICAgICAgICAg IHwgMjkgKysrKysrKysrKysrKysrKysrLS0tLQ0KKyAyIGZpbGVzIGNoYW5nZWQsIDI4IGluc2Vy dGlvbnMoKyksIDUgZGVsZXRpb25zKC0pDQorDQorZGlmZiAtLWdpdCBhL2NvbmZpZ3VyZS5hYyBi L2NvbmZpZ3VyZS5hYw0KK2luZGV4IGY0YTBjNDEuLmFhMjc2MGYgMTAwNjQ0DQorLS0tIGEvY29u ZmlndXJlLmFjDQorKysrIGIvY29uZmlndXJlLmFjDQorQEAgLTE2NSw2ICsxNjUsMTAgQEAgaWYg dGVzdCAiJGVuYWJsZV9zeXN0ZW1kIiAhPSAibm8iOyB0aGVuDQorICAgICAgICAgICAgICAgICAg ICAgaGF2ZV9zeXN0ZW1kPW5vKQ0KKyAgIGlmIHRlc3QgIiRoYXZlX3N5c3RlbWQiID0gInllcyI7 IHRoZW4NCisgICAgIFNFU1NJT05fVFJBQ0tJTkc9c3lzdGVtZA0KKysgICAgc2F2ZV9MSUJTPSRM SUJTDQorKyAgICBMSUJTPSRTWVNURU1EX0xJQlMNCisrICAgIEFDX0NIRUNLX0ZVTkNTKHNkX3Vp ZF9nZXRfZGlzcGxheSkNCisrICAgIExJQlM9JHNhdmVfTElCUw0KKyAgIGVsc2UNCisgICAgIGlm IHRlc3QgIiRlbmFibGVfc3lzdGVtZCIgPSAieWVzIjsgdGhlbg0KKyAgICAgICBBQ19NU0dfRVJS T1IoW3N5c3RlbWQgc3VwcG9ydCByZXF1ZXN0ZWQgYnV0IGxpYnN5c3RlbWQtbG9naW4xIGxpYnJh cnkgbm90IGZvdW5kXSkNCitkaWZmIC0tZ2l0IGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFj a2VuZHNlc3Npb25tb25pdG9yLXN5c3RlbWQuYyBiL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJh Y2tlbmRzZXNzaW9ubW9uaXRvci1zeXN0ZW1kLmMNCitpbmRleCA3NTZiNzI4Li5lYmQwNWNlIDEw MDY0NA0KKy0tLSBhL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRzZXNzaW9ubW9uaXRv ci1zeXN0ZW1kLmMNCisrKysgYi9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kc2Vzc2lv bm1vbml0b3Itc3lzdGVtZC5jDQorQEAgLTMxOCw2ICszMTgsOSBAQCBwb2xraXRfYmFja2VuZF9z ZXNzaW9uX21vbml0b3JfZ2V0X3Nlc3Npb25fZm9yX3N1YmplY3QgKFBvbGtpdEJhY2tlbmRTZXNz aW9uTW9uaQ0KKyAgIFBvbGtpdFN1YmplY3QgKnNlc3Npb24gPSBOVUxMOw0KKyAgIGNoYXIgKnNl c3Npb25faWQgPSBOVUxMOw0KKyAgIHBpZF90IHBpZDsNCisrI2lmIEhBVkVfU0RfVUlEX0dFVF9E SVNQTEFZDQorKyAgdWlkX3QgdWlkOw0KKysjZW5kaWYNCisgDQorICAgaWYgKFBPTEtJVF9JU19V TklYX1BST0NFU1MgKHN1YmplY3QpKQ0KKyAgICAgcHJvY2VzcyA9IFBPTEtJVF9VTklYX1BST0NF U1MgKHN1YmplY3QpOyAvKiBXZSBhbHJlYWR5IGhhdmUgYSBwcm9jZXNzICovDQorQEAgLTMzOCwx NiArMzQxLDMyIEBAIHBvbGtpdF9iYWNrZW5kX3Nlc3Npb25fbW9uaXRvcl9nZXRfc2Vzc2lvbl9m b3Jfc3ViamVjdCAoUG9sa2l0QmFja2VuZFNlc3Npb25Nb25pDQorICAgICAgICAgICAgICAgICAg ICBnX3R5cGVfbmFtZSAoR19UWVBFX0ZST01fSU5TVEFOQ0UgKHN1YmplY3QpKSk7DQorICAgICB9 DQorIA0KKy0gIC8qIE5vdyBkbyBwcm9jZXNzIC0+IHBpZCAtPiBzZXNzaW9uICovDQorKyAgLyog Tm93IGRvIHByb2Nlc3MgLT4gcGlkIC0+IHNhbWUgc2Vzc2lvbiAqLw0KKyAgIGdfYXNzZXJ0IChw cm9jZXNzICE9IE5VTEwpOw0KKyAgIHBpZCA9IHBvbGtpdF91bml4X3Byb2Nlc3NfZ2V0X3BpZCAo cHJvY2Vzcyk7DQorIA0KKy0gIGlmIChzZF9waWRfZ2V0X3Nlc3Npb24gKHBpZCwgJnNlc3Npb25f aWQpIDwgMCkNCisrICBpZiAoc2RfcGlkX2dldF9zZXNzaW9uIChwaWQsICZzZXNzaW9uX2lkKSA+ PSAwKQ0KKysgICAgew0KKysgICAgICBzZXNzaW9uID0gcG9sa2l0X3VuaXhfc2Vzc2lvbl9uZXcg KHNlc3Npb25faWQpOw0KKysgICAgICBnb3RvIG91dDsNCisrICAgIH0NCisrDQorKyNpZiBIQVZF X1NEX1VJRF9HRVRfRElTUExBWQ0KKysgIC8qIE5vdyBkbyBwcm9jZXNzIC0+IHVpZCAtPiBncmFw aGljYWwgc2Vzc2lvbiAoc3lzdGVtZCB2ZXJzaW9uIDIxMykqLw0KKysgIGlmIChzZF9waWRfZ2V0 X293bmVyX3VpZCAocGlkLCAmdWlkKSA8IDApDQorICAgICBnb3RvIG91dDsNCistICANCistICBz ZXNzaW9uID0gcG9sa2l0X3VuaXhfc2Vzc2lvbl9uZXcgKHNlc3Npb25faWQpOw0KKy0gIGZyZWUg KHNlc3Npb25faWQpOw0KKysNCisrICBpZiAoc2RfdWlkX2dldF9kaXNwbGF5ICh1aWQsICZzZXNz aW9uX2lkKSA+PSAwKQ0KKysgICAgew0KKysgICAgICBzZXNzaW9uID0gcG9sa2l0X3VuaXhfc2Vz c2lvbl9uZXcgKHNlc3Npb25faWQpOw0KKysgICAgICBnb3RvIG91dDsNCisrICAgIH0NCisrI2Vs c2UNCisrI2Vycm9yIERlYmlhbiBzaG91bGQgaGF2ZSBzZF91aWRfZ2V0X2Rpc3BsYXkoKQ0KKysj ZW5kaWYNCisrDQorICBvdXQ6DQorKyAgZnJlZSAoc2Vzc2lvbl9pZCk7DQorICAgaWYgKHRtcF9w cm9jZXNzKSBnX29iamVjdF91bnJlZiAodG1wX3Byb2Nlc3MpOw0KKyAgIHJldHVybiBzZXNzaW9u Ow0KKyB9DQpkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTQvQWRkLWdldHRl eHQtc3VwcG9ydC1mb3ItLnBvbGljeS1maWxlcy5wYXRjaCBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1 LzAuMTE0L0FkZC1nZXR0ZXh0LXN1cHBvcnQtZm9yLS5wb2xpY3ktZmlsZXMucGF0Y2gNCm5ldyBm aWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAuLjAyNTQwM2Y4Zg0KLS0tIC9kZXYvbnVs bA0KKysrIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTQvQWRkLWdldHRleHQtc3VwcG9ydC1m b3ItLnBvbGljeS1maWxlcy5wYXRjaA0KQEAgLTAsMCArMSw1OCBAQA0KK0Zyb206IE1hdHRoaWFz IENsYXNlbiA8bWNsYXNlbkByZWRoYXQuY29tPg0KK0RhdGU6IEZyaSwgMTUgSnVsIDIwMTYgMTE6 MTI6MzUgLTA0MDANCitTdWJqZWN0OiBBZGQgZ2V0dGV4dCBzdXBwb3J0IGZvciAucG9saWN5IGZp bGVzDQorDQorZ2V0dGV4dCBjYW4gZXh0cmFjdCBzdHJpbmdzIGZyb20gYW5kIG1lcmdlIHRoZW0g YmFjayBpbnRvIHhtbA0KK2ZpbGUgZm9ybWF0cywgd2l0aCB0aGUgaGVscCBvZiAuaXRzIGZpbGVz Lg0KKw0KK0J1ZzogaHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9 OTY5NDANCitPcmlnaW46IHVwc3RyZWFtLCAwLjExNCwgY29tbWl0OmM3ODgxOTI0NWZmOGEyNzBm OTdjOWY4MDA3NzNlNzI3OTE4YmU4MzgNCistLS0NCisgZGF0YS9NYWtlZmlsZS5hbSB8IDUgKysr KysNCisgZGF0YS9wb2xraXQuaXRzICB8IDcgKysrKysrKw0KKyBkYXRhL3BvbGtpdC5sb2MgIHwg NiArKysrKysNCisgMyBmaWxlcyBjaGFuZ2VkLCAxOCBpbnNlcnRpb25zKCspDQorIGNyZWF0ZSBt b2RlIDEwMDY0NCBkYXRhL3BvbGtpdC5pdHMNCisgY3JlYXRlIG1vZGUgMTAwNjQ0IGRhdGEvcG9s a2l0LmxvYw0KKw0KK2RpZmYgLS1naXQgYS9kYXRhL01ha2VmaWxlLmFtIGIvZGF0YS9NYWtlZmls ZS5hbQ0KK2luZGV4IGYwYmVlYmEuLmUxYTYwYWEgMTAwNjQ0DQorLS0tIGEvZGF0YS9NYWtlZmls ZS5hbQ0KKysrKyBiL2RhdGEvTWFrZWZpbGUuYW0NCitAQCAtMjAsNiArMjAsMTEgQEAgZW5kaWYN CisgcGtnY29uZmlnZGlyID0gJChsaWJkaXIpL3BrZ2NvbmZpZw0KKyBwa2djb25maWdfREFUQSA9 IHBvbGtpdC1nb2JqZWN0LTEucGMgcG9sa2l0LWJhY2tlbmQtMS5wYyBwb2xraXQtYWdlbnQtMS5w Yw0KKyANCisrIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQor Kw0KKytpdHNkaXIgPSAkKGRhdGFkaXIpL2dldHRleHQvaXRzDQorK2l0c19EQVRBID0gcG9sa2l0 LmxvYyBwb2xraXQuaXRzDQorKw0KKyBDTEVBTkZJTEVTID0gJChCVUlMVF9TT1VSQ0VTKQ0KKyAN CisgRVhUUkFfRElTVCA9IAkJCQkJCQlcDQorZGlmZiAtLWdpdCBhL2RhdGEvcG9sa2l0Lml0cyBi L2RhdGEvcG9sa2l0Lml0cw0KK25ldyBmaWxlIG1vZGUgMTAwNjQ0DQoraW5kZXggMDAwMDAwMC4u MTMxMmVjYg0KKy0tLSAvZGV2L251bGwNCisrKysgYi9kYXRhL3BvbGtpdC5pdHMNCitAQCAtMCww ICsxLDcgQEANCisrPD94bWwgdmVyc2lvbj0iMS4wIj8+DQorKzxpdHM6cnVsZXMgeG1sbnM6aXRz PSJodHRwOi8vd3d3LnczLm9yZy8yMDA1LzExL2l0cyINCisrICAgICAgICAgICB2ZXJzaW9uPSIy LjAiPg0KKysgIDxpdHM6dHJhbnNsYXRlUnVsZSBzZWxlY3Rvcj0iL2FjdGlvbi9kZXNjcmlwdGlv biB8DQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvYWN0aW9uL21lc3NhZ2UiDQor KyAgICAgICAgICAgICAgICAgICAgIHRyYW5zbGF0ZT0ieWVzIi8+DQorKzwvaXRzOnJ1bGVzPg0K K2RpZmYgLS1naXQgYS9kYXRhL3BvbGtpdC5sb2MgYi9kYXRhL3BvbGtpdC5sb2MNCituZXcgZmls ZSBtb2RlIDEwMDY0NA0KK2luZGV4IDAwMDAwMDAuLmM3NDI3ZWMNCistLS0gL2Rldi9udWxsDQor KysrIGIvZGF0YS9wb2xraXQubG9jDQorQEAgLTAsMCArMSw2IEBADQorKzw/eG1sIHZlcnNpb249 IjEuMCI/Pg0KKys8bG9jYXRpbmdSdWxlcz4NCisrICA8bG9jYXRpbmdSdWxlIG5hbWU9InBvbGtp dCBwb2xpY3kiIHBhdHRlcm49IioucG9saWN5Ij4NCisrICAgIDxkb2N1bWVudFJ1bGUgbG9jYWxO YW1lPSJwb2xpY3ljb25maWciIHRhcmdldD0icG9sa2l0Lml0cyIvPg0KKysgIDwvbG9jYXRpbmdS dWxlPg0KKys8L2xvY2F0aW5nUnVsZXM+DQpkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9wb2xraXQtMC4x MDUvMC4xMTQvRml4LW11bHRpLWxpbmUtcGFtLXRleHQtaW5mby5wYXRjaCBiL3BhdGNoZXMvcG9s a2l0LTAuMTA1LzAuMTE0L0ZpeC1tdWx0aS1saW5lLXBhbS10ZXh0LWluZm8ucGF0Y2gNCm5ldyBm aWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAuLjhhMTgzNjEzZQ0KLS0tIC9kZXYvbnVs bA0KKysrIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTQvRml4LW11bHRpLWxpbmUtcGFtLXRl eHQtaW5mby5wYXRjaA0KQEAgLTAsMCArMSwzOSBAQA0KK0Zyb206IERhcml1c3ogR2Fkb21za2kg PGRhcml1c3ouZ2Fkb21za2lAY2Fub25pY2FsLmNvbT4NCitEYXRlOiBUdWUsIDEwIE5vdiAyMDE1 IDEwOjUyOjAyICswMTAwDQorU3ViamVjdDogRml4IG11bHRpLWxpbmUgcGFtIHRleHQgaW5mby4N CisNCitUaGVyZSBhcmUgcGFtIG1vZHVsZXMgKGUuZy4gcGFtX3ZhcykgdGhhdCBtYXkgYXR0ZW1w dCB0byBkaXNwbGF5IG11bHRpLWxpbmUNCitQQU1fVEVYVF9JTkZPIG1lc3NhZ2VzLiBQb2xraXQg d2FzIGludGVycHJldGluZyB0aGUgbGluZXMgYWZ0ZXIgdGhlIGZpcnN0IG9uZQ0KK2FzIGEgc2Vw YXJhdGUgbWVzc2FnZSB0aGF0IHdhcyBub3QgcmVjb2duaXplZCBjYXVzaW5nIHRoZSBhdXRob3Jp emF0aW9uDQordG8gZmFpbC4gRXNjYXBpbmcgdGhlc2Ugc3RyaW5ncyBhbmQgdW5lc2NhcGluZyB0 aGVtIGZpeGVzIHRoZSBpc3N1ZS4NCisNCitCdWc6IGh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5v cmcvc2hvd19idWcuY2dpP2lkPTkyODg2DQorT3JpZ2luOiB1cHN0cmVhbSwgMC4xMTQsIGNvbW1p dDoxMDU5NzMyMmVjY2MzMjBmOTA1MzgyMTc1MGFlOWFmNTFlOTE4ZDc0DQorLS0tDQorIHNyYy9w b2xraXRhZ2VudC9wb2xraXRhZ2VudGhlbHBlci1wYW0uYyB8IDEzICsrKysrKysrKy0tLS0NCisg MSBmaWxlIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkNCisNCitkaWZm IC0tZ2l0IGEvc3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50aGVscGVyLXBhbS5jIGIvc3JjL3Bv bGtpdGFnZW50L3BvbGtpdGFnZW50aGVscGVyLXBhbS5jDQoraW5kZXggMTkwNjJhYS4uMDYzZDY1 NiAxMDA2NDQNCistLS0gYS9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRoZWxwZXItcGFtLmMN CisrKysgYi9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRoZWxwZXItcGFtLmMNCitAQCAtMzAy LDEwICszMDIsMTUgQEAgY29udmVyc2F0aW9uX2Z1bmN0aW9uIChpbnQgbiwgY29uc3Qgc3RydWN0 IHBhbV9tZXNzYWdlICoqbXNnLCBzdHJ1Y3QgcGFtX3Jlc3BvbnMNCisgICAgICAgICBjYXNlIFBB TV9URVhUX0lORk86DQorICAgICAgICAgICBmcHJpbnRmIChzdGRvdXQsICJQQU1fVEVYVF9JTkZP ICIpOw0KKyAgICAgICAgIGNvbnYyOg0KKy0gICAgICAgICAgZnB1dHMgKG1zZ1tpXS0+bXNnLCBz dGRvdXQpOw0KKy0gICAgICAgICAgaWYgKHN0cmxlbiAobXNnW2ldLT5tc2cpID4gMCAmJg0KKy0g ICAgICAgICAgICAgIG1zZ1tpXS0+bXNnW3N0cmxlbiAobXNnW2ldLT5tc2cpIC0gMV0gIT0gJ1xu JykNCistICAgICAgICAgICAgZnB1dGMgKCdcbicsIHN0ZG91dCk7DQorKyAgICAgICAgICB0bXAg PSBnX3N0cmR1cCAobXNnW2ldLT5tc2cpOw0KKysgICAgICAgICAgbGVuID0gc3RybGVuICh0bXAp Ow0KKysgICAgICAgICAgaWYgKGxlbiA+IDAgJiYgdG1wW2xlbiAtIDFdID09ICdcbicpDQorKyAg ICAgICAgICAgIHRtcFtsZW4gLSAxXSA9ICdcMCc7DQorKyAgICAgICAgICBlc2NhcGVkID0gZ19z dHJlc2NhcGUgKHRtcCwgTlVMTCk7DQorKyAgICAgICAgICBnX2ZyZWUgKHRtcCk7DQorKyAgICAg ICAgICBmcHV0cyAoZXNjYXBlZCwgc3Rkb3V0KTsNCisrICAgICAgICAgIGdfZnJlZSAoZXNjYXBl ZCk7DQorKyAgICAgICAgICBmcHV0YyAoJ1xuJywgc3Rkb3V0KTsNCisgICAgICAgICAgIGZmbHVz aCAoc3Rkb3V0KTsNCisgICAgICAgICAgIGJyZWFrOw0KKyANCmRpZmYgLS1naXQgYS9wYXRjaGVz L3BvbGtpdC0wLjEwNS8wLjExNC9SZWZhY3Rvci1zZW5kX3RvX2hlbHBlci11c2FnZS5wYXRjaCBi L3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTE0L1JlZmFjdG9yLXNlbmRfdG9faGVscGVyLXVzYWdl LnBhdGNoDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi43NWU1YzdkYWQN Ci0tLSAvZGV2L251bGwNCisrKyBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTE0L1JlZmFjdG9y LXNlbmRfdG9faGVscGVyLXVzYWdlLnBhdGNoDQpAQCAtMCwwICsxLDE0OSBAQA0KK0Zyb206IERh cml1c3ogR2Fkb21za2kgPGRhcml1c3ouZ2Fkb21za2lAY2Fub25pY2FsLmNvbT4NCitEYXRlOiBU aHUsIDEyIE5vdiAyMDE1IDE1OjAxOjE5ICswMTAwDQorU3ViamVjdDogUmVmYWN0b3Igc2VuZF90 b19oZWxwZXIgdXNhZ2UNCisNCitUaGVyZSB3ZXJlIGR1cGxpY2F0ZWQgcGllY2VzIG9mIGNvZGUg ZGV0ZWN0aW5nIEVPTHMgYW5kIGVzY2FwaW5nIHRoZSBjb2RlLg0KK1Rob3NlIGFjdGlvbnMgaGFz IGJlZW4gZGVsZWdhdGVkIHRvIGFscmVhZHktZXhpc3Rpbmcgc2VuZF90b19oZWxwZXIgZnVuY3Rp b24uDQorDQorQnVnOiBodHRwczovL2J1Z3MuZnJlZWRlc2t0b3Aub3JnL3Nob3dfYnVnLmNnaT9p ZD05Mjg4Ng0KK09yaWdpbjogdXBzdHJlYW0sIDAuMTE0LCBjb21taXQ6MjY5MGNkMDMxMmIzMTA5 NDZjODY2NzRjOGRkMWY1NWM2M2Y3ZGQ2YQ0KKy0tLQ0KKyBzcmMvcG9sa2l0YWdlbnQvcG9sa2l0 YWdlbnRoZWxwZXItcGFtLmMgfCA4MSArKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0N CisgMSBmaWxlIGNoYW5nZWQsIDI2IGluc2VydGlvbnMoKyksIDU1IGRlbGV0aW9ucygtKQ0KKw0K K2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRoZWxwZXItcGFtLmMgYi9z cmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRoZWxwZXItcGFtLmMNCitpbmRleCAwNjNkNjU2Li4z ZWEzYTNmIDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudGhlbHBlci1w YW0uYw0KKysrKyBiL3NyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudGhlbHBlci1wYW0uYw0KK0BA IC0zOSwyNSArMzksMzUgQEAgc3RhdGljIHZvaWQNCisgc2VuZF90b19oZWxwZXIgKGNvbnN0IGdj aGFyICpzdHIxLA0KKyAgICAgICAgICAgICAgICAgY29uc3QgZ2NoYXIgKnN0cjIpDQorIHsNCisr ICBjaGFyICplc2NhcGVkOw0KKysgIGNoYXIgKnRtcDI7DQorKyAgc2l6ZV90IGxlbjI7DQorKw0K KysgIHRtcDIgPSBnX3N0cmR1cChzdHIyKTsNCisrICBsZW4yID0gc3RybGVuKHRtcDIpOw0KKyAj aWZkZWYgUEFIX0RFQlVHDQorLSAgZnByaW50ZiAoc3RkZXJyLCAicG9sa2l0LWFnZW50LWhlbHBl ci0xOiB3cml0aW5nIGAlcycgdG8gc3Rkb3V0XG4iLCBzdHIxKTsNCisrICBmcHJpbnRmIChzdGRl cnIsICJwb2xraXQtYWdlbnQtaGVscGVyLTE6IHdyaXRpbmcgYCVzICcgdG8gc3Rkb3V0XG4iLCBz dHIxKTsNCisgI2VuZGlmIC8qIFBBSF9ERUJVRyAqLw0KKy0gIGZwcmludGYgKHN0ZG91dCwgIiVz Iiwgc3RyMSk7DQorKyAgZnByaW50ZiAoc3Rkb3V0LCAiJXMgIiwgc3RyMSk7DQorKw0KKysgIGlm IChsZW4yID4gMCAmJiB0bXAyW2xlbjIgLSAxXSA9PSAnXG4nKQ0KKysgICAgdG1wMltsZW4yIC0g MV0gPSAnXDAnOw0KKysgIGVzY2FwZWQgPSBnX3N0cmVzY2FwZSAodG1wMiwgTlVMTCk7DQorICNp ZmRlZiBQQUhfREVCVUcNCistICBmcHJpbnRmIChzdGRlcnIsICJwb2xraXQtYWdlbnQtaGVscGVy LTE6IHdyaXRpbmcgYCVzJyB0byBzdGRvdXRcbiIsIHN0cjIpOw0KKysgIGZwcmludGYgKHN0ZGVy ciwgInBvbGtpdC1hZ2VudC1oZWxwZXItMTogd3JpdGluZyBgJXMnIHRvIHN0ZG91dFxuIiwgZXNj YXBlZCk7DQorICNlbmRpZiAvKiBQQUhfREVCVUcgKi8NCistICBmcHJpbnRmIChzdGRvdXQsICIl cyIsIHN0cjIpOw0KKy0gIGlmIChzdHJsZW4gKHN0cjIpID4gMCAmJiBzdHIyW3N0cmxlbiAoc3Ry MikgLSAxXSAhPSAnXG4nKQ0KKy0gICAgew0KKysgIGZwcmludGYgKHN0ZG91dCwgIiVzIiwgZXNj YXBlZCk7DQorICNpZmRlZiBQQUhfREVCVUcNCistICAgICAgZnByaW50ZiAoc3RkZXJyLCAicG9s a2l0LWFnZW50LWhlbHBlci0xOiB3cml0aW5nIG5ld2xpbmUgdG8gc3Rkb3V0XG4iKTsNCisrICBm cHJpbnRmIChzdGRlcnIsICJwb2xraXQtYWdlbnQtaGVscGVyLTE6IHdyaXRpbmcgbmV3bGluZSB0 byBzdGRvdXRcbiIpOw0KKyAjZW5kaWYgLyogUEFIX0RFQlVHICovDQorLSAgICAgIGZwdXRjICgn XG4nLCBzdGRvdXQpOw0KKy0gICAgfQ0KKysgIGZwdXRjICgnXG4nLCBzdGRvdXQpOw0KKyAjaWZk ZWYgUEFIX0RFQlVHDQorICAgZnByaW50ZiAoc3RkZXJyLCAicG9sa2l0LWFnZW50LWhlbHBlci0x OiBmbHVzaGluZyBzdGRvdXRcbiIpOw0KKyAjZW5kaWYgLyogUEFIX0RFQlVHICovDQorICAgZmZs dXNoIChzdGRvdXQpOw0KKysNCisrICBnX2ZyZWUgKGVzY2FwZWQpOw0KKysgIGdfZnJlZSAodG1w Mik7DQorIH0NCisgDQorIGludA0KK0BAIC04OSw3ICs5OSw3IEBAIG1haW4gKGludCBhcmdjLCBj aGFyICphcmd2W10pDQorIA0KKyAgICAgICAvKiBTcGVjaWFsLWNhc2UgYSB2ZXJ5IGNvbW1vbiBl cnJvciB0cmlnZ2VyZWQgaW4gamhidWlsZCBzZXR1cHMgKi8NCisgICAgICAgcyA9IGdfc3RyZHVw X3ByaW50ZiAoIkluY29ycmVjdCBwZXJtaXNzaW9ucyBvbiAlcyAobmVlZHMgdG8gYmUgc2V0dWlk IHJvb3QpIiwgYXJndlswXSk7DQorLSAgICAgIHNlbmRfdG9faGVscGVyICgiUEFNX0VSUk9SX01T RyAiLCBzKTsNCisrICAgICAgc2VuZF90b19oZWxwZXIgKCJQQU1fRVJST1JfTVNHIiwgcyk7DQor ICAgICAgIGdfZnJlZSAocyk7DQorICAgICAgIGdvdG8gZXJyb3I7DQorICAgICB9DQorQEAgLTIz Miw5ICsyNDIsNiBAQCBjb252ZXJzYXRpb25fZnVuY3Rpb24gKGludCBuLCBjb25zdCBzdHJ1Y3Qg cGFtX21lc3NhZ2UgKiptc2csIHN0cnVjdCBwYW1fcmVzcG9ucw0KKyAgIHN0cnVjdCBwYW1fcmVz cG9uc2UgKmFyZXNwOw0KKyAgIGNoYXIgYnVmW1BBTV9NQVhfUkVTUF9TSVpFXTsNCisgICBpbnQg aTsNCistICBnY2hhciAqZXNjYXBlZCA9IE5VTEw7DQorLSAgZ2NoYXIgKnRtcCA9IE5VTEw7DQor LSAgc2l6ZV90IGxlbjsNCisgDQorICAgKHZvaWQpZGF0YTsNCisgICBpZiAobiA8PSAwIHx8IG4g PiBQQU1fTUFYX05VTV9NU0cpDQorQEAgLTI1MSwzOCArMjU4LDEzIEBAIGNvbnZlcnNhdGlvbl9m dW5jdGlvbiAoaW50IG4sIGNvbnN0IHN0cnVjdCBwYW1fbWVzc2FnZSAqKm1zZywgc3RydWN0IHBh bV9yZXNwb25zDQorICAgICAgICAgew0KKyANCisgICAgICAgICBjYXNlIFBBTV9QUk9NUFRfRUNI T19PRkY6DQorLSNpZmRlZiBQQUhfREVCVUcNCistICAgICAgICAgIGZwcmludGYgKHN0ZGVyciwg InBvbGtpdC1hZ2VudC1oZWxwZXItMTogd3JpdGluZyBgUEFNX1BST01QVF9FQ0hPX09GRiAnIHRv IHN0ZG91dFxuIik7DQorLSNlbmRpZiAvKiBQQUhfREVCVUcgKi8NCistICAgICAgICAgIGZwcmlu dGYgKHN0ZG91dCwgIlBBTV9QUk9NUFRfRUNIT19PRkYgIik7DQorKyAgICAgICAgICBzZW5kX3Rv X2hlbHBlciAoIlBBTV9QUk9NUFRfRUNIT19PRkYiLCBtc2dbaV0tPm1zZyk7DQorICAgICAgICAg ICBnb3RvIGNvbnYxOw0KKyANCisgICAgICAgICBjYXNlIFBBTV9QUk9NUFRfRUNIT19PTjoNCist I2lmZGVmIFBBSF9ERUJVRw0KKy0gICAgICAgICAgZnByaW50ZiAoc3RkZXJyLCAicG9sa2l0LWFn ZW50LWhlbHBlci0xOiB3cml0aW5nIGBQQU1fUFJPTVBUX0VDSE9fT04gJyB0byBzdGRvdXRcbiIp Ow0KKy0jZW5kaWYgLyogUEFIX0RFQlVHICovDQorLSAgICAgICAgICBmcHJpbnRmIChzdGRvdXQs ICJQQU1fUFJPTVBUX0VDSE9fT04gIik7DQorLSAgICAgICAgY29udjE6DQorLSNpZmRlZiBQQUhf REVCVUcNCistICAgICAgICAgIGZwcmludGYgKHN0ZGVyciwgInBvbGtpdC1hZ2VudC1oZWxwZXIt MTogd3JpdGluZyBgJXMnIHRvIHN0ZG91dFxuIiwgbXNnW2ldLT5tc2cpOw0KKy0jZW5kaWYgLyog UEFIX0RFQlVHICovDQorLSAgICAgICAgICB0bXAgPSBnX3N0cmR1cCAobXNnW2ldLT5tc2cpOw0K Ky0gICAgICAgICAgbGVuID0gc3RybGVuICh0bXApOw0KKy0gICAgICAgICAgaWYgKGxlbiA+IDAg JiYgdG1wW2xlbiAtIDFdID09ICdcbicpDQorLSAgICAgICAgICAgIHRtcFtsZW4gLSAxXSA9ICdc MCc7DQorLSAgICAgICAgICBlc2NhcGVkID0gZ19zdHJlc2NhcGUgKHRtcCwgTlVMTCk7DQorLSAg ICAgICAgICBnX2ZyZWUgKHRtcCk7DQorLSAgICAgICAgICBmcHV0cyAoZXNjYXBlZCwgc3Rkb3V0 KTsNCistICAgICAgICAgIGdfZnJlZSAoZXNjYXBlZCk7DQorLSNpZmRlZiBQQUhfREVCVUcNCist ICAgICAgICAgIGZwcmludGYgKHN0ZGVyciwgInBvbGtpdC1hZ2VudC1oZWxwZXItMTogd3JpdGlu ZyBuZXdsaW5lIHRvIHN0ZG91dFxuIik7DQorLSNlbmRpZiAvKiBQQUhfREVCVUcgKi8NCistICAg ICAgICAgIGZwdXRjICgnXG4nLCBzdGRvdXQpOw0KKy0jaWZkZWYgUEFIX0RFQlVHDQorLSAgICAg ICAgICBmcHJpbnRmIChzdGRlcnIsICJwb2xraXQtYWdlbnQtaGVscGVyLTE6IGZsdXNoaW5nIHN0 ZG91dFxuIik7DQorLSNlbmRpZiAvKiBQQUhfREVCVUcgKi8NCistICAgICAgICAgIGZmbHVzaCAo c3Rkb3V0KTsNCisrICAgICAgICAgIHNlbmRfdG9faGVscGVyICgiUEFNX1BST01QVF9FQ0hPX09O IiwgbXNnW2ldLT5tc2cpOw0KKyANCisrICAgICAgICBjb252MToNCisgICAgICAgICAgIGlmIChm Z2V0cyAoYnVmLCBzaXplb2YgYnVmLCBzdGRpbikgPT0gTlVMTCkNCisgICAgICAgICAgICAgZ290 byBlcnJvcjsNCisgDQorQEAgLTI5NiwyMiArMjc4LDExIEBAIGNvbnZlcnNhdGlvbl9mdW5jdGlv biAoaW50IG4sIGNvbnN0IHN0cnVjdCBwYW1fbWVzc2FnZSAqKm1zZywgc3RydWN0IHBhbV9yZXNw b25zDQorICAgICAgICAgICBicmVhazsNCisgDQorICAgICAgICAgY2FzZSBQQU1fRVJST1JfTVNH Og0KKy0gICAgICAgICAgZnByaW50ZiAoc3Rkb3V0LCAiUEFNX0VSUk9SX01TRyAiKTsNCistICAg ICAgICAgIGdvdG8gY29udjI7DQorKyAgICAgICAgICBzZW5kX3RvX2hlbHBlciAoIlBBTV9FUlJP Ul9NU0ciLCBtc2dbaV0tPm1zZyk7DQorKyAgICAgICAgICBicmVhazsNCisgDQorICAgICAgICAg Y2FzZSBQQU1fVEVYVF9JTkZPOg0KKy0gICAgICAgICAgZnByaW50ZiAoc3Rkb3V0LCAiUEFNX1RF WFRfSU5GTyAiKTsNCistICAgICAgICBjb252MjoNCistICAgICAgICAgIHRtcCA9IGdfc3RyZHVw IChtc2dbaV0tPm1zZyk7DQorLSAgICAgICAgICBsZW4gPSBzdHJsZW4gKHRtcCk7DQorLSAgICAg ICAgICBpZiAobGVuID4gMCAmJiB0bXBbbGVuIC0gMV0gPT0gJ1xuJykNCistICAgICAgICAgICAg dG1wW2xlbiAtIDFdID0gJ1wwJzsNCistICAgICAgICAgIGVzY2FwZWQgPSBnX3N0cmVzY2FwZSAo dG1wLCBOVUxMKTsNCistICAgICAgICAgIGdfZnJlZSAodG1wKTsNCistICAgICAgICAgIGZwdXRz IChlc2NhcGVkLCBzdGRvdXQpOw0KKy0gICAgICAgICAgZ19mcmVlIChlc2NhcGVkKTsNCistICAg ICAgICAgIGZwdXRjICgnXG4nLCBzdGRvdXQpOw0KKy0gICAgICAgICAgZmZsdXNoIChzdGRvdXQp Ow0KKysgICAgICAgICAgc2VuZF90b19oZWxwZXIgKCJQQU1fVEVYVF9JTkZPIiwgbXNnW2ldLT5t c2cpOw0KKyAgICAgICAgICAgYnJlYWs7DQorIA0KKyAgICAgICAgIGRlZmF1bHQ6DQpkaWZmIC0t Z2l0IGEvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTQvU3VwcG9ydC1wb2xraXQtc2Vzc2lvbi1h Z2VudC1ydW5uaW5nLW91dHNpZGUtdXNlci1zZXNzaW9uLnBhdGNoIGIvcGF0Y2hlcy9wb2xraXQt MC4xMDUvMC4xMTQvU3VwcG9ydC1wb2xraXQtc2Vzc2lvbi1hZ2VudC1ydW5uaW5nLW91dHNpZGUt dXNlci1zZXNzaW9uLnBhdGNoDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAw Li43MTc5YTkyYmENCi0tLSAvZGV2L251bGwNCisrKyBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAu MTE0L1N1cHBvcnQtcG9sa2l0LXNlc3Npb24tYWdlbnQtcnVubmluZy1vdXRzaWRlLXVzZXItc2Vz c2lvbi5wYXRjaA0KQEAgLTAsMCArMSw1MSBAQA0KK0Zyb206IFNlYmFzdGllbiBCYWNoZXIgPHNl YjEyOEB1YnVudHUuY29tPg0KK0RhdGU6IE1vbiwgMiBBcHIgMjAxOCAxMDo1Mjo0NyAtMDQwMA0K K1N1YmplY3Q6IFN1cHBvcnQgcG9sa2l0IHNlc3Npb24gYWdlbnQgcnVubmluZyBvdXRzaWRlIHVz ZXIgc2Vzc2lvbg0KKw0KK2NvbW1pdCBhNjhmNWRmZDc2NjI3NjdiN2I5ODIyMDkwYjcwYmM1YmQx NDVjNTBjIG1hZGUNCitzZXNzaW9uIGFwcGxpY2F0aW9ucyB0aGF0IGFyZSBydW5uaW5nIGZyb20g YSB1c2VyIGJ1cw0KK3dvcmsgd2l0aCBwb2xraXRkLCBieSBmYWxsaW5nIGJhY2sgdG8gdXNpbmcg dGhlIGN1cnJlbnRseQ0KK2FjdGl2ZSBzZXNzaW9uLg0KKw0KK1RoaXMgY29tbWl0IGlzIHNpbWls YXIsIGJ1dCBmb3IgdGhlIHBvbGtpdCBhZ2VudC4gIEl0IGFsbG93cywNCithIHBvbGtpdCBhZ2Vu dCB0byBiZSBydW4gZnJvbSBhIHN5c3RlbWQgLS11c2VyIHNlcnZpY2UNCit0aGF0J3Mgbm90IHJ1 bm5pbmcgZGlyZWN0bHkgaW4gdGhlIHVzZXJzIHNlc3Npb24uDQorDQorQnVnOiBodHRwczovL2J1 Z3MuZnJlZWRlc2t0b3Aub3JnL3Nob3dfYnVnLmNnaT9pZD05Njk3Nw0KK0FwcGxpZWQtdXBzdHJl YW06IDAuMTE0LCBjb21taXQ6MDBhNjYzZTNmYjE0ZDgwMjNlN2NiNmE2NmQwOTE4NzJiZjRmMjg1 MQ0KKy0tLQ0KKyBzcmMvcG9sa2l0L3BvbGtpdHVuaXhzZXNzaW9uLXN5c3RlbWQuYyB8IDE0ICsr KysrKysrKysrKysrDQorIDEgZmlsZSBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspDQorDQorZGlm ZiAtLWdpdCBhL3NyYy9wb2xraXQvcG9sa2l0dW5peHNlc3Npb24tc3lzdGVtZC5jIGIvc3JjL3Bv bGtpdC9wb2xraXR1bml4c2Vzc2lvbi1zeXN0ZW1kLmMNCitpbmRleCA4YThiZjY1Li5jMzRmMzZh IDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xraXQvcG9sa2l0dW5peHNlc3Npb24tc3lzdGVtZC5jDQor KysrIGIvc3JjL3BvbGtpdC9wb2xraXR1bml4c2Vzc2lvbi1zeXN0ZW1kLmMNCitAQCAtNDUxLDYg KzQ1MSw3IEBAIHBvbGtpdF91bml4X3Nlc3Npb25faW5pdGFibGVfaW5pdCAoR0luaXRhYmxlICAg ICAqaW5pdGFibGUsDQorICAgUG9sa2l0VW5peFNlc3Npb24gKnNlc3Npb24gPSBQT0xLSVRfVU5J WF9TRVNTSU9OIChpbml0YWJsZSk7DQorICAgZ2Jvb2xlYW4gcmV0ID0gRkFMU0U7DQorICAgY2hh ciAqczsNCisrICB1aWRfdCB1aWQ7DQorIA0KKyAgIGlmIChzZXNzaW9uLT5zZXNzaW9uX2lkICE9 IE5VTEwpDQorICAgICB7DQorQEAgLTQ2Nyw2ICs0NjgsMTkgQEAgcG9sa2l0X3VuaXhfc2Vzc2lv bl9pbml0YWJsZV9pbml0IChHSW5pdGFibGUgICAgICppbml0YWJsZSwNCisgICAgICAgZ290byBv dXQ7DQorICAgICB9DQorIA0KKysgIC8qIE5vdyBkbyBwcm9jZXNzIC0+IHVpZCAtPiBncmFwaGlj YWwgc2Vzc2lvbiAoc3lzdGVtZCB2ZXJzaW9uIDIxMykqLw0KKysgIGlmIChzZF9waWRfZ2V0X293 bmVyX3VpZCAoc2Vzc2lvbi0+cGlkLCAmdWlkKSA8IDApDQorKyAgICBnb3RvIGVycm9yOw0KKysN CisrICBpZiAoc2RfdWlkX2dldF9kaXNwbGF5ICh1aWQsICZzKSA+PSAwKQ0KKysgICAgew0KKysg ICAgICBzZXNzaW9uLT5zZXNzaW9uX2lkID0gIGdfc3RyZHVwIChzKTsNCisrICAgICAgZnJlZSAo cyk7DQorKyAgICAgIHJldCA9IFRSVUU7DQorKyAgICAgIGdvdG8gb3V0Ow0KKysgICAgfQ0KKysN CisrZXJyb3I6DQorICAgZ19zZXRfZXJyb3IgKGVycm9yLA0KKyAgICAgICAgICAgICAgICBQT0xL SVRfRVJST1IsDQorICAgICAgICAgICAgICAgIFBPTEtJVF9FUlJPUl9GQUlMRUQsDQpkaWZmIC0t Z2l0IGEvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTQvZ2V0dGV4dC1zd2l0Y2gtdG8tZGVmYXVs dC10cmFuc2xhdGUtbm8ucGF0Y2ggYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExNC9nZXR0ZXh0 LXN3aXRjaC10by1kZWZhdWx0LXRyYW5zbGF0ZS1uby5wYXRjaA0KbmV3IGZpbGUgbW9kZSAxMDA2 NDQNCmluZGV4IDAwMDAwMDAwMC4uNTc3ZDVhYjFiDQotLS0gL2Rldi9udWxsDQorKysgYi9wYXRj aGVzL3BvbGtpdC0wLjEwNS8wLjExNC9nZXR0ZXh0LXN3aXRjaC10by1kZWZhdWx0LXRyYW5zbGF0 ZS1uby5wYXRjaA0KQEAgLTAsMCArMSw0MSBAQA0KK0Zyb206IFBldGVyIEh1dHRlcmVyIDxwZXRl ci5odXR0ZXJlckB3aG8tdC5uZXQ+DQorRGF0ZTogVGh1LCAyMCBPY3QgMjAxNiAxMDo1MDo1OCAr MTAwMA0KK1N1YmplY3Q6IGdldHRleHQ6IHN3aXRjaCB0byBkZWZhdWx0LXRyYW5zbGF0ZSAibm8i DQorDQorVGhlIGRlZmF1bHQgYXBwZWFycyB0byBiZSB0byB0cmFuc2xhdGUgYWxsIGVudHJpZXMu IFRoaXMgcnVsZSBuZXZlciB0YWtlcw0KK2VmZmVjdCwgdGhlIHBhdGggdG8gL2FjdGlvbi9tZXNz YWdlIGFuZCAvYWN0aW9uL2Rlc2NyaXB0aW9uIGlzIHdyb25nICgvYWN0aW9uDQoraXMgbm90IGEg cm9vdCBub2RlKS4gU2luY2Ugd2Ugd2FudGVkIHRoZW0gdG8gYmUgdHJhbnNsYXRlZCwgaXQgZG9l c24ndCBtYXR0ZXIuDQorDQorQnV0IGl0IGFsc28gdHJhbnNsYXRlcyBhbGwgb3RoZXIgdGFncyAo dmVuZG9yLCBhbGxvd19hbnksIGV0Yy4pIGFuZCB0aGF0DQorY2F1c2VzIHBvbGtpdCB0byBiZSB1 bmhhcHB5LCBpdCBjYW4ndCBoYW5kbGUgdGhlIHZhcmlvdXMgbGFuZ3VhZ2UgdmVyc2lvbnMgb2YN Cisibm8iDQorDQorKiogKHBvbGtpdGQ6Mjc0MzQpOiBXQVJOSU5HICoqOiBVbmtub3duIFBvbGtp dEltcGxpY2l0QXV0aG9yaXphdGlvbiBzdHJpbmcNCisndGlkYWsnDQorDQorU3dpdGNoIHRvIGEg ZGVmYXVsdCBvZiAibm8iIGFuZCBleHBsaWNpdGx5IGluY2x1ZGUgdGhlIG1lc3NhZ2UgYW5kIGRl c2NyaXB0aW9uDQorc3RyaW5ncyB0byBiZSB0cmFuc2xhdGVkLg0KKw0KK1RoZSBwYXRjaCB3YXMg bW9kaWZpZWQgZm9yIFBvbGljeUtpdCBieSBPbmRyZWogSG9seSA8b2hvbHlAcmVkaGF0LmNvbT4u DQorDQorQnVnOiBodHRwczovL2J1Z3MuZnJlZWRlc2t0b3Aub3JnL3Nob3dfYnVnLmNnaT9pZD05 ODM2Ng0KK09yaWdpbjogdXBzdHJlYW0sIDAuMTE0LCBjb21taXQ6MzJlOWE2OWMzMzUzMjRhNTNh MmMwYmE0ZTBiNTEzZmIwNDRiZTBmZA0KKy0tLQ0KKyBkYXRhL3BvbGtpdC5pdHMgfCA1ICsrKy0t DQorIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pDQorDQor ZGlmZiAtLWdpdCBhL2RhdGEvcG9sa2l0Lml0cyBiL2RhdGEvcG9sa2l0Lml0cw0KK2luZGV4IDEz MTJlY2IuLjFjMzdlNmIgMTAwNjQ0DQorLS0tIGEvZGF0YS9wb2xraXQuaXRzDQorKysrIGIvZGF0 YS9wb2xraXQuaXRzDQorQEAgLTEsNyArMSw4IEBADQorIDw/eG1sIHZlcnNpb249IjEuMCI/Pg0K KyA8aXRzOnJ1bGVzIHhtbG5zOml0cz0iaHR0cDovL3d3dy53My5vcmcvMjAwNS8xMS9pdHMiDQor ICAgICAgICAgICAgdmVyc2lvbj0iMi4wIj4NCistICA8aXRzOnRyYW5zbGF0ZVJ1bGUgc2VsZWN0 b3I9Ii9hY3Rpb24vZGVzY3JpcHRpb24gfA0KKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgL2FjdGlvbi9tZXNzYWdlIg0KKysgIDxpdHM6dHJhbnNsYXRlUnVsZSBzZWxlY3Rvcj0iLy8q IiB0cmFuc2xhdGU9Im5vIi8+DQorKyAgPGl0czp0cmFuc2xhdGVSdWxlIHNlbGVjdG9yPSIvL2Fj dGlvbi9kZXNjcmlwdGlvbiB8DQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL2Fj dGlvbi9tZXNzYWdlIg0KKyAgICAgICAgICAgICAgICAgICAgICB0cmFuc2xhdGU9InllcyIvPg0K KyA8L2l0czpydWxlcz4NCmRpZmYgLS1naXQgYS9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExNS9G aXgtQ1ZFLTIwMTgtMTExNi1UcnVzdGluZy1jbGllbnQtc3VwcGxpZWQtVUlELnBhdGNoIGIvcGF0 Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTUvRml4LUNWRS0yMDE4LTExMTYtVHJ1c3RpbmctY2xpZW50 LXN1cHBsaWVkLVVJRC5wYXRjaA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAw MC4uZDNlMzQzNTA0DQotLS0gL2Rldi9udWxsDQorKysgYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8w LjExNS9GaXgtQ1ZFLTIwMTgtMTExNi1UcnVzdGluZy1jbGllbnQtc3VwcGxpZWQtVUlELnBhdGNo DQpAQCAtMCwwICsxLDU2OSBAQA0KK0Zyb206ID0/dXRmLTg/cT9NaWxvc2xhdl9Ucm1hPUM0PThE Pz0gPG1pdHJAcmVkaGF0LmNvbT4NCitEYXRlOiBNb24sIDI1IEp1biAyMDE4IDE5OjI0OjA2ICsw MjAwDQorU3ViamVjdDogRml4IENWRS0yMDE4LTExMTY6IFRydXN0aW5nIGNsaWVudC1zdXBwbGll ZCBVSUQNCitNSU1FLVZlcnNpb246IDEuMA0KK0NvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hh cnNldD0idXRmLTgiDQorQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdA0KKw0KK0FzIHBh cnQgb2YgQ1ZFLTIwMTMtNDI4OCwgdGhlIEQtQnVzIGNsaWVudHMgd2VyZSBhbGxvd2VkIChhbmQN CitlbmNvdXJhZ2VkKSB0byBzdWJtaXQgdGhlIFVJRCBvZiB0aGUgc3ViamVjdCBvZiBhdXRob3Jp emF0aW9uIGNoZWNrcw0KK3RvIGF2b2lkIHJhY2VzIGFnYWluc3QgVUlEIGNoYW5nZXMgKG5vdGFi bHkgdXNpbmcgZXhlY3V0YWJsZXMNCitzZXQtVUlEIHRvIHJvb3QpLg0KKw0KK0hvd2V2ZXIsIHRo YXQgYWxzbyBhbGxvd2VkIGFueSBjbGllbnQgdG8gc3VibWl0IGFuIGFyYml0cmFyeSBVSUQsIGFu ZA0KK3RoYXQgY291bGQgYmUgdXNlZCB0byBieXBhc3MgImNhbiBvbmx5IGFzayBhYm91dCAvIGFm ZmVjdCB0aGUgc2FtZSBVSUQiDQorY2hlY2tzIGluIENoZWNrQXV0aG9yaXphdGlvbiAvIFJlZ2lz dGVyQXV0aGVudGljYXRpb25BZ2VudCAvDQorVW5yZWdpc3RlckF1dGhlbnRpY2F0aW9uQWdlbnQu ICBUaGlzIGFsbG93ZWQgYW4gYXR0YWNrZXI6DQorDQorLSBXaXRoIENoZWNrQXV0aG9yaXphdGlv biwgdG8gY2F1c2UgdGhlIHJlZ2lzdGVyZWQgYXV0aGVudGljYXRpb24NCisgIGFnZW50IGluIHZp Y3RpbSdzIHNlc3Npb24gdG8gcG9wIHVwIGEgZGlhbG9nLCBvciB0byBkZXRlcm1pbmUgd2hldGhl cg0KKyAgdGhlIHZpY3RpbSBjdXJyZW50bHkgaGFzIGEgdGVtcG9yYXJ5IGF1dGhvcml6YXRpb24g dG8gcGVyZm9ybSBhbg0KKyAgb3BlcmF0aW9uLg0KKw0KKyAgKEluIHByaW5jaXBsZSwgdGhlIGF0 dGFja2VyIGNhbiBhbHNvIGRldGVybWluZSB3aGV0aGVyIEphdmFTY3JpcHQNCisgIHJ1bGVzIGFs bG93IHRoZSB2aWN0aW0gcHJvY2VzcyB0byBwZXJmb3JtIGFuIG9wZXJhdGlvbjsgaG93ZXZlciwN CisgIHVzdWFsbHkgcnVsZXMgYmFzZSB0aGVpciBkZWNpc2lvbnMgb24gaW5mb3JtYXRpb24gZGV0 ZXJtaW5lZCBmcm9tDQorICB0aGUgc3VwcGxpZWQgVUlELCBzbyB0aGUgYXR0YWNrZXIgdXN1YWxs eSB3b24ndCBsZWFybiBhbnl0aGluZyBuZXcuKQ0KKw0KKy0gV2l0aCBSZWdpc3RlckF1dGhlbnRp Y2F0aW9uQWdlbnQsIHRvIHByZXZlbnQgdGhlIHZpY3RpbSdzDQorICBhdXRoZW50aWNhdGlvbiBh Z2VudCB0byB3b3JrIChmb3IgYSBzcGVjaWZpYyB2aWN0aW0gcHJvY2VzcyksDQorICBvciB0byBs ZWFybiBhYm91dCB3aGljaCBvcGVyYXRpb25zIHJlcXVpcmluZyBhdXRob3JpemF0aW9uDQorICB0 aGUgdmljdGltIGlzIGF0dGVtcHRpbmcuDQorDQorVG8gZml4IHRoaXMsIGV4cG9zZSBpbnRlcm5h bCBfcG9sa2l0X3VuaXhfcHJvY2Vzc19nZXRfb3duZXIoKSAvDQorb2Jzb2xldGUgcG9sa2l0X3Vu aXhfcHJvY2Vzc19nZXRfb3duZXIoKSBhcyBhIHByaXZhdGUNCitwb2xraXRfdW5peF9wcm9jZXNz X2dldF9yYWN5X3VpZF9fKCkgKGJlaW5nIG1vcmUgZXhwbGljaXQgYWJvdXQgdGhlDQorZGFuZ2Vy cyBvbiByZWx5aW5nIG9uIGl0KSwgYW5kIHVzZSBpdCBpbg0KK3BvbGtpdF9iYWNrZW5kX3Nlc3Np b25fbW9uaXRvcl9nZXRfdXNlcl9mb3Jfc3ViamVjdCgpIHRvIHJldHVybg0KK2EgYm9vbGVhbiBp bmRpY2F0aW5nIHdoZXRoZXIgdGhlIHN1YmplY3QgVUlEIG1heSBiZSBjYWxsZXItY2hvc2VuLg0K Kw0KK1RoZW4sIGluIHRoZSBwZXJtaXNzaW9uIGNoZWNrcyB0aGF0IHJlcXVpcmUgdGhlIHN1Ympl Y3QgdG8gYmUNCitlcXVhbCB0byB0aGUgY2FsbGVyLCBmYWlsIG9uIGNhbGxlci1jaG9zZW4gVUlE cyAoYW5kIGNvbnRpbnVlDQordGhyb3VnaCB0aGUgcHJlLWV4aXN0aW5nIGNvZGUgcGF0aHMgd2hp Y2ggYWxsb3cgcm9vdCwgb3Igcm9vdC1kZXNpZ25hdGVkDQorc2VydmVyIHByb2Nlc3NlcywgdG8g YXNrIGFib3V0IGFyYml0cmFyeSBzdWJqZWN0cy4pDQorDQorU2lnbmVkLW9mZi1ieTogTWlsb3Ns YXYgVHJtYcSNIDxtaXRyQHJlZGhhdC5jb20+DQorT3JpZ2luOiB1cHN0cmVhbSwgMC4xMTUsIGNv bW1pdDpiYzdmZmFkNTM2NDNhOWM4MDIzMWZjNDFmNTU4MmQ2YTg5MzFjMzJjDQorLS0tDQorIHNy Yy9wb2xraXQvcG9sa2l0cHJpdmF0ZS5oICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDIgKw0K KyBzcmMvcG9sa2l0L3BvbGtpdHVuaXhwcm9jZXNzLmMgICAgICAgICAgICAgICAgICAgICB8IDYw ICsrKysrKysrKysrKysrKysrKy0tLS0NCisgLi4uL3BvbGtpdGJhY2tlbmRpbnRlcmFjdGl2ZWF1 dGhvcml0eS5jICAgICAgICAgICAgfCAzOSArKysrKysrKystLS0tLQ0KKyAuLi4vcG9sa2l0YmFj a2VuZHNlc3Npb25tb25pdG9yLXN5c3RlbWQuYyAgICAgICAgICB8IDM4ICsrKysrKysrKysrKy0t DQorIHNyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRzZXNzaW9ubW9uaXRvci5jICAgIHwg NDAgKysrKysrKysrKysrKy0tDQorIHNyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRzZXNz aW9ubW9uaXRvci5oICAgIHwgIDEgKw0KKyA2IGZpbGVzIGNoYW5nZWQsIDE0NyBpbnNlcnRpb25z KCspLCAzMyBkZWxldGlvbnMoLSkNCisNCitkaWZmIC0tZ2l0IGEvc3JjL3BvbGtpdC9wb2xraXRw cml2YXRlLmggYi9zcmMvcG9sa2l0L3BvbGtpdHByaXZhdGUuaA0KK2luZGV4IDU3OWNjMjUuLmQ2 Y2Q0NWQgMTAwNjQ0DQorLS0tIGEvc3JjL3BvbGtpdC9wb2xraXRwcml2YXRlLmgNCisrKysgYi9z cmMvcG9sa2l0L3BvbGtpdHByaXZhdGUuaA0KK0BAIC0zNCw2ICszNCw4IEBAIEdWYXJpYW50ICpw b2xraXRfYWN0aW9uX2Rlc2NyaXB0aW9uX3RvX2d2YXJpYW50IChQb2xraXRBY3Rpb25EZXNjcmlw dGlvbiAqYWN0aW9uDQorIEdWYXJpYW50ICpwb2xraXRfc3ViamVjdF90b19ndmFyaWFudCAoUG9s a2l0U3ViamVjdCAqc3ViamVjdCk7DQorIEdWYXJpYW50ICpwb2xraXRfaWRlbnRpdHlfdG9fZ3Zh cmlhbnQgKFBvbGtpdElkZW50aXR5ICppZGVudGl0eSk7DQorIA0KKytnaW50IHBvbGtpdF91bml4 X3Byb2Nlc3NfZ2V0X3JhY3lfdWlkX18gKFBvbGtpdFVuaXhQcm9jZXNzICpwcm9jZXNzLCBHRXJy b3IgKiplcnJvcik7DQorKw0KKyBQb2xraXRTdWJqZWN0ICAqcG9sa2l0X3N1YmplY3RfbmV3X2Zv cl9ndmFyaWFudCAoR1ZhcmlhbnQgKnZhcmlhbnQsIEdFcnJvciAqKmVycm9yKTsNCisgUG9sa2l0 SWRlbnRpdHkgKnBvbGtpdF9pZGVudGl0eV9uZXdfZm9yX2d2YXJpYW50IChHVmFyaWFudCAqdmFy aWFudCwgR0Vycm9yICoqZXJyb3IpOw0KKyANCitkaWZmIC0tZ2l0IGEvc3JjL3BvbGtpdC9wb2xr aXR1bml4cHJvY2Vzcy5jIGIvc3JjL3BvbGtpdC9wb2xraXR1bml4cHJvY2Vzcy5jDQoraW5kZXgg OTEzYmUzYS4uNDY0ZjAzNCAxMDA2NDQNCistLS0gYS9zcmMvcG9sa2l0L3BvbGtpdHVuaXhwcm9j ZXNzLmMNCisrKysgYi9zcmMvcG9sa2l0L3BvbGtpdHVuaXhwcm9jZXNzLmMNCitAQCAtNDksNiAr NDksMTQgQEANCisgICogVG8gdW5pcXVlbHkgaWRlbnRpZnkgcHJvY2Vzc2VzLCBib3RoIHRoZSBw cm9jZXNzIGlkIGFuZCB0aGUgc3RhcnQNCisgICogdGltZSBvZiB0aGUgcHJvY2VzcyAoYSBtb25v dG9uaWMgaW5jcmVhc2luZyB2YWx1ZSByZXByZXNlbnRpbmcgdGhlDQorICAqIHRpbWUgc2luY2Ug dGhlIGtlcm5lbCB3YXMgc3RhcnRlZCkgaXMgdXNlZC4NCisrICoNCisrICogTk9URTogVGhpcyBv YmplY3Qgc3RvcmVzLCBhbmQgcHJvdmlkZXMgYWNjZXNzIHRvLCB0aGUgcmVhbCBVSUQgb2YgdGhl DQorKyAqIHByb2Nlc3MuICBUaGF0IHZhbHVlIGNhbiBjaGFuZ2Ugb3ZlciB0aW1lICh3aXRoIHNl dCp1aWQqKDIpIGFuZCBleGVjKigyKSkuDQorKyAqIENoZWNrcyB3aGV0aGVyIGFuIG9wZXJhdGlv biBpcyBhbGxvd2VkIG5lZWQgdG8gdGFrZSBjYXJlIHRvIHVzZSB0aGUgVUlEDQorKyAqIHZhbHVl IGFzIG9mIHRoZSB0aW1lIHdoZW4gdGhlIG9wZXJhdGlvbiB3YXMgbWFkZSAob3IsIGZvbGxvd2lu ZyB0aGUgb3BlbigpDQorKyAqIHByaXZpbGVnZSBjaGVjayBtb2RlbCwgd2hlbiB0aGUgY29ubmVj dGlvbiBtYWtpbmcgdGhlIG9wZXJhdGlvbiBwb3NzaWJsZQ0KKysgKiB3YXMgaW5pdGlhdGVkKS4g IFRoYXQgaXMgdXN1YWxseSBkb25lIGJ5IGluaXRpYWxpemluZyB0aGlzIHdpdGgNCisrICogcG9s a2l0X3VuaXhfcHJvY2Vzc19uZXdfZm9yX293bmVyKCkgd2l0aCB0cnVzdGVkIGRhdGEuDQorICAq Lw0KKyANCisgLyoqDQorQEAgLTgzLDkgKzkxLDYgQEAgc3RhdGljIHZvaWQgc3ViamVjdF9pZmFj ZV9pbml0IChQb2xraXRTdWJqZWN0SWZhY2UgKnN1YmplY3RfaWZhY2UpOw0KKyBzdGF0aWMgZ3Vp bnQ2NCBnZXRfc3RhcnRfdGltZV9mb3JfcGlkIChnaW50ICAgIHBpZCwNCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgR0Vycm9yICoqZXJyb3IpOw0KKyANCistc3RhdGlj IGdpbnQgX3BvbGtpdF91bml4X3Byb2Nlc3NfZ2V0X293bmVyIChQb2xraXRVbml4UHJvY2VzcyAg KnByb2Nlc3MsDQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg R0Vycm9yICAgICAgICAgICAgKiplcnJvcik7DQorLQ0KKyAjaWZkZWYgSEFWRV9GUkVFQlNEDQor IHN0YXRpYyBnYm9vbGVhbiBnZXRfa2luZm9fcHJvYyAoZ2ludCBwaWQsIHN0cnVjdCBraW5mb19w cm9jICpwKTsNCisgI2VuZGlmDQorQEAgLTE3MCw3ICsxNzUsNyBAQCBwb2xraXRfdW5peF9wcm9j ZXNzX2NvbnN0cnVjdGVkIChHT2JqZWN0ICpvYmplY3QpDQorICAgICB7DQorICAgICAgIEdFcnJv ciAqZXJyb3I7DQorICAgICAgIGVycm9yID0gTlVMTDsNCistICAgICAgcHJvY2Vzcy0+dWlkID0g X3BvbGtpdF91bml4X3Byb2Nlc3NfZ2V0X293bmVyIChwcm9jZXNzLCAmZXJyb3IpOw0KKysgICAg ICBwcm9jZXNzLT51aWQgPSBwb2xraXRfdW5peF9wcm9jZXNzX2dldF9yYWN5X3VpZF9fIChwcm9j ZXNzLCAmZXJyb3IpOw0KKyAgICAgICBpZiAoZXJyb3IgIT0gTlVMTCkNCisgICAgICAgICB7DQor ICAgICAgICAgICBwcm9jZXNzLT51aWQgPSAtMTsNCitAQCAtMjU5LDYgKzI2NCwxMiBAQCBwb2xr aXRfdW5peF9wcm9jZXNzX2NsYXNzX2luaXQgKFBvbGtpdFVuaXhQcm9jZXNzQ2xhc3MgKmtsYXNz KQ0KKyAgKiBHZXRzIHRoZSB1c2VyIGlkIGZvciBAcHJvY2Vzcy4gTm90ZSB0aGF0IHRoaXMgaXMg dGhlIHJlYWwgdXNlci1pZCwNCisgICogbm90IHRoZSBlZmZlY3RpdmUgdXNlci1pZC4NCisgICoN CisrICogTk9URTogVGhlIFVJRCBtYXkgY2hhbmdlIG92ZXIgdGltZSwgc28gdGhlIHJldHVybmVk IHZhbHVlIG1heSBub3QgbWF0Y2ggdGhlDQorKyAqIGN1cnJlbnQgc3RhdGUgb2YgdGhlIHVuZGVy bHlpbmcgcHJvY2Vzczsgb3IgdGhlIFVJRCBtYXkgaGF2ZSBiZWVuIHNldCBieQ0KKysgKiBwb2xr aXRfdW5peF9wcm9jZXNzX25ld19mb3Jfb3duZXIoKSBvciBwb2xraXRfdW5peF9wcm9jZXNzX3Nl dF91aWQoKSwNCisrICogaW4gd2hpY2ggY2FzZSBpdCBtYXkgbm90IGNvcnJlc3BvbmQgdG8gdGhl IGFjdHVhbCBVSUQgb2YgdGhlIHJlZmVyZW5jZWQNCisrICogcHJvY2VzcyBhdCBhbGwgKGF0IGFu eSBwb2ludCBpbiB0aW1lKS4NCisrICoNCisgICogUmV0dXJuczogVGhlIHVzZXIgaWQgZm9yIEBw cm9jZXNzIG9yIC0xIGlmIHVua25vd24uDQorICAqLw0KKyBnaW50DQorQEAgLTY1NSwxOCArNjY2 LDI2IEBAIG91dDoNCisgICByZXR1cm4gc3RhcnRfdGltZTsNCisgfQ0KKyANCistc3RhdGljIGdp bnQNCistX3BvbGtpdF91bml4X3Byb2Nlc3NfZ2V0X293bmVyIChQb2xraXRVbml4UHJvY2VzcyAg KnByb2Nlc3MsDQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0Vycm9yICAgICAg ICAgICAgKiplcnJvcikNCisrLyoNCisrICogUHJpdmF0ZTogUmV0dXJuIHRoZSAiY3VycmVudCIg VUlELiAgTm90ZSB0aGF0IHRoaXMgaXMgaW5oZXJlbnRseSByYWN5LA0KKysgKiBhbmQgdGhlIHZh bHVlIG1heSBhbHJlYWR5IGJlIG9ic29sZXRlIGJ5IHRoZSB0aW1lIHRoaXMgZnVuY3Rpb24gcmV0 dXJuczsNCisrICogdGhpcyBmdW5jdGlvbiBvbmx5IGd1YXJhbnRlZXMgdGhhdCB0aGUgVUlEIHdh cyB2YWxpZCBhdCBzb21lIHBvaW50IGR1cmluZw0KKysgKiBpdHMgZXhlY3V0aW9uLg0KKysgKi8N CisrZ2ludA0KKytwb2xraXRfdW5peF9wcm9jZXNzX2dldF9yYWN5X3VpZF9fIChQb2xraXRVbml4 UHJvY2VzcyAgKnByb2Nlc3MsDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IEdFcnJvciAgICAgICAgICAgICoqZXJyb3IpDQorIHsNCisgICBnaW50IHJlc3VsdDsNCisgICBn Y2hhciAqY29udGVudHM7DQorICAgZ2NoYXIgKipsaW5lczsNCisrICBndWludDY0IHN0YXJ0X3Rp bWU7DQorICNpZmRlZiBIQVZFX0ZSRUVCU0QNCisgICBzdHJ1Y3Qga2luZm9fcHJvYyBwOw0KKyAj ZWxzZQ0KKyAgIGdjaGFyIGZpbGVuYW1lWzY0XTsNCisgICBndWludCBuOw0KKysgIEdFcnJvciAq bG9jYWxfZXJyb3I7DQorICNlbmRpZg0KKyANCisgICBnX3JldHVybl92YWxfaWZfZmFpbCAoUE9M S0lUX0lTX1VOSVhfUFJPQ0VTUyAocHJvY2VzcyksIDApOw0KK0BAIC02ODksNiArNzA4LDcgQEAg X3BvbGtpdF91bml4X3Byb2Nlc3NfZ2V0X293bmVyIChQb2xraXRVbml4UHJvY2VzcyAgKnByb2Nl c3MsDQorICAgICB9DQorIA0KKyAgIHJlc3VsdCA9IHAua2lfdWlkOw0KKysgIHN0YXJ0X3RpbWUg PSAoZ3VpbnQ2NCkgcC5raV9zdGFydC50dl9zZWM7DQorICNlbHNlDQorIA0KKyAgIC8qIHNlZSAn bWFuIHByb2MnIGZvciBsYXlvdXQgb2YgdGhlIHN0YXR1cyBmaWxlDQorQEAgLTcyMiwxNyArNzQy LDM3IEBAIF9wb2xraXRfdW5peF9wcm9jZXNzX2dldF9vd25lciAoUG9sa2l0VW5peFByb2Nlc3Mg ICpwcm9jZXNzLA0KKyAgICAgICBlbHNlDQorICAgICAgICAgew0KKyAgICAgICAgICAgcmVzdWx0 ID0gcmVhbF91aWQ7DQorLSAgICAgICAgICBnb3RvIG91dDsNCisrICAgICAgICAgIGdvdG8gZm91 bmQ7DQorICAgICAgICAgfQ0KKyAgICAgfQ0KKy0NCisgICBnX3NldF9lcnJvciAoZXJyb3IsDQor ICAgICAgICAgICAgICAgIFBPTEtJVF9FUlJPUiwNCisgICAgICAgICAgICAgICAgUE9MS0lUX0VS Uk9SX0ZBSUxFRCwNCisgICAgICAgICAgICAgICAgIkRpZG4ndCBmaW5kIGFueSBsaW5lIHN0YXJ0 aW5nIHdpdGggYFVpZDonIGluIGZpbGUgJXMiLA0KKyAgICAgICAgICAgICAgICBmaWxlbmFtZSk7 DQorKyAgZ290byBvdXQ7DQorKw0KKytmb3VuZDoNCisrICAvKiBUaGUgVUlEIGFuZCBzdGFydCB0 aW1lIGFyZSwgc2FkbHksIG5vdCBhdmFpbGFibGUgaW4gYSBzaW5nbGUgZmlsZS4gIFNvLA0KKysg ICAqIHJlYWQgdGhlIFVJRCBmaXJzdCwgYW5kIHRoZW4gdGhlIHN0YXJ0IHRpbWU7IGlmIHRoZSBz dGFydCB0aW1lIGlzIHRoZSBzYW1lDQorKyAgICogYmVmb3JlIGFuZCBhZnRlciByZWFkaW5nIHRo ZSBVSUQsIGl0IGNvdWxkbid0IGhhdmUgY2hhbmdlZC4NCisrICAgKi8NCisrICBsb2NhbF9lcnJv ciA9IE5VTEw7DQorKyAgc3RhcnRfdGltZSA9IGdldF9zdGFydF90aW1lX2Zvcl9waWQgKHByb2Nl c3MtPnBpZCwgJmxvY2FsX2Vycm9yKTsNCisrICBpZiAobG9jYWxfZXJyb3IgIT0gTlVMTCkNCisr ICAgIHsNCisrICAgICAgZ19wcm9wYWdhdGVfZXJyb3IgKGVycm9yLCBsb2NhbF9lcnJvcik7DQor KyAgICAgIGdvdG8gb3V0Ow0KKysgICAgfQ0KKyAjZW5kaWYNCisgDQorKyAgaWYgKHByb2Nlc3Mt PnN0YXJ0X3RpbWUgIT0gc3RhcnRfdGltZSkNCisrICAgIHsNCisrICAgICAgZ19zZXRfZXJyb3Ig KGVycm9yLCBQT0xLSVRfRVJST1IsIFBPTEtJVF9FUlJPUl9GQUlMRUQsDQorKwkJICAgInByb2Nl c3Mgd2l0aCBQSUQgJWQgaGFzIGJlZW4gcmVwbGFjZWQiLCBwcm9jZXNzLT5waWQpOw0KKysgICAg ICBnb3RvIG91dDsNCisrICAgIH0NCisrDQorIG91dDoNCisgICBnX3N0cmZyZWV2IChsaW5lcyk7 DQorICAgZ19mcmVlIChjb250ZW50cyk7DQorQEAgLTc0NCw1ICs3ODQsNSBAQCBnaW50DQorIHBv bGtpdF91bml4X3Byb2Nlc3NfZ2V0X293bmVyIChQb2xraXRVbml4UHJvY2VzcyAgKnByb2Nlc3Ms DQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHRXJyb3IgICAgICAgICAgICAqKmVy cm9yKQ0KKyB7DQorLSAgcmV0dXJuIF9wb2xraXRfdW5peF9wcm9jZXNzX2dldF9vd25lciAocHJv Y2VzcywgZXJyb3IpOw0KKysgIHJldHVybiBwb2xraXRfdW5peF9wcm9jZXNzX2dldF9yYWN5X3Vp ZF9fIChwcm9jZXNzLCBlcnJvcik7DQorIH0NCitkaWZmIC0tZ2l0IGEvc3JjL3BvbGtpdGJhY2tl bmQvcG9sa2l0YmFja2VuZGludGVyYWN0aXZlYXV0aG9yaXR5LmMgYi9zcmMvcG9sa2l0YmFja2Vu ZC9wb2xraXRiYWNrZW5kaW50ZXJhY3RpdmVhdXRob3JpdHkuYw0KK2luZGV4IDczZDBhMGUuLjk3 YThkODAgMTAwNjQ0DQorLS0tIGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGludGVy YWN0aXZlYXV0aG9yaXR5LmMNCisrKysgYi9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5k aW50ZXJhY3RpdmVhdXRob3JpdHkuYw0KK0BAIC01NjMsNyArNTYzLDcgQEAgbG9nX3Jlc3VsdCAo UG9sa2l0QmFja2VuZEludGVyYWN0aXZlQXV0aG9yaXR5ICAgICphdXRob3JpdHksDQorICAgaWYg KHBvbGtpdF9hdXRob3JpemF0aW9uX3Jlc3VsdF9nZXRfaXNfYXV0aG9yaXplZCAocmVzdWx0KSkN CisgICAgIGxvZ19yZXN1bHRfc3RyID0gIkFMTE9XSU5HIjsNCisgDQorLSAgdXNlcl9vZl9zdWJq ZWN0ID0gcG9sa2l0X2JhY2tlbmRfc2Vzc2lvbl9tb25pdG9yX2dldF91c2VyX2Zvcl9zdWJqZWN0 IChwcml2LT5zZXNzaW9uX21vbml0b3IsIHN1YmplY3QsIE5VTEwpOw0KKysgIHVzZXJfb2Zfc3Vi amVjdCA9IHBvbGtpdF9iYWNrZW5kX3Nlc3Npb25fbW9uaXRvcl9nZXRfdXNlcl9mb3Jfc3ViamVj dCAocHJpdi0+c2Vzc2lvbl9tb25pdG9yLCBzdWJqZWN0LCBOVUxMLCBOVUxMKTsNCisgDQorICAg c3ViamVjdF9zdHIgPSBwb2xraXRfc3ViamVjdF90b19zdHJpbmcgKHN1YmplY3QpOw0KKyANCitA QCAtODM3LDYgKzgzNyw3IEBAIHBvbGtpdF9iYWNrZW5kX2ludGVyYWN0aXZlX2F1dGhvcml0eV9j aGVja19hdXRob3JpemF0aW9uIChQb2xraXRCYWNrZW5kQXV0aG9yaXR5DQorICAgZ2NoYXIgKnN1 YmplY3Rfc3RyOw0KKyAgIFBvbGtpdElkZW50aXR5ICp1c2VyX29mX2NhbGxlcjsNCisgICBQb2xr aXRJZGVudGl0eSAqdXNlcl9vZl9zdWJqZWN0Ow0KKysgIGdib29sZWFuIHVzZXJfb2Zfc3ViamVj dF9tYXRjaGVzOw0KKyAgIGdjaGFyICp1c2VyX29mX2NhbGxlcl9zdHI7DQorICAgZ2NoYXIgKnVz ZXJfb2Zfc3ViamVjdF9zdHI7DQorICAgUG9sa2l0QXV0aG9yaXphdGlvblJlc3VsdCAqcmVzdWx0 Ow0KK0BAIC04ODIsNyArODgzLDcgQEAgcG9sa2l0X2JhY2tlbmRfaW50ZXJhY3RpdmVfYXV0aG9y aXR5X2NoZWNrX2F1dGhvcml6YXRpb24gKFBvbGtpdEJhY2tlbmRBdXRob3JpdHkNCisgICAgICAg ICAgICBhY3Rpb25faWQpOw0KKyANCisgICB1c2VyX29mX2NhbGxlciA9IHBvbGtpdF9iYWNrZW5k X3Nlc3Npb25fbW9uaXRvcl9nZXRfdXNlcl9mb3Jfc3ViamVjdCAocHJpdi0+c2Vzc2lvbl9tb25p dG9yLA0KKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBjYWxsZXIsDQorKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxlciwg TlVMTCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgJmVycm9yKTsNCisgICBpZiAoZXJyb3IgIT0gTlVMTCkN CisgICAgIHsNCitAQCAtODk3LDcgKzg5OCw3IEBAIHBvbGtpdF9iYWNrZW5kX2ludGVyYWN0aXZl X2F1dGhvcml0eV9jaGVja19hdXRob3JpemF0aW9uIChQb2xraXRCYWNrZW5kQXV0aG9yaXR5DQor ICAgZ19kZWJ1ZyAoIiB1c2VyIG9mIGNhbGxlciBpcyAlcyIsIHVzZXJfb2ZfY2FsbGVyX3N0cik7 DQorIA0KKyAgIHVzZXJfb2Zfc3ViamVjdCA9IHBvbGtpdF9iYWNrZW5kX3Nlc3Npb25fbW9uaXRv cl9nZXRfdXNlcl9mb3Jfc3ViamVjdCAocHJpdi0+c2Vzc2lvbl9tb25pdG9yLA0KKy0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgc3ViamVjdCwNCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1YmplY3QsICZ1c2VyX29mX3N1 YmplY3RfbWF0Y2hlcywNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZlcnJvcik7DQorICAgaWYgKGVycm9y ICE9IE5VTEwpDQorICAgICB7DQorQEAgLTkyNyw3ICs5MjgsMTAgQEAgcG9sa2l0X2JhY2tlbmRf aW50ZXJhY3RpdmVfYXV0aG9yaXR5X2NoZWNrX2F1dGhvcml6YXRpb24gKFBvbGtpdEJhY2tlbmRB dXRob3JpdHkNCisgICAgKiBXZSBvbmx5IGFsbG93IHRoaXMgaWYsIGFuZCBvbmx5IGlmLA0KKyAg ICAqDQorICAgICogIC0gcHJvY2Vzc2VzIG1heSBjaGVjayBmb3IgYW5vdGhlciBwcm9jZXNzIG93 bmVkIGJ5IHRoZSAqc2FtZSogdXNlciBidXQgbm90DQorLSAgICogICAgaWYgZGV0YWlscyBhcmUg cGFzc2VkIChvdGhlcndpc2UgeW91J2QgYmUgYWJsZSB0byBzcG9vZiB0aGUgZGlhbG9nKQ0KKysg ICAqICAgIGlmIGRldGFpbHMgYXJlIHBhc3NlZCAob3RoZXJ3aXNlIHlvdSdkIGJlIGFibGUgdG8g c3Bvb2YgdGhlIGRpYWxvZyk7DQorKyAgICogICAgdGhlIGNhbGxlciBzdXBwbGllcyB0aGUgdXNl cl9vZl9zdWJqZWN0IHZhbHVlLCBzbyB3ZSBhZGRpdGlvbmFsbHkNCisrICAgKiAgICByZXF1aXJl IGl0IHRvIG1hdGNoIGF0IGxlYXN0IGF0IG9uZSBwb2ludCBpbiB0aW1lICh2aWENCisrICAgKiAg ICB1c2VyX29mX3N1YmplY3RfbWF0Y2hlcykuDQorICAgICoNCisgICAgKiAgLSBwcm9jZXNzZXMg cnVubmluZyBhcyB1aWQgMCBtYXkgY2hlY2sgYW55dGhpbmcgYW5kIHBhc3MgYW55IGRldGFpbHMN CisgICAgKg0KK0BAIC05MzUsNyArOTM5LDkgQEAgcG9sa2l0X2JhY2tlbmRfaW50ZXJhY3RpdmVf YXV0aG9yaXR5X2NoZWNrX2F1dGhvcml6YXRpb24gKFBvbGtpdEJhY2tlbmRBdXRob3JpdHkNCisg ICAgKiAgICB0aGVuIGFueSB1aWQgcmVmZXJlbmNlZCBieSB0aGF0IGFubm90YXRpb24gaXMgYWxz byBhbGxvd2VkIHRvIGNoZWNrDQorICAgICogICAgdG8gY2hlY2sgYW55dGhpbmcgYW5kIHBhc3Mg YW55IGRldGFpbHMNCisgICAgKi8NCistICBpZiAoIXBvbGtpdF9pZGVudGl0eV9lcXVhbCAodXNl cl9vZl9jYWxsZXIsIHVzZXJfb2Zfc3ViamVjdCkgfHwgaGFzX2RldGFpbHMpDQorKyAgaWYgKCF1 c2VyX29mX3N1YmplY3RfbWF0Y2hlcw0KKysgICAgICB8fCAhcG9sa2l0X2lkZW50aXR5X2VxdWFs ICh1c2VyX29mX2NhbGxlciwgdXNlcl9vZl9zdWJqZWN0KQ0KKysgICAgICB8fCBoYXNfZGV0YWls cykNCisgICAgIHsNCisgICAgICAgaWYgKCFtYXlfaWRlbnRpdHlfY2hlY2tfYXV0aG9yaXphdGlv biAoaW50ZXJhY3RpdmVfYXV0aG9yaXR5LCBhY3Rpb25faWQsIHVzZXJfb2ZfY2FsbGVyKSkNCisg ICAgICAgICB7DQorQEAgLTExMDIsOSArMTEwOCwxMCBAQCBjaGVja19hdXRob3JpemF0aW9uX3N5 bmMgKFBvbGtpdEJhY2tlbmRBdXRob3JpdHkgICAgICAgICAqYXV0aG9yaXR5LA0KKyAgICAgICBn b3RvIG91dDsNCisgICAgIH0NCisgDQorLSAgLyogZXZlcnkgc3ViamVjdCBoYXMgYSB1c2VyICov DQorKyAgLyogZXZlcnkgc3ViamVjdCBoYXMgYSB1c2VyOyB0aGlzIGlzIHN1cHBsaWVkIGJ5IHRo ZSBjbGllbnQsIHNvIHdlIHJlbHkNCisrICAgKiBvbiB0aGUgY2FsbGVyIHRvIHZhbGlkYXRlIGl0 cyBhY2NlcHRhYmlsaXR5LiAqLw0KKyAgIHVzZXJfb2Zfc3ViamVjdCA9IHBvbGtpdF9iYWNrZW5k X3Nlc3Npb25fbW9uaXRvcl9nZXRfdXNlcl9mb3Jfc3ViamVjdCAocHJpdi0+c2Vzc2lvbl9tb25p dG9yLA0KKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgc3ViamVjdCwNCisrICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1Ympl Y3QsIE5VTEwsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcik7DQorICAgaWYgKHVzZXJfb2Zfc3Vi amVjdCA9PSBOVUxMKQ0KKyAgICAgICBnb3RvIG91dDsNCitAQCAtMjMxOSw2ICsyMzI2LDcgQEAg cG9sa2l0X2JhY2tlbmRfaW50ZXJhY3RpdmVfYXV0aG9yaXR5X3JlZ2lzdGVyX2F1dGhlbnRpY2F0 aW9uX2FnZW50IChQb2xraXRCYWNrZW4NCisgICBQb2xraXRTdWJqZWN0ICpzZXNzaW9uX2Zvcl9j YWxsZXI7DQorICAgUG9sa2l0SWRlbnRpdHkgKnVzZXJfb2ZfY2FsbGVyOw0KKyAgIFBvbGtpdElk ZW50aXR5ICp1c2VyX29mX3N1YmplY3Q7DQorKyAgZ2Jvb2xlYW4gdXNlcl9vZl9zdWJqZWN0X21h dGNoZXM7DQorICAgQXV0aGVudGljYXRpb25BZ2VudCAqYWdlbnQ7DQorICAgZ2Jvb2xlYW4gcmV0 Ow0KKyAgIGdjaGFyICpjYWxsZXJfY21kbGluZTsNCitAQCAtMjM3MSw3ICsyMzc5LDcgQEAgcG9s a2l0X2JhY2tlbmRfaW50ZXJhY3RpdmVfYXV0aG9yaXR5X3JlZ2lzdGVyX2F1dGhlbnRpY2F0aW9u X2FnZW50IChQb2xraXRCYWNrZW4NCisgICAgICAgZ290byBvdXQ7DQorICAgICB9DQorIA0KKy0g IHVzZXJfb2ZfY2FsbGVyID0gcG9sa2l0X2JhY2tlbmRfc2Vzc2lvbl9tb25pdG9yX2dldF91c2Vy X2Zvcl9zdWJqZWN0IChwcml2LT5zZXNzaW9uX21vbml0b3IsIGNhbGxlciwgTlVMTCk7DQorKyAg dXNlcl9vZl9jYWxsZXIgPSBwb2xraXRfYmFja2VuZF9zZXNzaW9uX21vbml0b3JfZ2V0X3VzZXJf Zm9yX3N1YmplY3QgKHByaXYtPnNlc3Npb25fbW9uaXRvciwgY2FsbGVyLCBOVUxMLCBOVUxMKTsN CisgICBpZiAodXNlcl9vZl9jYWxsZXIgPT0gTlVMTCkNCisgICAgIHsNCisgICAgICAgZ19zZXRf ZXJyb3IgKGVycm9yLA0KK0BAIC0yMzgwLDcgKzIzODgsNyBAQCBwb2xraXRfYmFja2VuZF9pbnRl cmFjdGl2ZV9hdXRob3JpdHlfcmVnaXN0ZXJfYXV0aGVudGljYXRpb25fYWdlbnQgKFBvbGtpdEJh Y2tlbg0KKyAgICAgICAgICAgICAgICAgICAgIkNhbm5vdCBkZXRlcm1pbmUgdXNlciBvZiBjYWxs ZXIiKTsNCisgICAgICAgZ290byBvdXQ7DQorICAgICB9DQorLSAgdXNlcl9vZl9zdWJqZWN0ID0g cG9sa2l0X2JhY2tlbmRfc2Vzc2lvbl9tb25pdG9yX2dldF91c2VyX2Zvcl9zdWJqZWN0IChwcml2 LT5zZXNzaW9uX21vbml0b3IsIHN1YmplY3QsIE5VTEwpOw0KKysgIHVzZXJfb2Zfc3ViamVjdCA9 IHBvbGtpdF9iYWNrZW5kX3Nlc3Npb25fbW9uaXRvcl9nZXRfdXNlcl9mb3Jfc3ViamVjdCAocHJp di0+c2Vzc2lvbl9tb25pdG9yLCBzdWJqZWN0LCAmdXNlcl9vZl9zdWJqZWN0X21hdGNoZXMsIE5V TEwpOw0KKyAgIGlmICh1c2VyX29mX3N1YmplY3QgPT0gTlVMTCkNCisgICAgIHsNCisgICAgICAg Z19zZXRfZXJyb3IgKGVycm9yLA0KK0BAIC0yMzg5LDcgKzIzOTcsOCBAQCBwb2xraXRfYmFja2Vu ZF9pbnRlcmFjdGl2ZV9hdXRob3JpdHlfcmVnaXN0ZXJfYXV0aGVudGljYXRpb25fYWdlbnQgKFBv bGtpdEJhY2tlbg0KKyAgICAgICAgICAgICAgICAgICAgIkNhbm5vdCBkZXRlcm1pbmUgdXNlciBv ZiBzdWJqZWN0Iik7DQorICAgICAgIGdvdG8gb3V0Ow0KKyAgICAgfQ0KKy0gIGlmICghcG9sa2l0 X2lkZW50aXR5X2VxdWFsICh1c2VyX29mX2NhbGxlciwgdXNlcl9vZl9zdWJqZWN0KSkNCisrICBp ZiAoIXVzZXJfb2Zfc3ViamVjdF9tYXRjaGVzDQorKyAgICAgIHx8ICFwb2xraXRfaWRlbnRpdHlf ZXF1YWwgKHVzZXJfb2ZfY2FsbGVyLCB1c2VyX29mX3N1YmplY3QpKQ0KKyAgICAgew0KKyAgICAg ICBpZiAoUE9MS0lUX0lTX1VOSVhfVVNFUiAodXNlcl9vZl9jYWxsZXIpICYmIHBvbGtpdF91bml4 X3VzZXJfZ2V0X3VpZCAoUE9MS0lUX1VOSVhfVVNFUiAodXNlcl9vZl9jYWxsZXIpKSA9PSAwKQ0K KyAgICAgICAgIHsNCitAQCAtMjQ4Miw2ICsyNDkxLDcgQEAgcG9sa2l0X2JhY2tlbmRfaW50ZXJh Y3RpdmVfYXV0aG9yaXR5X3VucmVnaXN0ZXJfYXV0aGVudGljYXRpb25fYWdlbnQgKFBvbGtpdEJh Y2sNCisgICBQb2xraXRTdWJqZWN0ICpzZXNzaW9uX2Zvcl9jYWxsZXI7DQorICAgUG9sa2l0SWRl bnRpdHkgKnVzZXJfb2ZfY2FsbGVyOw0KKyAgIFBvbGtpdElkZW50aXR5ICp1c2VyX29mX3N1Ympl Y3Q7DQorKyAgZ2Jvb2xlYW4gdXNlcl9vZl9zdWJqZWN0X21hdGNoZXM7DQorICAgQXV0aGVudGlj YXRpb25BZ2VudCAqYWdlbnQ7DQorICAgZ2Jvb2xlYW4gcmV0Ow0KKyAgIGdjaGFyICpzY29wZV9z dHI7DQorQEAgLTI1MzAsNyArMjU0MCw3IEBAIHBvbGtpdF9iYWNrZW5kX2ludGVyYWN0aXZlX2F1 dGhvcml0eV91bnJlZ2lzdGVyX2F1dGhlbnRpY2F0aW9uX2FnZW50IChQb2xraXRCYWNrDQorICAg ICAgIGdvdG8gb3V0Ow0KKyAgICAgfQ0KKyANCistICB1c2VyX29mX2NhbGxlciA9IHBvbGtpdF9i YWNrZW5kX3Nlc3Npb25fbW9uaXRvcl9nZXRfdXNlcl9mb3Jfc3ViamVjdCAocHJpdi0+c2Vzc2lv bl9tb25pdG9yLCBjYWxsZXIsIE5VTEwpOw0KKysgIHVzZXJfb2ZfY2FsbGVyID0gcG9sa2l0X2Jh Y2tlbmRfc2Vzc2lvbl9tb25pdG9yX2dldF91c2VyX2Zvcl9zdWJqZWN0IChwcml2LT5zZXNzaW9u X21vbml0b3IsIGNhbGxlciwgTlVMTCwgTlVMTCk7DQorICAgaWYgKHVzZXJfb2ZfY2FsbGVyID09 IE5VTEwpDQorICAgICB7DQorICAgICAgIGdfc2V0X2Vycm9yIChlcnJvciwNCitAQCAtMjUzOSw3 ICsyNTQ5LDcgQEAgcG9sa2l0X2JhY2tlbmRfaW50ZXJhY3RpdmVfYXV0aG9yaXR5X3VucmVnaXN0 ZXJfYXV0aGVudGljYXRpb25fYWdlbnQgKFBvbGtpdEJhY2sNCisgICAgICAgICAgICAgICAgICAg ICJDYW5ub3QgZGV0ZXJtaW5lIHVzZXIgb2YgY2FsbGVyIik7DQorICAgICAgIGdvdG8gb3V0Ow0K KyAgICAgfQ0KKy0gIHVzZXJfb2Zfc3ViamVjdCA9IHBvbGtpdF9iYWNrZW5kX3Nlc3Npb25fbW9u aXRvcl9nZXRfdXNlcl9mb3Jfc3ViamVjdCAocHJpdi0+c2Vzc2lvbl9tb25pdG9yLCBzdWJqZWN0 LCBOVUxMKTsNCisrICB1c2VyX29mX3N1YmplY3QgPSBwb2xraXRfYmFja2VuZF9zZXNzaW9uX21v bml0b3JfZ2V0X3VzZXJfZm9yX3N1YmplY3QgKHByaXYtPnNlc3Npb25fbW9uaXRvciwgc3ViamVj dCwgJnVzZXJfb2Zfc3ViamVjdF9tYXRjaGVzLCBOVUxMKTsNCisgICBpZiAodXNlcl9vZl9zdWJq ZWN0ID09IE5VTEwpDQorICAgICB7DQorICAgICAgIGdfc2V0X2Vycm9yIChlcnJvciwNCitAQCAt MjU0OCw3ICsyNTU4LDggQEAgcG9sa2l0X2JhY2tlbmRfaW50ZXJhY3RpdmVfYXV0aG9yaXR5X3Vu cmVnaXN0ZXJfYXV0aGVudGljYXRpb25fYWdlbnQgKFBvbGtpdEJhY2sNCisgICAgICAgICAgICAg ICAgICAgICJDYW5ub3QgZGV0ZXJtaW5lIHVzZXIgb2Ygc3ViamVjdCIpOw0KKyAgICAgICBnb3Rv IG91dDsNCisgICAgIH0NCistICBpZiAoIXBvbGtpdF9pZGVudGl0eV9lcXVhbCAodXNlcl9vZl9j YWxsZXIsIHVzZXJfb2Zfc3ViamVjdCkpDQorKyAgaWYgKCF1c2VyX29mX3N1YmplY3RfbWF0Y2hl cw0KKysgICAgICB8fCAhcG9sa2l0X2lkZW50aXR5X2VxdWFsICh1c2VyX29mX2NhbGxlciwgdXNl cl9vZl9zdWJqZWN0KSkNCisgICAgIHsNCisgICAgICAgaWYgKFBPTEtJVF9JU19VTklYX1VTRVIg KHVzZXJfb2ZfY2FsbGVyKSAmJiBwb2xraXRfdW5peF91c2VyX2dldF91aWQgKFBPTEtJVF9VTklY X1VTRVIgKHVzZXJfb2ZfY2FsbGVyKSkgPT0gMCkNCisgICAgICAgICB7DQorQEAgLTI2NTgsNyAr MjY2OSw3IEBAIHBvbGtpdF9iYWNrZW5kX2ludGVyYWN0aXZlX2F1dGhvcml0eV9hdXRoZW50aWNh dGlvbl9hZ2VudF9yZXNwb25zZSAoUG9sa2l0QmFja2VuDQorICAgICAgICAgICAgaWRlbnRpdHlf c3RyKTsNCisgDQorICAgdXNlcl9vZl9jYWxsZXIgPSBwb2xraXRfYmFja2VuZF9zZXNzaW9uX21v bml0b3JfZ2V0X3VzZXJfZm9yX3N1YmplY3QgKHByaXYtPnNlc3Npb25fbW9uaXRvciwNCistICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgY2FsbGVyLA0KKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxsZXIsIE5VTEwsDQorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGVycm9yKTsNCisgICBpZiAodXNlcl9vZl9jYWxsZXIgPT0gTlVMTCkNCisg ICAgIGdvdG8gb3V0Ow0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNr ZW5kc2Vzc2lvbm1vbml0b3Itc3lzdGVtZC5jIGIvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFj a2VuZHNlc3Npb25tb25pdG9yLXN5c3RlbWQuYw0KK2luZGV4IDZiZDUxN2EuLjc3MzI1NmUgMTAw NjQ0DQorLS0tIGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZHNlc3Npb25tb25pdG9y LXN5c3RlbWQuYw0KKysrKyBiL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRzZXNzaW9u bW9uaXRvci1zeXN0ZW1kLmMNCitAQCAtMjksNiArMjksNyBAQA0KKyAjaW5jbHVkZSA8c3RkbGli Lmg+DQorIA0KKyAjaW5jbHVkZSA8cG9sa2l0L3BvbGtpdC5oPg0KKysjaW5jbHVkZSA8cG9sa2l0 L3BvbGtpdHByaXZhdGUuaD4NCisgI2luY2x1ZGUgInBvbGtpdGJhY2tlbmRzZXNzaW9ubW9uaXRv ci5oIg0KKyANCisgLyogPGludGVybmFsPg0KK0BAIC0yNDYsMjYgKzI0Nyw0MCBAQCBwb2xraXRf YmFja2VuZF9zZXNzaW9uX21vbml0b3JfZ2V0X3Nlc3Npb25zIChQb2xraXRCYWNrZW5kU2Vzc2lv bk1vbml0b3IgKm1vbml0bw0KKyAgKiBwb2xraXRfYmFja2VuZF9zZXNzaW9uX21vbml0b3JfZ2V0 X3VzZXI6DQorICAqIEBtb25pdG9yOiBBICNQb2xraXRCYWNrZW5kU2Vzc2lvbk1vbml0b3IuDQor ICAqIEBzdWJqZWN0OiBBICNQb2xraXRTdWJqZWN0Lg0KKysgKiBAcmVzdWx0X21hdGNoZXM6IElm IG5vdCAlTlVMTCwgc2V0IHRvIGluZGljYXRlIHdoZXRoZXIgdGhlIHJldHVybiB2YWx1ZSBtYXRj aGVzIGN1cnJlbnQgKFJBQ1kpIHN0YXRlLg0KKyAgKiBAZXJyb3I6IFJldHVybiBsb2NhdGlvbiBm b3IgZXJyb3IuDQorICAqDQorICAqIEdldHMgdGhlIHVzZXIgY29ycmVzcG9uZGluZyB0byBAc3Vi amVjdCBvciAlTlVMTCBpZiBubyB1c2VyIGV4aXN0cy4NCisgICoNCisrICogTk9URTogRm9yIGEg I1BvbGtpdFVuaXhQcm9jZXNzLCB0aGUgVUlEIGlzIHJlYWQgZnJvbSBAc3ViamVjdCAod2hpY2gg bWF5DQorKyAqIGNvbWUgZnJvbSBlLmcuIGEgRC1CdXMgY2xpZW50KSwgc28gaXQgbWF5IG5vdCBj b3JyZXNwb25kIHRvIHRoZSBhY3R1YWwgVUlEDQorKyAqIG9mIHRoZSByZWZlcmVuY2VkIHByb2Nl c3MgKGF0IGFueSBwb2ludCBpbiB0aW1lKS4gIFRoaXMgaXMgaW5kaWNhdGVkIGJ5DQorKyAqIHNl dHRpbmcgQHJlc3VsdF9tYXRjaGVzIHRvICVGQUxTRTsgdGhlIGNhbGxlciBtYXkgcmVqZWN0IHN1 Y2ggc3ViamVjdHMgb3INCisrICogcmVxdWlyZSBhZGRpdGlvbmFsIHByaXZpbGVnZXMuIEByZXN1 bHRfbWF0Y2hlcyA9PSAlVFJVRSBvbmx5IGluZGljYXRlcyB0aGF0DQorKyAqIHRoZSBVSUQgbWF0 Y2hlZCB0aGUgdW5kZXJseWluZyBwcm9jZXNzIGF0IE9ORSBwb2ludCBpbiB0aW1lLCBpdCBtYXkg bm90IG1hdGNoDQorKyAqIGxhdGVyLg0KKysgKg0KKyAgKiBSZXR1cm5zOiAlTlVMTCBpZiBAZXJy b3IgaXMgc2V0IG90aGVyd2lzZSBhICNQb2xraXRVbml4VXNlciB0aGF0IHNob3VsZCBiZSBmcmVl ZCB3aXRoIGdfb2JqZWN0X3VucmVmKCkuDQorICAqLw0KKyBQb2xraXRJZGVudGl0eSAqDQorIHBv bGtpdF9iYWNrZW5kX3Nlc3Npb25fbW9uaXRvcl9nZXRfdXNlcl9mb3Jfc3ViamVjdCAoUG9sa2l0 QmFja2VuZFNlc3Npb25Nb25pdG9yICAqbW9uaXRvciwNCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQb2xraXRTdWJqZWN0ICAgICAgICAgICAg ICAgICpzdWJqZWN0LA0KKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGdib29sZWFuICAgICAgICAgICAgICAgICAgICAgKnJlc3VsdF9tYXRjaGVz LA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IEdFcnJvciAgICAgICAgICAgICAgICAgICAgICAqKmVycm9yKQ0KKyB7DQorICAgUG9sa2l0SWRl bnRpdHkgKnJldDsNCistICBndWludDMyIHVpZDsNCisrICBnYm9vbGVhbiBtYXRjaGVzOw0KKyAN CisgICByZXQgPSBOVUxMOw0KKysgIG1hdGNoZXMgPSBGQUxTRTsNCisgDQorICAgaWYgKFBPTEtJ VF9JU19VTklYX1BST0NFU1MgKHN1YmplY3QpKQ0KKyAgICAgew0KKy0gICAgICB1aWQgPSBwb2xr aXRfdW5peF9wcm9jZXNzX2dldF91aWQgKFBPTEtJVF9VTklYX1BST0NFU1MgKHN1YmplY3QpKTsN CistICAgICAgaWYgKChnaW50KSB1aWQgPT0gLTEpDQorKyAgICAgIGdpbnQgc3ViamVjdF91aWQs IGN1cnJlbnRfdWlkOw0KKysgICAgICBHRXJyb3IgKmxvY2FsX2Vycm9yOw0KKysNCisrICAgICAg c3ViamVjdF91aWQgPSBwb2xraXRfdW5peF9wcm9jZXNzX2dldF91aWQgKFBPTEtJVF9VTklYX1BS T0NFU1MgKHN1YmplY3QpKTsNCisrICAgICAgaWYgKHN1YmplY3RfdWlkID09IC0xKQ0KKyAgICAg ICAgIHsNCisgICAgICAgICAgIGdfc2V0X2Vycm9yIChlcnJvciwNCisgICAgICAgICAgICAgICAg ICAgICAgICBQT0xLSVRfRVJST1IsDQorQEAgLTI3MywxNCArMjg4LDI0IEBAIHBvbGtpdF9iYWNr ZW5kX3Nlc3Npb25fbW9uaXRvcl9nZXRfdXNlcl9mb3Jfc3ViamVjdCAoUG9sa2l0QmFja2VuZFNl c3Npb25Nb25pdG9yDQorICAgICAgICAgICAgICAgICAgICAgICAgIlVuaXggcHJvY2VzcyBzdWJq ZWN0IGRvZXMgbm90IGhhdmUgdWlkIHNldCIpOw0KKyAgICAgICAgICAgZ290byBvdXQ7DQorICAg ICAgICAgfQ0KKy0gICAgICByZXQgPSBwb2xraXRfdW5peF91c2VyX25ldyAodWlkKTsNCisrICAg ICAgbG9jYWxfZXJyb3IgPSBOVUxMOw0KKysgICAgICBjdXJyZW50X3VpZCA9IHBvbGtpdF91bml4 X3Byb2Nlc3NfZ2V0X3JhY3lfdWlkX18gKFBPTEtJVF9VTklYX1BST0NFU1MgKHN1YmplY3QpLCAm bG9jYWxfZXJyb3IpOw0KKysgICAgICBpZiAobG9jYWxfZXJyb3IgIT0gTlVMTCkNCisrCXsNCisr CSAgZ19wcm9wYWdhdGVfZXJyb3IgKGVycm9yLCBsb2NhbF9lcnJvcik7DQorKwkgIGdvdG8gb3V0 Ow0KKysJfQ0KKysgICAgICByZXQgPSBwb2xraXRfdW5peF91c2VyX25ldyAoc3ViamVjdF91aWQp Ow0KKysgICAgICBtYXRjaGVzID0gKHN1YmplY3RfdWlkID09IGN1cnJlbnRfdWlkKTsNCisgICAg IH0NCisgICBlbHNlIGlmIChQT0xLSVRfSVNfU1lTVEVNX0JVU19OQU1FIChzdWJqZWN0KSkNCisg ICAgIHsNCisgICAgICAgcmV0ID0gKFBvbGtpdElkZW50aXR5Kilwb2xraXRfc3lzdGVtX2J1c19u YW1lX2dldF91c2VyX3N5bmMgKFBPTEtJVF9TWVNURU1fQlVTX05BTUUgKHN1YmplY3QpLCBOVUxM LCBlcnJvcik7DQorKyAgICAgIG1hdGNoZXMgPSBUUlVFOw0KKyAgICAgfQ0KKyAgIGVsc2UgaWYg KFBPTEtJVF9JU19VTklYX1NFU1NJT04gKHN1YmplY3QpKQ0KKyAgICAgew0KKysgICAgICB1aWRf dCB1aWQ7DQorIA0KKyAgICAgICBpZiAoc2Rfc2Vzc2lvbl9nZXRfdWlkIChwb2xraXRfdW5peF9z ZXNzaW9uX2dldF9zZXNzaW9uX2lkIChQT0xLSVRfVU5JWF9TRVNTSU9OIChzdWJqZWN0KSksICZ1 aWQpIDwgMCkNCisgICAgICAgICB7DQorQEAgLTI5Miw5ICszMTcsMTQgQEAgcG9sa2l0X2JhY2tl bmRfc2Vzc2lvbl9tb25pdG9yX2dldF91c2VyX2Zvcl9zdWJqZWN0IChQb2xraXRCYWNrZW5kU2Vz c2lvbk1vbml0b3INCisgICAgICAgICB9DQorIA0KKyAgICAgICByZXQgPSBwb2xraXRfdW5peF91 c2VyX25ldyAodWlkKTsNCisrICAgICAgbWF0Y2hlcyA9IFRSVUU7DQorICAgICB9DQorIA0KKyAg b3V0Og0KKysgIGlmIChyZXN1bHRfbWF0Y2hlcyAhPSBOVUxMKQ0KKysgICAgew0KKysgICAgICAq cmVzdWx0X21hdGNoZXMgPSBtYXRjaGVzOw0KKysgICAgfQ0KKyAgIHJldHVybiByZXQ7DQorIH0N CisgDQorZGlmZiAtLWdpdCBhL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRzZXNzaW9u bW9uaXRvci5jIGIvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZHNlc3Npb25tb25pdG9y LmMNCitpbmRleCBlMWE5YWIzLi5lZDMwNzU1IDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xraXRiYWNr ZW5kL3BvbGtpdGJhY2tlbmRzZXNzaW9ubW9uaXRvci5jDQorKysrIGIvc3JjL3BvbGtpdGJhY2tl bmQvcG9sa2l0YmFja2VuZHNlc3Npb25tb25pdG9yLmMNCitAQCAtMjcsNiArMjcsNyBAQA0KKyAj aW5jbHVkZSA8Z2xpYi9nc3RkaW8uaD4NCisgDQorICNpbmNsdWRlIDxwb2xraXQvcG9sa2l0Lmg+ DQorKyNpbmNsdWRlIDxwb2xraXQvcG9sa2l0cHJpdmF0ZS5oPg0KKyAjaW5jbHVkZSAicG9sa2l0 YmFja2VuZHNlc3Npb25tb25pdG9yLmgiDQorIA0KKyAjZGVmaW5lIENLREJfUEFUSCAiL3Zhci9y dW4vQ29uc29sZUtpdC9kYXRhYmFzZSINCitAQCAtMjczLDI4ICsyNzQsNDAgQEAgcG9sa2l0X2Jh Y2tlbmRfc2Vzc2lvbl9tb25pdG9yX2dldF9zZXNzaW9ucyAoUG9sa2l0QmFja2VuZFNlc3Npb25N b25pdG9yICptb25pdG8NCisgICogcG9sa2l0X2JhY2tlbmRfc2Vzc2lvbl9tb25pdG9yX2dldF91 c2VyOg0KKyAgKiBAbW9uaXRvcjogQSAjUG9sa2l0QmFja2VuZFNlc3Npb25Nb25pdG9yLg0KKyAg KiBAc3ViamVjdDogQSAjUG9sa2l0U3ViamVjdC4NCisrICogQHJlc3VsdF9tYXRjaGVzOiBJZiBu b3QgJU5VTEwsIHNldCB0byBpbmRpY2F0ZSB3aGV0aGVyIHRoZSByZXR1cm4gdmFsdWUgbWF0Y2hl cyBjdXJyZW50IChSQUNZKSBzdGF0ZS4NCisgICogQGVycm9yOiBSZXR1cm4gbG9jYXRpb24gZm9y IGVycm9yLg0KKyAgKg0KKyAgKiBHZXRzIHRoZSB1c2VyIGNvcnJlc3BvbmRpbmcgdG8gQHN1Ympl Y3Qgb3IgJU5VTEwgaWYgbm8gdXNlciBleGlzdHMuDQorICAqDQorKyAqIE5PVEU6IEZvciBhICNQ b2xraXRVbml4UHJvY2VzcywgdGhlIFVJRCBpcyByZWFkIGZyb20gQHN1YmplY3QgKHdoaWNoIG1h eQ0KKysgKiBjb21lIGZyb20gZS5nLiBhIEQtQnVzIGNsaWVudCksIHNvIGl0IG1heSBub3QgY29y cmVzcG9uZCB0byB0aGUgYWN0dWFsIFVJRA0KKysgKiBvZiB0aGUgcmVmZXJlbmNlZCBwcm9jZXNz IChhdCBhbnkgcG9pbnQgaW4gdGltZSkuICBUaGlzIGlzIGluZGljYXRlZCBieQ0KKysgKiBzZXR0 aW5nIEByZXN1bHRfbWF0Y2hlcyB0byAlRkFMU0U7IHRoZSBjYWxsZXIgbWF5IHJlamVjdCBzdWNo IHN1YmplY3RzIG9yDQorKyAqIHJlcXVpcmUgYWRkaXRpb25hbCBwcml2aWxlZ2VzLiBAcmVzdWx0 X21hdGNoZXMgPT0gJVRSVUUgb25seSBpbmRpY2F0ZXMgdGhhdA0KKysgKiB0aGUgVUlEIG1hdGNo ZWQgdGhlIHVuZGVybHlpbmcgcHJvY2VzcyBhdCBPTkUgcG9pbnQgaW4gdGltZSwgaXQgbWF5IG5v dCBtYXRjaA0KKysgKiBsYXRlci4NCisrICoNCisgICogUmV0dXJuczogJU5VTEwgaWYgQGVycm9y IGlzIHNldCBvdGhlcndpc2UgYSAjUG9sa2l0VW5peFVzZXIgdGhhdCBzaG91bGQgYmUgZnJlZWQg d2l0aCBnX29iamVjdF91bnJlZigpLg0KKyAgKi8NCisgUG9sa2l0SWRlbnRpdHkgKg0KKyBwb2xr aXRfYmFja2VuZF9zZXNzaW9uX21vbml0b3JfZ2V0X3VzZXJfZm9yX3N1YmplY3QgKFBvbGtpdEJh Y2tlbmRTZXNzaW9uTW9uaXRvciAgKm1vbml0b3IsDQorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUG9sa2l0U3ViamVjdCAgICAgICAgICAgICAg ICAqc3ViamVjdCwNCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBnYm9vbGVhbiAgICAgICAgICAgICAgICAgICAgICpyZXN1bHRfbWF0Y2hlcywN CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH RXJyb3IgICAgICAgICAgICAgICAgICAgICAgKiplcnJvcikNCisgew0KKyAgIFBvbGtpdElkZW50 aXR5ICpyZXQ7DQorKyAgZ2Jvb2xlYW4gbWF0Y2hlczsNCisgICBHRXJyb3IgKmxvY2FsX2Vycm9y Ow0KKy0gIGdjaGFyICpncm91cDsNCistICBndWludDMyIHVpZDsNCisgDQorICAgcmV0ID0gTlVM TDsNCisrICBtYXRjaGVzID0gRkFMU0U7DQorIA0KKyAgIGlmIChQT0xLSVRfSVNfVU5JWF9QUk9D RVNTIChzdWJqZWN0KSkNCisgICAgIHsNCistICAgICAgdWlkID0gcG9sa2l0X3VuaXhfcHJvY2Vz c19nZXRfdWlkIChQT0xLSVRfVU5JWF9QUk9DRVNTIChzdWJqZWN0KSk7DQorLSAgICAgIGlmICgo Z2ludCkgdWlkID09IC0xKQ0KKysgICAgICBnaW50IHN1YmplY3RfdWlkLCBjdXJyZW50X3VpZDsN CisrDQorKyAgICAgIHN1YmplY3RfdWlkID0gcG9sa2l0X3VuaXhfcHJvY2Vzc19nZXRfdWlkIChQ T0xLSVRfVU5JWF9QUk9DRVNTIChzdWJqZWN0KSk7DQorKyAgICAgIGlmIChzdWJqZWN0X3VpZCA9 PSAtMSkNCisgICAgICAgICB7DQorICAgICAgICAgICBnX3NldF9lcnJvciAoZXJyb3IsDQorICAg ICAgICAgICAgICAgICAgICAgICAgUE9MS0lUX0VSUk9SLA0KK0BAIC0zMDIsMTQgKzMxNSwyNiBA QCBwb2xraXRfYmFja2VuZF9zZXNzaW9uX21vbml0b3JfZ2V0X3VzZXJfZm9yX3N1YmplY3QgKFBv bGtpdEJhY2tlbmRTZXNzaW9uTW9uaXRvcg0KKyAgICAgICAgICAgICAgICAgICAgICAgICJVbml4 IHByb2Nlc3Mgc3ViamVjdCBkb2VzIG5vdCBoYXZlIHVpZCBzZXQiKTsNCisgICAgICAgICAgIGdv dG8gb3V0Ow0KKyAgICAgICAgIH0NCistICAgICAgcmV0ID0gcG9sa2l0X3VuaXhfdXNlcl9uZXcg KHVpZCk7DQorKyAgICAgIGxvY2FsX2Vycm9yID0gTlVMTDsNCisrICAgICAgY3VycmVudF91aWQg PSBwb2xraXRfdW5peF9wcm9jZXNzX2dldF9yYWN5X3VpZF9fIChQT0xLSVRfVU5JWF9QUk9DRVNT IChzdWJqZWN0KSwgJmxvY2FsX2Vycm9yKTsNCisrICAgICAgaWYgKGxvY2FsX2Vycm9yICE9IE5V TEwpDQorKwl7DQorKwkgIGdfcHJvcGFnYXRlX2Vycm9yIChlcnJvciwgbG9jYWxfZXJyb3IpOw0K KysJICBnb3RvIG91dDsNCisrCX0NCisrICAgICAgcmV0ID0gcG9sa2l0X3VuaXhfdXNlcl9uZXcg KHN1YmplY3RfdWlkKTsNCisrICAgICAgbWF0Y2hlcyA9IChzdWJqZWN0X3VpZCA9PSBjdXJyZW50 X3VpZCk7DQorICAgICB9DQorICAgZWxzZSBpZiAoUE9MS0lUX0lTX1NZU1RFTV9CVVNfTkFNRSAo c3ViamVjdCkpDQorICAgICB7DQorICAgICAgIHJldCA9IChQb2xraXRJZGVudGl0eSopcG9sa2l0 X3N5c3RlbV9idXNfbmFtZV9nZXRfdXNlcl9zeW5jIChQT0xLSVRfU1lTVEVNX0JVU19OQU1FIChz dWJqZWN0KSwgTlVMTCwgZXJyb3IpOw0KKysgICAgICBtYXRjaGVzID0gVFJVRTsNCisgICAgIH0N CisgICBlbHNlIGlmIChQT0xLSVRfSVNfVU5JWF9TRVNTSU9OIChzdWJqZWN0KSkNCisgICAgIHsN CisrICAgICAgZ2ludCB1aWQ7DQorKyAgICAgIGdjaGFyICpncm91cDsNCisrDQorICAgICAgIGlm ICghZW5zdXJlX2RhdGFiYXNlIChtb25pdG9yLCBlcnJvcikpDQorICAgICAgICAgew0KKyAgICAg ICAgICAgZ19wcmVmaXhfZXJyb3IgKGVycm9yLCAiRXJyb3IgZ2V0dGluZyB1c2VyIGZvciBzZXNz aW9uOiBFcnJvciBlbnN1cmluZyBDSyBkYXRhYmFzZSBhdCAiIENLREJfUEFUSCAiOiAiKTsNCitA QCAtMzI4LDkgKzM1MywxNCBAQCBwb2xraXRfYmFja2VuZF9zZXNzaW9uX21vbml0b3JfZ2V0X3Vz ZXJfZm9yX3N1YmplY3QgKFBvbGtpdEJhY2tlbmRTZXNzaW9uTW9uaXRvcg0KKyAgICAgICBnX2Zy ZWUgKGdyb3VwKTsNCisgDQorICAgICAgIHJldCA9IHBvbGtpdF91bml4X3VzZXJfbmV3ICh1aWQp Ow0KKysgICAgICBtYXRjaGVzID0gVFJVRTsNCisgICAgIH0NCisgDQorICBvdXQ6DQorKyAgaWYg KHJlc3VsdF9tYXRjaGVzICE9IE5VTEwpDQorKyAgICB7DQorKyAgICAgICpyZXN1bHRfbWF0Y2hl cyA9IG1hdGNoZXM7DQorKyAgICB9DQorICAgcmV0dXJuIHJldDsNCisgfQ0KKyANCitkaWZmIC0t Z2l0IGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZHNlc3Npb25tb25pdG9yLmggYi9z cmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kc2Vzc2lvbm1vbml0b3IuaA0KK2luZGV4IDhm OGEyY2EuLjM5NzIzMjYgMTAwNjQ0DQorLS0tIGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFj a2VuZHNlc3Npb25tb25pdG9yLmgNCisrKysgYi9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNr ZW5kc2Vzc2lvbm1vbml0b3IuaA0KK0BAIC00Nyw2ICs0Nyw3IEBAIEdMaXN0ICAgICAgICAgICAg ICAgICAgICAgICAqcG9sa2l0X2JhY2tlbmRfc2Vzc2lvbl9tb25pdG9yX2dldF9zZXNzaW9ucyAo UG9sa2l0DQorIA0KKyBQb2xraXRJZGVudGl0eSAgICAgICAgICAgICAgKnBvbGtpdF9iYWNrZW5k X3Nlc3Npb25fbW9uaXRvcl9nZXRfdXNlcl9mb3Jfc3ViamVjdCAoUG9sa2l0QmFja2VuZFNlc3Np b25Nb25pdG9yICptb25pdG9yLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUG9sa2l0U3Vi amVjdCAgICAgICAgICAgICAgICpzdWJqZWN0LA0KKysgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Z2Jvb2xlYW4gICAgICAgICAgICAgICAgICAgICpyZXN1bHRfbWF0Y2hlcywNCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIEdFcnJvciAgICAgICAgICAgICAgICAgICAgICoqZXJyb3IpOw0KKyAN CisgUG9sa2l0U3ViamVjdCAgICAgICAgICAgICAgICpwb2xraXRfYmFja2VuZF9zZXNzaW9uX21v bml0b3JfZ2V0X3Nlc3Npb25fZm9yX3N1YmplY3QgKFBvbGtpdEJhY2tlbmRTZXNzaW9uTW9uaXRv ciAqbW9uaXRvciwNCmRpZmYgLS1naXQgYS9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExNi9BbGxv dy1uZWdhdGl2ZS11aWRzLWdpZHMtaW4tUG9sa2l0VW5peFVzZXItYW5kLUdyb3VwLW9iamUucGF0 Y2ggYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExNi9BbGxvdy1uZWdhdGl2ZS11aWRzLWdpZHMt aW4tUG9sa2l0VW5peFVzZXItYW5kLUdyb3VwLW9iamUucGF0Y2gNCm5ldyBmaWxlIG1vZGUgMTAw NjQ0DQppbmRleCAwMDAwMDAwMDAuLmU5NWUwYzMzMg0KLS0tIC9kZXYvbnVsbA0KKysrIGIvcGF0 Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTYvQWxsb3ctbmVnYXRpdmUtdWlkcy1naWRzLWluLVBvbGtp dFVuaXhVc2VyLWFuZC1Hcm91cC1vYmplLnBhdGNoDQpAQCAtMCwwICsxLDE4NiBAQA0KK0Zyb206 ID0/dXRmLTg/cT9aYmlnbmlld19KPUM0PTk5ZHJ6ZWpld3NraS1Tem1laz89IDx6YnlzemVrQGlu Lndhdy5wbD4NCitEYXRlOiBNb24sIDMgRGVjIDIwMTggMTA6Mjg6NTggKzAxMDANCitTdWJqZWN0 OiBBbGxvdyBuZWdhdGl2ZSB1aWRzL2dpZHMgaW4gUG9sa2l0VW5peFVzZXIgYW5kIEdyb3VwIG9i amVjdHMNCisNCisodWlkX3QpIC0xIGlzIHN0aWxsIHVzZWQgYXMgcGxhY2Vob2xkZXIgdG8gbWVh biAidW5zZXQiLiBUaGlzIGlzIE9LLCBzaW5jZQ0KK3RoZXJlIHNob3VsZCBiZSBubyB1c2VycyB3 aXRoIHN1Y2ggbnVtYmVyLCBzZWUNCitodHRwczovL3N5c3RlbWQuaW8vVUlEUy1HSURTI3NwZWNp YWwtbGludXgtdWlkcy4NCisNCisodWlkX3QpIC0xIGlzIHVzZWQgYXMgdGhlIGRlZmF1bHQgdmFs dWUgaW4gY2xhc3MgaW5pdGlhbGl6YXRpb24uDQorDQorV2hlbiBhIHVzZXIgb3IgZ3JvdXAgYWJv dmUgSU5UMzJfTUFYIGlzIGNyZWF0ZWQsIHRoZSBudW1lcmljIHVpZCBvcg0KK2dpZCB3cmFwcyBh cm91bmQgdG8gbmVnYXRpdmUgd2hlbiB0aGUgdmFsdWUgaXMgYXNzaWduZWQgdG8gZ2ludCwgYW5k DQorcG9sa2l0IGdldHMgY29uZnVzZWQuIExldCdzIGFjY2VwdCBzdWNoIGdpZHMsIGV4Y2VwdCBm b3IgLTEuDQorDQorQSBuaWNlciBmaXggd291bGQgYmUgdG8gY2hhbmdlIHRoZSB1bmRlcmx5aW5n IHR5cGUgdG8gZS5nLiB1aW50MzIgdG8NCitub3QgaGF2ZSBuZWdhdGl2ZSB2YWx1ZXMuIEJ1dCB0 aGlzIGNhbm5vdCBiZSBkb25lIHdpdGhvdXQgYnJlYWtpbmcgdGhlDQorQVBJLCBzbyBsaWtlbHkg bmV3IGZ1bmN0aW9ucyB3aWxsIGhhdmUgdG8gYmUgYWRkZWQgKGENCitwb2xraXRfdW5peF91c2Vy X25ldyB2YXJpYW50IHRoYXQgdGFrZXMgYSB1bnNpZ25lZCwgYW5kIHRoZSBzYW1lIGZvcg0KK19n cm91cF9uZXcsIF9zZXRfdWlkLCBfZ2V0X3VpZCwgX3NldF9naWQsIF9nZXRfZ2lkLCBldGMuKS4g VGhpcyB3aWxsDQorcmVxdWlyZSBhIGJpZ2dlciBwYXRjaC4NCisNCitGaXhlcyBodHRwczovL2dp dGxhYi5mcmVlZGVza3RvcC5vcmcvcG9sa2l0L3BvbGtpdC9pc3N1ZXMvNzQuDQorDQorKGNoZXJy eSBwaWNrZWQgZnJvbSBjb21taXQgMmNiNDBjNGQ1ZmVlYWEwOTMyNTUyMmJkN2Q5NzkxMGYxYjU5 ZTM3OSkNCistLS0NCisgc3JjL3BvbGtpdC9wb2xraXR1bml4Z3JvdXAuYyAgIHwgMTUgKysrKysr KysrKystLS0tDQorIHNyYy9wb2xraXQvcG9sa2l0dW5peHByb2Nlc3MuYyB8IDEyICsrKysrKysr LS0tLQ0KKyBzcmMvcG9sa2l0L3BvbGtpdHVuaXh1c2VyLmMgICAgfCAxMyArKysrKysrKysrLS0t DQorIDMgZmlsZXMgY2hhbmdlZCwgMjkgaW5zZXJ0aW9ucygrKSwgMTEgZGVsZXRpb25zKC0pDQor DQorZGlmZiAtLWdpdCBhL3NyYy9wb2xraXQvcG9sa2l0dW5peGdyb3VwLmMgYi9zcmMvcG9sa2l0 L3BvbGtpdHVuaXhncm91cC5jDQoraW5kZXggYzU3YTFhYS4uMzA5ZjY4OSAxMDA2NDQNCistLS0g YS9zcmMvcG9sa2l0L3BvbGtpdHVuaXhncm91cC5jDQorKysrIGIvc3JjL3BvbGtpdC9wb2xraXR1 bml4Z3JvdXAuYw0KK0BAIC03MSw2ICs3MSw3IEBAIEdfREVGSU5FX1RZUEVfV0lUSF9DT0RFIChQ b2xraXRVbml4R3JvdXAsIHBvbGtpdF91bml4X2dyb3VwLCBHX1RZUEVfT0JKRUNULA0KKyBzdGF0 aWMgdm9pZA0KKyBwb2xraXRfdW5peF9ncm91cF9pbml0IChQb2xraXRVbml4R3JvdXAgKnVuaXhf Z3JvdXApDQorIHsNCisrICB1bml4X2dyb3VwLT5naWQgPSAtMTsgLyogKGdpdF90KSAtMSBpcyBu b3QgYSB2YWxpZCBHSUQgdW5kZXIgTGludXggKi8NCisgfQ0KKyANCisgc3RhdGljIHZvaWQNCitA QCAtMTAwLDExICsxMDEsMTQgQEAgcG9sa2l0X3VuaXhfZ3JvdXBfc2V0X3Byb3BlcnR5IChHT2Jq ZWN0ICAgICAgKm9iamVjdCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdQYXJh bVNwZWMgICAqcHNwZWMpDQorIHsNCisgICBQb2xraXRVbml4R3JvdXAgKnVuaXhfZ3JvdXAgPSBQ T0xLSVRfVU5JWF9HUk9VUCAob2JqZWN0KTsNCisrICBnaW50IHZhbDsNCisgDQorICAgc3dpdGNo IChwcm9wX2lkKQ0KKyAgICAgew0KKyAgICAgY2FzZSBQUk9QX0dJRDoNCistICAgICAgdW5peF9n cm91cC0+Z2lkID0gZ192YWx1ZV9nZXRfaW50ICh2YWx1ZSk7DQorKyAgICAgIHZhbCA9IGdfdmFs dWVfZ2V0X2ludCAodmFsdWUpOw0KKysgICAgICBnX3JldHVybl9pZl9mYWlsICh2YWwgIT0gLTEp Ow0KKysgICAgICB1bml4X2dyb3VwLT5naWQgPSB2YWw7DQorICAgICAgIGJyZWFrOw0KKyANCisg ICAgIGRlZmF1bHQ6DQorQEAgLTEzMSw5ICsxMzUsOSBAQCBwb2xraXRfdW5peF9ncm91cF9jbGFz c19pbml0IChQb2xraXRVbml4R3JvdXBDbGFzcyAqa2xhc3MpDQorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgZ19wYXJhbV9zcGVjX2ludCAoImdpZCIsDQorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkdyb3VwIElEIiwNCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiVGhl IFVOSVggZ3JvdXAgSUQiLA0KKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIDAsDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgR19NSU5JTlQsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgR19NQVhJTlQsDQorLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwNCisrICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtMSwNCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHX1BBUkFNX0NPTlNUUlVD VCB8DQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgR19QQVJBTV9SRUFEV1JJVEUgfA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIEdfUEFSQU1fU1RBVElDX05BTUUgfA0KK0BAIC0xNjYsOSAr MTcwLDEwIEBAIHBvbGtpdF91bml4X2dyb3VwX2dldF9naWQgKFBvbGtpdFVuaXhHcm91cCAqZ3Jv dXApDQorICAqLw0KKyB2b2lkDQorIHBvbGtpdF91bml4X2dyb3VwX3NldF9naWQgKFBvbGtpdFVu aXhHcm91cCAqZ3JvdXAsDQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgZ2ludCBnaWQpDQor KyAgICAgICAgICAgICAgICAgICAgICAgICAgIGdpbnQgZ2lkKQ0KKyB7DQorICAgZ19yZXR1cm5f aWZfZmFpbCAoUE9MS0lUX0lTX1VOSVhfR1JPVVAgKGdyb3VwKSk7DQorKyAgZ19yZXR1cm5faWZf ZmFpbCAoZ2lkICE9IC0xKTsNCisgICBncm91cC0+Z2lkID0gZ2lkOw0KKyB9DQorIA0KK0BAIC0x ODMsNiArMTg4LDggQEAgcG9sa2l0X3VuaXhfZ3JvdXBfc2V0X2dpZCAoUG9sa2l0VW5peEdyb3Vw ICpncm91cCwNCisgUG9sa2l0SWRlbnRpdHkgKg0KKyBwb2xraXRfdW5peF9ncm91cF9uZXcgKGdp bnQgZ2lkKQ0KKyB7DQorKyAgZ19yZXR1cm5fdmFsX2lmX2ZhaWwgKGdpZCAhPSAtMSwgTlVMTCk7 DQorKw0KKyAgIHJldHVybiBQT0xLSVRfSURFTlRJVFkgKGdfb2JqZWN0X25ldyAoUE9MS0lUX1RZ UEVfVU5JWF9HUk9VUCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ImdpZCIsIGdpZCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVM TCkpOw0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0L3BvbGtpdHVuaXhwcm9jZXNzLmMgYi9zcmMv cG9sa2l0L3BvbGtpdHVuaXhwcm9jZXNzLmMNCitpbmRleCA0NjRmMDM0Li4wMmEwODNmIDEwMDY0 NA0KKy0tLSBhL3NyYy9wb2xraXQvcG9sa2l0dW5peHByb2Nlc3MuYw0KKysrKyBiL3NyYy9wb2xr aXQvcG9sa2l0dW5peHByb2Nlc3MuYw0KK0BAIC0xNDcsOSArMTQ3LDE0IEBAIHBvbGtpdF91bml4 X3Byb2Nlc3Nfc2V0X3Byb3BlcnR5IChHT2JqZWN0ICAgICAgKm9iamVjdCwNCisgICAgICAgcG9s a2l0X3VuaXhfcHJvY2Vzc19zZXRfcGlkICh1bml4X3Byb2Nlc3MsIGdfdmFsdWVfZ2V0X2ludCAo dmFsdWUpKTsNCisgICAgICAgYnJlYWs7DQorIA0KKy0gICAgY2FzZSBQUk9QX1VJRDoNCistICAg ICAgcG9sa2l0X3VuaXhfcHJvY2Vzc19zZXRfdWlkICh1bml4X3Byb2Nlc3MsIGdfdmFsdWVfZ2V0 X2ludCAodmFsdWUpKTsNCisrICAgIGNhc2UgUFJPUF9VSUQ6IHsNCisrICAgICAgZ2ludCB2YWw7 DQorKw0KKysgICAgICB2YWwgPSBnX3ZhbHVlX2dldF9pbnQgKHZhbHVlKTsNCisrICAgICAgZ19y ZXR1cm5faWZfZmFpbCAodmFsICE9IC0xKTsNCisrICAgICAgcG9sa2l0X3VuaXhfcHJvY2Vzc19z ZXRfdWlkICh1bml4X3Byb2Nlc3MsIHZhbCk7DQorICAgICAgIGJyZWFrOw0KKysgICAgfQ0KKyAN CisgICAgIGNhc2UgUFJPUF9TVEFSVF9USU1FOg0KKyAgICAgICBwb2xraXRfdW5peF9wcm9jZXNz X3NldF9zdGFydF90aW1lICh1bml4X3Byb2Nlc3MsIGdfdmFsdWVfZ2V0X3VpbnQ2NCAodmFsdWUp KTsNCitAQCAtMjI3LDcgKzIzMiw3IEBAIHBvbGtpdF91bml4X3Byb2Nlc3NfY2xhc3NfaW5pdCAo UG9sa2l0VW5peFByb2Nlc3NDbGFzcyAqa2xhc3MpDQorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgZ19wYXJhbV9zcGVjX2ludCAoInVpZCIsDQorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlVzZXIgSUQiLA0KKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJUaGUgVU5JWCB1 c2VyIElEIiwNCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAtMSwNCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBHX01JTklOVCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBHX01BWElOVCwNCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtMSwNCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHX1BBUkFNX0NPTlNUUlVDVCB8DQorQEAg LTI5MSw3ICsyOTYsNiBAQCBwb2xraXRfdW5peF9wcm9jZXNzX3NldF91aWQgKFBvbGtpdFVuaXhQ cm9jZXNzICpwcm9jZXNzLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdpbnQgICAg ICAgICAgICAgICB1aWQpDQorIHsNCisgICBnX3JldHVybl9pZl9mYWlsIChQT0xLSVRfSVNfVU5J WF9QUk9DRVNTIChwcm9jZXNzKSk7DQorLSAgZ19yZXR1cm5faWZfZmFpbCAodWlkID49IC0xKTsN CisgICBwcm9jZXNzLT51aWQgPSB1aWQ7DQorIH0NCisgDQorZGlmZiAtLWdpdCBhL3NyYy9wb2xr aXQvcG9sa2l0dW5peHVzZXIuYyBiL3NyYy9wb2xraXQvcG9sa2l0dW5peHVzZXIuYw0KK2luZGV4 IDhiZmQzYTEuLjIzNGE2OTcgMTAwNjQ0DQorLS0tIGEvc3JjL3BvbGtpdC9wb2xraXR1bml4dXNl ci5jDQorKysrIGIvc3JjL3BvbGtpdC9wb2xraXR1bml4dXNlci5jDQorQEAgLTcyLDYgKzcyLDcg QEAgR19ERUZJTkVfVFlQRV9XSVRIX0NPREUgKFBvbGtpdFVuaXhVc2VyLCBwb2xraXRfdW5peF91 c2VyLCBHX1RZUEVfT0JKRUNULA0KKyBzdGF0aWMgdm9pZA0KKyBwb2xraXRfdW5peF91c2VyX2lu aXQgKFBvbGtpdFVuaXhVc2VyICp1bml4X3VzZXIpDQorIHsNCisrICB1bml4X3VzZXItPnVpZCA9 IC0xOyAgLyogKHVpZF90KSAtMSBpcyBub3QgYSB2YWxpZCBVSUQgdW5kZXIgTGludXggKi8NCisg ICB1bml4X3VzZXItPm5hbWUgPSBOVUxMOw0KKyB9DQorIA0KK0BAIC0xMTIsMTEgKzExMywxNCBA QCBwb2xraXRfdW5peF91c2VyX3NldF9wcm9wZXJ0eSAoR09iamVjdCAgICAgICpvYmplY3QsDQor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHUGFyYW1TcGVjICAgKnBzcGVjKQ0KKyB7 DQorICAgUG9sa2l0VW5peFVzZXIgKnVuaXhfdXNlciA9IFBPTEtJVF9VTklYX1VTRVIgKG9iamVj dCk7DQorKyAgZ2ludCB2YWw7DQorIA0KKyAgIHN3aXRjaCAocHJvcF9pZCkNCisgICAgIHsNCisg ICAgIGNhc2UgUFJPUF9VSUQ6DQorLSAgICAgIHVuaXhfdXNlci0+dWlkID0gZ192YWx1ZV9nZXRf aW50ICh2YWx1ZSk7DQorKyAgICAgIHZhbCA9IGdfdmFsdWVfZ2V0X2ludCAodmFsdWUpOw0KKysg ICAgICBnX3JldHVybl9pZl9mYWlsICh2YWwgIT0gLTEpOw0KKysgICAgICB1bml4X3VzZXItPnVp ZCA9IHZhbDsNCisgICAgICAgYnJlYWs7DQorIA0KKyAgICAgZGVmYXVsdDoNCitAQCAtMTQ0LDkg KzE0OCw5IEBAIHBvbGtpdF91bml4X3VzZXJfY2xhc3NfaW5pdCAoUG9sa2l0VW5peFVzZXJDbGFz cyAqa2xhc3MpDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ19wYXJhbV9z cGVjX2ludCAoInVpZCIsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIlVzZXIgSUQiLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICJUaGUgVU5JWCB1c2VyIElEIiwNCistICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLA0KKysgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdfTUlOSU5ULA0K KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdf TUFYSU5ULA0KKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIDAsDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgLTEsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgR19QQVJBTV9DT05TVFJVQ1QgfA0KKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdfUEFSQU1fUkVBRFdSSVRFIHwNCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHX1BBUkFN X1NUQVRJQ19OQU1FIHwNCitAQCAtMTgyLDYgKzE4Niw3IEBAIHBvbGtpdF91bml4X3VzZXJfc2V0 X3VpZCAoUG9sa2l0VW5peFVzZXIgKnVzZXIsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAg Z2ludCB1aWQpDQorIHsNCisgICBnX3JldHVybl9pZl9mYWlsIChQT0xLSVRfSVNfVU5JWF9VU0VS ICh1c2VyKSk7DQorKyAgZ19yZXR1cm5faWZfZmFpbCAodWlkICE9IC0xKTsNCisgICB1c2VyLT51 aWQgPSB1aWQ7DQorIH0NCisgDQorQEAgLTE5Niw2ICsyMDEsOCBAQCBwb2xraXRfdW5peF91c2Vy X3NldF91aWQgKFBvbGtpdFVuaXhVc2VyICp1c2VyLA0KKyBQb2xraXRJZGVudGl0eSAqDQorIHBv bGtpdF91bml4X3VzZXJfbmV3IChnaW50IHVpZCkNCisgew0KKysgIGdfcmV0dXJuX3ZhbF9pZl9m YWlsICh1aWQgIT0gLTEsIE5VTEwpOw0KKysNCisgICByZXR1cm4gUE9MS0lUX0lERU5USVRZIChn X29iamVjdF9uZXcgKFBPTEtJVF9UWVBFX1VOSVhfVVNFUiwNCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICJ1aWQiLCB1aWQsDQorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBOVUxMKSk7DQpkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9wb2xraXQt MC4xMDUvc2VyaWVzIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvc2VyaWVzDQppbmRleCAyOGFmYmZl OWQuLmFmYjNmOTcwZCAxMDA2NDQNCi0tLSBhL3BhdGNoZXMvcG9sa2l0LTAuMTA1L3Nlcmllcw0K KysrIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvc2VyaWVzDQpAQCAtMSw1ICsxLDQ1IEBADQotIyBn ZW5lcmF0ZWQgYnkgZ2l0LXB0eC1wYXRjaGVzDQotI3RhZzpiYXNlIC0tc3RhcnQtbnVtYmVyIDEN CisjI1BUWERJU1Q6DQogMDAwMS1jaGVjay1mb3ItbGlic3lzdGVtZC1pbnN0ZWFkLW9mLWxpYnN5 c3RlbWQtbG9naW4ucGF0Y2gNCiAwMDAyLWF1dG9tYWtlLWFkZC1taXNzaW5nLWNvbmRpdGlvbmFs LUhBVkVfSU5UUk9TUEVDVElPTi5wYXRjaA0KLSMgNGI4MjdjMTlmZmMzZGQ3N2I1N2Q4OWY5YzJj OWFiOGQgIC0gZ2l0LXB0eC1wYXRjaGVzIG1hZ2ljDQorIyNERUJJQU46DQorMC4xMDYvYWdlbnRo ZWxwZXItcGFtLUZpeC1uZXdsaW5lLXRyaW1taW5nLWNvZGUucGF0Y2gNCiswLjEwOC9idWlsZC1G aXgtLmdpci1nZW5lcmF0aW9uLWZvci1wYXJhbGxlbC1tYWtlLnBhdGNoDQorMC4xMTAvMDdfc2V0 LVhBVVRIT1JJVFktZW52aXJvbm1lbnQtdmFyaWFibGUtaWYtdW5zZXQucGF0Y2gNCiswLjExMC8w NF9nZXRfY3dkLnBhdGNoDQorMC4xMTEvMDlfcGFtX2Vudmlyb25tZW50LnBhdGNoDQorMC4xMTEv Rml4LWEtbWVtb3J5LWxlYWsucGF0Y2gNCiswLjExMi8wMGdpdF90eXBlX3JlZ2lzdHJhdGlvbi5w YXRjaA0KKzAuMTEyLzA4X2RlcHJlY2F0ZV9yYWN5X0FQSXMucGF0Y2gNCiswLjExMi9jdmUtMjAx My00Mjg4LnBhdGNoDQorMC4xMTMvUG9ydC1pbnRlcm5hbHMtbm9uLWRlcHJlY2F0ZWQtUG9sa2l0 UHJvY2Vzcy1BUEktd2hlci5wYXRjaA0KKzAuMTEzL3BrZXhlYy1Xb3JrLWFyb3VuZC1zeXN0ZW1k LWluamVjdGluZy1icm9rZW4tWERHX1JVTlQucGF0Y2gNCiswLjExMy8wM19Qb2xraXRBZ2VudFNl c3Npb24tZml4LXJhY2UtYmV0d2Vlbi1jaGlsZC1hbmQtaW8td2F0LnBhdGNoDQorMC4xMTMvcG9s a2l0ZC1GaXgtcHJvYmxlbS13aXRoLXJlbW92aW5nLW5vbi1leGlzdGVudC1zb3VyYy5wYXRjaA0K KzAuMTEzL1BvbGtpdFN5c3RlbUJ1c05hbWUtQWRkLXB1YmxpYy1BUEktdG8tcmV0cmlldmUtVW5p eC0ucGF0Y2gNCiswLjExMy9GaXhlZC1jb21waWxhdGlvbi1wcm9ibGVtLWluLXRoZS1iYWNrZW5k LnBhdGNoDQorMC4xMTMvRG9uLXQtZGlzY2FyZC1lcnJvci1kYXRhLXJldHVybmVkLWJ5LXBvbGtp dF9zeXN0ZW1fYi5wYXRjaA0KKzAuMTEzL3Nlc3Npb25tb25pdG9yLXN5c3RlbWQtRGVkdXBsaWNh dGUtY29kZS1wYXRocy5wYXRjaA0KKzAuMTEzL3Nlc3Npb25tb25pdG9yLXN5c3RlbWQtcHJlcGFy ZS1mb3ItRC1CdXMtdXNlci1idXMtbW8ucGF0Y2gNCiswLjExMy9SZWZ1c2UtZHVwbGljYXRlLXVz ZXItYXJndW1lbnRzLXRvLXBrZXhlYy5wYXRjaA0KKzAuMTEzLzAwZ2l0X2ZpeF9tZW1sZWFrLnBh dGNoDQorMC4xMTMvMDBnaXRfaW52YWxpZF9vYmplY3RfcGF0aHMucGF0Y2gNCiswLjExMy9zZXNz aW9ubW9uaXRvci1zeXN0ZW1kLVVzZS1zZF91aWRfZ2V0X3N0YXRlLXRvLWNoZWNrLnBhdGNoDQor MC4xMTMvRml4LWEtcG9zc2libGUtTlVMTC1kZXJlZmVyZW5jZS5wYXRjaA0KKzAuMTEzL1JlbW92 ZS1hLXJlZHVuZGFudC1hc3NpZ25tZW50LnBhdGNoDQorMC4xMTMvRml4LWR1cGxpY2F0ZS1HRXJy b3ItdXNlLXdoZW4tdWlkLWlzLW1pc3NpbmcucGF0Y2gNCiswLjExMy9GaXgtYS1jcmFzaC13aGVu LXR3by1hdXRoZW50aWNhdGlvbi1yZXF1ZXN0cy1hcmUtaW4tLnBhdGNoDQorMC4xMTMvQ1ZFLTIw MTUtNDYyNS1Vc2UtdW5wcmVkaWN0YWJsZS1jb29raWUtdmFsdWVzLWtlZXAtdC5wYXRjaA0KKzAu MTEzL0NWRS0yMDE1LTQ2MjUtQmluZC11c2Utb2YtY29va2llcy10by1zcGVjaWZpYy11aWRzLnBh dGNoDQorMC4xMTMvZG9jcy1VcGRhdGUtZm9yLWNoYW5nZXMtdG8tdWlkLWJpbmRpbmctQXV0aGVu dGljYXRpby5wYXRjaA0KKzAuMTEzL0ZpeC1hLXBlci1hdXRob3JpemF0aW9uLW1lbW9yeS1sZWFr LnBhdGNoDQorMC4xMTMvRml4LWEtbWVtb3J5LWxlYWstd2hlbi1yZWdpc3RlcmluZy1hbi1hdXRo ZW50aWNhdGlvbi5wYXRjaA0KKzAuMTEzL0NWRS0yMDE1LTMyNTUtRml4LUdIYXNoVGFibGUtdXNh Z2UucGF0Y2gNCiswLjExMy9GaXgtdXNlLWFmdGVyLWZyZWUtaW4tcG9sa2l0YWdlbnRzZXNzaW9u LmMucGF0Y2gNCiswLjExMy9SRUFETUUtTm90ZS10by1zZW5kLXNlY3VyaXR5LXJlcG9ydHMtdmlh LURCdXMtcy1tZWNoLnBhdGNoDQorMC4xMTQvRml4LW11bHRpLWxpbmUtcGFtLXRleHQtaW5mby5w YXRjaA0KKzAuMTE0L1JlZmFjdG9yLXNlbmRfdG9faGVscGVyLXVzYWdlLnBhdGNoDQorMC4xMTQv QWRkLWdldHRleHQtc3VwcG9ydC1mb3ItLnBvbGljeS1maWxlcy5wYXRjaA0KKzAuMTE0L2dldHRl eHQtc3dpdGNoLXRvLWRlZmF1bHQtdHJhbnNsYXRlLW5vLnBhdGNoDQorMC4xMTQvU3VwcG9ydC1w b2xraXQtc2Vzc2lvbi1hZ2VudC1ydW5uaW5nLW91dHNpZGUtdXNlci1zZXNzaW9uLnBhdGNoDQor MC4xMTUvRml4LUNWRS0yMDE4LTExMTYtVHJ1c3RpbmctY2xpZW50LXN1cHBsaWVkLVVJRC5wYXRj aA0KKzAuMTE2L0FsbG93LW5lZ2F0aXZlLXVpZHMtZ2lkcy1pbi1Qb2xraXRVbml4VXNlci1hbmQt R3JvdXAtb2JqZS5wYXRjaA0KLS0gDQoyLjE5LjINCg0KX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KcHR4ZGlzdCBtYWlsaW5nIGxpc3QKcHR4ZGlzdEBwZW5n dXRyb25peC5kZQ==