From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from mail-bl2nam02on0713.outbound.protection.outlook.com ([2a01:111:f400:fe46::713] helo=NAM02-BL2-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 1gYoEW-0004sh-78 for ptxdist@pengutronix.de; Mon, 17 Dec 2018 09:26:37 +0100 From: "Dold, Wolfram" Date: Mon, 17 Dec 2018 08:26:30 +0000 Message-ID: <20181217082546.27099-2-wolfram.dold@allegion.com> References: <20181211074137.kkolavuvocv273w3@pengutronix.de> <20181217082546.27099-1-wolfram.dold@allegion.com> In-Reply-To: <20181217082546.27099-1-wolfram.dold@allegion.com> Content-Language: en-US Content-ID: <4D824F9873BD3D43AEC0AEBB1C4287DA@prod.exchangelabs.com> MIME-Version: 1.0 Subject: [ptxdist] [PATCH v2 2/2] patches/polkit-0.105: Ubuntu polkit 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" Cc: "Dold, Wolfram" VGhlIHBvbGtpdCB2ZXJzaW9uIDAuMTA1IGlzIG5vdCB1cC10by1kYXRlLCBidXQgdGhlIGxhc3Qg b25lIHdpdGhvdXQNCkphdmFTY3JpcHQuDQpKYXZhU2NyaXB0IGlzIG5vdCBhbiBvcHRpb24gYmVj YXVzZSBpdCBuZWVkcyB0b28gbXVjaCBzdG9yYWdlLg0KSW4gVWJ1bnR1IC0gYXQgbGVhc3QgdW50 aWwgdmVyc2lvbiAxOS4wNCAtIHRoaXMgcG9sa2l0IHZlcnNpb24NCmlzIHN0aWxsIG1haW50YWlu ZWQuDQpJbiBvcmRlciBmb3IgdGhlIHBhdGNoZXMgdG8gYmUgYXBwbGllZCwgJ3BvbGtpdC5tYWtl JyBoYWQgdG8gYmUgYWRhcHRlZA0KYXMgd2VsbCAuDQoNClNpZ25lZC1vZmYtYnk6IFdvbGZyYW0g RG9sZCA8d29sZnJhbS5kb2xkQGFsbGVnaW9uLmNvbT4NCi0tLQ0KIC4uLmhlbHBlci1wYW0tRml4 LW5ld2xpbmUtdHJpbW1pbmctY29kZS5wYXRjaCB8ICA0MyArKw0KIC4uLml4LS5naXItZ2VuZXJh dGlvbi1mb3ItcGFyYWxsZWwtbWFrZS5wYXRjaCB8ICA0MSArKw0KIHBhdGNoZXMvcG9sa2l0LTAu MTA1LzAuMTEwLzA0X2dldF9jd2QucGF0Y2ggICB8ICA0MCArKw0KIC4uLkhPUklUWS1lbnZpcm9u bWVudC12YXJpYWJsZS1pZi11bnNldC5wYXRjaCB8ICA1OCArKw0KIC4uLi8wLjExMS8wOV9wYW1f ZW52aXJvbm1lbnQucGF0Y2ggICAgICAgICAgICB8ICA0MyArKw0KIC4uLi8wLjExMS9GaXgtYS1t ZW1vcnktbGVhay5wYXRjaCAgICAgICAgICAgICB8ICAyMiArDQogLi4uLzAuMTEyLzAwZ2l0X3R5 cGVfcmVnaXN0cmF0aW9uLnBhdGNoICAgICAgIHwgMTE4ICsrKysNCiAuLi4vMC4xMTIvMDhfZGVw cmVjYXRlX3JhY3lfQVBJcy5wYXRjaCAgICAgICAgfCAgMjcgKw0KIC4uLi9wb2xraXQtMC4xMDUv MC4xMTIvY3ZlLTIwMTMtNDI4OC5wYXRjaCAgICB8IDExNiArKysrDQogLi4uLzAuMTEzLzAwZ2l0 X2ZpeF9tZW1sZWFrLnBhdGNoICAgICAgICAgICAgIHwgIDI2ICsNCiAuLi4vMC4xMTMvMDBnaXRf aW52YWxpZF9vYmplY3RfcGF0aHMucGF0Y2ggICAgfCAxMTYgKysrKw0KIC4uLm9uLWZpeC1yYWNl LWJldHdlZW4tY2hpbGQtYW5kLWlvLXdhdC5wYXRjaCB8IDEyMCArKysrDQogLi4uL0NWRS0yMDE1 LTMyNTUtRml4LUdIYXNoVGFibGUtdXNhZ2UucGF0Y2ggIHwgIDY4ICsrKw0KIC4uLkJpbmQtdXNl LW9mLWNvb2tpZXMtdG8tc3BlY2lmaWMtdWlkcy5wYXRjaCB8IDQ4NCArKysrKysrKysrKysrKysN CiAuLi5lLXVucHJlZGljdGFibGUtY29va2llLXZhbHVlcy1rZWVwLXQucGF0Y2ggfCA1NDAgKysr KysrKysrKysrKysrKysNCiAuLi5yb3ItZGF0YS1yZXR1cm5lZC1ieS1wb2xraXRfc3lzdGVtX2Iu cGF0Y2ggfCAgMjUgKw0KIC4uLi10d28tYXV0aGVudGljYXRpb24tcmVxdWVzdHMtYXJlLWluLS5w YXRjaCB8ICAzNiArKw0KIC4uLmstd2hlbi1yZWdpc3RlcmluZy1hbi1hdXRoZW50aWNhdGlvbi5w YXRjaCB8ICAyMiArDQogLi4uL0ZpeC1hLXBlci1hdXRob3JpemF0aW9uLW1lbW9yeS1sZWFrLnBh dGNoIHwgIDQ5ICsrDQogLi4uL0ZpeC1hLXBvc3NpYmxlLU5VTEwtZGVyZWZlcmVuY2UucGF0Y2gg ICAgIHwgIDM1ICsrDQogLi4uaWNhdGUtR0Vycm9yLXVzZS13aGVuLXVpZC1pcy1taXNzaW5nLnBh dGNoIHwgIDMyICsNCiAuLi5lLWFmdGVyLWZyZWUtaW4tcG9sa2l0YWdlbnRzZXNzaW9uLmMucGF0 Y2ggfCAgMzIgKw0KIC4uLmQtY29tcGlsYXRpb24tcHJvYmxlbS1pbi10aGUtYmFja2VuZC5wYXRj aCB8ICAyMyArDQogLi4uYW1lLUFkZC1wdWJsaWMtQVBJLXRvLXJldHJpZXZlLVVuaXgtLnBhdGNo IHwgMTY2ICsrKysrDQogLi4ub24tZGVwcmVjYXRlZC1Qb2xraXRQcm9jZXNzLUFQSS13aGVyLnBh dGNoIHwgIDI5ICsNCiAuLi5lbmQtc2VjdXJpdHktcmVwb3J0cy12aWEtREJ1cy1zLW1lY2gucGF0 Y2ggfCAgMzkgKysNCiAuLi5lLWR1cGxpY2F0ZS11c2VyLWFyZ3VtZW50cy10by1wa2V4ZWMucGF0 Y2ggfCAgMzggKysNCiAuLi4vMC4xMTMvUmVtb3ZlLWEtcmVkdW5kYW50LWFzc2lnbm1lbnQucGF0 Y2ggfCAgMjYgKw0KIC4uLmNoYW5nZXMtdG8tdWlkLWJpbmRpbmctQXV0aGVudGljYXRpby5wYXRj aCB8IDI1OSArKysrKysrKw0KIC4uLm5kLXN5c3RlbWQtaW5qZWN0aW5nLWJyb2tlbi1YREdfUlVO VC5wYXRjaCB8ICA3NiArKysNCiAuLi5sZW0td2l0aC1yZW1vdmluZy1ub24tZXhpc3RlbnQtc291 cmMucGF0Y2ggfCAgMjMgKw0KIC4uLm5pdG9yLXN5c3RlbWQtRGVkdXBsaWNhdGUtY29kZS1wYXRo cy5wYXRjaCB8IDEwNCArKysrDQogLi4ueXN0ZW1kLVVzZS1zZF91aWRfZ2V0X3N0YXRlLXRvLWNo ZWNrLnBhdGNoIHwgIDczICsrKw0KIC4uLnlzdGVtZC1wcmVwYXJlLWZvci1ELUJ1cy11c2VyLWJ1 cy1tby5wYXRjaCB8ICA4OSArKysNCiAuLi5kZC1nZXR0ZXh0LXN1cHBvcnQtZm9yLS5wb2xpY3kt ZmlsZXMucGF0Y2ggfCAgNTggKysNCiAuLi4vMC4xMTQvRml4LW11bHRpLWxpbmUtcGFtLXRleHQt aW5mby5wYXRjaCAgfCAgMzkgKysNCiAuLi4vMC4xMTQvUmVmYWN0b3Itc2VuZF90b19oZWxwZXIt dXNhZ2UucGF0Y2ggfCAxNDkgKysrKysNCiAuLi5uLWFnZW50LXJ1bm5pbmctb3V0c2lkZS11c2Vy LXNlc3Npb24ucGF0Y2ggfCAgNTEgKysNCiAuLi50dGV4dC1zd2l0Y2gtdG8tZGVmYXVsdC10cmFu c2xhdGUtbm8ucGF0Y2ggfCAgNDEgKysNCiAuLi4xOC0xMTE2LVRydXN0aW5nLWNsaWVudC1zdXBw bGllZC1VSUQucGF0Y2ggfCA1NjkgKysrKysrKysrKysrKysrKysrDQogLi4uYnN5c3RlbWQtaW5z dGVhZC1vZi1saWJzeXN0ZW1kLWxvZ2luLnBhdGNoIHwgIDIyIC0NCiBwYXRjaGVzL3BvbGtpdC0w LjEwNS8wMV9wYW1fcG9sa2l0LnBhdGNoICAgICAgfCAgMjYgKw0KIHBhdGNoZXMvcG9sa2l0LTAu MTA1LzAyX2dldHRleHQucGF0Y2ggICAgICAgICB8IDE5MyArKysrKysNCiAuLi5ydC1hZG1pbi1p ZGVudGl0aWVzLXVuaXgtZ3JvdXAtd2hlZWwucGF0Y2ggfCAgMzUgKysNCiBwYXRjaGVzL3BvbGtp dC0wLjEwNS8wNl9zeXN0ZW1kLXNlcnZpY2UucGF0Y2ggfCAgMTggKw0KIC4uLi8xMF9idWlsZC1h Z2FpbnN0LWxpYnN5c3RlbWQucGF0Y2ggICAgICAgICB8ICAzMiArDQogLi4uY3ktZmlsZS10by11 c3Itc2hhcmUtZGJ1cy0xLXN5c3RlbS5kLnBhdGNoIHwgIDMxICsNCiBwYXRjaGVzL3BvbGtpdC0w LjEwNS9hdXRvZ2VuLnNoICAgICAgICAgICAgICAgfCAgMTkgKy0NCiBwYXRjaGVzL3BvbGtpdC0w LjEwNS9zZXJpZXMgICAgICAgICAgICAgICAgICAgfCAgNTAgKy0NCiBydWxlcy9wb2xraXQubWFr ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDIgKy0NCiA1MCBmaWxlcyBjaGFuZ2Vk LCA0MzQ1IGluc2VydGlvbnMoKyksIDI4IGRlbGV0aW9ucygtKQ0KIGNyZWF0ZSBtb2RlIDEwMDY0 NCBwYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjEwNi9hZ2VudGhlbHBlci1wYW0tRml4LW5ld2xpbmUt dHJpbW1pbmctY29kZS5wYXRjaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBwYXRjaGVzL3BvbGtpdC0w LjEwNS8wLjEwOC9idWlsZC1GaXgtLmdpci1nZW5lcmF0aW9uLWZvci1wYXJhbGxlbC1tYWtlLnBh dGNoDQogY3JlYXRlIG1vZGUgMTAwNjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEwLzA0X2dl dF9jd2QucGF0Y2gNCiBjcmVhdGUgbW9kZSAxMDA2NDQgcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4x MTAvMDdfc2V0LVhBVVRIT1JJVFktZW52aXJvbm1lbnQtdmFyaWFibGUtaWYtdW5zZXQucGF0Y2gN CiBjcmVhdGUgbW9kZSAxMDA2NDQgcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTEvMDlfcGFtX2Vu dmlyb25tZW50LnBhdGNoDQogY3JlYXRlIG1vZGUgMTAwNjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1 LzAuMTExL0ZpeC1hLW1lbW9yeS1sZWFrLnBhdGNoDQogY3JlYXRlIG1vZGUgMTAwNjQ0IHBhdGNo ZXMvcG9sa2l0LTAuMTA1LzAuMTEyLzAwZ2l0X3R5cGVfcmVnaXN0cmF0aW9uLnBhdGNoDQogY3Jl YXRlIG1vZGUgMTAwNjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEyLzA4X2RlcHJlY2F0ZV9y YWN5X0FQSXMucGF0Y2gNCiBjcmVhdGUgbW9kZSAxMDA2NDQgcGF0Y2hlcy9wb2xraXQtMC4xMDUv MC4xMTIvY3ZlLTIwMTMtNDI4OC5wYXRjaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBwYXRjaGVzL3Bv bGtpdC0wLjEwNS8wLjExMy8wMGdpdF9maXhfbWVtbGVhay5wYXRjaA0KIGNyZWF0ZSBtb2RlIDEw MDY0NCBwYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy8wMGdpdF9pbnZhbGlkX29iamVjdF9wYXRo cy5wYXRjaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBwYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy8w M19Qb2xraXRBZ2VudFNlc3Npb24tZml4LXJhY2UtYmV0d2Vlbi1jaGlsZC1hbmQtaW8td2F0LnBh dGNoDQogY3JlYXRlIG1vZGUgMTAwNjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL0NWRS0y MDE1LTMyNTUtRml4LUdIYXNoVGFibGUtdXNhZ2UucGF0Y2gNCiBjcmVhdGUgbW9kZSAxMDA2NDQg cGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvQ1ZFLTIwMTUtNDYyNS1CaW5kLXVzZS1vZi1jb29r aWVzLXRvLXNwZWNpZmljLXVpZHMucGF0Y2gNCiBjcmVhdGUgbW9kZSAxMDA2NDQgcGF0Y2hlcy9w b2xraXQtMC4xMDUvMC4xMTMvQ1ZFLTIwMTUtNDYyNS1Vc2UtdW5wcmVkaWN0YWJsZS1jb29raWUt dmFsdWVzLWtlZXAtdC5wYXRjaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBwYXRjaGVzL3BvbGtpdC0w LjEwNS8wLjExMy9Eb24tdC1kaXNjYXJkLWVycm9yLWRhdGEtcmV0dXJuZWQtYnktcG9sa2l0X3N5 c3RlbV9iLnBhdGNoDQogY3JlYXRlIG1vZGUgMTAwNjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAu MTEzL0ZpeC1hLWNyYXNoLXdoZW4tdHdvLWF1dGhlbnRpY2F0aW9uLXJlcXVlc3RzLWFyZS1pbi0u cGF0Y2gNCiBjcmVhdGUgbW9kZSAxMDA2NDQgcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvRml4 LWEtbWVtb3J5LWxlYWstd2hlbi1yZWdpc3RlcmluZy1hbi1hdXRoZW50aWNhdGlvbi5wYXRjaA0K IGNyZWF0ZSBtb2RlIDEwMDY0NCBwYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9GaXgtYS1wZXIt YXV0aG9yaXphdGlvbi1tZW1vcnktbGVhay5wYXRjaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBwYXRj aGVzL3BvbGtpdC0wLjEwNS8wLjExMy9GaXgtYS1wb3NzaWJsZS1OVUxMLWRlcmVmZXJlbmNlLnBh dGNoDQogY3JlYXRlIG1vZGUgMTAwNjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL0ZpeC1k dXBsaWNhdGUtR0Vycm9yLXVzZS13aGVuLXVpZC1pcy1taXNzaW5nLnBhdGNoDQogY3JlYXRlIG1v ZGUgMTAwNjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL0ZpeC11c2UtYWZ0ZXItZnJlZS1p bi1wb2xraXRhZ2VudHNlc3Npb24uYy5wYXRjaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBwYXRjaGVz L3BvbGtpdC0wLjEwNS8wLjExMy9GaXhlZC1jb21waWxhdGlvbi1wcm9ibGVtLWluLXRoZS1iYWNr ZW5kLnBhdGNoDQogY3JlYXRlIG1vZGUgMTAwNjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEz L1BvbGtpdFN5c3RlbUJ1c05hbWUtQWRkLXB1YmxpYy1BUEktdG8tcmV0cmlldmUtVW5peC0ucGF0 Y2gNCiBjcmVhdGUgbW9kZSAxMDA2NDQgcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvUG9ydC1p bnRlcm5hbHMtbm9uLWRlcHJlY2F0ZWQtUG9sa2l0UHJvY2Vzcy1BUEktd2hlci5wYXRjaA0KIGNy ZWF0ZSBtb2RlIDEwMDY0NCBwYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9SRUFETUUtTm90ZS10 by1zZW5kLXNlY3VyaXR5LXJlcG9ydHMtdmlhLURCdXMtcy1tZWNoLnBhdGNoDQogY3JlYXRlIG1v ZGUgMTAwNjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL1JlZnVzZS1kdXBsaWNhdGUtdXNl ci1hcmd1bWVudHMtdG8tcGtleGVjLnBhdGNoDQogY3JlYXRlIG1vZGUgMTAwNjQ0IHBhdGNoZXMv cG9sa2l0LTAuMTA1LzAuMTEzL1JlbW92ZS1hLXJlZHVuZGFudC1hc3NpZ25tZW50LnBhdGNoDQog Y3JlYXRlIG1vZGUgMTAwNjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL2RvY3MtVXBkYXRl LWZvci1jaGFuZ2VzLXRvLXVpZC1iaW5kaW5nLUF1dGhlbnRpY2F0aW8ucGF0Y2gNCiBjcmVhdGUg bW9kZSAxMDA2NDQgcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvcGtleGVjLVdvcmstYXJvdW5k LXN5c3RlbWQtaW5qZWN0aW5nLWJyb2tlbi1YREdfUlVOVC5wYXRjaA0KIGNyZWF0ZSBtb2RlIDEw MDY0NCBwYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9wb2xraXRkLUZpeC1wcm9ibGVtLXdpdGgt cmVtb3Zpbmctbm9uLWV4aXN0ZW50LXNvdXJjLnBhdGNoDQogY3JlYXRlIG1vZGUgMTAwNjQ0IHBh dGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL3Nlc3Npb25tb25pdG9yLXN5c3RlbWQtRGVkdXBsaWNh dGUtY29kZS1wYXRocy5wYXRjaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBwYXRjaGVzL3BvbGtpdC0w LjEwNS8wLjExMy9zZXNzaW9ubW9uaXRvci1zeXN0ZW1kLVVzZS1zZF91aWRfZ2V0X3N0YXRlLXRv LWNoZWNrLnBhdGNoDQogY3JlYXRlIG1vZGUgMTAwNjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAu MTEzL3Nlc3Npb25tb25pdG9yLXN5c3RlbWQtcHJlcGFyZS1mb3ItRC1CdXMtdXNlci1idXMtbW8u cGF0Y2gNCiBjcmVhdGUgbW9kZSAxMDA2NDQgcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTQvQWRk LWdldHRleHQtc3VwcG9ydC1mb3ItLnBvbGljeS1maWxlcy5wYXRjaA0KIGNyZWF0ZSBtb2RlIDEw MDY0NCBwYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExNC9GaXgtbXVsdGktbGluZS1wYW0tdGV4dC1p bmZvLnBhdGNoDQogY3JlYXRlIG1vZGUgMTAwNjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTE0 L1JlZmFjdG9yLXNlbmRfdG9faGVscGVyLXVzYWdlLnBhdGNoDQogY3JlYXRlIG1vZGUgMTAwNjQ0 IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTE0L1N1cHBvcnQtcG9sa2l0LXNlc3Npb24tYWdlbnQt cnVubmluZy1vdXRzaWRlLXVzZXItc2Vzc2lvbi5wYXRjaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBw YXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExNC9nZXR0ZXh0LXN3aXRjaC10by1kZWZhdWx0LXRyYW5z bGF0ZS1uby5wYXRjaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBwYXRjaGVzL3BvbGtpdC0wLjEwNS8w LjExNS9GaXgtQ1ZFLTIwMTgtMTExNi1UcnVzdGluZy1jbGllbnQtc3VwcGxpZWQtVUlELnBhdGNo DQogZGVsZXRlIG1vZGUgMTAwNjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAwMDEtY2hlY2stZm9y LWxpYnN5c3RlbWQtaW5zdGVhZC1vZi1saWJzeXN0ZW1kLWxvZ2luLnBhdGNoDQogY3JlYXRlIG1v ZGUgMTAwNjQ0IHBhdGNoZXMvcG9sa2l0LTAuMTA1LzAxX3BhbV9wb2xraXQucGF0Y2gNCiBjcmVh dGUgbW9kZSAxMDA2NDQgcGF0Y2hlcy9wb2xraXQtMC4xMDUvMDJfZ2V0dGV4dC5wYXRjaA0KIGNy ZWF0ZSBtb2RlIDEwMDY0NCBwYXRjaGVzL3BvbGtpdC0wLjEwNS8wNV9yZXZlcnQtYWRtaW4taWRl bnRpdGllcy11bml4LWdyb3VwLXdoZWVsLnBhdGNoDQogY3JlYXRlIG1vZGUgMTAwNjQ0IHBhdGNo ZXMvcG9sa2l0LTAuMTA1LzA2X3N5c3RlbWQtc2VydmljZS5wYXRjaA0KIGNyZWF0ZSBtb2RlIDEw MDY0NCBwYXRjaGVzL3BvbGtpdC0wLjEwNS8xMF9idWlsZC1hZ2FpbnN0LWxpYnN5c3RlbWQucGF0 Y2gNCiBjcmVhdGUgbW9kZSAxMDA2NDQgcGF0Y2hlcy9wb2xraXQtMC4xMDUvTW92ZS1ELUJ1cy1w b2xpY3ktZmlsZS10by11c3Itc2hhcmUtZGJ1cy0xLXN5c3RlbS5kLnBhdGNoDQogbW9kZSBjaGFu Z2UgMTIwMDAwID0+IDEwMDc1NSBwYXRjaGVzL3BvbGtpdC0wLjEwNS9hdXRvZ2VuLnNoDQoNCmRp ZmYgLS1naXQgYS9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjEwNi9hZ2VudGhlbHBlci1wYW0tRml4 LW5ld2xpbmUtdHJpbW1pbmctY29kZS5wYXRjaCBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTA2 L2FnZW50aGVscGVyLXBhbS1GaXgtbmV3bGluZS10cmltbWluZy1jb2RlLnBhdGNoDQpuZXcgZmls ZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi4wNTE1YjUzNWENCi0tLSAvZGV2L251bGwN CisrKyBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTA2L2FnZW50aGVscGVyLXBhbS1GaXgtbmV3 bGluZS10cmltbWluZy1jb2RlLnBhdGNoDQpAQCAtMCwwICsxLDQzIEBADQorRnJvbTogQ29saW4g V2FsdGVycyA8d2FsdGVyc0B2ZXJidW0ub3JnPg0KK0RhdGU6IFdlZCwgNiBKdW4gMjAxMiAwOTow NToxNCAtMDQwMA0KK1N1YmplY3Q6IGFnZW50aGVscGVyLXBhbTogRml4IG5ld2xpbmUtdHJpbW1p bmcgY29kZQ0KKw0KK0ZpcnN0LCB3ZSB3ZXJlIHVzaW5nID09IGluc3RlYWQgb2YgPSwgYXMgdGhl IGF1dGhvciBwcm9iYWJseSBpbnRlbmRlZC4NCitCdXQgYWZ0ZXIgY2hhbmdpbmcgdGhhdCwgd2Un cmUgbm93IGFzc2lnbmluZyB0byBjb25zdCBtZW1vcnkuICBGaXgNCit0aGF0IGJ5IHdyaXRpbmcg dG8gYSB0ZW1wb3Jhcnkgc3RyaW5nIGJ1ZmZlci4NCisNCitTaWduZWQtb2ZmLWJ5OiBEYXZpZCBa ZXV0aGVuIDx6ZXV0aGVuQGdtYWlsLmNvbT4NCitPcmlnaW46IHVwc3RyZWFtLCAwLjEwNiwgY29t bWl0OjE0MTIxZmRhN2U0ZmE5NDYzYzY2Y2U0MTljYzMyYmU3ZTdmM2I1MzUNCistLS0NCisgc3Jj L3BvbGtpdGFnZW50L3BvbGtpdGFnZW50aGVscGVyLXBhbS5jIHwgMTEgKysrKysrKystLS0NCisg MSBmaWxlIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkNCisNCitkaWZm IC0tZ2l0IGEvc3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50aGVscGVyLXBhbS5jIGIvc3JjL3Bv bGtpdGFnZW50L3BvbGtpdGFnZW50aGVscGVyLXBhbS5jDQoraW5kZXggODVhMjY3MS4uN2FmNTMy MSAxMDA2NDQNCistLS0gYS9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRoZWxwZXItcGFtLmMN CisrKysgYi9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRoZWxwZXItcGFtLmMNCitAQCAtMjI3 LDYgKzIyNyw4IEBAIGNvbnZlcnNhdGlvbl9mdW5jdGlvbiAoaW50IG4sIGNvbnN0IHN0cnVjdCBw YW1fbWVzc2FnZSAqKm1zZywgc3RydWN0IHBhbV9yZXNwb25zDQorICAgY2hhciBidWZbUEFNX01B WF9SRVNQX1NJWkVdOw0KKyAgIGludCBpOw0KKyAgIGdjaGFyICplc2NhcGVkID0gTlVMTDsNCisr ICBnY2hhciAqdG1wID0gTlVMTDsNCisrICBzaXplX3QgbGVuOw0KKyANCisgICBkYXRhID0gZGF0 YTsNCisgICBpZiAobiA8PSAwIHx8IG4gPiBQQU1fTUFYX05VTV9NU0cpDQorQEAgLTI1OCw5ICsy NjAsMTIgQEAgY29udmVyc2F0aW9uX2Z1bmN0aW9uIChpbnQgbiwgY29uc3Qgc3RydWN0IHBhbV9t ZXNzYWdlICoqbXNnLCBzdHJ1Y3QgcGFtX3Jlc3BvbnMNCisgI2lmZGVmIFBBSF9ERUJVRw0KKyAg ICAgICAgICAgZnByaW50ZiAoc3RkZXJyLCAicG9sa2l0LWFnZW50LWhlbHBlci0xOiB3cml0aW5n IGAlcycgdG8gc3Rkb3V0XG4iLCBtc2dbaV0tPm1zZyk7DQorICNlbmRpZiAvKiBQQUhfREVCVUcg Ki8NCistICAgICAgICAgIGlmIChzdHJsZW4gKG1zZ1tpXS0+bXNnKSA+IDAgJiYgbXNnW2ldLT5t c2dbc3RybGVuIChtc2dbaV0tPm1zZykgLSAxXSA9PSAnXG4nKQ0KKy0gICAgICAgICAgICBtc2db aV0tPm1zZ1tzdHJsZW4gKG1zZ1tpXS0+bXNnKSAtIDFdID09ICdcMCc7DQorLSAgICAgICAgICBl c2NhcGVkID0gZ19zdHJlc2NhcGUgKG1zZ1tpXS0+bXNnLCBOVUxMKTsNCisrICAgICAgICAgIHRt cCA9IGdfc3RyZHVwIChtc2dbaV0tPm1zZyk7DQorKyAgICAgICAgICBsZW4gPSBzdHJsZW4gKHRt cCk7DQorKyAgICAgICAgICBpZiAobGVuID4gMCAmJiB0bXBbbGVuIC0gMV0gPT0gJ1xuJykNCisr ICAgICAgICAgICAgdG1wW2xlbiAtIDFdID0gJ1wwJzsNCisrICAgICAgICAgIGVzY2FwZWQgPSBn X3N0cmVzY2FwZSAodG1wLCBOVUxMKTsNCisrICAgICAgICAgIGdfZnJlZSAodG1wKTsNCisgICAg ICAgICAgIGZwdXRzIChlc2NhcGVkLCBzdGRvdXQpOw0KKyAgICAgICAgICAgZ19mcmVlIChlc2Nh cGVkKTsNCisgI2lmZGVmIFBBSF9ERUJVRw0KZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9sa2l0LTAu MTA1LzAuMTA4L2J1aWxkLUZpeC0uZ2lyLWdlbmVyYXRpb24tZm9yLXBhcmFsbGVsLW1ha2UucGF0 Y2ggYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjEwOC9idWlsZC1GaXgtLmdpci1nZW5lcmF0aW9u LWZvci1wYXJhbGxlbC1tYWtlLnBhdGNoDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAw MDAwMDAwLi41OGY2ZmJiZDcNCi0tLSAvZGV2L251bGwNCisrKyBiL3BhdGNoZXMvcG9sa2l0LTAu MTA1LzAuMTA4L2J1aWxkLUZpeC0uZ2lyLWdlbmVyYXRpb24tZm9yLXBhcmFsbGVsLW1ha2UucGF0 Y2gNCkBAIC0wLDAgKzEsNDEgQEANCitGcm9tOiBSeWFuIExvcnRpZSA8ZGVzcnRAdmVsb2NpdHku KG5vbmUpPg0KK0RhdGU6IFR1ZSwgMTMgTm92IDIwMTIgMTE6NTA6MTQgLTA1MDANCitTdWJqZWN0 OiBidWlsZDogRml4IC5naXIgZ2VuZXJhdGlvbiBmb3IgcGFyYWxsZWwgbWFrZQ0KKw0KK0FzIHBl ciB0aGUgaW50cnVjdGlvbnMgaW4gdGhlIGludHJvc3BlY3Rpb24gTWFrZWZpbGUsIHdlIHNob3Vs ZCBoYXZlIGENCitsaW5lIGRlY2xhcmluZyBhIGRlcGVuZGVuY3kgYmV0d2VlbiB0aGUgLmdpciBh bmQgLmxhIGZpbGVzLg0KKw0KK0J1ZzogaHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9zaG93 X2J1Zy5jZ2k/aWQ9NTcwNzcNCitTaWduZWQtb2ZmLWJ5OiBEYXZpZCBaZXV0aGVuIDx6ZXV0aGVu QGdtYWlsLmNvbT4NCitCdWctRGViaWFuOiBodHRwczovL2J1Z3MuZGViaWFuLm9yZy84OTQyMDUN CistLS0NCisgc3JjL3BvbGtpdC9NYWtlZmlsZS5hbSAgICAgIHwgMiArKw0KKyBzcmMvcG9sa2l0 YWdlbnQvTWFrZWZpbGUuYW0gfCAyICsrDQorIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25z KCspDQorDQorZGlmZiAtLWdpdCBhL3NyYy9wb2xraXQvTWFrZWZpbGUuYW0gYi9zcmMvcG9sa2l0 L01ha2VmaWxlLmFtDQoraW5kZXggMTA2OGVhMS4uNDFjY2Y1YyAxMDA2NDQNCistLS0gYS9zcmMv cG9sa2l0L01ha2VmaWxlLmFtDQorKysrIGIvc3JjL3BvbGtpdC9NYWtlZmlsZS5hbQ0KK0BAIC0x MDYsNiArMTA2LDggQEAgaWYgSEFWRV9JTlRST1NQRUNUSU9ODQorIA0KKyBJTlRST1NQRUNUSU9O X0dJUlMgPSBQb2xraXQtMS4wLmdpcg0KKyANCisrUG9sa2l0LTEuMC5naXI6IGxpYnBvbGtpdC1n b2JqZWN0LTEubGENCisrDQorIGdpcmRpciA9ICQoSU5UUk9TUEVDVElPTl9HSVJESVIpDQorIGdp cl9EQVRBID0gUG9sa2l0LTEuMC5naXINCisgDQorZGlmZiAtLWdpdCBhL3NyYy9wb2xraXRhZ2Vu dC9NYWtlZmlsZS5hbSBiL3NyYy9wb2xraXRhZ2VudC9NYWtlZmlsZS5hbQ0KK2luZGV4IGU4Yzlm YjEuLjdiNTExMzcgMTAwNjQ0DQorLS0tIGEvc3JjL3BvbGtpdGFnZW50L01ha2VmaWxlLmFtDQor KysrIGIvc3JjL3BvbGtpdGFnZW50L01ha2VmaWxlLmFtDQorQEAgLTEwNiw2ICsxMDYsOCBAQCBp ZiBIQVZFX0lOVFJPU1BFQ1RJT04NCisgZ2lyZGlyID0gJChJTlRST1NQRUNUSU9OX0dJUkRJUikN CisgZ2lyX0RBVEEgPSBQb2xraXRBZ2VudC0xLjAuZ2lyDQorIA0KKytQb2xraXRBZ2VudC0xLjAu Z2lyOiBsaWJwb2xraXQtYWdlbnQtMS5sYQ0KKysNCisgdHlwZWxpYnNkaXIgPSAkKElOVFJPU1BF Q1RJT05fVFlQRUxJQkRJUikNCisgdHlwZWxpYnNfREFUQSA9IFBvbGtpdEFnZW50LTEuMC50eXBl bGliDQorIA0KZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEwLzA0X2dldF9j d2QucGF0Y2ggYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMC8wNF9nZXRfY3dkLnBhdGNoDQpu ZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi5hY2FhNjhkNTENCi0tLSAvZGV2 L251bGwNCisrKyBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEwLzA0X2dldF9jd2QucGF0Y2gN CkBAIC0wLDAgKzEsNDAgQEANCitGcm9tOiBFbWlsaW8gUG96dWVsbyBNb25mb3J0IDxwb2NodTI3 QGdtYWlsLmNvbT4NCitEYXRlOiBTYXQsIDI2IE1hciAyMDExIDA3OjI4OjE0ICswMDAwDQorU3Vi amVjdDogRml4IGJ1aWxkIG9uIEdOVSBIdXJkDQorDQorQnVnOiBodHRwczovL2J1Z3MuZnJlZWRl c2t0b3Aub3JnL3Nob3dfYnVnLmNnaT9pZD0zNTY4NQ0KK0FwcGxpZWQtdXBzdHJlYW06IDAuMTEw LCBjb21taXQ6ZDZkZTEzZTEyMzc5ODI2YWY4Y2E5MzU1YTMyZGE0ODcwN2I5ODMxZg0KKy0tLQ0K KyBzcmMvcHJvZ3JhbXMvcGtleGVjLmMgfCA1ICsrKy0tDQorIDEgZmlsZSBjaGFuZ2VkLCAzIGlu c2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pDQorDQorZGlmZiAtLWdpdCBhL3NyYy9wcm9ncmFt cy9wa2V4ZWMuYyBiL3NyYy9wcm9ncmFtcy9wa2V4ZWMuYw0KK2luZGV4IDdmYWZhMTQuLjY4MmZl OTUgMTAwNjQ0DQorLS0tIGEvc3JjL3Byb2dyYW1zL3BrZXhlYy5jDQorKysrIGIvc3JjL3Byb2dy YW1zL3BrZXhlYy5jDQorQEAgLTUzLDcgKzUzLDcgQEANCisgI2luY2x1ZGUgPHBvbGtpdGFnZW50 L3BvbGtpdGFnZW50Lmg+DQorIA0KKyBzdGF0aWMgZ2NoYXIgKm9yaWdpbmFsX3VzZXJfbmFtZSA9 IE5VTEw7DQorLXN0YXRpYyBnY2hhciBvcmlnaW5hbF9jd2RbUEFUSF9NQVhdOw0KKytzdGF0aWMg Z2NoYXIgKm9yaWdpbmFsX2N3ZDsNCisgc3RhdGljIGdjaGFyICpjb21tYW5kX2xpbmUgPSBOVUxM Ow0KKyBzdGF0aWMgc3RydWN0IHBhc3N3ZCAqcHc7DQorIA0KK0BAIC00NjUsNyArNDY1LDcgQEAg bWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkNCisgICAgICAgZ290byBvdXQ7DQorICAgICB9 DQorIA0KKy0gIGlmIChnZXRjd2QgKG9yaWdpbmFsX2N3ZCwgc2l6ZW9mIChvcmlnaW5hbF9jd2Qp KSA9PSBOVUxMKQ0KKysgIGlmICgob3JpZ2luYWxfY3dkID0gZ19nZXRfY3VycmVudF9kaXIgKCkp ID09IE5VTEwpDQorICAgICB7DQorICAgICAgIGdfcHJpbnRlcnIgKCJFcnJvciBnZXR0aW5nIGN3 ZDogJXNcbiIsDQorICAgICAgICAgICAgICAgICAgIGdfc3RyZXJyb3IgKGVycm5vKSk7DQorQEAg LTk1Myw2ICs5NTMsNyBAQCBtYWluIChpbnQgYXJnYywgY2hhciAqYXJndltdKQ0KKyAgICAgICBn X3B0cl9hcnJheV9mcmVlIChzYXZlZF9lbnYsIFRSVUUpOw0KKyAgICAgfQ0KKyANCisrICBnX2Zy ZWUgKG9yaWdpbmFsX2N3ZCk7DQorICAgZ19mcmVlIChwYXRoKTsNCisgICBnX2ZyZWUgKGNvbW1h bmRfbGluZSk7DQorICAgZ19mcmVlIChvcHRfdXNlcik7DQpkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9w b2xraXQtMC4xMDUvMC4xMTAvMDdfc2V0LVhBVVRIT1JJVFktZW52aXJvbm1lbnQtdmFyaWFibGUt aWYtdW5zZXQucGF0Y2ggYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMC8wN19zZXQtWEFVVEhP UklUWS1lbnZpcm9ubWVudC12YXJpYWJsZS1pZi11bnNldC5wYXRjaA0KbmV3IGZpbGUgbW9kZSAx MDA2NDQNCmluZGV4IDAwMDAwMDAwMC4uMWRkZjc4Y2FiDQotLS0gL2Rldi9udWxsDQorKysgYi9w YXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMC8wN19zZXQtWEFVVEhPUklUWS1lbnZpcm9ubWVudC12 YXJpYWJsZS1pZi11bnNldC5wYXRjaA0KQEAgLTAsMCArMSw1OCBAQA0KK0Zyb206IERhdmlkIFpl dXRoZW4gPHpldXRoZW5AZ21haWwuY29tPg0KK0RhdGU6IFdlZCwgMTkgRGVjIDIwMTIgMTQ6Mjg6 MjkgLTA1MDANCitTdWJqZWN0OiBTZXQgWEFVVEhPUklUWSBlbnZpcm9ubWVudCB2YXJpYWJsZSBp ZiBpcyB1bnNldA0KKw0KK1RoZSB3YXkgaXQgd29ya3MgaXMgdGhhdCBpZiBYQVVUSE9SSVRZIGlz IHVuc2V0LCB0aGVuIGl0cyBkZWZhdWx0DQordmFsdWUgaXMgJEhPTUUvLlhhdXRob3JpdHkuIEJ1 dCBzaW5jZSB3ZSdyZSBjaGFuZ2luZyB1c2VyIGlkZW50aXR5DQordGhpcyB3aWxsIG5vdCB3b3Jr IHNpbmNlICRIT01FIHdpbGwgbm93IGNoYW5nZS4gVGhlcmVmb3JlLCBpZg0KK1hBVVRIT1JJVFkg aXMgdW5zZXQsIGp1c3Qgc2V0IGl0cyBkZWZhdWx0IHZhbHVlIGJlZm9yZSBjaGFuZ2luZw0KK2lk ZW50aXR5LiBUaGlzIGJ1ZyBvbmx5IGFmZmVjdGVkIGxvZ2luIG1hbmFnZXJzIHVzaW5nIFggV2lu ZG93DQorQXV0aG9yaXphdGlvbiBidXQgbm90IGV4cGxpY2l0bHkgc2V0dGluZyB0aGUgWEFVVEhP UklUWSB2YXJpYWJsZS4NCisNCitZb3UgY2FuIGFyZ3VlIHRoYXQgWEFVVEhPUklUWSBpcyBicm9r ZW4gc2luY2UgaXQgZm9yY2VzIHVpZC1jaGFuZ2luZw0KK2FwcHMgbGlrZSBwa2V4ZWMoMSkgdG8g ZG8gbW9yZSB3b3JrIC0gYW5kIGdldCBpbnZvbHZlZCBpbiBpbnRpbWF0ZQ0KK2RldGFpbHMgb2Yg aG93IFggd29ya3MgYW5kIHNvIG9uIC0gYnV0IHRoYXQgZG9lc24ndCBjaGFuZ2UgaG93IHRoaW5n cw0KK3dvcmsuDQorDQorQmFzZWQgb24gYSBwYXRjaCBmcm9tIFBldGVyIFd1IDxsZWtlbnN0ZXlu QGdtYWlsLmNvbT4uDQorDQorQnVnOiBodHRwczovL2J1Z3MuZnJlZWRlc2t0b3Aub3JnL3Nob3df YnVnLmNnaT9pZD01MTYyMw0KK1NpZ25lZC1vZmYtYnk6IERhdmlkIFpldXRoZW4gPHpldXRoZW5A Z21haWwuY29tPg0KK09yaWdpbjogdXBzdHJlYW0sIDAuMTEwLCBjb21taXQ6ZDZhY2VjZGQwZWJi NDJlMjhmZjI4ZTA0ZTAyMDdjYjAxZmEyMDkxMA0KKy0tLQ0KKyBzcmMvcHJvZ3JhbXMvcGtleGVj LmMgfCAyMiArKysrKysrKysrKysrKysrKysrKysrDQorIDEgZmlsZSBjaGFuZ2VkLCAyMiBpbnNl cnRpb25zKCspDQorDQorZGlmZiAtLWdpdCBhL3NyYy9wcm9ncmFtcy9wa2V4ZWMuYyBiL3NyYy9w cm9ncmFtcy9wa2V4ZWMuYw0KK2luZGV4IDM3Mzk3N2IuLjdmYWZhMTQgMTAwNjQ0DQorLS0tIGEv c3JjL3Byb2dyYW1zL3BrZXhlYy5jDQorKysrIGIvc3JjL3Byb2dyYW1zL3BrZXhlYy5jDQorQEAg LTU5Nyw2ICs1OTcsMjggQEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkNCisgICAgICAg Z19wdHJfYXJyYXlfYWRkIChzYXZlZF9lbnYsIGdfc3RyZHVwICh2YWx1ZSkpOw0KKyAgICAgfQ0K KyANCisrICAvKiAkWEFVVEhPUklUWSBpcyAic3BlY2lhbCIgLSBpZiB1bnNldCwgd2UgbmVlZCB0 byBzZXQgaXQgdG8gfi8uWGF1dGhvcml0eS4gWWVzLA0KKysgICAqIHRoaXMgaXMgYnJva2VuIGJ1 dCBpdCdzIHVuZm9ydHVuYXRlbHkgaG93IHRoaW5ncyB3b3JrIChzZWUgZmRvICM1MTYyMyBmb3IN CisrICAgKiBkZXRhaWxzKQ0KKysgICAqLw0KKysgIGlmIChnX2dldGVudiAoIlhBVVRIT1JJVFki KSA9PSBOVUxMKQ0KKysgICAgew0KKysgICAgICBjb25zdCBnY2hhciAqaG9tZTsNCisrDQorKyAg ICAgIC8qIHByZS0yLjM2IEdMaWIgZG9lcyBub3QgZXhhbWluZSAkSE9NRSAoaXQgYWx3YXlzIGxv b2tzIGluIC9ldGMvcGFzc3dkKSBhbmQNCisrICAgICAgICogdGhpcyBpcyBub3Qgd2hhdCB3ZSB3 YW50DQorKyAgICAgICAqLw0KKysgICAgICBob21lID0gZ19nZXRlbnYgKCJIT01FIik7DQorKyAg ICAgIGlmIChob21lID09IE5VTEwpDQorKyAgICAgICAgaG9tZSA9IGdfZ2V0X2hvbWVfZGlyICgp Ow0KKysNCisrICAgICAgaWYgKGhvbWUgIT0gTlVMTCkNCisrICAgICAgICB7DQorKyAgICAgICAg ICBnX3B0cl9hcnJheV9hZGQgKHNhdmVkX2VudiwgZ19zdHJkdXAgKCJYQVVUSE9SSVRZIikpOw0K KysgICAgICAgICAgZ19wdHJfYXJyYXlfYWRkIChzYXZlZF9lbnYsIGdfYnVpbGRfZmlsZW5hbWUg KGhvbWUsICIuWGF1dGhvcml0eSIsIE5VTEwpKTsNCisrICAgICAgICB9DQorKyAgICB9DQorKw0K KyAgIC8qIE51a2UgdGhlIGVudmlyb25tZW50IHRvIGdldCBhIHdlbGwta25vd24gYW5kIHNhbml0 aXplZCBlbnZpcm9ubWVudCB0byBhdm9pZCBhdHRhY2tzDQorICAgICogdmlhIGUuZy4gdGhlIERC VVNfU1lTVEVNX0JVU19BRERSRVNTIGVudmlyb25tZW50IHZhcmlhYmxlIGFuZCBzaW1pbGFyLg0K KyAgICAqLw0KZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTExLzA5X3BhbV9l bnZpcm9ubWVudC5wYXRjaCBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTExLzA5X3BhbV9lbnZp cm9ubWVudC5wYXRjaA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMC4uNzkz ZWZlZTY0DQotLS0gL2Rldi9udWxsDQorKysgYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMS8w OV9wYW1fZW52aXJvbm1lbnQucGF0Y2gNCkBAIC0wLDAgKzEsNDMgQEANCitGcm9tOiBTdGV2ZSBM YW5nYXNlayA8c3RldmUubGFuZ2FzZWtAY2Fub25pY2FsLmNvbT4NCitEYXRlOiBGcmksIDggTWFy IDIwMTMgMTI6MDA6MDAgKzAxMDANCitTdWJqZWN0OiBwa2V4ZWM6IFNldCBwcm9jZXNzIGVudmly b25tZW50IGZyb20gcGFtX2dldGVudmxpc3QoKQ0KKw0KK1ZhcmlvdXMgcGFtIG1vZHVsZXMgcHJv dmlkZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgdGhhdCBhcmUgaW50ZW5kZWQgdG8gYmUgc2V0DQor aW4gdGhlIGVudmlyb25tZW50IG9mIHRoZSBwYW0gc2Vzc2lvbi4gIHBrZXhlYyBuZWVkcyB0byBw cm9jZXNzIHRoZSBvdXRwdXQgb2YNCitwYW1fZ2V0ZW52bGlzdCgpIHRvIGdldCB0aGVzZS4NCisN CitCdWc6IGh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTYyMDE2 DQorQXBwbGllZC11cHN0cmVhbTogMC4xMTEsIGNvbW1pdDo1YWVmOTcyMmMxNWEzNTBmYmY4YjIw YTNiNTg0MTlmMTU2Y2M3Yzk4DQorQnVnLVVidW50dTogaHR0cHM6Ly9idWdzLmxhdW5jaHBhZC5u ZXQvYnVncy85ODI2ODQNCistLS0NCisgc3JjL3Byb2dyYW1zL3BrZXhlYy5jIHwgMTAgKysrKysr KysrKw0KKyAxIGZpbGUgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKQ0KKw0KK2RpZmYgLS1naXQg YS9zcmMvcHJvZ3JhbXMvcGtleGVjLmMgYi9zcmMvcHJvZ3JhbXMvcGtleGVjLmMNCitpbmRleCA2 ODJmZTk1Li45YTA1NzBhIDEwMDY0NA0KKy0tLSBhL3NyYy9wcm9ncmFtcy9wa2V4ZWMuYw0KKysr KyBiL3NyYy9wcm9ncmFtcy9wa2V4ZWMuYw0KK0BAIC0xNDUsNiArMTQ1LDcgQEAgb3Blbl9zZXNz aW9uIChjb25zdCBnY2hhciAqdXNlcl90b19hdXRoKQ0KKyAgIGdib29sZWFuIHJldDsNCisgICBn aW50IHJjOw0KKyAgIHBhbV9oYW5kbGVfdCAqcGFtX2g7DQorKyAgY2hhciAqKmVudmxpc3Q7DQor ICAgc3RydWN0IHBhbV9jb252IGNvbnZlcnNhdGlvbjsNCisgDQorICAgcmV0ID0gRkFMU0U7DQor QEAgLTE3Niw2ICsxNzcsMTUgQEAgb3Blbl9zZXNzaW9uIChjb25zdCBnY2hhciAqdXNlcl90b19h dXRoKQ0KKyANCisgICByZXQgPSBUUlVFOw0KKyANCisrICBlbnZsaXN0ID0gcGFtX2dldGVudmxp c3QgKHBhbV9oKTsNCisrICBpZiAoZW52bGlzdCAhPSBOVUxMKQ0KKysgICAgew0KKysgICAgICBn dWludCBuOw0KKysgICAgICBmb3IgKG4gPSAwOyBlbnZsaXN0W25dOyBuKyspDQorKyAgICAgICAg cHV0ZW52IChlbnZsaXN0W25dKTsNCisrICAgICAgZnJlZSAoZW52bGlzdCk7DQorKyAgICB9DQor Kw0KKyBvdXQ6DQorICAgaWYgKHBhbV9oICE9IE5VTEwpDQorICAgICBwYW1fZW5kIChwYW1faCwg cmMpOw0KZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTExL0ZpeC1hLW1lbW9y eS1sZWFrLnBhdGNoIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTEvRml4LWEtbWVtb3J5LWxl YWsucGF0Y2gNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAuLjlhYTY2YmY0 Zg0KLS0tIC9kZXYvbnVsbA0KKysrIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTEvRml4LWEt bWVtb3J5LWxlYWsucGF0Y2gNCkBAIC0wLDAgKzEsMjIgQEANCitGcm9tOiA9P3V0Zi04P3E/TWls b3NsYXZfVHJtYT1DND04RD89IDxtaXRyQHJlZGhhdC5jb20+DQorRGF0ZTogVHVlLCA3IE1heSAy MDEzIDIyOjMwOjI1ICswMjAwDQorU3ViamVjdDogRml4IGEgbWVtb3J5IGxlYWsNCisNCitCdWc6 IGh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTY0MzM2DQorT3Jp Z2luOiB1cHN0cmVhbSwgMC4xMTEsIGNvbW1pdDpkN2I2YWI0MGI1ODZjMjU1YzQ5YWJhMjJmNTU4 ZWI2NjAyYzg4YjFlDQorLS0tDQorIHNyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudGhlbHBlci1w YW0uYyB8IDEgKw0KKyAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKykNCisNCitkaWZmIC0t Z2l0IGEvc3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50aGVscGVyLXBhbS5jIGIvc3JjL3BvbGtp dGFnZW50L3BvbGtpdGFnZW50aGVscGVyLXBhbS5jDQoraW5kZXggN2FmNTMyMS4uMjkyYWJiZSAx MDA2NDQNCistLS0gYS9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRoZWxwZXItcGFtLmMNCisr KysgYi9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRoZWxwZXItcGFtLmMNCitAQCAtMzIxLDYg KzMyMSw3IEBAIGVycm9yOg0KKyAgICAgICB9DQorICAgICB9DQorICAgbWVtc2V0IChhcmVzcCwg MCwgbiAqIHNpemVvZiAqYXJlc3ApOw0KKysgIGZyZWUgKGFyZXNwKTsNCisgICAqcmVzcCA9IE5V TEw7DQorICAgcmV0dXJuIFBBTV9DT05WX0VSUjsNCisgfQ0KZGlmZiAtLWdpdCBhL3BhdGNoZXMv cG9sa2l0LTAuMTA1LzAuMTEyLzAwZ2l0X3R5cGVfcmVnaXN0cmF0aW9uLnBhdGNoIGIvcGF0Y2hl cy9wb2xraXQtMC4xMDUvMC4xMTIvMDBnaXRfdHlwZV9yZWdpc3RyYXRpb24ucGF0Y2gNCm5ldyBm aWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAuLjM5MzY4MDFmMg0KLS0tIC9kZXYvbnVs bA0KKysrIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTIvMDBnaXRfdHlwZV9yZWdpc3RyYXRp b24ucGF0Y2gNCkBAIC0wLDAgKzEsMTE4IEBADQorRnJvbTogVG9tYXMgQnphdGVrIDx0YnphdGVr QHJlZGhhdC5jb20+DQorRGF0ZTogV2VkLCAyOSBNYXkgMjAxMyAxMzo0NTozMSArMDAwMA0KK1N1 YmplY3Q6IFVzZSBHT25jZSBmb3IgaW50ZXJmYWNlIHR5cGUgcmVnaXN0cmF0aW9uDQorDQorU3Rh dGljIGxvY2FsIHZhcmlhYmxlIG1heSBub3QgYmUgZW5vdWdoIHNpbmNlIGl0IGRvZXNuJ3QgcHJv dmlkZSBsb2NraW5nLg0KKw0KK1JlbGF0ZWQgdG8gdGhlc2UgdWRpc2tzZCB3YXJuaW5nczoNCisg IEdMaWItR09iamVjdC1XQVJOSU5HICoqOiBjYW5ub3QgcmVnaXN0ZXIgZXhpc3RpbmcgdHlwZSBg UG9sa2l0U3ViamVjdCcNCisNCitUaGFua3MgdG8gSGFucyBkZSBHb2VkZSBmb3Igc3BvdHRpbmcg dGhpcyENCisNCitCdWc6IGh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dp P2lkPTY1MTMwDQorT3JpZ2luOiB1cHN0cmVhbSwgMC4xMTIsIGNvbW1pdDoyMGFkMTE2YTY1ODJl NTdkMjBmOWQ4MTk3NzU4OTQ3OTE4NzUzYTRjDQorLS0tDQorIHNyYy9wb2xraXQvcG9sa2l0aWRl bnRpdHkuYyAgICAgICAgICAgICAgICAgICB8IDEwICsrKysrKy0tLS0NCisgc3JjL3BvbGtpdC9w b2xraXRzdWJqZWN0LmMgICAgICAgICAgICAgICAgICAgIHwgMTAgKysrKysrLS0tLQ0KKyBzcmMv cG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kYWN0aW9ubG9va3VwLmMgfCAxMCArKysrKystLS0t DQorIDMgZmlsZXMgY2hhbmdlZCwgMTggaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0pDQor DQorZGlmZiAtLWdpdCBhL3NyYy9wb2xraXQvcG9sa2l0aWRlbnRpdHkuYyBiL3NyYy9wb2xraXQv cG9sa2l0aWRlbnRpdHkuYw0KK2luZGV4IGRkMTViMmYuLjc4MTNjMmMgMTAwNjQ0DQorLS0tIGEv c3JjL3BvbGtpdC9wb2xraXRpZGVudGl0eS5jDQorKysrIGIvc3JjL3BvbGtpdC9wb2xraXRpZGVu dGl0eS5jDQorQEAgLTQ5LDkgKzQ5LDkgQEAgYmFzZV9pbml0IChncG9pbnRlciBnX2lmYWNlKQ0K KyBHVHlwZQ0KKyBwb2xraXRfaWRlbnRpdHlfZ2V0X3R5cGUgKHZvaWQpDQorIHsNCistICBzdGF0 aWMgR1R5cGUgaWZhY2VfdHlwZSA9IDA7DQorKyAgc3RhdGljIHZvbGF0aWxlIGdzaXplIGdfZGVm aW5lX3R5cGVfaWRfX3ZvbGF0aWxlID0gMDsNCisgDQorLSAgaWYgKGlmYWNlX3R5cGUgPT0gMCkN CisrICBpZiAoZ19vbmNlX2luaXRfZW50ZXIgKCZnX2RlZmluZV90eXBlX2lkX192b2xhdGlsZSkp DQorICAgICB7DQorICAgICAgIHN0YXRpYyBjb25zdCBHVHlwZUluZm8gaW5mbyA9DQorICAgICAg IHsNCitAQCAtNjcsMTIgKzY3LDE0IEBAIHBvbGtpdF9pZGVudGl0eV9nZXRfdHlwZSAodm9pZCkN CisgICAgICAgICBOVUxMICAgICAgICAgICAgICAgICAgICAvKiB2YWx1ZV90YWJsZSAgICAqLw0K KyAgICAgICB9Ow0KKyANCistICAgICAgaWZhY2VfdHlwZSA9IGdfdHlwZV9yZWdpc3Rlcl9zdGF0 aWMgKEdfVFlQRV9JTlRFUkZBQ0UsICJQb2xraXRJZGVudGl0eSIsICZpbmZvLCAwKTsNCisrICAg ICAgR1R5cGUgaWZhY2VfdHlwZSA9DQorKyAgICAgICAgZ190eXBlX3JlZ2lzdGVyX3N0YXRpYyAo R19UWVBFX0lOVEVSRkFDRSwgIlBvbGtpdElkZW50aXR5IiwgJmluZm8sIDApOw0KKyANCisgICAg ICAgZ190eXBlX2ludGVyZmFjZV9hZGRfcHJlcmVxdWlzaXRlIChpZmFjZV90eXBlLCBHX1RZUEVf T0JKRUNUKTsNCisrICAgICAgZ19vbmNlX2luaXRfbGVhdmUgKCZnX2RlZmluZV90eXBlX2lkX192 b2xhdGlsZSwgaWZhY2VfdHlwZSk7DQorICAgICB9DQorIA0KKy0gIHJldHVybiBpZmFjZV90eXBl Ow0KKysgIHJldHVybiBnX2RlZmluZV90eXBlX2lkX192b2xhdGlsZTsNCisgfQ0KKyANCisgLyoq DQorZGlmZiAtLWdpdCBhL3NyYy9wb2xraXQvcG9sa2l0c3ViamVjdC5jIGIvc3JjL3BvbGtpdC9w b2xraXRzdWJqZWN0LmMNCitpbmRleCBkMmM0YzIwLi5hZWQ1Nzk1IDEwMDY0NA0KKy0tLSBhL3Ny Yy9wb2xraXQvcG9sa2l0c3ViamVjdC5jDQorKysrIGIvc3JjL3BvbGtpdC9wb2xraXRzdWJqZWN0 LmMNCitAQCAtNTAsOSArNTAsOSBAQCBiYXNlX2luaXQgKGdwb2ludGVyIGdfaWZhY2UpDQorIEdU eXBlDQorIHBvbGtpdF9zdWJqZWN0X2dldF90eXBlICh2b2lkKQ0KKyB7DQorLSAgc3RhdGljIEdU eXBlIGlmYWNlX3R5cGUgPSAwOw0KKysgIHN0YXRpYyB2b2xhdGlsZSBnc2l6ZSBnX2RlZmluZV90 eXBlX2lkX192b2xhdGlsZSA9IDA7DQorIA0KKy0gIGlmIChpZmFjZV90eXBlID09IDApDQorKyAg aWYgKGdfb25jZV9pbml0X2VudGVyICgmZ19kZWZpbmVfdHlwZV9pZF9fdm9sYXRpbGUpKQ0KKyAg ICAgew0KKyAgICAgICBzdGF0aWMgY29uc3QgR1R5cGVJbmZvIGluZm8gPQ0KKyAgICAgICB7DQor QEAgLTY4LDEyICs2OCwxNCBAQCBwb2xraXRfc3ViamVjdF9nZXRfdHlwZSAodm9pZCkNCisgICAg ICAgICBOVUxMICAgICAgICAgICAgICAgICAgICAvKiB2YWx1ZV90YWJsZSAgICAqLw0KKyAgICAg ICB9Ow0KKyANCistICAgICAgaWZhY2VfdHlwZSA9IGdfdHlwZV9yZWdpc3Rlcl9zdGF0aWMgKEdf VFlQRV9JTlRFUkZBQ0UsICJQb2xraXRTdWJqZWN0IiwgJmluZm8sIDApOw0KKysgICAgICBHVHlw ZSBpZmFjZV90eXBlID0NCisrICAgICAgICBnX3R5cGVfcmVnaXN0ZXJfc3RhdGljIChHX1RZUEVf SU5URVJGQUNFLCAiUG9sa2l0U3ViamVjdCIsICZpbmZvLCAwKTsNCisgDQorICAgICAgIGdfdHlw ZV9pbnRlcmZhY2VfYWRkX3ByZXJlcXVpc2l0ZSAoaWZhY2VfdHlwZSwgR19UWVBFX09CSkVDVCk7 DQorKyAgICAgIGdfb25jZV9pbml0X2xlYXZlICgmZ19kZWZpbmVfdHlwZV9pZF9fdm9sYXRpbGUs IGlmYWNlX3R5cGUpOw0KKyAgICAgfQ0KKyANCistICByZXR1cm4gaWZhY2VfdHlwZTsNCisrICBy ZXR1cm4gZ19kZWZpbmVfdHlwZV9pZF9fdm9sYXRpbGU7DQorIH0NCisgDQorIC8qKg0KK2RpZmYg LS1naXQgYS9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kYWN0aW9ubG9va3VwLmMgYi9z cmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kYWN0aW9ubG9va3VwLmMNCitpbmRleCA1YTFh MjI4Li4yMDc0N2U3IDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tl bmRhY3Rpb25sb29rdXAuYw0KKysrKyBiL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRh Y3Rpb25sb29rdXAuYw0KK0BAIC03NCw5ICs3NCw5IEBAIGJhc2VfaW5pdCAoZ3BvaW50ZXIgZ19p ZmFjZSkNCisgR1R5cGUNCisgcG9sa2l0X2JhY2tlbmRfYWN0aW9uX2xvb2t1cF9nZXRfdHlwZSAo dm9pZCkNCisgew0KKy0gIHN0YXRpYyBHVHlwZSBpZmFjZV90eXBlID0gMDsNCisrICBzdGF0aWMg dm9sYXRpbGUgZ3NpemUgZ19kZWZpbmVfdHlwZV9pZF9fdm9sYXRpbGUgPSAwOw0KKyANCistICBp ZiAoaWZhY2VfdHlwZSA9PSAwKQ0KKysgIGlmIChnX29uY2VfaW5pdF9lbnRlciAoJmdfZGVmaW5l X3R5cGVfaWRfX3ZvbGF0aWxlKSkNCisgICAgIHsNCisgICAgICAgc3RhdGljIGNvbnN0IEdUeXBl SW5mbyBpbmZvID0NCisgICAgICAgew0KK0BAIC05MiwxMiArOTIsMTQgQEAgcG9sa2l0X2JhY2tl bmRfYWN0aW9uX2xvb2t1cF9nZXRfdHlwZSAodm9pZCkNCisgICAgICAgICBOVUxMICAgICAgICAg ICAgICAgICAgICAvKiB2YWx1ZV90YWJsZSAgICAqLw0KKyAgICAgICB9Ow0KKyANCistICAgICAg aWZhY2VfdHlwZSA9IGdfdHlwZV9yZWdpc3Rlcl9zdGF0aWMgKEdfVFlQRV9JTlRFUkZBQ0UsICJQ b2xraXRCYWNrZW5kQWN0aW9uTG9va3VwIiwgJmluZm8sIDApOw0KKysgICAgICBHVHlwZSBpZmFj ZV90eXBlID0NCisrICAgICAgICBnX3R5cGVfcmVnaXN0ZXJfc3RhdGljIChHX1RZUEVfSU5URVJG QUNFLCAiUG9sa2l0QmFja2VuZEFjdGlvbkxvb2t1cCIsICZpbmZvLCAwKTsNCisgDQorICAgICAg IGdfdHlwZV9pbnRlcmZhY2VfYWRkX3ByZXJlcXVpc2l0ZSAoaWZhY2VfdHlwZSwgR19UWVBFX09C SkVDVCk7DQorKyAgICAgIGdfb25jZV9pbml0X2xlYXZlICgmZ19kZWZpbmVfdHlwZV9pZF9fdm9s YXRpbGUsIGlmYWNlX3R5cGUpOw0KKyAgICAgfQ0KKyANCistICByZXR1cm4gaWZhY2VfdHlwZTsN CisrICByZXR1cm4gZ19kZWZpbmVfdHlwZV9pZF9fdm9sYXRpbGU7DQorIH0NCisgDQorIC8qKg0K ZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEyLzA4X2RlcHJlY2F0ZV9yYWN5 X0FQSXMucGF0Y2ggYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMi8wOF9kZXByZWNhdGVfcmFj eV9BUElzLnBhdGNoDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi43MjVh NDRhMmQNCi0tLSAvZGV2L251bGwNCisrKyBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEyLzA4 X2RlcHJlY2F0ZV9yYWN5X0FQSXMucGF0Y2gNCkBAIC0wLDAgKzEsMjcgQEANCitGcm9tOiBDb2xp biBXYWx0ZXJzIDx3YWx0ZXJzQHZlcmJ1bS5vcmc+DQorRGF0ZTogVHVlLCAyMCBBdWcgMjAxMyAx NToxNTozMSAtMDQwMA0KK1N1YmplY3Q6IHBvbGtpdHVuaXhwcm9jZXNzOiBEZXByZWNhdGUgcmFj eSBBUElzDQorDQorSXQncyBvbmx5IHNhZmUgZm9yIHByb2Nlc3NlcyB0byBiZSBjcmVhdGVkIHdp dGggdGhlaXIgb3duaW5nIHVpZCwNCisod2l0aG91dCBrZXJuZWwgc3VwcG9ydCwgd2hpY2ggd2Ug ZG9uJ3QgaGF2ZSkuICBBbnl0aGluZyBlbHNlIGlzDQorc3ViamVjdCB0byBjbGllbnRzIGV4ZWMo KWluZyBzZXR1aWQgYmluYXJpZXMgYWZ0ZXIgdGhlIGZhY3QuDQorDQorT3JpZ2luOiB1cHN0cmVh bSwgMC4xMTIsIGNvbW1pdDowODI5MTc4OWExZjk5ZDRhYjI5Yzc0YzM5MzQ0MzA0YmNjYTQzMDIz DQorLS0tDQorIHNyYy9wb2xraXQvcG9sa2l0dW5peHByb2Nlc3MuaCB8IDIgKysNCisgMSBmaWxl IGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKQ0KKw0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0L3Bv bGtpdHVuaXhwcm9jZXNzLmggYi9zcmMvcG9sa2l0L3BvbGtpdHVuaXhwcm9jZXNzLmgNCitpbmRl eCA1MzFhNTdkLi5mNWVkMWE3IDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xraXQvcG9sa2l0dW5peHBy b2Nlc3MuaA0KKysrKyBiL3NyYy9wb2xraXQvcG9sa2l0dW5peHByb2Nlc3MuaA0KK0BAIC00Nyw3 ICs0Nyw5IEBAIHR5cGVkZWYgc3RydWN0IF9Qb2xraXRVbml4UHJvY2VzcyBQb2xraXRVbml4UHJv Y2VzczsNCisgdHlwZWRlZiBzdHJ1Y3QgX1BvbGtpdFVuaXhQcm9jZXNzQ2xhc3MgUG9sa2l0VW5p eFByb2Nlc3NDbGFzczsNCisgDQorIEdUeXBlICAgICAgICAgICBwb2xraXRfdW5peF9wcm9jZXNz X2dldF90eXBlICAgICAgICh2b2lkKSBHX0dOVUNfQ09OU1Q7DQorK0dfR05VQ19ERVBSRUNBVEVE X0ZPUihwb2xraXRfdW5peF9wcm9jZXNzX25ld19mb3Jfb3duZXIpDQorIFBvbGtpdFN1YmplY3Qg ICpwb2xraXRfdW5peF9wcm9jZXNzX25ldyAgICAgICAgICAgIChnaW50ICAgICAgICAgICAgICAg cGlkKTsNCisrR19HTlVDX0RFUFJFQ0FURURfRk9SKHBvbGtpdF91bml4X3Byb2Nlc3NfbmV3X2Zv cl9vd25lcikNCisgUG9sa2l0U3ViamVjdCAgKnBvbGtpdF91bml4X3Byb2Nlc3NfbmV3X2Z1bGwg ICAgICAgKGdpbnQgICAgICAgICAgICAgICBwaWQsDQorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBndWludDY0ICAgICAgICAgICAgc3RhcnRfdGlt ZSk7DQorIFBvbGtpdFN1YmplY3QgICpwb2xraXRfdW5peF9wcm9jZXNzX25ld19mb3Jfb3duZXIg IChnaW50ICAgICAgICAgICAgICAgcGlkLA0KZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9sa2l0LTAu MTA1LzAuMTEyL2N2ZS0yMDEzLTQyODgucGF0Y2ggYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjEx Mi9jdmUtMjAxMy00Mjg4LnBhdGNoDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAw MDAwLi4yMDdiY2YwNDQNCi0tLSAvZGV2L251bGwNCisrKyBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1 LzAuMTEyL2N2ZS0yMDEzLTQyODgucGF0Y2gNCkBAIC0wLDAgKzEsMTE2IEBADQorRnJvbTogQ29s aW4gV2FsdGVycyA8d2FsdGVyc0B2ZXJidW0ub3JnPg0KK0RhdGU6IE1vbiwgMTkgQXVnIDIwMTMg MTI6MTY6MTEgLTA0MDANCitTdWJqZWN0OiBwa2NoZWNrOiBTdXBwb3J0IC0tcHJvY2Vzcz1waWQs c3RhcnQtdGltZSx1aWQgc3ludGF4IHRvbw0KKw0KK1RoZSB1aWQgaXMgYSBuZXcgYWRkaXRpb247 IHRoaXMgYWxsb3dzIGNhbGxlcnMgc3VjaCBhcyBsaWJ2aXJ0IHRvDQorY2xvc2UgYSByYWNlIGNv bmRpdGlvbiBpbiByZWFkaW5nIHRoZSB1aWQgb2YgdGhlIHByb2Nlc3MgdGFsa2luZyB0bw0KK3Ro ZW0uICBUaGV5IGNhbiByZWFkIGl0IHZpYSBnZXRzb2Nrb3B0KFNPX1BFRVJDUkVEKSBvciBlcXVp dmFsZW50LA0KK3JhdGhlciB0aGFuIGhhdmluZyBwa2NoZWNrIGxvb2sgYXQgL3Byb2MgbGF0ZXIg YWZ0ZXIgdGhlIGZhY3QuDQorDQorUHJvZ3JhbXMgd2hpY2ggaW52b2tlIHBrY2hlY2sgYnV0IG5l ZWQgdG8ga25vdyBiZWZvcmVoYW5kIChpLmUuICBhdA0KK2NvbXBpbGUgdGltZSkgd2hldGhlciBv ciBub3QgaXQgc3VwcG9ydHMgcGFzc2luZyB0aGUgdWlkIGNhbg0KK3VzZToNCisNCitwa2NoZWNr X3N1cHBvcnRzX3VpZD0kKCRQS0dfQ09ORklHIC0tdmFyaWFibGUgcGtjaGVja19zdXBwb3J0c191 aWQgcG9sa2l0LWdvYmplY3QtMSkNCit0ZXN0IHgkcGtjaGVja19zdXBwb3J0c191aWQgPSB4eWVz DQorDQorT3JpZ2luOiB1cHN0cmVhbSwgMC4xMTIsIGNvbW1pdDozOTY4NDExYjBjN2JhMTkzZjli OTI3NmVjOTExNjkyYWVjMjQ4NjA4DQorLS0tDQorIGRhdGEvcG9sa2l0LWdvYmplY3QtMS5wYy5p biB8ICAzICsrKw0KKyBkb2NzL21hbi9wa2NoZWNrLnhtbCAgICAgICAgfCAyOSArKysrKysrKysr KysrKysrKysrKy0tLS0tLS0tLQ0KKyBzcmMvcHJvZ3JhbXMvcGtjaGVjay5jICAgICAgfCAgNyAr KysrKystDQorIDMgZmlsZXMgY2hhbmdlZCwgMjkgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25z KC0pDQorDQorZGlmZiAtLWdpdCBhL2RhdGEvcG9sa2l0LWdvYmplY3QtMS5wYy5pbiBiL2RhdGEv cG9sa2l0LWdvYmplY3QtMS5wYy5pbg0KK2luZGV4IGMzOTY3N2QuLjVjNGM2MjAgMTAwNjQ0DQor LS0tIGEvZGF0YS9wb2xraXQtZ29iamVjdC0xLnBjLmluDQorKysrIGIvZGF0YS9wb2xraXQtZ29i amVjdC0xLnBjLmluDQorQEAgLTExLDMgKzExLDYgQEAgVmVyc2lvbjogQFZFUlNJT05ADQorIExp YnM6IC1MJHtsaWJkaXJ9IC1scG9sa2l0LWdvYmplY3QtMQ0KKyBDZmxhZ3M6IC1JJHtpbmNsdWRl ZGlyfS9wb2xraXQtMQ0KKyBSZXF1aXJlczogZ2lvLTIuMCA+PSAyLjE4IGdsaWItMi4wID49IDIu MTgNCisrIyBQcm9ncmFtcyB1c2luZyBwa2NoZWNrIGNhbiB1c2UgdGhpcyB0byBkZXRlcm1pbmUN CisrIyB3aGV0aGVyIG9yIG5vdCBpdCBjYW4gYmUgcGFzc2VkIGEgdWlkLg0KKytwa2NoZWNrX3N1 cHBvcnRzX3VpZD10cnVlDQorZGlmZiAtLWdpdCBhL2RvY3MvbWFuL3BrY2hlY2sueG1sIGIvZG9j cy9tYW4vcGtjaGVjay54bWwNCitpbmRleCA2YjhhODc0Li41MDg0NDdlIDEwMDY0NA0KKy0tLSBh L2RvY3MvbWFuL3BrY2hlY2sueG1sDQorKysrIGIvZG9jcy9tYW4vcGtjaGVjay54bWwNCitAQCAt NTUsNiArNTUsOSBAQA0KKyAgICAgICAgICAgICA8YXJnIGNob2ljZT0icGxhaW4iPg0KKyAgICAg ICAgICAgICAgIDxyZXBsYWNlYWJsZT5waWQscGlkLXN0YXJ0LXRpbWU8L3JlcGxhY2VhYmxlPg0K KyAgICAgICAgICAgICA8L2FyZz4NCisrICAgICAgICAgICAgPGFyZyBjaG9pY2U9InBsYWluIj4N CisrICAgICAgICAgICAgICA8cmVwbGFjZWFibGU+cGlkLHBpZC1zdGFydC10aW1lLHVpZDwvcmVw bGFjZWFibGU+DQorKyAgICAgICAgICAgIDwvYXJnPg0KKyAgICAgICAgICAgPC9ncm91cD4NCisg ICAgICAgICA8L2FyZz4NCisgICAgICAgICA8YXJnIGNob2ljZT0icGxhaW4iPg0KK0BAIC05MCw3 ICs5Myw3IEBADQorICAgICA8dGl0bGU+REVTQ1JJUFRJT048L3RpdGxlPg0KKyAgICAgPHBhcmE+ DQorICAgICAgIDxjb21tYW5kPnBrY2hlY2s8L2NvbW1hbmQ+IGlzIHVzZWQgdG8gY2hlY2sgd2hl dGhlciBhIHByb2Nlc3MsIHNwZWNpZmllZCBieQ0KKy0gICAgICBlaXRoZXIgPG9wdGlvbj4tLXBy b2Nlc3M8L29wdGlvbj4gb3IgPG9wdGlvbj4tLXN5c3RlbS1idXMtbmFtZTwvb3B0aW9uPiwNCisr ICAgICAgZWl0aGVyIDxvcHRpb24+LS1wcm9jZXNzPC9vcHRpb24+IChzZWUgYmVsb3cpIG9yIDxv cHRpb24+LS1zeXN0ZW0tYnVzLW5hbWU8L29wdGlvbj4sDQorICAgICAgIGlzIGF1dGhvcml6ZWQg Zm9yIDxyZXBsYWNlYWJsZT5hY3Rpb248L3JlcGxhY2VhYmxlPi4gVGhlIDxvcHRpb24+LS1kZXRh aWw8L29wdGlvbj4NCisgICAgICAgb3B0aW9uIGNhbiBiZSB1c2VkIHplcm8gb3IgbW9yZSB0aW1l cyB0byBwYXNzIGRldGFpbHMgYWJvdXQgPHJlcGxhY2VhYmxlPmFjdGlvbjwvcmVwbGFjZWFibGU+ Lg0KKyAgICAgICBJZiA8b3B0aW9uPi0tYWxsb3ctdXNlci1pbnRlcmFjdGlvbjwvb3B0aW9uPiBp cyBwYXNzZWQsIDxjb21tYW5kPnBrY2hlY2s8L2NvbW1hbmQ+IGJsb2Nrcw0KK0BAIC0xNjAsMTcg KzE2MywyNSBAQCBLRVkzPVZBTFVFMw0KKyAgIDxyZWZzZWN0MSBpZD0icGtjaGVjay1ub3RlcyI+ DQorICAgICA8dGl0bGU+Tk9URVM8L3RpdGxlPg0KKyAgICAgPHBhcmE+DQorLSAgICAgIFNpbmNl IHByb2Nlc3MgaWRlbnRpZmllcnMgY2FuIGJlIHJlY3ljbGVkLCB0aGUgY2FsbGVyIHNob3VsZCBh bHdheXMgdXNlDQorLSAgICAgIDxyZXBsYWNlYWJsZT5waWQscGlkLXN0YXJ0LXRpbWU8L3JlcGxh Y2VhYmxlPiB0byBzcGVjaWZ5IHRoZSBwcm9jZXNzDQorLSAgICAgIHRvIGNoZWNrIGZvciBhdXRo b3JpemF0aW9uIHdoZW4gdXNpbmcgdGhlIDxvcHRpb24+LS1wcm9jZXNzPC9vcHRpb24+IG9wdGlv bi4NCistICAgICAgVGhlIHZhbHVlIG9mIDxyZXBsYWNlYWJsZT5waWQtc3RhcnQtdGltZTwvcmVw bGFjZWFibGU+DQorLSAgICAgIGNhbiBiZSBkZXRlcm1pbmVkIGJ5IGNvbnN1bHRpbmcgZS5nLiB0 aGUNCisrICAgICAgRG8gbm90IHVzZSBlaXRoZXIgdGhlIGJhcmUgPHJlcGxhY2VhYmxlPnBpZDwv cmVwbGFjZWFibGU+IG9yDQorKyAgICAgIDxyZXBsYWNlYWJsZT5waWQsc3RhcnQtdGltZTwvcmVw bGFjZWFibGU+IHN5bnRheCBmb3JtcyBmb3INCisrICAgICAgPG9wdGlvbj4tLXByb2Nlc3M8L29w dGlvbj4uICBUaGVyZSBhcmUgcmFjZSBjb25kaXRpb25zIGluIGJvdGguDQorKyAgICAgIE5ldyBj b2RlIHNob3VsZCBhbHdheXMgdXNlDQorKyAgICAgIDxyZXBsYWNlYWJsZT5waWQscGlkLXN0YXJ0 LXRpbWUsdWlkPC9yZXBsYWNlYWJsZT4uICBUaGUgdmFsdWUgb2YNCisrICAgICAgPHJlcGxhY2Vh YmxlPnN0YXJ0LXRpbWU8L3JlcGxhY2VhYmxlPiBjYW4gYmUgZGV0ZXJtaW5lZCBieQ0KKysgICAg ICBjb25zdWx0aW5nIGUuZy4gdGhlDQorICAgICAgIDxjaXRlcmVmZW50cnk+DQorICAgICAgICAg PHJlZmVudHJ5dGl0bGU+cHJvYzwvcmVmZW50cnl0aXRsZT48bWFudm9sbnVtPjU8L21hbnZvbG51 bT4NCisgICAgICAgPC9jaXRlcmVmZW50cnk+DQorLSAgICAgIGZpbGUgc3lzdGVtIGRlcGVuZGlu ZyBvbiB0aGUgb3BlcmF0aW5nIHN5c3RlbS4gSWYgb25seSA8cmVwbGFjZWFibGU+cGlkPC9yZXBs YWNlYWJsZT4NCistICAgICAgaXMgcGFzc2VkIHRvIHRoZSA8b3B0aW9uPi0tcHJvY2Vzczwvb3B0 aW9uPiBvcHRpb24sIHRoZW4gPGNvbW1hbmQ+cGtjaGVjazwvY29tbWFuZD4NCistICAgICAgd2ls bCBsb29rIHVwIHRoZSBzdGFydCB0aW1lIGl0c2VsZiBidXQgbm90ZSB0aGF0IHRoaXMgbWF5IGJl IHJhY3kuDQorKyAgICAgIGZpbGUgc3lzdGVtIGRlcGVuZGluZyBvbiB0aGUgb3BlcmF0aW5nIHN5 c3RlbS4gIElmIGZld2VyIHRoYW4gMw0KKysgICAgICBhcmd1bWVudHMgYXJlIHBhc3NlZCwgPGNv bW1hbmQ+cGtjaGVjazwvY29tbWFuZD4gd2lsbCBhdHRlbXB0IHRvDQorKyAgICAgIGxvb2sgdXAg dGhlbSB1cCBpbnRlcm5hbGx5LCBidXQgbm90ZSB0aGF0IHRoaXMgbWF5IGJlIHJhY3kuDQorKyAg ICA8L3BhcmE+DQorKyAgICA8cGFyYT4NCisrICAgICAgSWYgeW91ciBwcm9ncmFtIGlzIGEgZGFl bW9uIHdpdGggZS5nLiBhIGN1c3RvbSBVbml4IGRvbWFpbg0KKysgICAgICBzb2NrZXQsIHlvdSBz aG91bGQgZGV0ZXJtaW5lIHRoZSA8cmVwbGFjZWFibGU+dWlkPC9yZXBsYWNlYWJsZT4NCisrICAg ICAgcGFyYW1ldGVyIHZpYSBvcGVyYXRpbmcgc3lzdGVtIG1lY2hhbmlzbXMgc3VjaCBhcw0KKysg ICAgICA8bGl0ZXJhbD5QRUVSQ1JFRDwvbGl0ZXJhbD4uDQorICAgICA8L3BhcmE+DQorICAgPC9y ZWZzZWN0MT4NCisgDQorZGlmZiAtLWdpdCBhL3NyYy9wcm9ncmFtcy9wa2NoZWNrLmMgYi9zcmMv cHJvZ3JhbXMvcGtjaGVjay5jDQoraW5kZXggNzE5YTM2Yy4uMDU3ZTkyNiAxMDA2NDQNCistLS0g YS9zcmMvcHJvZ3JhbXMvcGtjaGVjay5jDQorKysrIGIvc3JjL3Byb2dyYW1zL3BrY2hlY2suYw0K K0BAIC0zNzIsNiArMzcyLDcgQEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkNCisgICAg ICAgZWxzZSBpZiAoZ19zdHJjbXAwIChhcmd2W25dLCAiLS1wcm9jZXNzIikgPT0gMCB8fCBnX3N0 cmNtcDAgKGFyZ3Zbbl0sICItcCIpID09IDApDQorICAgICAgICAgew0KKyAgICAgICAgICAgZ2lu dCBwaWQ7DQorKwkgIGd1aW50IHVpZDsNCisgICAgICAgICAgIGd1aW50NjQgcGlkX3N0YXJ0X3Rp bWU7DQorIA0KKyAgICAgICAgICAgbisrOw0KK0BAIC0zODEsNyArMzgyLDExIEBAIG1haW4gKGlu dCBhcmdjLCBjaGFyICphcmd2W10pDQorICAgICAgICAgICAgICAgZ290byBvdXQ7DQorICAgICAg ICAgICAgIH0NCisgDQorLSAgICAgICAgICBpZiAoc3NjYW5mIChhcmd2W25dLCAiJWksJSIgR19H VUlOVDY0X0ZPUk1BVCwgJnBpZCwgJnBpZF9zdGFydF90aW1lKSA9PSAyKQ0KKysgICAgICAgICAg aWYgKHNzY2FuZiAoYXJndltuXSwgIiVpLCUiIEdfR1VJTlQ2NF9GT1JNQVQgIiwldSIsICZwaWQs ICZwaWRfc3RhcnRfdGltZSwgJnVpZCkgPT0gMykNCisrICAgICAgICAgICAgew0KKysgICAgICAg ICAgICAgIHN1YmplY3QgPSBwb2xraXRfdW5peF9wcm9jZXNzX25ld19mb3Jfb3duZXIgKHBpZCwg cGlkX3N0YXJ0X3RpbWUsIHVpZCk7DQorKyAgICAgICAgICAgIH0NCisrICAgICAgICAgIGVsc2Ug aWYgKHNzY2FuZiAoYXJndltuXSwgIiVpLCUiIEdfR1VJTlQ2NF9GT1JNQVQsICZwaWQsICZwaWRf c3RhcnRfdGltZSkgPT0gMikNCisgICAgICAgICAgICAgew0KKyAgICAgICAgICAgICAgIHN1Ympl Y3QgPSBwb2xraXRfdW5peF9wcm9jZXNzX25ld19mdWxsIChwaWQsIHBpZF9zdGFydF90aW1lKTsN CisgICAgICAgICAgICAgfQ0KZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEz LzAwZ2l0X2ZpeF9tZW1sZWFrLnBhdGNoIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvMDBn aXRfZml4X21lbWxlYWsucGF0Y2gNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAw MDAuLjQyODMzNDVhMA0KLS0tIC9kZXYvbnVsbA0KKysrIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUv MC4xMTMvMDBnaXRfZml4X21lbWxlYWsucGF0Y2gNCkBAIC0wLDAgKzEsMjYgQEANCitGcm9tOiAi TWF4IEEuIERlZG5ldiIgPGRlZG5ldkByYW1ibGVyLnJ1Pg0KK0RhdGU6IFN1biwgMTEgSmFuIDIw MTUgMjA6MDA6NDQgLTA1MDANCitTdWJqZWN0OiBhdXRob3JpdHk6IEZpeCBtZW1vcnkgbGVhayBp biBFbnVtZXJhdGVBY3Rpb25zIGNhbGwgcmVzdWx0cyBoYW5kbGVyDQorDQorUG9saWN5a2l0LTEg ZG9lc24ndCByZWxlYXNlIHJlZmVyZW5jZSBjb3VudGVycyBvZiBHVmFyaWFudCBkYXRhIGZvcg0K K29yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhvcml0eS5FbnVtZXJhdGVBY3Rpb25zIGRi dXMgY2FsbC4gIFRoaXMNCitwYXRjaCBmaXhlZCByZWZlcmVuY2UgY291bnRpbmcgYW5kIGZvbGxv d2luZyBtZW1vcnkgbGVhay4NCisNCitCdWc6IGh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcv c2hvd19idWcuY2dpP2lkPTg4Mjg4DQorT3JpZ2luOiB1cHN0cmVhbSwgMC4xMTMsIGNvbW1pdDpm NGQ3MWUwZGU4ODUwMTA0OTRiOGIwYjhkNjJjYTkxMDAxMWQ3NTQ0DQorLS0tDQorIHNyYy9wb2xr aXQvcG9sa2l0YXV0aG9yaXR5LmMgfCAxIC0NCisgMSBmaWxlIGNoYW5nZWQsIDEgZGVsZXRpb24o LSkNCisNCitkaWZmIC0tZ2l0IGEvc3JjL3BvbGtpdC9wb2xraXRhdXRob3JpdHkuYyBiL3NyYy9w b2xraXQvcG9sa2l0YXV0aG9yaXR5LmMNCitpbmRleCA5OTQ3Y2YzLi44NGRhYjcyIDEwMDY0NA0K Ky0tLSBhL3NyYy9wb2xraXQvcG9sa2l0YXV0aG9yaXR5LmMNCisrKysgYi9zcmMvcG9sa2l0L3Bv bGtpdGF1dGhvcml0eS5jDQorQEAgLTcxNSw3ICs3MTUsNiBAQCBwb2xraXRfYXV0aG9yaXR5X2Vu dW1lcmF0ZV9hY3Rpb25zX2ZpbmlzaCAoUG9sa2l0QXV0aG9yaXR5ICphdXRob3JpdHksDQorICAg d2hpbGUgKChjaGlsZCA9IGdfdmFyaWFudF9pdGVyX25leHRfdmFsdWUgKCZpdGVyKSkgIT0gTlVM TCkNCisgICAgIHsNCisgICAgICAgcmV0ID0gZ19saXN0X3ByZXBlbmQgKHJldCwgcG9sa2l0X2Fj dGlvbl9kZXNjcmlwdGlvbl9uZXdfZm9yX2d2YXJpYW50IChjaGlsZCkpOw0KKy0gICAgICBnX3Zh cmlhbnRfcmVmX3NpbmsgKGNoaWxkKTsNCisgICAgICAgZ192YXJpYW50X3VucmVmIChjaGlsZCk7 DQorICAgICB9DQorICAgcmV0ID0gZ19saXN0X3JldmVyc2UgKHJldCk7DQpkaWZmIC0tZ2l0IGEv cGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvMDBnaXRfaW52YWxpZF9vYmplY3RfcGF0aHMucGF0 Y2ggYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy8wMGdpdF9pbnZhbGlkX29iamVjdF9wYXRo cy5wYXRjaA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMC4uMDg4ZDE3MGEw DQotLS0gL2Rldi9udWxsDQorKysgYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy8wMGdpdF9p bnZhbGlkX29iamVjdF9wYXRocy5wYXRjaA0KQEAgLTAsMCArMSwxMTYgQEANCitGcm9tOiBDb2xp biBXYWx0ZXJzIDx3YWx0ZXJzQHJlZGhhdC5jb20+DQorRGF0ZTogU2F0LCAzMCBNYXkgMjAxNSAw OTowNjoyMyAtMDQwMA0KK1N1YmplY3Q6IENWRS0yMDE1LTMyMTg6IGJhY2tlbmQ6IEhhbmRsZSBp bnZhbGlkIG9iamVjdCBwYXRocyBpbg0KKyBSZWdpc3RlckF1dGhlbnRpY2F0aW9uQWdlbnQNCitN SU1FLVZlcnNpb246IDEuMA0KK0NvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD0idXRm LTgiDQorQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdA0KKw0KK1Byb3Blcmx5IHByb3Bh Z2F0ZSB0aGUgZXJyb3IsIG90aGVyd2lzZSB3ZSBkZXJlZmVyZW5jZSBhIGBOVUxMYA0KK3BvaW50 ZXIuICBUaGlzIGlzIGEgbG9jYWwsIGF1dGhlbnRpY2F0ZWQgRG9TLg0KKw0KK2BSZWdpc3RlckF1 dGhlbnRpY2F0aW9uQWdlbnRXaXRoT3B0aW9uc2AgYW5kDQorYFVucmVnaXN0ZXJBdXRoZW50aWNh dGlvbmAgaGF2ZSBiZWVuIHZhbGlkYXRlZCB0byBub3QgbmVlZCBjaGFuZ2VzIGZvcg0KK3RoaXMu DQorDQoraHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9hcmNoaXZlcy9wb2xraXQtZGV2ZWwv MjAxNS1NYXkvMDAwNDIwLmh0bWwNCisNCitCdWc6IGh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5v cmcvc2hvd19idWcuY2dpP2lkPTkwODI5DQorQnVnLURlYmlhbjogaHR0cHM6Ly9idWdzLmRlYmlh bi5vcmcvNzg3OTMyDQorUmVwb3J0ZWQtYnk6IFRhdmlzIE9ybWFuZHkgPHRhdmlzb0Bnb29nbGUu Y29tPg0KK1Jldmlld2VkLWJ5OiBQaGlsaXAgV2l0aG5hbGwgPHBoaWxpcEB0ZWNub2NvZGUuY28u dWs+DQorUmV2aWV3ZWQtYnk6IE1pbG9zbGF2IFRybWHEjSA8bWl0ckByZWRoYXQuY29tPg0KK1Np Z25lZC1vZmYtYnk6IENvbGluIFdhbHRlcnMgPHdhbHRlcnNAcmVkaGF0LmNvbT4NCitPcmlnaW46 IHVwc3RyZWFtLCAwLjExMywgY29tbWl0OjQ4ZTY0NjkxOGVmYjJiZjBiM2I1MDU3NDc2NTU3MjZk Nzg2OWYzMWMNCistLS0NCisgLi4uL3BvbGtpdGJhY2tlbmRpbnRlcmFjdGl2ZWF1dGhvcml0eS5j ICAgICAgICAgICAgfCA1MyArKysrKysrKysrKystLS0tLS0tLS0tDQorIDEgZmlsZSBjaGFuZ2Vk LCAzMCBpbnNlcnRpb25zKCspLCAyMyBkZWxldGlvbnMoLSkNCisNCitkaWZmIC0tZ2l0IGEvc3Jj L3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGludGVyYWN0aXZlYXV0aG9yaXR5LmMgYi9zcmMv cG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kaW50ZXJhY3RpdmVhdXRob3JpdHkuYw0KK2luZGV4 IGIyMzdlOWQuLjI1ZTEzZmIgMTAwNjQ0DQorLS0tIGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0 YmFja2VuZGludGVyYWN0aXZlYXV0aG9yaXR5LmMNCisrKysgYi9zcmMvcG9sa2l0YmFja2VuZC9w b2xraXRiYWNrZW5kaW50ZXJhY3RpdmVhdXRob3JpdHkuYw0KK0BAIC0xNTU4LDM2ICsxNTU4LDQy IEBAIGF1dGhlbnRpY2F0aW9uX2FnZW50X25ldyAoUG9sa2l0U3ViamVjdCAqc2NvcGUsDQorICAg ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2NoYXIgKnVuaXF1ZV9zeXN0ZW1fYnVzX25h bWUsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2NoYXIgKmxvY2FsZSwNCisg ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnY2hhciAqb2JqZWN0X3BhdGgsDQorLSAg ICAgICAgICAgICAgICAgICAgICAgICAgR1ZhcmlhbnQgICAgKnJlZ2lzdHJhdGlvbl9vcHRpb25z KQ0KKysgICAgICAgICAgICAgICAgICAgICAgICAgIEdWYXJpYW50ICAgICpyZWdpc3RyYXRpb25f b3B0aW9ucywNCisrICAgICAgICAgICAgICAgICAgICAgICAgICBHRXJyb3IgICAgICoqZXJyb3Ip DQorIHsNCisgICBBdXRoZW50aWNhdGlvbkFnZW50ICphZ2VudDsNCistICBHRXJyb3IgKmVycm9y Ow0KKysgIEdEQnVzUHJveHkgKnByb3h5Ow0KKyANCistICBhZ2VudCA9IGdfbmV3MCAoQXV0aGVu dGljYXRpb25BZ2VudCwgMSk7DQorKyAgaWYgKCFnX3ZhcmlhbnRfaXNfb2JqZWN0X3BhdGggKG9i amVjdF9wYXRoKSkNCisrICAgIHsNCisrICAgICAgZ19zZXRfZXJyb3IgKGVycm9yLCBQT0xLSVRf RVJST1IsIFBPTEtJVF9FUlJPUl9GQUlMRUQsDQorKyAgICAgICAgICAgICAgICAgICAiSW52YWxp ZCBvYmplY3QgcGF0aCAnJXMnIiwgb2JqZWN0X3BhdGgpOw0KKysgICAgICByZXR1cm4gTlVMTDsN CisrICAgIH0NCisrDQorKyAgcHJveHkgPSBnX2RidXNfcHJveHlfbmV3X2Zvcl9idXNfc3luYyAo R19CVVNfVFlQRV9TWVNURU0sDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgR19EQlVTX1BST1hZX0ZMQUdTX0RPX05PVF9MT0FEX1BST1BFUlRJRVMgfA0KKysgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdfREJVU19QUk9YWV9GTEFHU19E T19OT1RfQ09OTkVDVF9TSUdOQUxTLA0KKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIE5VTEwsIC8qIEdEQnVzSW50ZXJmYWNlSW5mbyogKi8NCisrICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmlxdWVfc3lzdGVtX2J1c19uYW1lLA0KKysg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdF9wYXRoLA0KKysg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJvcmcuZnJlZWRlc2t0b3Au UG9saWN5S2l0MS5BdXRoZW50aWNhdGlvbkFnZW50IiwNCisrICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBHQ2FuY2VsbGFibGUqICovDQorKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3IpOw0KKysgIGlmIChwcm94eSA9 PSBOVUxMKQ0KKysgICAgew0KKysgICAgICBnX3ByZWZpeF9lcnJvciAoZXJyb3IsICJGYWlsZWQg dG8gY29uc3RydWN0IHByb3h5IGZvciBhZ2VudDogIiApOw0KKysgICAgICByZXR1cm4gTlVMTDsN CisrICAgIH0NCisgDQorKyAgYWdlbnQgPSBnX25ldzAgKEF1dGhlbnRpY2F0aW9uQWdlbnQsIDEp Ow0KKyAgIGFnZW50LT5yZWZfY291bnQgPSAxOw0KKyAgIGFnZW50LT5zY29wZSA9IGdfb2JqZWN0 X3JlZiAoc2NvcGUpOw0KKyAgIGFnZW50LT5vYmplY3RfcGF0aCA9IGdfc3RyZHVwIChvYmplY3Rf cGF0aCk7DQorICAgYWdlbnQtPnVuaXF1ZV9zeXN0ZW1fYnVzX25hbWUgPSBnX3N0cmR1cCAodW5p cXVlX3N5c3RlbV9idXNfbmFtZSk7DQorICAgYWdlbnQtPmxvY2FsZSA9IGdfc3RyZHVwIChsb2Nh bGUpOw0KKyAgIGFnZW50LT5yZWdpc3RyYXRpb25fb3B0aW9ucyA9IHJlZ2lzdHJhdGlvbl9vcHRp b25zICE9IE5VTEwgPyBnX3ZhcmlhbnRfcmVmIChyZWdpc3RyYXRpb25fb3B0aW9ucykgOiBOVUxM Ow0KKy0NCistICBlcnJvciA9IE5VTEw7DQorLSAgYWdlbnQtPnByb3h5ID0gZ19kYnVzX3Byb3h5 X25ld19mb3JfYnVzX3N5bmMgKEdfQlVTX1RZUEVfU1lTVEVNLA0KKy0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHX0RCVVNfUFJPWFlfRkxBR1NfRE9fTk9U X0xPQURfUFJPUEVSVElFUyB8DQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIEdfREJVU19QUk9YWV9GTEFHU19ET19OT1RfQ09OTkVDVF9TSUdOQUxTLA0K Ky0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAv KiBHREJ1c0ludGVyZmFjZUluZm8qICovDQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGFnZW50LT51bmlxdWVfc3lzdGVtX2J1c19uYW1lLA0KKy0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZ2VudC0+b2JqZWN0 X3BhdGgsDQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICJvcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRoZW50aWNhdGlvbkFnZW50IiwNCistICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogR0Nh bmNlbGxhYmxlKiAqLw0KKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAmZXJyb3IpOw0KKy0gIGlmIChhZ2VudC0+cHJveHkgPT0gTlVMTCkNCistICAgIHsN CistICAgICAgZ193YXJuaW5nICgiRXJyb3IgY29uc3RydWN0aW5nIHByb3h5IGZvciBhZ2VudDog JXMiLCBlcnJvci0+bWVzc2FnZSk7DQorLSAgICAgIGdfZXJyb3JfZnJlZSAoZXJyb3IpOw0KKy0g ICAgICAvKiBUT0RPOiBNYWtlIGF1dGhlbnRpY2F0aW9uX2FnZW50X25ldygpIHJldHVybiBOVUxM IGFuZCBzZXQgYSBHRXJyb3IgKi8NCistICAgIH0NCisrICBhZ2VudC0+cHJveHkgPSBwcm94eTsN CisgDQorICAgcmV0dXJuIGFnZW50Ow0KKyB9DQorQEAgLTIyMzQsOCArMjI0MCw2IEBAIHBvbGtp dF9iYWNrZW5kX2ludGVyYWN0aXZlX2F1dGhvcml0eV9yZWdpc3Rlcl9hdXRoZW50aWNhdGlvbl9h Z2VudCAoUG9sa2l0QmFja2VuDQorICAgY2FsbGVyX2NtZGxpbmUgPSBOVUxMOw0KKyAgIGFnZW50 ID0gTlVMTDsNCisgDQorLSAgLyogVE9ETzogdmFsaWRhdGUgdGhhdCBvYmplY3QgcGF0aCBpcyB3 ZWxsLWZvcm1lZCAqLw0KKy0NCisgICBpbnRlcmFjdGl2ZV9hdXRob3JpdHkgPSBQT0xLSVRfQkFD S0VORF9JTlRFUkFDVElWRV9BVVRIT1JJVFkgKGF1dGhvcml0eSk7DQorICAgcHJpdiA9IFBPTEtJ VF9CQUNLRU5EX0lOVEVSQUNUSVZFX0FVVEhPUklUWV9HRVRfUFJJVkFURSAoaW50ZXJhY3RpdmVf YXV0aG9yaXR5KTsNCisgDQorQEAgLTIzMjIsNyArMjMyNiwxMCBAQCBwb2xraXRfYmFja2VuZF9p bnRlcmFjdGl2ZV9hdXRob3JpdHlfcmVnaXN0ZXJfYXV0aGVudGljYXRpb25fYWdlbnQgKFBvbGtp dEJhY2tlbg0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb2xraXRfc3lz dGVtX2J1c19uYW1lX2dldF9uYW1lIChQT0xLSVRfU1lTVEVNX0JVU19OQU1FIChjYWxsZXIpKSwN CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9jYWxlLA0KKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvYmplY3RfcGF0aCwNCistICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9ucyk7DQorKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIG9wdGlvbnMsDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGVycm9yKTsNCisrICBpZiAoIWFnZW50KQ0KKysgICAgZ290byBvdXQ7DQorIA0KKyAg IGdfaGFzaF90YWJsZV9pbnNlcnQgKHByaXYtPmhhc2hfc2NvcGVfdG9fYXV0aGVudGljYXRpb25f YWdlbnQsDQorICAgICAgICAgICAgICAgICAgICAgICAgZ19vYmplY3RfcmVmIChzdWJqZWN0KSwN CmRpZmYgLS1naXQgYS9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy8wM19Qb2xraXRBZ2VudFNl c3Npb24tZml4LXJhY2UtYmV0d2Vlbi1jaGlsZC1hbmQtaW8td2F0LnBhdGNoIGIvcGF0Y2hlcy9w b2xraXQtMC4xMDUvMC4xMTMvMDNfUG9sa2l0QWdlbnRTZXNzaW9uLWZpeC1yYWNlLWJldHdlZW4t Y2hpbGQtYW5kLWlvLXdhdC5wYXRjaA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAw MDAwMC4uOTU2MDk5YjZkDQotLS0gL2Rldi9udWxsDQorKysgYi9wYXRjaGVzL3BvbGtpdC0wLjEw NS8wLjExMy8wM19Qb2xraXRBZ2VudFNlc3Npb24tZml4LXJhY2UtYmV0d2Vlbi1jaGlsZC1hbmQt aW8td2F0LnBhdGNoDQpAQCAtMCwwICsxLDEyMCBAQA0KK0Zyb206IFJ1aSBNYXRvcyA8dGlhZ29t YXRvc0BnbWFpbC5jb20+DQorRGF0ZTogVGh1LCA2IEZlYiAyMDE0IDE4OjQxOjE4ICswMTAwDQor U3ViamVjdDogUG9sa2l0QWdlbnRTZXNzaW9uOiBmaXggcmFjZSBiZXR3ZWVuIGNoaWxkIGFuZCBp byB3YXRjaGVzDQorDQorVGhlIGhlbHBlciBmbHVzaGVzIGFuZCBmZGF0YXN5bmNzIHN0ZG91dCBh bmQgc3RkZXJyIGJlZm9yZSB0ZXJtaW5hdGluZw0KK2J1dCB0aGlzIGRvZXNuJ3QgZ3VhcmFudGVl IHRoYXQgb3VyIGlvIHdhdGNoIGlzIGNhbGxlZCBiZWZvcmUgb3VyDQorY2hpbGQgd2F0Y2guIFRo aXMgbWVhbnMgdGhhdCB3ZSBjYW4gZW5kIHVwIHdpdGggYSBzdWNjZXNzZnVsIHJldHVybg0KK2Zy b20gdGhlIGhlbHBlciB3aGljaCB3ZSBzdGlsbCByZXBvcnQgYXMgYSBmYWlsdXJlLg0KKw0KK0lm IHdlIGFkZCBHX0lPX0hVUCBhbmQgR19JT19FUlIgdG8gdGhlIGNvbmRpdGlvbnMgd2UgbG9vayBm b3IgaW4gdGhlDQoraW8gd2F0Y2ggYW5kIHRoZSBjaGlsZCB0ZXJtaW5hdGVzIHdlIHN0aWxsIHJ1 biB0aGUgaW8gd2F0Y2ggaGFuZGxlcg0KK3doaWNoIHdpbGwgY29tcGxldGUgdGhlIHNlc3Npb24u DQorDQorVGhpcyBtZWFucyB0aGF0IHRoZSBjaGlsZCB3YXRjaCBpcyBpbiBmYWN0IG5lZWRsZXNz IGFuZCB3ZSBjYW4gcmVtb3ZlDQoraXQuDQorDQorQnVnOiBodHRwczovL2J1Z3MuZnJlZWRlc2t0 b3Aub3JnL3Nob3dfYnVnLmNnaT9pZD02MDg0Nw0KK09yaWdpbjogdXBzdHJlYW0sIDAuMTEzLCBj b21taXQ6NzY1MGFkMWUwOGFiMTNiZGI0NjE3ODNjNDk5NWQxODZkOTM5Mjg0MA0KK0J1ZzogaHR0 cDovL2J1Z3MuZnJlZWRlc2t0b3Aub3JnL3Nob3dfYnVnLmNnaT9pZD0zMDUxNQ0KK0J1Zy1VYnVu dHU6IGh0dHBzOi8vbGF1bmNocGFkLm5ldC9idWdzLzY0OTkzOQ0KK0J1Zy1VYnVudHU6IGh0dHBz Oi8vbGF1bmNocGFkLm5ldC9idWdzLzQ0NTMwMw0KKy0tLQ0KKyBzcmMvcG9sa2l0YWdlbnQvcG9s a2l0YWdlbnRzZXNzaW9uLmMgfCA0NyArKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0NCisgMSBmaWxlIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDM2IGRlbGV0aW9ucygtKQ0K Kw0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRzZXNzaW9uLmMgYi9z cmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRzZXNzaW9uLmMNCitpbmRleCA4MTI5Y2Q5Li5hNjU4 YTIyIDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudHNlc3Npb24uYw0K KysrKyBiL3NyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudHNlc3Npb24uYw0KK0BAIC05Miw3ICs5 Miw2IEBAIHN0cnVjdCBfUG9sa2l0QWdlbnRTZXNzaW9uDQorICAgaW50IGNoaWxkX3N0ZG91dDsN CisgICBHUGlkIGNoaWxkX3BpZDsNCisgDQorLSAgR1NvdXJjZSAqY2hpbGRfd2F0Y2hfc291cmNl Ow0KKyAgIEdTb3VyY2UgKmNoaWxkX3N0ZG91dF93YXRjaF9zb3VyY2U7DQorICAgR0lPQ2hhbm5l bCAqY2hpbGRfc3Rkb3V0X2NoYW5uZWw7DQorIA0KK0BAIC0zNzcsMTMgKzM3Niw2IEBAIGtpbGxf aGVscGVyIChQb2xraXRBZ2VudFNlc3Npb24gKnNlc3Npb24pDQorICAgICAgIHNlc3Npb24tPmNo aWxkX3BpZCA9IDA7DQorICAgICB9DQorIA0KKy0gIGlmIChzZXNzaW9uLT5jaGlsZF93YXRjaF9z b3VyY2UgIT0gTlVMTCkNCistICAgIHsNCistICAgICAgZ19zb3VyY2VfZGVzdHJveSAoc2Vzc2lv bi0+Y2hpbGRfd2F0Y2hfc291cmNlKTsNCistICAgICAgZ19zb3VyY2VfdW5yZWYgKHNlc3Npb24t PmNoaWxkX3dhdGNoX3NvdXJjZSk7DQorLSAgICAgIHNlc3Npb24tPmNoaWxkX3dhdGNoX3NvdXJj ZSA9IE5VTEw7DQorLSAgICB9DQorLQ0KKyAgIGlmIChzZXNzaW9uLT5jaGlsZF9zdGRvdXRfd2F0 Y2hfc291cmNlICE9IE5VTEwpDQorICAgICB7DQorICAgICAgIGdfc291cmNlX2Rlc3Ryb3kgKHNl c3Npb24tPmNoaWxkX3N0ZG91dF93YXRjaF9zb3VyY2UpOw0KK0BAIC00MjksMjYgKzQyMSw2IEBA IGNvbXBsZXRlX3Nlc3Npb24gKFBvbGtpdEFnZW50U2Vzc2lvbiAqc2Vzc2lvbiwNCisgICAgIH0N CisgfQ0KKyANCistc3RhdGljIHZvaWQNCistY2hpbGRfd2F0Y2hfZnVuYyAoR1BpZCAgICAgcGlk LA0KKy0gICAgICAgICAgICAgICAgICBnaW50ICAgICBzdGF0dXMsDQorLSAgICAgICAgICAgICAg ICAgIGdwb2ludGVyIHVzZXJfZGF0YSkNCistew0KKy0gIFBvbGtpdEFnZW50U2Vzc2lvbiAqc2Vz c2lvbiA9IFBPTEtJVF9BR0VOVF9TRVNTSU9OICh1c2VyX2RhdGEpOw0KKy0NCistICBpZiAoR19V TkxJS0VMWSAoX3Nob3dfZGVidWcgKCkpKQ0KKy0gICAgew0KKy0gICAgICBnX3ByaW50ICgiUG9s a2l0QWdlbnRTZXNzaW9uOiBpbiBjaGlsZF93YXRjaF9mdW5jIGZvciBwaWQgJWQgKFdJRkVYSVRF RD0lZCBXRVhJVFNUQVRVUz0lZClcbiIsDQorLSAgICAgICAgICAgICAgIChnaW50KSBwaWQsDQor LSAgICAgICAgICAgICAgIFdJRkVYSVRFRChzdGF0dXMpLA0KKy0gICAgICAgICAgICAgICBXRVhJ VFNUQVRVUyhzdGF0dXMpKTsNCistICAgIH0NCistDQorLSAgLyoga2lsbCBhbGwgdGhlIHdhdGNo ZXMgd2UgaGF2ZSBzZXQgdXAsIGV4Y2VwdCBmb3IgdGhlIGNoaWxkIHNpbmNlIGl0IGhhcyBleGl0 ZWQgYWxyZWFkeSAqLw0KKy0gIHNlc3Npb24tPmNoaWxkX3BpZCA9IDA7DQorLSAgY29tcGxldGVf c2Vzc2lvbiAoc2Vzc2lvbiwgRkFMU0UpOw0KKy19DQorLQ0KKyBzdGF0aWMgZ2Jvb2xlYW4NCisg aW9fd2F0Y2hfaGF2ZV9kYXRhIChHSU9DaGFubmVsICAgICpjaGFubmVsLA0KKyAgICAgICAgICAg ICAgICAgICAgIEdJT0NvbmRpdGlvbiAgIGNvbmRpdGlvbiwNCitAQCAtNDc1LDEwICs0NDcsMTMg QEAgaW9fd2F0Y2hfaGF2ZV9kYXRhIChHSU9DaGFubmVsICAgICpjaGFubmVsLA0KKyAgICAgICAg ICAgICAgICAgICAgICAgICAgIE5VTEwsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVM TCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAmZXJyb3IpOw0KKy0gIGlmIChlcnJvciAh PSBOVUxMKQ0KKysgIGlmIChlcnJvciAhPSBOVUxMIHx8IGxpbmUgPT0gTlVMTCkNCisgICAgIHsN CistICAgICAgZ193YXJuaW5nICgiRXJyb3IgcmVhZGluZyBsaW5lIGZyb20gaGVscGVyOiAlcyIs IGVycm9yLT5tZXNzYWdlKTsNCistICAgICAgZ19lcnJvcl9mcmVlIChlcnJvcik7DQorKyAgICAg IC8qIEluIGNhc2Ugd2UgZ2V0IGp1c3QgR19JT19IVVAsIGxpbmUgaXMgTlVMTCBidXQgZXJyb3Ig aXMNCisrICAgICAgICAgdW5zZXQuKi8NCisrICAgICAgZ193YXJuaW5nICgiRXJyb3IgcmVhZGlu ZyBsaW5lIGZyb20gaGVscGVyOiAlcyIsDQorKyAgICAgICAgICAgICAgICAgZXJyb3IgPyBlcnJv ci0+bWVzc2FnZSA6ICJub3RoaW5nIHRvIHJlYWQiKTsNCisrICAgICAgZ19jbGVhcl9lcnJvciAo JmVycm9yKTsNCisgDQorICAgICAgIGNvbXBsZXRlX3Nlc3Npb24gKHNlc3Npb24sIEZBTFNFKTsN CisgICAgICAgZ290byBvdXQ7DQorQEAgLTU0MCw2ICs1MTUsOSBAQCBpb193YXRjaF9oYXZlX2Rh dGEgKEdJT0NoYW5uZWwgICAgKmNoYW5uZWwsDQorICAgZ19mcmVlIChsaW5lKTsNCisgICBnX2Zy ZWUgKHVuZXNjYXBlZCk7DQorIA0KKysgIGlmIChjb25kaXRpb24gJiAoR19JT19FUlIgfCBHX0lP X0hVUCkpDQorKyAgICBjb21wbGV0ZV9zZXNzaW9uIChzZXNzaW9uLCBGQUxTRSk7DQorKw0KKyAg IC8qIGtlZXAgdGhlIElPQ2hhbm5lbCBhcm91bmQgKi8NCisgICByZXR1cm4gVFJVRTsNCisgfQ0K K0BAIC02NTAsMTIgKzYyOCw5IEBAIHBvbGtpdF9hZ2VudF9zZXNzaW9uX2luaXRpYXRlIChQb2xr aXRBZ2VudFNlc3Npb24gKnNlc3Npb24pDQorICAgaWYgKEdfVU5MSUtFTFkgKF9zaG93X2RlYnVn ICgpKSkNCisgICAgIGdfcHJpbnQgKCJQb2xraXRBZ2VudFNlc3Npb246IHNwYXduZWQgaGVscGVy IHdpdGggcGlkICVkXG4iLCAoZ2ludCkgc2Vzc2lvbi0+Y2hpbGRfcGlkKTsNCisgDQorLSAgc2Vz c2lvbi0+Y2hpbGRfd2F0Y2hfc291cmNlID0gZ19jaGlsZF93YXRjaF9zb3VyY2VfbmV3IChzZXNz aW9uLT5jaGlsZF9waWQpOw0KKy0gIGdfc291cmNlX3NldF9jYWxsYmFjayAoc2Vzc2lvbi0+Y2hp bGRfd2F0Y2hfc291cmNlLCAoR1NvdXJjZUZ1bmMpIGNoaWxkX3dhdGNoX2Z1bmMsIHNlc3Npb24s IE5VTEwpOw0KKy0gIGdfc291cmNlX2F0dGFjaCAoc2Vzc2lvbi0+Y2hpbGRfd2F0Y2hfc291cmNl LCBnX21haW5fY29udGV4dF9nZXRfdGhyZWFkX2RlZmF1bHQgKCkpOw0KKy0NCisgICBzZXNzaW9u LT5jaGlsZF9zdGRvdXRfY2hhbm5lbCA9IGdfaW9fY2hhbm5lbF91bml4X25ldyAoc2Vzc2lvbi0+ Y2hpbGRfc3Rkb3V0KTsNCistICBzZXNzaW9uLT5jaGlsZF9zdGRvdXRfd2F0Y2hfc291cmNlID0g Z19pb19jcmVhdGVfd2F0Y2ggKHNlc3Npb24tPmNoaWxkX3N0ZG91dF9jaGFubmVsLCBHX0lPX0lO KTsNCisrICBzZXNzaW9uLT5jaGlsZF9zdGRvdXRfd2F0Y2hfc291cmNlID0gZ19pb19jcmVhdGVf d2F0Y2ggKHNlc3Npb24tPmNoaWxkX3N0ZG91dF9jaGFubmVsLA0KKysgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR19JT19JTiB8IEdfSU9f RVJSIHwgR19JT19IVVApOw0KKyAgIGdfc291cmNlX3NldF9jYWxsYmFjayAoc2Vzc2lvbi0+Y2hp bGRfc3Rkb3V0X3dhdGNoX3NvdXJjZSwgKEdTb3VyY2VGdW5jKSBpb193YXRjaF9oYXZlX2RhdGEs IHNlc3Npb24sIE5VTEwpOw0KKyAgIGdfc291cmNlX2F0dGFjaCAoc2Vzc2lvbi0+Y2hpbGRfc3Rk b3V0X3dhdGNoX3NvdXJjZSwgZ19tYWluX2NvbnRleHRfZ2V0X3RocmVhZF9kZWZhdWx0ICgpKTsN CisgDQpkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvQ1ZFLTIwMTUtMzI1 NS1GaXgtR0hhc2hUYWJsZS11c2FnZS5wYXRjaCBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEz L0NWRS0yMDE1LTMyNTUtRml4LUdIYXNoVGFibGUtdXNhZ2UucGF0Y2gNCm5ldyBmaWxlIG1vZGUg MTAwNjQ0DQppbmRleCAwMDAwMDAwMDAuLmYyMGZhYjJmOQ0KLS0tIC9kZXYvbnVsbA0KKysrIGIv cGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvQ1ZFLTIwMTUtMzI1NS1GaXgtR0hhc2hUYWJsZS11 c2FnZS5wYXRjaA0KQEAgLTAsMCArMSw2OCBAQA0KK0Zyb206ID0/dXRmLTg/cT9NaWxvc2xhdl9U cm1hPUM0PThEPz0gPG1pdHJAcmVkaGF0LmNvbT4NCitEYXRlOiBXZWQsIDEgQXByIDIwMTUgMDU6 MjI6MzcgKzAyMDANCitTdWJqZWN0OiBDVkUtMjAxNS0zMjU1IEZpeCBHSGFzaFRhYmxlIHVzYWdl Lg0KKw0KK0Rvbid0IGFzc3VtZSB0aGF0IHRoZSBoYXNoIHRhYmxlIHdpdGggZnJlZSBib3RoIHRo ZSBrZXkgYW5kIHRoZSB2YWx1ZQ0KK2F0IHRoZSBzYW1lIHRpbWUsIHN1cHBseSBwcm9wZXIgZGVh bGxvY2F0aW9uIGZ1bmN0aW9ucyBmb3IgdGhlIGtleQ0KK2FuZCB2YWx1ZSBzZXBhcmF0ZWx5Lg0K Kw0KK1RoZW4gZHJvcCBQYXJzZWRBY3Rpb246OmFjdGlvbl9pZCB3aGljaCBpcyBubyBsb25nZXIg dXNlZCBmb3IgYW55dGhpbmcuDQorDQoraHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9zaG93 X2J1Zy5jZ2k/aWQ9Njk1MDENCithbmQNCitodHRwczovL2J1Z3MuZnJlZWRlc2t0b3Aub3JnL3No b3dfYnVnLmNnaT9pZD04MzU5MA0KKw0KK0NWRTogQ1ZFLTIwMTUtMzI1NQ0KK09yaWdpbjogdXBz dHJlYW0sIDAuMTEzLCBjb21taXQ6OWY1ZTBjNzMxNzg0MDAzYmQ0ZDZmYzc1YWI3MzlmZjhiMmVh MjY5Zg0KK0J1Zy1EZWJpYW46IGh0dHBzOi8vYnVncy5kZWJpYW4ub3JnLzc5NjEzNA0KKy0tLQ0K KyBzcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kYWN0aW9ucG9vbC5jIHwgOCArKystLS0t LQ0KKyAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQ0KKw0K K2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kYWN0aW9ucG9vbC5j IGIvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGFjdGlvbnBvb2wuYw0KK2luZGV4IGUz ZWQzOGQuLjQyNzBkNGUgMTAwNjQ0DQorLS0tIGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFj a2VuZGFjdGlvbnBvb2wuYw0KKysrKyBiL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRh Y3Rpb25wb29sLmMNCitAQCAtNDAsNyArNDAsNiBAQA0KKyANCisgdHlwZWRlZiBzdHJ1Y3QNCisg ew0KKy0gIGdjaGFyICphY3Rpb25faWQ7DQorICAgZ2NoYXIgKnZlbmRvcl9uYW1lOw0KKyAgIGdj aGFyICp2ZW5kb3JfdXJsOw0KKyAgIGdjaGFyICppY29uX25hbWU7DQorQEAgLTYyLDcgKzYxLDYg QEAgdHlwZWRlZiBzdHJ1Y3QNCisgc3RhdGljIHZvaWQNCisgcGFyc2VkX2FjdGlvbl9mcmVlIChQ YXJzZWRBY3Rpb24gKmFjdGlvbikNCisgew0KKy0gIGdfZnJlZSAoYWN0aW9uLT5hY3Rpb25faWQp Ow0KKyAgIGdfZnJlZSAoYWN0aW9uLT52ZW5kb3JfbmFtZSk7DQorICAgZ19mcmVlIChhY3Rpb24t PnZlbmRvcl91cmwpOw0KKyAgIGdfZnJlZSAoYWN0aW9uLT5pY29uX25hbWUpOw0KK0BAIC0xMzQs NyArMTMyLDcgQEAgcG9sa2l0X2JhY2tlbmRfYWN0aW9uX3Bvb2xfaW5pdCAoUG9sa2l0QmFja2Vu ZEFjdGlvblBvb2wgKnBvb2wpDQorIA0KKyAgIHByaXYtPnBhcnNlZF9hY3Rpb25zID0gZ19oYXNo X3RhYmxlX25ld19mdWxsIChnX3N0cl9oYXNoLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBnX3N0cl9lcXVhbCwNCistICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwNCisrICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ19mcmVlLA0KKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoR0Rlc3Ryb3lOb3RpZnkpIHBhcnNlZF9h Y3Rpb25fZnJlZSk7DQorIA0KKyAgIHByaXYtPnBhcnNlZF9maWxlcyA9IGdfaGFzaF90YWJsZV9u ZXdfZnVsbCAoZ19zdHJfaGFzaCwNCitAQCAtOTg4LDcgKzk4Niw2IEBAIF9lbmQgKHZvaWQgKmRh dGEsIGNvbnN0IGNoYXIgKmVsKQ0KKyAgICAgICAgICAgaWNvbl9uYW1lID0gcGQtPmdsb2JhbF9p Y29uX25hbWU7DQorIA0KKyAgICAgICAgIGFjdGlvbiA9IGdfbmV3MCAoUGFyc2VkQWN0aW9uLCAx KTsNCistICAgICAgICBhY3Rpb24tPmFjdGlvbl9pZCA9IGdfc3RyZHVwIChwZC0+YWN0aW9uX2lk KTsNCisgICAgICAgICBhY3Rpb24tPnZlbmRvcl9uYW1lID0gZ19zdHJkdXAgKHZlbmRvcik7DQor ICAgICAgICAgYWN0aW9uLT52ZW5kb3JfdXJsID0gZ19zdHJkdXAgKHZlbmRvcl91cmwpOw0KKyAg ICAgICAgIGFjdGlvbi0+aWNvbl9uYW1lID0gZ19zdHJkdXAgKGljb25fbmFtZSk7DQorQEAgLTEw MDMsNyArMTAwMCw4IEBAIF9lbmQgKHZvaWQgKmRhdGEsIGNvbnN0IGNoYXIgKmVsKQ0KKyAgICAg ICAgIGFjdGlvbi0+aW1wbGljaXRfYXV0aG9yaXphdGlvbl9pbmFjdGl2ZSA9IHBkLT5pbXBsaWNp dF9hdXRob3JpemF0aW9uX2luYWN0aXZlOw0KKyAgICAgICAgIGFjdGlvbi0+aW1wbGljaXRfYXV0 aG9yaXphdGlvbl9hY3RpdmUgPSBwZC0+aW1wbGljaXRfYXV0aG9yaXphdGlvbl9hY3RpdmU7DQor IA0KKy0gICAgICAgIGdfaGFzaF90YWJsZV9pbnNlcnQgKHByaXYtPnBhcnNlZF9hY3Rpb25zLCBh Y3Rpb24tPmFjdGlvbl9pZCwgYWN0aW9uKTsNCisrICAgICAgICBnX2hhc2hfdGFibGVfaW5zZXJ0 IChwcml2LT5wYXJzZWRfYWN0aW9ucywgZ19zdHJkdXAgKHBkLT5hY3Rpb25faWQpLA0KKysgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbik7DQorIA0KKyAgICAgICAgIC8qIHdlIHN0 ZWFsIHRoZXNlIGhhc2ggdGFibGVzICovDQorICAgICAgICAgcGQtPmFubm90YXRpb25zID0gTlVM TDsNCmRpZmYgLS1naXQgYS9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9DVkUtMjAxNS00NjI1 LUJpbmQtdXNlLW9mLWNvb2tpZXMtdG8tc3BlY2lmaWMtdWlkcy5wYXRjaCBiL3BhdGNoZXMvcG9s a2l0LTAuMTA1LzAuMTEzL0NWRS0yMDE1LTQ2MjUtQmluZC11c2Utb2YtY29va2llcy10by1zcGVj aWZpYy11aWRzLnBhdGNoDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi44 YjU4NGE3NjQNCi0tLSAvZGV2L251bGwNCisrKyBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEz L0NWRS0yMDE1LTQ2MjUtQmluZC11c2Utb2YtY29va2llcy10by1zcGVjaWZpYy11aWRzLnBhdGNo DQpAQCAtMCwwICsxLDQ4NCBAQA0KK0Zyb206IENvbGluIFdhbHRlcnMgPHdhbHRlcnNAcmVkaGF0 LmNvbT4NCitEYXRlOiBXZWQsIDE3IEp1biAyMDE1IDEzOjA3OjAyIC0wNDAwDQorU3ViamVjdDog Q1ZFLTIwMTUtNDYyNTogQmluZCB1c2Ugb2YgY29va2llcyB0byBzcGVjaWZpYyB1aWRzDQorTUlN RS1WZXJzaW9uOiAxLjANCitDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9InV0Zi04 Ig0KK0NvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQNCisNCitodHRwOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL2FyY2hpdmVzL3BvbGtpdC1kZXZlbC8yMDE1LUp1bmUvMDAwNDI1Lmh0bWwN CisNCitUaGUgImNvb2tpZSIgdmFsdWUgdGhhdCBQb2xraXQgaGFuZHMgb3V0IGlzIGdsb2JhbCB0 byBhbGwgcG9sa2l0DQordXNlcnMuICBBbmQgd2hlbiBgQXV0aGVudGljYXRpb25BZ2VudFJlc3Bv bnNlYCBpcyBpbnZva2VkLCB3ZQ0KK3ByZXZpb3VzbHkgb25seSByZWNlaXZlZCB0aGUgY29va2ll IGFuZCAqdGFyZ2V0KiBpZGVudGl0eSwgYW5kDQorYXR0ZW1wdGVkIHRvIGZpbmQgYW4gYWdlbnQg ZnJvbSB0aGF0Lg0KKw0KK1RoZSBwcm9ibGVtIGlzIHRoYXQgdGhlIGN1cnJlbnQgY29va2llIGlz IGp1c3QgYW4gaW50ZWdlcg0KK2NvdW50ZXIsIGFuZCBpZiBpdCBvdmVyZmxvd2VkLCBpdCB3b3Vs ZCBiZSBwb3NzaWJsZSBmb3INCithbiBzdWNjZXNzZnVsIGF1dGhvcml6YXRpb24gaW4gb25lIHNl c3Npb24gdG8gdHJpZ2dlciBhIHJlc3BvbnNlDQoraW4gYW5vdGhlciBzZXNzaW9uLg0KKw0KK1Ro ZSBvdmVyZmxvdyBhbmQgYWJpbGl0eSB0byBndWVzcyB0aGUgY29va2llIHdlcmUgZml4ZWQgYnkg dGhlDQorcHJldmlvdXMgcGF0Y2guDQorDQorVGhpcyBwYXRjaCBpcyBjb25jZXB0dWFsbHkgZnVy dGhlciBoYXJkZW5pbmcgb24gdG9wIG9mIHRoYXQuICBQb2xraXQNCitjdXJyZW50bHkgdHJlYXRz IHVpZHMgYXMgZXF1aXZhbGVudCBmcm9tIGEgc2VjdXJpdHkgZG9tYWluDQorcGVyc3BlY3RpdmU7 IHRoZXJlIGlzIG5vIHN1cHBvcnQgZm9yDQorU0VMaW51eC9BcHBBcm1vci9ldGMuIGRpZmZlcmVu dGlhdGlvbi4NCisNCitXZSBjYW4gcmV0cmlldmUgdGhlIHVpZCBmcm9tIGBnZXR1aWQoKWAgaW4g dGhlIHNldHVpZCBoZWxwZXIsIHdoaWNoDQorYWxsb3dzIHVzIHRvIGVuc3VyZSB0aGUgdWlkIGlu dm9raW5nIGBBdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2UyYA0KK21hdGNoZXMgdGhhdCBvZiB0 aGUgYWdlbnQuDQorDQorVGhlbiB0aGUgYXV0aG9yaXR5IG9ubHkgbG9va3MgYXQgYXV0aGVudGlj YXRpb24gc2Vzc2lvbnMgbWF0Y2hpbmcgdGhlDQorY29va2llIHRoYXQgd2VyZSBjcmVhdGVkIGJ5 IGEgbWF0Y2hpbmcgdWlkLCB0aHVzIHJlbW92aW5nIHRoZSBhYmlsaXR5DQorZm9yIGRpZmZlcmVu dCB1aWRzIHRvIGludGVyZmVyZSB3aXRoIGVhY2ggb3RoZXIgZW50aXJlbHkuDQorDQorU2V2ZXJh bCBmaXhlcyB0byB0aGlzIHBhdGNoIHdlcmUgY29udHJpYnV0ZWQgYnk6DQorTWlsb3NsYXYgVHJt YcSNIDxtaXRyQHJlZGhhdC5jb20+DQorDQorQnVnOiBodHRwczovL2J1Z3MuZnJlZWRlc2t0b3Au b3JnL3Nob3dfYnVnLmNnaT9pZD05MDgzNw0KK0NWRTogQ1ZFLTIwMTUtNDYyNQ0KK1JlcG9ydGVk LWJ5OiBUYXZpcyBPcm1hbmR5IDx0YXZpc29AZ29vZ2xlLmNvbT4NCitSZXZpZXdlZC1ieTogTWls b3NsYXYgVHJtYcSNIDxtaXRyQHJlZGhhdC5jb20+DQorU2lnbmVkLW9mZi1ieTogQ29saW4gV2Fs dGVycyA8d2FsdGVyc0ByZWRoYXQuY29tPg0KK09yaWdpbjogdXBzdHJlYW0sIDAuMTEzLCBjb21t aXQ6NDkzYWE1ZGMxZDI3OGFiOTA5NzExMGMxMjYyZjUyMjliYmFmMTc2Ng0KK0J1Zy1EZWJpYW46 IGh0dHBzOi8vYnVncy5kZWJpYW4ub3JnLzc5NjEzNA0KKy0tLQ0KKyAuLi4uZnJlZWRlc2t0b3Au UG9saWN5S2l0MS5BdXRoZW50aWNhdGlvbkFnZW50LnhtbCB8IDE0ICsrKystDQorIGRhdGEvb3Jn LmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aG9yaXR5LnhtbCAgICAgIHwgMjQgKysrKysrKyst DQorIC4uLmVyZmFjZS1vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHkueG1sIHwg NDYgKysrKysrKysrKysrKysrLQ0KKyBkb2NzL3BvbGtpdC9vdmVydmlldy54bWwgICAgICAgICAg ICAgICAgICAgICAgICAgICB8IDE4ICsrKystLS0NCisgc3JjL3BvbGtpdC9wb2xraXRhdXRob3Jp dHkuYyAgICAgICAgICAgICAgICAgICAgICAgfCAxMyArKysrLQ0KKyBzcmMvcG9sa2l0YmFja2Vu ZC9wb2xraXRiYWNrZW5kYXV0aG9yaXR5LmMgICAgICAgICB8IDYxICsrKysrKysrKysrKysrKysr KysrKy0NCisgc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGF1dGhvcml0eS5oICAgICAg ICAgfCAgMiArDQorIC4uLi9wb2xraXRiYWNrZW5kaW50ZXJhY3RpdmVhdXRob3JpdHkuYyAgICAg ICAgICAgIHwgMzkgKysrKysrKysrKysrLS0NCisgOCBmaWxlcyBjaGFuZ2VkLCAxOTggaW5zZXJ0 aW9ucygrKSwgMTkgZGVsZXRpb25zKC0pDQorDQorZGlmZiAtLWdpdCBhL2RhdGEvb3JnLmZyZWVk ZXNrdG9wLlBvbGljeUtpdDEuQXV0aGVudGljYXRpb25BZ2VudC54bWwgYi9kYXRhL29yZy5mcmVl ZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhlbnRpY2F0aW9uQWdlbnQueG1sDQoraW5kZXggM2I1MTlj Mi4uNWJlZWY3ZCAxMDA2NDQNCistLS0gYS9kYXRhL29yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQx LkF1dGhlbnRpY2F0aW9uQWdlbnQueG1sDQorKysrIGIvZGF0YS9vcmcuZnJlZWRlc2t0b3AuUG9s aWN5S2l0MS5BdXRoZW50aWNhdGlvbkFnZW50LnhtbA0KK0BAIC04LDcgKzgsMTkgQEANCisgICAg IDxhbm5vdGF0aW9uIG5hbWU9Im9yZy5ndGsuRWdnREJ1cy5Eb2NTdHJpbmciIHZhbHVlPSI8cGFy YT5UaGlzIEQtQnVzIGludGVyZmFjZSBpcyB1c2VkIGZvciBjb21tdW5pY2F0aW9uIGJldHdlZW4g dGhlIHN5c3RlbS13aWRlIFBvbGljeUtpdCBkYWVtb24gYW5kIG9uZSBvciBtb3JlIGF1dGhlbnRp Y2F0aW9uIGFnZW50cyBlYWNoIHJ1bm5pbmcgaW4gYSB1c2VyIHNlc3Npb24uPC9wYXJhPjxwYXJh PkFuIGF1dGhlbnRpY2F0aW9uIGFnZW50IG11c3QgaW1wbGVtZW50IHRoaXMgaW50ZXJmYWNlIGFu ZCByZWdpc3RlciAocGFzc2luZyB0aGUgb2JqZWN0IHBhdGggb2YgdGhlIG9iamVjdCBpbXBsZW1l bnRpbmcgdGhlIGludGVyZmFjZSkgdXNpbmcgdGhlIG9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQx LkF1dGhvcml0eS5SZWdpc3RlckF1dGhlbnRpY2F0aW9uQWdlbnQoKSBhbmQgb3JnLmZyZWVkZXNr dG9wLlBvbGljeUtpdDEuQXV0aG9yaXR5LlVucmVnaXN0ZXJBdXRoZW50aWNhdGlvbkFnZW50KCkg bWV0aG9kcyBvbiB0aGUgI29yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhvcml0eSBpbnRl cmZhY2Ugb2YgdGhlIFBvbGljeUtpdCBkYWVtb24uPC9wYXJhPiIvPg0KKyANCisgICAgIDxtZXRo b2QgbmFtZT0iQmVnaW5BdXRoZW50aWNhdGlvbiI+DQorLSAgICAgIDxhbm5vdGF0aW9uIG5hbWU9 Im9yZy5ndGsuRWdnREJ1cy5Eb2NTdHJpbmciIHZhbHVlPSI8cGFyYT5DYWxsZWQgYnkgdGhlIFBv bGljeUtpdCBkYWVtb24gd2hlbiB0aGUgYXV0aGVudGljYXRpb24gYWdlbnQgbmVlZHMgdGhlIHVz ZXIgdG8gYXV0aGVudGljYXRlIGFzIG9uZSBvZiB0aGUgaWRlbnRpdGllcyBpbiBAaWRlbnRpdGll cyBmb3IgdGhlIGFjdGlvbiB3aXRoIHRoZSBpZGVudGlmaWVyIEBhY3Rpb25faWQuPC9wYXJhPjxw YXJhPlVwb24gc3VjY2VzZnVsIGF1dGhlbnRpY2F0aW9uLCB0aGUgYXV0aGVudGljYXRpb24gYWdl bnQgbXVzdCBpbnZva2UgdGhlIG9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhvcml0eS5B dXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2UoKSBtZXRob2Qgb24gdGhlICNvcmcuZnJlZWRlc2t0 b3AuUG9saWN5S2l0MS5BdXRob3JpdHkgaW50ZXJmYWNlIG9mIHRoZSBQb2xpY3lLaXQgZGFlbW9u IGJlZm9yZSByZXR1cm5pbmcuPC9wYXJhPjxwYXJhPklmIHRoZSB1c2VyIGRpc21pc3NlcyB0aGUg YXV0aGVudGljYXRpb24gZGlhbG9nLCB0aGUgYXV0aGVudGljYXRpb24gYWdlbnQgc2hvdWxkIHJl dHVybiBhbiBlcnJvci48L3BhcmE+Ii8+DQorKyAgICAgIDxhbm5vdGF0aW9uIG5hbWU9Im9yZy5n dGsuRWdnREJ1cy5Eb2NTdHJpbmciIHZhbHVlPSI8cGFyYT5DYWxsZWQNCisrICAgICAgYnkgdGhl IFBvbGljeUtpdCBkYWVtb24gd2hlbiB0aGUgYXV0aGVudGljYXRpb24gYWdlbnQgbmVlZHMgdGhl DQorKyAgICAgIHVzZXIgdG8gYXV0aGVudGljYXRlIGFzIG9uZSBvZiB0aGUgaWRlbnRpdGllcyBp biBAaWRlbnRpdGllcyBmb3INCisrICAgICAgdGhlIGFjdGlvbiB3aXRoIHRoZSBpZGVudGlmaWVy IEBhY3Rpb25faWQuPC9wYXJhPjxwYXJhPlRoaXMNCisrICAgICAgYXV0aGVudGljYXRpb24gaXMg bm9ybWFsbHkgYWNoaWV2ZWQgdmlhIHRoZQ0KKysgICAgICBwb2xraXRfYWdlbnRfc2Vzc2lvbl9y ZXNwb25zZSgpIEFQSSwgd2hpY2ggaW52b2tlcyBhIHByaXZhdGUNCisrICAgICAgc2V0dWlkIGhl bHBlciBwcm9jZXNzIHRvIHZlcmlmeSB0aGUgYXV0aGVudGljYXRpb24uICBXaGVuDQorKyAgICAg IHN1Y2Nlc3NmdWwsIGl0IGNhbGxzIHRoZQ0KKysgICAgICBvcmcuZnJlZWRlc2t0b3AuUG9saWN5 S2l0MS5BdXRob3JpdHkuQXV0aGVudGljYXRpb25BZ2VudFJlc3BvbnNlMigpDQorKyAgICAgIG1l dGhvZCBvbiB0aGUgI29yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhvcml0eSBpbnRlcmZh Y2Ugb2YNCisrICAgICAgdGhlIFBvbGljeUtpdCBkYWVtb24gYmVmb3JlIHJldHVybmluZy4gIElm IHRoZSB1c2VyIGRpc21pc3NlcyB0aGUNCisrICAgICAgYXV0aGVudGljYXRpb24gZGlhbG9nLCB0 aGUgYXV0aGVudGljYXRpb24gYWdlbnQgc2hvdWxkIGNhbGwNCisrICAgICAgcG9sa2l0X2FnZW50 X3Nlc3Npb25fY2FuY2VsKCkuPC9wYXJhPiIvPg0KKyANCisgICAgICAgPGFyZyBuYW1lPSJhY3Rp b25faWQiIGRpcmVjdGlvbj0iaW4iIHR5cGU9InMiPg0KKyAgICAgICAgIDxhbm5vdGF0aW9uIG5h bWU9Im9yZy5ndGsuRWdnREJ1cy5Eb2NTdHJpbmciIHZhbHVlPSJUaGUgaWRlbnRpZmllciBmb3Ig dGhlIGFjdGlvbiB0aGF0IHRoZSB1c2VyIGlzIGF1dGhlbnRpY2F0aW9uIGZvci4iLz4NCitkaWZm IC0tZ2l0IGEvZGF0YS9vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHkueG1sIGIv ZGF0YS9vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHkueG1sDQoraW5kZXggZmJm YjljZC4uZjkwMjFlZSAxMDA2NDQNCistLS0gYS9kYXRhL29yZy5mcmVlZGVza3RvcC5Qb2xpY3lL aXQxLkF1dGhvcml0eS54bWwNCisrKysgYi9kYXRhL29yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQx LkF1dGhvcml0eS54bWwNCitAQCAtMzEzLDcgKzMxMywyOSBAQA0KKyAgICAgPC9tZXRob2Q+DQor IA0KKyAgICAgPG1ldGhvZCBuYW1lPSJBdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2UiPg0KKy0g ICAgICA8YW5ub3RhdGlvbiBuYW1lPSJvcmcuZ3RrLkVnZ0RCdXMuRG9jU3RyaW5nIiB2YWx1ZT0i TWV0aG9kIGZvciBhdXRoZW50aWNhdGlvbiBhZ2VudHMgdG8gaW52b2tlIG9uIHN1Y2Nlc3NmdWwg YXV0aGVudGljYXRpb24uIFRoaXMgbWV0aG9kIHdpbGwgZmFpbCB1bmxlc3MgYSBzdWZmaWNpZW50 bHkgcHJpdmlsZWdlZCBjYWxsZXIgaW52b2tlcyBpdC4iLz4NCisrICAgICAgPGFubm90YXRpb24g bmFtZT0ib3JnLmd0ay5FZ2dEQnVzLkRvY1N0cmluZyIgdmFsdWU9Ik1ldGhvZCBmb3IgYXV0aGVu dGljYXRpb24gYWdlbnRzIHRvIGludm9rZSBvbiBzdWNjZXNzZnVsDQorK2F1dGhlbnRpY2F0aW9u LCBpbnRlbmRlZCBvbmx5IGZvciB1c2UgYnkgYSBwcml2aWxlZ2VkIGhlbHBlciBwcm9jZXNzDQor K2ludGVybmFsIHRvIHBvbGtpdC4iLz4NCisrDQorKyAgICAgIDxhcmcgbmFtZT0iY29va2llIiBk aXJlY3Rpb249ImluIiB0eXBlPSJzIj4NCisrICAgICAgICA8YW5ub3RhdGlvbiBuYW1lPSJvcmcu Z3RrLkVnZ0RCdXMuRG9jU3RyaW5nIiB2YWx1ZT0iVGhlIGNvb2tpZSBpZGVudGlmeWluZyB0aGUg YXV0aGVudGljYXRpb24gcmVxdWVzdCB0aGF0IHdhcyBwYXNzZWQgdG8gdGhlIGF1dGhlbnRpY2F0 aW9uIGFnZW50LiIvPg0KKysgICAgICA8L2FyZz4NCisrDQorKyAgICAgIDxhcmcgbmFtZT0iaWRl bnRpdHkiIGRpcmVjdGlvbj0iaW4iIHR5cGU9IihzYXtzdn0pIj4NCisrICAgICAgICA8YW5ub3Rh dGlvbiBuYW1lPSJvcmcuZ3RrLkVnZ0RCdXMuVHlwZSIgdmFsdWU9IklkZW50aXR5Ii8+DQorKyAg ICAgICAgPGFubm90YXRpb24gbmFtZT0ib3JnLmd0ay5FZ2dEQnVzLkRvY1N0cmluZyIgdmFsdWU9 IkEgI0lkZW50aXR5IHN0cnVjdCBkZXNjcmliaW5nIHdoYXQgaWRlbnRpdHkgd2FzIGF1dGhlbnRp Y2F0ZWQuIi8+DQorKyAgICAgIDwvYXJnPg0KKysgICAgPC9tZXRob2Q+DQorKw0KKysgICAgPG1l dGhvZCBuYW1lPSJBdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2UyIj4NCisrICAgICAgPGFubm90 YXRpb24gbmFtZT0ib3JnLmd0ay5FZ2dEQnVzLkRvY1N0cmluZyIgdmFsdWU9Ik1ldGhvZCBmb3Ig YXV0aGVudGljYXRpb24gYWdlbnRzIHRvIGludm9rZSBvbiBzdWNjZXNzZnVsDQorK2F1dGhlbnRp Y2F0aW9uLCBpbnRlbmRlZCBvbmx5IGZvciB1c2UgYnkgYSBwcml2aWxlZ2VkIGhlbHBlciBwcm9j ZXNzDQorK2ludGVybmFsIHRvIHBvbGtpdC4gICBOb3RlIHRoaXMgbWV0aG9kIHdhcyBhZGRlZCBp biAwLjExNCwgYW5kIHNob3VsZCBiZSBwcmVmZXJyZWQgb3ZlciBBdXRoZW50aWNhdGlvbkFnZW50 UmVzcG9uc2UNCisrYXMgaXQgZml4ZXMgYSBzZWN1cml0eSBpc3N1ZS4iLz4NCisrDQorKyAgICAg IDxhcmcgbmFtZT0idWlkIiBkaXJlY3Rpb249ImluIiB0eXBlPSJ1Ij4NCisrICAgICAgICA8YW5u b3RhdGlvbiBuYW1lPSJvcmcuZ3RrLkVnZ0RCdXMuRG9jU3RyaW5nIiB2YWx1ZT0iVGhlIHJlYWwg dWlkIG9mIHRoZSBhZ2VudC4gIE5vcm1hbGx5IHNldCBieSB0aGUgc2V0dWlkIGhlbHBlciBwcm9n cmFtLiIvPg0KKysgICAgICA8L2FyZz4NCisgDQorICAgICAgIDxhcmcgbmFtZT0iY29va2llIiBk aXJlY3Rpb249ImluIiB0eXBlPSJzIj4NCisgICAgICAgICA8YW5ub3RhdGlvbiBuYW1lPSJvcmcu Z3RrLkVnZ0RCdXMuRG9jU3RyaW5nIiB2YWx1ZT0iVGhlIGNvb2tpZSBpZGVudGlmeWluZyB0aGUg YXV0aGVudGljYXRpb24gcmVxdWVzdCB0aGF0IHdhcyBwYXNzZWQgdG8gdGhlIGF1dGhlbnRpY2F0 aW9uIGFnZW50LiIvPg0KK2RpZmYgLS1naXQgYS9kb2NzL3BvbGtpdC9kb2Nib29rLWludGVyZmFj ZS1vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHkueG1sIGIvZG9jcy9wb2xraXQv ZG9jYm9vay1pbnRlcmZhY2Utb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aG9yaXR5Lnht bA0KK2luZGV4IDY1MjVlMjUuLmU2NmJmNTMgMTAwNjQ0DQorLS0tIGEvZG9jcy9wb2xraXQvZG9j Ym9vay1pbnRlcmZhY2Utb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aG9yaXR5LnhtbA0K KysrKyBiL2RvY3MvcG9sa2l0L2RvY2Jvb2staW50ZXJmYWNlLW9yZy5mcmVlZGVza3RvcC5Qb2xp Y3lLaXQxLkF1dGhvcml0eS54bWwNCitAQCAtNDIsNiArNDIsOCBAQCBTdHJ1Y3R1cmUgICAgPGxp bmsgbGlua2VuZD0iZWdnZGJ1cy1zdHJ1Y3QtVGVtcG9yYXJ5QXV0aG9yaXphdGlvbiI+VGVtcG9y YXJ5QXV0aA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSU4gIFN0cmluZyAg ICAgICAgICAgICAgICAgICAgICAgICBvYmplY3RfcGF0aCkNCisgPGxpbmsgbGlua2VuZD0iZWdn ZGJ1cy1tZXRob2Qtb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aG9yaXR5LkF1dGhlbnRp Y2F0aW9uQWdlbnRSZXNwb25zZSI+QXV0aGVudGljYXRpb25BZ2VudFJlc3BvbnNlPC9saW5rPiAg ICAgIChJTiAgU3RyaW5nICAgICAgICAgICAgICAgICAgICAgICAgIGNvb2tpZSwNCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOICA8bGluayBsaW5rZW5kPSJlZ2dkYnVzLXN0 cnVjdC1JZGVudGl0eSI+SWRlbnRpdHk8L2xpbms+ICAgICAgICAgICAgICAgICAgICAgICBpZGVu dGl0eSkNCisrPGxpbmsgbGlua2VuZD0iZWdnZGJ1cy1tZXRob2Qtb3JnLmZyZWVkZXNrdG9wLlBv bGljeUtpdDEuQXV0aG9yaXR5LkF1dGhlbnRpY2F0aW9uQWdlbnRSZXNwb25zZSI+QXV0aGVudGlj YXRpb25BZ2VudFJlc3BvbnNlMjwvbGluaz4gICAgICAoSU4gdWludDMyIHVpZCwgSU4gIFN0cmlu ZyAgICAgICAgICAgICAgICAgICAgICAgICBjb29raWUsDQorKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBJTiAgPGxpbmsgbGlua2VuZD0iZWdnZGJ1cy1zdHJ1Y3QtSWRlbnRpdHki PklkZW50aXR5PC9saW5rPiAgICAgICAgICAgICAgICAgICAgICAgaWRlbnRpdHkpDQorIDxsaW5r IGxpbmtlbmQ9ImVnZ2RidXMtbWV0aG9kLW9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhv cml0eS5FbnVtZXJhdGVUZW1wb3JhcnlBdXRob3JpemF0aW9ucyI+RW51bWVyYXRlVGVtcG9yYXJ5 QXV0aG9yaXphdGlvbnM8L2xpbms+IChJTiAgPGxpbmsgbGlua2VuZD0iZWdnZGJ1cy1zdHJ1Y3Qt U3ViamVjdCI+U3ViamVjdDwvbGluaz4gICAgICAgICAgICAgICAgICAgICAgICBzdWJqZWN0LA0K KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT1VUIEFycmF5Jmx0OzxsaW5rIGxp bmtlbmQ9ImVnZ2RidXMtc3RydWN0LVRlbXBvcmFyeUF1dGhvcml6YXRpb24iPlRlbXBvcmFyeUF1 dGhvcml6YXRpb248L2xpbms+Jmd0OyAgdGVtcG9yYXJ5X2F1dGhvcml6YXRpb25zKQ0KKyA8bGlu ayBsaW5rZW5kPSJlZ2dkYnVzLW1ldGhvZC1vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRo b3JpdHkuUmV2b2tlVGVtcG9yYXJ5QXV0aG9yaXphdGlvbnMiPlJldm9rZVRlbXBvcmFyeUF1dGhv cml6YXRpb25zPC9saW5rPiAgICAoSU4gIDxsaW5rIGxpbmtlbmQ9ImVnZ2RidXMtc3RydWN0LVN1 YmplY3QiPlN1YmplY3Q8L2xpbms+ICAgICAgICAgICAgICAgICAgICAgICAgc3ViamVjdCkNCitA QCAtNzc3LDkgKzc3OSw1MSBAQCBBdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2UgKElOICBTdHJp bmcgICAgY29va2llLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOICA8bGluayBs aW5rZW5kPSJlZ2dkYnVzLXN0cnVjdC1JZGVudGl0eSI+SWRlbnRpdHk8L2xpbms+ICBpZGVudGl0 eSkNCisgICAgIDwvcHJvZ3JhbWxpc3Rpbmc+DQorICAgICA8cGFyYT4NCistTWV0aG9kIGZvciBh dXRoZW50aWNhdGlvbiBhZ2VudHMgdG8gaW52b2tlIG9uIHN1Y2Nlc3NmdWwgYXV0aGVudGljYXRp b24uIFRoaXMgbWV0aG9kIHdpbGwgZmFpbCB1bmxlc3MgYSBzdWZmaWNpZW50bHkgcHJpdmlsZWdl ZCBjYWxsZXIgaW52b2tlcyBpdC4NCisrTWV0aG9kIGZvciBhdXRoZW50aWNhdGlvbiBhZ2VudHMg dG8gaW52b2tlIG9uIHN1Y2Nlc3NmdWwNCisrYXV0aGVudGljYXRpb24sIGludGVuZGVkIG9ubHkg Zm9yIHVzZSBieSBhIHByaXZpbGVnZWQgaGVscGVyIHByb2Nlc3MNCisraW50ZXJuYWwgdG8gcG9s a2l0LiAgRGVwcmVjYXRlZCBpbiBmYXZvciBvZiBBdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2Uy Lg0KKysgICAgPC9wYXJhPg0KKys8dmFyaWFibGVsaXN0IHJvbGU9InBhcmFtcyI+DQorKyAgPHZh cmxpc3RlbnRyeT4NCisrICAgIDx0ZXJtPjxsaXRlcmFsPklOICBTdHJpbmcgPHBhcmFtZXRlcj5j b29raWU8L3BhcmFtZXRlcj48L2xpdGVyYWw+OjwvdGVybT4NCisrICAgIDxsaXN0aXRlbT4NCisr ICAgICAgPHBhcmE+DQorK1RoZSBjb29raWUgaWRlbnRpZnlpbmcgdGhlIGF1dGhlbnRpY2F0aW9u IHJlcXVlc3QgdGhhdCB3YXMgcGFzc2VkIHRvIHRoZSBhdXRoZW50aWNhdGlvbiBhZ2VudC4NCisr ICAgICAgPC9wYXJhPg0KKysgICAgPC9saXN0aXRlbT4NCisrICA8L3Zhcmxpc3RlbnRyeT4NCisr ICA8dmFybGlzdGVudHJ5Pg0KKysgICAgPHRlcm0+PGxpdGVyYWw+SU4gIDxsaW5rIGxpbmtlbmQ9 ImVnZ2RidXMtc3RydWN0LUlkZW50aXR5Ij5JZGVudGl0eTwvbGluaz4gPHBhcmFtZXRlcj5pZGVu dGl0eTwvcGFyYW1ldGVyPjwvbGl0ZXJhbD46PC90ZXJtPg0KKysgICAgPGxpc3RpdGVtPg0KKysg ICAgICA8cGFyYT4NCisrQSA8bGluayBsaW5rZW5kPSJlZ2dkYnVzLXN0cnVjdC1JZGVudGl0eSI+ SWRlbnRpdHk8L2xpbms+IHN0cnVjdCBkZXNjcmliaW5nIHdoYXQgaWRlbnRpdHkgd2FzIGF1dGhl bnRpY2F0ZWQuDQorKyAgICAgIDwvcGFyYT4NCisrICAgIDwvbGlzdGl0ZW0+DQorKyAgPC92YXJs aXN0ZW50cnk+DQorKzwvdmFyaWFibGVsaXN0Pg0KKysgICAgPC9yZWZzZWN0Mj4NCisrICAgIDxy ZWZzZWN0MiByb2xlPSJmdW5jdGlvbiIgaWQ9ImVnZ2RidXMtbWV0aG9kLW9yZy5mcmVlZGVza3Rv cC5Qb2xpY3lLaXQxLkF1dGhvcml0eS5BdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2UyIj4NCisr ICAgICAgPHRpdGxlPkF1dGhlbnRpY2F0aW9uQWdlbnRSZXNwb25zZTIgKCk8L3RpdGxlPg0KKysg ICAgPHByb2dyYW1saXN0aW5nPg0KKytBdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2UyIChJTiAg dWludDMyIHVpZCwNCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSU4gIFN0cmluZyBj b29raWUsDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOICA8bGluayBsaW5rZW5k PSJlZ2dkYnVzLXN0cnVjdC1JZGVudGl0eSI+SWRlbnRpdHk8L2xpbms+ICBpZGVudGl0eSkNCisr ICAgIDwvcHJvZ3JhbWxpc3Rpbmc+DQorKyAgICA8cGFyYT4NCisrTWV0aG9kIGZvciBhdXRoZW50 aWNhdGlvbiBhZ2VudHMgdG8gaW52b2tlIG9uIHN1Y2Nlc3NmdWwNCisrYXV0aGVudGljYXRpb24s IGludGVuZGVkIG9ubHkgZm9yIHVzZSBieSBhIHByaXZpbGVnZWQgaGVscGVyIHByb2Nlc3MNCisr aW50ZXJuYWwgdG8gcG9sa2l0LiAgTm90ZSB0aGlzIG1ldGhvZCB3YXMgaW50cm9kdWNlZCBpbiAw LjExNCB0byBmaXggYSBzZWN1cml0eSBpc3N1ZS4NCisgICAgIDwvcGFyYT4NCisgPHZhcmlhYmxl bGlzdCByb2xlPSJwYXJhbXMiPg0KKysgIDx2YXJsaXN0ZW50cnk+DQorKyAgICA8dGVybT48bGl0 ZXJhbD5JTiAgdWludDMyIDxwYXJhbWV0ZXI+dWlkPC9wYXJhbWV0ZXI+PC9saXRlcmFsPjo8L3Rl cm0+DQorKyAgICA8bGlzdGl0ZW0+DQorKyAgICAgIDxwYXJhPg0KKytUaGUgdXNlciBpZCBvZiB0 aGUgYWdlbnQ7IG5vcm1hbGx5IHRoaXMgaXMgdGhlIG93bmVyIG9mIHRoZSBwYXJlbnQgcGlkDQor K29mIHRoZSBwcm9jZXNzIHRoYXQgaW52b2tlZCB0aGUgaW50ZXJuYWwgc2V0dWlkIGhlbHBlci4N CisrICAgICAgPC9wYXJhPg0KKysgICAgPC9saXN0aXRlbT4NCisrICA8L3Zhcmxpc3RlbnRyeT4N CisgICA8dmFybGlzdGVudHJ5Pg0KKyAgICAgPHRlcm0+PGxpdGVyYWw+SU4gIFN0cmluZyA8cGFy YW1ldGVyPmNvb2tpZTwvcGFyYW1ldGVyPjwvbGl0ZXJhbD46PC90ZXJtPg0KKyAgICAgPGxpc3Rp dGVtPg0KK2RpZmYgLS1naXQgYS9kb2NzL3BvbGtpdC9vdmVydmlldy54bWwgYi9kb2NzL3BvbGtp dC9vdmVydmlldy54bWwNCitpbmRleCAyNDQ0MGQyLi5jMjlkOGRhIDEwMDY0NA0KKy0tLSBhL2Rv Y3MvcG9sa2l0L292ZXJ2aWV3LnhtbA0KKysrKyBiL2RvY3MvcG9sa2l0L292ZXJ2aWV3LnhtbA0K K0BAIC02NiwxNiArNjYsMTggQEANCisgICAgIDxwYXJhPg0KKyAgICAgICBBdXRoZW50aWNhdGlv biBhZ2VudHMgYXJlIHByb3ZpZGVkIGJ5IGRlc2t0b3AgZW52aXJvbm1lbnRzLiBXaGVuDQorICAg ICAgIGFuIHVzZXIgc2Vzc2lvbiBzdGFydHMsIHRoZSBhZ2VudCByZWdpc3RlcnMgd2l0aCB0aGUg cG9sa2l0DQorLSAgICAgIEF1dGhvcml0eSB1c2luZw0KKy0gICAgICB0aGUgPGxpbmsgbGlua2Vu ZD0iZWdnZGJ1cy1tZXRob2Qtb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aG9yaXR5LlJl Z2lzdGVyQXV0aGVudGljYXRpb25BZ2VudCI+UmVnaXN0ZXJBdXRoZW50aWNhdGlvbkFnZW50KCk8 L2xpbms+DQorKyAgICAgIEF1dGhvcml0eSB1c2luZyB0aGUgPGxpbmsNCisrICAgICAgbGlua2Vu ZD0iZWdnZGJ1cy1tZXRob2Qtb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aG9yaXR5LlJl Z2lzdGVyQXV0aGVudGljYXRpb25BZ2VudCI+UmVnaXN0ZXJBdXRoZW50aWNhdGlvbkFnZW50KCk8 L2xpbms+DQorICAgICAgIG1ldGhvZC4gV2hlbiBzZXJ2aWNlcyBhcmUgbmVlZGVkLCB0aGUgYXV0 aG9yaXR5IHdpbGwgaW52b2tlDQorLSAgICAgIG1ldGhvZHMgb24NCistICAgICAgdGhlIDxsaW5r IGxpbmtlbmQ9ImVnZ2RidXMtaW50ZXJmYWNlLW9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1 dGhlbnRpY2F0aW9uQWdlbnQiPm9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhlbnRpY2F0 aW9uQWdlbnQ8L2xpbms+DQorKyAgICAgIG1ldGhvZHMgb24gdGhlIDxsaW5rDQorKyAgICAgIGxp bmtlbmQ9ImVnZ2RidXMtaW50ZXJmYWNlLW9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhl bnRpY2F0aW9uQWdlbnQiPm9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhlbnRpY2F0aW9u QWdlbnQ8L2xpbms+DQorICAgICAgIEQtQnVzIGludGVyZmFjZS4gT25jZSB0aGUgdXNlciBpcyBh dXRoZW50aWNhdGVkLCAoYSBwcml2aWxlZ2VkDQorLSAgICAgIHBhcnQgb2YpIHRoZSBhZ2VudCBp bnZva2VzDQorLSAgICAgIHRoZSA8bGluayBsaW5rZW5kPSJlZ2dkYnVzLW1ldGhvZC1vcmcuZnJl ZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHkuQXV0aGVudGljYXRpb25BZ2VudFJlc3BvbnNl Ij5BdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2UoKTwvbGluaz4NCistICAgICAgbWV0aG9kLiAg Tm90ZSB0aGF0IHRoZSBwb2xraXQgQXV0aG9yaXR5IGl0c2VsZiBkb2VzIG5vdCBjYXJlDQorLSAg ICAgIGhvdyB0aGUgYWdlbnQgYXV0aGVudGljYXRlcyB0aGUgdXNlci4NCisrICAgICAgcGFydCBv ZikgdGhlIGFnZW50IGludm9rZXMgdGhlIDxsaW5rDQorKyAgICAgIGxpbmtlbmQ9ImVnZ2RidXMt bWV0aG9kLW9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhvcml0eS5BdXRoZW50aWNhdGlv bkFnZW50UmVzcG9uc2UiPkF1dGhlbnRpY2F0aW9uQWdlbnRSZXNwb25zZSgpPC9saW5rPg0KKysg ICAgICBtZXRob2QuICBUaGlzIG1ldGhvZCBzaG91bGQgYmUgdHJlYXRlZCBhcyBhbiBpbnRlcm5h bA0KKysgICAgICBpbXBsZW1lbnRhdGlvbiBkZXRhaWwsIGFuZCBjYWxsZXJzIHNob3VsZCB1c2Ug dGhlIHB1YmxpYyBzaGFyZWQNCisrICAgICAgbGlicmFyeSBBUEkgdG8gaW52b2tlIGl0LCB3aGlj aCBjdXJyZW50bHkgdXNlcyBhIHNldHVpZCBoZWxwZXINCisrICAgICAgcHJvZ3JhbS4NCisgICAg IDwvcGFyYT4NCisgICAgIDxwYXJhPg0KKyAgICAgICBUaGUgPGxpbmsgbGlua2VuZD0icmVmLWF1 dGhlbnRpY2F0aW9uLWFnZW50LWFwaSI+bGlicG9sa2l0LWFnZW50LTE8L2xpbms+DQorZGlmZiAt LWdpdCBhL3NyYy9wb2xraXQvcG9sa2l0YXV0aG9yaXR5LmMgYi9zcmMvcG9sa2l0L3BvbGtpdGF1 dGhvcml0eS5jDQoraW5kZXggODRkYWI3Mi4uZjQ1YWJjNCAxMDA2NDQNCistLS0gYS9zcmMvcG9s a2l0L3BvbGtpdGF1dGhvcml0eS5jDQorKysrIGIvc3JjL3BvbGtpdC9wb2xraXRhdXRob3JpdHku Yw0KK0BAIC0xNDkyLDYgKzE0OTIsMTQgQEAgcG9sa2l0X2F1dGhvcml0eV9hdXRoZW50aWNhdGlv bl9hZ2VudF9yZXNwb25zZSAoUG9sa2l0QXV0aG9yaXR5ICAgICAgKmF1dGhvcml0eSwNCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3BvaW50ZXIgICAg ICAgICAgICAgIHVzZXJfZGF0YSkNCisgew0KKyAgIEdWYXJpYW50ICppZGVudGl0eV92YWx1ZTsN CisrICAvKiBOb3RlIHRoYXQgaW4gcmVhbGl0eSwgdGhpcyBBUEkgaXMgb25seSBhY2Nlc3NpYmxl IHRvIHJvb3QsIGFuZA0KKysgICAqIG9ubHkgY2FsbGVkIGZyb20gdGhlIHNldHVpZCBoZWxwZXIg YHBvbGtpdC1hZ2VudC1oZWxwZXItMWAuDQorKyAgICoNCisrICAgKiBIb3dldmVyLCBiZWNhdXNl IHRoaXMgaXMgY3VycmVudGx5IHB1YmxpYyBBUEksIHdlIGF2b2lkDQorKyAgICogdHJpZ2dlcmlu ZyB3YXJuaW5ncyBmcm9tIEFCSSBkaWZmIHR5cGUgcHJvZ3JhbXMgYnkganVzdCBncmFiYmluZw0K KysgICAqIHRoZSByZWFsIHVpZCBvZiB0aGUgY2FsbGVyIGhlcmUuDQorKyAgICovDQorKyAgdWlk X3QgdWlkID0gZ2V0dWlkICgpOw0KKyANCisgICBnX3JldHVybl9pZl9mYWlsIChQT0xLSVRfSVNf QVVUSE9SSVRZIChhdXRob3JpdHkpKTsNCisgICBnX3JldHVybl9pZl9mYWlsIChjb29raWUgIT0g TlVMTCk7DQorQEAgLTE1MDEsOCArMTUwOSw5IEBAIHBvbGtpdF9hdXRob3JpdHlfYXV0aGVudGlj YXRpb25fYWdlbnRfcmVzcG9uc2UgKFBvbGtpdEF1dGhvcml0eSAgICAgICphdXRob3JpdHksDQor ICAgaWRlbnRpdHlfdmFsdWUgPSBwb2xraXRfaWRlbnRpdHlfdG9fZ3ZhcmlhbnQgKGlkZW50aXR5 KTsNCisgICBnX3ZhcmlhbnRfcmVmX3NpbmsgKGlkZW50aXR5X3ZhbHVlKTsNCisgICBnX2RidXNf cHJveHlfY2FsbCAoYXV0aG9yaXR5LT5wcm94eSwNCistICAgICAgICAgICAgICAgICAgICAgIkF1 dGhlbnRpY2F0aW9uQWdlbnRSZXNwb25zZSIsDQorLSAgICAgICAgICAgICAgICAgICAgIGdfdmFy aWFudF9uZXcgKCIoc0Aoc2F7c3Z9KSkiLA0KKysgICAgICAgICAgICAgICAgICAgICAiQXV0aGVu dGljYXRpb25BZ2VudFJlc3BvbnNlMiIsDQorKyAgICAgICAgICAgICAgICAgICAgIGdfdmFyaWFu dF9uZXcgKCIodXNAKHNhe3N2fSkpIiwNCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgKGd1aW50MzIpdWlkLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBjb29raWUsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkZW50aXR5 X3ZhbHVlKSwNCisgICAgICAgICAgICAgICAgICAgICAgR19EQlVTX0NBTExfRkxBR1NfTk9ORSwN CitkaWZmIC0tZ2l0IGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGF1dGhvcml0eS5j IGIvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGF1dGhvcml0eS5jDQoraW5kZXggZmQ0 ZjE2MS4uZDFiMWEyNSAxMDA2NDQNCistLS0gYS9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNr ZW5kYXV0aG9yaXR5LmMNCisrKysgYi9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kYXV0 aG9yaXR5LmMNCitAQCAtMzU1LDYgKzM1NSw3IEBAIHBvbGtpdF9iYWNrZW5kX2F1dGhvcml0eV91 bnJlZ2lzdGVyX2F1dGhlbnRpY2F0aW9uX2FnZW50IChQb2xraXRCYWNrZW5kQXV0aG9yaXR5DQor IGdib29sZWFuDQorIHBvbGtpdF9iYWNrZW5kX2F1dGhvcml0eV9hdXRoZW50aWNhdGlvbl9hZ2Vu dF9yZXNwb25zZSAoUG9sa2l0QmFja2VuZEF1dGhvcml0eSAgICAqYXV0aG9yaXR5LA0KKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBvbGtp dFN1YmplY3QgICAgICAgICAgICAgKmNhbGxlciwNCisrICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aWRfdCAgICAgICAgICAgICAgICAgICAg ICB1aWQsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgY29uc3QgZ2NoYXIgICAgICAgICAgICAgICAqY29va2llLA0KKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBvbGtpdElkZW50 aXR5ICAgICAgICAgICAgKmlkZW50aXR5LA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdFcnJvciAgICAgICAgICAgICAgICAgICAqKmVy cm9yKQ0KK0BAIC0zNzMsNyArMzc0LDcgQEAgcG9sa2l0X2JhY2tlbmRfYXV0aG9yaXR5X2F1dGhl bnRpY2F0aW9uX2FnZW50X3Jlc3BvbnNlIChQb2xraXRCYWNrZW5kQXV0aG9yaXR5DQorICAgICB9 DQorICAgZWxzZQ0KKyAgICAgew0KKy0gICAgICByZXR1cm4ga2xhc3MtPmF1dGhlbnRpY2F0aW9u X2FnZW50X3Jlc3BvbnNlIChhdXRob3JpdHksIGNhbGxlciwgY29va2llLCBpZGVudGl0eSwgZXJy b3IpOw0KKysgICAgICByZXR1cm4ga2xhc3MtPmF1dGhlbnRpY2F0aW9uX2FnZW50X3Jlc3BvbnNl IChhdXRob3JpdHksIGNhbGxlciwgdWlkLCBjb29raWUsIGlkZW50aXR5LCBlcnJvcik7DQorICAg ICB9DQorIH0NCisgDQorQEAgLTU4Nyw2ICs1ODgsMTEgQEAgc3RhdGljIGNvbnN0IGdjaGFyICpz ZXJ2ZXJfaW50cm9zcGVjdGlvbl9kYXRhID0NCisgICAiICAgICAgPGFyZyB0eXBlPSdzJyBuYW1l PSdjb29raWUnIGRpcmVjdGlvbj0naW4nLz4iDQorICAgIiAgICAgIDxhcmcgdHlwZT0nKHNhe3N2 fSknIG5hbWU9J2lkZW50aXR5JyBkaXJlY3Rpb249J2luJy8+Ig0KKyAgICIgICAgPC9tZXRob2Q+ Ig0KKysgICIgICAgPG1ldGhvZCBuYW1lPSdBdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2UyJz4i DQorKyAgIiAgICAgIDxhcmcgdHlwZT0ndScgbmFtZT0ndWlkJyBkaXJlY3Rpb249J2luJy8+Ig0K KysgICIgICAgICA8YXJnIHR5cGU9J3MnIG5hbWU9J2Nvb2tpZScgZGlyZWN0aW9uPSdpbicvPiIN CisrICAiICAgICAgPGFyZyB0eXBlPScoc2F7c3Z9KScgbmFtZT0naWRlbnRpdHknIGRpcmVjdGlv bj0naW4nLz4iDQorKyAgIiAgICA8L21ldGhvZD4iDQorICAgIiAgICA8bWV0aG9kIG5hbWU9J0Vu dW1lcmF0ZVRlbXBvcmFyeUF1dGhvcml6YXRpb25zJz4iDQorICAgIiAgICAgIDxhcmcgdHlwZT0n KHNhe3N2fSknIG5hbWU9J3N1YmplY3QnIGRpcmVjdGlvbj0naW4nLz4iDQorICAgIiAgICAgIDxh cmcgdHlwZT0nYShzcyhzYXtzdn0pdHQpJyBuYW1lPSd0ZW1wb3JhcnlfYXV0aG9yaXphdGlvbnMn IGRpcmVjdGlvbj0nb3V0Jy8+Ig0KK0BAIC0xMDM1LDYgKzEwNDEsNTcgQEAgc2VydmVyX2hhbmRs ZV9hdXRoZW50aWNhdGlvbl9hZ2VudF9yZXNwb25zZSAoU2VydmVyICAgICAgICAgICAgICAgICAq c2VydmVyLA0KKyAgIGVycm9yID0gTlVMTDsNCisgICBpZiAoIXBvbGtpdF9iYWNrZW5kX2F1dGhv cml0eV9hdXRoZW50aWNhdGlvbl9hZ2VudF9yZXNwb25zZSAoc2VydmVyLT5hdXRob3JpdHksDQor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGNhbGxlciwNCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgKHVpZF90KS0xLA0KKysgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb29raWUsDQorKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGlkZW50aXR5LA0KKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAmZXJyb3IpKQ0KKysgICAgew0KKysgICAgICBnX2RidXNf bWV0aG9kX2ludm9jYXRpb25fcmV0dXJuX2dlcnJvciAoaW52b2NhdGlvbiwgZXJyb3IpOw0KKysg ICAgICBnX2Vycm9yX2ZyZWUgKGVycm9yKTsNCisrICAgICAgZ290byBvdXQ7DQorKyAgICB9DQor Kw0KKysgIGdfZGJ1c19tZXRob2RfaW52b2NhdGlvbl9yZXR1cm5fdmFsdWUgKGludm9jYXRpb24s IGdfdmFyaWFudF9uZXcgKCIoKSIpKTsNCisrDQorKyBvdXQ6DQorKyAgaWYgKGlkZW50aXR5ICE9 IE5VTEwpDQorKyAgICBnX29iamVjdF91bnJlZiAoaWRlbnRpdHkpOw0KKyt9DQorKw0KKytzdGF0 aWMgdm9pZA0KKytzZXJ2ZXJfaGFuZGxlX2F1dGhlbnRpY2F0aW9uX2FnZW50X3Jlc3BvbnNlMiAo U2VydmVyICAgICAgICAgICAgICAgICAqc2VydmVyLA0KKysgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgR1ZhcmlhbnQgICAgICAgICAgICAgICAqcGFyYW1ldGVy cywNCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBvbGtp dFN1YmplY3QgICAgICAgICAgKmNhbGxlciwNCisrICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIEdEQnVzTWV0aG9kSW52b2NhdGlvbiAgKmludm9jYXRpb24pDQor K3sNCisrICBjb25zdCBnY2hhciAqY29va2llOw0KKysgIEdWYXJpYW50ICppZGVudGl0eV9ndmFy aWFudDsNCisrICBQb2xraXRJZGVudGl0eSAqaWRlbnRpdHk7DQorKyAgR0Vycm9yICplcnJvcjsN CisrICBndWludDMyIHVpZDsNCisrDQorKyAgaWRlbnRpdHkgPSBOVUxMOw0KKysNCisrICBnX3Zh cmlhbnRfZ2V0IChwYXJhbWV0ZXJzLA0KKysgICAgICAgICAgICAgICAgICIodSZzQChzYXtzdn0p KSIsDQorKyAgICAgICAgICAgICAgICAgJnVpZCwNCisrICAgICAgICAgICAgICAgICAmY29va2ll LA0KKysgICAgICAgICAgICAgICAgICZpZGVudGl0eV9ndmFyaWFudCk7DQorKw0KKysgIGVycm9y ID0gTlVMTDsNCisrICBpZGVudGl0eSA9IHBvbGtpdF9pZGVudGl0eV9uZXdfZm9yX2d2YXJpYW50 IChpZGVudGl0eV9ndmFyaWFudCwgJmVycm9yKTsNCisrICBpZiAoaWRlbnRpdHkgPT0gTlVMTCkN CisrICAgIHsNCisrICAgICAgZ19wcmVmaXhfZXJyb3IgKCZlcnJvciwgIkVycm9yIGdldHRpbmcg aWRlbnRpdHk6ICIpOw0KKysgICAgICBnX2RidXNfbWV0aG9kX2ludm9jYXRpb25fcmV0dXJuX2dl cnJvciAoaW52b2NhdGlvbiwgZXJyb3IpOw0KKysgICAgICBnX2Vycm9yX2ZyZWUgKGVycm9yKTsN CisrICAgICAgZ290byBvdXQ7DQorKyAgICB9DQorKw0KKysgIGVycm9yID0gTlVMTDsNCisrICBp ZiAoIXBvbGtpdF9iYWNrZW5kX2F1dGhvcml0eV9hdXRoZW50aWNhdGlvbl9hZ2VudF9yZXNwb25z ZSAoc2VydmVyLT5hdXRob3JpdHksDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxlciwNCisrICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVpZF90KXVp ZCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgY29va2llLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZGVudGl0eSwNCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmVycm9yKSkN CitAQCAtMTIyMiw2ICsxMjc5LDggQEAgc2VydmVyX2hhbmRsZV9tZXRob2RfY2FsbCAoR0RCdXND b25uZWN0aW9uICAgICAgICAqY29ubmVjdGlvbiwNCisgICAgIHNlcnZlcl9oYW5kbGVfdW5yZWdp c3Rlcl9hdXRoZW50aWNhdGlvbl9hZ2VudCAoc2VydmVyLCBwYXJhbWV0ZXJzLCBjYWxsZXIsIGlu dm9jYXRpb24pOw0KKyAgIGVsc2UgaWYgKGdfc3RyY21wMCAobWV0aG9kX25hbWUsICJBdXRoZW50 aWNhdGlvbkFnZW50UmVzcG9uc2UiKSA9PSAwKQ0KKyAgICAgc2VydmVyX2hhbmRsZV9hdXRoZW50 aWNhdGlvbl9hZ2VudF9yZXNwb25zZSAoc2VydmVyLCBwYXJhbWV0ZXJzLCBjYWxsZXIsIGludm9j YXRpb24pOw0KKysgIGVsc2UgaWYgKGdfc3RyY21wMCAobWV0aG9kX25hbWUsICJBdXRoZW50aWNh dGlvbkFnZW50UmVzcG9uc2UyIikgPT0gMCkNCisrICAgIHNlcnZlcl9oYW5kbGVfYXV0aGVudGlj YXRpb25fYWdlbnRfcmVzcG9uc2UyIChzZXJ2ZXIsIHBhcmFtZXRlcnMsIGNhbGxlciwgaW52b2Nh dGlvbik7DQorICAgZWxzZSBpZiAoZ19zdHJjbXAwIChtZXRob2RfbmFtZSwgIkVudW1lcmF0ZVRl bXBvcmFyeUF1dGhvcml6YXRpb25zIikgPT0gMCkNCisgICAgIHNlcnZlcl9oYW5kbGVfZW51bWVy YXRlX3RlbXBvcmFyeV9hdXRob3JpemF0aW9ucyAoc2VydmVyLCBwYXJhbWV0ZXJzLCBjYWxsZXIs IGludm9jYXRpb24pOw0KKyAgIGVsc2UgaWYgKGdfc3RyY21wMCAobWV0aG9kX25hbWUsICJSZXZv a2VUZW1wb3JhcnlBdXRob3JpemF0aW9ucyIpID09IDApDQorZGlmZiAtLWdpdCBhL3NyYy9wb2xr aXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRhdXRob3JpdHkuaCBiL3NyYy9wb2xraXRiYWNrZW5kL3Bv bGtpdGJhY2tlbmRhdXRob3JpdHkuaA0KK2luZGV4IGE1NjQwNTQuLjFjMjEyZTAgMTAwNjQ0DQor LS0tIGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGF1dGhvcml0eS5oDQorKysrIGIv c3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGF1dGhvcml0eS5oDQorQEAgLTE1NCw2ICsx NTQsNyBAQCBzdHJ1Y3QgX1BvbGtpdEJhY2tlbmRBdXRob3JpdHlDbGFzcw0KKyANCisgICBnYm9v bGVhbiAoKmF1dGhlbnRpY2F0aW9uX2FnZW50X3Jlc3BvbnNlKSAoUG9sa2l0QmFja2VuZEF1dGhv cml0eSAgICphdXRob3JpdHksDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFBvbGtpdFN1YmplY3QgICAgICAgICAgICAqY2FsbGVyLA0KKysgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aWRfdCAgICAgICAgICAgICAgICAg ICAgIHVpZCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Y29uc3QgZ2NoYXIgICAgICAgICAgICAgICpjb29raWUsDQorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFBvbGtpdElkZW50aXR5ICAgICAgICAgICAqaWRlbnRp dHksDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdFcnJv ciAgICAgICAgICAgICAgICAgICoqZXJyb3IpOw0KK0BAIC0yNTYsNiArMjU3LDcgQEAgZ2Jvb2xl YW4gcG9sa2l0X2JhY2tlbmRfYXV0aG9yaXR5X3VucmVnaXN0ZXJfYXV0aGVudGljYXRpb25fYWdl bnQgKFBvbGtpdEJhY2tlbmQNCisgDQorIGdib29sZWFuIHBvbGtpdF9iYWNrZW5kX2F1dGhvcml0 eV9hdXRoZW50aWNhdGlvbl9hZ2VudF9yZXNwb25zZSAoUG9sa2l0QmFja2VuZEF1dGhvcml0eSAg ICAqYXV0aG9yaXR5LA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFBvbGtpdFN1YmplY3QgICAgICAgICAgICAgKmNhbGxl ciwNCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB1aWRfdCAgICAgICAgICAgICAgICAgICAgICB1aWQsDQorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Y29uc3QgZ2NoYXIgICAgICAgICAgICAgICAqY29va2llLA0KKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBvbGtpdElkZW50 aXR5ICAgICAgICAgICAgKmlkZW50aXR5LA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdFcnJvciAgICAgICAgICAgICAg ICAgICAqKmVycm9yKTsNCitkaWZmIC0tZ2l0IGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFj a2VuZGludGVyYWN0aXZlYXV0aG9yaXR5LmMgYi9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNr ZW5kaW50ZXJhY3RpdmVhdXRob3JpdHkuYw0KK2luZGV4IDEwZWRhMmMuLjVlMjlhZjIgMTAwNjQ0 DQorLS0tIGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGludGVyYWN0aXZlYXV0aG9y aXR5LmMNCisrKysgYi9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kaW50ZXJhY3RpdmVh dXRob3JpdHkuYw0KK0BAIC0xMDYsOCArMTA2LDkgQEAgc3RhdGljIEF1dGhlbnRpY2F0aW9uQWdl bnQgKmdldF9hdXRoZW50aWNhdGlvbl9hZ2VudF9mb3Jfc3ViamVjdCAoUG9sa2l0QmFja2VuZEkN CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgUG9sa2l0U3ViamVjdCAqc3ViamVjdCk7DQorIA0KKyANCistc3RhdGljIEF1 dGhlbnRpY2F0aW9uU2Vzc2lvbiAqZ2V0X2F1dGhlbnRpY2F0aW9uX3Nlc3Npb25fZm9yX2Nvb2tp ZSAoUG9sa2l0QmFja2VuZEludGVyYWN0aXZlQXV0aG9yaXR5ICphdXRob3JpdHksDQorLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGNvbnN0IGdjaGFyICpjb29raWUpOw0KKytzdGF0aWMgQXV0aGVudGljYXRpb25TZXNz aW9uICpnZXRfYXV0aGVudGljYXRpb25fc2Vzc2lvbl9mb3JfdWlkX2FuZF9jb29raWUgKFBvbGtp dEJhY2tlbmRJbnRlcmFjdGl2ZUF1dGhvcml0eSAqYXV0aG9yaXR5LA0KKysgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHVpZF90ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWlkLA0KKysgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGNvbnN0IGdjaGFyICAgICAgICAgICAgICAgICAgICAgICAqY29va2llKTsN CisgDQorIHN0YXRpYyBHTGlzdCAqZ2V0X2F1dGhlbnRpY2F0aW9uX3Nlc3Npb25zX2luaXRpYXRl ZF9ieV9zeXN0ZW1fYnVzX3VuaXF1ZV9uYW1lIChQb2xraXRCYWNrZW5kSW50ZXJhY3RpdmVBdXRo b3JpdHkgKmF1dGhvcml0eSwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGdjaGFyICpz eXN0ZW1fYnVzX3VuaXF1ZV9uYW1lKTsNCitAQCAtMTY3LDYgKzE2OCw3IEBAIHN0YXRpYyBnYm9v bGVhbiBwb2xraXRfYmFja2VuZF9pbnRlcmFjdGl2ZV9hdXRob3JpdHlfdW5yZWdpc3Rlcl9hdXRo ZW50aWNhdGlvbl9hDQorIA0KKyBzdGF0aWMgZ2Jvb2xlYW4gcG9sa2l0X2JhY2tlbmRfaW50ZXJh Y3RpdmVfYXV0aG9yaXR5X2F1dGhlbnRpY2F0aW9uX2FnZW50X3Jlc3BvbnNlIChQb2xraXRCYWNr ZW5kQXV0aG9yaXR5ICAgKmF1dGhvcml0eSwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUG9sa2l0 U3ViamVjdCAgICAgICAgICAgICpjYWxsZXIsDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpZF90 ICAgICAgICAgICAgICAgICAgICAgdWlkLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBn Y2hhciAgICAgICAgICAgICAgKmNvb2tpZSwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUG9sa2l0 SWRlbnRpdHkgICAgICAgICAgICppZGVudGl0eSwNCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0Vy cm9yICAgICAgICAgICAgICAgICAgKiplcnJvcik7DQorQEAgLTQzMSw2ICs0MzMsNyBAQCBzdHJ1 Y3QgQXV0aGVudGljYXRpb25BZ2VudA0KKyB7DQorICAgdm9sYXRpbGUgZ2ludCByZWZfY291bnQ7 DQorIA0KKysgIHVpZF90IGNyZWF0b3JfdWlkOw0KKyAgIFBvbGtpdFN1YmplY3QgKnNjb3BlOw0K KyAgIGd1aW50NjQgc2VyaWFsOw0KKyANCitAQCAtMTYwMyw2ICsxNjA2LDcgQEAgYXV0aGVudGlj YXRpb25fYWdlbnRfdW5yZWYgKEF1dGhlbnRpY2F0aW9uQWdlbnQgKmFnZW50KQ0KKyBzdGF0aWMg QXV0aGVudGljYXRpb25BZ2VudCAqDQorIGF1dGhlbnRpY2F0aW9uX2FnZW50X25ldyAoZ3VpbnQ2 NCAgICAgIHNlcmlhbCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICBQb2xraXRTdWJqZWN0 ICpzY29wZSwNCisrICAgICAgICAgICAgICAgICAgICAgICAgICBQb2xraXRJZGVudGl0eSAqY3Jl YXRvciwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnY2hhciAqdW5pcXVlX3N5 c3RlbV9idXNfbmFtZSwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnY2hhciAq bG9jYWxlLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGdjaGFyICpvYmplY3Rf cGF0aCwNCitAQCAtMTYxMSw2ICsxNjE1LDEwIEBAIGF1dGhlbnRpY2F0aW9uX2FnZW50X25ldyAo Z3VpbnQ2NCAgICAgIHNlcmlhbCwNCisgew0KKyAgIEF1dGhlbnRpY2F0aW9uQWdlbnQgKmFnZW50 Ow0KKyAgIEdEQnVzUHJveHkgKnByb3h5Ow0KKysgIFBvbGtpdFVuaXhVc2VyICpjcmVhdG9yX3Vz ZXI7DQorKw0KKysgIGdfYXNzZXJ0IChQT0xLSVRfSVNfVU5JWF9VU0VSIChjcmVhdG9yKSk7DQor KyAgY3JlYXRvcl91c2VyID0gUE9MS0lUX1VOSVhfVVNFUiAoY3JlYXRvcik7DQorIA0KKyAgIGlm ICghZ192YXJpYW50X2lzX29iamVjdF9wYXRoIChvYmplY3RfcGF0aCkpDQorICAgICB7DQorQEAg LTE2MzgsNiArMTY0Niw3IEBAIGF1dGhlbnRpY2F0aW9uX2FnZW50X25ldyAoZ3VpbnQ2NCAgICAg IHNlcmlhbCwNCisgICBhZ2VudC0+cmVmX2NvdW50ID0gMTsNCisgICBhZ2VudC0+c2VyaWFsID0g c2VyaWFsOw0KKyAgIGFnZW50LT5zY29wZSA9IGdfb2JqZWN0X3JlZiAoc2NvcGUpOw0KKysgIGFn ZW50LT5jcmVhdG9yX3VpZCA9ICh1aWRfdClwb2xraXRfdW5peF91c2VyX2dldF91aWQgKGNyZWF0 b3JfdXNlcik7DQorICAgYWdlbnQtPm9iamVjdF9wYXRoID0gZ19zdHJkdXAgKG9iamVjdF9wYXRo KTsNCisgICBhZ2VudC0+dW5pcXVlX3N5c3RlbV9idXNfbmFtZSA9IGdfc3RyZHVwICh1bmlxdWVf c3lzdGVtX2J1c19uYW1lKTsNCisgICBhZ2VudC0+bG9jYWxlID0gZ19zdHJkdXAgKGxvY2FsZSk7 DQorQEAgLTE3MzYsOCArMTc0NSw5IEBAIGdldF9hdXRoZW50aWNhdGlvbl9hZ2VudF9mb3Jfc3Vi amVjdCAoUG9sa2l0QmFja2VuZEludGVyYWN0aXZlQXV0aG9yaXR5ICphdXRob3JpDQorIH0NCisg DQorIHN0YXRpYyBBdXRoZW50aWNhdGlvblNlc3Npb24gKg0KKy1nZXRfYXV0aGVudGljYXRpb25f c2Vzc2lvbl9mb3JfY29va2llIChQb2xraXRCYWNrZW5kSW50ZXJhY3RpdmVBdXRob3JpdHkgKmF1 dGhvcml0eSwNCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg Z2NoYXIgKmNvb2tpZSkNCisrZ2V0X2F1dGhlbnRpY2F0aW9uX3Nlc3Npb25fZm9yX3VpZF9hbmRf Y29va2llIChQb2xraXRCYWNrZW5kSW50ZXJhY3RpdmVBdXRob3JpdHkgKmF1dGhvcml0eSwNCisr ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aWRfdCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHVpZCwNCisrICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnY2hhciAgICAgICAgICAgICAgICAgICAgICAg KmNvb2tpZSkNCisgew0KKyAgIFBvbGtpdEJhY2tlbmRJbnRlcmFjdGl2ZUF1dGhvcml0eVByaXZh dGUgKnByaXY7DQorICAgR0hhc2hUYWJsZUl0ZXIgaGFzaF9pdGVyOw0KK0BAIC0xNzU1LDYgKzE3 NjUsMjMgQEAgZ2V0X2F1dGhlbnRpY2F0aW9uX3Nlc3Npb25fZm9yX2Nvb2tpZSAoUG9sa2l0QmFj a2VuZEludGVyYWN0aXZlQXV0aG9yaXR5ICphdXRob3INCisgICAgIHsNCisgICAgICAgR0xpc3Qg Kmw7DQorIA0KKysgICAgICAvKiBXZSBuZWVkIHRvIGVuc3VyZSB0aGF0IGlmIHNvbWVob3cgd2Ug aGF2ZSBkdXBsaWNhdGUgY29va2llcw0KKysgICAgICAgKiBkdWUgdG8gd3JhcHBpbmcsIHRoYXQg dGhlIGNvb2tpZSB1c2VkIGlzIG1hdGNoZWQgdG8gdGhlIHVzZXINCisrICAgICAgICogd2hvIGNh bGxlZCBBdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2UyLiAgU2VlDQorKyAgICAgICAqIGh0dHA6 Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvYXJjaGl2ZXMvcG9sa2l0LWRldmVsLzIwMTUtSnVuZS8w MDA0MjUuaHRtbA0KKysgICAgICAgKiANCisrICAgICAgICogRXhjZXB0IGlmIHRoZSBsZWdhY3kg QXV0aGVudGljYXRpb25BZ2VudFJlc3BvbnNlIGlzIGludm9rZWQsDQorKyAgICAgICAqIHdlIGRv bid0IGtub3cgdGhlIHVpZCBhbmQgaGVuY2UgdXNlIC0xLiAgQ29udGludWUgdG8gc3VwcG9ydA0K KysgICAgICAgKiB0aGUgb2xkIGJlaGF2aW9yIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSwg YWx0aG91Z2ggZXZlcnlvbmUNCisrICAgICAgICogd2hvIGlzIHVzaW5nIG91ciBvd24gc2V0dWlk IGhlbHBlciB3aWxsIGF1dG9tYXRpY2FsbHkgYmUgdXBkYXRlZA0KKysgICAgICAgKiB0byB0aGUg bmV3IEFQSS4NCisrICAgICAgICovDQorKyAgICAgIGlmICh1aWQgIT0gKHVpZF90KS0xKQ0KKysg ICAgICAgIHsNCisrICAgICAgICAgIGlmIChhZ2VudC0+Y3JlYXRvcl91aWQgIT0gdWlkKQ0KKysg ICAgICAgICAgICBjb250aW51ZTsNCisrICAgICAgICB9DQorKw0KKyAgICAgICBmb3IgKGwgPSBh Z2VudC0+YWN0aXZlX3Nlc3Npb25zOyBsICE9IE5VTEw7IGwgPSBsLT5uZXh0KQ0KKyAgICAgICAg IHsNCisgICAgICAgICAgIEF1dGhlbnRpY2F0aW9uU2Vzc2lvbiAqc2Vzc2lvbiA9IGwtPmRhdGE7 DQorQEAgLTIzODgsNiArMjQxNSw3IEBAIHBvbGtpdF9iYWNrZW5kX2ludGVyYWN0aXZlX2F1dGhv cml0eV9yZWdpc3Rlcl9hdXRoZW50aWNhdGlvbl9hZ2VudCAoUG9sa2l0QmFja2VuDQorICAgcHJp di0+YWdlbnRfc2VyaWFsKys7DQorICAgYWdlbnQgPSBhdXRoZW50aWNhdGlvbl9hZ2VudF9uZXcg KHByaXYtPmFnZW50X3NlcmlhbCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgc3ViamVjdCwNCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlcl9v Zl9jYWxsZXIsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvbGtpdF9z eXN0ZW1fYnVzX25hbWVfZ2V0X25hbWUgKFBPTEtJVF9TWVNURU1fQlVTX05BTUUgKGNhbGxlcikp LA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NhbGUsDQorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdF9wYXRoLA0KK0BAIC0yNjAxLDYg KzI2MjksNyBAQCBwb2xraXRfYmFja2VuZF9pbnRlcmFjdGl2ZV9hdXRob3JpdHlfdW5yZWdpc3Rl cl9hdXRoZW50aWNhdGlvbl9hZ2VudCAoUG9sa2l0QmFjaw0KKyBzdGF0aWMgZ2Jvb2xlYW4NCisg cG9sa2l0X2JhY2tlbmRfaW50ZXJhY3RpdmVfYXV0aG9yaXR5X2F1dGhlbnRpY2F0aW9uX2FnZW50 X3Jlc3BvbnNlIChQb2xraXRCYWNrZW5kQXV0aG9yaXR5ICAgKmF1dGhvcml0eSwNCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQ b2xraXRTdWJqZWN0ICAgICAgICAgICAgKmNhbGxlciwNCisrICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aWRfdCAgICAgICAgICAg ICAgICAgICAgIHVpZCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnY2hhciAgICAgICAgICAgICAgKmNvb2tpZSwN CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBQb2xraXRJZGVudGl0eSAgICAgICAgICAgKmlkZW50aXR5LA0KKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdFcnJv ciAgICAgICAgICAgICAgICAgICoqZXJyb3IpDQorQEAgLTI2NDMsNyArMjY3Miw3IEBAIHBvbGtp dF9iYWNrZW5kX2ludGVyYWN0aXZlX2F1dGhvcml0eV9hdXRoZW50aWNhdGlvbl9hZ2VudF9yZXNw b25zZSAoUG9sa2l0QmFja2VuDQorICAgICB9DQorIA0KKyAgIC8qIGZpbmQgdGhlIGF1dGhlbnRp Y2F0aW9uIHNlc3Npb24gKi8NCistICBzZXNzaW9uID0gZ2V0X2F1dGhlbnRpY2F0aW9uX3Nlc3Np b25fZm9yX2Nvb2tpZSAoaW50ZXJhY3RpdmVfYXV0aG9yaXR5LCBjb29raWUpOw0KKysgIHNlc3Np b24gPSBnZXRfYXV0aGVudGljYXRpb25fc2Vzc2lvbl9mb3JfdWlkX2FuZF9jb29raWUgKGludGVy YWN0aXZlX2F1dGhvcml0eSwgdWlkLCBjb29raWUpOw0KKyAgIGlmIChzZXNzaW9uID09IE5VTEwp DQorICAgICB7DQorICAgICAgIGdfc2V0X2Vycm9yIChlcnJvciwNCmRpZmYgLS1naXQgYS9wYXRj aGVzL3BvbGtpdC0wLjEwNS8wLjExMy9DVkUtMjAxNS00NjI1LVVzZS11bnByZWRpY3RhYmxlLWNv b2tpZS12YWx1ZXMta2VlcC10LnBhdGNoIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvQ1ZF LTIwMTUtNDYyNS1Vc2UtdW5wcmVkaWN0YWJsZS1jb29raWUtdmFsdWVzLWtlZXAtdC5wYXRjaA0K bmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMC4uZjZhNDI0ODk2DQotLS0gL2Rl di9udWxsDQorKysgYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9DVkUtMjAxNS00NjI1LVVz ZS11bnByZWRpY3RhYmxlLWNvb2tpZS12YWx1ZXMta2VlcC10LnBhdGNoDQpAQCAtMCwwICsxLDU0 MCBAQA0KK0Zyb206IENvbGluIFdhbHRlcnMgPHdhbHRlcnNAcmVkaGF0LmNvbT4NCitEYXRlOiBU aHUsIDQgSnVuIDIwMTUgMTI6MTU6MTggLTA0MDANCitTdWJqZWN0OiBDVkUtMjAxNS00NjI1OiBV c2UgdW5wcmVkaWN0YWJsZSBjb29raWUgdmFsdWVzLCBrZWVwIHRoZW0gc2VjcmV0DQorTUlNRS1W ZXJzaW9uOiAxLjANCitDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9InV0Zi04Ig0K K0NvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQNCisNCitUYXZpcyBub3RlZCB0aGF0IGl0 J2QgYmUgcG9zc2libGUgd2l0aCBhIDMyIGJpdCBjb3VudGVyIGZvciBzb21lb25lIHRvDQorY2F1 c2UgdGhlIGNvb2tpZSB0byB3cmFwIGJ5IGNyZWF0aW5nIEF1dGhlbnRpY2F0aW9uIHJlcXVlc3Rz IGluIGENCitsb29wLg0KKw0KK1NvbWV0aGluZyBpbXBvcnRhbnQgdG8gbm90ZSBoZXJlIGlzIHRo YXQgd3JhcHBpbmcgb2Ygc2lnbmVkIGludGVnZXJzDQoraXMgdW5kZWZpbmVkIGJlaGF2aW9yIGlu IEMsIHNvIHdlIGRlZmluaXRlbHkgd2FudCB0byBmaXggdGhhdC4gIEFsbA0KK2NvdW50ZXIgaW50 ZWdlcnMgdXNlZCBpbiB0aGlzIHBhdGNoIGFyZSB1bnNpZ25lZC4NCisNCitTZWUgdGhlIGNvbW1l bnQgYWJvdmUgYGF1dGhlbnRpY2F0aW9uX2FnZW50X2dlbmVyYXRlX2Nvb2tpZWAgZm9yDQorZGV0 YWlscywgYnV0IGJhc2ljYWxseSB3ZSdyZSBub3cgdXNpbmcgYSBjb29raWUgb2YgdGhlIGZvcm06 DQorDQorYGBgDQorICAgICAgICA8YWdlbnQgc2VyaWFsPiAtIDxhZ2VudCByYW5kb20gaWQ+IC0g PHNlc3Npb24gc2VyaWFsPiAtIDxzZXNzaW9uDQorcmFuZG9tIGlkPg0KK2BgYA0KKw0KK1doaWNo IGhhcyBtdWx0aXBsZSA2NCBiaXQgY291bnRlcnMsIHBsdXMgdW5wcmVkaWN0YWJsZSByYW5kb20g MTI4IGJpdA0KK2ludGVnZXIgaWRzIChlZmZlY3RpdmVseSBVVUlEcywgYnV0IHdlJ3JlIG5vdCBj YWxsaW5nIHRoZW0gdGhhdA0KK2JlY2F1c2Ugd2UgZG9uJ3QgbmVlZCB0byBiZSBnbG9iYWxseSB1 bmlxdWUuDQorDQorV2UgZnVydGhlciBlbnN1cmUgdGhhdCB0aGUgY29va2llcyBhcmUgbm90IHZp c2libGUgdG8gb3RoZXIgcHJvY2Vzc2VzDQorYnkgY2hhbmdpbmcgdGhlIHNldHVpZCBoZWxwZXIg dG8gYWNjZXB0IHRoZW0gb3ZlciBzdGFuZGFyZCBpbnB1dC4gIFRoaXMNCittZWFucyB0aGF0IGFu IGF0dGFja2VyIHdvdWxkIGhhdmUgdG8gZ3Vlc3MgYm90aCBpZHMuDQorDQorSW4gYW55IGNhc2Us IHRoZSBzZWN1cml0eSBob2xlIGhlcmUgaXMgYmV0dGVyIGZpeGVkIHdpdGggdGhlIG90aGVyDQor Y2hhbmdlIHRvIGJpbmQgdXNlciBpZCAodWlkKSBvZiB0aGUgYWdlbnQgd2l0aCBjb29raWUgbG9v a3VwcywgbWFraW5nDQorY29va2llIGd1ZXNzaW5nIHdvcnRobGVzcy4NCisNCitOZXZlcnRoZWxl c3MsIEkgdGhpbmsgaXQncyB3b3J0aCBkb2luZyB0aGlzIGNoYW5nZSB0b28sIGZvciBkZWZlbnNl IGluDQorZGVwdGguDQorDQorQnVnOiBodHRwczovL2J1Z3MuZnJlZWRlc2t0b3Aub3JnL3Nob3df YnVnLmNnaT9pZD05MDgzMg0KK0NWRTogQ1ZFLTIwMTUtNDYyNQ0KK1JlcG9ydGVkLWJ5OiBUYXZp cyBPcm1hbmR5IDx0YXZpc29AZ29vZ2xlLmNvbT4NCitSZXZpZXdlZC1ieTogTWlsb3NsYXYgVHJt YcSNIDxtaXRyQHJlZGhhdC5jb20+DQorU2lnbmVkLW9mZi1ieTogQ29saW4gV2FsdGVycyA8d2Fs dGVyc0ByZWRoYXQuY29tPg0KK09yaWdpbjogdXBzdHJlYW0sIDAuMTEzLCBjb21taXQ6ZWE1NDRm ZmMxODQwNTIzN2NjZDk1ZDI4ZDdmNDVhZmVmNDlhY2ExNw0KK0J1Zy1EZWJpYW46IGh0dHBzOi8v YnVncy5kZWJpYW4ub3JnLzc5NjEzNA0KKy0tLQ0KKyBjb25maWd1cmUuYWMgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyICstDQorIHNyYy9wb2xraXRhZ2VudC9wb2xr aXRhZ2VudGhlbHBlci1wYW0uYyAgICAgICAgICAgIHwgMTIgKystDQorIHNyYy9wb2xraXRhZ2Vu dC9wb2xraXRhZ2VudGhlbHBlci1zaGFkb3cuYyAgICAgICAgIHwgMTIgKystDQorIHNyYy9wb2xr aXRhZ2VudC9wb2xraXRhZ2VudGhlbHBlcnByaXZhdGUuYyAgICAgICAgIHwgMzMgKysrKysrKysN Cisgc3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50aGVscGVycHJpdmF0ZS5oICAgICAgICAgfCAg MiArDQorIHNyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudHNlc3Npb24uYyAgICAgICAgICAgICAg IHwgMzAgKysrKy0tLQ0KKyAuLi4vcG9sa2l0YmFja2VuZGludGVyYWN0aXZlYXV0aG9yaXR5LmMg ICAgICAgICAgICB8IDk5ICsrKysrKysrKysrKysrKysrLS0tLS0NCisgNyBmaWxlcyBjaGFuZ2Vk LCAxNTAgaW5zZXJ0aW9ucygrKSwgNDAgZGVsZXRpb25zKC0pDQorDQorZGlmZiAtLWdpdCBhL2Nv bmZpZ3VyZS5hYyBiL2NvbmZpZ3VyZS5hYw0KK2luZGV4IGFhMjc2MGYuLjM4ODYwNWQgMTAwNjQ0 DQorLS0tIGEvY29uZmlndXJlLmFjDQorKysrIGIvY29uZmlndXJlLmFjDQorQEAgLTEyMyw3ICsx MjMsNyBAQCBpZiB0ZXN0ICJ4JEdDQyIgPSAieHllcyI7IHRoZW4NCisgICBjaGFuZ2VxdW90ZShb LF0pZG5sDQorIGZpDQorIA0KKy1QS0dfQ0hFQ0tfTU9EVUxFUyhHTElCLCBbZ2lvLTIuMCA+PSAy LjI4LjBdKQ0KKytQS0dfQ0hFQ0tfTU9EVUxFUyhHTElCLCBbZ21vZHVsZS0yLjAgZ2lvLXVuaXgt Mi4wID49IDIuMzAuMF0pDQorIEFDX1NVQlNUKEdMSUJfQ0ZMQUdTKQ0KKyBBQ19TVUJTVChHTElC X0xJQlMpDQorIA0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRoZWxw ZXItcGFtLmMgYi9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRoZWxwZXItcGFtLmMNCitpbmRl eCA5MzczODZlLi4xOTA2MmFhIDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xraXRhZ2VudC9wb2xraXRh Z2VudGhlbHBlci1wYW0uYw0KKysrKyBiL3NyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudGhlbHBl ci1wYW0uYw0KK0BAIC02NSw3ICs2NSw3IEBAIG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2W10p DQorIHsNCisgICBpbnQgcmM7DQorICAgY29uc3QgY2hhciAqdXNlcl90b19hdXRoOw0KKy0gIGNv bnN0IGNoYXIgKmNvb2tpZTsNCisrICBjaGFyICpjb29raWUgPSBOVUxMOw0KKyAgIHN0cnVjdCBw YW1fY29udiBwYW1fY29udmVyc2F0aW9uOw0KKyAgIHBhbV9oYW5kbGVfdCAqcGFtX2g7DQorICAg Y29uc3Qgdm9pZCAqYXV0aGVkX3VzZXI7DQorQEAgLTk3LDcgKzk3LDcgQEAgbWFpbiAoaW50IGFy Z2MsIGNoYXIgKmFyZ3ZbXSkNCisgICBvcGVubG9nICgicG9sa2l0LWFnZW50LWhlbHBlci0xIiwg TE9HX0NPTlMgfCBMT0dfUElELCBMT0dfQVVUSFBSSVYpOw0KKyANCisgICAvKiBjaGVjayBmb3Ig Y29ycmVjdCBpbnZvY2F0aW9uICovDQorLSAgaWYgKGFyZ2MgIT0gMykNCisrICBpZiAoIShhcmdj ID09IDIgfHwgYXJnYyA9PSAzKSkNCisgICAgIHsNCisgICAgICAgc3lzbG9nIChMT0dfTk9USUNF LCAiaW5hcHByb3ByaWF0ZSB1c2Ugb2YgaGVscGVyLCB3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRz IFt1aWQ9JWRdIiwgZ2V0dWlkICgpKTsNCisgICAgICAgZnByaW50ZiAoc3RkZXJyLCAicG9sa2l0 LWFnZW50LWhlbHBlci0xOiB3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzLiBUaGlzIGluY2lkZW50 IGhhcyBiZWVuIGxvZ2dlZC5cbiIpOw0KK0BAIC0xMDUsNyArMTA1LDEwIEBAIG1haW4gKGludCBh cmdjLCBjaGFyICphcmd2W10pDQorICAgICB9DQorIA0KKyAgIHVzZXJfdG9fYXV0aCA9IGFyZ3Zb MV07DQorLSAgY29va2llID0gYXJndlsyXTsNCisrDQorKyAgY29va2llID0gcmVhZF9jb29raWUg KGFyZ2MsIGFyZ3YpOw0KKysgIGlmICghY29va2llKQ0KKysgICAgZ290byBlcnJvcjsNCisgDQor ICAgaWYgKGdldHVpZCAoKSAhPSAwKQ0KKyAgICAgew0KK0BAIC0yMDMsNiArMjA2LDggQEAgbWFp biAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkNCisgICAgICAgZ290byBlcnJvcjsNCisgICAgIH0N CisgDQorKyAgZnJlZSAoY29va2llKTsNCisrDQorICNpZmRlZiBQQUhfREVCVUcNCisgICBmcHJp bnRmIChzdGRlcnIsICJwb2xraXQtYWdlbnQtaGVscGVyLTE6IHN1Y2Nlc3NmdWxseSBzZW50IEQt QnVzIG1lc3NhZ2UgdG8gUG9saWN5S2l0IGRhZW1vblxuIik7DQorICNlbmRpZiAvKiBQQUhfREVC VUcgKi8NCitAQCAtMjEyLDYgKzIxNyw3IEBAIG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2W10p DQorICAgcmV0dXJuIDA7DQorIA0KKyBlcnJvcjoNCisrICBmcmVlIChjb29raWUpOw0KKyAgIGlm IChwYW1faCAhPSBOVUxMKQ0KKyAgICAgcGFtX2VuZCAocGFtX2gsIHJjKTsNCisgDQorZGlmZiAt LWdpdCBhL3NyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudGhlbHBlci1zaGFkb3cuYyBiL3NyYy9w b2xraXRhZ2VudC9wb2xraXRhZ2VudGhlbHBlci1zaGFkb3cuYw0KK2luZGV4IGE0ZjczYWMuLmU4 Nzc5MTUgMTAwNjQ0DQorLS0tIGEvc3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50aGVscGVyLXNo YWRvdy5jDQorKysrIGIvc3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50aGVscGVyLXNoYWRvdy5j DQorQEAgLTQ2LDcgKzQ2LDcgQEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkNCisgew0K KyAgIHN0cnVjdCBzcHdkICpzaGFkb3c7DQorICAgY29uc3QgY2hhciAqdXNlcl90b19hdXRoOw0K Ky0gIGNvbnN0IGNoYXIgKmNvb2tpZTsNCisrICBjaGFyICpjb29raWUgPSBOVUxMOw0KKyAgIHRp bWVfdCBub3c7DQorIA0KKyAgIC8qIGNsZWFyIHRoZSBlbnRpcmUgZW52aXJvbm1lbnQgdG8gYXZv aWQgYXR0YWNrcyB3aXRoDQorQEAgLTY3LDcgKzY3LDcgQEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIg KmFyZ3ZbXSkNCisgICBvcGVubG9nICgicG9sa2l0LWFnZW50LWhlbHBlci0xIiwgTE9HX0NPTlMg fCBMT0dfUElELCBMT0dfQVVUSFBSSVYpOw0KKyANCisgICAvKiBjaGVjayBmb3IgY29ycmVjdCBp bnZvY2F0aW9uICovDQorLSAgaWYgKGFyZ2MgIT0gMykNCisrICBpZiAoIShhcmdjID09IDIgfHwg YXJnYyA9PSAzKSkNCisgICAgIHsNCisgICAgICAgc3lzbG9nIChMT0dfTk9USUNFLCAiaW5hcHBy b3ByaWF0ZSB1c2Ugb2YgaGVscGVyLCB3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzIFt1aWQ9JWRd IiwgZ2V0dWlkICgpKTsNCisgICAgICAgZnByaW50ZiAoc3RkZXJyLCAicG9sa2l0LWFnZW50LWhl bHBlci0xOiB3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzLiBUaGlzIGluY2lkZW50IGhhcyBiZWVu IGxvZ2dlZC5cbiIpOw0KK0BAIC04Niw3ICs4NiwxMCBAQCBtYWluIChpbnQgYXJnYywgY2hhciAq YXJndltdKQ0KKyAgICAgfQ0KKyANCisgICB1c2VyX3RvX2F1dGggPSBhcmd2WzFdOw0KKy0gIGNv b2tpZSA9IGFyZ3ZbMl07DQorKw0KKysgIGNvb2tpZSA9IHJlYWRfY29va2llIChhcmdjLCBhcmd2 KTsNCisrICBpZiAoIWNvb2tpZSkNCisrICAgIGdvdG8gZXJyb3I7DQorIA0KKyAjaWZkZWYgUEFI X0RFQlVHDQorICAgZnByaW50ZiAoc3RkZXJyLCAicG9sa2l0LWFnZW50LWhlbHBlci0xOiB1c2Vy IHRvIGF1dGggaXMgJyVzJy5cbiIsIHVzZXJfdG9fYXV0aCk7DQorQEAgLTE1Myw2ICsxNTYsOCBA QCBtYWluIChpbnQgYXJnYywgY2hhciAqYXJndltdKQ0KKyAgICAgICBnb3RvIGVycm9yOw0KKyAg ICAgfQ0KKyANCisrICBmcmVlIChjb29raWUpOw0KKysNCisgI2lmZGVmIFBBSF9ERUJVRw0KKyAg IGZwcmludGYgKHN0ZGVyciwgInBvbGtpdC1hZ2VudC1oZWxwZXItMTogc3VjY2Vzc2Z1bGx5IHNl bnQgRC1CdXMgbWVzc2FnZSB0byBQb2xpY3lLaXQgZGFlbW9uXG4iKTsNCisgI2VuZGlmIC8qIFBB SF9ERUJVRyAqLw0KK0BAIC0xNjIsNiArMTY3LDcgQEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFy Z3ZbXSkNCisgICByZXR1cm4gMDsNCisgDQorIGVycm9yOg0KKysgIGZyZWUgKGNvb2tpZSk7DQor ICAgZnByaW50ZiAoc3Rkb3V0LCAiRkFJTFVSRVxuIik7DQorICAgZmx1c2hfYW5kX3dhaXQgKCk7 DQorICAgcmV0dXJuIDE7DQorZGlmZiAtLWdpdCBhL3NyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2Vu dGhlbHBlcnByaXZhdGUuYyBiL3NyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudGhlbHBlcnByaXZh dGUuYw0KK2luZGV4IDQ0MTdlNzAuLmE5OWRlN2QgMTAwNjQ0DQorLS0tIGEvc3JjL3BvbGtpdGFn ZW50L3BvbGtpdGFnZW50aGVscGVycHJpdmF0ZS5jDQorKysrIGIvc3JjL3BvbGtpdGFnZW50L3Bv bGtpdGFnZW50aGVscGVycHJpdmF0ZS5jDQorQEAgLTIzLDYgKzIzLDcgQEANCisgI2luY2x1ZGUg ImNvbmZpZy5oIg0KKyAjaW5jbHVkZSAicG9sa2l0YWdlbnRoZWxwZXJwcml2YXRlLmgiDQorICNp bmNsdWRlIDxzdGRpby5oPg0KKysjaW5jbHVkZSA8c3RyaW5nLmg+DQorICNpbmNsdWRlIDxzdGRs aWIuaD4NCisgI2luY2x1ZGUgPHVuaXN0ZC5oPg0KKyANCitAQCAtNDUsNiArNDYsMzggQEAgX3Bv bGtpdF9jbGVhcmVudiAodm9pZCkNCisgI2VuZGlmDQorIA0KKyANCisrY2hhciAqDQorK3JlYWRf Y29va2llIChpbnQgYXJnYywgY2hhciAqKmFyZ3YpDQorK3sNCisrICAvKiBBcyBwYXJ0IG9mIENW RS0yMDE1LTQ2MjUsIHdlIHN0YXJ0ZWQgcGFzc2luZyB0aGUgY29va2llDQorKyAgICogb24gc3Rh bmRhcmQgaW5wdXQsIHRvIGVuc3VyZSBpdCdzIG5vdCB2aXNpYmxlIHRvIG90aGVyDQorKyAgICog cHJvY2Vzc2VzLiAgSG93ZXZlciwgdG8gZW5zdXJlIHRoYXQgdGhpbmdzIGNvbnRpbnVlDQorKyAg ICogdG8gd29yayBpZiB0aGUgc2V0dWlkIGJpbmFyeSBpcyB1cGdyYWRlZCB3aGlsZSBvbGQNCisr ICAgKiBhZ2VudHMgYXJlIHN0aWxsIHJ1bm5pbmcgKHRoaXMgd2lsbCBiZSBjb21tb24gd2l0aA0K KysgICAqIHBhY2thZ2UgbWFuYWdlcnMpLCB3ZSBzdXBwb3J0IGJvdGggbW9kZXMuDQorKyAgICov DQorKyAgaWYgKGFyZ2MgPT0gMykNCisrICAgIHJldHVybiBzdHJkdXAgKGFyZ3ZbMl0pOw0KKysg IGVsc2UNCisrICAgIHsNCisrICAgICAgY2hhciAqcmV0ID0gTlVMTDsNCisrICAgICAgc2l6ZV90 IG4gPSAwOw0KKysgICAgICBzc2l6ZV90IHIgPSBnZXRsaW5lICgmcmV0LCAmbiwgc3RkaW4pOw0K KysgICAgICBpZiAociA9PSAtMSkNCisrICAgICAgICB7DQorKyAgICAgICAgICBpZiAoIWZlb2Yg KHN0ZGluKSkNCisrICAgICAgICAgICAgcGVycm9yICgiZ2V0bGluZSIpOw0KKysgICAgICAgICAg ZnJlZSAocmV0KTsNCisrICAgICAgICAgIHJldHVybiBOVUxMOw0KKysgICAgICAgIH0NCisrICAg ICAgZWxzZQ0KKysgICAgICAgIHsNCisrICAgICAgICAgIGdfc3RyY2hvbXAgKHJldCk7DQorKyAg ICAgICAgICByZXR1cm4gcmV0Ow0KKysgICAgICAgIH0NCisrICAgIH0NCisrfQ0KKysNCisgZ2Jv b2xlYW4NCisgc2VuZF9kYnVzX21lc3NhZ2UgKGNvbnN0IGNoYXIgKmNvb2tpZSwgY29uc3QgY2hh ciAqdXNlcikNCisgew0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRo ZWxwZXJwcml2YXRlLmggYi9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRoZWxwZXJwcml2YXRl LmgNCitpbmRleCBhZWNhMmM3Li41NDdmZGNjIDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xraXRhZ2Vu dC9wb2xraXRhZ2VudGhlbHBlcnByaXZhdGUuaA0KKysrKyBiL3NyYy9wb2xraXRhZ2VudC9wb2xr aXRhZ2VudGhlbHBlcnByaXZhdGUuaA0KK0BAIC0zOCw2ICszOCw4IEBADQorIA0KKyBpbnQgX3Bv bGtpdF9jbGVhcmVudiAodm9pZCk7DQorIA0KKytjaGFyICpyZWFkX2Nvb2tpZSAoaW50IGFyZ2Ms IGNoYXIgKiphcmd2KTsNCisrDQorIGdib29sZWFuIHNlbmRfZGJ1c19tZXNzYWdlIChjb25zdCBj aGFyICpjb29raWUsIGNvbnN0IGNoYXIgKnVzZXIpOw0KKyANCisgdm9pZCBmbHVzaF9hbmRfd2Fp dCAoKTsNCitkaWZmIC0tZ2l0IGEvc3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50c2Vzc2lvbi5j IGIvc3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50c2Vzc2lvbi5jDQoraW5kZXggYTY1OGEyMi4u NmEzZDZiYyAxMDA2NDQNCistLS0gYS9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRzZXNzaW9u LmMNCisrKysgYi9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRzZXNzaW9uLmMNCitAQCAtNTUs NiArNTUsNyBAQA0KKyAjaW5jbHVkZSA8c3RkaW8uaD4NCisgI2luY2x1ZGUgPHN5cy90eXBlcy5o Pg0KKyAjaW5jbHVkZSA8c3lzL3dhaXQuaD4NCisrI2luY2x1ZGUgPGdpby9ndW5peG91dHB1dHN0 cmVhbS5oPg0KKyAjaW5jbHVkZSA8cHdkLmg+DQorIA0KKyAjaW5jbHVkZSAicG9sa2l0YWdlbnRt YXJzaGFsLmgiDQorQEAgLTg4LDcgKzg5LDcgQEAgc3RydWN0IF9Qb2xraXRBZ2VudFNlc3Npb24N CisgICBnY2hhciAqY29va2llOw0KKyAgIFBvbGtpdElkZW50aXR5ICppZGVudGl0eTsNCisgDQor LSAgaW50IGNoaWxkX3N0ZGluOw0KKysgIEdPdXRwdXRTdHJlYW0gKmNoaWxkX3N0ZGluOw0KKyAg IGludCBjaGlsZF9zdGRvdXQ7DQorICAgR1BpZCBjaGlsZF9waWQ7DQorIA0KK0BAIC0xMjksNyAr MTMwLDYgQEAgR19ERUZJTkVfVFlQRSAoUG9sa2l0QWdlbnRTZXNzaW9uLCBwb2xraXRfYWdlbnRf c2Vzc2lvbiwgR19UWVBFX09CSkVDVCk7DQorIHN0YXRpYyB2b2lkDQorIHBvbGtpdF9hZ2VudF9z ZXNzaW9uX2luaXQgKFBvbGtpdEFnZW50U2Vzc2lvbiAqc2Vzc2lvbikNCisgew0KKy0gIHNlc3Np b24tPmNoaWxkX3N0ZGluID0gLTE7DQorICAgc2Vzc2lvbi0+Y2hpbGRfc3Rkb3V0ID0gLTE7DQor IH0NCisgDQorQEAgLTM5NSwxMSArMzk1LDcgQEAga2lsbF9oZWxwZXIgKFBvbGtpdEFnZW50U2Vz c2lvbiAqc2Vzc2lvbikNCisgICAgICAgc2Vzc2lvbi0+Y2hpbGRfc3Rkb3V0ID0gLTE7DQorICAg ICB9DQorIA0KKy0gIGlmIChzZXNzaW9uLT5jaGlsZF9zdGRpbiAhPSAtMSkNCistICAgIHsNCist ICAgICAgZ193YXJuX2lmX2ZhaWwgKGNsb3NlIChzZXNzaW9uLT5jaGlsZF9zdGRpbikgPT0gMCk7 DQorLSAgICAgIHNlc3Npb24tPmNoaWxkX3N0ZGluID0gLTE7DQorLSAgICB9DQorKyAgZ19jbGVh cl9vYmplY3QgKCZzZXNzaW9uLT5jaGlsZF9zdGRpbik7DQorIA0KKyAgIHNlc3Npb24tPmhlbHBl cl9pc19ydW5uaW5nID0gRkFMU0U7DQorIA0KK0BAIC01NDUsOSArNTQxLDkgQEAgcG9sa2l0X2Fn ZW50X3Nlc3Npb25fcmVzcG9uc2UgKFBvbGtpdEFnZW50U2Vzc2lvbiAqc2Vzc2lvbiwNCisgDQor ICAgYWRkX25ld2xpbmUgPSAocmVzcG9uc2VbcmVzcG9uc2VfbGVuXSAhPSAnXG4nKTsNCisgDQor LSAgd3JpdGUgKHNlc3Npb24tPmNoaWxkX3N0ZGluLCByZXNwb25zZSwgcmVzcG9uc2VfbGVuKTsN CisrICAodm9pZCkgZ19vdXRwdXRfc3RyZWFtX3dyaXRlX2FsbCAoc2Vzc2lvbi0+Y2hpbGRfc3Rk aW4sIHJlc3BvbnNlLCByZXNwb25zZV9sZW4sIE5VTEwsIE5VTEwsIE5VTEwpOw0KKyAgIGlmIChh ZGRfbmV3bGluZSkNCistICAgIHdyaXRlIChzZXNzaW9uLT5jaGlsZF9zdGRpbiwgbmV3bGluZSwg MSk7DQorKyAgICAodm9pZCkgZ19vdXRwdXRfc3RyZWFtX3dyaXRlX2FsbCAoc2Vzc2lvbi0+Y2hp bGRfc3RkaW4sIG5ld2xpbmUsIDEsIE5VTEwsIE5VTEwsIE5VTEwpOw0KKyB9DQorIA0KKyAvKioN CitAQCAtNTY3LDggKzU2Myw5IEBAIHBvbGtpdF9hZ2VudF9zZXNzaW9uX2luaXRpYXRlIChQb2xr aXRBZ2VudFNlc3Npb24gKnNlc3Npb24pDQorIHsNCisgICB1aWRfdCB1aWQ7DQorICAgR0Vycm9y ICplcnJvcjsNCistICBnY2hhciAqaGVscGVyX2FyZ3ZbNF07DQorKyAgZ2NoYXIgKmhlbHBlcl9h cmd2WzNdOw0KKyAgIHN0cnVjdCBwYXNzd2QgKnBhc3N3ZDsNCisrICBpbnQgc3RkaW5fZmQgPSAt MTsNCisgDQorICAgZ19yZXR1cm5faWZfZmFpbCAoUE9MS0lUX0FHRU5UX0lTX1NFU1NJT04gKHNl c3Npb24pKTsNCisgDQorQEAgLTYwMCwxMCArNTk3LDggQEAgcG9sa2l0X2FnZW50X3Nlc3Npb25f aW5pdGlhdGUgKFBvbGtpdEFnZW50U2Vzc2lvbiAqc2Vzc2lvbikNCisgDQorICAgaGVscGVyX2Fy Z3ZbMF0gPSBQQUNLQUdFX0xJQkVYRUNfRElSICIvcG9sa2l0LWFnZW50LWhlbHBlci0xIjsNCisg ICBoZWxwZXJfYXJndlsxXSA9IHBhc3N3ZC0+cHdfbmFtZTsNCistICBoZWxwZXJfYXJndlsyXSA9 IHNlc3Npb24tPmNvb2tpZTsNCistICBoZWxwZXJfYXJndlszXSA9IE5VTEw7DQorKyAgaGVscGVy X2FyZ3ZbMl0gPSBOVUxMOw0KKyANCistICBzZXNzaW9uLT5jaGlsZF9zdGRpbiA9IC0xOw0KKyAg IHNlc3Npb24tPmNoaWxkX3N0ZG91dCA9IC0xOw0KKyANCisgICBlcnJvciA9IE5VTEw7DQorQEAg LTYxNSw3ICs2MTAsNyBAQCBwb2xraXRfYWdlbnRfc2Vzc2lvbl9pbml0aWF0ZSAoUG9sa2l0QWdl bnRTZXNzaW9uICpzZXNzaW9uKQ0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBO VUxMLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLA0KKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAmc2Vzc2lvbi0+Y2hpbGRfcGlkLA0KKy0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAmc2Vzc2lvbi0+Y2hpbGRfc3RkaW4sDQorKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICZzdGRpbl9mZCwNCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgJnNlc3Npb24tPmNoaWxkX3N0ZG91dCwNCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgJmVycm9yKSkNCitAQCAtNjI4LDYgKzYyMywxMyBAQCBwb2xraXRfYWdlbnRfc2Vzc2lv bl9pbml0aWF0ZSAoUG9sa2l0QWdlbnRTZXNzaW9uICpzZXNzaW9uKQ0KKyAgIGlmIChHX1VOTElL RUxZIChfc2hvd19kZWJ1ZyAoKSkpDQorICAgICBnX3ByaW50ICgiUG9sa2l0QWdlbnRTZXNzaW9u OiBzcGF3bmVkIGhlbHBlciB3aXRoIHBpZCAlZFxuIiwgKGdpbnQpIHNlc3Npb24tPmNoaWxkX3Bp ZCk7DQorIA0KKysgIHNlc3Npb24tPmNoaWxkX3N0ZGluID0gKEdPdXRwdXRTdHJlYW0qKWdfdW5p eF9vdXRwdXRfc3RyZWFtX25ldyAoc3RkaW5fZmQsIFRSVUUpOw0KKysNCisrICAvKiBXcml0ZSB0 aGUgY29va2llIG9uIHN0ZGluIHNvIGl0IGNhbid0IGJlIHNlZW4gYnkgb3RoZXIgcHJvY2Vzc2Vz ICovDQorKyAgKHZvaWQpIGdfb3V0cHV0X3N0cmVhbV93cml0ZV9hbGwgKHNlc3Npb24tPmNoaWxk X3N0ZGluLCBzZXNzaW9uLT5jb29raWUsIHN0cmxlbiAoc2Vzc2lvbi0+Y29va2llKSwNCisrICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgTlVMTCwgTlVMTCk7DQorKyAg KHZvaWQpIGdfb3V0cHV0X3N0cmVhbV93cml0ZV9hbGwgKHNlc3Npb24tPmNoaWxkX3N0ZGluLCAi XG4iLCAxLCBOVUxMLCBOVUxMLCBOVUxMKTsNCisrDQorICAgc2Vzc2lvbi0+Y2hpbGRfc3Rkb3V0 X2NoYW5uZWwgPSBnX2lvX2NoYW5uZWxfdW5peF9uZXcgKHNlc3Npb24tPmNoaWxkX3N0ZG91dCk7 DQorICAgc2Vzc2lvbi0+Y2hpbGRfc3Rkb3V0X3dhdGNoX3NvdXJjZSA9IGdfaW9fY3JlYXRlX3dh dGNoIChzZXNzaW9uLT5jaGlsZF9zdGRvdXRfY2hhbm5lbCwNCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdfSU9fSU4gfCBHX0lPX0VS UiB8IEdfSU9fSFVQKTsNCitkaWZmIC0tZ2l0IGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFj a2VuZGludGVyYWN0aXZlYXV0aG9yaXR5LmMgYi9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNr ZW5kaW50ZXJhY3RpdmVhdXRob3JpdHkuYw0KK2luZGV4IDAwZWUwNDQuLjEwZWRhMmMgMTAwNjQ0 DQorLS0tIGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGludGVyYWN0aXZlYXV0aG9y aXR5LmMNCisrKysgYi9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kaW50ZXJhY3RpdmVh dXRob3JpdHkuYw0KK0BAIC0yMTIsNiArMjEyLDggQEAgdHlwZWRlZiBzdHJ1Y3QNCisgDQorICAg R0RCdXNDb25uZWN0aW9uICpzeXN0ZW1fYnVzX2Nvbm5lY3Rpb247DQorICAgZ3VpbnQgbmFtZV9v d25lcl9jaGFuZ2VkX3NpZ25hbF9pZDsNCisrDQorKyAgZ3VpbnQ2NCBhZ2VudF9zZXJpYWw7DQor IH0gUG9sa2l0QmFja2VuZEludGVyYWN0aXZlQXV0aG9yaXR5UHJpdmF0ZTsNCisgDQorIC8qIC0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8NCitAQCAtNDMwLDEx ICs0MzIsMTUgQEAgc3RydWN0IEF1dGhlbnRpY2F0aW9uQWdlbnQNCisgICB2b2xhdGlsZSBnaW50 IHJlZl9jb3VudDsNCisgDQorICAgUG9sa2l0U3ViamVjdCAqc2NvcGU7DQorKyAgZ3VpbnQ2NCBz ZXJpYWw7DQorIA0KKyAgIGdjaGFyICpsb2NhbGU7DQorICAgR1ZhcmlhbnQgKnJlZ2lzdHJhdGlv bl9vcHRpb25zOw0KKyAgIGdjaGFyICpvYmplY3RfcGF0aDsNCisgICBnY2hhciAqdW5pcXVlX3N5 c3RlbV9idXNfbmFtZTsNCisrICBHUmFuZCAqY29va2llX3Bvb2w7DQorKyAgZ2NoYXIgKmNvb2tp ZV9wcmVmaXg7DQorKyAgZ3VpbnQ2NCAgY29va2llX3NlcmlhbDsNCisgDQorICAgR0RCdXNQcm94 eSAqcHJveHk7DQorIA0KK0BAIC0xNDMwLDkgKzE0MzYsNTQgQEAgYXV0aGVudGljYXRpb25fc2Vz c2lvbl9jYW5jZWxsZWRfY2IgKEdDYW5jZWxsYWJsZSAqY2FuY2VsbGFibGUsDQorICAgYXV0aGVu dGljYXRpb25fc2Vzc2lvbl9jYW5jZWwgKHNlc3Npb24pOw0KKyB9DQorIA0KKysvKiBXZSdyZSBu b3QgY2FsbGluZyB0aGlzIGEgVVVJRCwgYnV0IGl0J3MgYmFzaWNhbGx5DQorKyAqIHRoZSBzYW1l IHRoaW5nLCBqdXN0IG5vdCBmb3JtYXR0ZWQgdGhhdCB3YXkgYmVjYXVzZToNCisrICoNCisrICog IC0gSSdtIHRvbyBsYXp5IHRvIGRvIGl0DQorKyAqICAtIElmIHdlIGRpZCwgcGVvcGxlIG1pZ2h0 IHRoaW5rIGl0IHdhcyBhY3R1YWxseQ0KKysgKiAgICBnZW5lcmF0ZWQgZnJvbSAvZGV2L3JhbmRv bSwgd2hpY2ggd2UncmUgbm90IGRvaW5nDQorKyAqICAgIGJlY2F1c2UgdGhpcyB2YWx1ZSBkb2Vz bid0IGFjdHVhbGx5IG5lZWQgdG8gYmUNCisrICogICAgZ2xvYmFsbHkgdW5pcXVlLg0KKysgKi8N Cisrc3RhdGljIHZvaWQNCisrYXBwZW5kX3JhbmRfdTEyOF9zdHIgKEdTdHJpbmcgKmJ1ZiwNCisr ICAgICAgICAgICAgICAgICAgICAgIEdSYW5kICAgKnBvb2wpDQorK3sNCisrICBnX3N0cmluZ19h cHBlbmRfcHJpbnRmIChidWYsICIlMDh4JTA4eCUwOHglMDh4IiwNCisrICAgICAgICAgICAgICAg ICAgICAgICAgICBnX3JhbmRfaW50IChwb29sKSwNCisrICAgICAgICAgICAgICAgICAgICAgICAg ICBnX3JhbmRfaW50IChwb29sKSwNCisrICAgICAgICAgICAgICAgICAgICAgICAgICBnX3JhbmRf aW50IChwb29sKSwNCisrICAgICAgICAgICAgICAgICAgICAgICAgICBnX3JhbmRfaW50IChwb29s KSk7DQorK30NCisrDQorKy8qIEEgdmFsdWUgdGhhdCBzaG91bGQgYmUgdW5pcXVlIHRvIHRoZSAo QXV0aGVudGljYXRpb25BZ2VudCwgQXV0aGVudGljYXRpb25TZXNzaW9uKQ0KKysgKiBwYWlyLCBh bmQgbm90IGd1ZXNzYWJsZSBieSBvdGhlciBhZ2VudHMuDQorKyAqDQorKyAqIDxhZ2VudCBzZXJp YWw+IC0gPGFnZW50IHV1aWQ+IC0gPHNlc3Npb24gc2VyaWFsPiAtIDxzZXNzaW9uIHV1aWQ+DQor KyAqDQorKyAqIFNlZSBodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL2FyY2hpdmVzL3BvbGtp dC1kZXZlbC8yMDE1LUp1bmUvMDAwNDI1Lmh0bWwNCisrICoNCisrICovDQorK3N0YXRpYyBnY2hh ciAqDQorK2F1dGhlbnRpY2F0aW9uX2FnZW50X2dlbmVyYXRlX2Nvb2tpZSAoQXV0aGVudGljYXRp b25BZ2VudCAqYWdlbnQpDQorK3sNCisrICBHU3RyaW5nICpidWYgPSBnX3N0cmluZ19uZXcgKCIi KTsNCisrDQorKyAgZ19zdHJpbmdfYXBwZW5kIChidWYsIGFnZW50LT5jb29raWVfcHJlZml4KTsN CisrICANCisrICBnX3N0cmluZ19hcHBlbmRfYyAoYnVmLCAnLScpOw0KKysgIGFnZW50LT5jb29r aWVfc2VyaWFsKys7DQorKyAgZ19zdHJpbmdfYXBwZW5kX3ByaW50ZiAoYnVmLCAiJSIgR19HVUlO VDY0X0ZPUk1BVCwgDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgYWdlbnQtPmNvb2tpZV9z ZXJpYWwpOw0KKysgIGdfc3RyaW5nX2FwcGVuZF9jIChidWYsICctJyk7DQorKyAgYXBwZW5kX3Jh bmRfdTEyOF9zdHIgKGJ1ZiwgYWdlbnQtPmNvb2tpZV9wb29sKTsNCisrDQorKyAgcmV0dXJuIGdf c3RyaW5nX2ZyZWUgKGJ1ZiwgRkFMU0UpOw0KKyt9DQorKw0KKysNCisgc3RhdGljIEF1dGhlbnRp Y2F0aW9uU2Vzc2lvbiAqDQorIGF1dGhlbnRpY2F0aW9uX3Nlc3Npb25fbmV3IChBdXRoZW50aWNh dGlvbkFnZW50ICAgICAgICAgKmFnZW50LA0KKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAg Y29uc3QgZ2NoYXIgICAgICAgICAgICAgICAgICpjb29raWUsDQorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBQb2xraXRTdWJqZWN0ICAgICAgICAgICAgICAgKnN1YmplY3QsDQorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBQb2xraXRJZGVudGl0eSAgICAgICAgICAgICAgKnVzZXJf b2Zfc3ViamVjdCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBvbGtpdFN1YmplY3Qg ICAgICAgICAgICAgICAqY2FsbGVyLA0KK0BAIC0xNDQ5LDcgKzE1MDAsNyBAQCBhdXRoZW50aWNh dGlvbl9zZXNzaW9uX25ldyAoQXV0aGVudGljYXRpb25BZ2VudCAgICAgICAgICphZ2VudCwNCisg DQorICAgc2Vzc2lvbiA9IGdfbmV3MCAoQXV0aGVudGljYXRpb25TZXNzaW9uLCAxKTsNCisgICBz ZXNzaW9uLT5hZ2VudCA9IGF1dGhlbnRpY2F0aW9uX2FnZW50X3JlZiAoYWdlbnQpOw0KKy0gIHNl c3Npb24tPmNvb2tpZSA9IGdfc3RyZHVwIChjb29raWUpOw0KKysgIHNlc3Npb24tPmNvb2tpZSA9 IGF1dGhlbnRpY2F0aW9uX2FnZW50X2dlbmVyYXRlX2Nvb2tpZSAoYWdlbnQpOw0KKyAgIHNlc3Np b24tPnN1YmplY3QgPSBnX29iamVjdF9yZWYgKHN1YmplY3QpOw0KKyAgIHNlc3Npb24tPnVzZXJf b2Zfc3ViamVjdCA9IGdfb2JqZWN0X3JlZiAodXNlcl9vZl9zdWJqZWN0KTsNCisgICBzZXNzaW9u LT5jYWxsZXIgPSBnX29iamVjdF9yZWYgKGNhbGxlcik7DQorQEAgLTE0OTYsMTYgKzE1NDcsNiBA QCBhdXRoZW50aWNhdGlvbl9zZXNzaW9uX2ZyZWUgKEF1dGhlbnRpY2F0aW9uU2Vzc2lvbiAqc2Vz c2lvbikNCisgICBnX2ZyZWUgKHNlc3Npb24pOw0KKyB9DQorIA0KKy1zdGF0aWMgZ2NoYXIgKg0K Ky1hdXRoZW50aWNhdGlvbl9hZ2VudF9uZXdfY29va2llIChBdXRoZW50aWNhdGlvbkFnZW50ICph Z2VudCkNCistew0KKy0gIHN0YXRpYyBnaW50IGNvdW50ZXIgPSAwOw0KKy0NCistICAvKiBUT0RP OiB1c2UgYSBtb3JlIHJhbmRvbS1sb29raW5nIGNvb2tpZSAqLw0KKy0NCistICByZXR1cm4gZ19z dHJkdXBfcHJpbnRmICgiY29va2llJWQiLCBjb3VudGVyKyspOw0KKy19DQorLQ0KKyBzdGF0aWMg UG9sa2l0U3ViamVjdCAqDQorIGF1dGhlbnRpY2F0aW9uX2FnZW50X2dldF9zY29wZSAoQXV0aGVu dGljYXRpb25BZ2VudCAqYWdlbnQpDQorIHsNCitAQCAtMTU1MywxMiArMTU5NCwxNSBAQCBhdXRo ZW50aWNhdGlvbl9hZ2VudF91bnJlZiAoQXV0aGVudGljYXRpb25BZ2VudCAqYWdlbnQpDQorICAg ICAgIGdfZnJlZSAoYWdlbnQtPnVuaXF1ZV9zeXN0ZW1fYnVzX25hbWUpOw0KKyAgICAgICBpZiAo YWdlbnQtPnJlZ2lzdHJhdGlvbl9vcHRpb25zICE9IE5VTEwpDQorICAgICAgICAgZ192YXJpYW50 X3VucmVmIChhZ2VudC0+cmVnaXN0cmF0aW9uX29wdGlvbnMpOw0KKysgICAgICBnX3JhbmRfZnJl ZSAoYWdlbnQtPmNvb2tpZV9wb29sKTsNCisrICAgICAgZ19mcmVlIChhZ2VudC0+Y29va2llX3By ZWZpeCk7DQorICAgICAgIGdfZnJlZSAoYWdlbnQpOw0KKyAgICAgfQ0KKyB9DQorIA0KKyBzdGF0 aWMgQXV0aGVudGljYXRpb25BZ2VudCAqDQorLWF1dGhlbnRpY2F0aW9uX2FnZW50X25ldyAoUG9s a2l0U3ViamVjdCAqc2NvcGUsDQorK2F1dGhlbnRpY2F0aW9uX2FnZW50X25ldyAoZ3VpbnQ2NCAg ICAgIHNlcmlhbCwNCisrICAgICAgICAgICAgICAgICAgICAgICAgICBQb2xraXRTdWJqZWN0ICpz Y29wZSwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnY2hhciAqdW5pcXVlX3N5 c3RlbV9idXNfbmFtZSwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnY2hhciAq bG9jYWxlLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGdjaGFyICpvYmplY3Rf cGF0aCwNCitAQCAtMTU5Miw2ICsxNjM2LDcgQEAgYXV0aGVudGljYXRpb25fYWdlbnRfbmV3IChQ b2xraXRTdWJqZWN0ICpzY29wZSwNCisgDQorICAgYWdlbnQgPSBnX25ldzAgKEF1dGhlbnRpY2F0 aW9uQWdlbnQsIDEpOw0KKyAgIGFnZW50LT5yZWZfY291bnQgPSAxOw0KKysgIGFnZW50LT5zZXJp YWwgPSBzZXJpYWw7DQorICAgYWdlbnQtPnNjb3BlID0gZ19vYmplY3RfcmVmIChzY29wZSk7DQor ICAgYWdlbnQtPm9iamVjdF9wYXRoID0gZ19zdHJkdXAgKG9iamVjdF9wYXRoKTsNCisgICBhZ2Vu dC0+dW5pcXVlX3N5c3RlbV9idXNfbmFtZSA9IGdfc3RyZHVwICh1bmlxdWVfc3lzdGVtX2J1c19u YW1lKTsNCitAQCAtMTU5OSw2ICsxNjQ0LDI1IEBAIGF1dGhlbnRpY2F0aW9uX2FnZW50X25ldyAo UG9sa2l0U3ViamVjdCAqc2NvcGUsDQorICAgYWdlbnQtPnJlZ2lzdHJhdGlvbl9vcHRpb25zID0g cmVnaXN0cmF0aW9uX29wdGlvbnMgIT0gTlVMTCA/IGdfdmFyaWFudF9yZWYgKHJlZ2lzdHJhdGlv bl9vcHRpb25zKSA6IE5VTEw7DQorICAgYWdlbnQtPnByb3h5ID0gcHJveHk7DQorIA0KKysgIHsN CisrICAgIEdTdHJpbmcgKmNvb2tpZV9wcmVmaXggPSBnX3N0cmluZ19uZXcgKCIiKTsNCisrICAg IEdSYW5kICphZ2VudF9wcml2YXRlX3JhbmQgPSBnX3JhbmRfbmV3ICgpOw0KKysNCisrICAgIGdf c3RyaW5nX2FwcGVuZF9wcmludGYgKGNvb2tpZV9wcmVmaXgsICIlIiBHX0dVSU5UNjRfRk9STUFU ICItIiwgYWdlbnQtPnNlcmlhbCk7DQorKw0KKysgICAgLyogVXNlIGEgdW5pcXVlbHkgc2VlZGVk IFBSTkcgdG8gZ2V0IGEgcHJlZml4IGNvb2tpZSBmb3IgdGhpcyBhZ2VudCwNCisrICAgICAqIHdo b3NlIHNlcXVlbmNlIHdpbGwgbm90IGNvcnJlbGF0ZSB3aXRoIHRoZSBwZXItYXV0aGVudGljYXRp b24gc2Vzc2lvbg0KKysgICAgICogY29va2llcy4NCisrICAgICAqLw0KKysgICAgYXBwZW5kX3Jh bmRfdTEyOF9zdHIgKGNvb2tpZV9wcmVmaXgsIGFnZW50X3ByaXZhdGVfcmFuZCk7DQorKyAgICBn X3JhbmRfZnJlZSAoYWdlbnRfcHJpdmF0ZV9yYW5kKTsNCisrDQorKyAgICBhZ2VudC0+Y29va2ll X3ByZWZpeCA9IGdfc3RyaW5nX2ZyZWUgKGNvb2tpZV9wcmVmaXgsIEZBTFNFKTsNCisrICAgIA0K KysgICAgLyogQW5kIGEgbmV3bHkgc2VlZGVkIHBvb2wgZm9yIHBlci1zZXNzaW9uIGNvb2tpZXMg Ki8NCisrICAgIGFnZW50LT5jb29raWVfcG9vbCA9IGdfcmFuZF9uZXcgKCk7DQorKyAgfQ0KKysN CisgICByZXR1cm4gYWdlbnQ7DQorIH0NCisgDQorQEAgLTIwODMsNyArMjE0Nyw2IEBAIGF1dGhl bnRpY2F0aW9uX2FnZW50X2luaXRpYXRlX2NoYWxsZW5nZSAoQXV0aGVudGljYXRpb25BZ2VudCAg ICAgICAgICphZ2VudCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBncG9pbnRlciAgICAgICAgICAgICAgICAgICAgIHVzZXJfZGF0YSkNCisgew0KKyAgIEF1dGhl bnRpY2F0aW9uU2Vzc2lvbiAqc2Vzc2lvbjsNCistICBnY2hhciAqY29va2llOw0KKyAgIEdMaXN0 ICpsOw0KKyAgIEdMaXN0ICppZGVudGl0aWVzOw0KKyAgIGdjaGFyICpsb2NhbGl6ZWRfbWVzc2Fn ZTsNCitAQCAtMjEwNCw4ICsyMTY3LDYgQEAgYXV0aGVudGljYXRpb25fYWdlbnRfaW5pdGlhdGVf Y2hhbGxlbmdlIChBdXRoZW50aWNhdGlvbkFnZW50ICAgICAgICAgKmFnZW50LA0KKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbG9jYWxpemVkX2ljb25fbmFtZSwNCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmxvY2FsaXplZF9kZXRhaWxzKTsNCisg DQorLSAgY29va2llID0gYXV0aGVudGljYXRpb25fYWdlbnRfbmV3X2Nvb2tpZSAoYWdlbnQpOw0K Ky0NCisgICBpZGVudGl0aWVzID0gTlVMTDsNCisgDQorICAgLyogc2VsZWN0IGFkbWluIHVzZXIg aWYgcmVxdWlyZWQgYnkgdGhlIGltcGxpY2l0IGF1dGhvcml6YXRpb24gKi8NCitAQCAtMjEyNSw3 ICsyMTg2LDYgQEAgYXV0aGVudGljYXRpb25fYWdlbnRfaW5pdGlhdGVfY2hhbGxlbmdlIChBdXRo ZW50aWNhdGlvbkFnZW50ICAgICAgICAgKmFnZW50LA0KKyAgICAgfQ0KKyANCisgICBzZXNzaW9u ID0gYXV0aGVudGljYXRpb25fc2Vzc2lvbl9uZXcgKGFnZW50LA0KKy0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgY29va2llLA0KKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgc3ViamVjdCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHVzZXJfb2Zfc3ViamVjdCwNCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGNhbGxlciwNCitAQCAtMjE3OSw3ICsyMjM5LDYgQEAgYXV0aGVudGlj YXRpb25fYWdlbnRfaW5pdGlhdGVfY2hhbGxlbmdlIChBdXRoZW50aWNhdGlvbkFnZW50ICAgICAg ICAgKmFnZW50LA0KKyANCisgICBnX2xpc3RfZm9yZWFjaCAoaWRlbnRpdGllcywgKEdGdW5jKSBn X29iamVjdF91bnJlZiwgTlVMTCk7DQorICAgZ19saXN0X2ZyZWUgKGlkZW50aXRpZXMpOw0KKy0g IGdfZnJlZSAoY29va2llKTsNCisgDQorICAgZ19mcmVlIChsb2NhbGl6ZWRfbWVzc2FnZSk7DQor ICAgZ19mcmVlIChsb2NhbGl6ZWRfaWNvbl9uYW1lKTsNCitAQCAtMjMyNiw3ICsyMzg1LDkgQEAg cG9sa2l0X2JhY2tlbmRfaW50ZXJhY3RpdmVfYXV0aG9yaXR5X3JlZ2lzdGVyX2F1dGhlbnRpY2F0 aW9uX2FnZW50IChQb2xraXRCYWNrZW4NCisgICAgICAgZ290byBvdXQ7DQorICAgICB9DQorIA0K Ky0gIGFnZW50ID0gYXV0aGVudGljYXRpb25fYWdlbnRfbmV3IChzdWJqZWN0LA0KKysgIHByaXYt PmFnZW50X3NlcmlhbCsrOw0KKysgIGFnZW50ID0gYXV0aGVudGljYXRpb25fYWdlbnRfbmV3IChw cml2LT5hZ2VudF9zZXJpYWwsDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHN1YmplY3QsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvbGtpdF9z eXN0ZW1fYnVzX25hbWVfZ2V0X25hbWUgKFBPTEtJVF9TWVNURU1fQlVTX05BTUUgKGNhbGxlcikp LA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NhbGUsDQorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdF9wYXRoLA0KZGlmZiAtLWdpdCBh L3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL0Rvbi10LWRpc2NhcmQtZXJyb3ItZGF0YS1yZXR1 cm5lZC1ieS1wb2xraXRfc3lzdGVtX2IucGF0Y2ggYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjEx My9Eb24tdC1kaXNjYXJkLWVycm9yLWRhdGEtcmV0dXJuZWQtYnktcG9sa2l0X3N5c3RlbV9iLnBh dGNoDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi4wZWI3ZWMxNjQNCi0t LSAvZGV2L251bGwNCisrKyBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL0Rvbi10LWRpc2Nh cmQtZXJyb3ItZGF0YS1yZXR1cm5lZC1ieS1wb2xraXRfc3lzdGVtX2IucGF0Y2gNCkBAIC0wLDAg KzEsMjUgQEANCitGcm9tOiA9P3V0Zi04P3E/TWlsb3NsYXZfVHJtYT1DND04RD89IDxtaXRyQHJl ZGhhdC5jb20+DQorRGF0ZTogTW9uLCAxMSBOb3YgMjAxMyAyMzo1MToyMyArMDEwMA0KK1N1Ympl Y3Q6IERvbid0IGRpc2NhcmQgZXJyb3IgZGF0YSByZXR1cm5lZCBieQ0KKyBwb2xraXRfc3lzdGVt X2J1c19uYW1lX2dldF91c2VyX3N5bmMNCisNCitCdWc6IGh0dHBzOi8vYnVncy5mcmVlZGVza3Rv cC5vcmcvc2hvd19idWcuY2dpP2lkPTcxNDU4DQorT3JpZ2luOiB1cHN0cmVhbSwgMC4xMTMsIGNv bW1pdDogMTQ1ZDQzYjljODkxZjI0OGFkNjhlYmU1OTdjYjE1MWE4NjViZGIzYQ0KK0J1Zy1EZWJp YW46IGh0dHBzOi8vYnVncy5kZWJpYW4ub3JnLzc5ODc2OQ0KKy0tLQ0KKyBzcmMvcG9sa2l0YmFj a2VuZC9wb2xraXRiYWNrZW5kc2Vzc2lvbm1vbml0b3IuYyB8IDIgKy0NCisgMSBmaWxlIGNoYW5n ZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pDQorDQorZGlmZiAtLWdpdCBhL3NyYy9w b2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRzZXNzaW9ubW9uaXRvci5jIGIvc3JjL3BvbGtpdGJh Y2tlbmQvcG9sa2l0YmFja2VuZHNlc3Npb25tb25pdG9yLmMNCitpbmRleCAwNWY1MWM1Li5lMWE5 YWIzIDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRzZXNzaW9u bW9uaXRvci5jDQorKysrIGIvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZHNlc3Npb25t b25pdG9yLmMNCitAQCAtMzA2LDcgKzMwNiw3IEBAIHBvbGtpdF9iYWNrZW5kX3Nlc3Npb25fbW9u aXRvcl9nZXRfdXNlcl9mb3Jfc3ViamVjdCAoUG9sa2l0QmFja2VuZFNlc3Npb25Nb25pdG9yDQor ICAgICB9DQorICAgZWxzZSBpZiAoUE9MS0lUX0lTX1NZU1RFTV9CVVNfTkFNRSAoc3ViamVjdCkp DQorICAgICB7DQorLSAgICAgIHJldCA9IChQb2xraXRJZGVudGl0eSopcG9sa2l0X3N5c3RlbV9i dXNfbmFtZV9nZXRfdXNlcl9zeW5jIChQT0xLSVRfU1lTVEVNX0JVU19OQU1FIChzdWJqZWN0KSwg TlVMTCwgTlVMTCk7DQorKyAgICAgIHJldCA9IChQb2xraXRJZGVudGl0eSopcG9sa2l0X3N5c3Rl bV9idXNfbmFtZV9nZXRfdXNlcl9zeW5jIChQT0xLSVRfU1lTVEVNX0JVU19OQU1FIChzdWJqZWN0 KSwgTlVMTCwgZXJyb3IpOw0KKyAgICAgfQ0KKyAgIGVsc2UgaWYgKFBPTEtJVF9JU19VTklYX1NF U1NJT04gKHN1YmplY3QpKQ0KKyAgICAgew0KZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9sa2l0LTAu MTA1LzAuMTEzL0ZpeC1hLWNyYXNoLXdoZW4tdHdvLWF1dGhlbnRpY2F0aW9uLXJlcXVlc3RzLWFy ZS1pbi0ucGF0Y2ggYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9GaXgtYS1jcmFzaC13aGVu LXR3by1hdXRoZW50aWNhdGlvbi1yZXF1ZXN0cy1hcmUtaW4tLnBhdGNoDQpuZXcgZmlsZSBtb2Rl IDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi5lZTQ0NTMxZDANCi0tLSAvZGV2L251bGwNCisrKyBi L3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL0ZpeC1hLWNyYXNoLXdoZW4tdHdvLWF1dGhlbnRp Y2F0aW9uLXJlcXVlc3RzLWFyZS1pbi0ucGF0Y2gNCkBAIC0wLDAgKzEsMzYgQEANCitGcm9tOiA9 P3V0Zi04P3E/TWlsb3NsYXZfVHJtYT1DND04RD89IDxtaXRyQHJlZGhhdC5jb20+DQorRGF0ZTog U2F0LCA2IEp1biAyMDE1IDAxOjA3OjA4ICswMjAwDQorU3ViamVjdDogRml4IGEgY3Jhc2ggd2hl biB0d28gYXV0aGVudGljYXRpb24gcmVxdWVzdHMgYXJlIGluIGZsaWdodC4NCisNCitUbyByZXBy b2R1Y2U6DQorMS4gcGt0dHlhZ2VudCAtcCAkJCAjIG9yIGFub3RoZXIgc3VpdGFibGUgUElEDQor Mi4gcGtjaGVjayAtcCAkdGhhdF9waWQgLWEgb3JnLmZyZWVkZXNrdG9wLnBvbGljeWtpdC5leGVj IC11DQorMy4gcGtjaGVjayAtcCAkdGhhdF9waWQgLWEgb3JnLmZyZWVkZXNrdG9wLnBvbGljeWtp dC5leGVjIC11DQorNC4gVGhlbiwgaW4gdGhlIHBrdHR5YWdlbnQgcHJvbXB0LCBwcmVzcyBFbnRl ci4NCisNCitwb2xraXRfYWdlbnRfdGV4dF9saXN0ZW5lcl9pbml0aWF0ZV9hdXRoZW50aWNhdGlv biB3YXMgYWxyZWFkeSBzZXR0aW5nDQorYW4gYXBwcm9wcmlhdGUgZXJyb3IgY29kZSwgc28gdGhl IGdfYXNzZXJ0IHdhcyB1bm5lY2Vzc2FyeS4NCisNCitCdWc6IGh0dHBzOi8vYnVncy5mcmVlZGVz a3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTkwODc5DQorT3JpZ2luOiB1cHN0cmVhbSwgMC4xMTMs IGNvbW1pdDplMmQyZmFmZDEwNjYyNGRkZmVhNGIxN2QzZjQwNzA0YjIwMzFjMDBiDQorLS0tDQor IHNyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudHRleHRsaXN0ZW5lci5jIHwgMiAtLQ0KKyAxIGZp bGUgY2hhbmdlZCwgMiBkZWxldGlvbnMoLSkNCisNCitkaWZmIC0tZ2l0IGEvc3JjL3BvbGtpdGFn ZW50L3BvbGtpdGFnZW50dGV4dGxpc3RlbmVyLmMgYi9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdl bnR0ZXh0bGlzdGVuZXIuYw0KK2luZGV4IGI1YzhhM2YuLmU2M2MyODUgMTAwNjQ0DQorLS0tIGEv c3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50dGV4dGxpc3RlbmVyLmMNCisrKysgYi9zcmMvcG9s a2l0YWdlbnQvcG9sa2l0YWdlbnR0ZXh0bGlzdGVuZXIuYw0KK0BAIC01NDYsMTIgKzU0NiwxMCBA QCBwb2xraXRfYWdlbnRfdGV4dF9saXN0ZW5lcl9pbml0aWF0ZV9hdXRoZW50aWNhdGlvbl9maW5p c2ggKFBvbGtpdEFnZW50TGlzdGVuZXINCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHQXN5bmNSZXN1bHQgICAgICAgICAqcmVzLA0K KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIEdFcnJvciAgICAgICAgICAgICAgKiplcnJvcikNCisgew0KKy0gIFBvbGtpdEFnZW50VGV4 dExpc3RlbmVyICpsaXN0ZW5lciA9IFBPTEtJVF9BR0VOVF9URVhUX0xJU1RFTkVSIChfbGlzdGVu ZXIpOw0KKyAgIGdib29sZWFuIHJldDsNCisgDQorICAgZ193YXJuX2lmX2ZhaWwgKGdfc2ltcGxl X2FzeW5jX3Jlc3VsdF9nZXRfc291cmNlX3RhZyAoR19TSU1QTEVfQVNZTkNfUkVTVUxUIChyZXMp KSA9PQ0KKyAgICAgICAgICAgICAgICAgICBwb2xraXRfYWdlbnRfdGV4dF9saXN0ZW5lcl9pbml0 aWF0ZV9hdXRoZW50aWNhdGlvbik7DQorLSAgZ19hc3NlcnQgKGxpc3RlbmVyLT5hY3RpdmVfc2Vz c2lvbiA9PSBOVUxMKTsNCisgDQorICAgcmV0ID0gRkFMU0U7DQorIA0KZGlmZiAtLWdpdCBhL3Bh dGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL0ZpeC1hLW1lbW9yeS1sZWFrLXdoZW4tcmVnaXN0ZXJp bmctYW4tYXV0aGVudGljYXRpb24ucGF0Y2ggYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9G aXgtYS1tZW1vcnktbGVhay13aGVuLXJlZ2lzdGVyaW5nLWFuLWF1dGhlbnRpY2F0aW9uLnBhdGNo DQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi5iN2ZkY2Y0NjYNCi0tLSAv ZGV2L251bGwNCisrKyBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL0ZpeC1hLW1lbW9yeS1s ZWFrLXdoZW4tcmVnaXN0ZXJpbmctYW4tYXV0aGVudGljYXRpb24ucGF0Y2gNCkBAIC0wLDAgKzEs MjIgQEANCitGcm9tOiA9P3V0Zi04P3E/TWlsb3NsYXZfVHJtYT1DND04RD89IDxtaXRyQHJlZGhh dC5jb20+DQorRGF0ZTogVHVlLCAxIEp1bCAyMDE0IDIwOjAwOjQ4ICswMjAwDQorU3ViamVjdDog Rml4IGEgbWVtb3J5IGxlYWsgd2hlbiByZWdpc3RlcmluZyBhbiBhdXRoZW50aWNhdGlvbiBhZ2Vu dA0KKw0KK0J1ZzogaHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9 Njk1MDENCitPcmlnaW46IHVwc3RyZWFtLCAwLjExMywgY29tbWl0OmVjMDM5ZjlkN2VkZTViODM5 ZjU1MTFlMjZkNWNkNmFlOTEwN2NiMmUNCistLS0NCisgc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0 YmFja2VuZGF1dGhvcml0eS5jIHwgMSArDQorIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigr KQ0KKw0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kYXV0aG9y aXR5LmMgYi9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kYXV0aG9yaXR5LmMNCitpbmRl eCAzOWViNWI5Li5hZmU1YjkwIDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtp dGJhY2tlbmRhdXRob3JpdHkuYw0KKysrKyBiL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tl bmRhdXRob3JpdHkuYw0KK0BAIC05MDAsNiArOTAwLDcgQEAgc2VydmVyX2hhbmRsZV9yZWdpc3Rl cl9hdXRoZW50aWNhdGlvbl9hZ2VudCAoU2VydmVyICAgICAgICAgICAgICAgICAqc2VydmVyLA0K KyAgIGdfZGJ1c19tZXRob2RfaW52b2NhdGlvbl9yZXR1cm5fdmFsdWUgKGludm9jYXRpb24sIGdf dmFyaWFudF9uZXcgKCIoKSIpKTsNCisgDQorICBvdXQ6DQorKyAgZ192YXJpYW50X3VucmVmIChz dWJqZWN0X2d2YXJpYW50KTsNCisgICBpZiAoc3ViamVjdCAhPSBOVUxMKQ0KKyAgICAgZ19vYmpl Y3RfdW5yZWYgKHN1YmplY3QpOw0KKyB9DQpkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9wb2xraXQtMC4x MDUvMC4xMTMvRml4LWEtcGVyLWF1dGhvcml6YXRpb24tbWVtb3J5LWxlYWsucGF0Y2ggYi9wYXRj aGVzL3BvbGtpdC0wLjEwNS8wLjExMy9GaXgtYS1wZXItYXV0aG9yaXphdGlvbi1tZW1vcnktbGVh ay5wYXRjaA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMC4uZWFhZmVkNjQ0 DQotLS0gL2Rldi9udWxsDQorKysgYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9GaXgtYS1w ZXItYXV0aG9yaXphdGlvbi1tZW1vcnktbGVhay5wYXRjaA0KQEAgLTAsMCArMSw0OSBAQA0KK0Zy b206ID0/dXRmLTg/cT9NaWxvc2xhdl9Ucm1hPUM0PThEPz0gPG1pdHJAcmVkaGF0LmNvbT4NCitE YXRlOiBUdWUsIDEgSnVsIDIwMTQgMjA6MDA6NDggKzAyMDANCitTdWJqZWN0OiBGaXggYSBwZXIt YXV0aG9yaXphdGlvbiBtZW1vcnkgbGVhaw0KKw0KK1dlIHdlcmUgbGVha2luZyBQb2xraXRBdXRo b3JpemF0aW9uUmVzdWx0IG9uIGV2ZXJ5IHJlcXVlc3QsIHByaW1hcmlseSBvbg0KK3RoZSBzdWNj ZXNzIHBhdGgsIGJ1dCBhbHNvIG9uIHZhcmlvdXMgZXJyb3IgcGF0aHMgYXMgd2VsbC4NCisNCitC dWc6IGh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTY5NTAxDQor T3JpZ2luOiB1cHN0cmVhbSwgMC4xMTMsIGNvbW1pdDowZjU4NTJhNGJkYWJlMzc3ZGRjZGJlZDA5 YTBjMWY5NTcxMGUxN2ZlDQorLS0tDQorIHNyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRh dXRob3JpdHkuYyAgICAgICAgICAgIHwgMSArDQorIHNyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJh Y2tlbmRpbnRlcmFjdGl2ZWF1dGhvcml0eS5jIHwgNSArKysrLQ0KKyAyIGZpbGVzIGNoYW5nZWQs IDUgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQ0KKw0KK2RpZmYgLS1naXQgYS9zcmMvcG9s a2l0YmFja2VuZC9wb2xraXRiYWNrZW5kYXV0aG9yaXR5LmMgYi9zcmMvcG9sa2l0YmFja2VuZC9w b2xraXRiYWNrZW5kYXV0aG9yaXR5LmMNCitpbmRleCAxMGI4YWYzLi4zOWViNWI5IDEwMDY0NA0K Ky0tLSBhL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRhdXRob3JpdHkuYw0KKysrKyBi L3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRhdXRob3JpdHkuYw0KK0BAIC03MTQsNiAr NzE0LDcgQEAgY2hlY2tfYXV0aF9jYiAoR09iamVjdCAgICAgICpzb3VyY2Vfb2JqZWN0LA0KKyAg ICAgICBnX3ZhcmlhbnRfcmVmX3NpbmsgKHZhbHVlKTsNCisgICAgICAgZ19kYnVzX21ldGhvZF9p bnZvY2F0aW9uX3JldHVybl92YWx1ZSAoZGF0YS0+aW52b2NhdGlvbiwgZ192YXJpYW50X25ldyAo IihAKGJiYXtzc30pKSIsIHZhbHVlKSk7DQorICAgICAgIGdfdmFyaWFudF91bnJlZiAodmFsdWUp Ow0KKysgICAgICBnX29iamVjdF91bnJlZiAocmVzdWx0KTsNCisgICAgIH0NCisgDQorICAgY2hl Y2tfYXV0aF9kYXRhX2ZyZWUgKGRhdGEpOw0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0YmFja2Vu ZC9wb2xraXRiYWNrZW5kaW50ZXJhY3RpdmVhdXRob3JpdHkuYyBiL3NyYy9wb2xraXRiYWNrZW5k L3BvbGtpdGJhY2tlbmRpbnRlcmFjdGl2ZWF1dGhvcml0eS5jDQoraW5kZXggNWUyOWFmMi4uNzNk MGEwZSAxMDA2NDQNCistLS0gYS9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kaW50ZXJh Y3RpdmVhdXRob3JpdHkuYw0KKysrKyBiL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRp bnRlcmFjdGl2ZWF1dGhvcml0eS5jDQorQEAgLTEwMTUsNyArMTAxNSw3IEBAIHBvbGtpdF9iYWNr ZW5kX2ludGVyYWN0aXZlX2F1dGhvcml0eV9jaGVja19hdXRob3JpemF0aW9uIChQb2xraXRCYWNr ZW5kQXV0aG9yaXR5DQorIA0KKyAgIC8qIE90aGVyd2lzZSBqdXN0IHJldHVybiB0aGUgcmVzdWx0 ICovDQorICAgZ19zaW1wbGVfYXN5bmNfcmVzdWx0X3NldF9vcF9yZXNfZ3BvaW50ZXIgKHNpbXBs ZSwNCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0 LA0KKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnX29iamVj dF9yZWYgKHJlc3VsdCksDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGdfb2JqZWN0X3VucmVmKTsNCisgICBnX3NpbXBsZV9hc3luY19yZXN1bHRfY29tcGxl dGUgKHNpbXBsZSk7DQorICAgZ19vYmplY3RfdW5yZWYgKHNpbXBsZSk7DQorQEAgLTEwMzIsNiAr MTAzMiw5IEBAIHBvbGtpdF9iYWNrZW5kX2ludGVyYWN0aXZlX2F1dGhvcml0eV9jaGVja19hdXRo b3JpemF0aW9uIChQb2xraXRCYWNrZW5kQXV0aG9yaXR5DQorICAgZ19mcmVlIChzdWJqZWN0X3N0 cik7DQorICAgZ19mcmVlICh1c2VyX29mX2NhbGxlcl9zdHIpOw0KKyAgIGdfZnJlZSAodXNlcl9v Zl9zdWJqZWN0X3N0cik7DQorKw0KKysgIGlmIChyZXN1bHQgIT0gTlVMTCkNCisrICAgIGdfb2Jq ZWN0X3VucmVmIChyZXN1bHQpOw0KKyB9DQorIA0KKyAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tICovDQpkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9wb2xraXQtMC4x MDUvMC4xMTMvRml4LWEtcG9zc2libGUtTlVMTC1kZXJlZmVyZW5jZS5wYXRjaCBiL3BhdGNoZXMv cG9sa2l0LTAuMTA1LzAuMTEzL0ZpeC1hLXBvc3NpYmxlLU5VTEwtZGVyZWZlcmVuY2UucGF0Y2gN Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAuLmJhNjg1ZWI5ZQ0KLS0tIC9k ZXYvbnVsbA0KKysrIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvRml4LWEtcG9zc2libGUt TlVMTC1kZXJlZmVyZW5jZS5wYXRjaA0KQEAgLTAsMCArMSwzNSBAQA0KK0Zyb206ID0/dXRmLTg/ cT9NaWxvc2xhdl9Ucm1hPUM0PThEPz0gPG1pdHJAcmVkaGF0LmNvbT4NCitEYXRlOiBXZWQsIDEx IEp1biAyMDE0IDIyOjM2OjUwICswMjAwDQorU3ViamVjdDogRml4IGEgcG9zc2libGUgTlVMTCBk ZXJlZmVyZW5jZS4NCitNSU1FLVZlcnNpb246IDEuMA0KK0NvbnRlbnQtVHlwZTogdGV4dC9wbGFp bjsgY2hhcnNldD0idXRmLTgiDQorQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdA0KKw0K K3BvbGtpdF9iYWNrZW5kX3Nlc3Npb25fbW9uaXRvcl9nZXRfdXNlcl9mb3Jfc3ViamVjdCgpIG1h eSByZXR1cm4gTlVMTA0KKyhhbmQgYmVjYXVzZSBpdCBpcyB1c2luZyBleHRlcm5hbCBwcm9jZXNz ZXMsIHdlIGNhbuKAmXQgcmVhbGx5IHJ1bGUgaXQNCitvdXQpLiAgVGhlIGNvZGUgd2FzIGFscmVh ZHkgYW50aWNpcGF0aW5nIE5VTEwgaW4gdGhlIGNsZWFudXAgc2VjdGlvbiwgc28NCitoYW5kbGUg aXQgYWxzbyB3aGVuIGFjdHVhbGx5IHVzaW5nIHRoZSB2YWx1ZS4NCisNCitCdWc6IGh0dHBzOi8v YnVncy5mcmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTgwNzY3DQorT3JpZ2luOiB1cHN0 cmVhbSwgMC4xMTMsIGNvbW1pdDo2MTA5NTQzMzAzZGVmMzY3Yjg0ZWFhYzk3ZDJmZjljZWZlNzM1 ZWZiDQorLS0tDQorIHNyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRpbnRlcmFjdGl2ZWF1 dGhvcml0eS5jIHwgNiArKysrKy0NCisgMSBmaWxlIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwg MSBkZWxldGlvbigtKQ0KKw0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRi YWNrZW5kaW50ZXJhY3RpdmVhdXRob3JpdHkuYyBiL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJh Y2tlbmRpbnRlcmFjdGl2ZWF1dGhvcml0eS5jDQoraW5kZXggMjVlMTNmYi4uMDBlZTA0NCAxMDA2 NDQNCistLS0gYS9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kaW50ZXJhY3RpdmVhdXRo b3JpdHkuYw0KKysrKyBiL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRpbnRlcmFjdGl2 ZWF1dGhvcml0eS5jDQorQEAgLTU1Nyw3ICs1NTcsMTEgQEAgbG9nX3Jlc3VsdCAoUG9sa2l0QmFj a2VuZEludGVyYWN0aXZlQXV0aG9yaXR5ICAgICphdXRob3JpdHksDQorICAgdXNlcl9vZl9zdWJq ZWN0ID0gcG9sa2l0X2JhY2tlbmRfc2Vzc2lvbl9tb25pdG9yX2dldF91c2VyX2Zvcl9zdWJqZWN0 IChwcml2LT5zZXNzaW9uX21vbml0b3IsIHN1YmplY3QsIE5VTEwpOw0KKyANCisgICBzdWJqZWN0 X3N0ciA9IHBvbGtpdF9zdWJqZWN0X3RvX3N0cmluZyAoc3ViamVjdCk7DQorLSAgdXNlcl9vZl9z dWJqZWN0X3N0ciA9IHBvbGtpdF9pZGVudGl0eV90b19zdHJpbmcgKHVzZXJfb2Zfc3ViamVjdCk7 DQorKw0KKysgIGlmICh1c2VyX29mX3N1YmplY3QgIT0gTlVMTCkNCisrICAgIHVzZXJfb2Zfc3Vi amVjdF9zdHIgPSBwb2xraXRfaWRlbnRpdHlfdG9fc3RyaW5nICh1c2VyX29mX3N1YmplY3QpOw0K KysgIGVsc2UNCisrICAgIHVzZXJfb2Zfc3ViamVjdF9zdHIgPSBnX3N0cmR1cCAoIjx1bmtub3du PiIpOw0KKyAgIGNhbGxlcl9zdHIgPSBwb2xraXRfc3ViamVjdF90b19zdHJpbmcgKGNhbGxlcik7 DQorIA0KKyAgIHN1YmplY3RfY21kbGluZSA9IF9wb2xraXRfc3ViamVjdF9nZXRfY21kbGluZSAo c3ViamVjdCk7DQpkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvRml4LWR1 cGxpY2F0ZS1HRXJyb3ItdXNlLXdoZW4tdWlkLWlzLW1pc3NpbmcucGF0Y2ggYi9wYXRjaGVzL3Bv bGtpdC0wLjEwNS8wLjExMy9GaXgtZHVwbGljYXRlLUdFcnJvci11c2Utd2hlbi11aWQtaXMtbWlz c2luZy5wYXRjaA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMC4uZjExY2Iz ZGY1DQotLS0gL2Rldi9udWxsDQorKysgYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9GaXgt ZHVwbGljYXRlLUdFcnJvci11c2Utd2hlbi11aWQtaXMtbWlzc2luZy5wYXRjaA0KQEAgLTAsMCAr MSwzMiBAQA0KK0Zyb206ID0/dXRmLTg/cT9NaWxvc2xhdl9Ucm1hPUM0PThEPz0gPG1pdHJAcmVk aGF0LmNvbT4NCitEYXRlOiBNb24sIDE1IFNlcCAyMDE0IDE5OjQ1OjE1ICswMjAwDQorU3ViamVj dDogRml4IGR1cGxpY2F0ZSBHRXJyb3IgdXNlIHdoZW4gInVpZCIgaXMgbWlzc2luZw0KKw0KK1Nv bWUgR0xpYiB2ZXJzaW9ucyBjb21wbGFpbiBsb3VkbHkgYWJvdXQgdGhpcy4NCisNCitUbyByZXBy b2R1Y2UsIGNhbGwgZS5nLiBSZWdpc3RlckF1dGhlbnRpY2F0aW9uQWdlbnQgd2l0aCB0aGUgZm9s bG93aW5nDQorcGFyYW1ldGVyczoNCisoInVuaXgtcHJvY2VzcyIsIHsicGlkIjogX19pbXBvcnRf XygnZ2kucmVwb3NpdG9yeS5HTGliJywgZ2xvYmFscygpLA0KK2xvY2FscygpLCBbJ1ZhcmlhbnQn XSkuVmFyaWFudCgidSIsIDEpLCAic3RhcnQtdGltZSI6DQorX19pbXBvcnRfXygnZ2kucmVwb3Np dG9yeS5HTGliJywgZ2xvYmFscygpLCBsb2NhbHMoKSwNCitbJ1ZhcmlhbnQnXSkuVmFyaWFudCgi dCIsIDEpfSksICJjcyIsICIvIg0KKw0KK0J1ZzogaHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9y Zy9zaG93X2J1Zy5jZ2k/aWQ9OTA4NzcNCitPcmlnaW46IHVwc3RyZWFtLCAwLjExMywgY29tbWl0 OjJjODczODk0MWJlMThlZjA1Y2U3MjRkZjQ2NTQ3ZjQxZGJjMDJmYjUNCistLS0NCisgc3JjL3Bv bGtpdC9wb2xraXRzdWJqZWN0LmMgfCAyICstDQorIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlv bigrKSwgMSBkZWxldGlvbigtKQ0KKw0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0L3BvbGtpdHN1 YmplY3QuYyBiL3NyYy9wb2xraXQvcG9sa2l0c3ViamVjdC5jDQoraW5kZXggYWVkNTc5NS4uNzhl Yzc0NSAxMDA2NDQNCistLS0gYS9zcmMvcG9sa2l0L3BvbGtpdHN1YmplY3QuYw0KKysrKyBiL3Ny Yy9wb2xraXQvcG9sa2l0c3ViamVjdC5jDQorQEAgLTQyNCw3ICs0MjQsNyBAQCBwb2xraXRfc3Vi amVjdF9uZXdfZm9yX2d2YXJpYW50IChHVmFyaWFudCAgKnZhcmlhbnQsDQorICAgICAgIHN0YXJ0 X3RpbWUgPSBnX3ZhcmlhbnRfZ2V0X3VpbnQ2NCAodik7DQorICAgICAgIGdfdmFyaWFudF91bnJl ZiAodik7DQorIA0KKy0gICAgICB2ID0gbG9va3VwX2FzdiAoZGV0YWlsc19ndmFyaWFudCwgInVp ZCIsIEdfVkFSSUFOVF9UWVBFX0lOVDMyLCBlcnJvcik7DQorKyAgICAgIHYgPSBsb29rdXBfYXN2 IChkZXRhaWxzX2d2YXJpYW50LCAidWlkIiwgR19WQVJJQU5UX1RZUEVfSU5UMzIsIE5VTEwpOw0K KyAgICAgICBpZiAodiAhPSBOVUxMKQ0KKyAgICAgICAgIHsNCisgICAgICAgICAgIHVpZCA9IGdf dmFyaWFudF9nZXRfaW50MzIgKHYpOw0KZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9sa2l0LTAuMTA1 LzAuMTEzL0ZpeC11c2UtYWZ0ZXItZnJlZS1pbi1wb2xraXRhZ2VudHNlc3Npb24uYy5wYXRjaCBi L3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL0ZpeC11c2UtYWZ0ZXItZnJlZS1pbi1wb2xraXRh Z2VudHNlc3Npb24uYy5wYXRjaA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAw MC4uNmY3YmQzNTZjDQotLS0gL2Rldi9udWxsDQorKysgYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8w LjExMy9GaXgtdXNlLWFmdGVyLWZyZWUtaW4tcG9sa2l0YWdlbnRzZXNzaW9uLmMucGF0Y2gNCkBA IC0wLDAgKzEsMzIgQEANCitGcm9tOiA9P3V0Zi04P3E/TWlsb3NsYXZfVHJtYT1DND04RD89IDxt aXRyQHJlZGhhdC5jb20+DQorRGF0ZTogVHVlLCAxNCBBcHIgMjAxNSAyMjoyNzo0MSArMDIwMA0K K1N1YmplY3Q6IEZpeCB1c2UtYWZ0ZXItZnJlZSBpbiBwb2xraXRhZ2VudHNlc3Npb24uYw0KKw0K K1BvbGtpdEFnZW50VGV4dExpc3RlbmVyJ3MgImNvbXBsZXRlZCIgaGFuZGxlciBkcm9wcyB0aGUg bGFzdCByZWZlcmVuY2UNCit0byB0aGUgc2Vzc2lvbjsgaW4gZmFjdCB0aGlzIGlzIGV4cGxpY2l0 bHkgcmVjb21tZW5kZWQgaW4gdGhlIHNpZ25hbCdzDQorZG9jdW1lbnRhdGlvbi4gIFNvIHdlIG11 c3Qgbm90IGFjY2VzcyBhbnkgbWVtYmVycyBvZiBzZXNzaW9uIGFmdGVyDQorZW1pdHRpbmcgdGhl IHNpZ25hbC4NCisNCitGb3VuZCB3aGlsZSBkZWFsaW5nIHdpdGgNCitodHRwczovL2J1Z3MuZnJl ZWRlc2t0b3Aub3JnL3Nob3dfYnVnLmNnaT9pZD02OTUwMQ0KKw0KK09yaWdpbjogdXBzdHJlYW0s IDAuMTEzLCBjb21taXQ6ZWZiNmNkNTZhNDIzYmExNWJiMWY0NGVlM2M0OTg3YWFkNWE1ZmQ0NQ0K Ky0tLQ0KKyBzcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRzZXNzaW9uLmMgfCAzICsrLQ0KKyAx IGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pDQorDQorZGlmZiAt LWdpdCBhL3NyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudHNlc3Npb24uYyBiL3NyYy9wb2xraXRh Z2VudC9wb2xraXRhZ2VudHNlc3Npb24uYw0KK2luZGV4IDZhM2Q2YmMuLjQ2ZmJhZjAgMTAwNjQ0 DQorLS0tIGEvc3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50c2Vzc2lvbi5jDQorKysrIGIvc3Jj L3BvbGtpdGFnZW50L3BvbGtpdGFnZW50c2Vzc2lvbi5jDQorQEAgLTQxMiw4ICs0MTIsOSBAQCBj b21wbGV0ZV9zZXNzaW9uIChQb2xraXRBZ2VudFNlc3Npb24gKnNlc3Npb24sDQorICAgICB7DQor ICAgICAgIGlmIChHX1VOTElLRUxZIChfc2hvd19kZWJ1ZyAoKSkpDQorICAgICAgICAgZ19wcmlu dCAoIlBvbGtpdEFnZW50U2Vzc2lvbjogZW1pdHRpbmcgOjpjb21wbGV0ZWQoJXMpXG4iLCByZXN1 bHQgPyAiVFJVRSIgOiAiRkFMU0UiKTsNCistICAgICAgZ19zaWduYWxfZW1pdF9ieV9uYW1lIChz ZXNzaW9uLCAiY29tcGxldGVkIiwgcmVzdWx0KTsNCisgICAgICAgc2Vzc2lvbi0+aGF2ZV9lbWl0 dGVkX2NvbXBsZXRlZCA9IFRSVUU7DQorKyAgICAgIC8qIE5vdGUgdGhhdCB0aGUgc2lnbmFsIGhh bmRsZXIgbWF5IGRyb3AgdGhlIGxhc3QgcmVmZXJlbmNlIHRvIHNlc3Npb24uICovDQorKyAgICAg IGdfc2lnbmFsX2VtaXRfYnlfbmFtZSAoc2Vzc2lvbiwgImNvbXBsZXRlZCIsIHJlc3VsdCk7DQor ICAgICB9DQorIH0NCisgDQpkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMv Rml4ZWQtY29tcGlsYXRpb24tcHJvYmxlbS1pbi10aGUtYmFja2VuZC5wYXRjaCBiL3BhdGNoZXMv cG9sa2l0LTAuMTA1LzAuMTEzL0ZpeGVkLWNvbXBpbGF0aW9uLXByb2JsZW0taW4tdGhlLWJhY2tl bmQucGF0Y2gNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAuLmNjYmJjYjc0 Yw0KLS0tIC9kZXYvbnVsbA0KKysrIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvRml4ZWQt Y29tcGlsYXRpb24tcHJvYmxlbS1pbi10aGUtYmFja2VuZC5wYXRjaA0KQEAgLTAsMCArMSwyMyBA QA0KK0Zyb206IFhhYmllciBSb2RyaWd1ZXogQ2FsdmFyIDxjYWx2YXJpc0BpZ2FsaWEuY29tPg0K K0RhdGU6IFN1biwgMTAgTm92IDIwMTMgMTk6MTY6NDEgKzAxMDANCitTdWJqZWN0OiBGaXhlZCBj b21waWxhdGlvbiBwcm9ibGVtIGluIHRoZSBiYWNrZW5kDQorDQorT3JpZ2luOiB1cHN0cmVhbSwg MC4xMTMsIGNvbW1pdDogZGJiYjdkYzYwYWJkZDk3MGFmMGE4ZmFlNDA0NDg0MTgxZmE5MDljOQ0K K0J1Zy1EZWJpYW46IGh0dHBzOi8vYnVncy5kZWJpYW4ub3JnLzc5ODc2OQ0KKy0tLQ0KKyBzcmMv cG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kc2Vzc2lvbm1vbml0b3IuYyB8IDIgKy0NCisgMSBm aWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pDQorDQorZGlmZiAtLWdp dCBhL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRzZXNzaW9ubW9uaXRvci5jIGIvc3Jj L3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZHNlc3Npb25tb25pdG9yLmMNCitpbmRleCA0MDc1 ZDNmLi4wNWY1MWM1IDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tl bmRzZXNzaW9ubW9uaXRvci5jDQorKysrIGIvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2Vu ZHNlc3Npb25tb25pdG9yLmMNCitAQCAtMzA2LDcgKzMwNiw3IEBAIHBvbGtpdF9iYWNrZW5kX3Nl c3Npb25fbW9uaXRvcl9nZXRfdXNlcl9mb3Jfc3ViamVjdCAoUG9sa2l0QmFja2VuZFNlc3Npb25N b25pdG9yDQorICAgICB9DQorICAgZWxzZSBpZiAoUE9MS0lUX0lTX1NZU1RFTV9CVVNfTkFNRSAo c3ViamVjdCkpDQorICAgICB7DQorLSAgICAgIHJldCA9IChQb2xraXRJZGVudGl0eSopcG9sa2l0 X3N5c3RlbV9idXNfbmFtZV9nZXRfdXNlcl9zeW5jIChQT0xLSVRfU1lTVEVNX0JVU19OQU1FIChz dWJqZWN0KSk7DQorKyAgICAgIHJldCA9IChQb2xraXRJZGVudGl0eSopcG9sa2l0X3N5c3RlbV9i dXNfbmFtZV9nZXRfdXNlcl9zeW5jIChQT0xLSVRfU1lTVEVNX0JVU19OQU1FIChzdWJqZWN0KSwg TlVMTCwgTlVMTCk7DQorICAgICB9DQorICAgZWxzZSBpZiAoUE9MS0lUX0lTX1VOSVhfU0VTU0lP TiAoc3ViamVjdCkpDQorICAgICB7DQpkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9wb2xraXQtMC4xMDUv MC4xMTMvUG9sa2l0U3lzdGVtQnVzTmFtZS1BZGQtcHVibGljLUFQSS10by1yZXRyaWV2ZS1Vbml4 LS5wYXRjaCBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL1BvbGtpdFN5c3RlbUJ1c05hbWUt QWRkLXB1YmxpYy1BUEktdG8tcmV0cmlldmUtVW5peC0ucGF0Y2gNCm5ldyBmaWxlIG1vZGUgMTAw NjQ0DQppbmRleCAwMDAwMDAwMDAuLmExNjJhZWYzZQ0KLS0tIC9kZXYvbnVsbA0KKysrIGIvcGF0 Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvUG9sa2l0U3lzdGVtQnVzTmFtZS1BZGQtcHVibGljLUFQ SS10by1yZXRyaWV2ZS1Vbml4LS5wYXRjaA0KQEAgLTAsMCArMSwxNjYgQEANCitGcm9tOiBDb2xp biBXYWx0ZXJzIDx3YWx0ZXJzQHZlcmJ1bS5vcmc+DQorRGF0ZTogV2VkLCAyMSBBdWcgMjAxMyAx MjoyMzo1NSAtMDQwMA0KK1N1YmplY3Q6IFBvbGtpdFN5c3RlbUJ1c05hbWU6IEFkZCBwdWJsaWMg QVBJIHRvIHJldHJpZXZlIFVuaXggdXNlcg0KKw0KK0FuZCBjaGFuZ2UgdGhlIGR1cGxpY2F0ZWQg Y29kZSBpbiB0aGUgYmFja2VuZCBzZXNzaW9uIG1vbml0b3JzIHRvIHVzZQ0KK2l0LiAgVGhpcyBq dXN0IGEgY29kZSBjbGVhbnVwIHJlc3VsdGluZyBmcm9tIHJldmlldyBhZnRlcg0KK0NWRS0yMDEz LTQyODguICBUaGVyZSdzIG5vIHNlY3VyaXR5IGltcGFjdCBmcm9tIHRoaXMgcGF0Y2gsIGl0IGp1 c3QNCityZW1vdmVzIGR1cGxpY2F0ZWQgY29kZS4NCisNCitCdWc6IGh0dHBzOi8vYnVncy5mcmVl ZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTY5NTM4DQorT3JpZ2luOiB1cHN0cmVhbSwgMC4x MTMsIGNvbW1pdDo5MDRkODQwNGQ5M2RlYzQ1ZmNlM2I3MTllYjFhNjI2YWNjNmI4YTczDQorLS0t DQorIHNyYy9wb2xraXQvcG9sa2l0c3lzdGVtYnVzbmFtZS5jICAgICAgICAgICAgICAgICAgIHwg NTYgKysrKysrKysrKysrKysrKysrKysrKw0KKyBzcmMvcG9sa2l0L3BvbGtpdHN5c3RlbWJ1c25h bWUuaCAgICAgICAgICAgICAgICAgICB8ICA0ICsrDQorIC4uLi9wb2xraXRiYWNrZW5kc2Vzc2lv bm1vbml0b3Itc3lzdGVtZC5jICAgICAgICAgIHwgMjAgKy0tLS0tLS0NCisgc3JjL3BvbGtpdGJh Y2tlbmQvcG9sa2l0YmFja2VuZHNlc3Npb25tb25pdG9yLmMgICAgfCAyMCArLS0tLS0tLQ0KKyA0 IGZpbGVzIGNoYW5nZWQsIDYyIGluc2VydGlvbnMoKyksIDM4IGRlbGV0aW9ucygtKQ0KKw0KK2Rp ZmYgLS1naXQgYS9zcmMvcG9sa2l0L3BvbGtpdHN5c3RlbWJ1c25hbWUuYyBiL3NyYy9wb2xraXQv cG9sa2l0c3lzdGVtYnVzbmFtZS5jDQoraW5kZXggMmEyOTdjNC4uNTFlNGE2OSAxMDA2NDQNCist LS0gYS9zcmMvcG9sa2l0L3BvbGtpdHN5c3RlbWJ1c25hbWUuYw0KKysrKyBiL3NyYy9wb2xraXQv cG9sa2l0c3lzdGVtYnVzbmFtZS5jDQorQEAgLTI1LDYgKzI1LDcgQEANCisgDQorICNpbmNsdWRl IDxzdHJpbmcuaD4NCisgI2luY2x1ZGUgInBvbGtpdHN5c3RlbWJ1c25hbWUuaCINCisrI2luY2x1 ZGUgInBvbGtpdHVuaXh1c2VyLmgiDQorICNpbmNsdWRlICJwb2xraXRzdWJqZWN0LmgiDQorICNp bmNsdWRlICJwb2xraXRwcml2YXRlLmgiDQorIA0KK0BAIC0zOTYsMyArMzk3LDU4IEBAIHBvbGtp dF9zeXN0ZW1fYnVzX25hbWVfZ2V0X3Byb2Nlc3Nfc3luYyAoUG9sa2l0U3lzdGVtQnVzTmFtZSAg KnN5c3RlbV9idXNfbmFtZSwNCisgICByZXR1cm4gcmV0Ow0KKyB9DQorIA0KKysvKioNCisrICog cG9sa2l0X3N5c3RlbV9idXNfbmFtZV9nZXRfdXNlcl9zeW5jOg0KKysgKiBAc3lzdGVtX2J1c19u YW1lOiBBICNQb2xraXRTeXN0ZW1CdXNOYW1lLg0KKysgKiBAY2FuY2VsbGFibGU6IChhbGxvdy1u b25lKTogQSAjR0NhbmNlbGxhYmxlIG9yICVOVUxMLg0KKysgKiBAZXJyb3I6IChhbGxvdy1ub25l KTogUmV0dXJuIGxvY2F0aW9uIGZvciBlcnJvciBvciAlTlVMTC4NCisrICoNCisrICogU3luY2hy b25vdXNseSBnZXRzIGEgI1BvbGtpdFVuaXhVc2VyIG9iamVjdCBmb3IgQHN5c3RlbV9idXNfbmFt ZTsNCisrICogdGhlIGNhbGxpbmcgdGhyZWFkIGlzIGJsb2NrZWQgdW50aWwgYSByZXBseSBpcyBy ZWNlaXZlZC4NCisrICoNCisrICogUmV0dXJuczogKGFsbG93LW5vbmUpICh0cmFuc2ZlciBmdWxs KTogQSAjUG9sa2l0VW5peFVzZXIgb2JqZWN0IG9yICVOVUxMIGlmIEBlcnJvciBpcyBzZXQuDQor KyAqKi8NCisrUG9sa2l0VW5peFVzZXIgKg0KKytwb2xraXRfc3lzdGVtX2J1c19uYW1lX2dldF91 c2VyX3N5bmMgKFBvbGtpdFN5c3RlbUJ1c05hbWUgICpzeXN0ZW1fYnVzX25hbWUsDQorKwkJCQkg ICAgICBHQ2FuY2VsbGFibGUgICAgICAgICAqY2FuY2VsbGFibGUsDQorKwkJCQkgICAgICBHRXJy b3IgICAgICAgICAgICAgICoqZXJyb3IpDQorK3sNCisrICBHREJ1c0Nvbm5lY3Rpb24gKmNvbm5l Y3Rpb247DQorKyAgUG9sa2l0VW5peFVzZXIgKnJldDsNCisrICBHVmFyaWFudCAqcmVzdWx0Ow0K KysgIGd1aW50MzIgdWlkOw0KKysNCisrICBnX3JldHVybl92YWxfaWZfZmFpbCAoUE9MS0lUX0lT X1NZU1RFTV9CVVNfTkFNRSAoc3lzdGVtX2J1c19uYW1lKSwgTlVMTCk7DQorKyAgZ19yZXR1cm5f dmFsX2lmX2ZhaWwgKGNhbmNlbGxhYmxlID09IE5VTEwgfHwgR19JU19DQU5DRUxMQUJMRSAoY2Fu Y2VsbGFibGUpLCBOVUxMKTsNCisrICBnX3JldHVybl92YWxfaWZfZmFpbCAoZXJyb3IgPT0gTlVM TCB8fCAqZXJyb3IgPT0gTlVMTCwgTlVMTCk7DQorKw0KKysgIHJldCA9IE5VTEw7DQorKw0KKysg IGNvbm5lY3Rpb24gPSBnX2J1c19nZXRfc3luYyAoR19CVVNfVFlQRV9TWVNURU0sIGNhbmNlbGxh YmxlLCBlcnJvcik7DQorKyAgaWYgKGNvbm5lY3Rpb24gPT0gTlVMTCkNCisrICAgIGdvdG8gb3V0 Ow0KKysNCisrICByZXN1bHQgPSBnX2RidXNfY29ubmVjdGlvbl9jYWxsX3N5bmMgKGNvbm5lY3Rp b24sDQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3JnLmZyZWVk ZXNrdG9wLkRCdXMiLCAgICAgICAvKiBuYW1lICovDQorKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAiL29yZy9mcmVlZGVza3RvcC9EQnVzIiwgICAgICAvKiBvYmplY3Qg cGF0aCAqLw0KKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm9yZy5m cmVlZGVza3RvcC5EQnVzIiwgICAgICAgLyogaW50ZXJmYWNlIG5hbWUgKi8NCisrICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJHZXRDb25uZWN0aW9uVW5peFVzZXIiLCAg ICAgIC8qIG1ldGhvZCAqLw0KKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgZ192YXJpYW50X25ldyAoIihzKSIsIHN5c3RlbV9idXNfbmFtZS0+bmFtZSksDQorKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHX1ZBUklBTlRfVFlQRSAoIih1KSIp LA0KKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR19EQlVTX0NBTExf RkxBR1NfTk9ORSwNCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0x LA0KKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FuY2VsbGFibGUs DQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcik7DQorKyAg aWYgKHJlc3VsdCA9PSBOVUxMKQ0KKysgICAgZ290byBvdXQ7DQorKw0KKysgIGdfdmFyaWFudF9n ZXQgKHJlc3VsdCwgIih1KSIsICZ1aWQpOw0KKysgIGdfdmFyaWFudF91bnJlZiAocmVzdWx0KTsN CisrDQorKyAgcmV0ID0gKFBvbGtpdFVuaXhVc2VyKilwb2xraXRfdW5peF91c2VyX25ldyAodWlk KTsNCisrDQorKyBvdXQ6DQorKyAgaWYgKGNvbm5lY3Rpb24gIT0gTlVMTCkNCisrICAgIGdfb2Jq ZWN0X3VucmVmIChjb25uZWN0aW9uKTsNCisrICByZXR1cm4gcmV0Ow0KKyt9DQorZGlmZiAtLWdp dCBhL3NyYy9wb2xraXQvcG9sa2l0c3lzdGVtYnVzbmFtZS5oIGIvc3JjL3BvbGtpdC9wb2xraXRz eXN0ZW1idXNuYW1lLmgNCitpbmRleCAxZmM0NjRmLi4zOGQzMWY3IDEwMDY0NA0KKy0tLSBhL3Ny Yy9wb2xraXQvcG9sa2l0c3lzdGVtYnVzbmFtZS5oDQorKysrIGIvc3JjL3BvbGtpdC9wb2xraXRz eXN0ZW1idXNuYW1lLmgNCitAQCAtNTYsNiArNTYsMTAgQEAgUG9sa2l0U3ViamVjdCAgKnBvbGtp dF9zeXN0ZW1fYnVzX25hbWVfZ2V0X3Byb2Nlc3Nfc3luYyAgIChQb2xraXRTeXN0ZW1CdXNOYW1l DQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgR0NhbmNlbGxhYmxlICAgICAgICAgKmNhbmNlbGxhYmxlLA0KKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdFcnJvciAgICAg ICAgICAgICAgKiplcnJvcik7DQorIA0KKytQb2xraXRVbml4VXNlciAqIHBvbGtpdF9zeXN0ZW1f YnVzX25hbWVfZ2V0X3VzZXJfc3luYyAgICAgKFBvbGtpdFN5c3RlbUJ1c05hbWUgICpzeXN0ZW1f YnVzX25hbWUsDQorKwkJCQkJCQkgICBHQ2FuY2VsbGFibGUgICAgICAgICAqY2FuY2VsbGFibGUs DQorKwkJCQkJCQkgICBHRXJyb3IgICAgICAgICAgICAgICoqZXJyb3IpOw0KKysNCisgR19FTkRf REVDTFMNCisgDQorICNlbmRpZiAvKiBfX1BPTEtJVF9TWVNURU1fQlVTX05BTUVfSCAqLw0KK2Rp ZmYgLS1naXQgYS9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kc2Vzc2lvbm1vbml0b3It c3lzdGVtZC5jIGIvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZHNlc3Npb25tb25pdG9y LXN5c3RlbWQuYw0KK2luZGV4IDU4NTkzYzMuLjAxODUzMTAgMTAwNjQ0DQorLS0tIGEvc3JjL3Bv bGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZHNlc3Npb25tb25pdG9yLXN5c3RlbWQuYw0KKysrKyBi L3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRzZXNzaW9ubW9uaXRvci1zeXN0ZW1kLmMN CitAQCAtMjc3LDI1ICsyNzcsNyBAQCBwb2xraXRfYmFja2VuZF9zZXNzaW9uX21vbml0b3JfZ2V0 X3VzZXJfZm9yX3N1YmplY3QgKFBvbGtpdEJhY2tlbmRTZXNzaW9uTW9uaXRvcg0KKyAgICAgfQ0K KyAgIGVsc2UgaWYgKFBPTEtJVF9JU19TWVNURU1fQlVTX05BTUUgKHN1YmplY3QpKQ0KKyAgICAg ew0KKy0gICAgICBHVmFyaWFudCAqcmVzdWx0Ow0KKy0NCistICAgICAgcmVzdWx0ID0gZ19kYnVz X2Nvbm5lY3Rpb25fY2FsbF9zeW5jIChtb25pdG9yLT5zeXN0ZW1fYnVzLA0KKy0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJvcmcuZnJlZWRlc2t0b3AuREJ1cyIs DQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIi9vcmcvZnJl ZWRlc2t0b3AvREJ1cyIsDQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIm9yZy5mcmVlZGVza3RvcC5EQnVzIiwNCistICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAiR2V0Q29ubmVjdGlvblVuaXhVc2VyIiwNCistICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnX3ZhcmlhbnRfbmV3ICgiKHMpIiwg cG9sa2l0X3N5c3RlbV9idXNfbmFtZV9nZXRfbmFtZSAoUE9MS0lUX1NZU1RFTV9CVVNfTkFNRSAo c3ViamVjdCkpKSwNCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBHX1ZBUklBTlRfVFlQRSAoIih1KSIpLA0KKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIEdfREJVU19DQUxMX0ZMQUdTX05PTkUsDQorLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLTEsIC8qIHRpbWVvdXRfbXNlYyAqLw0KKy0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIEdDYW5j ZWxsYWJsZSAqLw0KKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGVycm9yKTsNCistICAgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQ0KKy0gICAgICAgIGdvdG8gb3V0 Ow0KKy0gICAgICBnX3ZhcmlhbnRfZ2V0IChyZXN1bHQsICIodSkiLCAmdWlkKTsNCistICAgICAg Z192YXJpYW50X3VucmVmIChyZXN1bHQpOw0KKy0NCistICAgICAgcmV0ID0gcG9sa2l0X3VuaXhf dXNlcl9uZXcgKHVpZCk7DQorKyAgICAgIHJldCA9IChQb2xraXRJZGVudGl0eSopcG9sa2l0X3N5 c3RlbV9idXNfbmFtZV9nZXRfdXNlcl9zeW5jIChQT0xLSVRfU1lTVEVNX0JVU19OQU1FIChzdWJq ZWN0KSwgTlVMTCwgZXJyb3IpOw0KKyAgICAgfQ0KKyAgIGVsc2UgaWYgKFBPTEtJVF9JU19VTklY X1NFU1NJT04gKHN1YmplY3QpKQ0KKyAgICAgew0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0YmFj a2VuZC9wb2xraXRiYWNrZW5kc2Vzc2lvbm1vbml0b3IuYyBiL3NyYy9wb2xraXRiYWNrZW5kL3Bv bGtpdGJhY2tlbmRzZXNzaW9ubW9uaXRvci5jDQoraW5kZXggOWMzMzFiNi4uNDA3NWQzZiAxMDA2 NDQNCistLS0gYS9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kc2Vzc2lvbm1vbml0b3Iu Yw0KKysrKyBiL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRzZXNzaW9ubW9uaXRvci5j DQorQEAgLTMwNiwyNSArMzA2LDcgQEAgcG9sa2l0X2JhY2tlbmRfc2Vzc2lvbl9tb25pdG9yX2dl dF91c2VyX2Zvcl9zdWJqZWN0IChQb2xraXRCYWNrZW5kU2Vzc2lvbk1vbml0b3INCisgICAgIH0N CisgICBlbHNlIGlmIChQT0xLSVRfSVNfU1lTVEVNX0JVU19OQU1FIChzdWJqZWN0KSkNCisgICAg IHsNCistICAgICAgR1ZhcmlhbnQgKnJlc3VsdDsNCistDQorLSAgICAgIHJlc3VsdCA9IGdfZGJ1 c19jb25uZWN0aW9uX2NhbGxfc3luYyAobW9uaXRvci0+c3lzdGVtX2J1cywNCistICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3JnLmZyZWVkZXNrdG9wLkRCdXMi LA0KKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIvb3JnL2Zy ZWVkZXNrdG9wL0RCdXMiLA0KKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICJvcmcuZnJlZWRlc2t0b3AuREJ1cyIsDQorLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIkdldENvbm5lY3Rpb25Vbml4VXNlciIsDQorLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ192YXJpYW50X25ldyAoIihzKSIs IHBvbGtpdF9zeXN0ZW1fYnVzX25hbWVfZ2V0X25hbWUgKFBPTEtJVF9TWVNURU1fQlVTX05BTUUg KHN1YmplY3QpKSksDQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgR19WQVJJQU5UX1RZUEUgKCIodSkiKSwNCistICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBHX0RCVVNfQ0FMTF9GTEFHU19OT05FLA0KKy0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0xLCAvKiB0aW1lb3V0X21zZWMgKi8NCist ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBHQ2Fu Y2VsbGFibGUgKi8NCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBlcnJvcik7DQorLSAgICAgIGlmIChyZXN1bHQgPT0gTlVMTCkNCistICAgICAgICBnb3RvIG91 dDsNCistICAgICAgZ192YXJpYW50X2dldCAocmVzdWx0LCAiKHUpIiwgJnVpZCk7DQorLSAgICAg IGdfdmFyaWFudF91bnJlZiAocmVzdWx0KTsNCistDQorLSAgICAgIHJldCA9IHBvbGtpdF91bml4 X3VzZXJfbmV3ICh1aWQpOw0KKysgICAgICByZXQgPSAoUG9sa2l0SWRlbnRpdHkqKXBvbGtpdF9z eXN0ZW1fYnVzX25hbWVfZ2V0X3VzZXJfc3luYyAoUE9MS0lUX1NZU1RFTV9CVVNfTkFNRSAoc3Vi amVjdCkpOw0KKyAgICAgfQ0KKyAgIGVsc2UgaWYgKFBPTEtJVF9JU19VTklYX1NFU1NJT04gKHN1 YmplY3QpKQ0KKyAgICAgew0KZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEz L1BvcnQtaW50ZXJuYWxzLW5vbi1kZXByZWNhdGVkLVBvbGtpdFByb2Nlc3MtQVBJLXdoZXIucGF0 Y2ggYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9Qb3J0LWludGVybmFscy1ub24tZGVwcmVj YXRlZC1Qb2xraXRQcm9jZXNzLUFQSS13aGVyLnBhdGNoDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0K aW5kZXggMDAwMDAwMDAwLi44YThmYTNjZjkNCi0tLSAvZGV2L251bGwNCisrKyBiL3BhdGNoZXMv cG9sa2l0LTAuMTA1LzAuMTEzL1BvcnQtaW50ZXJuYWxzLW5vbi1kZXByZWNhdGVkLVBvbGtpdFBy b2Nlc3MtQVBJLXdoZXIucGF0Y2gNCkBAIC0wLDAgKzEsMjkgQEANCitGcm9tOiBDb2xpbiBXYWx0 ZXJzIDx3YWx0ZXJzQHZlcmJ1bS5vcmc+DQorRGF0ZTogU2F0LCA5IE5vdiAyMDEzIDEzOjQ4OjIx IC0wNTAwDQorU3ViamVjdDogUG9ydCBpbnRlcm5hbHMgbm9uLWRlcHJlY2F0ZWQgUG9sa2l0UHJv Y2VzcyBBUEkgd2hlcmUgcG9zc2libGUNCisNCitXZSBjYW4ndCBwb3J0IGV2ZXJ5dGhpbmcsIGJ1 dCBpbiBQb2xraXRQZXJtaXNzaW9uIGFuZCB0aGVzZSB0ZXN0DQorY2FzZXMsIHdlIGNhbiB1c2Ug X2Zvcl9vd25lcigpIHdpdGggdGhlIHJpZ2h0IGluZm9ybWF0aW9uLg0KKw0KK1tzbWN2OiBkcm9w IHRoZSBwYXJ0IHRoYXQgdG91Y2hlcw0KK3Rlc3QvcG9sa2l0YmFja2VuZC90ZXN0LXBvbGtpdGJh Y2tlbmRqc2F1dGhvcml0eS5jIHdoaWNoIGlzIG5vdA0KK2luIHRoaXMgYnJhbmNoXQ0KKw0KK09y aWdpbjogdXBzdHJlYW0sIDAuMTEzLCBjb21taXQ6NmQzZDBhOGZmYjBmZDhhZTU5ZWIzNTU5M2Iz MDVlYzg3ZGE4ODU4ZA0KKy0tLQ0KKyBzcmMvcG9sa2l0L3BvbGtpdHBlcm1pc3Npb24uYyB8IDIg Ky0NCisgMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pDQorDQor ZGlmZiAtLWdpdCBhL3NyYy9wb2xraXQvcG9sa2l0cGVybWlzc2lvbi5jIGIvc3JjL3BvbGtpdC9w b2xraXRwZXJtaXNzaW9uLmMNCitpbmRleCAyMmQxOTVmLi5mOGE2NjZlIDEwMDY0NA0KKy0tLSBh L3NyYy9wb2xraXQvcG9sa2l0cGVybWlzc2lvbi5jDQorKysrIGIvc3JjL3BvbGtpdC9wb2xraXRw ZXJtaXNzaW9uLmMNCitAQCAtMTIyLDcgKzEyMiw3IEBAIHBvbGtpdF9wZXJtaXNzaW9uX2NvbnN0 cnVjdGVkIChHT2JqZWN0ICpvYmplY3QpDQorICAgUG9sa2l0UGVybWlzc2lvbiAqcGVybWlzc2lv biA9IFBPTEtJVF9QRVJNSVNTSU9OIChvYmplY3QpOw0KKyANCisgICBpZiAocGVybWlzc2lvbi0+ c3ViamVjdCA9PSBOVUxMKQ0KKy0gICAgcGVybWlzc2lvbi0+c3ViamVjdCA9IHBvbGtpdF91bml4 X3Byb2Nlc3NfbmV3IChnZXRwaWQgKCkpOw0KKysgICAgcGVybWlzc2lvbi0+c3ViamVjdCA9IHBv bGtpdF91bml4X3Byb2Nlc3NfbmV3X2Zvcl9vd25lciAoZ2V0cGlkICgpLCAwLCBnZXR1aWQgKCkp Ow0KKyANCisgICBpZiAoR19PQkpFQ1RfQ0xBU1MgKHBvbGtpdF9wZXJtaXNzaW9uX3BhcmVudF9j bGFzcyktPmNvbnN0cnVjdGVkICE9IE5VTEwpDQorICAgICBHX09CSkVDVF9DTEFTUyAocG9sa2l0 X3Blcm1pc3Npb25fcGFyZW50X2NsYXNzKS0+Y29uc3RydWN0ZWQgKG9iamVjdCk7DQpkaWZmIC0t Z2l0IGEvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvUkVBRE1FLU5vdGUtdG8tc2VuZC1zZWN1 cml0eS1yZXBvcnRzLXZpYS1EQnVzLXMtbWVjaC5wYXRjaCBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1 LzAuMTEzL1JFQURNRS1Ob3RlLXRvLXNlbmQtc2VjdXJpdHktcmVwb3J0cy12aWEtREJ1cy1zLW1l Y2gucGF0Y2gNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAuLjk0ODQ2OTk2 ZQ0KLS0tIC9kZXYvbnVsbA0KKysrIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvUkVBRE1F LU5vdGUtdG8tc2VuZC1zZWN1cml0eS1yZXBvcnRzLXZpYS1EQnVzLXMtbWVjaC5wYXRjaA0KQEAg LTAsMCArMSwzOSBAQA0KK0Zyb206IENvbGluIFdhbHRlcnMgPHdhbHRlcnNAdmVyYnVtLm9yZz4N CitEYXRlOiBUaHUsIDQgSnVuIDIwMTUgMDg6NDE6MzYgLTA0MDANCitTdWJqZWN0OiBSRUFETUU6 IE5vdGUgdG8gc2VuZCBzZWN1cml0eSByZXBvcnRzIHZpYSBEQnVzJ3MgbWVjaGFuaXNtDQorDQor VGhpcyBhdm9pZHMgZHVwbGljYXRpbmcgZWZmb3J0Lg0KKw0KK09yaWdpbjogdXBzdHJlYW0sIDAu MTEzLCBjb21taXQ6Y2NlYzc2NmM1MDlkMTZkYWI0MTc1ODJlOTRmNDNkOTA2Y2VmZDRhZQ0KKy0t LQ0KKyBSRUFETUUgfCAxOCArKysrKysrKysrKysrKysrKy0NCisgMSBmaWxlIGNoYW5nZWQsIDE3 IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkNCisNCitkaWZmIC0tZ2l0IGEvUkVBRE1FIGIv UkVBRE1FDQoraW5kZXggYjA3NTE2Mi4uMDcyMzAwMiAxMDA2NDQNCistLS0gYS9SRUFETUUNCisr KysgYi9SRUFETUUNCitAQCAtMjIsNiArMjIsMjIgQEAgVG8gdmVyaWZ5IHRoZSBhdXRoZW50aWNp dHkgb2YgdGhlIGNvbXByZXNzZWQgdGFyYmFsbCwgdXNlIHRoaXMgY29tbWFuZA0KKyBCVUdTIGFu ZCBERVZFTE9QTUVOVA0KKyA9PT09PT09PT09PT09PT09PT09PQ0KKyANCistUGxlYXNlIHJlcG9y dCBidWdzIHZpYSB0aGUgZnJlZWRlc2t0b3Aub3JnIGJ1Z3ppbGxhIGF0DQorK1BsZWFzZSByZXBv cnQgbm9uLXNlY3VyaXR5IGJ1Z3MgdmlhIHRoZSBmcmVlZGVza3RvcC5vcmcgYnVnemlsbGEgYXQN CisgDQorICBodHRwczovL2J1Z3MuZnJlZWRlc2t0b3Aub3JnL2VudGVyX2J1Zy5jZ2k/cHJvZHVj dD1Qb2xpY3lLaXQNCisrDQorK1NFQ1VSSVRZIElTU1VFUw0KKys9PT09PT09PT09PT09PT0NCisr DQorK3BvbGtpdCB1c2VzIHRoZSBzYW1lIG1lY2hhbmlzbSBmb3IgcmVwb3J0aW5nIHNlY3VyaXR5 IGlzc3VlcyBhcyBkYnVzLA0KKyt0aGUgbW9zdCByZWNlbnQgY29weSBvZiBpbnN0cnVjdGlvbnMg Y2FuIGJlIGZvdW5kIGluIHRoZSBEQnVzIGdpdA0KKytyZXBvc2l0b3J5Og0KKysNCisraHR0cDov L2NnaXQuZnJlZWRlc2t0b3Aub3JnL2RidXMvZGJ1cy90cmVlL0hBQ0tJTkcNCisrDQorK0EgY29w eSBvZiB0aGUgaW5zdHJ1Y3Rpb25zIGFzIG9mIDIwMTUtMDYtMDQ6DQorKw0KKytJZiB5b3UgZmlu ZCBhIHNlY3VyaXR5IHZ1bG5lcmFiaWxpdHkgdGhhdCBpcyBub3Qga25vd24gdG8gdGhlIHB1Ymxp YywNCisrcGxlYXNlIHJlcG9ydCBpdCBwcml2YXRlbHkgdG8gZGJ1cy1zZWN1cml0eUBsaXN0cy5m cmVlZGVza3RvcC5vcmcNCisrb3IgYnkgcmVwb3J0aW5nIGEgZnJlZWRlc2t0b3Aub3JnIGJ1ZyB0 aGF0IGlzIG1hcmtlZCBhcw0KKytyZXN0cmljdGVkIHRvIHRoZSAiRC1CVVMgc2VjdXJpdHkgZ3Jv dXAiLg0KZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL1JlZnVzZS1kdXBs aWNhdGUtdXNlci1hcmd1bWVudHMtdG8tcGtleGVjLnBhdGNoIGIvcGF0Y2hlcy9wb2xraXQtMC4x MDUvMC4xMTMvUmVmdXNlLWR1cGxpY2F0ZS11c2VyLWFyZ3VtZW50cy10by1wa2V4ZWMucGF0Y2gN Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAuLjE4NjM1ZTU4MQ0KLS0tIC9k ZXYvbnVsbA0KKysrIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvUmVmdXNlLWR1cGxpY2F0 ZS11c2VyLWFyZ3VtZW50cy10by1wa2V4ZWMucGF0Y2gNCkBAIC0wLDAgKzEsMzggQEANCitGcm9t OiA9P3V0Zi04P3E/TWlsb3NsYXZfVHJtYT1DND04RD89IDxtaXRyQHJlZGhhdC5jb20+DQorRGF0 ZTogVHVlLCAyNiBBdWcgMjAxNCAxNzo1OTo0NyArMDIwMA0KK1N1YmplY3Q6IFJlZnVzZSBkdXBs aWNhdGUgLS11c2VyIGFyZ3VtZW50cyB0byBwa2V4ZWMNCisNCitUaGlzIHVzYWdlIGlzIGNsZWFy bHkgZXJyb25lb3VzLCBzbyB3ZSBzaG91bGQgdGVsbCB0aGUgdXNlcnMgdGhleSBhcmUNCittYWtp bmcgYSBtaXN0YWtlLg0KKw0KK0Jlc2lkZXMsIHRoaXMgYWxsb3dzIGFuIGF0dGFja2VyIHRvIGNh dXNlIGEgaGlnaCBudW1iZXIgb2YgaGVhcA0KK2FsbG9jYXRpb25zIHdpdGggYXR0YWNrZXItY29u dHJvbGxlZCBzaXplcyAoDQoraHR0cDovL2dvb2dsZXByb2plY3R6ZXJvLmJsb2dzcG90LmN6LzIw MTQvMDgvdGhlLXBvaXNvbmVkLW51bC1ieXRlLTIwMTQtZWRpdGlvbi5odG1sDQorKSwgbWFraW5n IHNvbWUgZXhwbG9pdHMgZWFzaWVyLg0KKw0KKyhUbyBiZSBjbGVhciwgdGhpcyBpcyBub3QgYSBw a2V4ZWMgdnVsbmVyYWJpbGl0eSwgYW5kIHdlIHdpbGwgbm90DQorcmVmdXNlIGF0dGFja2VyLWFm ZmVjdGVkIG1hbGxvYygpIHVzYWdlIGFzIGEgbWF0dGVyIG9mIHBvbGljeTsgYnV0IHRoaXMNCitj b21taXQgaXMgYm90aCB1c2VyLWZyaWVuZGx5IGFuZCBhZGRpbmcgc29tZSBoYXJkZW5pbmcuKQ0K Kw0KK0J1ZzogaHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODMw OTMNCitPcmlnaW46IHVwc3RyZWFtLCAwLjExMywgY29tbWl0OjZjOTkyYmM4YWVmYTE5NWE0MWVh YTQxYzA3ZjQ2ZjE3ZGUxOGUyNWMNCistLS0NCisgc3JjL3Byb2dyYW1zL3BrZXhlYy5jIHwgNSAr KysrKw0KKyAxIGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspDQorDQorZGlmZiAtLWdpdCBh L3NyYy9wcm9ncmFtcy9wa2V4ZWMuYyBiL3NyYy9wcm9ncmFtcy9wa2V4ZWMuYw0KK2luZGV4IDVl OTkwNDQuLmFiYzY2MGQgMTAwNjQ0DQorLS0tIGEvc3JjL3Byb2dyYW1zL3BrZXhlYy5jDQorKysr IGIvc3JjL3Byb2dyYW1zL3BrZXhlYy5jDQorQEAgLTUzMyw2ICs1MzMsMTEgQEAgbWFpbiAoaW50 IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkNCisgICAgICAgICAgICAgICBnb3RvIG91dDsNCisgICAgICAg ICAgICAgfQ0KKyANCisrICAgICAgICAgIGlmIChvcHRfdXNlciAhPSBOVUxMKQ0KKysgICAgICAg ICAgICB7DQorKyAgICAgICAgICAgICAgZ19wcmludGVyciAoIi0tdXNlciBzcGVjaWZpZWQgdHdp Y2VcbiIpOw0KKysgICAgICAgICAgICAgIGdvdG8gb3V0Ow0KKysgICAgICAgICAgICB9DQorICAg ICAgICAgICBvcHRfdXNlciA9IGdfc3RyZHVwIChhcmd2W25dKTsNCisgICAgICAgICB9DQorICAg ICAgIGVsc2UgaWYgKHN0cmNtcCAoYXJndltuXSwgIi0tZGlzYWJsZS1pbnRlcm5hbC1hZ2VudCIp ID09IDApDQpkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvUmVtb3ZlLWEt cmVkdW5kYW50LWFzc2lnbm1lbnQucGF0Y2ggYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9S ZW1vdmUtYS1yZWR1bmRhbnQtYXNzaWdubWVudC5wYXRjaA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQN CmluZGV4IDAwMDAwMDAwMC4uNzkyY2E3ZjI0DQotLS0gL2Rldi9udWxsDQorKysgYi9wYXRjaGVz L3BvbGtpdC0wLjEwNS8wLjExMy9SZW1vdmUtYS1yZWR1bmRhbnQtYXNzaWdubWVudC5wYXRjaA0K QEAgLTAsMCArMSwyNiBAQA0KK0Zyb206ID0/dXRmLTg/cT9NaWxvc2xhdl9Ucm1hPUM0PThEPz0g PG1pdHJAcmVkaGF0LmNvbT4NCitEYXRlOiBXZWQsIDExIEp1biAyMDE0IDIyOjQ0OjI4ICswMjAw DQorU3ViamVjdDogUmVtb3ZlIGEgcmVkdW5kYW50IGFzc2lnbm1lbnQuDQorDQorSW5zdGVhZCBv ZiBhIG5vbnNlbnNpY2FsIChkYXRhID0gZGF0YSksIHVzZSB0aGUgbW9yZSBjdXN0b21hcnkNCiso KHZvaWQpZGF0YSkgdG8gc2lsZW5jZSB0aGUgd2FybmluZyBhYm91dCBhbiB1bnVzZWQgcGFyYW1l dGVyLg0KKw0KK0J1ZzogaHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9zaG93X2J1Zy5jZ2k/ aWQ9ODA3NjcNCitPcmlnaW46IHVwc3RyZWFtLCAwLjExMywgY29tbWl0OjM3MTQzZWIwNmNiMGM0 ZGZmY2E2NzA3OWRkMWMxMGM1YjE5MWI2YTcNCistLS0NCisgc3JjL3BvbGtpdGFnZW50L3BvbGtp dGFnZW50aGVscGVyLXBhbS5jIHwgMiArLQ0KKyAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24o KyksIDEgZGVsZXRpb24oLSkNCisNCitkaWZmIC0tZ2l0IGEvc3JjL3BvbGtpdGFnZW50L3BvbGtp dGFnZW50aGVscGVyLXBhbS5jIGIvc3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50aGVscGVyLXBh bS5jDQoraW5kZXggMjkyYWJiZS4uOTM3Mzg2ZSAxMDA2NDQNCistLS0gYS9zcmMvcG9sa2l0YWdl bnQvcG9sa2l0YWdlbnRoZWxwZXItcGFtLmMNCisrKysgYi9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0 YWdlbnRoZWxwZXItcGFtLmMNCitAQCAtMjMwLDcgKzIzMCw3IEBAIGNvbnZlcnNhdGlvbl9mdW5j dGlvbiAoaW50IG4sIGNvbnN0IHN0cnVjdCBwYW1fbWVzc2FnZSAqKm1zZywgc3RydWN0IHBhbV9y ZXNwb25zDQorICAgZ2NoYXIgKnRtcCA9IE5VTEw7DQorICAgc2l6ZV90IGxlbjsNCisgDQorLSAg ZGF0YSA9IGRhdGE7DQorKyAgKHZvaWQpZGF0YTsNCisgICBpZiAobiA8PSAwIHx8IG4gPiBQQU1f TUFYX05VTV9NU0cpDQorICAgICByZXR1cm4gUEFNX0NPTlZfRVJSOw0KKyANCmRpZmYgLS1naXQg YS9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9kb2NzLVVwZGF0ZS1mb3ItY2hhbmdlcy10by11 aWQtYmluZGluZy1BdXRoZW50aWNhdGlvLnBhdGNoIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4x MTMvZG9jcy1VcGRhdGUtZm9yLWNoYW5nZXMtdG8tdWlkLWJpbmRpbmctQXV0aGVudGljYXRpby5w YXRjaA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMC4uNDUxYzI5OTg1DQot LS0gL2Rldi9udWxsDQorKysgYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9kb2NzLVVwZGF0 ZS1mb3ItY2hhbmdlcy10by11aWQtYmluZGluZy1BdXRoZW50aWNhdGlvLnBhdGNoDQpAQCAtMCww ICsxLDI1OSBAQA0KK0Zyb206ID0/dXRmLTg/cT9NaWxvc2xhdl9Ucm1hPUM0PThEPz0gPG1pdHJA cmVkaGF0LmNvbT4NCitEYXRlOiBXZWQsIDE3IEp1biAyMDE1IDAxOjAxOjI3ICswMjAwDQorU3Vi amVjdDogZG9jczogVXBkYXRlIGZvciBjaGFuZ2VzIHRvIHVpZCBiaW5kaW5nL0F1dGhlbnRpY2F0 aW9uQWdlbnRSZXNwb25zZTINCisNCisgLSBSZWZlciB0byBQb2xraXRBZ2VudFNlc3Npb24gaW4g Z2VuZXJhbCBpbnN0ZWFkIG9mIHRvIF9yZXNwb25zZSBvbmx5DQorIC0gUmV2ZXJ0IHRvIHRoZSBv cmlnaW5hbCBkZXNjcmlwdGlvbiBvZiBhdXRoZW50aWNhdGlvbiBjYW5jZWxsYXRpb24sIHRoZQ0K KyAgIGFnZW50IHJlYWxseSBuZWVkcyB0byByZXR1cm4gYW4gZXJyb3IgdG8gdGhlIGNhbGxlciAo aW4gYWRkaXRpb24gdG8gZGVhbGluZw0KKyAgIHdpdGggdGhlIHNlc3Npb24gaWYgYW55KS4NCisg LSBFeHBsaWNpdGx5IGRvY3VtZW50IHRoZSBVSUQgYXNzdW1wdGlvbjsgaW4gdGhlIHByb2Nlc3Mg Zml4aW5nIGJ1ZyAjNjk5ODAuDQorIC0gS2VlcCBkb2N1bWVudGluZyB0aGF0IHdlIG5lZWQgYSBz dWZmaWNpZW50bHkgcHJpdmlsZWdlZCBjYWxsZXIuDQorIC0gUmVmZXIgdG8gdGhlIC4uLlJlc3Bv bnNlMiBBUEkgaW4gbW9yZSBwbGFjZXMuDQorIC0gQWxzbyB1cGRhdGUgZG9jYm9vayBkb2N1bWVu dGF0aW9uLg0KKyAtIERyb3AgYSBwYXJhZ3JhcGggc3VnZ2VzdGluZyBub24tUG9sa2l0QWdlbnRT ZXNzaW9uIGltcGxlbWVudGF0aW9ucyBhcmUNCisgICBleHBlY3RlZCBhbmQgY29tbW9ucGxhY2Uu DQorDQorQnVnOiBodHRwczovL2J1Z3MuZnJlZWRlc2t0b3Aub3JnL3Nob3dfYnVnLmNnaT9pZD05 MDgzNw0KK1Jldmlld2VkLWJ5OiBDb2xpbiBXYWx0ZXJzIDx3YWx0ZXJzQHJlZGhhdC5jb20+DQor T3JpZ2luOiB1cHN0cmVhbSwgMC4xMTMsIGNvbW1pdDpmYjUwNzZiN2MwNWQwMWE1MzJkNTkzYTQw NzlhMjljZjJkNjNhMjI4DQorQnVnLURlYmlhbjogaHR0cHM6Ly9idWdzLmRlYmlhbi5vcmcvNzk2 MTM0DQorLS0tDQorIC4uLi5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhlbnRpY2F0aW9uQWdl bnQueG1sIHwgIDYgKysrLS0tDQorIGRhdGEvb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0 aG9yaXR5LnhtbCAgICAgIHwgMTEgKysrKysrLS0tLQ0KKyAuLi4uZnJlZWRlc2t0b3AuUG9saWN5 S2l0MS5BdXRoZW50aWNhdGlvbkFnZW50LnhtbCB8ICA3ICsrKysrLS0NCisgLi4uZXJmYWNlLW9y Zy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhvcml0eS54bWwgfCAxMiArKysrKysrLS0tLQ0K KyBkb2NzL3BvbGtpdC9vdmVydmlldy54bWwgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA4 ICsrKystLS0tDQorIHNyYy9wb2xraXQvcG9sa2l0YXV0aG9yaXR5LmMgICAgICAgICAgICAgICAg ICAgICAgIHwgMjQgKysrKysrKysrKysrKysrKysrKystLQ0KKyBzcmMvcG9sa2l0YWdlbnQvcG9s a2l0YWdlbnRsaXN0ZW5lci5jICAgICAgICAgICAgICB8ICA1ICstLS0tDQorIHNyYy9wb2xraXRi YWNrZW5kL3BvbGtpdGJhY2tlbmRhdXRob3JpdHkuYyAgICAgICAgIHwgIDEgKw0KKyA4IGZpbGVz IGNoYW5nZWQsIDUxIGluc2VydGlvbnMoKyksIDIzIGRlbGV0aW9ucygtKQ0KKw0KK2RpZmYgLS1n aXQgYS9kYXRhL29yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhlbnRpY2F0aW9uQWdlbnQu eG1sIGIvZGF0YS9vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRoZW50aWNhdGlvbkFnZW50 LnhtbA0KK2luZGV4IDViZWVmN2QuLjQ4MjMzMmYgMTAwNjQ0DQorLS0tIGEvZGF0YS9vcmcuZnJl ZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRoZW50aWNhdGlvbkFnZW50LnhtbA0KKysrKyBiL2RhdGEv b3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aGVudGljYXRpb25BZ2VudC54bWwNCitAQCAt MTMsMTQgKzEzLDE0IEBADQorICAgICAgIHVzZXIgdG8gYXV0aGVudGljYXRlIGFzIG9uZSBvZiB0 aGUgaWRlbnRpdGllcyBpbiBAaWRlbnRpdGllcyBmb3INCisgICAgICAgdGhlIGFjdGlvbiB3aXRo IHRoZSBpZGVudGlmaWVyIEBhY3Rpb25faWQuPC9wYXJhPjxwYXJhPlRoaXMNCisgICAgICAgYXV0 aGVudGljYXRpb24gaXMgbm9ybWFsbHkgYWNoaWV2ZWQgdmlhIHRoZQ0KKy0gICAgICBwb2xraXRf YWdlbnRfc2Vzc2lvbl9yZXNwb25zZSgpIEFQSSwgd2hpY2ggaW52b2tlcyBhIHByaXZhdGUNCisr ICAgICAgUG9sa2l0QWdlbnRTZXNzaW9uIEFQSSwgd2hpY2ggaW52b2tlcyBhIHByaXZhdGUNCisg ICAgICAgc2V0dWlkIGhlbHBlciBwcm9jZXNzIHRvIHZlcmlmeSB0aGUgYXV0aGVudGljYXRpb24u ICBXaGVuDQorICAgICAgIHN1Y2Nlc3NmdWwsIGl0IGNhbGxzIHRoZQ0KKyAgICAgICBvcmcuZnJl ZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHkuQXV0aGVudGljYXRpb25BZ2VudFJlc3BvbnNl MigpDQorICAgICAgIG1ldGhvZCBvbiB0aGUgI29yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1 dGhvcml0eSBpbnRlcmZhY2Ugb2YNCisgICAgICAgdGhlIFBvbGljeUtpdCBkYWVtb24gYmVmb3Jl IHJldHVybmluZy4gIElmIHRoZSB1c2VyIGRpc21pc3NlcyB0aGUNCistICAgICAgYXV0aGVudGlj YXRpb24gZGlhbG9nLCB0aGUgYXV0aGVudGljYXRpb24gYWdlbnQgc2hvdWxkIGNhbGwNCistICAg ICAgcG9sa2l0X2FnZW50X3Nlc3Npb25fY2FuY2VsKCkuPC9wYXJhPiIvPg0KKysgICAgICBhdXRo ZW50aWNhdGlvbiBkaWFsb2csIHRoZSBhdXRoZW50aWNhdGlvbiBhZ2VudCBzaG91bGQgcmV0dXJu IGFuDQorKyAgICAgIGVycm9yLjwvcGFyYT4iLz4NCisgDQorICAgICAgIDxhcmcgbmFtZT0iYWN0 aW9uX2lkIiBkaXJlY3Rpb249ImluIiB0eXBlPSJzIj4NCisgICAgICAgICA8YW5ub3RhdGlvbiBu YW1lPSJvcmcuZ3RrLkVnZ0RCdXMuRG9jU3RyaW5nIiB2YWx1ZT0iVGhlIGlkZW50aWZpZXIgZm9y IHRoZSBhY3Rpb24gdGhhdCB0aGUgdXNlciBpcyBhdXRoZW50aWNhdGlvbiBmb3IuIi8+DQorZGlm ZiAtLWdpdCBhL2RhdGEvb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aG9yaXR5LnhtbCBi L2RhdGEvb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aG9yaXR5LnhtbA0KK2luZGV4IGY5 MDIxZWUuLjg4ZGEzYzAgMTAwNjQ0DQorLS0tIGEvZGF0YS9vcmcuZnJlZWRlc2t0b3AuUG9saWN5 S2l0MS5BdXRob3JpdHkueG1sDQorKysrIGIvZGF0YS9vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0 MS5BdXRob3JpdHkueG1sDQorQEAgLTI4Myw3ICsyODMsNyBAQA0KKyAgICAgPCEtLSAtLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIC0tPg0KKyANCisgICAgIDxtZXRo b2QgbmFtZT0iUmVnaXN0ZXJBdXRoZW50aWNhdGlvbkFnZW50Ij4NCistICAgICAgPGFubm90YXRp b24gbmFtZT0ib3JnLmd0ay5FZ2dEQnVzLkRvY1N0cmluZyIgdmFsdWU9IjxwYXJhPlJlZ2lzdGVy IGFuIGF1dGhlbnRpY2F0aW9uIGFnZW50LjwvcGFyYT48cGFyYT5Ob3RlIHRoYXQgY3VycmVudCB2 ZXJzaW9ucyBvZiBQb2xpY3lLaXQgd2lsbCBvbmx5IHdvcmsgaWYgQHNlc3Npb25faWQgaXMgc2V0 IHRvIHRoZSBlbXB0eSBzdHJpbmcuIEluIHRoZSBmdXR1cmUgaXQgbWlnaHQgd29yayBmb3Igbm9u LWVtcHR5IHN0cmluZ3MgaWYgdGhlIGNhbGxlciBpcyBzdWZmaWNpZW50bHkgcHJpdmlsZWdlZC48 L3BhcmE+Ii8+DQorKyAgICAgIDxhbm5vdGF0aW9uIG5hbWU9Im9yZy5ndGsuRWdnREJ1cy5Eb2NT dHJpbmciIHZhbHVlPSI8cGFyYT5SZWdpc3RlciBhbiBhdXRoZW50aWNhdGlvbiBhZ2VudC48L3Bh cmE+PHBhcmE+Tm90ZSB0aGF0IHRoaXMgc2hvdWxkIGJlIGNhbGxlZCBieSB0aGUgc2FtZSBlZmZl Y3RpdmUgVUlEIHdoaWNoIHdpbGwgYmUgcGFzc2VkIHRvIG9yZy5mcmVlZGVza3RvcC5Qb2xpY3lL aXQxLkF1dGhvcml0eS5BdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2UyKCkuPC9wYXJhPiIvPg0K KyANCisgICAgICAgPGFyZyBuYW1lPSJzdWJqZWN0IiBkaXJlY3Rpb249ImluIiB0eXBlPSIoc2F7 c3Z9KSI+DQorICAgICAgICAgPGFubm90YXRpb24gbmFtZT0ib3JnLmd0ay5FZ2dEQnVzLlR5cGUi IHZhbHVlPSJTdWJqZWN0Ii8+DQorQEAgLTMxNSw3ICszMTUsOCBAQA0KKyAgICAgPG1ldGhvZCBu YW1lPSJBdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2UiPg0KKyAgICAgICA8YW5ub3RhdGlvbiBu YW1lPSJvcmcuZ3RrLkVnZ0RCdXMuRG9jU3RyaW5nIiB2YWx1ZT0iTWV0aG9kIGZvciBhdXRoZW50 aWNhdGlvbiBhZ2VudHMgdG8gaW52b2tlIG9uIHN1Y2Nlc3NmdWwNCisgYXV0aGVudGljYXRpb24s IGludGVuZGVkIG9ubHkgZm9yIHVzZSBieSBhIHByaXZpbGVnZWQgaGVscGVyIHByb2Nlc3MNCist aW50ZXJuYWwgdG8gcG9sa2l0LiIvPg0KKytpbnRlcm5hbCB0byBwb2xraXQuIFRoaXMgbWV0aG9k IHdpbGwgZmFpbCB1bmxlc3MgYSBzdWZmaWNpZW50bHkgcHJpdmlsZWdlZA0KKytjYWxsZXIgaW52 b2tlcyBpdC4gRGVwcmVjYXRlZCBpbiBmYXZvciBvZiBvcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0 MS5BdXRob3JpdHkuQXV0aGVudGljYXRpb25BZ2VudFJlc3BvbnNlMi4iLz4NCisgDQorICAgICAg IDxhcmcgbmFtZT0iY29va2llIiBkaXJlY3Rpb249ImluIiB0eXBlPSJzIj4NCisgICAgICAgICA8 YW5ub3RhdGlvbiBuYW1lPSJvcmcuZ3RrLkVnZ0RCdXMuRG9jU3RyaW5nIiB2YWx1ZT0iVGhlIGNv b2tpZSBpZGVudGlmeWluZyB0aGUgYXV0aGVudGljYXRpb24gcmVxdWVzdCB0aGF0IHdhcyBwYXNz ZWQgdG8gdGhlIGF1dGhlbnRpY2F0aW9uIGFnZW50LiIvPg0KK0BAIC0zMzAsMTEgKzMzMSwxMyBA QCBpbnRlcm5hbCB0byBwb2xraXQuIi8+DQorICAgICA8bWV0aG9kIG5hbWU9IkF1dGhlbnRpY2F0 aW9uQWdlbnRSZXNwb25zZTIiPg0KKyAgICAgICA8YW5ub3RhdGlvbiBuYW1lPSJvcmcuZ3RrLkVn Z0RCdXMuRG9jU3RyaW5nIiB2YWx1ZT0iTWV0aG9kIGZvciBhdXRoZW50aWNhdGlvbiBhZ2VudHMg dG8gaW52b2tlIG9uIHN1Y2Nlc3NmdWwNCisgYXV0aGVudGljYXRpb24sIGludGVuZGVkIG9ubHkg Zm9yIHVzZSBieSBhIHByaXZpbGVnZWQgaGVscGVyIHByb2Nlc3MNCistaW50ZXJuYWwgdG8gcG9s a2l0LiAgIE5vdGUgdGhpcyBtZXRob2Qgd2FzIGFkZGVkIGluIDAuMTE0LCBhbmQgc2hvdWxkIGJl IHByZWZlcnJlZCBvdmVyIEF1dGhlbnRpY2F0aW9uQWdlbnRSZXNwb25zZQ0KKytpbnRlcm5hbCB0 byBwb2xraXQuIFRoaXMgbWV0aG9kIHdpbGwgZmFpbCB1bmxlc3MgYSBzdWZmaWNpZW50bHkgcHJp dmlsZWdlZA0KKytjYWxsZXIgaW52b2tlcyBpdC4gTm90ZSB0aGlzIG1ldGhvZCB3YXMgYWRkZWQg aW4gMC4xMTQsIGFuZCBzaG91bGQgYmUgcHJlZmVycmVkIG92ZXIgb3JnLmZyZWVkZXNrdG9wLlBv bGljeUtpdDEuQXV0aG9yaXR5LkF1dGhlbnRpY2F0aW9uQWdlbnRSZXNwb25zZSgpDQorIGFzIGl0 IGZpeGVzIGEgc2VjdXJpdHkgaXNzdWUuIi8+DQorIA0KKyAgICAgICA8YXJnIG5hbWU9InVpZCIg ZGlyZWN0aW9uPSJpbiIgdHlwZT0idSI+DQorLSAgICAgICAgPGFubm90YXRpb24gbmFtZT0ib3Jn Lmd0ay5FZ2dEQnVzLkRvY1N0cmluZyIgdmFsdWU9IlRoZSByZWFsIHVpZCBvZiB0aGUgYWdlbnQu ICBOb3JtYWxseSBzZXQgYnkgdGhlIHNldHVpZCBoZWxwZXIgcHJvZ3JhbS4iLz4NCisrICAgICAg ICA8YW5ub3RhdGlvbiBuYW1lPSJvcmcuZ3RrLkVnZ0RCdXMuRG9jU3RyaW5nIiB2YWx1ZT0iVGhl IHJlYWwgdWlkIG9mIHRoZSBhZ2VudC4gIE5vcm1hbGx5IHNldCBieSB0aGUgc2V0dWlkIGhlbHBl ciBwcm9ncmFtLg0KKytNdXN0IG1hdGNoIHRoZSBlZmZlY3RpdmUgVUlEIG9mIHRoZSBjYWxsZXIg b2Ygb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aG9yaXR5LlJlZ2lzdGVyQXV0aGVudGlj YXRpb25BZ2VudCgpLiIvPg0KKyAgICAgICA8L2FyZz4NCisgDQorICAgICAgIDxhcmcgbmFtZT0i Y29va2llIiBkaXJlY3Rpb249ImluIiB0eXBlPSJzIj4NCitkaWZmIC0tZ2l0IGEvZG9jcy9wb2xr aXQvZG9jYm9vay1pbnRlcmZhY2Utb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aGVudGlj YXRpb25BZ2VudC54bWwgYi9kb2NzL3BvbGtpdC9kb2Nib29rLWludGVyZmFjZS1vcmcuZnJlZWRl c2t0b3AuUG9saWN5S2l0MS5BdXRoZW50aWNhdGlvbkFnZW50LnhtbA0KK2luZGV4IGVjNTk2MjYu LmFiMjdiMmYgMTAwNjQ0DQorLS0tIGEvZG9jcy9wb2xraXQvZG9jYm9vay1pbnRlcmZhY2Utb3Jn LmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aGVudGljYXRpb25BZ2VudC54bWwNCisrKysgYi9k b2NzL3BvbGtpdC9kb2Nib29rLWludGVyZmFjZS1vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5B dXRoZW50aWNhdGlvbkFnZW50LnhtbA0KK0BAIC00NywxMCArNDcsMTMgQEAgQmVnaW5BdXRoZW50 aWNhdGlvbiAoSU4gIFN0cmluZyAgICAgICAgICAgICAgIGFjdGlvbl9pZCwNCisgICAgICAgICBp ZGVudGlmaWVyIDxwYXJhbWV0ZXI+YWN0aW9uX2lkPC9wYXJhbWV0ZXI+LjwvcGFyYT48cGFyYT5V cG9uDQorICAgICAgICAgc3VjY2VzZnVsIGF1dGhlbnRpY2F0aW9uLCB0aGUgYXV0aGVudGljYXRp b24gYWdlbnQgbXVzdCBpbnZva2UNCisgICAgICAgICB0aGUgPGxpbmsNCistICAgICAgICBsaW5r ZW5kPSJlZ2dkYnVzLW1ldGhvZC1vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHku QXV0aGVudGljYXRpb25BZ2VudFJlc3BvbnNlIj5BdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2Uo KTwvbGluaz4NCisrICAgICAgICBsaW5rZW5kPSJlZ2dkYnVzLW1ldGhvZC1vcmcuZnJlZWRlc2t0 b3AuUG9saWN5S2l0MS5BdXRob3JpdHkuQXV0aGVudGljYXRpb25BZ2VudFJlc3BvbnNlMiI+QXV0 aGVudGljYXRpb25BZ2VudFJlc3BvbnNlMigpPC9saW5rPg0KKyAgICAgICAgIG1ldGhvZCBvbiB0 aGUgPGxpbmsNCisgICAgICAgICBsaW5rZW5kPSJlZ2dkYnVzLWludGVyZmFjZS1vcmcuZnJlZWRl c2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHkiPm9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1 dGhvcml0eTwvbGluaz4NCistICAgICAgICBpbnRlcmZhY2Ugb2YgdGhlIFBvbGljeUtpdCBkYWVt b24gYmVmb3JlIHJldHVybmluZy4NCisrICAgICAgICBpbnRlcmZhY2Ugb2YgdGhlIFBvbGljeUtp dCBkYWVtb24gYmVmb3JlIHJldHVybmluZy4gVGhpcyBpcyBub3JtYWxseQ0KKysgICAgICAgIGFj aGlldmVkIHZpYSB0aGUgPGxpbmsgbGlua2VuZD0iUG9sa2l0QWdlbnRTZXNzaW9uIj5Qb2xraXRB Z2VudFNlc3Npb248L2xpbms+DQorKyAgICAgICAgQVBJLCB3aGljaCBpbnZva2VzIGEgcHJpdmF0 ZSBzZXR1aWQgaGVscGVyIHByb2Nlc3MgdG8gdmVyaWZ5IHRoZQ0KKysgICAgICAgIGF1dGhlbnRp Y2F0aW9uLg0KKyAgICAgICA8L3BhcmE+DQorICAgICAgIDxwYXJhPg0KKyAgICAgICAgIFRoZSBh dXRoZW50aWNhdGlvbiBhZ2VudCBzaG91bGQgbm90IHJldHVybiB1bnRpbCBhZnRlciBhdXRoZW50 aWNhdGlvbiBpcyBjb21wbGV0ZS4NCitkaWZmIC0tZ2l0IGEvZG9jcy9wb2xraXQvZG9jYm9vay1p bnRlcmZhY2Utb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aG9yaXR5LnhtbCBiL2RvY3Mv cG9sa2l0L2RvY2Jvb2staW50ZXJmYWNlLW9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhv cml0eS54bWwNCitpbmRleCBlNjZiZjUzLi5mMmVlZDYzIDEwMDY0NA0KKy0tLSBhL2RvY3MvcG9s a2l0L2RvY2Jvb2staW50ZXJmYWNlLW9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhvcml0 eS54bWwNCisrKysgYi9kb2NzL3BvbGtpdC9kb2Nib29rLWludGVyZmFjZS1vcmcuZnJlZWRlc2t0 b3AuUG9saWN5S2l0MS5BdXRob3JpdHkueG1sDQorQEAgLTQyLDcgKzQyLDcgQEAgU3RydWN0dXJl ICAgIDxsaW5rIGxpbmtlbmQ9ImVnZ2RidXMtc3RydWN0LVRlbXBvcmFyeUF1dGhvcml6YXRpb24i PlRlbXBvcmFyeUF1dGgNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOICBT dHJpbmcgICAgICAgICAgICAgICAgICAgICAgICAgb2JqZWN0X3BhdGgpDQorIDxsaW5rIGxpbmtl bmQ9ImVnZ2RidXMtbWV0aG9kLW9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhvcml0eS5B dXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2UiPkF1dGhlbnRpY2F0aW9uQWdlbnRSZXNwb25zZTwv bGluaz4gICAgICAoSU4gIFN0cmluZyAgICAgICAgICAgICAgICAgICAgICAgICBjb29raWUsDQor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTiAgPGxpbmsgbGlua2VuZD0iZWdn ZGJ1cy1zdHJ1Y3QtSWRlbnRpdHkiPklkZW50aXR5PC9saW5rPiAgICAgICAgICAgICAgICAgICAg ICAgaWRlbnRpdHkpDQorLTxsaW5rIGxpbmtlbmQ9ImVnZ2RidXMtbWV0aG9kLW9yZy5mcmVlZGVz a3RvcC5Qb2xpY3lLaXQxLkF1dGhvcml0eS5BdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2UiPkF1 dGhlbnRpY2F0aW9uQWdlbnRSZXNwb25zZTI8L2xpbms+ICAgICAgKElOIHVpbnQzMiB1aWQsIElO ICBTdHJpbmcgICAgICAgICAgICAgICAgICAgICAgICAgY29va2llLA0KKys8bGluayBsaW5rZW5k PSJlZ2dkYnVzLW1ldGhvZC1vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHkuQXV0 aGVudGljYXRpb25BZ2VudFJlc3BvbnNlMiI+QXV0aGVudGljYXRpb25BZ2VudFJlc3BvbnNlMjwv bGluaz4gICAgICAoSU4gdWludDMyIHVpZCwgSU4gIFN0cmluZyAgICAgICAgICAgICAgICAgICAg ICAgICBjb29raWUsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTiAgPGxp bmsgbGlua2VuZD0iZWdnZGJ1cy1zdHJ1Y3QtSWRlbnRpdHkiPklkZW50aXR5PC9saW5rPiAgICAg ICAgICAgICAgICAgICAgICAgaWRlbnRpdHkpDQorIDxsaW5rIGxpbmtlbmQ9ImVnZ2RidXMtbWV0 aG9kLW9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLkF1dGhvcml0eS5FbnVtZXJhdGVUZW1wb3Jh cnlBdXRob3JpemF0aW9ucyI+RW51bWVyYXRlVGVtcG9yYXJ5QXV0aG9yaXphdGlvbnM8L2xpbms+ IChJTiAgPGxpbmsgbGlua2VuZD0iZWdnZGJ1cy1zdHJ1Y3QtU3ViamVjdCI+U3ViamVjdDwvbGlu az4gICAgICAgICAgICAgICAgICAgICAgICBzdWJqZWN0LA0KKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgT1VUIEFycmF5Jmx0OzxsaW5rIGxpbmtlbmQ9ImVnZ2RidXMtc3RydWN0 LVRlbXBvcmFyeUF1dGhvcml6YXRpb24iPlRlbXBvcmFyeUF1dGhvcml6YXRpb248L2xpbms+Jmd0 OyAgdGVtcG9yYXJ5X2F1dGhvcml6YXRpb25zKQ0KK0BAIC03MDEsNyArNzAxLDcgQEAgUmVnaXN0 ZXJBdXRoZW50aWNhdGlvbkFnZW50IChJTiAgPGxpbmsgbGlua2VuZD0iZWdnZGJ1cy1zdHJ1Y3Qt U3ViamVjdCI+U3ViamVjdDwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTiAgU3Ry aW5nICAgb2JqZWN0X3BhdGgpDQorICAgICA8L3Byb2dyYW1saXN0aW5nPg0KKyAgICAgPHBhcmE+ DQorLTxwYXJhPlJlZ2lzdGVyIGFuIGF1dGhlbnRpY2F0aW9uIGFnZW50LjwvcGFyYT48cGFyYT5O b3RlIHRoYXQgY3VycmVudCB2ZXJzaW9ucyBvZiBQb2xpY3lLaXQgd2lsbCBvbmx5IHdvcmsgaWYg PHBhcmFtZXRlcj5zZXNzaW9uX2lkPC9wYXJhbWV0ZXI+IGlzIHNldCB0byB0aGUgZW1wdHkgc3Ry aW5nLiBJbiB0aGUgZnV0dXJlIGl0IG1pZ2h0IHdvcmsgZm9yIG5vbi1lbXB0eSBzdHJpbmdzIGlm IHRoZSBjYWxsZXIgaXMgc3VmZmljaWVudGx5IHByaXZpbGVnZWQuPC9wYXJhPg0KKys8cGFyYT5S ZWdpc3RlciBhbiBhdXRoZW50aWNhdGlvbiBhZ2VudC48L3BhcmE+PHBhcmE+Tm90ZSB0aGF0IHRo aXMgc2hvdWxkIGJlIGNhbGxlZCBieSBzYW1lIGVmZmVjdGl2ZSBVSUQgd2hpY2ggd2lsbCBiZSBw YXNzZWQgdG8gPGxpbmsgbGlua2VuZD0iZWdnZGJ1cy1tZXRob2Qtb3JnLmZyZWVkZXNrdG9wLlBv bGljeUtpdDEuQXV0aG9yaXR5LkF1dGhlbnRpY2F0aW9uQWdlbnRSZXNwb25zZTIiPkF1dGhlbnRp Y2F0aW9uQWdlbnRSZXNwb25zZTIoKTwvbGluaz4uPC9wYXJhPg0KKyAgICAgPC9wYXJhPg0KKyA8 dmFyaWFibGVsaXN0IHJvbGU9InBhcmFtcyI+DQorICAgPHZhcmxpc3RlbnRyeT4NCitAQCAtNzgx LDcgKzc4MSw4IEBAIEF1dGhlbnRpY2F0aW9uQWdlbnRSZXNwb25zZSAoSU4gIFN0cmluZyAgICBj b29raWUsDQorICAgICA8cGFyYT4NCisgTWV0aG9kIGZvciBhdXRoZW50aWNhdGlvbiBhZ2VudHMg dG8gaW52b2tlIG9uIHN1Y2Nlc3NmdWwNCisgYXV0aGVudGljYXRpb24sIGludGVuZGVkIG9ubHkg Zm9yIHVzZSBieSBhIHByaXZpbGVnZWQgaGVscGVyIHByb2Nlc3MNCistaW50ZXJuYWwgdG8gcG9s a2l0LiAgRGVwcmVjYXRlZCBpbiBmYXZvciBvZiBBdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2Uy Lg0KKytpbnRlcm5hbCB0byBwb2xraXQuIFRoaXMgbWV0aG9kIHdpbGwgZmFpbCB1bmxlc3MgYSBz dWZmaWNpZW50bHkgcHJpdmlsZWdlZA0KKysrY2FsbGVyIGludm9rZXMgaXQuIERlcHJlY2F0ZWQg aW4gZmF2b3Igb2YgPGxpbmsgbGlua2VuZD0iZWdnZGJ1cy1tZXRob2Qtb3JnLmZyZWVkZXNrdG9w LlBvbGljeUtpdDEuQXV0aG9yaXR5LkF1dGhlbnRpY2F0aW9uQWdlbnRSZXNwb25zZTIiPkF1dGhl bnRpY2F0aW9uQWdlbnRSZXNwb25zZTIoKTwvbGluaz4uDQorICAgICA8L3BhcmE+DQorIDx2YXJp YWJsZWxpc3Qgcm9sZT0icGFyYW1zIj4NCisgICA8dmFybGlzdGVudHJ5Pg0KK0BAIC04MTIsNyAr ODEzLDEwIEBAIEF1dGhlbnRpY2F0aW9uQWdlbnRSZXNwb25zZTIgKElOICB1aW50MzIgdWlkLA0K KyAgICAgPHBhcmE+DQorIE1ldGhvZCBmb3IgYXV0aGVudGljYXRpb24gYWdlbnRzIHRvIGludm9r ZSBvbiBzdWNjZXNzZnVsDQorIGF1dGhlbnRpY2F0aW9uLCBpbnRlbmRlZCBvbmx5IGZvciB1c2Ug YnkgYSBwcml2aWxlZ2VkIGhlbHBlciBwcm9jZXNzDQorLWludGVybmFsIHRvIHBvbGtpdC4gIE5v dGUgdGhpcyBtZXRob2Qgd2FzIGludHJvZHVjZWQgaW4gMC4xMTQgdG8gZml4IGEgc2VjdXJpdHkg aXNzdWUuDQorK2ludGVybmFsIHRvIHBvbGtpdC4gVGhpcyBtZXRob2Qgd2lsbCBmYWlsIHVubGVz cyBhIHN1ZmZpY2llbnRseSBwcml2aWxlZ2VkDQorK2NhbGxlciBpbnZva2VzIGl0LiBOb3RlIHRo aXMgbWV0aG9kIHdhcyBpbnRyb2R1Y2VkIGluIDAuMTE0IGFuZCBzaG91bGQgYmUNCisrcHJlZmVy cmVkIG92ZXIgPGxpbmsgbGlua2VuZD0iZWdnZGJ1cy1tZXRob2Qtb3JnLmZyZWVkZXNrdG9wLlBv bGljeUtpdDEuQXV0aG9yaXR5LkF1dGhlbnRpY2F0aW9uQWdlbnRSZXNwb25zZSI+QXV0aGVudGlj YXRpb25BZ2VudFJlc3BvbnNlKCk8L2xpbms+DQorK2FzIGl0IGZpeGVzIGEgc2VjdXJpdHkgaXNz dWUuDQorICAgICA8L3BhcmE+DQorIDx2YXJpYWJsZWxpc3Qgcm9sZT0icGFyYW1zIj4NCisgICA8 dmFybGlzdGVudHJ5Pg0KK2RpZmYgLS1naXQgYS9kb2NzL3BvbGtpdC9vdmVydmlldy54bWwgYi9k b2NzL3BvbGtpdC9vdmVydmlldy54bWwNCitpbmRleCBjMjlkOGRhLi44ZGRiMzRjIDEwMDY0NA0K Ky0tLSBhL2RvY3MvcG9sa2l0L292ZXJ2aWV3LnhtbA0KKysrKyBiL2RvY3MvcG9sa2l0L292ZXJ2 aWV3LnhtbA0KK0BAIC03MywxMSArNzMsMTEgQEANCisgICAgICAgbGlua2VuZD0iZWdnZGJ1cy1p bnRlcmZhY2Utb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aGVudGljYXRpb25BZ2VudCI+ b3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuQXV0aGVudGljYXRpb25BZ2VudDwvbGluaz4NCisg ICAgICAgRC1CdXMgaW50ZXJmYWNlLiBPbmNlIHRoZSB1c2VyIGlzIGF1dGhlbnRpY2F0ZWQsIChh IHByaXZpbGVnZWQNCisgICAgICAgcGFydCBvZikgdGhlIGFnZW50IGludm9rZXMgdGhlIDxsaW5r DQorLSAgICAgIGxpbmtlbmQ9ImVnZ2RidXMtbWV0aG9kLW9yZy5mcmVlZGVza3RvcC5Qb2xpY3lL aXQxLkF1dGhvcml0eS5BdXRoZW50aWNhdGlvbkFnZW50UmVzcG9uc2UiPkF1dGhlbnRpY2F0aW9u QWdlbnRSZXNwb25zZSgpPC9saW5rPg0KKysgICAgICBsaW5rZW5kPSJlZ2dkYnVzLW1ldGhvZC1v cmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5BdXRob3JpdHkuQXV0aGVudGljYXRpb25BZ2VudFJl c3BvbnNlMiI+QXV0aGVudGljYXRpb25BZ2VudFJlc3BvbnNlMigpPC9saW5rPg0KKyAgICAgICBt ZXRob2QuICBUaGlzIG1ldGhvZCBzaG91bGQgYmUgdHJlYXRlZCBhcyBhbiBpbnRlcm5hbA0KKy0g ICAgICBpbXBsZW1lbnRhdGlvbiBkZXRhaWwsIGFuZCBjYWxsZXJzIHNob3VsZCB1c2UgdGhlIHB1 YmxpYyBzaGFyZWQNCistICAgICAgbGlicmFyeSBBUEkgdG8gaW52b2tlIGl0LCB3aGljaCBjdXJy ZW50bHkgdXNlcyBhIHNldHVpZCBoZWxwZXINCistICAgICAgcHJvZ3JhbS4NCisrICAgICAgaW1w bGVtZW50YXRpb24gZGV0YWlsLCBhbmQgY2FsbGVycyBzaG91bGQgdXNlIHRoZQ0KKysgICAgICA8 bGluayBsaW5rZW5kPSJQb2xraXRBZ2VudFNlc3Npb24iPlBvbGtpdEFnZW50U2Vzc2lvbjwvbGlu az4gQVBJIHRvIGludm9rZQ0KKysgICAgICBpdCwgd2hpY2ggY3VycmVudGx5IHVzZXMgYSBzZXR1 aWQgaGVscGVyIHByb2dyYW0uDQorICAgICA8L3BhcmE+DQorICAgICA8cGFyYT4NCisgICAgICAg VGhlIDxsaW5rIGxpbmtlbmQ9InJlZi1hdXRoZW50aWNhdGlvbi1hZ2VudC1hcGkiPmxpYnBvbGtp dC1hZ2VudC0xPC9saW5rPg0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0L3BvbGtpdGF1dGhvcml0 eS5jIGIvc3JjL3BvbGtpdC9wb2xraXRhdXRob3JpdHkuYw0KK2luZGV4IGY0NWFiYzQuLjRlODgy ZTYgMTAwNjQ0DQorLS0tIGEvc3JjL3BvbGtpdC9wb2xraXRhdXRob3JpdHkuYw0KKysrKyBiL3Ny Yy9wb2xraXQvcG9sa2l0YXV0aG9yaXR5LmMNCitAQCAtMTAzOCw2ICsxMDM4LDEwIEBAIHBvbGtp dF9hdXRob3JpdHlfY2hlY2tfYXV0aG9yaXphdGlvbl9zeW5jIChQb2xraXRBdXRob3JpdHkgICAg ICAgICAgICAgICAqYXV0aG9yDQorICAqDQorICAqIEFzeW5jaHJvbm91c2x5IHJlZ2lzdGVycyBh biBhdXRoZW50aWNhdGlvbiBhZ2VudC4NCisgICoNCisrICogTm90ZSB0aGF0IHRoaXMgc2hvdWxk IGJlIGNhbGxlZCBieSB0aGUgc2FtZSBlZmZlY3RpdmUgVUlEIHdoaWNoIHdpbGwgYmUNCisrICog dGhlIHJlYWwgVUlEIHVzaW5nIHRoZSAjUG9sa2l0QWdlbnRTZXNzaW9uIEFQSSBvciBvdGhlcndp c2UgY2FsbGluZw0KKysgKiBwb2xraXRfYXV0aG9yaXR5X2F1dGhlbnRpY2F0aW9uX2FnZW50X3Jl c3BvbnNlKCkuDQorKyAqDQorICAqIFdoZW4gdGhlIG9wZXJhdGlvbiBpcyBmaW5pc2hlZCwgQGNh bGxiYWNrIHdpbGwgYmUgaW52b2tlZCBpbiB0aGUNCisgICogPGxpbmsgbGlua2VuZD0iZy1tYWlu LWNvbnRleHQtcHVzaC10aHJlYWQtZGVmYXVsdCI+dGhyZWFkLWRlZmF1bHQNCisgICogbWFpbiBs b29wPC9saW5rPiBvZiB0aGUgdGhyZWFkIHlvdSBhcmUgY2FsbGluZyB0aGlzIG1ldGhvZA0KK0BA IC0xMTI5LDcgKzExMzMsMTMgQEAgcG9sa2l0X2F1dGhvcml0eV9yZWdpc3Rlcl9hdXRoZW50aWNh dGlvbl9hZ2VudF9maW5pc2ggKFBvbGtpdEF1dGhvcml0eSAqYXV0aG9yaXQNCisgICogQGNhbmNl bGxhYmxlOiAoYWxsb3ctbm9uZSk6IEEgI0dDYW5jZWxsYWJsZSBvciAlTlVMTC4NCisgICogQGVy cm9yOiAoYWxsb3ctbm9uZSk6IFJldHVybiBsb2NhdGlvbiBmb3IgZXJyb3Igb3IgJU5VTEwuDQor ICAqDQorLSAqIFJlZ2lzdGVycyBhbiBhdXRoZW50aWNhdGlvbiBhZ2VudC4gVGhlIGNhbGxpbmcg dGhyZWFkIGlzIGJsb2NrZWQNCisrICogUmVnaXN0ZXJzIGFuIGF1dGhlbnRpY2F0aW9uIGFnZW50 Lg0KKysgKg0KKysgKiBOb3RlIHRoYXQgdGhpcyBzaG91bGQgYmUgY2FsbGVkIGJ5IHRoZSBzYW1l IGVmZmVjdGl2ZSBVSUQgd2hpY2ggd2lsbCBiZQ0KKysgKiB0aGUgcmVhbCBVSUQgdXNpbmcgdGhl ICNQb2xraXRBZ2VudFNlc3Npb24gQVBJIG9yIG90aGVyd2lzZSBjYWxsaW5nDQorKyAqIHBvbGtp dF9hdXRob3JpdHlfYXV0aGVudGljYXRpb25fYWdlbnRfcmVzcG9uc2UoKS4NCisrICoNCisrICog VGhlIGNhbGxpbmcgdGhyZWFkIGlzIGJsb2NrZWQNCisgICogdW50aWwgYSByZXBseSBpcyByZWNl aXZlZC4gU2VlDQorICAqIHBvbGtpdF9hdXRob3JpdHlfcmVnaXN0ZXJfYXV0aGVudGljYXRpb25f YWdlbnQoKSBmb3IgdGhlDQorICAqIGFzeW5jaHJvbm91cyB2ZXJzaW9uLg0KK0BAIC0xMTc4LDYg KzExODgsMTAgQEAgcG9sa2l0X2F1dGhvcml0eV9yZWdpc3Rlcl9hdXRoZW50aWNhdGlvbl9hZ2Vu dF9zeW5jIChQb2xraXRBdXRob3JpdHkgICAgICphdXRob3INCisgICoNCisgICogQXN5bmNocm9u b3VzbHkgcmVnaXN0ZXJzIGFuIGF1dGhlbnRpY2F0aW9uIGFnZW50Lg0KKyAgKg0KKysgKiBOb3Rl IHRoYXQgdGhpcyBzaG91bGQgYmUgY2FsbGVkIGJ5IHRoZSBzYW1lIGVmZmVjdGl2ZSBVSUQgd2hp Y2ggd2lsbCBiZQ0KKysgKiB0aGUgcmVhbCBVSUQgdXNpbmcgdGhlICNQb2xraXRBZ2VudFNlc3Np b24gQVBJIG9yIG90aGVyd2lzZSBjYWxsaW5nDQorKyAqIHBvbGtpdF9hdXRob3JpdHlfYXV0aGVu dGljYXRpb25fYWdlbnRfcmVzcG9uc2UoKS4NCisrICoNCisgICogV2hlbiB0aGUgb3BlcmF0aW9u IGlzIGZpbmlzaGVkLCBAY2FsbGJhY2sgd2lsbCBiZSBpbnZva2VkIGluIHRoZQ0KKyAgKiA8bGlu ayBsaW5rZW5kPSJnLW1haW4tY29udGV4dC1wdXNoLXRocmVhZC1kZWZhdWx0Ij50aHJlYWQtZGVm YXVsdA0KKyAgKiBtYWluIGxvb3A8L2xpbms+IG9mIHRoZSB0aHJlYWQgeW91IGFyZSBjYWxsaW5n IHRoaXMgbWV0aG9kDQorQEAgLTEyOTIsNyArMTMwNiwxMyBAQCBwb2xraXRfYXV0aG9yaXR5X3Jl Z2lzdGVyX2F1dGhlbnRpY2F0aW9uX2FnZW50X3dpdGhfb3B0aW9uc19maW5pc2ggKFBvbGtpdEF1 dGhvcg0KKyAgKiBAY2FuY2VsbGFibGU6IChhbGxvdy1ub25lKTogQSAjR0NhbmNlbGxhYmxlIG9y ICVOVUxMLg0KKyAgKiBAZXJyb3I6IChhbGxvdy1ub25lKTogUmV0dXJuIGxvY2F0aW9uIGZvciBl cnJvciBvciAlTlVMTC4NCisgICoNCistICogUmVnaXN0ZXJzIGFuIGF1dGhlbnRpY2F0aW9uIGFn ZW50LiBUaGUgY2FsbGluZyB0aHJlYWQgaXMgYmxvY2tlZA0KKysgKiBSZWdpc3RlcnMgYW4gYXV0 aGVudGljYXRpb24gYWdlbnQuDQorKyAqDQorKyAqIE5vdGUgdGhhdCB0aGlzIHNob3VsZCBiZSBj YWxsZWQgYnkgdGhlIHNhbWUgZWZmZWN0aXZlIFVJRCB3aGljaCB3aWxsIGJlDQorKyAqIHRoZSBy ZWFsIFVJRCB1c2luZyB0aGUgI1BvbGtpdEFnZW50U2Vzc2lvbiBBUEkgb3Igb3RoZXJ3aXNlIGNh bGxpbmcNCisrICogcG9sa2l0X2F1dGhvcml0eV9hdXRoZW50aWNhdGlvbl9hZ2VudF9yZXNwb25z ZSgpLg0KKysgKg0KKysgKiBUaGUgY2FsbGluZyB0aHJlYWQgaXMgYmxvY2tlZA0KKyAgKiB1bnRp bCBhIHJlcGx5IGlzIHJlY2VpdmVkLiBTZWUNCisgICogcG9sa2l0X2F1dGhvcml0eV9yZWdpc3Rl cl9hdXRoZW50aWNhdGlvbl9hZ2VudF93aXRoX29wdGlvbnMoKSBmb3IgdGhlDQorICAqIGFzeW5j aHJvbm91cyB2ZXJzaW9uLg0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdl bnRsaXN0ZW5lci5jIGIvc3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50bGlzdGVuZXIuYw0KK2lu ZGV4IDBkOTc1MDEuLjEwZGJmYjkgMTAwNjQ0DQorLS0tIGEvc3JjL3BvbGtpdGFnZW50L3BvbGtp dGFnZW50bGlzdGVuZXIuYw0KKysrKyBiL3NyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudGxpc3Rl bmVyLmMNCitAQCAtMzcsMTAgKzM3LDcgQEANCisgICoNCisgICogVHlwaWNhbGx5IGF1dGhlbnRp Y2F0aW9uIGFnZW50cyB1c2UgI1BvbGtpdEFnZW50U2Vzc2lvbiB0bw0KKyAgKiBhdXRoZW50aWNh dGUgdXNlcnMgKHZpYSBwYXNzd29yZHMpIGFuZCBjb21tdW5pY2F0ZSBiYWNrIHRoZQ0KKy0gKiBh dXRoZW50aWNhdGlvbiByZXN1bHQgdG8gdGhlIFBvbGljeUtpdCBkYWVtb24uICBUaGlzIGlzIGhv d2V2ZXIgbm90DQorLSAqIHJlcXVpcmVtZW50LiBEZXBlbmRpbmcgb24gdGhlIHN5c3RlbSBhbiBh dXRoZW50aWNhdGlvbiBhZ2VudCBtYXkNCistICogdXNlIG90aGVyIG1lYW5zIChzdWNoIGFzIGEg WWVzL05vIGRpYWxvZykgdG8gb2J0YWluIHN1ZmZpY2llbnQNCistICogZXZpZGVuY2UgdGhhdCB0 aGUgdXNlciBpcyBvbmUgb2YgdGhlIHJlcXVlc3RlZCBpZGVudGl0aWVzLg0KKysgKiBhdXRoZW50 aWNhdGlvbiByZXN1bHQgdG8gdGhlIFBvbGljeUtpdCBkYWVtb24uDQorICAqDQorICAqIFRvIHJl Z2lzdGVyIGEgI1BvbGtpdEFnZW50TGlzdGVuZXIgd2l0aCB0aGUgUG9saWN5S2l0IGRhZW1vbiwg dXNlDQorICAqIHBvbGtpdF9hZ2VudF9saXN0ZW5lcl9yZWdpc3RlcigpIG9yDQorZGlmZiAtLWdp dCBhL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRhdXRob3JpdHkuYyBiL3NyYy9wb2xr aXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRhdXRob3JpdHkuYw0KK2luZGV4IGQxYjFhMjUuLjEwYjhh ZjMgMTAwNjQ0DQorLS0tIGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGF1dGhvcml0 eS5jDQorKysrIGIvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGF1dGhvcml0eS5jDQor QEAgLTM0Myw2ICszNDMsNyBAQCBwb2xraXRfYmFja2VuZF9hdXRob3JpdHlfdW5yZWdpc3Rlcl9h dXRoZW50aWNhdGlvbl9hZ2VudCAoUG9sa2l0QmFja2VuZEF1dGhvcml0eQ0KKyAgKiBwb2xraXRf YmFja2VuZF9hdXRob3JpdHlfYXV0aGVudGljYXRpb25fYWdlbnRfcmVzcG9uc2U6DQorICAqIEBh dXRob3JpdHk6IEEgI1BvbGtpdEJhY2tlbmRBdXRob3JpdHkuDQorICAqIEBjYWxsZXI6IFRoZSBz eXN0ZW0gYnVzIG5hbWUgdGhhdCBpbml0aWF0ZWQgdGhlIHF1ZXJ5Lg0KKysgKiBAdWlkOiBUaGUg cmVhbCBVSUQgb2YgdGhlIHJlZ2lzdGVyZWQgYWdlbnQsIG9yICh1aWRfdCktMSBpZiB1bmtub3du Lg0KKyAgKiBAY29va2llOiBUaGUgY29va2llIHBhc3NlZCB0byB0aGUgYXV0aGVudGljYXRpb24g YWdlbnQgZnJvbSB0aGUgYXV0aG9yaXR5Lg0KKyAgKiBAaWRlbnRpdHk6IFRoZSBpZGVudGl0eSB0 aGF0IHdhcyBhdXRoZW50aWNhdGVkLg0KKyAgKiBAZXJyb3I6IFJldHVybiBsb2NhdGlvbiBmb3Ig ZXJyb3Igb3IgJU5VTEwuDQpkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMv cGtleGVjLVdvcmstYXJvdW5kLXN5c3RlbWQtaW5qZWN0aW5nLWJyb2tlbi1YREdfUlVOVC5wYXRj aCBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL3BrZXhlYy1Xb3JrLWFyb3VuZC1zeXN0ZW1k LWluamVjdGluZy1icm9rZW4tWERHX1JVTlQucGF0Y2gNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQpp bmRleCAwMDAwMDAwMDAuLmU4ZTliNmIxZA0KLS0tIC9kZXYvbnVsbA0KKysrIGIvcGF0Y2hlcy9w b2xraXQtMC4xMDUvMC4xMTMvcGtleGVjLVdvcmstYXJvdW5kLXN5c3RlbWQtaW5qZWN0aW5nLWJy b2tlbi1YREdfUlVOVC5wYXRjaA0KQEAgLTAsMCArMSw3NiBAQA0KK0Zyb206IENvbGluIFdhbHRl cnMgPHdhbHRlcnNAdmVyYnVtLm9yZz4NCitEYXRlOiBUaHUsIDIxIE5vdiAyMDEzIDE3OjM5OjM3 IC0wNTAwDQorU3ViamVjdDogcGtleGVjOiBXb3JrIGFyb3VuZCBzeXN0ZW1kIGluamVjdGluZyBi cm9rZW4gWERHX1JVTlRJTUVfRElSDQorDQorVGhpcyB3b3JrYXJvdW5kIGlzbid0IHRvbyBtdWNo IGNvZGUsIGFuZCBpdCdzIG9mdGVuIGJldHRlciB0byBmaXggYnVncw0KK2luIHR3byBwbGFjZXMg YW55d2F5cy4NCisNCitGb3IgbW9yZSBpbmZvcm1hdGlvbjoNCisNCitTZWUgaHR0cHM6Ly9idWd6 aWxsYS5yZWRoYXQuY29tL3Nob3dfYnVnLmNnaT9pZD03NTM4ODINCitTZWUgaHR0cDovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9hcmNoaXZlcy9zeXN0ZW1kLWRldmVsLzIwMTMtTm92ZW1iZXIvMDE0 MzcwLmh0bWwNCisNCitPcmlnaW46IHVwc3RyZWFtLCAwLjExMywgY29tbWl0Ojg2MzVmZmMxNmFl ZmY2YTA3ZDY3NWY4NjFmZTBkZWEwM2VhODFkN2UNCistLS0NCisgc3JjL3Byb2dyYW1zL3BrZXhl Yy5jIHwgMzMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tDQorIDEgZmlsZSBjaGFu Z2VkLCAzMCBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQ0KKw0KK2RpZmYgLS1naXQgYS9z cmMvcHJvZ3JhbXMvcGtleGVjLmMgYi9zcmMvcHJvZ3JhbXMvcGtleGVjLmMNCitpbmRleCA5YTA1 NzBhLi41ZTk5MDQ0IDEwMDY0NA0KKy0tLSBhL3NyYy9wcm9ncmFtcy9wa2V4ZWMuYw0KKysrKyBi L3NyYy9wcm9ncmFtcy9wa2V4ZWMuYw0KK0BAIC0xMzksOCArMTM5LDIyIEBAIHBhbV9jb252ZXJz YXRpb25fZnVuY3Rpb24gKGludCBuLA0KKyAgIHJldHVybiBQQU1fQ09OVl9FUlI7DQorIH0NCisg DQorKy8qIEEgd29yayBhcm91bmQgZm9yOg0KKysgKiBodHRwczovL2J1Z3ppbGxhLnJlZGhhdC5j b20vc2hvd19idWcuY2dpP2lkPTc1Mzg4Mg0KKysgKi8NCisrc3RhdGljIGdib29sZWFuDQorK3hk Z19ydW50aW1lX2Rpcl9pc19vd25lZF9ieSAoY29uc3QgY2hhciAqcGF0aCwNCisrCQkJICAgICB1 aWRfdCAgICAgICB0YXJnZXRfdWlkKQ0KKyt7DQorKyAgc3RydWN0IHN0YXQgc3RidWY7DQorKw0K KysgIHJldHVybiBzdGF0IChwYXRoLCAmc3RidWYpID09IDAgJiYNCisrICAgIHN0YnVmLnN0X3Vp ZCA9PSB0YXJnZXRfdWlkOw0KKyt9DQorKw0KKyBzdGF0aWMgZ2Jvb2xlYW4NCistb3Blbl9zZXNz aW9uIChjb25zdCBnY2hhciAqdXNlcl90b19hdXRoKQ0KKytvcGVuX3Nlc3Npb24gKGNvbnN0IGdj aGFyICp1c2VyX3RvX2F1dGgsDQorKwkgICAgICB1aWRfdCAgICAgICAgdGFyZ2V0X3VpZCkNCisg ew0KKyAgIGdib29sZWFuIHJldDsNCisgICBnaW50IHJjOw0KK0BAIC0xODIsNyArMTk2LDE5IEBA IG9wZW5fc2Vzc2lvbiAoY29uc3QgZ2NoYXIgKnVzZXJfdG9fYXV0aCkNCisgICAgIHsNCisgICAg ICAgZ3VpbnQgbjsNCisgICAgICAgZm9yIChuID0gMDsgZW52bGlzdFtuXTsgbisrKQ0KKy0gICAg ICAgIHB1dGVudiAoZW52bGlzdFtuXSk7DQorKwl7DQorKwkgIGNvbnN0IGNoYXIgKmVudml0ZW0g PSBlbnZsaXN0W25dOw0KKysJICANCisrCSAgaWYgKGdfc3RyX2hhc19wcmVmaXggKGVudml0ZW0s ICJYREdfUlVOVElNRV9ESVI9IikpDQorKwkgICAgew0KKysJICAgICAgY29uc3QgY2hhciAqZXEg PSBzdHJjaHIgKGVudml0ZW0sICc9Jyk7DQorKwkgICAgICBnX2Fzc2VydCAoZXEpOw0KKysJICAg ICAgaWYgKCF4ZGdfcnVudGltZV9kaXJfaXNfb3duZWRfYnkgKGVxICsgMSwgdGFyZ2V0X3VpZCkp DQorKwkJY29udGludWU7DQorKwkgICAgfQ0KKysNCisrCSAgcHV0ZW52IChlbnZsaXN0W25dKTsN CisrCX0NCisgICAgICAgZnJlZSAoZW52bGlzdCk7DQorICAgICB9DQorIA0KK0BAIC04OTIsNyAr OTE4LDggQEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkNCisgICAgKiBBcyBldmlkZW50 IGFib3ZlLCBuZWl0aGVyIHN1KDEpIChhbmQsIGZvciB0aGF0IG1hdHRlciwgbm9yIHN1ZG8oOCkp IGRvZXMgdGhpcy4NCisgICAgKi8NCisgI2lmZGVmIFBPTEtJVF9BVVRIRldfUEFNDQorLSAgaWYg KCFvcGVuX3Nlc3Npb24gKHB3LT5wd19uYW1lKSkNCisrICBpZiAoIW9wZW5fc2Vzc2lvbiAocHct PnB3X25hbWUsDQorKwkJICAgICBwdy0+cHdfdWlkKSkNCisgICAgIHsNCisgICAgICAgZ290byBv dXQ7DQorICAgICB9DQpkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvcG9s a2l0ZC1GaXgtcHJvYmxlbS13aXRoLXJlbW92aW5nLW5vbi1leGlzdGVudC1zb3VyYy5wYXRjaCBi L3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL3BvbGtpdGQtRml4LXByb2JsZW0td2l0aC1yZW1v dmluZy1ub24tZXhpc3RlbnQtc291cmMucGF0Y2gNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRl eCAwMDAwMDAwMDAuLjE3MzcwMjBmYw0KLS0tIC9kZXYvbnVsbA0KKysrIGIvcGF0Y2hlcy9wb2xr aXQtMC4xMDUvMC4xMTMvcG9sa2l0ZC1GaXgtcHJvYmxlbS13aXRoLXJlbW92aW5nLW5vbi1leGlz dGVudC1zb3VyYy5wYXRjaA0KQEAgLTAsMCArMSwyMyBAQA0KK0Zyb206IEx1a2FzeiBTa2Fsc2tp IDxsLnNrYWxza2lAc2Ftc3VuZy5jb20+DQorRGF0ZTogVHVlLCAyMiBBcHIgMjAxNCAxMToxMToy MCArMDIwMA0KK1N1YmplY3Q6IHBvbGtpdGQ6IEZpeCBwcm9ibGVtIHdpdGggcmVtb3Zpbmcgbm9u LWV4aXN0ZW50IHNvdXJjZQ0KKw0KK0J1ZzogaHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9z aG93X2J1Zy5jZ2k/aWQ9NzcxNjcNCitBcHBsaWVkLXVwc3RyZWFtOiAwLjExMywgY29tbWl0OjNj YTRlMDBjN2UwMDNlYTgwYWE5NmI0OTliYzdjZDgzMjQ2ZDcxMDgNCistLS0NCisgc3JjL3BvbGtp dGQvbWFpbi5jIHwgMiArLQ0KKyAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVs ZXRpb24oLSkNCisNCitkaWZmIC0tZ2l0IGEvc3JjL3BvbGtpdGQvbWFpbi5jIGIvc3JjL3BvbGtp dGQvbWFpbi5jDQoraW5kZXggYjIxNzIzZi4uZjE4ZmI5MSAxMDA2NDQNCistLS0gYS9zcmMvcG9s a2l0ZC9tYWluLmMNCisrKysgYi9zcmMvcG9sa2l0ZC9tYWluLmMNCitAQCAtOTMsNyArOTMsNyBA QCBvbl9zaWdpbnQgKGdwb2ludGVyIHVzZXJfZGF0YSkNCisgew0KKyAgIGdfcHJpbnQgKCJIYW5k bGluZyBTSUdJTlRcbiIpOw0KKyAgIGdfbWFpbl9sb29wX3F1aXQgKGxvb3ApOw0KKy0gIHJldHVy biBGQUxTRTsNCisrICByZXR1cm4gVFJVRTsNCisgfQ0KKyANCisgaW50DQpkaWZmIC0tZ2l0IGEv cGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvc2Vzc2lvbm1vbml0b3Itc3lzdGVtZC1EZWR1cGxp Y2F0ZS1jb2RlLXBhdGhzLnBhdGNoIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvc2Vzc2lv bm1vbml0b3Itc3lzdGVtZC1EZWR1cGxpY2F0ZS1jb2RlLXBhdGhzLnBhdGNoDQpuZXcgZmlsZSBt b2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi5lN2QwYTRiN2YNCi0tLSAvZGV2L251bGwNCisr KyBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTEzL3Nlc3Npb25tb25pdG9yLXN5c3RlbWQtRGVk dXBsaWNhdGUtY29kZS1wYXRocy5wYXRjaA0KQEAgLTAsMCArMSwxMDQgQEANCitGcm9tOiBDb2xp biBXYWx0ZXJzIDx3YWx0ZXJzQHZlcmJ1bS5vcmc+DQorRGF0ZTogVGh1LCA3IE5vdiAyMDEzIDE1 OjU3OjUwIC0wNTAwDQorU3ViamVjdDogc2Vzc2lvbm1vbml0b3Itc3lzdGVtZDogRGVkdXBsaWNh dGUgY29kZSBwYXRocw0KKw0KK1dlIGhhZCB0aGUgY29kZSB0byBnbyBmcm9tIHBpZCAtPiBzZXNz aW9uIGR1cGxpY2F0ZWQuICBJZiB3ZSBoYXZlIGENCitQb2xraXRTeXN0ZW1CdXNOYW1lLCBjb252 ZXJ0IGl0IHRvIGEgUG9sa2l0VW5peFByb2Nlc3MuDQorVGhlbiB3ZSBjYW4gZG8gUG9sa2l0VW5p eFByb2Nlc3MgLT4gcGlkIC0+IHNlc3Npb24gaW4gb25lIHBsYWNlLg0KKw0KK1RoaXMgaXMganVz dCBhIGNvZGUgY2xlYW51cC4NCisNCitCdWc6IGh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcv c2hvd19idWcuY2dpP2lkPTY5NTM4DQorT3JpZ2luOiB1cHN0cmVhbSwgMC4xMTMsIGNvbW1pdDoy NmQwYzA1NzgyMTFmYjk2ZmM4ZmU3NTU3MmFhMTFhZDZlY2JmOWI4DQorLS0tDQorIC4uLi9wb2xr aXRiYWNrZW5kc2Vzc2lvbm1vbml0b3Itc3lzdGVtZC5jICAgICAgICAgIHwgNjMgKysrKysrKyst LS0tLS0tLS0tLS0tLQ0KKyAxIGZpbGUgY2hhbmdlZCwgMjIgaW5zZXJ0aW9ucygrKSwgNDEgZGVs ZXRpb25zKC0pDQorDQorZGlmZiAtLWdpdCBhL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tl bmRzZXNzaW9ubW9uaXRvci1zeXN0ZW1kLmMgYi9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNr ZW5kc2Vzc2lvbm1vbml0b3Itc3lzdGVtZC5jDQoraW5kZXggMDE4NTMxMC4uNzU2YjcyOCAxMDA2 NDQNCistLS0gYS9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kc2Vzc2lvbm1vbml0b3It c3lzdGVtZC5jDQorKysrIGIvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZHNlc3Npb25t b25pdG9yLXN5c3RlbWQuYw0KK0BAIC0zMTMsNjEgKzMxMyw0MiBAQCBwb2xraXRfYmFja2VuZF9z ZXNzaW9uX21vbml0b3JfZ2V0X3Nlc3Npb25fZm9yX3N1YmplY3QgKFBvbGtpdEJhY2tlbmRTZXNz aW9uTW9uaQ0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFBvbGtpdFN1YmplY3QgICAgICAgICAgICAgICAqc3ViamVjdCwNCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHRXJyb3Ig ICAgICAgICAgICAgICAgICAgICAqKmVycm9yKQ0KKyB7DQorLSAgUG9sa2l0U3ViamVjdCAqc2Vz c2lvbjsNCistDQorLSAgc2Vzc2lvbiA9IE5VTEw7DQorKyAgUG9sa2l0VW5peFByb2Nlc3MgKnRt cF9wcm9jZXNzID0gTlVMTDsNCisrICBQb2xraXRVbml4UHJvY2VzcyAqcHJvY2VzcyA9IE5VTEw7 DQorKyAgUG9sa2l0U3ViamVjdCAqc2Vzc2lvbiA9IE5VTEw7DQorKyAgY2hhciAqc2Vzc2lvbl9p ZCA9IE5VTEw7DQorKyAgcGlkX3QgcGlkOw0KKyANCisgICBpZiAoUE9MS0lUX0lTX1VOSVhfUFJP Q0VTUyAoc3ViamVjdCkpDQorLSAgICB7DQorLSAgICAgIGdjaGFyICpzZXNzaW9uX2lkOw0KKy0g ICAgICBwaWRfdCBwaWQ7DQorLQ0KKy0gICAgICBwaWQgPSBwb2xraXRfdW5peF9wcm9jZXNzX2dl dF9waWQgKFBPTEtJVF9VTklYX1BST0NFU1MgKHN1YmplY3QpKTsNCistICAgICAgaWYgKHNkX3Bp ZF9nZXRfc2Vzc2lvbiAocGlkLCAmc2Vzc2lvbl9pZCkgPCAwKQ0KKy0gICAgICAgIGdvdG8gb3V0 Ow0KKy0NCistICAgICAgc2Vzc2lvbiA9IHBvbGtpdF91bml4X3Nlc3Npb25fbmV3IChzZXNzaW9u X2lkKTsNCistICAgICAgZnJlZSAoc2Vzc2lvbl9pZCk7DQorLSAgICB9DQorKyAgICBwcm9jZXNz ID0gUE9MS0lUX1VOSVhfUFJPQ0VTUyAoc3ViamVjdCk7IC8qIFdlIGFscmVhZHkgaGF2ZSBhIHBy b2Nlc3MgKi8NCisgICBlbHNlIGlmIChQT0xLSVRfSVNfU1lTVEVNX0JVU19OQU1FIChzdWJqZWN0 KSkNCisgICAgIHsNCistICAgICAgZ3VpbnQzMiBwaWQ7DQorLSAgICAgIGdjaGFyICpzZXNzaW9u X2lkOw0KKy0gICAgICBHVmFyaWFudCAqcmVzdWx0Ow0KKy0NCistICAgICAgcmVzdWx0ID0gZ19k YnVzX2Nvbm5lY3Rpb25fY2FsbF9zeW5jIChtb25pdG9yLT5zeXN0ZW1fYnVzLA0KKy0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJvcmcuZnJlZWRlc2t0b3AuREJ1 cyIsDQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIi9vcmcv ZnJlZWRlc2t0b3AvREJ1cyIsDQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIm9yZy5mcmVlZGVza3RvcC5EQnVzIiwNCistICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAiR2V0Q29ubmVjdGlvblVuaXhQcm9jZXNzSUQiLA0KKy0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdfdmFyaWFudF9uZXcg KCIocykiLCBwb2xraXRfc3lzdGVtX2J1c19uYW1lX2dldF9uYW1lIChQT0xLSVRfU1lTVEVNX0JV U19OQU1FIChzdWJqZWN0KSkpLA0KKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIEdfVkFSSUFOVF9UWVBFICgiKHUpIiksDQorLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgR19EQlVTX0NBTExfRkxBR1NfTk9ORSwNCistICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtMSwgLyogdGltZW91dF9tc2Vj ICovDQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwg LyogR0NhbmNlbGxhYmxlICovDQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgZXJyb3IpOw0KKy0gICAgICBpZiAocmVzdWx0ID09IE5VTEwpDQorLSAgICAgICAg Z290byBvdXQ7DQorLSAgICAgIGdfdmFyaWFudF9nZXQgKHJlc3VsdCwgIih1KSIsICZwaWQpOw0K Ky0gICAgICBnX3ZhcmlhbnRfdW5yZWYgKHJlc3VsdCk7DQorLQ0KKy0gICAgICBpZiAoc2RfcGlk X2dldF9zZXNzaW9uIChwaWQsICZzZXNzaW9uX2lkKSA8IDApDQorLSAgICAgICAgZ290byBvdXQ7 DQorLQ0KKy0gICAgICBzZXNzaW9uID0gcG9sa2l0X3VuaXhfc2Vzc2lvbl9uZXcgKHNlc3Npb25f aWQpOw0KKy0gICAgICBmcmVlIChzZXNzaW9uX2lkKTsNCisrICAgICAgLyogQ29udmVydCBidXMg bmFtZSB0byBwcm9jZXNzICovDQorKyAgICAgIHRtcF9wcm9jZXNzID0gKFBvbGtpdFVuaXhQcm9j ZXNzKilwb2xraXRfc3lzdGVtX2J1c19uYW1lX2dldF9wcm9jZXNzX3N5bmMgKFBPTEtJVF9TWVNU RU1fQlVTX05BTUUgKHN1YmplY3QpLCBOVUxMLCBlcnJvcik7DQorKyAgICAgIGlmICghdG1wX3By b2Nlc3MpDQorKwlnb3RvIG91dDsNCisrICAgICAgcHJvY2VzcyA9IHRtcF9wcm9jZXNzOw0KKyAg ICAgfQ0KKyAgIGVsc2UNCisgICAgIHsNCisgICAgICAgZ19zZXRfZXJyb3IgKGVycm9yLA0KKyAg ICAgICAgICAgICAgICAgICAgUE9MS0lUX0VSUk9SLA0KKyAgICAgICAgICAgICAgICAgICAgUE9M S0lUX0VSUk9SX05PVF9TVVBQT1JURUQsDQorLSAgICAgICAgICAgICAgICAgICAiQ2Fubm90IGdl dCB1c2VyIGZvciBzdWJqZWN0IG9mIHR5cGUgJXMiLA0KKysgICAgICAgICAgICAgICAgICAgIkNh bm5vdCBnZXQgc2Vzc2lvbiBmb3Igc3ViamVjdCBvZiB0eXBlICVzIiwNCisgICAgICAgICAgICAg ICAgICAgIGdfdHlwZV9uYW1lIChHX1RZUEVfRlJPTV9JTlNUQU5DRSAoc3ViamVjdCkpKTsNCisg ICAgIH0NCisgDQorLSBvdXQ6DQorKyAgLyogTm93IGRvIHByb2Nlc3MgLT4gcGlkIC0+IHNlc3Np b24gKi8NCisrICBnX2Fzc2VydCAocHJvY2VzcyAhPSBOVUxMKTsNCisrICBwaWQgPSBwb2xraXRf dW5peF9wcm9jZXNzX2dldF9waWQgKHByb2Nlc3MpOw0KKyANCisrICBpZiAoc2RfcGlkX2dldF9z ZXNzaW9uIChwaWQsICZzZXNzaW9uX2lkKSA8IDApDQorKyAgICBnb3RvIG91dDsNCisrICANCisr ICBzZXNzaW9uID0gcG9sa2l0X3VuaXhfc2Vzc2lvbl9uZXcgKHNlc3Npb25faWQpOw0KKysgIGZy ZWUgKHNlc3Npb25faWQpOw0KKysgb3V0Og0KKysgIGlmICh0bXBfcHJvY2VzcykgZ19vYmplY3Rf dW5yZWYgKHRtcF9wcm9jZXNzKTsNCisgICByZXR1cm4gc2Vzc2lvbjsNCisgfQ0KKyANCmRpZmYg LS1naXQgYS9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9zZXNzaW9ubW9uaXRvci1zeXN0ZW1k LVVzZS1zZF91aWRfZ2V0X3N0YXRlLXRvLWNoZWNrLnBhdGNoIGIvcGF0Y2hlcy9wb2xraXQtMC4x MDUvMC4xMTMvc2Vzc2lvbm1vbml0b3Itc3lzdGVtZC1Vc2Utc2RfdWlkX2dldF9zdGF0ZS10by1j aGVjay5wYXRjaA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMC4uN2MwY2E0 YmI0DQotLS0gL2Rldi9udWxsDQorKysgYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9zZXNz aW9ubW9uaXRvci1zeXN0ZW1kLVVzZS1zZF91aWRfZ2V0X3N0YXRlLXRvLWNoZWNrLnBhdGNoDQpA QCAtMCwwICsxLDczIEBADQorRnJvbTogUGhpbGlwIFdpdGhuYWxsIDxwaGlsaXAud2l0aG5hbGxA Y29sbGFib3JhLmNvLnVrPg0KK0RhdGU6IFR1ZSwgMiBKdW4gMjAxNSAxNjoxOTo1MSArMDEwMA0K K1N1YmplY3Q6IHNlc3Npb25tb25pdG9yLXN5c3RlbWQ6IFVzZSBzZF91aWRfZ2V0X3N0YXRlKCkg dG8gY2hlY2sgc2Vzc2lvbg0KKyBhY3Rpdml0eQ0KK01JTUUtVmVyc2lvbjogMS4wDQorQ29udGVu dC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PSJ1dGYtOCINCitDb250ZW50LVRyYW5zZmVyLUVu Y29kaW5nOiA4Yml0DQorDQorSW5zdGVhZCBvZiB1c2luZyBzZF9waWRfZ2V0X3Nlc3Npb24oKSB0 aGVuIHNkX3Nlc3Npb25faXNfYWN0aXZlKCkgdG8NCitkZXRlcm1pbmUgd2hldGhlciB0aGUgdXNl ciBpcyBhY3RpdmUsIHVzZSBzZF91aWRfZ2V0X3N0YXRlKCkgZGlyZWN0bHkuDQorVGhpcyBnZXRz IHRoZSBtYXhpbXVtIG9mIHRoZSBzdGF0ZXMgb2YgYWxsIHRoZSB1c2Vy4oCZcyBzZXNzaW9ucywg cmF0aGVyDQordGhhbiB0aGUgc3RhdGUgb2YgdGhlIHNlc3Npb24gY29udGFpbmluZyB0aGUgc3Vi amVjdCBwcm9jZXNzLiBTaW5jZSB0aGUNCit1c2VyIGlzIHRoZSBzZWN1cml0eSBib3VuZGFyeSwg dGhpcyBpcyBmaW5lLg0KKw0KK1RoaXMgY2hhbmdlIGlzIG5lY2Vzc2FyeSBmb3IgYHN5c3RlbWQg LS11c2VyYCBzZXNzaW9ucywgd2hlcmUgbW9zdCB1c2VyDQorY29kZSB3aWxsIGJlIGZvcmtlZCBv ZmYgdXNlckAuc2VydmljZSwgcmF0aGVyIHRoYW4gcnVubmluZyBpbnNpZGUgdGhlDQorbG9naW5k IHNlc3Npb24gKHdoZXRoZXIgdGhhdCBiZSBhIGZvcmVncm91bmQvYWN0aXZlIG9yIGJhY2tncm91 bmQvb25saW5lDQorc2Vzc2lvbikuDQorDQorUG9saWN5LXdpc2UsIHRoZSBjaGFuZ2UgaXMgZnJv bSBjaGVja2luZyB3aGV0aGVyIHRoZSBzdWJqZWN0IHByb2Nlc3MgaXMNCitpbiBhbiBhY3RpdmUg c2Vzc2lvbjsgdG8gY2hlY2tpbmcgd2hldGhlciB0aGUgc3ViamVjdCBwcm9jZXNzIGlzIG93bmVk DQorYnkgYSB1c2VyIHdpdGggYXQgbGVhc3Qgb25lIGFjdGl2ZSBzZXNzaW9uLg0KKw0KK0J1Zzog aHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzYzNTgNCitBcHBs aWVkLXVwc3RyZWFtOiAwLjExMywgY29tbWl0OmEyOTY1M2ZmYTk5ZTA4MDllMTVhYTM0YWZjZDdi MmRmODU5Mzg3MWMNCitCdWctRGViaWFuOiBodHRwczovL2J1Z3MuZGViaWFuLm9yZy83Nzk5ODgN CistLS0NCisgLi4uL3BvbGtpdGJhY2tlbmRzZXNzaW9ubW9uaXRvci1zeXN0ZW1kLmMgICAgICAg ICAgfCAzMyArKysrKysrKysrKysrKysrKysrKystDQorIDEgZmlsZSBjaGFuZ2VkLCAzMiBpbnNl cnRpb25zKCspLCAxIGRlbGV0aW9uKC0pDQorDQorZGlmZiAtLWdpdCBhL3NyYy9wb2xraXRiYWNr ZW5kL3BvbGtpdGJhY2tlbmRzZXNzaW9ubW9uaXRvci1zeXN0ZW1kLmMgYi9zcmMvcG9sa2l0YmFj a2VuZC9wb2xraXRiYWNrZW5kc2Vzc2lvbm1vbml0b3Itc3lzdGVtZC5jDQoraW5kZXggZWJkMDVj ZS4uNmJkNTE3YSAxMDA2NDQNCistLS0gYS9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5k c2Vzc2lvbm1vbml0b3Itc3lzdGVtZC5jDQorKysrIGIvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0 YmFja2VuZHNlc3Npb25tb25pdG9yLXN5c3RlbWQuYw0KK0BAIC0zOTEsNiArMzkxLDM3IEBAIGdi b29sZWFuDQorIHBvbGtpdF9iYWNrZW5kX3Nlc3Npb25fbW9uaXRvcl9pc19zZXNzaW9uX2FjdGl2 ZSAoUG9sa2l0QmFja2VuZFNlc3Npb25Nb25pdG9yICptb25pdG9yLA0KKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBvbGtpdFN1YmplY3QgICAgICAg ICAgICAgICAqc2Vzc2lvbikNCisgew0KKy0gIHJldHVybiBzZF9zZXNzaW9uX2lzX2FjdGl2ZSAo cG9sa2l0X3VuaXhfc2Vzc2lvbl9nZXRfc2Vzc2lvbl9pZCAoUE9MS0lUX1VOSVhfU0VTU0lPTiAo c2Vzc2lvbikpKTsNCisrICBjb25zdCBjaGFyICpzZXNzaW9uX2lkOw0KKysgIGNoYXIgKnN0YXRl Ow0KKysgIHVpZF90IHVpZDsNCisrICBnYm9vbGVhbiBpc19hY3RpdmUgPSBGQUxTRTsNCisrDQor KyAgc2Vzc2lvbl9pZCA9IHBvbGtpdF91bml4X3Nlc3Npb25fZ2V0X3Nlc3Npb25faWQgKFBPTEtJ VF9VTklYX1NFU1NJT04gKHNlc3Npb24pKTsNCisrDQorKyAgZ19kZWJ1ZyAoIkNoZWNraW5nIHdo ZXRoZXIgc2Vzc2lvbiAlcyBpcyBhY3RpdmUuIiwgc2Vzc2lvbl9pZCk7DQorKw0KKysgIC8qIENo ZWNrIHdoZXRoZXIgKmFueSogb2YgdGhlIHVzZXIncyBjdXJyZW50IHNlc3Npb25zIGFyZSBhY3Rp dmUuICovDQorKyAgaWYgKHNkX3Nlc3Npb25fZ2V0X3VpZCAoc2Vzc2lvbl9pZCwgJnVpZCkgPCAw KQ0KKysgICAgZ290byBmYWxsYmFjazsNCisrDQorKyAgZ19kZWJ1ZyAoIlNlc3Npb24gJXMgaGFz IFVJRCAldS4iLCBzZXNzaW9uX2lkLCB1aWQpOw0KKysNCisrICBpZiAoc2RfdWlkX2dldF9zdGF0 ZSAodWlkLCAmc3RhdGUpIDwgMCkNCisrICAgIGdvdG8gZmFsbGJhY2s7DQorKw0KKysgIGdfZGVi dWcgKCJVSUQgJXUgaGFzIHN0YXRlICVzLiIsIHVpZCwgc3RhdGUpOw0KKysNCisrICBpc19hY3Rp dmUgPSAoZ19zdHJjbXAwIChzdGF0ZSwgImFjdGl2ZSIpID09IDApOw0KKysgIGZyZWUgKHN0YXRl KTsNCisrDQorKyAgcmV0dXJuIGlzX2FjdGl2ZTsNCisrDQorK2ZhbGxiYWNrOg0KKysgIC8qIEZh bGwgYmFjayB0byBjaGVja2luZyB0aGUgc2Vzc2lvbi4gVGhpcyBpcyBub3QgaWRlYWwsIHNpbmNl IHRoZSB1c2VyDQorKyAgICogbWlnaHQgaGF2ZSBtdWx0aXBsZSBzZXNzaW9ucywgYW5kIHdlIGNh bm5vdCBndWFyYW50ZWUgdG8gaGF2ZSBjaG9zZW4NCisrICAgKiB0aGUgYWN0aXZlIG9uZS4NCisr ICAgKg0KKysgICAqIFNlZTogaHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9zaG93X2J1Zy5j Z2k/aWQ9NzYzNTguICovDQorKyAgcmV0dXJuIHNkX3Nlc3Npb25faXNfYWN0aXZlIChzZXNzaW9u X2lkKTsNCisgfQ0KKyANCmRpZmYgLS1naXQgYS9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExMy9z ZXNzaW9ubW9uaXRvci1zeXN0ZW1kLXByZXBhcmUtZm9yLUQtQnVzLXVzZXItYnVzLW1vLnBhdGNo IGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTMvc2Vzc2lvbm1vbml0b3Itc3lzdGVtZC1wcmVw YXJlLWZvci1ELUJ1cy11c2VyLWJ1cy1tby5wYXRjaA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmlu ZGV4IDAwMDAwMDAwMC4uNmIwOWNlNzlhDQotLS0gL2Rldi9udWxsDQorKysgYi9wYXRjaGVzL3Bv bGtpdC0wLjEwNS8wLjExMy9zZXNzaW9ubW9uaXRvci1zeXN0ZW1kLXByZXBhcmUtZm9yLUQtQnVz LXVzZXItYnVzLW1vLnBhdGNoDQpAQCAtMCwwICsxLDg5IEBADQorRnJvbTogS2F5IFNpZXZlcnMg PGtheUB2cmZ5Lm9yZz4NCitEYXRlOiBNb24sIDE5IE1heSAyMDE0IDEwOjE5OjQ5ICswOTAwDQor U3ViamVjdDogc2Vzc2lvbm1vbml0b3Itc3lzdGVtZDogcHJlcGFyZSBmb3IgRC1CdXMgInVzZXIg YnVzIiBtb2RlbA0KKw0KK0luIHRoZSBELUJ1cyAidXNlciBidXMiIG1vZGVsLCBhbGwgc2Vzc2lv bnMgb2YgYSB1c2VyIHNoYXJlIHRoZSBzYW1lDQorRC1CdXMgaW5zdGFuY2UsIGEgcG9sa2l0IHJl cXVlc3RpbmcgcHJvY2VzcyBtaWdodCBsaXZlIG91dHNpZGUgdGhlDQorbG9naW4gc2Vzc2lvbiB3 aGljaCByZWdpc3RlcmVkIHRoZSB1c2VyJ3MgcG9sa2l0IGFnZW50Lg0KKw0KK0luIGNhc2UgYSBw b2xraXQgcmVxdWVzdGluZyBwcm9jZXNzIGlzIG5vdCBwYXJ0IG9mIHRoZSB1c2VyJ3MgbG9naW4N CitzZXNzaW9uLCB3ZSBhc2sgc3lzdGVtZC1sb2dpbmQgZm9yIHRoZSB1c2VyJ3MgImRpc3BsYXki IHNlc3Npb24NCitpbnN0ZWFkLg0KKw0KK0J1ZzogaHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9y Zy9zaG93X2J1Zy5jZ2k/aWQ9Nzg5MDUNCitCdWctRGViaWFuOiBodHRwczovL2J1Z3MuZGViaWFu Lm9yZy83Nzk5ODgNCitBcHBsaWVkLXVwc3RyZWFtOiAwLjExMywgY29tbWl0OmE2OGY1ZGZkNzY2 Mjc2N2I3Yjk4MjIwOTBiNzBiYzViZDE0NWM1MGMNCitbc21jdjogYmFja3BvcnQgY29uZmlndXJl LmFjIGNoYW5nZXM7IGZhaWwgd2l0aCAjZXJyb3IgaWYgdGhlIHJlcXVpcmVkDQorQVBJIGlzIG5v dCBmb3VuZF0NCistLS0NCisgY29uZmlndXJlLmFjICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAgNCArKysNCisgLi4uL3BvbGtpdGJhY2tlbmRzZXNzaW9ubW9uaXRvci1z eXN0ZW1kLmMgICAgICAgICAgfCAyOSArKysrKysrKysrKysrKysrKystLS0tDQorIDIgZmlsZXMg Y2hhbmdlZCwgMjggaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkNCisNCitkaWZmIC0tZ2l0 IGEvY29uZmlndXJlLmFjIGIvY29uZmlndXJlLmFjDQoraW5kZXggZjRhMGM0MS4uYWEyNzYwZiAx MDA2NDQNCistLS0gYS9jb25maWd1cmUuYWMNCisrKysgYi9jb25maWd1cmUuYWMNCitAQCAtMTY1 LDYgKzE2NSwxMCBAQCBpZiB0ZXN0ICIkZW5hYmxlX3N5c3RlbWQiICE9ICJubyI7IHRoZW4NCisg ICAgICAgICAgICAgICAgICAgICBoYXZlX3N5c3RlbWQ9bm8pDQorICAgaWYgdGVzdCAiJGhhdmVf c3lzdGVtZCIgPSAieWVzIjsgdGhlbg0KKyAgICAgU0VTU0lPTl9UUkFDS0lORz1zeXN0ZW1kDQor KyAgICBzYXZlX0xJQlM9JExJQlMNCisrICAgIExJQlM9JFNZU1RFTURfTElCUw0KKysgICAgQUNf Q0hFQ0tfRlVOQ1Moc2RfdWlkX2dldF9kaXNwbGF5KQ0KKysgICAgTElCUz0kc2F2ZV9MSUJTDQor ICAgZWxzZQ0KKyAgICAgaWYgdGVzdCAiJGVuYWJsZV9zeXN0ZW1kIiA9ICJ5ZXMiOyB0aGVuDQor ICAgICAgIEFDX01TR19FUlJPUihbc3lzdGVtZCBzdXBwb3J0IHJlcXVlc3RlZCBidXQgbGlic3lz dGVtZC1sb2dpbjEgbGlicmFyeSBub3QgZm91bmRdKQ0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0 YmFja2VuZC9wb2xraXRiYWNrZW5kc2Vzc2lvbm1vbml0b3Itc3lzdGVtZC5jIGIvc3JjL3BvbGtp dGJhY2tlbmQvcG9sa2l0YmFja2VuZHNlc3Npb25tb25pdG9yLXN5c3RlbWQuYw0KK2luZGV4IDc1 NmI3MjguLmViZDA1Y2UgMTAwNjQ0DQorLS0tIGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFj a2VuZHNlc3Npb25tb25pdG9yLXN5c3RlbWQuYw0KKysrKyBiL3NyYy9wb2xraXRiYWNrZW5kL3Bv bGtpdGJhY2tlbmRzZXNzaW9ubW9uaXRvci1zeXN0ZW1kLmMNCitAQCAtMzE4LDYgKzMxOCw5IEBA IHBvbGtpdF9iYWNrZW5kX3Nlc3Npb25fbW9uaXRvcl9nZXRfc2Vzc2lvbl9mb3Jfc3ViamVjdCAo UG9sa2l0QmFja2VuZFNlc3Npb25Nb25pDQorICAgUG9sa2l0U3ViamVjdCAqc2Vzc2lvbiA9IE5V TEw7DQorICAgY2hhciAqc2Vzc2lvbl9pZCA9IE5VTEw7DQorICAgcGlkX3QgcGlkOw0KKysjaWYg SEFWRV9TRF9VSURfR0VUX0RJU1BMQVkNCisrICB1aWRfdCB1aWQ7DQorKyNlbmRpZg0KKyANCisg ICBpZiAoUE9MS0lUX0lTX1VOSVhfUFJPQ0VTUyAoc3ViamVjdCkpDQorICAgICBwcm9jZXNzID0g UE9MS0lUX1VOSVhfUFJPQ0VTUyAoc3ViamVjdCk7IC8qIFdlIGFscmVhZHkgaGF2ZSBhIHByb2Nl c3MgKi8NCitAQCAtMzM4LDE2ICszNDEsMzIgQEAgcG9sa2l0X2JhY2tlbmRfc2Vzc2lvbl9tb25p dG9yX2dldF9zZXNzaW9uX2Zvcl9zdWJqZWN0IChQb2xraXRCYWNrZW5kU2Vzc2lvbk1vbmkNCisg ICAgICAgICAgICAgICAgICAgIGdfdHlwZV9uYW1lIChHX1RZUEVfRlJPTV9JTlNUQU5DRSAoc3Vi amVjdCkpKTsNCisgICAgIH0NCisgDQorLSAgLyogTm93IGRvIHByb2Nlc3MgLT4gcGlkIC0+IHNl c3Npb24gKi8NCisrICAvKiBOb3cgZG8gcHJvY2VzcyAtPiBwaWQgLT4gc2FtZSBzZXNzaW9uICov DQorICAgZ19hc3NlcnQgKHByb2Nlc3MgIT0gTlVMTCk7DQorICAgcGlkID0gcG9sa2l0X3VuaXhf cHJvY2Vzc19nZXRfcGlkIChwcm9jZXNzKTsNCisgDQorLSAgaWYgKHNkX3BpZF9nZXRfc2Vzc2lv biAocGlkLCAmc2Vzc2lvbl9pZCkgPCAwKQ0KKysgIGlmIChzZF9waWRfZ2V0X3Nlc3Npb24gKHBp ZCwgJnNlc3Npb25faWQpID49IDApDQorKyAgICB7DQorKyAgICAgIHNlc3Npb24gPSBwb2xraXRf dW5peF9zZXNzaW9uX25ldyAoc2Vzc2lvbl9pZCk7DQorKyAgICAgIGdvdG8gb3V0Ow0KKysgICAg fQ0KKysNCisrI2lmIEhBVkVfU0RfVUlEX0dFVF9ESVNQTEFZDQorKyAgLyogTm93IGRvIHByb2Nl c3MgLT4gdWlkIC0+IGdyYXBoaWNhbCBzZXNzaW9uIChzeXN0ZW1kIHZlcnNpb24gMjEzKSovDQor KyAgaWYgKHNkX3BpZF9nZXRfb3duZXJfdWlkIChwaWQsICZ1aWQpIDwgMCkNCisgICAgIGdvdG8g b3V0Ow0KKy0gIA0KKy0gIHNlc3Npb24gPSBwb2xraXRfdW5peF9zZXNzaW9uX25ldyAoc2Vzc2lv bl9pZCk7DQorLSAgZnJlZSAoc2Vzc2lvbl9pZCk7DQorKw0KKysgIGlmIChzZF91aWRfZ2V0X2Rp c3BsYXkgKHVpZCwgJnNlc3Npb25faWQpID49IDApDQorKyAgICB7DQorKyAgICAgIHNlc3Npb24g PSBwb2xraXRfdW5peF9zZXNzaW9uX25ldyAoc2Vzc2lvbl9pZCk7DQorKyAgICAgIGdvdG8gb3V0 Ow0KKysgICAgfQ0KKysjZWxzZQ0KKysjZXJyb3IgRGViaWFuIHNob3VsZCBoYXZlIHNkX3VpZF9n ZXRfZGlzcGxheSgpDQorKyNlbmRpZg0KKysNCisgIG91dDoNCisrICBmcmVlIChzZXNzaW9uX2lk KTsNCisgICBpZiAodG1wX3Byb2Nlc3MpIGdfb2JqZWN0X3VucmVmICh0bXBfcHJvY2Vzcyk7DQor ICAgcmV0dXJuIHNlc3Npb247DQorIH0NCmRpZmYgLS1naXQgYS9wYXRjaGVzL3BvbGtpdC0wLjEw NS8wLjExNC9BZGQtZ2V0dGV4dC1zdXBwb3J0LWZvci0ucG9saWN5LWZpbGVzLnBhdGNoIGIvcGF0 Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTQvQWRkLWdldHRleHQtc3VwcG9ydC1mb3ItLnBvbGljeS1m aWxlcy5wYXRjaA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMC4uMDI1NDAz ZjhmDQotLS0gL2Rldi9udWxsDQorKysgYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExNC9BZGQt Z2V0dGV4dC1zdXBwb3J0LWZvci0ucG9saWN5LWZpbGVzLnBhdGNoDQpAQCAtMCwwICsxLDU4IEBA DQorRnJvbTogTWF0dGhpYXMgQ2xhc2VuIDxtY2xhc2VuQHJlZGhhdC5jb20+DQorRGF0ZTogRnJp LCAxNSBKdWwgMjAxNiAxMToxMjozNSAtMDQwMA0KK1N1YmplY3Q6IEFkZCBnZXR0ZXh0IHN1cHBv cnQgZm9yIC5wb2xpY3kgZmlsZXMNCisNCitnZXR0ZXh0IGNhbiBleHRyYWN0IHN0cmluZ3MgZnJv bSBhbmQgbWVyZ2UgdGhlbSBiYWNrIGludG8geG1sDQorZmlsZSBmb3JtYXRzLCB3aXRoIHRoZSBo ZWxwIG9mIC5pdHMgZmlsZXMuDQorDQorQnVnOiBodHRwczovL2J1Z3MuZnJlZWRlc2t0b3Aub3Jn L3Nob3dfYnVnLmNnaT9pZD05Njk0MA0KK09yaWdpbjogdXBzdHJlYW0sIDAuMTE0LCBjb21taXQ6 Yzc4ODE5MjQ1ZmY4YTI3MGY5N2M5ZjgwMDc3M2U3Mjc5MThiZTgzOA0KKy0tLQ0KKyBkYXRhL01h a2VmaWxlLmFtIHwgNSArKysrKw0KKyBkYXRhL3BvbGtpdC5pdHMgIHwgNyArKysrKysrDQorIGRh dGEvcG9sa2l0LmxvYyAgfCA2ICsrKysrKw0KKyAzIGZpbGVzIGNoYW5nZWQsIDE4IGluc2VydGlv bnMoKykNCisgY3JlYXRlIG1vZGUgMTAwNjQ0IGRhdGEvcG9sa2l0Lml0cw0KKyBjcmVhdGUgbW9k ZSAxMDA2NDQgZGF0YS9wb2xraXQubG9jDQorDQorZGlmZiAtLWdpdCBhL2RhdGEvTWFrZWZpbGUu YW0gYi9kYXRhL01ha2VmaWxlLmFtDQoraW5kZXggZjBiZWViYS4uZTFhNjBhYSAxMDA2NDQNCist LS0gYS9kYXRhL01ha2VmaWxlLmFtDQorKysrIGIvZGF0YS9NYWtlZmlsZS5hbQ0KK0BAIC0yMCw2 ICsyMCwxMSBAQCBlbmRpZg0KKyBwa2djb25maWdkaXIgPSAkKGxpYmRpcikvcGtnY29uZmlnDQor IHBrZ2NvbmZpZ19EQVRBID0gcG9sa2l0LWdvYmplY3QtMS5wYyBwb2xraXQtYmFja2VuZC0xLnBj IHBvbGtpdC1hZ2VudC0xLnBjDQorIA0KKysjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0NCisrDQorK2l0c2RpciA9ICQoZGF0YWRpcikvZ2V0dGV4dC9pdHMNCisr aXRzX0RBVEEgPSBwb2xraXQubG9jIHBvbGtpdC5pdHMNCisrDQorIENMRUFORklMRVMgPSAkKEJV SUxUX1NPVVJDRVMpDQorIA0KKyBFWFRSQV9ESVNUID0gCQkJCQkJCVwNCitkaWZmIC0tZ2l0IGEv ZGF0YS9wb2xraXQuaXRzIGIvZGF0YS9wb2xraXQuaXRzDQorbmV3IGZpbGUgbW9kZSAxMDA2NDQN CitpbmRleCAwMDAwMDAwLi4xMzEyZWNiDQorLS0tIC9kZXYvbnVsbA0KKysrKyBiL2RhdGEvcG9s a2l0Lml0cw0KK0BAIC0wLDAgKzEsNyBAQA0KKys8P3htbCB2ZXJzaW9uPSIxLjAiPz4NCisrPGl0 czpydWxlcyB4bWxuczppdHM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDUvMTEvaXRzIg0KKysgICAg ICAgICAgIHZlcnNpb249IjIuMCI+DQorKyAgPGl0czp0cmFuc2xhdGVSdWxlIHNlbGVjdG9yPSIv YWN0aW9uL2Rlc2NyaXB0aW9uIHwNCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9h Y3Rpb24vbWVzc2FnZSINCisrICAgICAgICAgICAgICAgICAgICAgdHJhbnNsYXRlPSJ5ZXMiLz4N CisrPC9pdHM6cnVsZXM+DQorZGlmZiAtLWdpdCBhL2RhdGEvcG9sa2l0LmxvYyBiL2RhdGEvcG9s a2l0LmxvYw0KK25ldyBmaWxlIG1vZGUgMTAwNjQ0DQoraW5kZXggMDAwMDAwMC4uYzc0MjdlYw0K Ky0tLSAvZGV2L251bGwNCisrKysgYi9kYXRhL3BvbGtpdC5sb2MNCitAQCAtMCwwICsxLDYgQEAN CisrPD94bWwgdmVyc2lvbj0iMS4wIj8+DQorKzxsb2NhdGluZ1J1bGVzPg0KKysgIDxsb2NhdGlu Z1J1bGUgbmFtZT0icG9sa2l0IHBvbGljeSIgcGF0dGVybj0iKi5wb2xpY3kiPg0KKysgICAgPGRv Y3VtZW50UnVsZSBsb2NhbE5hbWU9InBvbGljeWNvbmZpZyIgdGFyZ2V0PSJwb2xraXQuaXRzIi8+ DQorKyAgPC9sb2NhdGluZ1J1bGU+DQorKzwvbG9jYXRpbmdSdWxlcz4NCmRpZmYgLS1naXQgYS9w YXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExNC9GaXgtbXVsdGktbGluZS1wYW0tdGV4dC1pbmZvLnBh dGNoIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTQvRml4LW11bHRpLWxpbmUtcGFtLXRleHQt aW5mby5wYXRjaA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMC4uOGExODM2 MTNlDQotLS0gL2Rldi9udWxsDQorKysgYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExNC9GaXgt bXVsdGktbGluZS1wYW0tdGV4dC1pbmZvLnBhdGNoDQpAQCAtMCwwICsxLDM5IEBADQorRnJvbTog RGFyaXVzeiBHYWRvbXNraSA8ZGFyaXVzei5nYWRvbXNraUBjYW5vbmljYWwuY29tPg0KK0RhdGU6 IFR1ZSwgMTAgTm92IDIwMTUgMTA6NTI6MDIgKzAxMDANCitTdWJqZWN0OiBGaXggbXVsdGktbGlu ZSBwYW0gdGV4dCBpbmZvLg0KKw0KK1RoZXJlIGFyZSBwYW0gbW9kdWxlcyAoZS5nLiBwYW1fdmFz KSB0aGF0IG1heSBhdHRlbXB0IHRvIGRpc3BsYXkgbXVsdGktbGluZQ0KK1BBTV9URVhUX0lORk8g bWVzc2FnZXMuIFBvbGtpdCB3YXMgaW50ZXJwcmV0aW5nIHRoZSBsaW5lcyBhZnRlciB0aGUgZmly c3Qgb25lDQorYXMgYSBzZXBhcmF0ZSBtZXNzYWdlIHRoYXQgd2FzIG5vdCByZWNvZ25pemVkIGNh dXNpbmcgdGhlIGF1dGhvcml6YXRpb24NCit0byBmYWlsLiBFc2NhcGluZyB0aGVzZSBzdHJpbmdz IGFuZCB1bmVzY2FwaW5nIHRoZW0gZml4ZXMgdGhlIGlzc3VlLg0KKw0KK0J1ZzogaHR0cHM6Ly9i dWdzLmZyZWVkZXNrdG9wLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTI4ODYNCitPcmlnaW46IHVwc3Ry ZWFtLCAwLjExNCwgY29tbWl0OjEwNTk3MzIyZWNjYzMyMGY5MDUzODIxNzUwYWU5YWY1MWU5MThk NzQNCistLS0NCisgc3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50aGVscGVyLXBhbS5jIHwgMTMg KysrKysrKysrLS0tLQ0KKyAxIGZpbGUgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCA0IGRlbGV0 aW9ucygtKQ0KKw0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRoZWxw ZXItcGFtLmMgYi9zcmMvcG9sa2l0YWdlbnQvcG9sa2l0YWdlbnRoZWxwZXItcGFtLmMNCitpbmRl eCAxOTA2MmFhLi4wNjNkNjU2IDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xraXRhZ2VudC9wb2xraXRh Z2VudGhlbHBlci1wYW0uYw0KKysrKyBiL3NyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudGhlbHBl ci1wYW0uYw0KK0BAIC0zMDIsMTAgKzMwMiwxNSBAQCBjb252ZXJzYXRpb25fZnVuY3Rpb24gKGlu dCBuLCBjb25zdCBzdHJ1Y3QgcGFtX21lc3NhZ2UgKiptc2csIHN0cnVjdCBwYW1fcmVzcG9ucw0K KyAgICAgICAgIGNhc2UgUEFNX1RFWFRfSU5GTzoNCisgICAgICAgICAgIGZwcmludGYgKHN0ZG91 dCwgIlBBTV9URVhUX0lORk8gIik7DQorICAgICAgICAgY29udjI6DQorLSAgICAgICAgICBmcHV0 cyAobXNnW2ldLT5tc2csIHN0ZG91dCk7DQorLSAgICAgICAgICBpZiAoc3RybGVuIChtc2dbaV0t Pm1zZykgPiAwICYmDQorLSAgICAgICAgICAgICAgbXNnW2ldLT5tc2dbc3RybGVuIChtc2dbaV0t Pm1zZykgLSAxXSAhPSAnXG4nKQ0KKy0gICAgICAgICAgICBmcHV0YyAoJ1xuJywgc3Rkb3V0KTsN CisrICAgICAgICAgIHRtcCA9IGdfc3RyZHVwIChtc2dbaV0tPm1zZyk7DQorKyAgICAgICAgICBs ZW4gPSBzdHJsZW4gKHRtcCk7DQorKyAgICAgICAgICBpZiAobGVuID4gMCAmJiB0bXBbbGVuIC0g MV0gPT0gJ1xuJykNCisrICAgICAgICAgICAgdG1wW2xlbiAtIDFdID0gJ1wwJzsNCisrICAgICAg ICAgIGVzY2FwZWQgPSBnX3N0cmVzY2FwZSAodG1wLCBOVUxMKTsNCisrICAgICAgICAgIGdfZnJl ZSAodG1wKTsNCisrICAgICAgICAgIGZwdXRzIChlc2NhcGVkLCBzdGRvdXQpOw0KKysgICAgICAg ICAgZ19mcmVlIChlc2NhcGVkKTsNCisrICAgICAgICAgIGZwdXRjICgnXG4nLCBzdGRvdXQpOw0K KyAgICAgICAgICAgZmZsdXNoIChzdGRvdXQpOw0KKyAgICAgICAgICAgYnJlYWs7DQorIA0KZGlm ZiAtLWdpdCBhL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTE0L1JlZmFjdG9yLXNlbmRfdG9faGVs cGVyLXVzYWdlLnBhdGNoIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMC4xMTQvUmVmYWN0b3Itc2Vu ZF90b19oZWxwZXItdXNhZ2UucGF0Y2gNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAw MDAwMDAuLjc1ZTVjN2RhZA0KLS0tIC9kZXYvbnVsbA0KKysrIGIvcGF0Y2hlcy9wb2xraXQtMC4x MDUvMC4xMTQvUmVmYWN0b3Itc2VuZF90b19oZWxwZXItdXNhZ2UucGF0Y2gNCkBAIC0wLDAgKzEs MTQ5IEBADQorRnJvbTogRGFyaXVzeiBHYWRvbXNraSA8ZGFyaXVzei5nYWRvbXNraUBjYW5vbmlj YWwuY29tPg0KK0RhdGU6IFRodSwgMTIgTm92IDIwMTUgMTU6MDE6MTkgKzAxMDANCitTdWJqZWN0 OiBSZWZhY3RvciBzZW5kX3RvX2hlbHBlciB1c2FnZQ0KKw0KK1RoZXJlIHdlcmUgZHVwbGljYXRl ZCBwaWVjZXMgb2YgY29kZSBkZXRlY3RpbmcgRU9McyBhbmQgZXNjYXBpbmcgdGhlIGNvZGUuDQor VGhvc2UgYWN0aW9ucyBoYXMgYmVlbiBkZWxlZ2F0ZWQgdG8gYWxyZWFkeS1leGlzdGluZyBzZW5k X3RvX2hlbHBlciBmdW5jdGlvbi4NCisNCitCdWc6IGh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5v cmcvc2hvd19idWcuY2dpP2lkPTkyODg2DQorT3JpZ2luOiB1cHN0cmVhbSwgMC4xMTQsIGNvbW1p dDoyNjkwY2QwMzEyYjMxMDk0NmM4NjY3NGM4ZGQxZjU1YzYzZjdkZDZhDQorLS0tDQorIHNyYy9w b2xraXRhZ2VudC9wb2xraXRhZ2VudGhlbHBlci1wYW0uYyB8IDgxICsrKysrKysrKysrLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQ0KKyAxIGZpbGUgY2hhbmdlZCwgMjYgaW5zZXJ0aW9ucygrKSwgNTUg ZGVsZXRpb25zKC0pDQorDQorZGlmZiAtLWdpdCBhL3NyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2Vu dGhlbHBlci1wYW0uYyBiL3NyYy9wb2xraXRhZ2VudC9wb2xraXRhZ2VudGhlbHBlci1wYW0uYw0K K2luZGV4IDA2M2Q2NTYuLjNlYTNhM2YgMTAwNjQ0DQorLS0tIGEvc3JjL3BvbGtpdGFnZW50L3Bv bGtpdGFnZW50aGVscGVyLXBhbS5jDQorKysrIGIvc3JjL3BvbGtpdGFnZW50L3BvbGtpdGFnZW50 aGVscGVyLXBhbS5jDQorQEAgLTM5LDI1ICszOSwzNSBAQCBzdGF0aWMgdm9pZA0KKyBzZW5kX3Rv X2hlbHBlciAoY29uc3QgZ2NoYXIgKnN0cjEsDQorICAgICAgICAgICAgICAgICBjb25zdCBnY2hh ciAqc3RyMikNCisgew0KKysgIGNoYXIgKmVzY2FwZWQ7DQorKyAgY2hhciAqdG1wMjsNCisrICBz aXplX3QgbGVuMjsNCisrDQorKyAgdG1wMiA9IGdfc3RyZHVwKHN0cjIpOw0KKysgIGxlbjIgPSBz dHJsZW4odG1wMik7DQorICNpZmRlZiBQQUhfREVCVUcNCistICBmcHJpbnRmIChzdGRlcnIsICJw b2xraXQtYWdlbnQtaGVscGVyLTE6IHdyaXRpbmcgYCVzJyB0byBzdGRvdXRcbiIsIHN0cjEpOw0K KysgIGZwcmludGYgKHN0ZGVyciwgInBvbGtpdC1hZ2VudC1oZWxwZXItMTogd3JpdGluZyBgJXMg JyB0byBzdGRvdXRcbiIsIHN0cjEpOw0KKyAjZW5kaWYgLyogUEFIX0RFQlVHICovDQorLSAgZnBy aW50ZiAoc3Rkb3V0LCAiJXMiLCBzdHIxKTsNCisrICBmcHJpbnRmIChzdGRvdXQsICIlcyAiLCBz dHIxKTsNCisrDQorKyAgaWYgKGxlbjIgPiAwICYmIHRtcDJbbGVuMiAtIDFdID09ICdcbicpDQor KyAgICB0bXAyW2xlbjIgLSAxXSA9ICdcMCc7DQorKyAgZXNjYXBlZCA9IGdfc3RyZXNjYXBlICh0 bXAyLCBOVUxMKTsNCisgI2lmZGVmIFBBSF9ERUJVRw0KKy0gIGZwcmludGYgKHN0ZGVyciwgInBv bGtpdC1hZ2VudC1oZWxwZXItMTogd3JpdGluZyBgJXMnIHRvIHN0ZG91dFxuIiwgc3RyMik7DQor KyAgZnByaW50ZiAoc3RkZXJyLCAicG9sa2l0LWFnZW50LWhlbHBlci0xOiB3cml0aW5nIGAlcycg dG8gc3Rkb3V0XG4iLCBlc2NhcGVkKTsNCisgI2VuZGlmIC8qIFBBSF9ERUJVRyAqLw0KKy0gIGZw cmludGYgKHN0ZG91dCwgIiVzIiwgc3RyMik7DQorLSAgaWYgKHN0cmxlbiAoc3RyMikgPiAwICYm IHN0cjJbc3RybGVuIChzdHIyKSAtIDFdICE9ICdcbicpDQorLSAgICB7DQorKyAgZnByaW50ZiAo c3Rkb3V0LCAiJXMiLCBlc2NhcGVkKTsNCisgI2lmZGVmIFBBSF9ERUJVRw0KKy0gICAgICBmcHJp bnRmIChzdGRlcnIsICJwb2xraXQtYWdlbnQtaGVscGVyLTE6IHdyaXRpbmcgbmV3bGluZSB0byBz dGRvdXRcbiIpOw0KKysgIGZwcmludGYgKHN0ZGVyciwgInBvbGtpdC1hZ2VudC1oZWxwZXItMTog d3JpdGluZyBuZXdsaW5lIHRvIHN0ZG91dFxuIik7DQorICNlbmRpZiAvKiBQQUhfREVCVUcgKi8N CistICAgICAgZnB1dGMgKCdcbicsIHN0ZG91dCk7DQorLSAgICB9DQorKyAgZnB1dGMgKCdcbics IHN0ZG91dCk7DQorICNpZmRlZiBQQUhfREVCVUcNCisgICBmcHJpbnRmIChzdGRlcnIsICJwb2xr aXQtYWdlbnQtaGVscGVyLTE6IGZsdXNoaW5nIHN0ZG91dFxuIik7DQorICNlbmRpZiAvKiBQQUhf REVCVUcgKi8NCisgICBmZmx1c2ggKHN0ZG91dCk7DQorKw0KKysgIGdfZnJlZSAoZXNjYXBlZCk7 DQorKyAgZ19mcmVlICh0bXAyKTsNCisgfQ0KKyANCisgaW50DQorQEAgLTg5LDcgKzk5LDcgQEAg bWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkNCisgDQorICAgICAgIC8qIFNwZWNpYWwtY2Fz ZSBhIHZlcnkgY29tbW9uIGVycm9yIHRyaWdnZXJlZCBpbiBqaGJ1aWxkIHNldHVwcyAqLw0KKyAg ICAgICBzID0gZ19zdHJkdXBfcHJpbnRmICgiSW5jb3JyZWN0IHBlcm1pc3Npb25zIG9uICVzIChu ZWVkcyB0byBiZSBzZXR1aWQgcm9vdCkiLCBhcmd2WzBdKTsNCistICAgICAgc2VuZF90b19oZWxw ZXIgKCJQQU1fRVJST1JfTVNHICIsIHMpOw0KKysgICAgICBzZW5kX3RvX2hlbHBlciAoIlBBTV9F UlJPUl9NU0ciLCBzKTsNCisgICAgICAgZ19mcmVlIChzKTsNCisgICAgICAgZ290byBlcnJvcjsN CisgICAgIH0NCitAQCAtMjMyLDkgKzI0Miw2IEBAIGNvbnZlcnNhdGlvbl9mdW5jdGlvbiAoaW50 IG4sIGNvbnN0IHN0cnVjdCBwYW1fbWVzc2FnZSAqKm1zZywgc3RydWN0IHBhbV9yZXNwb25zDQor ICAgc3RydWN0IHBhbV9yZXNwb25zZSAqYXJlc3A7DQorICAgY2hhciBidWZbUEFNX01BWF9SRVNQ X1NJWkVdOw0KKyAgIGludCBpOw0KKy0gIGdjaGFyICplc2NhcGVkID0gTlVMTDsNCistICBnY2hh ciAqdG1wID0gTlVMTDsNCistICBzaXplX3QgbGVuOw0KKyANCisgICAodm9pZClkYXRhOw0KKyAg IGlmIChuIDw9IDAgfHwgbiA+IFBBTV9NQVhfTlVNX01TRykNCitAQCAtMjUxLDM4ICsyNTgsMTMg QEAgY29udmVyc2F0aW9uX2Z1bmN0aW9uIChpbnQgbiwgY29uc3Qgc3RydWN0IHBhbV9tZXNzYWdl ICoqbXNnLCBzdHJ1Y3QgcGFtX3Jlc3BvbnMNCisgICAgICAgICB7DQorIA0KKyAgICAgICAgIGNh c2UgUEFNX1BST01QVF9FQ0hPX09GRjoNCistI2lmZGVmIFBBSF9ERUJVRw0KKy0gICAgICAgICAg ZnByaW50ZiAoc3RkZXJyLCAicG9sa2l0LWFnZW50LWhlbHBlci0xOiB3cml0aW5nIGBQQU1fUFJP TVBUX0VDSE9fT0ZGICcgdG8gc3Rkb3V0XG4iKTsNCistI2VuZGlmIC8qIFBBSF9ERUJVRyAqLw0K Ky0gICAgICAgICAgZnByaW50ZiAoc3Rkb3V0LCAiUEFNX1BST01QVF9FQ0hPX09GRiAiKTsNCisr ICAgICAgICAgIHNlbmRfdG9faGVscGVyICgiUEFNX1BST01QVF9FQ0hPX09GRiIsIG1zZ1tpXS0+ bXNnKTsNCisgICAgICAgICAgIGdvdG8gY29udjE7DQorIA0KKyAgICAgICAgIGNhc2UgUEFNX1BS T01QVF9FQ0hPX09OOg0KKy0jaWZkZWYgUEFIX0RFQlVHDQorLSAgICAgICAgICBmcHJpbnRmIChz dGRlcnIsICJwb2xraXQtYWdlbnQtaGVscGVyLTE6IHdyaXRpbmcgYFBBTV9QUk9NUFRfRUNIT19P TiAnIHRvIHN0ZG91dFxuIik7DQorLSNlbmRpZiAvKiBQQUhfREVCVUcgKi8NCistICAgICAgICAg IGZwcmludGYgKHN0ZG91dCwgIlBBTV9QUk9NUFRfRUNIT19PTiAiKTsNCistICAgICAgICBjb252 MToNCistI2lmZGVmIFBBSF9ERUJVRw0KKy0gICAgICAgICAgZnByaW50ZiAoc3RkZXJyLCAicG9s a2l0LWFnZW50LWhlbHBlci0xOiB3cml0aW5nIGAlcycgdG8gc3Rkb3V0XG4iLCBtc2dbaV0tPm1z Zyk7DQorLSNlbmRpZiAvKiBQQUhfREVCVUcgKi8NCistICAgICAgICAgIHRtcCA9IGdfc3RyZHVw IChtc2dbaV0tPm1zZyk7DQorLSAgICAgICAgICBsZW4gPSBzdHJsZW4gKHRtcCk7DQorLSAgICAg ICAgICBpZiAobGVuID4gMCAmJiB0bXBbbGVuIC0gMV0gPT0gJ1xuJykNCistICAgICAgICAgICAg dG1wW2xlbiAtIDFdID0gJ1wwJzsNCistICAgICAgICAgIGVzY2FwZWQgPSBnX3N0cmVzY2FwZSAo dG1wLCBOVUxMKTsNCistICAgICAgICAgIGdfZnJlZSAodG1wKTsNCistICAgICAgICAgIGZwdXRz IChlc2NhcGVkLCBzdGRvdXQpOw0KKy0gICAgICAgICAgZ19mcmVlIChlc2NhcGVkKTsNCistI2lm ZGVmIFBBSF9ERUJVRw0KKy0gICAgICAgICAgZnByaW50ZiAoc3RkZXJyLCAicG9sa2l0LWFnZW50 LWhlbHBlci0xOiB3cml0aW5nIG5ld2xpbmUgdG8gc3Rkb3V0XG4iKTsNCistI2VuZGlmIC8qIFBB SF9ERUJVRyAqLw0KKy0gICAgICAgICAgZnB1dGMgKCdcbicsIHN0ZG91dCk7DQorLSNpZmRlZiBQ QUhfREVCVUcNCistICAgICAgICAgIGZwcmludGYgKHN0ZGVyciwgInBvbGtpdC1hZ2VudC1oZWxw ZXItMTogZmx1c2hpbmcgc3Rkb3V0XG4iKTsNCistI2VuZGlmIC8qIFBBSF9ERUJVRyAqLw0KKy0g ICAgICAgICAgZmZsdXNoIChzdGRvdXQpOw0KKysgICAgICAgICAgc2VuZF90b19oZWxwZXIgKCJQ QU1fUFJPTVBUX0VDSE9fT04iLCBtc2dbaV0tPm1zZyk7DQorIA0KKysgICAgICAgIGNvbnYxOg0K KyAgICAgICAgICAgaWYgKGZnZXRzIChidWYsIHNpemVvZiBidWYsIHN0ZGluKSA9PSBOVUxMKQ0K KyAgICAgICAgICAgICBnb3RvIGVycm9yOw0KKyANCitAQCAtMjk2LDIyICsyNzgsMTEgQEAgY29u dmVyc2F0aW9uX2Z1bmN0aW9uIChpbnQgbiwgY29uc3Qgc3RydWN0IHBhbV9tZXNzYWdlICoqbXNn LCBzdHJ1Y3QgcGFtX3Jlc3BvbnMNCisgICAgICAgICAgIGJyZWFrOw0KKyANCisgICAgICAgICBj YXNlIFBBTV9FUlJPUl9NU0c6DQorLSAgICAgICAgICBmcHJpbnRmIChzdGRvdXQsICJQQU1fRVJS T1JfTVNHICIpOw0KKy0gICAgICAgICAgZ290byBjb252MjsNCisrICAgICAgICAgIHNlbmRfdG9f aGVscGVyICgiUEFNX0VSUk9SX01TRyIsIG1zZ1tpXS0+bXNnKTsNCisrICAgICAgICAgIGJyZWFr Ow0KKyANCisgICAgICAgICBjYXNlIFBBTV9URVhUX0lORk86DQorLSAgICAgICAgICBmcHJpbnRm IChzdGRvdXQsICJQQU1fVEVYVF9JTkZPICIpOw0KKy0gICAgICAgIGNvbnYyOg0KKy0gICAgICAg ICAgdG1wID0gZ19zdHJkdXAgKG1zZ1tpXS0+bXNnKTsNCistICAgICAgICAgIGxlbiA9IHN0cmxl biAodG1wKTsNCistICAgICAgICAgIGlmIChsZW4gPiAwICYmIHRtcFtsZW4gLSAxXSA9PSAnXG4n KQ0KKy0gICAgICAgICAgICB0bXBbbGVuIC0gMV0gPSAnXDAnOw0KKy0gICAgICAgICAgZXNjYXBl ZCA9IGdfc3RyZXNjYXBlICh0bXAsIE5VTEwpOw0KKy0gICAgICAgICAgZ19mcmVlICh0bXApOw0K Ky0gICAgICAgICAgZnB1dHMgKGVzY2FwZWQsIHN0ZG91dCk7DQorLSAgICAgICAgICBnX2ZyZWUg KGVzY2FwZWQpOw0KKy0gICAgICAgICAgZnB1dGMgKCdcbicsIHN0ZG91dCk7DQorLSAgICAgICAg ICBmZmx1c2ggKHN0ZG91dCk7DQorKyAgICAgICAgICBzZW5kX3RvX2hlbHBlciAoIlBBTV9URVhU X0lORk8iLCBtc2dbaV0tPm1zZyk7DQorICAgICAgICAgICBicmVhazsNCisgDQorICAgICAgICAg ZGVmYXVsdDoNCmRpZmYgLS1naXQgYS9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExNC9TdXBwb3J0 LXBvbGtpdC1zZXNzaW9uLWFnZW50LXJ1bm5pbmctb3V0c2lkZS11c2VyLXNlc3Npb24ucGF0Y2gg Yi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExNC9TdXBwb3J0LXBvbGtpdC1zZXNzaW9uLWFnZW50 LXJ1bm5pbmctb3V0c2lkZS11c2VyLXNlc3Npb24ucGF0Y2gNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0 DQppbmRleCAwMDAwMDAwMDAuLjcxNzlhOTJiYQ0KLS0tIC9kZXYvbnVsbA0KKysrIGIvcGF0Y2hl cy9wb2xraXQtMC4xMDUvMC4xMTQvU3VwcG9ydC1wb2xraXQtc2Vzc2lvbi1hZ2VudC1ydW5uaW5n LW91dHNpZGUtdXNlci1zZXNzaW9uLnBhdGNoDQpAQCAtMCwwICsxLDUxIEBADQorRnJvbTogU2Vi YXN0aWVuIEJhY2hlciA8c2ViMTI4QHVidW50dS5jb20+DQorRGF0ZTogTW9uLCAyIEFwciAyMDE4 IDEwOjUyOjQ3IC0wNDAwDQorU3ViamVjdDogU3VwcG9ydCBwb2xraXQgc2Vzc2lvbiBhZ2VudCBy dW5uaW5nIG91dHNpZGUgdXNlciBzZXNzaW9uDQorDQorY29tbWl0IGE2OGY1ZGZkNzY2Mjc2N2I3 Yjk4MjIwOTBiNzBiYzViZDE0NWM1MGMgbWFkZQ0KK3Nlc3Npb24gYXBwbGljYXRpb25zIHRoYXQg YXJlIHJ1bm5pbmcgZnJvbSBhIHVzZXIgYnVzDQord29yayB3aXRoIHBvbGtpdGQsIGJ5IGZhbGxp bmcgYmFjayB0byB1c2luZyB0aGUgY3VycmVudGx5DQorYWN0aXZlIHNlc3Npb24uDQorDQorVGhp cyBjb21taXQgaXMgc2ltaWxhciwgYnV0IGZvciB0aGUgcG9sa2l0IGFnZW50LiAgSXQgYWxsb3dz LA0KK2EgcG9sa2l0IGFnZW50IHRvIGJlIHJ1biBmcm9tIGEgc3lzdGVtZCAtLXVzZXIgc2Vydmlj ZQ0KK3RoYXQncyBub3QgcnVubmluZyBkaXJlY3RseSBpbiB0aGUgdXNlcnMgc2Vzc2lvbi4NCisN CitCdWc6IGh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTk2OTc3 DQorQXBwbGllZC11cHN0cmVhbTogMC4xMTQsIGNvbW1pdDowMGE2NjNlM2ZiMTRkODAyM2U3Y2I2 YTY2ZDA5MTg3MmJmNGYyODUxDQorLS0tDQorIHNyYy9wb2xraXQvcG9sa2l0dW5peHNlc3Npb24t c3lzdGVtZC5jIHwgMTQgKysrKysrKysrKysrKysNCisgMSBmaWxlIGNoYW5nZWQsIDE0IGluc2Vy dGlvbnMoKykNCisNCitkaWZmIC0tZ2l0IGEvc3JjL3BvbGtpdC9wb2xraXR1bml4c2Vzc2lvbi1z eXN0ZW1kLmMgYi9zcmMvcG9sa2l0L3BvbGtpdHVuaXhzZXNzaW9uLXN5c3RlbWQuYw0KK2luZGV4 IDhhOGJmNjUuLmMzNGYzNmEgMTAwNjQ0DQorLS0tIGEvc3JjL3BvbGtpdC9wb2xraXR1bml4c2Vz c2lvbi1zeXN0ZW1kLmMNCisrKysgYi9zcmMvcG9sa2l0L3BvbGtpdHVuaXhzZXNzaW9uLXN5c3Rl bWQuYw0KK0BAIC00NTEsNiArNDUxLDcgQEAgcG9sa2l0X3VuaXhfc2Vzc2lvbl9pbml0YWJsZV9p bml0IChHSW5pdGFibGUgICAgICppbml0YWJsZSwNCisgICBQb2xraXRVbml4U2Vzc2lvbiAqc2Vz c2lvbiA9IFBPTEtJVF9VTklYX1NFU1NJT04gKGluaXRhYmxlKTsNCisgICBnYm9vbGVhbiByZXQg PSBGQUxTRTsNCisgICBjaGFyICpzOw0KKysgIHVpZF90IHVpZDsNCisgDQorICAgaWYgKHNlc3Np b24tPnNlc3Npb25faWQgIT0gTlVMTCkNCisgICAgIHsNCitAQCAtNDY3LDYgKzQ2OCwxOSBAQCBw b2xraXRfdW5peF9zZXNzaW9uX2luaXRhYmxlX2luaXQgKEdJbml0YWJsZSAgICAgKmluaXRhYmxl LA0KKyAgICAgICBnb3RvIG91dDsNCisgICAgIH0NCisgDQorKyAgLyogTm93IGRvIHByb2Nlc3Mg LT4gdWlkIC0+IGdyYXBoaWNhbCBzZXNzaW9uIChzeXN0ZW1kIHZlcnNpb24gMjEzKSovDQorKyAg aWYgKHNkX3BpZF9nZXRfb3duZXJfdWlkIChzZXNzaW9uLT5waWQsICZ1aWQpIDwgMCkNCisrICAg IGdvdG8gZXJyb3I7DQorKw0KKysgIGlmIChzZF91aWRfZ2V0X2Rpc3BsYXkgKHVpZCwgJnMpID49 IDApDQorKyAgICB7DQorKyAgICAgIHNlc3Npb24tPnNlc3Npb25faWQgPSAgZ19zdHJkdXAgKHMp Ow0KKysgICAgICBmcmVlIChzKTsNCisrICAgICAgcmV0ID0gVFJVRTsNCisrICAgICAgZ290byBv dXQ7DQorKyAgICB9DQorKw0KKytlcnJvcjoNCisgICBnX3NldF9lcnJvciAoZXJyb3IsDQorICAg ICAgICAgICAgICAgIFBPTEtJVF9FUlJPUiwNCisgICAgICAgICAgICAgICAgUE9MS0lUX0VSUk9S X0ZBSUxFRCwNCmRpZmYgLS1naXQgYS9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExNC9nZXR0ZXh0 LXN3aXRjaC10by1kZWZhdWx0LXRyYW5zbGF0ZS1uby5wYXRjaCBiL3BhdGNoZXMvcG9sa2l0LTAu MTA1LzAuMTE0L2dldHRleHQtc3dpdGNoLXRvLWRlZmF1bHQtdHJhbnNsYXRlLW5vLnBhdGNoDQpu ZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi41NzdkNWFiMWINCi0tLSAvZGV2 L251bGwNCisrKyBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAuMTE0L2dldHRleHQtc3dpdGNoLXRv LWRlZmF1bHQtdHJhbnNsYXRlLW5vLnBhdGNoDQpAQCAtMCwwICsxLDQxIEBADQorRnJvbTogUGV0 ZXIgSHV0dGVyZXIgPHBldGVyLmh1dHRlcmVyQHdoby10Lm5ldD4NCitEYXRlOiBUaHUsIDIwIE9j dCAyMDE2IDEwOjUwOjU4ICsxMDAwDQorU3ViamVjdDogZ2V0dGV4dDogc3dpdGNoIHRvIGRlZmF1 bHQtdHJhbnNsYXRlICJubyINCisNCitUaGUgZGVmYXVsdCBhcHBlYXJzIHRvIGJlIHRvIHRyYW5z bGF0ZSBhbGwgZW50cmllcy4gVGhpcyBydWxlIG5ldmVyIHRha2VzDQorZWZmZWN0LCB0aGUgcGF0 aCB0byAvYWN0aW9uL21lc3NhZ2UgYW5kIC9hY3Rpb24vZGVzY3JpcHRpb24gaXMgd3JvbmcgKC9h Y3Rpb24NCitpcyBub3QgYSByb290IG5vZGUpLiBTaW5jZSB3ZSB3YW50ZWQgdGhlbSB0byBiZSB0 cmFuc2xhdGVkLCBpdCBkb2Vzbid0IG1hdHRlci4NCisNCitCdXQgaXQgYWxzbyB0cmFuc2xhdGVz IGFsbCBvdGhlciB0YWdzICh2ZW5kb3IsIGFsbG93X2FueSwgZXRjLikgYW5kIHRoYXQNCitjYXVz ZXMgcG9sa2l0IHRvIGJlIHVuaGFwcHksIGl0IGNhbid0IGhhbmRsZSB0aGUgdmFyaW91cyBsYW5n dWFnZSB2ZXJzaW9ucyBvZg0KKyJubyINCisNCisqKiAocG9sa2l0ZDoyNzQzNCk6IFdBUk5JTkcg Kio6IFVua25vd24gUG9sa2l0SW1wbGljaXRBdXRob3JpemF0aW9uIHN0cmluZw0KKyd0aWRhaycN CisNCitTd2l0Y2ggdG8gYSBkZWZhdWx0IG9mICJubyIgYW5kIGV4cGxpY2l0bHkgaW5jbHVkZSB0 aGUgbWVzc2FnZSBhbmQgZGVzY3JpcHRpb24NCitzdHJpbmdzIHRvIGJlIHRyYW5zbGF0ZWQuDQor DQorVGhlIHBhdGNoIHdhcyBtb2RpZmllZCBmb3IgUG9saWN5S2l0IGJ5IE9uZHJlaiBIb2x5IDxv aG9seUByZWRoYXQuY29tPi4NCisNCitCdWc6IGh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcv c2hvd19idWcuY2dpP2lkPTk4MzY2DQorT3JpZ2luOiB1cHN0cmVhbSwgMC4xMTQsIGNvbW1pdDoz MmU5YTY5YzMzNTMyNGE1M2EyYzBiYTRlMGI1MTNmYjA0NGJlMGZkDQorLS0tDQorIGRhdGEvcG9s a2l0Lml0cyB8IDUgKysrLS0NCisgMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMiBk ZWxldGlvbnMoLSkNCisNCitkaWZmIC0tZ2l0IGEvZGF0YS9wb2xraXQuaXRzIGIvZGF0YS9wb2xr aXQuaXRzDQoraW5kZXggMTMxMmVjYi4uMWMzN2U2YiAxMDA2NDQNCistLS0gYS9kYXRhL3BvbGtp dC5pdHMNCisrKysgYi9kYXRhL3BvbGtpdC5pdHMNCitAQCAtMSw3ICsxLDggQEANCisgPD94bWwg dmVyc2lvbj0iMS4wIj8+DQorIDxpdHM6cnVsZXMgeG1sbnM6aXRzPSJodHRwOi8vd3d3LnczLm9y Zy8yMDA1LzExL2l0cyINCisgICAgICAgICAgICB2ZXJzaW9uPSIyLjAiPg0KKy0gIDxpdHM6dHJh bnNsYXRlUnVsZSBzZWxlY3Rvcj0iL2FjdGlvbi9kZXNjcmlwdGlvbiB8DQorLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAvYWN0aW9uL21lc3NhZ2UiDQorKyAgPGl0czp0cmFuc2xhdGVS dWxlIHNlbGVjdG9yPSIvLyoiIHRyYW5zbGF0ZT0ibm8iLz4NCisrICA8aXRzOnRyYW5zbGF0ZVJ1 bGUgc2VsZWN0b3I9Ii8vYWN0aW9uL2Rlc2NyaXB0aW9uIHwNCisrICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIC8vYWN0aW9uL21lc3NhZ2UiDQorICAgICAgICAgICAgICAgICAgICAgIHRy YW5zbGF0ZT0ieWVzIi8+DQorIDwvaXRzOnJ1bGVzPg0KZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9s a2l0LTAuMTA1LzAuMTE1L0ZpeC1DVkUtMjAxOC0xMTE2LVRydXN0aW5nLWNsaWVudC1zdXBwbGll ZC1VSUQucGF0Y2ggYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wLjExNS9GaXgtQ1ZFLTIwMTgtMTEx Ni1UcnVzdGluZy1jbGllbnQtc3VwcGxpZWQtVUlELnBhdGNoDQpuZXcgZmlsZSBtb2RlIDEwMDY0 NA0KaW5kZXggMDAwMDAwMDAwLi5kM2UzNDM1MDQNCi0tLSAvZGV2L251bGwNCisrKyBiL3BhdGNo ZXMvcG9sa2l0LTAuMTA1LzAuMTE1L0ZpeC1DVkUtMjAxOC0xMTE2LVRydXN0aW5nLWNsaWVudC1z dXBwbGllZC1VSUQucGF0Y2gNCkBAIC0wLDAgKzEsNTY5IEBADQorRnJvbTogPT91dGYtOD9xP01p bG9zbGF2X1RybWE9QzQ9OEQ/PSA8bWl0ckByZWRoYXQuY29tPg0KK0RhdGU6IE1vbiwgMjUgSnVu IDIwMTggMTk6MjQ6MDYgKzAyMDANCitTdWJqZWN0OiBGaXggQ1ZFLTIwMTgtMTExNjogVHJ1c3Rp bmcgY2xpZW50LXN1cHBsaWVkIFVJRA0KK01JTUUtVmVyc2lvbjogMS4wDQorQ29udGVudC1UeXBl OiB0ZXh0L3BsYWluOyBjaGFyc2V0PSJ1dGYtOCINCitDb250ZW50LVRyYW5zZmVyLUVuY29kaW5n OiA4Yml0DQorDQorQXMgcGFydCBvZiBDVkUtMjAxMy00Mjg4LCB0aGUgRC1CdXMgY2xpZW50cyB3 ZXJlIGFsbG93ZWQgKGFuZA0KK2VuY291cmFnZWQpIHRvIHN1Ym1pdCB0aGUgVUlEIG9mIHRoZSBz dWJqZWN0IG9mIGF1dGhvcml6YXRpb24gY2hlY2tzDQordG8gYXZvaWQgcmFjZXMgYWdhaW5zdCBV SUQgY2hhbmdlcyAobm90YWJseSB1c2luZyBleGVjdXRhYmxlcw0KK3NldC1VSUQgdG8gcm9vdCku DQorDQorSG93ZXZlciwgdGhhdCBhbHNvIGFsbG93ZWQgYW55IGNsaWVudCB0byBzdWJtaXQgYW4g YXJiaXRyYXJ5IFVJRCwgYW5kDQordGhhdCBjb3VsZCBiZSB1c2VkIHRvIGJ5cGFzcyAiY2FuIG9u bHkgYXNrIGFib3V0IC8gYWZmZWN0IHRoZSBzYW1lIFVJRCINCitjaGVja3MgaW4gQ2hlY2tBdXRo b3JpemF0aW9uIC8gUmVnaXN0ZXJBdXRoZW50aWNhdGlvbkFnZW50IC8NCitVbnJlZ2lzdGVyQXV0 aGVudGljYXRpb25BZ2VudC4gIFRoaXMgYWxsb3dlZCBhbiBhdHRhY2tlcjoNCisNCistIFdpdGgg Q2hlY2tBdXRob3JpemF0aW9uLCB0byBjYXVzZSB0aGUgcmVnaXN0ZXJlZCBhdXRoZW50aWNhdGlv bg0KKyAgYWdlbnQgaW4gdmljdGltJ3Mgc2Vzc2lvbiB0byBwb3AgdXAgYSBkaWFsb2csIG9yIHRv IGRldGVybWluZSB3aGV0aGVyDQorICB0aGUgdmljdGltIGN1cnJlbnRseSBoYXMgYSB0ZW1wb3Jh cnkgYXV0aG9yaXphdGlvbiB0byBwZXJmb3JtIGFuDQorICBvcGVyYXRpb24uDQorDQorICAoSW4g cHJpbmNpcGxlLCB0aGUgYXR0YWNrZXIgY2FuIGFsc28gZGV0ZXJtaW5lIHdoZXRoZXIgSmF2YVNj cmlwdA0KKyAgcnVsZXMgYWxsb3cgdGhlIHZpY3RpbSBwcm9jZXNzIHRvIHBlcmZvcm0gYW4gb3Bl cmF0aW9uOyBob3dldmVyLA0KKyAgdXN1YWxseSBydWxlcyBiYXNlIHRoZWlyIGRlY2lzaW9ucyBv biBpbmZvcm1hdGlvbiBkZXRlcm1pbmVkIGZyb20NCisgIHRoZSBzdXBwbGllZCBVSUQsIHNvIHRo ZSBhdHRhY2tlciB1c3VhbGx5IHdvbid0IGxlYXJuIGFueXRoaW5nIG5ldy4pDQorDQorLSBXaXRo IFJlZ2lzdGVyQXV0aGVudGljYXRpb25BZ2VudCwgdG8gcHJldmVudCB0aGUgdmljdGltJ3MNCisg IGF1dGhlbnRpY2F0aW9uIGFnZW50IHRvIHdvcmsgKGZvciBhIHNwZWNpZmljIHZpY3RpbSBwcm9j ZXNzKSwNCisgIG9yIHRvIGxlYXJuIGFib3V0IHdoaWNoIG9wZXJhdGlvbnMgcmVxdWlyaW5nIGF1 dGhvcml6YXRpb24NCisgIHRoZSB2aWN0aW0gaXMgYXR0ZW1wdGluZy4NCisNCitUbyBmaXggdGhp cywgZXhwb3NlIGludGVybmFsIF9wb2xraXRfdW5peF9wcm9jZXNzX2dldF9vd25lcigpIC8NCitv YnNvbGV0ZSBwb2xraXRfdW5peF9wcm9jZXNzX2dldF9vd25lcigpIGFzIGEgcHJpdmF0ZQ0KK3Bv bGtpdF91bml4X3Byb2Nlc3NfZ2V0X3JhY3lfdWlkX18oKSAoYmVpbmcgbW9yZSBleHBsaWNpdCBh Ym91dCB0aGUNCitkYW5nZXJzIG9uIHJlbHlpbmcgb24gaXQpLCBhbmQgdXNlIGl0IGluDQorcG9s a2l0X2JhY2tlbmRfc2Vzc2lvbl9tb25pdG9yX2dldF91c2VyX2Zvcl9zdWJqZWN0KCkgdG8gcmV0 dXJuDQorYSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciB0aGUgc3ViamVjdCBVSUQgbWF5IGJl IGNhbGxlci1jaG9zZW4uDQorDQorVGhlbiwgaW4gdGhlIHBlcm1pc3Npb24gY2hlY2tzIHRoYXQg cmVxdWlyZSB0aGUgc3ViamVjdCB0byBiZQ0KK2VxdWFsIHRvIHRoZSBjYWxsZXIsIGZhaWwgb24g Y2FsbGVyLWNob3NlbiBVSURzIChhbmQgY29udGludWUNCit0aHJvdWdoIHRoZSBwcmUtZXhpc3Rp bmcgY29kZSBwYXRocyB3aGljaCBhbGxvdyByb290LCBvciByb290LWRlc2lnbmF0ZWQNCitzZXJ2 ZXIgcHJvY2Vzc2VzLCB0byBhc2sgYWJvdXQgYXJiaXRyYXJ5IHN1YmplY3RzLikNCisNCitTaWdu ZWQtb2ZmLWJ5OiBNaWxvc2xhdiBUcm1hxI0gPG1pdHJAcmVkaGF0LmNvbT4NCitPcmlnaW46IHVw c3RyZWFtLCAwLjExNSwgY29tbWl0OmJjN2ZmYWQ1MzY0M2E5YzgwMjMxZmM0MWY1NTgyZDZhODkz MWMzMmMNCistLS0NCisgc3JjL3BvbGtpdC9wb2xraXRwcml2YXRlLmggICAgICAgICAgICAgICAg ICAgICAgICAgfCAgMiArDQorIHNyYy9wb2xraXQvcG9sa2l0dW5peHByb2Nlc3MuYyAgICAgICAg ICAgICAgICAgICAgIHwgNjAgKysrKysrKysrKysrKysrKysrLS0tLQ0KKyAuLi4vcG9sa2l0YmFj a2VuZGludGVyYWN0aXZlYXV0aG9yaXR5LmMgICAgICAgICAgICB8IDM5ICsrKysrKysrKy0tLS0t DQorIC4uLi9wb2xraXRiYWNrZW5kc2Vzc2lvbm1vbml0b3Itc3lzdGVtZC5jICAgICAgICAgIHwg MzggKysrKysrKysrKysrLS0NCisgc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZHNlc3Np b25tb25pdG9yLmMgICAgfCA0MCArKysrKysrKysrKysrLS0NCisgc3JjL3BvbGtpdGJhY2tlbmQv cG9sa2l0YmFja2VuZHNlc3Npb25tb25pdG9yLmggICAgfCAgMSArDQorIDYgZmlsZXMgY2hhbmdl ZCwgMTQ3IGluc2VydGlvbnMoKyksIDMzIGRlbGV0aW9ucygtKQ0KKw0KK2RpZmYgLS1naXQgYS9z cmMvcG9sa2l0L3BvbGtpdHByaXZhdGUuaCBiL3NyYy9wb2xraXQvcG9sa2l0cHJpdmF0ZS5oDQor aW5kZXggNTc5Y2MyNS4uZDZjZDQ1ZCAxMDA2NDQNCistLS0gYS9zcmMvcG9sa2l0L3BvbGtpdHBy aXZhdGUuaA0KKysrKyBiL3NyYy9wb2xraXQvcG9sa2l0cHJpdmF0ZS5oDQorQEAgLTM0LDYgKzM0 LDggQEAgR1ZhcmlhbnQgKnBvbGtpdF9hY3Rpb25fZGVzY3JpcHRpb25fdG9fZ3ZhcmlhbnQgKFBv bGtpdEFjdGlvbkRlc2NyaXB0aW9uICphY3Rpb24NCisgR1ZhcmlhbnQgKnBvbGtpdF9zdWJqZWN0 X3RvX2d2YXJpYW50IChQb2xraXRTdWJqZWN0ICpzdWJqZWN0KTsNCisgR1ZhcmlhbnQgKnBvbGtp dF9pZGVudGl0eV90b19ndmFyaWFudCAoUG9sa2l0SWRlbnRpdHkgKmlkZW50aXR5KTsNCisgDQor K2dpbnQgcG9sa2l0X3VuaXhfcHJvY2Vzc19nZXRfcmFjeV91aWRfXyAoUG9sa2l0VW5peFByb2Nl c3MgKnByb2Nlc3MsIEdFcnJvciAqKmVycm9yKTsNCisrDQorIFBvbGtpdFN1YmplY3QgICpwb2xr aXRfc3ViamVjdF9uZXdfZm9yX2d2YXJpYW50IChHVmFyaWFudCAqdmFyaWFudCwgR0Vycm9yICoq ZXJyb3IpOw0KKyBQb2xraXRJZGVudGl0eSAqcG9sa2l0X2lkZW50aXR5X25ld19mb3JfZ3Zhcmlh bnQgKEdWYXJpYW50ICp2YXJpYW50LCBHRXJyb3IgKiplcnJvcik7DQorIA0KK2RpZmYgLS1naXQg YS9zcmMvcG9sa2l0L3BvbGtpdHVuaXhwcm9jZXNzLmMgYi9zcmMvcG9sa2l0L3BvbGtpdHVuaXhw cm9jZXNzLmMNCitpbmRleCA5MTNiZTNhLi40NjRmMDM0IDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xr aXQvcG9sa2l0dW5peHByb2Nlc3MuYw0KKysrKyBiL3NyYy9wb2xraXQvcG9sa2l0dW5peHByb2Nl c3MuYw0KK0BAIC00OSw2ICs0OSwxNCBAQA0KKyAgKiBUbyB1bmlxdWVseSBpZGVudGlmeSBwcm9j ZXNzZXMsIGJvdGggdGhlIHByb2Nlc3MgaWQgYW5kIHRoZSBzdGFydA0KKyAgKiB0aW1lIG9mIHRo ZSBwcm9jZXNzIChhIG1vbm90b25pYyBpbmNyZWFzaW5nIHZhbHVlIHJlcHJlc2VudGluZyB0aGUN CisgICogdGltZSBzaW5jZSB0aGUga2VybmVsIHdhcyBzdGFydGVkKSBpcyB1c2VkLg0KKysgKg0K KysgKiBOT1RFOiBUaGlzIG9iamVjdCBzdG9yZXMsIGFuZCBwcm92aWRlcyBhY2Nlc3MgdG8sIHRo ZSByZWFsIFVJRCBvZiB0aGUNCisrICogcHJvY2Vzcy4gIFRoYXQgdmFsdWUgY2FuIGNoYW5nZSBv dmVyIHRpbWUgKHdpdGggc2V0KnVpZCooMikgYW5kIGV4ZWMqKDIpKS4NCisrICogQ2hlY2tzIHdo ZXRoZXIgYW4gb3BlcmF0aW9uIGlzIGFsbG93ZWQgbmVlZCB0byB0YWtlIGNhcmUgdG8gdXNlIHRo ZSBVSUQNCisrICogdmFsdWUgYXMgb2YgdGhlIHRpbWUgd2hlbiB0aGUgb3BlcmF0aW9uIHdhcyBt YWRlIChvciwgZm9sbG93aW5nIHRoZSBvcGVuKCkNCisrICogcHJpdmlsZWdlIGNoZWNrIG1vZGVs LCB3aGVuIHRoZSBjb25uZWN0aW9uIG1ha2luZyB0aGUgb3BlcmF0aW9uIHBvc3NpYmxlDQorKyAq IHdhcyBpbml0aWF0ZWQpLiAgVGhhdCBpcyB1c3VhbGx5IGRvbmUgYnkgaW5pdGlhbGl6aW5nIHRo aXMgd2l0aA0KKysgKiBwb2xraXRfdW5peF9wcm9jZXNzX25ld19mb3Jfb3duZXIoKSB3aXRoIHRy dXN0ZWQgZGF0YS4NCisgICovDQorIA0KKyAvKioNCitAQCAtODMsOSArOTEsNiBAQCBzdGF0aWMg dm9pZCBzdWJqZWN0X2lmYWNlX2luaXQgKFBvbGtpdFN1YmplY3RJZmFjZSAqc3ViamVjdF9pZmFj ZSk7DQorIHN0YXRpYyBndWludDY0IGdldF9zdGFydF90aW1lX2Zvcl9waWQgKGdpbnQgICAgcGlk LA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHRXJyb3IgKiplcnJv cik7DQorIA0KKy1zdGF0aWMgZ2ludCBfcG9sa2l0X3VuaXhfcHJvY2Vzc19nZXRfb3duZXIgKFBv bGtpdFVuaXhQcm9jZXNzICAqcHJvY2VzcywNCistICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBHRXJyb3IgICAgICAgICAgICAqKmVycm9yKTsNCistDQorICNpZmRl ZiBIQVZFX0ZSRUVCU0QNCisgc3RhdGljIGdib29sZWFuIGdldF9raW5mb19wcm9jIChnaW50IHBp ZCwgc3RydWN0IGtpbmZvX3Byb2MgKnApOw0KKyAjZW5kaWYNCitAQCAtMTcwLDcgKzE3NSw3IEBA IHBvbGtpdF91bml4X3Byb2Nlc3NfY29uc3RydWN0ZWQgKEdPYmplY3QgKm9iamVjdCkNCisgICAg IHsNCisgICAgICAgR0Vycm9yICplcnJvcjsNCisgICAgICAgZXJyb3IgPSBOVUxMOw0KKy0gICAg ICBwcm9jZXNzLT51aWQgPSBfcG9sa2l0X3VuaXhfcHJvY2Vzc19nZXRfb3duZXIgKHByb2Nlc3Ms ICZlcnJvcik7DQorKyAgICAgIHByb2Nlc3MtPnVpZCA9IHBvbGtpdF91bml4X3Byb2Nlc3NfZ2V0 X3JhY3lfdWlkX18gKHByb2Nlc3MsICZlcnJvcik7DQorICAgICAgIGlmIChlcnJvciAhPSBOVUxM KQ0KKyAgICAgICAgIHsNCisgICAgICAgICAgIHByb2Nlc3MtPnVpZCA9IC0xOw0KK0BAIC0yNTks NiArMjY0LDEyIEBAIHBvbGtpdF91bml4X3Byb2Nlc3NfY2xhc3NfaW5pdCAoUG9sa2l0VW5peFBy b2Nlc3NDbGFzcyAqa2xhc3MpDQorICAqIEdldHMgdGhlIHVzZXIgaWQgZm9yIEBwcm9jZXNzLiBO b3RlIHRoYXQgdGhpcyBpcyB0aGUgcmVhbCB1c2VyLWlkLA0KKyAgKiBub3QgdGhlIGVmZmVjdGl2 ZSB1c2VyLWlkLg0KKyAgKg0KKysgKiBOT1RFOiBUaGUgVUlEIG1heSBjaGFuZ2Ugb3ZlciB0aW1l LCBzbyB0aGUgcmV0dXJuZWQgdmFsdWUgbWF5IG5vdCBtYXRjaCB0aGUNCisrICogY3VycmVudCBz dGF0ZSBvZiB0aGUgdW5kZXJseWluZyBwcm9jZXNzOyBvciB0aGUgVUlEIG1heSBoYXZlIGJlZW4g c2V0IGJ5DQorKyAqIHBvbGtpdF91bml4X3Byb2Nlc3NfbmV3X2Zvcl9vd25lcigpIG9yIHBvbGtp dF91bml4X3Byb2Nlc3Nfc2V0X3VpZCgpLA0KKysgKiBpbiB3aGljaCBjYXNlIGl0IG1heSBub3Qg Y29ycmVzcG9uZCB0byB0aGUgYWN0dWFsIFVJRCBvZiB0aGUgcmVmZXJlbmNlZA0KKysgKiBwcm9j ZXNzIGF0IGFsbCAoYXQgYW55IHBvaW50IGluIHRpbWUpLg0KKysgKg0KKyAgKiBSZXR1cm5zOiBU aGUgdXNlciBpZCBmb3IgQHByb2Nlc3Mgb3IgLTEgaWYgdW5rbm93bi4NCisgICovDQorIGdpbnQN CitAQCAtNjU1LDE4ICs2NjYsMjYgQEAgb3V0Og0KKyAgIHJldHVybiBzdGFydF90aW1lOw0KKyB9 DQorIA0KKy1zdGF0aWMgZ2ludA0KKy1fcG9sa2l0X3VuaXhfcHJvY2Vzc19nZXRfb3duZXIgKFBv bGtpdFVuaXhQcm9jZXNzICAqcHJvY2VzcywNCistICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBHRXJyb3IgICAgICAgICAgICAqKmVycm9yKQ0KKysvKg0KKysgKiBQcml2YXRlOiBSZXR1 cm4gdGhlICJjdXJyZW50IiBVSUQuICBOb3RlIHRoYXQgdGhpcyBpcyBpbmhlcmVudGx5IHJhY3ks DQorKyAqIGFuZCB0aGUgdmFsdWUgbWF5IGFscmVhZHkgYmUgb2Jzb2xldGUgYnkgdGhlIHRpbWUg dGhpcyBmdW5jdGlvbiByZXR1cm5zOw0KKysgKiB0aGlzIGZ1bmN0aW9uIG9ubHkgZ3VhcmFudGVl cyB0aGF0IHRoZSBVSUQgd2FzIHZhbGlkIGF0IHNvbWUgcG9pbnQgZHVyaW5nDQorKyAqIGl0cyBl eGVjdXRpb24uDQorKyAqLw0KKytnaW50DQorK3BvbGtpdF91bml4X3Byb2Nlc3NfZ2V0X3JhY3lf dWlkX18gKFBvbGtpdFVuaXhQcm9jZXNzICAqcHJvY2VzcywNCisrICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgR0Vycm9yICAgICAgICAgICAgKiplcnJvcikNCisgew0KKyAgIGdp bnQgcmVzdWx0Ow0KKyAgIGdjaGFyICpjb250ZW50czsNCisgICBnY2hhciAqKmxpbmVzOw0KKysg IGd1aW50NjQgc3RhcnRfdGltZTsNCisgI2lmZGVmIEhBVkVfRlJFRUJTRA0KKyAgIHN0cnVjdCBr aW5mb19wcm9jIHA7DQorICNlbHNlDQorICAgZ2NoYXIgZmlsZW5hbWVbNjRdOw0KKyAgIGd1aW50 IG47DQorKyAgR0Vycm9yICpsb2NhbF9lcnJvcjsNCisgI2VuZGlmDQorIA0KKyAgIGdfcmV0dXJu X3ZhbF9pZl9mYWlsIChQT0xLSVRfSVNfVU5JWF9QUk9DRVNTIChwcm9jZXNzKSwgMCk7DQorQEAg LTY4OSw2ICs3MDgsNyBAQCBfcG9sa2l0X3VuaXhfcHJvY2Vzc19nZXRfb3duZXIgKFBvbGtpdFVu aXhQcm9jZXNzICAqcHJvY2VzcywNCisgICAgIH0NCisgDQorICAgcmVzdWx0ID0gcC5raV91aWQ7 DQorKyAgc3RhcnRfdGltZSA9IChndWludDY0KSBwLmtpX3N0YXJ0LnR2X3NlYzsNCisgI2Vsc2UN CisgDQorICAgLyogc2VlICdtYW4gcHJvYycgZm9yIGxheW91dCBvZiB0aGUgc3RhdHVzIGZpbGUN CitAQCAtNzIyLDE3ICs3NDIsMzcgQEAgX3BvbGtpdF91bml4X3Byb2Nlc3NfZ2V0X293bmVyIChQ b2xraXRVbml4UHJvY2VzcyAgKnByb2Nlc3MsDQorICAgICAgIGVsc2UNCisgICAgICAgICB7DQor ICAgICAgICAgICByZXN1bHQgPSByZWFsX3VpZDsNCistICAgICAgICAgIGdvdG8gb3V0Ow0KKysg ICAgICAgICAgZ290byBmb3VuZDsNCisgICAgICAgICB9DQorICAgICB9DQorLQ0KKyAgIGdfc2V0 X2Vycm9yIChlcnJvciwNCisgICAgICAgICAgICAgICAgUE9MS0lUX0VSUk9SLA0KKyAgICAgICAg ICAgICAgICBQT0xLSVRfRVJST1JfRkFJTEVELA0KKyAgICAgICAgICAgICAgICAiRGlkbid0IGZp bmQgYW55IGxpbmUgc3RhcnRpbmcgd2l0aCBgVWlkOicgaW4gZmlsZSAlcyIsDQorICAgICAgICAg ICAgICAgIGZpbGVuYW1lKTsNCisrICBnb3RvIG91dDsNCisrDQorK2ZvdW5kOg0KKysgIC8qIFRo ZSBVSUQgYW5kIHN0YXJ0IHRpbWUgYXJlLCBzYWRseSwgbm90IGF2YWlsYWJsZSBpbiBhIHNpbmds ZSBmaWxlLiAgU28sDQorKyAgICogcmVhZCB0aGUgVUlEIGZpcnN0LCBhbmQgdGhlbiB0aGUgc3Rh cnQgdGltZTsgaWYgdGhlIHN0YXJ0IHRpbWUgaXMgdGhlIHNhbWUNCisrICAgKiBiZWZvcmUgYW5k IGFmdGVyIHJlYWRpbmcgdGhlIFVJRCwgaXQgY291bGRuJ3QgaGF2ZSBjaGFuZ2VkLg0KKysgICAq Lw0KKysgIGxvY2FsX2Vycm9yID0gTlVMTDsNCisrICBzdGFydF90aW1lID0gZ2V0X3N0YXJ0X3Rp bWVfZm9yX3BpZCAocHJvY2Vzcy0+cGlkLCAmbG9jYWxfZXJyb3IpOw0KKysgIGlmIChsb2NhbF9l cnJvciAhPSBOVUxMKQ0KKysgICAgew0KKysgICAgICBnX3Byb3BhZ2F0ZV9lcnJvciAoZXJyb3Is IGxvY2FsX2Vycm9yKTsNCisrICAgICAgZ290byBvdXQ7DQorKyAgICB9DQorICNlbmRpZg0KKyAN CisrICBpZiAocHJvY2Vzcy0+c3RhcnRfdGltZSAhPSBzdGFydF90aW1lKQ0KKysgICAgew0KKysg ICAgICBnX3NldF9lcnJvciAoZXJyb3IsIFBPTEtJVF9FUlJPUiwgUE9MS0lUX0VSUk9SX0ZBSUxF RCwNCisrCQkgICAicHJvY2VzcyB3aXRoIFBJRCAlZCBoYXMgYmVlbiByZXBsYWNlZCIsIHByb2Nl c3MtPnBpZCk7DQorKyAgICAgIGdvdG8gb3V0Ow0KKysgICAgfQ0KKysNCisgb3V0Og0KKyAgIGdf c3RyZnJlZXYgKGxpbmVzKTsNCisgICBnX2ZyZWUgKGNvbnRlbnRzKTsNCitAQCAtNzQ0LDUgKzc4 NCw1IEBAIGdpbnQNCisgcG9sa2l0X3VuaXhfcHJvY2Vzc19nZXRfb3duZXIgKFBvbGtpdFVuaXhQ cm9jZXNzICAqcHJvY2VzcywNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdFcnJv ciAgICAgICAgICAgICoqZXJyb3IpDQorIHsNCistICByZXR1cm4gX3BvbGtpdF91bml4X3Byb2Nl c3NfZ2V0X293bmVyIChwcm9jZXNzLCBlcnJvcik7DQorKyAgcmV0dXJuIHBvbGtpdF91bml4X3By b2Nlc3NfZ2V0X3JhY3lfdWlkX18gKHByb2Nlc3MsIGVycm9yKTsNCisgfQ0KK2RpZmYgLS1naXQg YS9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kaW50ZXJhY3RpdmVhdXRob3JpdHkuYyBi L3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRpbnRlcmFjdGl2ZWF1dGhvcml0eS5jDQor aW5kZXggNzNkMGEwZS4uOTdhOGQ4MCAxMDA2NDQNCistLS0gYS9zcmMvcG9sa2l0YmFja2VuZC9w b2xraXRiYWNrZW5kaW50ZXJhY3RpdmVhdXRob3JpdHkuYw0KKysrKyBiL3NyYy9wb2xraXRiYWNr ZW5kL3BvbGtpdGJhY2tlbmRpbnRlcmFjdGl2ZWF1dGhvcml0eS5jDQorQEAgLTU2Myw3ICs1NjMs NyBAQCBsb2dfcmVzdWx0IChQb2xraXRCYWNrZW5kSW50ZXJhY3RpdmVBdXRob3JpdHkgICAgKmF1 dGhvcml0eSwNCisgICBpZiAocG9sa2l0X2F1dGhvcml6YXRpb25fcmVzdWx0X2dldF9pc19hdXRo b3JpemVkIChyZXN1bHQpKQ0KKyAgICAgbG9nX3Jlc3VsdF9zdHIgPSAiQUxMT1dJTkciOw0KKyAN CistICB1c2VyX29mX3N1YmplY3QgPSBwb2xraXRfYmFja2VuZF9zZXNzaW9uX21vbml0b3JfZ2V0 X3VzZXJfZm9yX3N1YmplY3QgKHByaXYtPnNlc3Npb25fbW9uaXRvciwgc3ViamVjdCwgTlVMTCk7 DQorKyAgdXNlcl9vZl9zdWJqZWN0ID0gcG9sa2l0X2JhY2tlbmRfc2Vzc2lvbl9tb25pdG9yX2dl dF91c2VyX2Zvcl9zdWJqZWN0IChwcml2LT5zZXNzaW9uX21vbml0b3IsIHN1YmplY3QsIE5VTEws IE5VTEwpOw0KKyANCisgICBzdWJqZWN0X3N0ciA9IHBvbGtpdF9zdWJqZWN0X3RvX3N0cmluZyAo c3ViamVjdCk7DQorIA0KK0BAIC04MzcsNiArODM3LDcgQEAgcG9sa2l0X2JhY2tlbmRfaW50ZXJh Y3RpdmVfYXV0aG9yaXR5X2NoZWNrX2F1dGhvcml6YXRpb24gKFBvbGtpdEJhY2tlbmRBdXRob3Jp dHkNCisgICBnY2hhciAqc3ViamVjdF9zdHI7DQorICAgUG9sa2l0SWRlbnRpdHkgKnVzZXJfb2Zf Y2FsbGVyOw0KKyAgIFBvbGtpdElkZW50aXR5ICp1c2VyX29mX3N1YmplY3Q7DQorKyAgZ2Jvb2xl YW4gdXNlcl9vZl9zdWJqZWN0X21hdGNoZXM7DQorICAgZ2NoYXIgKnVzZXJfb2ZfY2FsbGVyX3N0 cjsNCisgICBnY2hhciAqdXNlcl9vZl9zdWJqZWN0X3N0cjsNCisgICBQb2xraXRBdXRob3JpemF0 aW9uUmVzdWx0ICpyZXN1bHQ7DQorQEAgLTg4Miw3ICs4ODMsNyBAQCBwb2xraXRfYmFja2VuZF9p bnRlcmFjdGl2ZV9hdXRob3JpdHlfY2hlY2tfYXV0aG9yaXphdGlvbiAoUG9sa2l0QmFja2VuZEF1 dGhvcml0eQ0KKyAgICAgICAgICAgIGFjdGlvbl9pZCk7DQorIA0KKyAgIHVzZXJfb2ZfY2FsbGVy ID0gcG9sa2l0X2JhY2tlbmRfc2Vzc2lvbl9tb25pdG9yX2dldF91c2VyX2Zvcl9zdWJqZWN0IChw cml2LT5zZXNzaW9uX21vbml0b3IsDQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxlciwNCisrICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgY2FsbGVyLCBOVUxMLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZXJyb3IpOw0KKyAgIGlm IChlcnJvciAhPSBOVUxMKQ0KKyAgICAgew0KK0BAIC04OTcsNyArODk4LDcgQEAgcG9sa2l0X2Jh Y2tlbmRfaW50ZXJhY3RpdmVfYXV0aG9yaXR5X2NoZWNrX2F1dGhvcml6YXRpb24gKFBvbGtpdEJh Y2tlbmRBdXRob3JpdHkNCisgICBnX2RlYnVnICgiIHVzZXIgb2YgY2FsbGVyIGlzICVzIiwgdXNl cl9vZl9jYWxsZXJfc3RyKTsNCisgDQorICAgdXNlcl9vZl9zdWJqZWN0ID0gcG9sa2l0X2JhY2tl bmRfc2Vzc2lvbl9tb25pdG9yX2dldF91c2VyX2Zvcl9zdWJqZWN0IChwcml2LT5zZXNzaW9uX21v bml0b3IsDQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBzdWJqZWN0LA0KKysgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Vi amVjdCwgJnVzZXJfb2Zfc3ViamVjdF9tYXRjaGVzLA0KKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmVycm9y KTsNCisgICBpZiAoZXJyb3IgIT0gTlVMTCkNCisgICAgIHsNCitAQCAtOTI3LDcgKzkyOCwxMCBA QCBwb2xraXRfYmFja2VuZF9pbnRlcmFjdGl2ZV9hdXRob3JpdHlfY2hlY2tfYXV0aG9yaXphdGlv biAoUG9sa2l0QmFja2VuZEF1dGhvcml0eQ0KKyAgICAqIFdlIG9ubHkgYWxsb3cgdGhpcyBpZiwg YW5kIG9ubHkgaWYsDQorICAgICoNCisgICAgKiAgLSBwcm9jZXNzZXMgbWF5IGNoZWNrIGZvciBh bm90aGVyIHByb2Nlc3Mgb3duZWQgYnkgdGhlICpzYW1lKiB1c2VyIGJ1dCBub3QNCistICAgKiAg ICBpZiBkZXRhaWxzIGFyZSBwYXNzZWQgKG90aGVyd2lzZSB5b3UnZCBiZSBhYmxlIHRvIHNwb29m IHRoZSBkaWFsb2cpDQorKyAgICogICAgaWYgZGV0YWlscyBhcmUgcGFzc2VkIChvdGhlcndpc2Ug eW91J2QgYmUgYWJsZSB0byBzcG9vZiB0aGUgZGlhbG9nKTsNCisrICAgKiAgICB0aGUgY2FsbGVy IHN1cHBsaWVzIHRoZSB1c2VyX29mX3N1YmplY3QgdmFsdWUsIHNvIHdlIGFkZGl0aW9uYWxseQ0K KysgICAqICAgIHJlcXVpcmUgaXQgdG8gbWF0Y2ggYXQgbGVhc3QgYXQgb25lIHBvaW50IGluIHRp bWUgKHZpYQ0KKysgICAqICAgIHVzZXJfb2Zfc3ViamVjdF9tYXRjaGVzKS4NCisgICAgKg0KKyAg ICAqICAtIHByb2Nlc3NlcyBydW5uaW5nIGFzIHVpZCAwIG1heSBjaGVjayBhbnl0aGluZyBhbmQg cGFzcyBhbnkgZGV0YWlscw0KKyAgICAqDQorQEAgLTkzNSw3ICs5MzksOSBAQCBwb2xraXRfYmFj a2VuZF9pbnRlcmFjdGl2ZV9hdXRob3JpdHlfY2hlY2tfYXV0aG9yaXphdGlvbiAoUG9sa2l0QmFj a2VuZEF1dGhvcml0eQ0KKyAgICAqICAgIHRoZW4gYW55IHVpZCByZWZlcmVuY2VkIGJ5IHRoYXQg YW5ub3RhdGlvbiBpcyBhbHNvIGFsbG93ZWQgdG8gY2hlY2sNCisgICAgKiAgICB0byBjaGVjayBh bnl0aGluZyBhbmQgcGFzcyBhbnkgZGV0YWlscw0KKyAgICAqLw0KKy0gIGlmICghcG9sa2l0X2lk ZW50aXR5X2VxdWFsICh1c2VyX29mX2NhbGxlciwgdXNlcl9vZl9zdWJqZWN0KSB8fCBoYXNfZGV0 YWlscykNCisrICBpZiAoIXVzZXJfb2Zfc3ViamVjdF9tYXRjaGVzDQorKyAgICAgIHx8ICFwb2xr aXRfaWRlbnRpdHlfZXF1YWwgKHVzZXJfb2ZfY2FsbGVyLCB1c2VyX29mX3N1YmplY3QpDQorKyAg ICAgIHx8IGhhc19kZXRhaWxzKQ0KKyAgICAgew0KKyAgICAgICBpZiAoIW1heV9pZGVudGl0eV9j aGVja19hdXRob3JpemF0aW9uIChpbnRlcmFjdGl2ZV9hdXRob3JpdHksIGFjdGlvbl9pZCwgdXNl cl9vZl9jYWxsZXIpKQ0KKyAgICAgICAgIHsNCitAQCAtMTEwMiw5ICsxMTA4LDEwIEBAIGNoZWNr X2F1dGhvcml6YXRpb25fc3luYyAoUG9sa2l0QmFja2VuZEF1dGhvcml0eSAgICAgICAgICphdXRo b3JpdHksDQorICAgICAgIGdvdG8gb3V0Ow0KKyAgICAgfQ0KKyANCistICAvKiBldmVyeSBzdWJq ZWN0IGhhcyBhIHVzZXIgKi8NCisrICAvKiBldmVyeSBzdWJqZWN0IGhhcyBhIHVzZXI7IHRoaXMg aXMgc3VwcGxpZWQgYnkgdGhlIGNsaWVudCwgc28gd2UgcmVseQ0KKysgICAqIG9uIHRoZSBjYWxs ZXIgdG8gdmFsaWRhdGUgaXRzIGFjY2VwdGFiaWxpdHkuICovDQorICAgdXNlcl9vZl9zdWJqZWN0 ID0gcG9sa2l0X2JhY2tlbmRfc2Vzc2lvbl9tb25pdG9yX2dldF91c2VyX2Zvcl9zdWJqZWN0IChw cml2LT5zZXNzaW9uX21vbml0b3IsDQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdWJqZWN0LA0KKysgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgc3ViamVjdCwgTlVMTCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yKTsNCisg ICBpZiAodXNlcl9vZl9zdWJqZWN0ID09IE5VTEwpDQorICAgICAgIGdvdG8gb3V0Ow0KK0BAIC0y MzE5LDYgKzIzMjYsNyBAQCBwb2xraXRfYmFja2VuZF9pbnRlcmFjdGl2ZV9hdXRob3JpdHlfcmVn aXN0ZXJfYXV0aGVudGljYXRpb25fYWdlbnQgKFBvbGtpdEJhY2tlbg0KKyAgIFBvbGtpdFN1Ympl Y3QgKnNlc3Npb25fZm9yX2NhbGxlcjsNCisgICBQb2xraXRJZGVudGl0eSAqdXNlcl9vZl9jYWxs ZXI7DQorICAgUG9sa2l0SWRlbnRpdHkgKnVzZXJfb2Zfc3ViamVjdDsNCisrICBnYm9vbGVhbiB1 c2VyX29mX3N1YmplY3RfbWF0Y2hlczsNCisgICBBdXRoZW50aWNhdGlvbkFnZW50ICphZ2VudDsN CisgICBnYm9vbGVhbiByZXQ7DQorICAgZ2NoYXIgKmNhbGxlcl9jbWRsaW5lOw0KK0BAIC0yMzcx LDcgKzIzNzksNyBAQCBwb2xraXRfYmFja2VuZF9pbnRlcmFjdGl2ZV9hdXRob3JpdHlfcmVnaXN0 ZXJfYXV0aGVudGljYXRpb25fYWdlbnQgKFBvbGtpdEJhY2tlbg0KKyAgICAgICBnb3RvIG91dDsN CisgICAgIH0NCisgDQorLSAgdXNlcl9vZl9jYWxsZXIgPSBwb2xraXRfYmFja2VuZF9zZXNzaW9u X21vbml0b3JfZ2V0X3VzZXJfZm9yX3N1YmplY3QgKHByaXYtPnNlc3Npb25fbW9uaXRvciwgY2Fs bGVyLCBOVUxMKTsNCisrICB1c2VyX29mX2NhbGxlciA9IHBvbGtpdF9iYWNrZW5kX3Nlc3Npb25f bW9uaXRvcl9nZXRfdXNlcl9mb3Jfc3ViamVjdCAocHJpdi0+c2Vzc2lvbl9tb25pdG9yLCBjYWxs ZXIsIE5VTEwsIE5VTEwpOw0KKyAgIGlmICh1c2VyX29mX2NhbGxlciA9PSBOVUxMKQ0KKyAgICAg ew0KKyAgICAgICBnX3NldF9lcnJvciAoZXJyb3IsDQorQEAgLTIzODAsNyArMjM4OCw3IEBAIHBv bGtpdF9iYWNrZW5kX2ludGVyYWN0aXZlX2F1dGhvcml0eV9yZWdpc3Rlcl9hdXRoZW50aWNhdGlv bl9hZ2VudCAoUG9sa2l0QmFja2VuDQorICAgICAgICAgICAgICAgICAgICAiQ2Fubm90IGRldGVy bWluZSB1c2VyIG9mIGNhbGxlciIpOw0KKyAgICAgICBnb3RvIG91dDsNCisgICAgIH0NCistICB1 c2VyX29mX3N1YmplY3QgPSBwb2xraXRfYmFja2VuZF9zZXNzaW9uX21vbml0b3JfZ2V0X3VzZXJf Zm9yX3N1YmplY3QgKHByaXYtPnNlc3Npb25fbW9uaXRvciwgc3ViamVjdCwgTlVMTCk7DQorKyAg dXNlcl9vZl9zdWJqZWN0ID0gcG9sa2l0X2JhY2tlbmRfc2Vzc2lvbl9tb25pdG9yX2dldF91c2Vy X2Zvcl9zdWJqZWN0IChwcml2LT5zZXNzaW9uX21vbml0b3IsIHN1YmplY3QsICZ1c2VyX29mX3N1 YmplY3RfbWF0Y2hlcywgTlVMTCk7DQorICAgaWYgKHVzZXJfb2Zfc3ViamVjdCA9PSBOVUxMKQ0K KyAgICAgew0KKyAgICAgICBnX3NldF9lcnJvciAoZXJyb3IsDQorQEAgLTIzODksNyArMjM5Nyw4 IEBAIHBvbGtpdF9iYWNrZW5kX2ludGVyYWN0aXZlX2F1dGhvcml0eV9yZWdpc3Rlcl9hdXRoZW50 aWNhdGlvbl9hZ2VudCAoUG9sa2l0QmFja2VuDQorICAgICAgICAgICAgICAgICAgICAiQ2Fubm90 IGRldGVybWluZSB1c2VyIG9mIHN1YmplY3QiKTsNCisgICAgICAgZ290byBvdXQ7DQorICAgICB9 DQorLSAgaWYgKCFwb2xraXRfaWRlbnRpdHlfZXF1YWwgKHVzZXJfb2ZfY2FsbGVyLCB1c2VyX29m X3N1YmplY3QpKQ0KKysgIGlmICghdXNlcl9vZl9zdWJqZWN0X21hdGNoZXMNCisrICAgICAgfHwg IXBvbGtpdF9pZGVudGl0eV9lcXVhbCAodXNlcl9vZl9jYWxsZXIsIHVzZXJfb2Zfc3ViamVjdCkp DQorICAgICB7DQorICAgICAgIGlmIChQT0xLSVRfSVNfVU5JWF9VU0VSICh1c2VyX29mX2NhbGxl cikgJiYgcG9sa2l0X3VuaXhfdXNlcl9nZXRfdWlkIChQT0xLSVRfVU5JWF9VU0VSICh1c2VyX29m X2NhbGxlcikpID09IDApDQorICAgICAgICAgew0KK0BAIC0yNDgyLDYgKzI0OTEsNyBAQCBwb2xr aXRfYmFja2VuZF9pbnRlcmFjdGl2ZV9hdXRob3JpdHlfdW5yZWdpc3Rlcl9hdXRoZW50aWNhdGlv bl9hZ2VudCAoUG9sa2l0QmFjaw0KKyAgIFBvbGtpdFN1YmplY3QgKnNlc3Npb25fZm9yX2NhbGxl cjsNCisgICBQb2xraXRJZGVudGl0eSAqdXNlcl9vZl9jYWxsZXI7DQorICAgUG9sa2l0SWRlbnRp dHkgKnVzZXJfb2Zfc3ViamVjdDsNCisrICBnYm9vbGVhbiB1c2VyX29mX3N1YmplY3RfbWF0Y2hl czsNCisgICBBdXRoZW50aWNhdGlvbkFnZW50ICphZ2VudDsNCisgICBnYm9vbGVhbiByZXQ7DQor ICAgZ2NoYXIgKnNjb3BlX3N0cjsNCitAQCAtMjUzMCw3ICsyNTQwLDcgQEAgcG9sa2l0X2JhY2tl bmRfaW50ZXJhY3RpdmVfYXV0aG9yaXR5X3VucmVnaXN0ZXJfYXV0aGVudGljYXRpb25fYWdlbnQg KFBvbGtpdEJhY2sNCisgICAgICAgZ290byBvdXQ7DQorICAgICB9DQorIA0KKy0gIHVzZXJfb2Zf Y2FsbGVyID0gcG9sa2l0X2JhY2tlbmRfc2Vzc2lvbl9tb25pdG9yX2dldF91c2VyX2Zvcl9zdWJq ZWN0IChwcml2LT5zZXNzaW9uX21vbml0b3IsIGNhbGxlciwgTlVMTCk7DQorKyAgdXNlcl9vZl9j YWxsZXIgPSBwb2xraXRfYmFja2VuZF9zZXNzaW9uX21vbml0b3JfZ2V0X3VzZXJfZm9yX3N1Ympl Y3QgKHByaXYtPnNlc3Npb25fbW9uaXRvciwgY2FsbGVyLCBOVUxMLCBOVUxMKTsNCisgICBpZiAo dXNlcl9vZl9jYWxsZXIgPT0gTlVMTCkNCisgICAgIHsNCisgICAgICAgZ19zZXRfZXJyb3IgKGVy cm9yLA0KK0BAIC0yNTM5LDcgKzI1NDksNyBAQCBwb2xraXRfYmFja2VuZF9pbnRlcmFjdGl2ZV9h dXRob3JpdHlfdW5yZWdpc3Rlcl9hdXRoZW50aWNhdGlvbl9hZ2VudCAoUG9sa2l0QmFjaw0KKyAg ICAgICAgICAgICAgICAgICAgIkNhbm5vdCBkZXRlcm1pbmUgdXNlciBvZiBjYWxsZXIiKTsNCisg ICAgICAgZ290byBvdXQ7DQorICAgICB9DQorLSAgdXNlcl9vZl9zdWJqZWN0ID0gcG9sa2l0X2Jh Y2tlbmRfc2Vzc2lvbl9tb25pdG9yX2dldF91c2VyX2Zvcl9zdWJqZWN0IChwcml2LT5zZXNzaW9u X21vbml0b3IsIHN1YmplY3QsIE5VTEwpOw0KKysgIHVzZXJfb2Zfc3ViamVjdCA9IHBvbGtpdF9i YWNrZW5kX3Nlc3Npb25fbW9uaXRvcl9nZXRfdXNlcl9mb3Jfc3ViamVjdCAocHJpdi0+c2Vzc2lv bl9tb25pdG9yLCBzdWJqZWN0LCAmdXNlcl9vZl9zdWJqZWN0X21hdGNoZXMsIE5VTEwpOw0KKyAg IGlmICh1c2VyX29mX3N1YmplY3QgPT0gTlVMTCkNCisgICAgIHsNCisgICAgICAgZ19zZXRfZXJy b3IgKGVycm9yLA0KK0BAIC0yNTQ4LDcgKzI1NTgsOCBAQCBwb2xraXRfYmFja2VuZF9pbnRlcmFj dGl2ZV9hdXRob3JpdHlfdW5yZWdpc3Rlcl9hdXRoZW50aWNhdGlvbl9hZ2VudCAoUG9sa2l0QmFj aw0KKyAgICAgICAgICAgICAgICAgICAgIkNhbm5vdCBkZXRlcm1pbmUgdXNlciBvZiBzdWJqZWN0 Iik7DQorICAgICAgIGdvdG8gb3V0Ow0KKyAgICAgfQ0KKy0gIGlmICghcG9sa2l0X2lkZW50aXR5 X2VxdWFsICh1c2VyX29mX2NhbGxlciwgdXNlcl9vZl9zdWJqZWN0KSkNCisrICBpZiAoIXVzZXJf b2Zfc3ViamVjdF9tYXRjaGVzDQorKyAgICAgIHx8ICFwb2xraXRfaWRlbnRpdHlfZXF1YWwgKHVz ZXJfb2ZfY2FsbGVyLCB1c2VyX29mX3N1YmplY3QpKQ0KKyAgICAgew0KKyAgICAgICBpZiAoUE9M S0lUX0lTX1VOSVhfVVNFUiAodXNlcl9vZl9jYWxsZXIpICYmIHBvbGtpdF91bml4X3VzZXJfZ2V0 X3VpZCAoUE9MS0lUX1VOSVhfVVNFUiAodXNlcl9vZl9jYWxsZXIpKSA9PSAwKQ0KKyAgICAgICAg IHsNCitAQCAtMjY1OCw3ICsyNjY5LDcgQEAgcG9sa2l0X2JhY2tlbmRfaW50ZXJhY3RpdmVfYXV0 aG9yaXR5X2F1dGhlbnRpY2F0aW9uX2FnZW50X3Jlc3BvbnNlIChQb2xraXRCYWNrZW4NCisgICAg ICAgICAgICBpZGVudGl0eV9zdHIpOw0KKyANCisgICB1c2VyX29mX2NhbGxlciA9IHBvbGtpdF9i YWNrZW5kX3Nlc3Npb25fbW9uaXRvcl9nZXRfdXNlcl9mb3Jfc3ViamVjdCAocHJpdi0+c2Vzc2lv bl9tb25pdG9yLA0KKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxsZXIsDQorKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNh bGxlciwgTlVMTCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3IpOw0KKyAgIGlmICh1c2VyX29mX2Nh bGxlciA9PSBOVUxMKQ0KKyAgICAgZ290byBvdXQ7DQorZGlmZiAtLWdpdCBhL3NyYy9wb2xraXRi YWNrZW5kL3BvbGtpdGJhY2tlbmRzZXNzaW9ubW9uaXRvci1zeXN0ZW1kLmMgYi9zcmMvcG9sa2l0 YmFja2VuZC9wb2xraXRiYWNrZW5kc2Vzc2lvbm1vbml0b3Itc3lzdGVtZC5jDQoraW5kZXggNmJk NTE3YS4uNzczMjU2ZSAxMDA2NDQNCistLS0gYS9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNr ZW5kc2Vzc2lvbm1vbml0b3Itc3lzdGVtZC5jDQorKysrIGIvc3JjL3BvbGtpdGJhY2tlbmQvcG9s a2l0YmFja2VuZHNlc3Npb25tb25pdG9yLXN5c3RlbWQuYw0KK0BAIC0yOSw2ICsyOSw3IEBADQor ICNpbmNsdWRlIDxzdGRsaWIuaD4NCisgDQorICNpbmNsdWRlIDxwb2xraXQvcG9sa2l0Lmg+DQor KyNpbmNsdWRlIDxwb2xraXQvcG9sa2l0cHJpdmF0ZS5oPg0KKyAjaW5jbHVkZSAicG9sa2l0YmFj a2VuZHNlc3Npb25tb25pdG9yLmgiDQorIA0KKyAvKiA8aW50ZXJuYWw+DQorQEAgLTI0NiwyNiAr MjQ3LDQwIEBAIHBvbGtpdF9iYWNrZW5kX3Nlc3Npb25fbW9uaXRvcl9nZXRfc2Vzc2lvbnMgKFBv bGtpdEJhY2tlbmRTZXNzaW9uTW9uaXRvciAqbW9uaXRvDQorICAqIHBvbGtpdF9iYWNrZW5kX3Nl c3Npb25fbW9uaXRvcl9nZXRfdXNlcjoNCisgICogQG1vbml0b3I6IEEgI1BvbGtpdEJhY2tlbmRT ZXNzaW9uTW9uaXRvci4NCisgICogQHN1YmplY3Q6IEEgI1BvbGtpdFN1YmplY3QuDQorKyAqIEBy ZXN1bHRfbWF0Y2hlczogSWYgbm90ICVOVUxMLCBzZXQgdG8gaW5kaWNhdGUgd2hldGhlciB0aGUg cmV0dXJuIHZhbHVlIG1hdGNoZXMgY3VycmVudCAoUkFDWSkgc3RhdGUuDQorICAqIEBlcnJvcjog UmV0dXJuIGxvY2F0aW9uIGZvciBlcnJvci4NCisgICoNCisgICogR2V0cyB0aGUgdXNlciBjb3Jy ZXNwb25kaW5nIHRvIEBzdWJqZWN0IG9yICVOVUxMIGlmIG5vIHVzZXIgZXhpc3RzLg0KKyAgKg0K KysgKiBOT1RFOiBGb3IgYSAjUG9sa2l0VW5peFByb2Nlc3MsIHRoZSBVSUQgaXMgcmVhZCBmcm9t IEBzdWJqZWN0ICh3aGljaCBtYXkNCisrICogY29tZSBmcm9tIGUuZy4gYSBELUJ1cyBjbGllbnQp LCBzbyBpdCBtYXkgbm90IGNvcnJlc3BvbmQgdG8gdGhlIGFjdHVhbCBVSUQNCisrICogb2YgdGhl IHJlZmVyZW5jZWQgcHJvY2VzcyAoYXQgYW55IHBvaW50IGluIHRpbWUpLiAgVGhpcyBpcyBpbmRp Y2F0ZWQgYnkNCisrICogc2V0dGluZyBAcmVzdWx0X21hdGNoZXMgdG8gJUZBTFNFOyB0aGUgY2Fs bGVyIG1heSByZWplY3Qgc3VjaCBzdWJqZWN0cyBvcg0KKysgKiByZXF1aXJlIGFkZGl0aW9uYWwg cHJpdmlsZWdlcy4gQHJlc3VsdF9tYXRjaGVzID09ICVUUlVFIG9ubHkgaW5kaWNhdGVzIHRoYXQN CisrICogdGhlIFVJRCBtYXRjaGVkIHRoZSB1bmRlcmx5aW5nIHByb2Nlc3MgYXQgT05FIHBvaW50 IGluIHRpbWUsIGl0IG1heSBub3QgbWF0Y2gNCisrICogbGF0ZXIuDQorKyAqDQorICAqIFJldHVy bnM6ICVOVUxMIGlmIEBlcnJvciBpcyBzZXQgb3RoZXJ3aXNlIGEgI1BvbGtpdFVuaXhVc2VyIHRo YXQgc2hvdWxkIGJlIGZyZWVkIHdpdGggZ19vYmplY3RfdW5yZWYoKS4NCisgICovDQorIFBvbGtp dElkZW50aXR5ICoNCisgcG9sa2l0X2JhY2tlbmRfc2Vzc2lvbl9tb25pdG9yX2dldF91c2VyX2Zv cl9zdWJqZWN0IChQb2xraXRCYWNrZW5kU2Vzc2lvbk1vbml0b3IgICptb25pdG9yLA0KKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBvbGtpdFN1 YmplY3QgICAgICAgICAgICAgICAgKnN1YmplY3QsDQorKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2Jvb2xlYW4gICAgICAgICAgICAgICAgICAg ICAqcmVzdWx0X21hdGNoZXMsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgR0Vycm9yICAgICAgICAgICAgICAgICAgICAgICoqZXJyb3IpDQor IHsNCisgICBQb2xraXRJZGVudGl0eSAqcmV0Ow0KKy0gIGd1aW50MzIgdWlkOw0KKysgIGdib29s ZWFuIG1hdGNoZXM7DQorIA0KKyAgIHJldCA9IE5VTEw7DQorKyAgbWF0Y2hlcyA9IEZBTFNFOw0K KyANCisgICBpZiAoUE9MS0lUX0lTX1VOSVhfUFJPQ0VTUyAoc3ViamVjdCkpDQorICAgICB7DQor LSAgICAgIHVpZCA9IHBvbGtpdF91bml4X3Byb2Nlc3NfZ2V0X3VpZCAoUE9MS0lUX1VOSVhfUFJP Q0VTUyAoc3ViamVjdCkpOw0KKy0gICAgICBpZiAoKGdpbnQpIHVpZCA9PSAtMSkNCisrICAgICAg Z2ludCBzdWJqZWN0X3VpZCwgY3VycmVudF91aWQ7DQorKyAgICAgIEdFcnJvciAqbG9jYWxfZXJy b3I7DQorKw0KKysgICAgICBzdWJqZWN0X3VpZCA9IHBvbGtpdF91bml4X3Byb2Nlc3NfZ2V0X3Vp ZCAoUE9MS0lUX1VOSVhfUFJPQ0VTUyAoc3ViamVjdCkpOw0KKysgICAgICBpZiAoc3ViamVjdF91 aWQgPT0gLTEpDQorICAgICAgICAgew0KKyAgICAgICAgICAgZ19zZXRfZXJyb3IgKGVycm9yLA0K KyAgICAgICAgICAgICAgICAgICAgICAgIFBPTEtJVF9FUlJPUiwNCitAQCAtMjczLDE0ICsyODgs MjQgQEAgcG9sa2l0X2JhY2tlbmRfc2Vzc2lvbl9tb25pdG9yX2dldF91c2VyX2Zvcl9zdWJqZWN0 IChQb2xraXRCYWNrZW5kU2Vzc2lvbk1vbml0b3INCisgICAgICAgICAgICAgICAgICAgICAgICAi VW5peCBwcm9jZXNzIHN1YmplY3QgZG9lcyBub3QgaGF2ZSB1aWQgc2V0Iik7DQorICAgICAgICAg ICBnb3RvIG91dDsNCisgICAgICAgICB9DQorLSAgICAgIHJldCA9IHBvbGtpdF91bml4X3VzZXJf bmV3ICh1aWQpOw0KKysgICAgICBsb2NhbF9lcnJvciA9IE5VTEw7DQorKyAgICAgIGN1cnJlbnRf dWlkID0gcG9sa2l0X3VuaXhfcHJvY2Vzc19nZXRfcmFjeV91aWRfXyAoUE9MS0lUX1VOSVhfUFJP Q0VTUyAoc3ViamVjdCksICZsb2NhbF9lcnJvcik7DQorKyAgICAgIGlmIChsb2NhbF9lcnJvciAh PSBOVUxMKQ0KKysJew0KKysJICBnX3Byb3BhZ2F0ZV9lcnJvciAoZXJyb3IsIGxvY2FsX2Vycm9y KTsNCisrCSAgZ290byBvdXQ7DQorKwl9DQorKyAgICAgIHJldCA9IHBvbGtpdF91bml4X3VzZXJf bmV3IChzdWJqZWN0X3VpZCk7DQorKyAgICAgIG1hdGNoZXMgPSAoc3ViamVjdF91aWQgPT0gY3Vy cmVudF91aWQpOw0KKyAgICAgfQ0KKyAgIGVsc2UgaWYgKFBPTEtJVF9JU19TWVNURU1fQlVTX05B TUUgKHN1YmplY3QpKQ0KKyAgICAgew0KKyAgICAgICByZXQgPSAoUG9sa2l0SWRlbnRpdHkqKXBv bGtpdF9zeXN0ZW1fYnVzX25hbWVfZ2V0X3VzZXJfc3luYyAoUE9MS0lUX1NZU1RFTV9CVVNfTkFN RSAoc3ViamVjdCksIE5VTEwsIGVycm9yKTsNCisrICAgICAgbWF0Y2hlcyA9IFRSVUU7DQorICAg ICB9DQorICAgZWxzZSBpZiAoUE9MS0lUX0lTX1VOSVhfU0VTU0lPTiAoc3ViamVjdCkpDQorICAg ICB7DQorKyAgICAgIHVpZF90IHVpZDsNCisgDQorICAgICAgIGlmIChzZF9zZXNzaW9uX2dldF91 aWQgKHBvbGtpdF91bml4X3Nlc3Npb25fZ2V0X3Nlc3Npb25faWQgKFBPTEtJVF9VTklYX1NFU1NJ T04gKHN1YmplY3QpKSwgJnVpZCkgPCAwKQ0KKyAgICAgICAgIHsNCitAQCAtMjkyLDkgKzMxNywx NCBAQCBwb2xraXRfYmFja2VuZF9zZXNzaW9uX21vbml0b3JfZ2V0X3VzZXJfZm9yX3N1YmplY3Qg KFBvbGtpdEJhY2tlbmRTZXNzaW9uTW9uaXRvcg0KKyAgICAgICAgIH0NCisgDQorICAgICAgIHJl dCA9IHBvbGtpdF91bml4X3VzZXJfbmV3ICh1aWQpOw0KKysgICAgICBtYXRjaGVzID0gVFJVRTsN CisgICAgIH0NCisgDQorICBvdXQ6DQorKyAgaWYgKHJlc3VsdF9tYXRjaGVzICE9IE5VTEwpDQor KyAgICB7DQorKyAgICAgICpyZXN1bHRfbWF0Y2hlcyA9IG1hdGNoZXM7DQorKyAgICB9DQorICAg cmV0dXJuIHJldDsNCisgfQ0KKyANCitkaWZmIC0tZ2l0IGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9s a2l0YmFja2VuZHNlc3Npb25tb25pdG9yLmMgYi9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNr ZW5kc2Vzc2lvbm1vbml0b3IuYw0KK2luZGV4IGUxYTlhYjMuLmVkMzA3NTUgMTAwNjQ0DQorLS0t IGEvc3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZHNlc3Npb25tb25pdG9yLmMNCisrKysg Yi9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kc2Vzc2lvbm1vbml0b3IuYw0KK0BAIC0y Nyw2ICsyNyw3IEBADQorICNpbmNsdWRlIDxnbGliL2dzdGRpby5oPg0KKyANCisgI2luY2x1ZGUg PHBvbGtpdC9wb2xraXQuaD4NCisrI2luY2x1ZGUgPHBvbGtpdC9wb2xraXRwcml2YXRlLmg+DQor ICNpbmNsdWRlICJwb2xraXRiYWNrZW5kc2Vzc2lvbm1vbml0b3IuaCINCisgDQorICNkZWZpbmUg Q0tEQl9QQVRIICIvdmFyL3J1bi9Db25zb2xlS2l0L2RhdGFiYXNlIg0KK0BAIC0yNzMsMjggKzI3 NCw0MCBAQCBwb2xraXRfYmFja2VuZF9zZXNzaW9uX21vbml0b3JfZ2V0X3Nlc3Npb25zIChQb2xr aXRCYWNrZW5kU2Vzc2lvbk1vbml0b3IgKm1vbml0bw0KKyAgKiBwb2xraXRfYmFja2VuZF9zZXNz aW9uX21vbml0b3JfZ2V0X3VzZXI6DQorICAqIEBtb25pdG9yOiBBICNQb2xraXRCYWNrZW5kU2Vz c2lvbk1vbml0b3IuDQorICAqIEBzdWJqZWN0OiBBICNQb2xraXRTdWJqZWN0Lg0KKysgKiBAcmVz dWx0X21hdGNoZXM6IElmIG5vdCAlTlVMTCwgc2V0IHRvIGluZGljYXRlIHdoZXRoZXIgdGhlIHJl dHVybiB2YWx1ZSBtYXRjaGVzIGN1cnJlbnQgKFJBQ1kpIHN0YXRlLg0KKyAgKiBAZXJyb3I6IFJl dHVybiBsb2NhdGlvbiBmb3IgZXJyb3IuDQorICAqDQorICAqIEdldHMgdGhlIHVzZXIgY29ycmVz cG9uZGluZyB0byBAc3ViamVjdCBvciAlTlVMTCBpZiBubyB1c2VyIGV4aXN0cy4NCisgICoNCisr ICogTk9URTogRm9yIGEgI1BvbGtpdFVuaXhQcm9jZXNzLCB0aGUgVUlEIGlzIHJlYWQgZnJvbSBA c3ViamVjdCAod2hpY2ggbWF5DQorKyAqIGNvbWUgZnJvbSBlLmcuIGEgRC1CdXMgY2xpZW50KSwg c28gaXQgbWF5IG5vdCBjb3JyZXNwb25kIHRvIHRoZSBhY3R1YWwgVUlEDQorKyAqIG9mIHRoZSBy ZWZlcmVuY2VkIHByb2Nlc3MgKGF0IGFueSBwb2ludCBpbiB0aW1lKS4gIFRoaXMgaXMgaW5kaWNh dGVkIGJ5DQorKyAqIHNldHRpbmcgQHJlc3VsdF9tYXRjaGVzIHRvICVGQUxTRTsgdGhlIGNhbGxl ciBtYXkgcmVqZWN0IHN1Y2ggc3ViamVjdHMgb3INCisrICogcmVxdWlyZSBhZGRpdGlvbmFsIHBy aXZpbGVnZXMuIEByZXN1bHRfbWF0Y2hlcyA9PSAlVFJVRSBvbmx5IGluZGljYXRlcyB0aGF0DQor KyAqIHRoZSBVSUQgbWF0Y2hlZCB0aGUgdW5kZXJseWluZyBwcm9jZXNzIGF0IE9ORSBwb2ludCBp biB0aW1lLCBpdCBtYXkgbm90IG1hdGNoDQorKyAqIGxhdGVyLg0KKysgKg0KKyAgKiBSZXR1cm5z OiAlTlVMTCBpZiBAZXJyb3IgaXMgc2V0IG90aGVyd2lzZSBhICNQb2xraXRVbml4VXNlciB0aGF0 IHNob3VsZCBiZSBmcmVlZCB3aXRoIGdfb2JqZWN0X3VucmVmKCkuDQorICAqLw0KKyBQb2xraXRJ ZGVudGl0eSAqDQorIHBvbGtpdF9iYWNrZW5kX3Nlc3Npb25fbW9uaXRvcl9nZXRfdXNlcl9mb3Jf c3ViamVjdCAoUG9sa2l0QmFja2VuZFNlc3Npb25Nb25pdG9yICAqbW9uaXRvciwNCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQb2xraXRTdWJq ZWN0ICAgICAgICAgICAgICAgICpzdWJqZWN0LA0KKysgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdib29sZWFuICAgICAgICAgICAgICAgICAgICAg KnJlc3VsdF9tYXRjaGVzLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIEdFcnJvciAgICAgICAgICAgICAgICAgICAgICAqKmVycm9yKQ0KKyB7 DQorICAgUG9sa2l0SWRlbnRpdHkgKnJldDsNCisrICBnYm9vbGVhbiBtYXRjaGVzOw0KKyAgIEdF cnJvciAqbG9jYWxfZXJyb3I7DQorLSAgZ2NoYXIgKmdyb3VwOw0KKy0gIGd1aW50MzIgdWlkOw0K KyANCisgICByZXQgPSBOVUxMOw0KKysgIG1hdGNoZXMgPSBGQUxTRTsNCisgDQorICAgaWYgKFBP TEtJVF9JU19VTklYX1BST0NFU1MgKHN1YmplY3QpKQ0KKyAgICAgew0KKy0gICAgICB1aWQgPSBw b2xraXRfdW5peF9wcm9jZXNzX2dldF91aWQgKFBPTEtJVF9VTklYX1BST0NFU1MgKHN1YmplY3Qp KTsNCistICAgICAgaWYgKChnaW50KSB1aWQgPT0gLTEpDQorKyAgICAgIGdpbnQgc3ViamVjdF91 aWQsIGN1cnJlbnRfdWlkOw0KKysNCisrICAgICAgc3ViamVjdF91aWQgPSBwb2xraXRfdW5peF9w cm9jZXNzX2dldF91aWQgKFBPTEtJVF9VTklYX1BST0NFU1MgKHN1YmplY3QpKTsNCisrICAgICAg aWYgKHN1YmplY3RfdWlkID09IC0xKQ0KKyAgICAgICAgIHsNCisgICAgICAgICAgIGdfc2V0X2Vy cm9yIChlcnJvciwNCisgICAgICAgICAgICAgICAgICAgICAgICBQT0xLSVRfRVJST1IsDQorQEAg LTMwMiwxNCArMzE1LDI2IEBAIHBvbGtpdF9iYWNrZW5kX3Nlc3Npb25fbW9uaXRvcl9nZXRfdXNl cl9mb3Jfc3ViamVjdCAoUG9sa2l0QmFja2VuZFNlc3Npb25Nb25pdG9yDQorICAgICAgICAgICAg ICAgICAgICAgICAgIlVuaXggcHJvY2VzcyBzdWJqZWN0IGRvZXMgbm90IGhhdmUgdWlkIHNldCIp Ow0KKyAgICAgICAgICAgZ290byBvdXQ7DQorICAgICAgICAgfQ0KKy0gICAgICByZXQgPSBwb2xr aXRfdW5peF91c2VyX25ldyAodWlkKTsNCisrICAgICAgbG9jYWxfZXJyb3IgPSBOVUxMOw0KKysg ICAgICBjdXJyZW50X3VpZCA9IHBvbGtpdF91bml4X3Byb2Nlc3NfZ2V0X3JhY3lfdWlkX18gKFBP TEtJVF9VTklYX1BST0NFU1MgKHN1YmplY3QpLCAmbG9jYWxfZXJyb3IpOw0KKysgICAgICBpZiAo bG9jYWxfZXJyb3IgIT0gTlVMTCkNCisrCXsNCisrCSAgZ19wcm9wYWdhdGVfZXJyb3IgKGVycm9y LCBsb2NhbF9lcnJvcik7DQorKwkgIGdvdG8gb3V0Ow0KKysJfQ0KKysgICAgICByZXQgPSBwb2xr aXRfdW5peF91c2VyX25ldyAoc3ViamVjdF91aWQpOw0KKysgICAgICBtYXRjaGVzID0gKHN1Ympl Y3RfdWlkID09IGN1cnJlbnRfdWlkKTsNCisgICAgIH0NCisgICBlbHNlIGlmIChQT0xLSVRfSVNf U1lTVEVNX0JVU19OQU1FIChzdWJqZWN0KSkNCisgICAgIHsNCisgICAgICAgcmV0ID0gKFBvbGtp dElkZW50aXR5Kilwb2xraXRfc3lzdGVtX2J1c19uYW1lX2dldF91c2VyX3N5bmMgKFBPTEtJVF9T WVNURU1fQlVTX05BTUUgKHN1YmplY3QpLCBOVUxMLCBlcnJvcik7DQorKyAgICAgIG1hdGNoZXMg PSBUUlVFOw0KKyAgICAgfQ0KKyAgIGVsc2UgaWYgKFBPTEtJVF9JU19VTklYX1NFU1NJT04gKHN1 YmplY3QpKQ0KKyAgICAgew0KKysgICAgICBnaW50IHVpZDsNCisrICAgICAgZ2NoYXIgKmdyb3Vw Ow0KKysNCisgICAgICAgaWYgKCFlbnN1cmVfZGF0YWJhc2UgKG1vbml0b3IsIGVycm9yKSkNCisg ICAgICAgICB7DQorICAgICAgICAgICBnX3ByZWZpeF9lcnJvciAoZXJyb3IsICJFcnJvciBnZXR0 aW5nIHVzZXIgZm9yIHNlc3Npb246IEVycm9yIGVuc3VyaW5nIENLIGRhdGFiYXNlIGF0ICIgQ0tE Ql9QQVRIICI6ICIpOw0KK0BAIC0zMjgsOSArMzUzLDE0IEBAIHBvbGtpdF9iYWNrZW5kX3Nlc3Np b25fbW9uaXRvcl9nZXRfdXNlcl9mb3Jfc3ViamVjdCAoUG9sa2l0QmFja2VuZFNlc3Npb25Nb25p dG9yDQorICAgICAgIGdfZnJlZSAoZ3JvdXApOw0KKyANCisgICAgICAgcmV0ID0gcG9sa2l0X3Vu aXhfdXNlcl9uZXcgKHVpZCk7DQorKyAgICAgIG1hdGNoZXMgPSBUUlVFOw0KKyAgICAgfQ0KKyAN CisgIG91dDoNCisrICBpZiAocmVzdWx0X21hdGNoZXMgIT0gTlVMTCkNCisrICAgIHsNCisrICAg ICAgKnJlc3VsdF9tYXRjaGVzID0gbWF0Y2hlczsNCisrICAgIH0NCisgICByZXR1cm4gcmV0Ow0K KyB9DQorIA0KK2RpZmYgLS1naXQgYS9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kc2Vz c2lvbm1vbml0b3IuaCBiL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRzZXNzaW9ubW9u aXRvci5oDQoraW5kZXggOGY4YTJjYS4uMzk3MjMyNiAxMDA2NDQNCistLS0gYS9zcmMvcG9sa2l0 YmFja2VuZC9wb2xraXRiYWNrZW5kc2Vzc2lvbm1vbml0b3IuaA0KKysrKyBiL3NyYy9wb2xraXRi YWNrZW5kL3BvbGtpdGJhY2tlbmRzZXNzaW9ubW9uaXRvci5oDQorQEAgLTQ3LDYgKzQ3LDcgQEAg R0xpc3QgICAgICAgICAgICAgICAgICAgICAgICpwb2xraXRfYmFja2VuZF9zZXNzaW9uX21vbml0 b3JfZ2V0X3Nlc3Npb25zIChQb2xraXQNCisgDQorIFBvbGtpdElkZW50aXR5ICAgICAgICAgICAg ICAqcG9sa2l0X2JhY2tlbmRfc2Vzc2lvbl9tb25pdG9yX2dldF91c2VyX2Zvcl9zdWJqZWN0IChQ b2xraXRCYWNrZW5kU2Vzc2lvbk1vbml0b3IgKm1vbml0b3IsDQorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBQb2xraXRTdWJqZWN0ICAgICAgICAgICAgICAgKnN1YmplY3QsDQorKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBnYm9vbGVhbiAgICAgICAgICAgICAgICAgICAgKnJlc3VsdF9tYXRj aGVzLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0Vycm9yICAgICAgICAgICAgICAgICAg ICAgKiplcnJvcik7DQorIA0KKyBQb2xraXRTdWJqZWN0ICAgICAgICAgICAgICAgKnBvbGtpdF9i YWNrZW5kX3Nlc3Npb25fbW9uaXRvcl9nZXRfc2Vzc2lvbl9mb3Jfc3ViamVjdCAoUG9sa2l0QmFj a2VuZFNlc3Npb25Nb25pdG9yICptb25pdG9yLA0KZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9sa2l0 LTAuMTA1LzAwMDEtY2hlY2stZm9yLWxpYnN5c3RlbWQtaW5zdGVhZC1vZi1saWJzeXN0ZW1kLWxv Z2luLnBhdGNoIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMDAwMS1jaGVjay1mb3ItbGlic3lzdGVt ZC1pbnN0ZWFkLW9mLWxpYnN5c3RlbWQtbG9naW4ucGF0Y2gNCmRlbGV0ZWQgZmlsZSBtb2RlIDEw MDY0NA0KaW5kZXggMTgxNGVlOTg5Li4wMDAwMDAwMDANCi0tLSBhL3BhdGNoZXMvcG9sa2l0LTAu MTA1LzAwMDEtY2hlY2stZm9yLWxpYnN5c3RlbWQtaW5zdGVhZC1vZi1saWJzeXN0ZW1kLWxvZ2lu LnBhdGNoDQorKysgL2Rldi9udWxsDQpAQCAtMSwyMiArMCwwIEBADQotRnJvbTogTWljaGFlbCBP bGJyaWNoIDxtLm9sYnJpY2hAcGVuZ3V0cm9uaXguZGU+DQotRGF0ZTogRnJpLCAyNyBNYXkgMjAx NiAyMDoyMDoxNiArMDIwMA0KLVN1YmplY3Q6IFtQQVRDSF0gY2hlY2sgZm9yIGxpYnN5c3RlbWQg aW5zdGVhZCBvZiBsaWJzeXN0ZW1kLWxvZ2luDQotDQotU2lnbmVkLW9mZi1ieTogTWljaGFlbCBP bGJyaWNoIDxtLm9sYnJpY2hAcGVuZ3V0cm9uaXguZGU+DQotLS0tDQotIGNvbmZpZ3VyZS5hYyB8 IDIgKy0NCi0gMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pDQot DQotZGlmZiAtLWdpdCBhL2NvbmZpZ3VyZS5hYyBiL2NvbmZpZ3VyZS5hYw0KLWluZGV4IGY0YTBj NDE3N2ZiZi4uNGJmMmMwNWQ5ODljIDEwMDY0NA0KLS0tLSBhL2NvbmZpZ3VyZS5hYw0KLSsrKyBi L2NvbmZpZ3VyZS5hYw0KLUBAIC0xNjAsNyArMTYwLDcgQEAgQUNfQVJHX0VOQUJMRShbc3lzdGVt ZF0sDQotICAgICAgICAgICAgICAgW2VuYWJsZV9zeXN0ZW1kPWF1dG9dKQ0KLSBpZiB0ZXN0ICIk ZW5hYmxlX3N5c3RlbWQiICE9ICJubyI7IHRoZW4NCi0gICBQS0dfQ0hFQ0tfTU9EVUxFUyhTWVNU RU1ELA0KLS0gICAgICAgICAgICAgICAgICAgIFtsaWJzeXN0ZW1kLWxvZ2luXSwNCi0rICAgICAg ICAgICAgICAgICAgICBbbGlic3lzdGVtZF0sDQotICAgICAgICAgICAgICAgICAgICAgaGF2ZV9z eXN0ZW1kPXllcywNCi0gICAgICAgICAgICAgICAgICAgICBoYXZlX3N5c3RlbWQ9bm8pDQotICAg aWYgdGVzdCAiJGhhdmVfc3lzdGVtZCIgPSAieWVzIjsgdGhlbg0KZGlmZiAtLWdpdCBhL3BhdGNo ZXMvcG9sa2l0LTAuMTA1LzAxX3BhbV9wb2xraXQucGF0Y2ggYi9wYXRjaGVzL3BvbGtpdC0wLjEw NS8wMV9wYW1fcG9sa2l0LnBhdGNoDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAw MDAwLi41ZmM1NTMzZWQNCi0tLSAvZGV2L251bGwNCisrKyBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1 LzAxX3BhbV9wb2xraXQucGF0Y2gNCkBAIC0wLDAgKzEsMjYgQEANCitGcm9tOiBNaWNoYWVsIEJp ZWJsIDxiaWVibEBkZWJpYW4ub3JnPg0KK0RhdGU6IFR1ZSwgMiBPY3QgMjAwNyAyMjozODowNCAr MDIwMA0KK1N1YmplY3Q6IFVzZSBEZWJpYW4ncyBjb21tb24tKiBQQU0gaW5mcmFzdHJ1Y3R1cmUs IHBsdXMgcGFtX2Vudg0KKw0KK0ZvcndhcmRlZDogbm8sIERlYmlhbi1zcGVjaWZpYw0KKy0tLQ0K KyBkYXRhL3BvbGtpdC0xLmluIHwgMTAgKysrKysrLS0tLQ0KKyAxIGZpbGUgY2hhbmdlZCwgNiBp bnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQ0KKw0KK2RpZmYgLS1naXQgYS9kYXRhL3BvbGtp dC0xLmluIGIvZGF0YS9wb2xraXQtMS5pbg0KK2luZGV4IDE0MmRhZGQuLjZmOGFmMmEgMTAwNjQ0 DQorLS0tIGEvZGF0YS9wb2xraXQtMS5pbg0KKysrKyBiL2RhdGEvcG9sa2l0LTEuaW4NCitAQCAt MSw2ICsxLDggQEANCisgIyVQQU0tMS4wDQorIA0KKy1hdXRoICAgICAgIGluY2x1ZGUgICAgICBA UEFNX0ZJTEVfSU5DTFVERV9BVVRIQA0KKy1hY2NvdW50ICAgIGluY2x1ZGUgICAgICBAUEFNX0ZJ TEVfSU5DTFVERV9BQ0NPVU5UQA0KKy1wYXNzd29yZCAgIGluY2x1ZGUgICAgICBAUEFNX0ZJTEVf SU5DTFVERV9QQVNTV09SREANCistc2Vzc2lvbiAgICBpbmNsdWRlICAgICAgQFBBTV9GSUxFX0lO Q0xVREVfU0VTU0lPTkANCisrQGluY2x1ZGUgY29tbW9uLWF1dGgNCisrQGluY2x1ZGUgY29tbW9u LWFjY291bnQNCisrQGluY2x1ZGUgY29tbW9uLXBhc3N3b3JkDQorK3Nlc3Npb24gICAgICAgcmVx dWlyZWQgICBwYW1fZW52LnNvIHJlYWRlbnY9MSB1c2VyX3JlYWRlbnY9MA0KKytzZXNzaW9uICAg ICAgIHJlcXVpcmVkICAgcGFtX2Vudi5zbyByZWFkZW52PTEgZW52ZmlsZT0vZXRjL2RlZmF1bHQv bG9jYWxlIHVzZXJfcmVhZGVudj0wDQorK0BpbmNsdWRlIGNvbW1vbi1zZXNzaW9uLW5vbmludGVy YWN0aXZlDQpkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMDJfZ2V0dGV4dC5wYXRj aCBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzAyX2dldHRleHQucGF0Y2gNCm5ldyBmaWxlIG1vZGUg MTAwNjQ0DQppbmRleCAwMDAwMDAwMDAuLjdiMmYwN2JkZQ0KLS0tIC9kZXYvbnVsbA0KKysrIGIv cGF0Y2hlcy9wb2xraXQtMC4xMDUvMDJfZ2V0dGV4dC5wYXRjaA0KQEAgLTAsMCArMSwxOTMgQEAN CitGcm9tOiBSb2JlcnQgQW5jZWxsIDxyb2JlcnQuYW5jZWxsQGNhbm9uaWNhbC5jb20+DQorRGF0 ZTogV2VkLCAxOCBBdWcgMjAxMCAxNjoyNjoxNSArMTAwMA0KK1N1YmplY3Q6IFVzZSBnZXR0ZXh0 IGZvciB0cmFuc2xhdGlvbnMgaW4gLnBvbGljeSBmaWxlcw0KKw0KK0J1ZzogaHR0cDovL2J1Z3Mu ZnJlZWRlc2t0b3Aub3JnL3Nob3dfYnVnLmNnaT9pZD0yOTYzOQ0KK0J1Zy1VYnVudHU6IGh0dHBz Oi8vbGF1bmNocGFkLm5ldC9idWdzLzYxOTYzMg0KKy0tLQ0KKyBzcmMvcG9sa2l0YmFja2VuZC9w b2xraXRiYWNrZW5kYWN0aW9ucG9vbC5jIHwgNDkgKysrKysrKysrKysrKysrKysrKysrKysrKysr KysNCisgMSBmaWxlIGNoYW5nZWQsIDQ5IGluc2VydGlvbnMoKykNCisNCitkaWZmIC0tZ2l0IGEv c3JjL3BvbGtpdGJhY2tlbmQvcG9sa2l0YmFja2VuZGFjdGlvbnBvb2wuYyBiL3NyYy9wb2xraXRi YWNrZW5kL3BvbGtpdGJhY2tlbmRhY3Rpb25wb29sLmMNCitpbmRleCA0MjcwZDRlLi5lMmRiZjll IDEwMDY0NA0KKy0tLSBhL3NyYy9wb2xraXRiYWNrZW5kL3BvbGtpdGJhY2tlbmRhY3Rpb25wb29s LmMNCisrKysgYi9zcmMvcG9sa2l0YmFja2VuZC9wb2xraXRiYWNrZW5kYWN0aW9ucG9vbC5jDQor QEAgLTI0LDYgKzI0LDggQEANCisgI2luY2x1ZGUgPHB3ZC5oPg0KKyAjaW5jbHVkZSA8c3RyaW5n Lmg+DQorICNpbmNsdWRlIDxleHBhdC5oPg0KKysjaW5jbHVkZSA8bG9jYWxlLmg+DQorKyNpbmNs dWRlIDxnbGliL2dpMThuLmg+DQorIA0KKyAjaW5jbHVkZSA8cG9sa2l0L3BvbGtpdC5oPg0KKyAj aW5jbHVkZSA8cG9sa2l0L3BvbGtpdHByaXZhdGUuaD4NCitAQCAtNDQsNyArNDYsOSBAQCB0eXBl ZGVmIHN0cnVjdA0KKyAgIGdjaGFyICp2ZW5kb3JfdXJsOw0KKyAgIGdjaGFyICppY29uX25hbWU7 DQorICAgZ2NoYXIgKmRlc2NyaXB0aW9uOw0KKysgIGdjaGFyICpkZXNjcmlwdGlvbl9kb21haW47 DQorICAgZ2NoYXIgKm1lc3NhZ2U7DQorKyAgZ2NoYXIgKm1lc3NhZ2VfZG9tYWluOyAgDQorIA0K KyAgIFBvbGtpdEltcGxpY2l0QXV0aG9yaXphdGlvbiBpbXBsaWNpdF9hdXRob3JpemF0aW9uX2Fu eTsNCisgICBQb2xraXRJbXBsaWNpdEF1dGhvcml6YXRpb24gaW1wbGljaXRfYXV0aG9yaXphdGlv bl9pbmFjdGl2ZTsNCitAQCAtNjUsNyArNjksOSBAQCBwYXJzZWRfYWN0aW9uX2ZyZWUgKFBhcnNl ZEFjdGlvbiAqYWN0aW9uKQ0KKyAgIGdfZnJlZSAoYWN0aW9uLT52ZW5kb3JfdXJsKTsNCisgICBn X2ZyZWUgKGFjdGlvbi0+aWNvbl9uYW1lKTsNCisgICBnX2ZyZWUgKGFjdGlvbi0+ZGVzY3JpcHRp b24pOw0KKysgIGdfZnJlZSAoYWN0aW9uLT5kZXNjcmlwdGlvbl9kb21haW4pOw0KKyAgIGdfZnJl ZSAoYWN0aW9uLT5tZXNzYWdlKTsNCisrICBnX2ZyZWUgKGFjdGlvbi0+bWVzc2FnZV9kb21haW4p Ow0KKyANCisgICBnX2hhc2hfdGFibGVfdW5yZWYgKGFjdGlvbi0+bG9jYWxpemVkX2Rlc2NyaXB0 aW9uKTsNCisgICBnX2hhc2hfdGFibGVfdW5yZWYgKGFjdGlvbi0+bG9jYWxpemVkX21lc3NhZ2Up Ow0KK0BAIC04NSw2ICs5MSw3IEBAIHN0YXRpYyB2b2lkIGVuc3VyZV9hbGxfZmlsZXMgKFBvbGtp dEJhY2tlbmRBY3Rpb25Qb29sICpwb29sKTsNCisgDQorIHN0YXRpYyBjb25zdCBnY2hhciAqX2xv Y2FsaXplIChHSGFzaFRhYmxlICp0cmFuc2xhdGlvbnMsDQorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBjb25zdCBnY2hhciAqdW50cmFuc2xhdGVkLA0KKysgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgY29uc3QgZ2NoYXIgKmRvbWFpbiwNCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGNvbnN0IGdjaGFyICpsYW5nKTsNCisgDQorIHR5cGVkZWYgc3RydWN0DQor QEAgLTM4NSw5ICszOTIsMTEgQEAgcG9sa2l0X2JhY2tlbmRfYWN0aW9uX3Bvb2xfZ2V0X2FjdGlv biAoUG9sa2l0QmFja2VuZEFjdGlvblBvb2wgKnBvb2wsDQorIA0KKyAgIGRlc2NyaXB0aW9uID0g X2xvY2FsaXplIChwYXJzZWRfYWN0aW9uLT5sb2NhbGl6ZWRfZGVzY3JpcHRpb24sDQorICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHBhcnNlZF9hY3Rpb24tPmRlc2NyaXB0aW9uLA0KKysgICAg ICAgICAgICAgICAgICAgICAgICAgICBwYXJzZWRfYWN0aW9uLT5kZXNjcmlwdGlvbl9kb21haW4s DQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2FsZSk7DQorICAgbWVzc2FnZSA9IF9s b2NhbGl6ZSAocGFyc2VkX2FjdGlvbi0+bG9jYWxpemVkX21lc3NhZ2UsDQorICAgICAgICAgICAg ICAgICAgICAgICAgcGFyc2VkX2FjdGlvbi0+bWVzc2FnZSwNCisrICAgICAgICAgICAgICAgICAg ICAgICBwYXJzZWRfYWN0aW9uLT5tZXNzYWdlX2RvbWFpbiwNCisgICAgICAgICAgICAgICAgICAg ICAgICBsb2NhbGUpOw0KKyANCisgICByZXQgPSBwb2xraXRfYWN0aW9uX2Rlc2NyaXB0aW9uX25l dyAoYWN0aW9uX2lkLA0KK0BAIC02MDMsMTEgKzYxMiwxNiBAQCB0eXBlZGVmIHN0cnVjdCB7DQor ICAgR0hhc2hUYWJsZSAqcG9saWN5X21lc3NhZ2VzOw0KKyANCisgICBjaGFyICpwb2xpY3lfZGVz Y3JpcHRpb25fbm9sYW5nOw0KKysgIGNoYXIgKnBvbGljeV9kZXNjcmlwdGlvbl9kb21haW47DQor ICAgY2hhciAqcG9saWN5X21lc3NhZ2Vfbm9sYW5nOw0KKysgIGNoYXIgKnBvbGljeV9tZXNzYWdl X2RvbWFpbjsNCisgDQorICAgLyogdGhlIHZhbHVlIG9mIHhtbDpsYW5nIGZvciB0aGUgdGhpbmcg d2UncmUgcmVhZGluZyBpbiBfY2RhdGEoKSAqLw0KKyAgIGNoYXIgKmVsZW1fbGFuZzsNCisgDQor KyAgLyogdGhlIHZhbHVlIG9mIGdldHRleHQtZG9tYWluIGZvciB0aGUgdGhpbmcgd2UncmUgcmVh ZGluZyBpbiBfY2RhdGEoKSAqLw0KKysgIGNoYXIgKmVsZW1fZG9tYWluOw0KKysNCisgICBjaGFy ICphbm5vdGF0ZV9rZXk7DQorICAgR0hhc2hUYWJsZSAqYW5ub3RhdGlvbnM7DQorIA0KK0BAIC02 MjksOCArNjQzLDEyIEBAIHBkX3VucmVmX2FjdGlvbl9kYXRhIChQYXJzZXJEYXRhICpwZCkNCisg DQorICAgZ19mcmVlIChwZC0+cG9saWN5X2Rlc2NyaXB0aW9uX25vbGFuZyk7DQorICAgcGQtPnBv bGljeV9kZXNjcmlwdGlvbl9ub2xhbmcgPSBOVUxMOw0KKysgIGdfZnJlZSAocGQtPnBvbGljeV9k ZXNjcmlwdGlvbl9kb21haW4pOw0KKysgIHBkLT5wb2xpY3lfZGVzY3JpcHRpb25fZG9tYWluID0g TlVMTDsNCisgICBnX2ZyZWUgKHBkLT5wb2xpY3lfbWVzc2FnZV9ub2xhbmcpOw0KKyAgIHBkLT5w b2xpY3lfbWVzc2FnZV9ub2xhbmcgPSBOVUxMOw0KKysgIGdfZnJlZSAocGQtPnBvbGljeV9tZXNz YWdlX2RvbWFpbik7DQorKyAgcGQtPnBvbGljeV9tZXNzYWdlX2RvbWFpbiA9IE5VTEw7DQorICAg aWYgKHBkLT5wb2xpY3lfZGVzY3JpcHRpb25zICE9IE5VTEwpDQorICAgICB7DQorICAgICAgIGdf aGFzaF90YWJsZV91bnJlZiAocGQtPnBvbGljeV9kZXNjcmlwdGlvbnMpOw0KK0BAIC02NTAsNiAr NjY4LDggQEAgcGRfdW5yZWZfYWN0aW9uX2RhdGEgKFBhcnNlckRhdGEgKnBkKQ0KKyAgICAgfQ0K KyAgIGdfZnJlZSAocGQtPmVsZW1fbGFuZyk7DQorICAgcGQtPmVsZW1fbGFuZyA9IE5VTEw7DQor KyAgZ19mcmVlIChwZC0+ZWxlbV9kb21haW4pOw0KKysgIHBkLT5lbGVtX2RvbWFpbiA9IE5VTEw7 DQorIH0NCisgDQorIHN0YXRpYyB2b2lkDQorQEAgLTczNyw2ICs3NTcsMTAgQEAgX3N0YXJ0ICh2 b2lkICpkYXRhLCBjb25zdCBjaGFyICplbCwgY29uc3QgY2hhciAqKmF0dHIpDQorICAgICAgICAg ICAgIHsNCisgICAgICAgICAgICAgICBwZC0+ZWxlbV9sYW5nID0gZ19zdHJkdXAgKGF0dHJbMV0p Ow0KKyAgICAgICAgICAgICB9DQorKyAgICAgICAgICBpZiAobnVtX2F0dHIgPT0gMiAmJiBzdHJj bXAgKGF0dHJbMF0sICJnZXR0ZXh0LWRvbWFpbiIpID09IDApDQorKyAgICAgICAgICAgIHsNCisr ICAgICAgICAgICAgICBwZC0+ZWxlbV9kb21haW4gPSBnX3N0cmR1cCAoYXR0clsxXSk7DQorKyAg ICAgICAgICAgIH0NCisgICAgICAgICAgIHN0YXRlID0gU1RBVEVfSU5fQUNUSU9OX0RFU0NSSVBU SU9OOw0KKyAgICAgICAgIH0NCisgICAgICAgZWxzZSBpZiAoc3RyY21wIChlbCwgIm1lc3NhZ2Ui KSA9PSAwKQ0KK0BAIC03NDUsNiArNzY5LDEwIEBAIF9zdGFydCAodm9pZCAqZGF0YSwgY29uc3Qg Y2hhciAqZWwsIGNvbnN0IGNoYXIgKiphdHRyKQ0KKyAgICAgICAgICAgICB7DQorICAgICAgICAg ICAgICAgcGQtPmVsZW1fbGFuZyA9IGdfc3RyZHVwIChhdHRyWzFdKTsNCisgICAgICAgICAgICAg fQ0KKysgICAgICAgICAgaWYgKG51bV9hdHRyID09IDIgJiYgc3RyY21wIChhdHRyWzBdLCAiZ2V0 dGV4dC1kb21haW4iKSA9PSAwKQ0KKysgICAgICAgICAgICB7DQorKyAgICAgICAgICAgICAgcGQt PmVsZW1fZG9tYWluID0gZ19zdHJkdXAgKGF0dHJbMV0pOw0KKysgICAgICAgICAgICB9DQorICAg ICAgICAgICBzdGF0ZSA9IFNUQVRFX0lOX0FDVElPTl9NRVNTQUdFOw0KKyAgICAgICAgIH0NCisg ICAgICAgZWxzZSBpZiAoc3RyY21wIChlbCwgInZlbmRvciIpID09IDAgJiYgbnVtX2F0dHIgPT0g MCkNCitAQCAtODQ3LDYgKzg3NSw3IEBAIF9jZGF0YSAodm9pZCAqZGF0YSwgY29uc3QgY2hhciAq cywgaW50IGxlbikNCisgICAgICAgICB7DQorICAgICAgICAgICBnX2ZyZWUgKHBkLT5wb2xpY3lf ZGVzY3JpcHRpb25fbm9sYW5nKTsNCisgICAgICAgICAgIHBkLT5wb2xpY3lfZGVzY3JpcHRpb25f bm9sYW5nID0gc3RyOw0KKysgICAgICAgICAgcGQtPnBvbGljeV9kZXNjcmlwdGlvbl9kb21haW4g PSBnX3N0cmR1cCAocGQtPmVsZW1fZG9tYWluKTsNCisgICAgICAgICAgIHN0ciA9IE5VTEw7DQor ICAgICAgICAgfQ0KKyAgICAgICBlbHNlDQorQEAgLTg2Myw2ICs4OTIsNyBAQCBfY2RhdGEgKHZv aWQgKmRhdGEsIGNvbnN0IGNoYXIgKnMsIGludCBsZW4pDQorICAgICAgICAgew0KKyAgICAgICAg ICAgZ19mcmVlIChwZC0+cG9saWN5X21lc3NhZ2Vfbm9sYW5nKTsNCisgICAgICAgICAgIHBkLT5w b2xpY3lfbWVzc2FnZV9ub2xhbmcgPSBzdHI7DQorKyAgICAgICAgICBwZC0+cG9saWN5X21lc3Nh Z2VfZG9tYWluID0gZ19zdHJkdXAgKHBkLT5lbGVtX2RvbWFpbik7DQorICAgICAgICAgICBzdHIg PSBOVUxMOw0KKyAgICAgICAgIH0NCisgICAgICAgZWxzZQ0KK0BAIC05NjAsNiArOTkwLDggQEAg X2VuZCAodm9pZCAqZGF0YSwgY29uc3QgY2hhciAqZWwpDQorIA0KKyAgIGdfZnJlZSAocGQtPmVs ZW1fbGFuZyk7DQorICAgcGQtPmVsZW1fbGFuZyA9IE5VTEw7DQorKyAgZ19mcmVlIChwZC0+ZWxl bV9kb21haW4pOw0KKysgIHBkLT5lbGVtX2RvbWFpbiA9IE5VTEw7DQorIA0KKyAgIHN3aXRjaCAo cGQtPnN0YXRlKQ0KKyAgICAgew0KK0BAIC05OTAsNyArMTAyMiw5IEBAIF9lbmQgKHZvaWQgKmRh dGEsIGNvbnN0IGNoYXIgKmVsKQ0KKyAgICAgICAgIGFjdGlvbi0+dmVuZG9yX3VybCA9IGdfc3Ry ZHVwICh2ZW5kb3JfdXJsKTsNCisgICAgICAgICBhY3Rpb24tPmljb25fbmFtZSA9IGdfc3RyZHVw IChpY29uX25hbWUpOw0KKyAgICAgICAgIGFjdGlvbi0+ZGVzY3JpcHRpb24gPSBnX3N0cmR1cCAo cGQtPnBvbGljeV9kZXNjcmlwdGlvbl9ub2xhbmcpOw0KKysgICAgICAgIGFjdGlvbi0+ZGVzY3Jp cHRpb25fZG9tYWluID0gZ19zdHJkdXAgKHBkLT5wb2xpY3lfZGVzY3JpcHRpb25fZG9tYWluKTsN CisgICAgICAgICBhY3Rpb24tPm1lc3NhZ2UgPSBnX3N0cmR1cCAocGQtPnBvbGljeV9tZXNzYWdl X25vbGFuZyk7DQorKyAgICAgICAgYWN0aW9uLT5tZXNzYWdlX2RvbWFpbiA9IGdfc3RyZHVwIChw ZC0+cG9saWN5X21lc3NhZ2VfZG9tYWluKTsNCisgDQorICAgICAgICAgYWN0aW9uLT5sb2NhbGl6 ZWRfZGVzY3JpcHRpb24gPSBwZC0+cG9saWN5X2Rlc2NyaXB0aW9uczsNCisgICAgICAgICBhY3Rp b24tPmxvY2FsaXplZF9tZXNzYWdlICAgICA9IHBkLT5wb2xpY3lfbWVzc2FnZXM7DQorQEAgLTEw OTMsNiArMTEyNyw3IEBAIGVycm9yOg0KKyAgKiBfbG9jYWxpemU6DQorICAqIEB0cmFuc2xhdGlv bnM6IGEgbWFwcGluZyBmcm9tIHhtbDpsYW5nIHRvIHRoZSB2YWx1ZSwgZS5nLiAnZGEnIC0+ICdT bWFkcmUnLCAnZW5fQ0EnIC0+ICdQdW5jaCwgQXllIScNCisgICogQHVudHJhbnNsYXRlZDogdGhl IHVudHJhbnNsYXRlZCB2YWx1ZSwgZS5nLiAnUHVuY2gnDQorKyAqIEBkb21haW46IHRoZSBnZXR0 ZXh0IGRvbWFpbiBmb3IgdGhpcyBzdHJpbmcuIE1ha2UgYmUgTlVMTC4NCisgICogQGxhbmc6IHRo ZSBsb2NhbGUgd2UncmUgaW50ZXJlc3RlZCBpbiwgZS5nLiAnZGFfREsnLCAnZGEnLCAnZW5fQ0En LCAnZW5fVVMnOyBiYXNpY2FsbHkganVzdCAkTEFORw0KKyAgKiB3aXRoIHRoZSBlbmNvZGluZyBj dXQgb2ZmLiBNYXliZSBiZSBOVUxMLg0KKyAgKg0KK0BAIC0xMTAzLDExICsxMTM4LDI1IEBAIGVy cm9yOg0KKyBzdGF0aWMgY29uc3QgZ2NoYXIgKg0KKyBfbG9jYWxpemUgKEdIYXNoVGFibGUgKnRy YW5zbGF0aW9ucywNCisgICAgICAgICAgICBjb25zdCBnY2hhciAqdW50cmFuc2xhdGVkLA0KKysg ICAgICAgICAgIGNvbnN0IGdjaGFyICpkb21haW4sDQorICAgICAgICAgICAgY29uc3QgZ2NoYXIg KmxhbmcpDQorIHsNCisgICBjb25zdCBnY2hhciAqcmVzdWx0Ow0KKyAgIGdjaGFyIGxhbmcyWzI1 Nl07DQorICAgZ3VpbnQgbjsNCisrICANCisrICBpZiAoZG9tYWluICE9IE5VTEwpDQorKyAgICB7 DQorKyAgICAgIGdjaGFyICpvbGRfbG9jYWxlOw0KKysNCisrICAgICAgb2xkX2xvY2FsZSA9IGdf c3RyZHVwIChzZXRsb2NhbGUgKExDX0FMTCwgTlVMTCkpOw0KKysgICAgICBzZXRsb2NhbGUgKExD X0FMTCwgbGFuZyk7DQorKyAgICAgIHJlc3VsdCA9IGRnZXR0ZXh0IChkb21haW4sIHVudHJhbnNs YXRlZCk7DQorKyAgICAgIHNldGxvY2FsZSAoTENfQUxMLCBvbGRfbG9jYWxlKTsNCisrICAgICAg Z19mcmVlIChvbGRfbG9jYWxlKTsNCisrDQorKyAgICAgIGdvdG8gb3V0Ow0KKysgICAgfQ0KKyAN CisgICBpZiAobGFuZyA9PSBOVUxMKQ0KKyAgICAgew0KZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9s a2l0LTAuMTA1LzA1X3JldmVydC1hZG1pbi1pZGVudGl0aWVzLXVuaXgtZ3JvdXAtd2hlZWwucGF0 Y2ggYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS8wNV9yZXZlcnQtYWRtaW4taWRlbnRpdGllcy11bml4 LWdyb3VwLXdoZWVsLnBhdGNoDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAw Li5iZDZlOWI5NGUNCi0tLSAvZGV2L251bGwNCisrKyBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzA1 X3JldmVydC1hZG1pbi1pZGVudGl0aWVzLXVuaXgtZ3JvdXAtd2hlZWwucGF0Y2gNCkBAIC0wLDAg KzEsMzUgQEANCitGcm9tOiBNaWNoYWVsIEJpZWJsIDxiaWVibEBkZWJpYW4ub3JnPg0KK0RhdGU6 IEZyaSwgOSBEZWMgMjAxMSAwMDozMToyMSArMDEwMA0KK1N1YmplY3Q6IFJldmVydCAiRGVmYXVs dCB0byBBZG1pbklkZW50aXRpZXM9dW5peC1ncm91cDp3aGVlbCBmb3IgbG9jYWwNCisgYXV0aG9y aXR5Ig0KKw0KK1RoaXMgcmV2ZXJ0cyBjb21taXQgNzYzZmFmNDM0YjQ0NWMyMGFlOTUyOTEwMGQz ZWY1MjkwOTc2ZDBjOS4NCisNCitPbiBSZWQgSGF0IGRlcml2YXRpdmVzLCBldmVyeSBtZW1iZXIg b2YgZ3JvdXAgJ3doZWVsJyBpcyBuZWNlc3NhcmlseQ0KK3ByaXZpbGVnZWQuIE9uIERlYmlhbiBk ZXJpdmF0aXZlcywgdGhlcmUgaXMgbm8gd2hlZWwgZ3JvdXAsIGFuZCBnaWQgMA0KKyhyb290KSBp cyBub3QgdXNlZCBpbiB0aGlzIHdheS4gQ2hhbmdlIHRoZSBkZWZhdWx0IHJ1bGUgdG8gY29uc2lk ZXINCit1aWQgMCB0byBiZSBwcml2aWxlZ2VkLCBpbnN0ZWFkLg0KKw0KK09uIFJlZCBIYXQgZGVy aXZhdGl2ZXMsIDUwLWRlZmF1bHQucnVsZXMgaXMgbm90IHByZXNlcnZlZCBieSB1cGdyYWRlczsN CitvbiBkcGtnLWJhc2VkIHN5c3RlbXMsIGl0IGlzIGEgcHJvcGVyIGNvbmZmaWxlIGFuZCBtYXkg YmUgZWRpdGVkDQorKGF0IHRoZSBzeXNhZG1pbidzIG93biByaXNrKSwgc28gdGhlIGNvbW1lbnQg YWJvdXQgbm90IGVkaXRpbmcgaXQgaXMNCittaXNsZWFkaW5nLg0KKw0KK1tzbWN2OiBhZGRlZCBs b25nZXIgZXhwbGFuYXRpb24gb2Ygd2h5IHdlIG1ha2UgdGhpcyBjaGFuZ2U7DQorcmVtb3ZlIHVu cmVsYXRlZCBjb3NtZXRpYyBjaGFuZ2UgdG8gYSBtYW4gcGFnZV0NCisNCitGb3J3YXJkZWQ6IG5v LCBEZWJpYW4tc3BlY2lmaWMNCistLS0NCisgc3JjL3BvbGtpdGJhY2tlbmQvNTAtbG9jYWxhdXRo b3JpdHkuY29uZiB8IDIgKy0NCisgMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRl bGV0aW9uKC0pDQorDQorZGlmZiAtLWdpdCBhL3NyYy9wb2xraXRiYWNrZW5kLzUwLWxvY2FsYXV0 aG9yaXR5LmNvbmYgYi9zcmMvcG9sa2l0YmFja2VuZC81MC1sb2NhbGF1dGhvcml0eS5jb25mDQor aW5kZXggNWU0NGJkZS4uMjBlMGJhMyAxMDA2NDQNCistLS0gYS9zcmMvcG9sa2l0YmFja2VuZC81 MC1sb2NhbGF1dGhvcml0eS5jb25mDQorKysrIGIvc3JjL3BvbGtpdGJhY2tlbmQvNTAtbG9jYWxh dXRob3JpdHkuY29uZg0KK0BAIC03LDQgKzcsNCBAQA0KKyAjDQorIA0KKyBbQ29uZmlndXJhdGlv bl0NCistQWRtaW5JZGVudGl0aWVzPXVuaXgtZ3JvdXA6d2hlZWwNCisrQWRtaW5JZGVudGl0aWVz PXVuaXgtdXNlcjowDQpkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMDZfc3lzdGVt ZC1zZXJ2aWNlLnBhdGNoIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvMDZfc3lzdGVtZC1zZXJ2aWNl LnBhdGNoDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi4zNjM2M2M0YTUN Ci0tLSAvZGV2L251bGwNCisrKyBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzA2X3N5c3RlbWQtc2Vy dmljZS5wYXRjaA0KQEAgLTAsMCArMSwxOCBAQA0KK0Zyb206IE1pY2hhZWwgQmllYmwgPGJpZWJs QGRlYmlhbi5vcmc+DQorRGF0ZTogU2F0LCAxMSBGZWIgMjAxMiAyMzo0ODoyOSArMDEwMA0KK1N1 YmplY3Q6IEluc3RhbGwgc3lzdGVtZCBzZXJ2aWNlIGZpbGUgZm9yIHBvbGtpdGQuDQorDQorRm9y d2FyZGVkOiBubywgb2Jzb2xldGVkIGJ5IGFuIHVwc3RyZWFtIGNvbW1pdCBpbiAwLjEwNg0KKy0t LQ0KKyBkYXRhL29yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLnNlcnZpY2UuaW4gfCAxICsNCisg MSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspDQorDQorZGlmZiAtLWdpdCBhL2RhdGEvb3Jn LmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuc2VydmljZS5pbiBiL2RhdGEvb3JnLmZyZWVkZXNrdG9w LlBvbGljeUtpdDEuc2VydmljZS5pbg0KK2luZGV4IGI2Y2QwMmIuLmZiY2ViM2YgMTAwNjQ0DQor LS0tIGEvZGF0YS9vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5zZXJ2aWNlLmluDQorKysrIGIv ZGF0YS9vcmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5zZXJ2aWNlLmluDQorQEAgLTIsMyArMiw0 IEBADQorIE5hbWU9b3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDENCisgRXhlYz1AbGliZXhlY2Rp ckAvcG9sa2l0ZCAtLW5vLWRlYnVnDQorIFVzZXI9cm9vdA0KKytTeXN0ZW1kU2VydmljZT1wb2xr aXQuc2VydmljZQ0KZGlmZiAtLWdpdCBhL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzEwX2J1aWxkLWFn YWluc3QtbGlic3lzdGVtZC5wYXRjaCBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1LzEwX2J1aWxkLWFn YWluc3QtbGlic3lzdGVtZC5wYXRjaA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAw MDAwMC4uNjIzMGE2MzE1DQotLS0gL2Rldi9udWxsDQorKysgYi9wYXRjaGVzL3BvbGtpdC0wLjEw NS8xMF9idWlsZC1hZ2FpbnN0LWxpYnN5c3RlbWQucGF0Y2gNCkBAIC0wLDAgKzEsMzIgQEANCitG cm9tOiBNaWNoYWVsIEJpZWJsIDxiaWVibEBkZWJpYW4ub3JnPg0KK0RhdGU6IFdlZCwgOCBKdWwg MjAxNSAwMjowODozMyArMDIwMA0KK1N1YmplY3Q6IEJ1aWxkIGFnYWluc3QgbGlic3lzdGVtZA0K Kw0KK0J1Zy1EZWJpYW46IGh0dHBzOi8vYnVncy5kZWJpYW4ub3JnL2NnaS1iaW4vYnVncmVwb3J0 LmNnaT9idWc9Nzc5NzU2DQorRm9yd2FyZGVkOiBubywgb2Jzb2xldGVkIGJ5IHVwc3RyZWFtIGNv bW1pdCAyMjkxNzY3YTAxNGY1YTA0YTkyY2E2ZjBlYjQ3Mjc5NGYyMTJjYTY3IGluIDAuMTEzDQor LS0tDQorIGNvbmZpZ3VyZS5hYyB8IDQgKystLQ0KKyAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRp b25zKCspLCAyIGRlbGV0aW9ucygtKQ0KKw0KK2RpZmYgLS1naXQgYS9jb25maWd1cmUuYWMgYi9j b25maWd1cmUuYWMNCitpbmRleCAzODg2MDVkLi5mNTVkZGI3IDEwMDY0NA0KKy0tLSBhL2NvbmZp Z3VyZS5hYw0KKysrKyBiL2NvbmZpZ3VyZS5hYw0KK0BAIC0xNjAsNyArMTYwLDcgQEAgQUNfQVJH X0VOQUJMRShbc3lzdGVtZF0sDQorICAgICAgICAgICAgICAgW2VuYWJsZV9zeXN0ZW1kPWF1dG9d KQ0KKyBpZiB0ZXN0ICIkZW5hYmxlX3N5c3RlbWQiICE9ICJubyI7IHRoZW4NCisgICBQS0dfQ0hF Q0tfTU9EVUxFUyhTWVNURU1ELA0KKy0gICAgICAgICAgICAgICAgICAgIFtsaWJzeXN0ZW1kLWxv Z2luXSwNCisrICAgICAgICAgICAgICAgICAgICBbbGlic3lzdGVtZF0sDQorICAgICAgICAgICAg ICAgICAgICAgaGF2ZV9zeXN0ZW1kPXllcywNCisgICAgICAgICAgICAgICAgICAgICBoYXZlX3N5 c3RlbWQ9bm8pDQorICAgaWYgdGVzdCAiJGhhdmVfc3lzdGVtZCIgPSAieWVzIjsgdGhlbg0KK0BA IC0xNzEsNyArMTcxLDcgQEAgaWYgdGVzdCAiJGVuYWJsZV9zeXN0ZW1kIiAhPSAibm8iOyB0aGVu DQorICAgICBMSUJTPSRzYXZlX0xJQlMNCisgICBlbHNlDQorICAgICBpZiB0ZXN0ICIkZW5hYmxl X3N5c3RlbWQiID0gInllcyI7IHRoZW4NCistICAgICAgQUNfTVNHX0VSUk9SKFtzeXN0ZW1kIHN1 cHBvcnQgcmVxdWVzdGVkIGJ1dCBsaWJzeXN0ZW1kLWxvZ2luMSBsaWJyYXJ5IG5vdCBmb3VuZF0p DQorKyAgICAgIEFDX01TR19FUlJPUihbc3lzdGVtZCBzdXBwb3J0IHJlcXVlc3RlZCBidXQgbGli c3lzdGVtZCBsaWJyYXJ5IG5vdCBmb3VuZF0pDQorICAgICBmaQ0KKyAgIGZpDQorIGZpDQpkaWZm IC0tZ2l0IGEvcGF0Y2hlcy9wb2xraXQtMC4xMDUvTW92ZS1ELUJ1cy1wb2xpY3ktZmlsZS10by11 c3Itc2hhcmUtZGJ1cy0xLXN5c3RlbS5kLnBhdGNoIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvTW92 ZS1ELUJ1cy1wb2xpY3ktZmlsZS10by11c3Itc2hhcmUtZGJ1cy0xLXN5c3RlbS5kLnBhdGNoDQpu ZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi41NzRhMjVkODgNCi0tLSAvZGV2 L251bGwNCisrKyBiL3BhdGNoZXMvcG9sa2l0LTAuMTA1L01vdmUtRC1CdXMtcG9saWN5LWZpbGUt dG8tdXNyLXNoYXJlLWRidXMtMS1zeXN0ZW0uZC5wYXRjaA0KQEAgLTAsMCArMSwzMSBAQA0KK0Zy b206IE1pY2hhZWwgQmllYmwgPGJpZWJsQGRlYmlhbi5vcmc+DQorRGF0ZTogVHVlLCAyNyBOb3Yg MjAxOCAxODozNjoyNyArMDEwMA0KK1N1YmplY3Q6IE1vdmUgRC1CdXMgcG9saWN5IGZpbGUgdG8g L3Vzci9zaGFyZS9kYnVzLTEvc3lzdGVtLmQvDQorDQorVG8gYmV0dGVyIHN1cHBvcnQgc3RhdGVs ZXNzIHN5c3RlbXMgd2l0aCBhbiBlbXB0eSAvZXRjLCB0aGUgb2xkIGxvY2F0aW9uDQoraW4gL2V0 Yy9kYnVzLTEvc3lzdGVtLmQvIHNob3VsZCBvbmx5IGJlIHVzZWQgZm9yIGxvY2FsIGFkbWluIGNo YW5nZXMuDQorUGFja2FnZSBwcm92aWRlZCBELUJ1cyBwb2xpY3kgZmlsZXMgYXJlIHN1cHBvc2Vk IHRvIGJlIGluc3RhbGxlZCBpbg0KKy91c3Ivc2hhcmUvZGJ1cy0xL3N5c3RlbS5kLy4NCisNCitU aGlzIGlzIHN1cHBvcnRlZCBzaW5jZSBkYnVzIDEuOS4xOC4NCisNCitodHRwczovL2xpc3RzLmZy ZWVkZXNrdG9wLm9yZy9hcmNoaXZlcy9kYnVzLzIwMTUtSnVseS8wMTY3NDYuaHRtbA0KKw0KK2h0 dHBzOi8vZ2l0bGFiLmZyZWVkZXNrdG9wLm9yZy9wb2xraXQvcG9sa2l0L21lcmdlX3JlcXVlc3Rz LzExDQorLS0tDQorIGRhdGEvTWFrZWZpbGUuYW0gfCAyICstDQorIDEgZmlsZSBjaGFuZ2VkLCAx IGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQ0KKw0KK2RpZmYgLS1naXQgYS9kYXRhL01ha2Vm aWxlLmFtIGIvZGF0YS9NYWtlZmlsZS5hbQ0KK2luZGV4IGUxYTYwYWEuLjNkODc0MzkgMTAwNjQ0 DQorLS0tIGEvZGF0YS9NYWtlZmlsZS5hbQ0KKysrKyBiL2RhdGEvTWFrZWZpbGUuYW0NCitAQCAt OSw3ICs5LDcgQEAgc2VydmljZV9EQVRBICAgICA9ICQoc2VydmljZV9pbl9maWxlczouc2Vydmlj ZS5pbj0uc2VydmljZSkNCisgJChzZXJ2aWNlX0RBVEEpOiAkKHNlcnZpY2VfaW5fZmlsZXMpIE1h a2VmaWxlDQorIAlAc2VkIC1lICJzfFxAbGliZXhlY2RpclxAfCQobGliZXhlY2Rpcil8IiAkPCA+ ICRADQorIA0KKy1kYnVzY29uZmRpciA9ICQoc3lzY29uZmRpcikvZGJ1cy0xL3N5c3RlbS5kDQor K2RidXNjb25mZGlyID0gJChkYXRhZGlyKS9kYnVzLTEvc3lzdGVtLmQNCisgZGJ1c2NvbmZfREFU QSA9IG9yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLmNvbmYNCisgDQorIGlmIFBPTEtJVF9BVVRI RldfUEFNDQpkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9wb2xraXQtMC4xMDUvYXV0b2dlbi5zaCBiL3Bh dGNoZXMvcG9sa2l0LTAuMTA1L2F1dG9nZW4uc2gNCmRlbGV0ZWQgZmlsZSBtb2RlIDEyMDAwMA0K aW5kZXggOWY4YTRjYjdkLi4wMDAwMDAwMDANCi0tLSBhL3BhdGNoZXMvcG9sa2l0LTAuMTA1L2F1 dG9nZW4uc2gNCisrKyAvZGV2L251bGwNCkBAIC0xICswLDAgQEANCi0uLi9hdXRvZ2VuLnNoDQpc IE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUNCmRpZmYgLS1naXQgYS9wYXRjaGVzL3BvbGtpdC0w LjEwNS9hdXRvZ2VuLnNoIGIvcGF0Y2hlcy9wb2xraXQtMC4xMDUvYXV0b2dlbi5zaA0KbmV3IGZp bGUgbW9kZSAxMDA3NTUNCmluZGV4IDAwMDAwMDAwMC4uZGY3OGMzODhiDQotLS0gL2Rldi9udWxs DQorKysgYi9wYXRjaGVzL3BvbGtpdC0wLjEwNS9hdXRvZ2VuLnNoDQpAQCAtMCwwICsxLDE4IEBA DQorIyEvYmluL2Jhc2gNCisNCitzZXQgLWUNCisNCithY2xvY2FsICRBQ0xPQ0FMX0ZMQUdTDQor DQorbGlidG9vbGl6ZSBcDQorCS0tZm9yY2UgXA0KKwktLWNvcHkNCisNCithdXRvcmVjb25mIFwN CisJLS1mb3JjZSBcDQorCS0taW5zdGFsbCBcDQorCS0td2FybmluZ3M9Y3Jvc3MgXA0KKwktLXdh cm5pbmdzPXN5bnRheCBcDQorCS0td2FybmluZ3M9b2Jzb2xldGUgXA0KKwktLXdhcm5pbmdzPXVu c3VwcG9ydGVkDQorDQpkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9wb2xraXQtMC4xMDUvc2VyaWVzIGIv cGF0Y2hlcy9wb2xraXQtMC4xMDUvc2VyaWVzDQppbmRleCAyOGFmYmZlOWQuLjIzOGQyZGQ2NyAx MDA2NDQNCi0tLSBhL3BhdGNoZXMvcG9sa2l0LTAuMTA1L3Nlcmllcw0KKysrIGIvcGF0Y2hlcy9w b2xraXQtMC4xMDUvc2VyaWVzDQpAQCAtMSw1ICsxLDQ3IEBADQotIyBnZW5lcmF0ZWQgYnkgZ2l0 LXB0eC1wYXRjaGVzDQotI3RhZzpiYXNlIC0tc3RhcnQtbnVtYmVyIDENCi0wMDAxLWNoZWNrLWZv ci1saWJzeXN0ZW1kLWluc3RlYWQtb2YtbGlic3lzdGVtZC1sb2dpbi5wYXRjaA0KKzAuMTA2L2Fn ZW50aGVscGVyLXBhbS1GaXgtbmV3bGluZS10cmltbWluZy1jb2RlLnBhdGNoDQorMC4xMDgvYnVp bGQtRml4LS5naXItZ2VuZXJhdGlvbi1mb3ItcGFyYWxsZWwtbWFrZS5wYXRjaA0KKzAuMTEwLzA3 X3NldC1YQVVUSE9SSVRZLWVudmlyb25tZW50LXZhcmlhYmxlLWlmLXVuc2V0LnBhdGNoDQorMC4x MTAvMDRfZ2V0X2N3ZC5wYXRjaA0KKzAuMTExLzA5X3BhbV9lbnZpcm9ubWVudC5wYXRjaA0KKzAu MTExL0ZpeC1hLW1lbW9yeS1sZWFrLnBhdGNoDQorMC4xMTIvMDBnaXRfdHlwZV9yZWdpc3RyYXRp b24ucGF0Y2gNCiswLjExMi8wOF9kZXByZWNhdGVfcmFjeV9BUElzLnBhdGNoDQorMC4xMTIvY3Zl LTIwMTMtNDI4OC5wYXRjaA0KKzAuMTEzL1BvcnQtaW50ZXJuYWxzLW5vbi1kZXByZWNhdGVkLVBv bGtpdFByb2Nlc3MtQVBJLXdoZXIucGF0Y2gNCiswLjExMy9wa2V4ZWMtV29yay1hcm91bmQtc3lz dGVtZC1pbmplY3RpbmctYnJva2VuLVhER19SVU5ULnBhdGNoDQorMC4xMTMvMDNfUG9sa2l0QWdl bnRTZXNzaW9uLWZpeC1yYWNlLWJldHdlZW4tY2hpbGQtYW5kLWlvLXdhdC5wYXRjaA0KKzAuMTEz L3BvbGtpdGQtRml4LXByb2JsZW0td2l0aC1yZW1vdmluZy1ub24tZXhpc3RlbnQtc291cmMucGF0 Y2gNCiswLjExMy9Qb2xraXRTeXN0ZW1CdXNOYW1lLUFkZC1wdWJsaWMtQVBJLXRvLXJldHJpZXZl LVVuaXgtLnBhdGNoDQorMC4xMTMvRml4ZWQtY29tcGlsYXRpb24tcHJvYmxlbS1pbi10aGUtYmFj a2VuZC5wYXRjaA0KKzAuMTEzL0Rvbi10LWRpc2NhcmQtZXJyb3ItZGF0YS1yZXR1cm5lZC1ieS1w b2xraXRfc3lzdGVtX2IucGF0Y2gNCiswLjExMy9zZXNzaW9ubW9uaXRvci1zeXN0ZW1kLURlZHVw bGljYXRlLWNvZGUtcGF0aHMucGF0Y2gNCiswLjExMy9zZXNzaW9ubW9uaXRvci1zeXN0ZW1kLXBy ZXBhcmUtZm9yLUQtQnVzLXVzZXItYnVzLW1vLnBhdGNoDQorMC4xMTMvUmVmdXNlLWR1cGxpY2F0 ZS11c2VyLWFyZ3VtZW50cy10by1wa2V4ZWMucGF0Y2gNCiswLjExMy8wMGdpdF9maXhfbWVtbGVh ay5wYXRjaA0KKzAuMTEzLzAwZ2l0X2ludmFsaWRfb2JqZWN0X3BhdGhzLnBhdGNoDQorMC4xMTMv c2Vzc2lvbm1vbml0b3Itc3lzdGVtZC1Vc2Utc2RfdWlkX2dldF9zdGF0ZS10by1jaGVjay5wYXRj aA0KKzAuMTEzL0ZpeC1hLXBvc3NpYmxlLU5VTEwtZGVyZWZlcmVuY2UucGF0Y2gNCiswLjExMy9S ZW1vdmUtYS1yZWR1bmRhbnQtYXNzaWdubWVudC5wYXRjaA0KKzAuMTEzL0ZpeC1kdXBsaWNhdGUt R0Vycm9yLXVzZS13aGVuLXVpZC1pcy1taXNzaW5nLnBhdGNoDQorMC4xMTMvRml4LWEtY3Jhc2gt d2hlbi10d28tYXV0aGVudGljYXRpb24tcmVxdWVzdHMtYXJlLWluLS5wYXRjaA0KKzAuMTEzL0NW RS0yMDE1LTQ2MjUtVXNlLXVucHJlZGljdGFibGUtY29va2llLXZhbHVlcy1rZWVwLXQucGF0Y2gN CiswLjExMy9DVkUtMjAxNS00NjI1LUJpbmQtdXNlLW9mLWNvb2tpZXMtdG8tc3BlY2lmaWMtdWlk cy5wYXRjaA0KKzAuMTEzL2RvY3MtVXBkYXRlLWZvci1jaGFuZ2VzLXRvLXVpZC1iaW5kaW5nLUF1 dGhlbnRpY2F0aW8ucGF0Y2gNCiswLjExMy9GaXgtYS1wZXItYXV0aG9yaXphdGlvbi1tZW1vcnkt bGVhay5wYXRjaA0KKzAuMTEzL0ZpeC1hLW1lbW9yeS1sZWFrLXdoZW4tcmVnaXN0ZXJpbmctYW4t YXV0aGVudGljYXRpb24ucGF0Y2gNCiswLjExMy9DVkUtMjAxNS0zMjU1LUZpeC1HSGFzaFRhYmxl LXVzYWdlLnBhdGNoDQorMC4xMTMvRml4LXVzZS1hZnRlci1mcmVlLWluLXBvbGtpdGFnZW50c2Vz c2lvbi5jLnBhdGNoDQorMC4xMTMvUkVBRE1FLU5vdGUtdG8tc2VuZC1zZWN1cml0eS1yZXBvcnRz LXZpYS1EQnVzLXMtbWVjaC5wYXRjaA0KKzAuMTE0L0ZpeC1tdWx0aS1saW5lLXBhbS10ZXh0LWlu Zm8ucGF0Y2gNCiswLjExNC9SZWZhY3Rvci1zZW5kX3RvX2hlbHBlci11c2FnZS5wYXRjaA0KKzAu MTE0L0FkZC1nZXR0ZXh0LXN1cHBvcnQtZm9yLS5wb2xpY3ktZmlsZXMucGF0Y2gNCiswLjExNC9n ZXR0ZXh0LXN3aXRjaC10by1kZWZhdWx0LXRyYW5zbGF0ZS1uby5wYXRjaA0KKzAuMTE0L1N1cHBv cnQtcG9sa2l0LXNlc3Npb24tYWdlbnQtcnVubmluZy1vdXRzaWRlLXVzZXItc2Vzc2lvbi5wYXRj aA0KKzAuMTE1L0ZpeC1DVkUtMjAxOC0xMTE2LVRydXN0aW5nLWNsaWVudC1zdXBwbGllZC1VSUQu cGF0Y2gNCiswMV9wYW1fcG9sa2l0LnBhdGNoDQorMDJfZ2V0dGV4dC5wYXRjaA0KKzA1X3JldmVy dC1hZG1pbi1pZGVudGl0aWVzLXVuaXgtZ3JvdXAtd2hlZWwucGF0Y2gNCiswNl9zeXN0ZW1kLXNl cnZpY2UucGF0Y2gNCisxMF9idWlsZC1hZ2FpbnN0LWxpYnN5c3RlbWQucGF0Y2gNCitNb3ZlLUQt QnVzLXBvbGljeS1maWxlLXRvLXVzci1zaGFyZS1kYnVzLTEtc3lzdGVtLmQucGF0Y2gNCiAwMDAy LWF1dG9tYWtlLWFkZC1taXNzaW5nLWNvbmRpdGlvbmFsLUhBVkVfSU5UUk9TUEVDVElPTi5wYXRj aA0KLSMgNGI4MjdjMTlmZmMzZGQ3N2I1N2Q4OWY5YzJjOWFiOGQgIC0gZ2l0LXB0eC1wYXRjaGVz IG1hZ2ljDQpkaWZmIC0tZ2l0IGEvcnVsZXMvcG9sa2l0Lm1ha2UgYi9ydWxlcy9wb2xraXQubWFr ZQ0KaW5kZXggNDUwNWUwZTc4Li42ZTdiM2ViMGEgMTAwNjQ0DQotLS0gYS9ydWxlcy9wb2xraXQu bWFrZQ0KKysrIGIvcnVsZXMvcG9sa2l0Lm1ha2UNCkBAIC02MCw3ICs2MCw3IEBAICQoU1RBVEVE SVIpL3BvbGtpdC50YXJnZXRpbnN0YWxsOg0KIA0KICMgZGJ1cw0KIAlAJChjYWxsIGluc3RhbGxf Y29weSwgcG9sa2l0LCAwLCAwLCAwNjQ0LCAtLCBcDQotCQkvZXRjL2RidXMtMS9zeXN0ZW0uZC9v cmcuZnJlZWRlc2t0b3AuUG9saWN5S2l0MS5jb25mKQ0KKwkJL3Vzci9zaGFyZS9kYnVzLTEvc3lz dGVtLmQvb3JnLmZyZWVkZXNrdG9wLlBvbGljeUtpdDEuY29uZikNCiAJQCQoY2FsbCBpbnN0YWxs X2NvcHksIHBvbGtpdCwgMCwgMCwgMDY0NCwgLSwgXA0KIAkJL3Vzci9zaGFyZS9kYnVzLTEvc3lz dGVtLXNlcnZpY2VzL29yZy5mcmVlZGVza3RvcC5Qb2xpY3lLaXQxLnNlcnZpY2UpDQogDQotLSAN CjIuMTcuMQ0KDQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpwdHhkaXN0IG1haWxpbmcgbGlzdApwdHhkaXN0QHBlbmd1dHJvbml4LmRl