From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by mx.groups.io with SMTP id smtpd.web11.5847.1575648338423777820 for ; Fri, 06 Dec 2019 08:05:38 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="body hash did not verify" header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=bDvm5tAD; spf=pass (domain: intel.com, ip: 192.55.52.93, mailfrom: maciej.rabeda@intel.com) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 06 Dec 2019 08:04:47 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.69,285,1571727600"; d="scan'208";a="386542453" Received: from orsmsx108.amr.corp.intel.com ([10.22.240.6]) by orsmga005.jf.intel.com with ESMTP; 06 Dec 2019 08:04:45 -0800 Received: from orsmsx157.amr.corp.intel.com (10.22.240.23) by ORSMSX108.amr.corp.intel.com (10.22.240.6) with Microsoft SMTP Server (TLS) id 14.3.439.0; Fri, 6 Dec 2019 08:04:45 -0800 Received: from ORSEDG001.ED.cps.intel.com (10.7.248.4) by ORSMSX157.amr.corp.intel.com (10.22.240.23) with Microsoft SMTP Server (TLS) id 14.3.439.0; Fri, 6 Dec 2019 08:04:45 -0800 Received: from NAM02-CY1-obe.outbound.protection.outlook.com (104.47.37.52) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (TLS) id 14.3.439.0; Fri, 6 Dec 2019 08:04:45 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fY3gMN1AFBbhgG3fQWiXd/o7cT3WFmoyyLL9BK0NGHyg1EGj2M1Vo7tRSetTKefmdqCerczXvYvyIifcd+XudvFRRzLPzHCycTnwe9iNBVcN2FTnqDxpGkYGshmqha3qRHeCGLKWgXST0qklEv17fOM8RcEONnKK2jQH9xjv3bdoIaPbAK5KuTzlEKfl5aDJvpXhY/PTOTxWw4lJnli5d8ofWPCTzPugLUfVYc+CDnKgpAjagUbKq6QkUEGJXMui6q762IgP7SdDeabivFX2hHspeXFww9wp/mmdZEw457BY6BZVmzGOqRGL/l49wXWi0i3e+9eTaEFTSvt4yOAMqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Is851nhFWUsAxRlsHbaD/SDu7gLt0VhNOVoUOnHZPRw=; b=ABPybPvfzhGn2ecX4+3Hf1AaWsYJXG1XSXjSdKPJ1zxQiwmEom1xB2b3g6ZVvBG9CCKonW7MfS/4opU2V/V1nZW+P7kra4Ri2hsmky7Z9OItMhPadrN89PLN1SebQ7GH2owN1dGioGc1Q4sDDFtREFSl+A/43ye1mw71n70GJchbfWfl7N54+JYW8b3GlnB5cVGxcq4givK5t5I9yixjrbqWfN53DAI6lqv3OAZlDTrYuUbOv5SRaVZP0H7iRP1+Q2Y2tkpPgVcXbyQh9AOWV//vQUK8VCsCTs+5R8CMvrw0nhEva+JPpOUUJmigIiUTGqJq8siaoInf5DJi1cqa+g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Is851nhFWUsAxRlsHbaD/SDu7gLt0VhNOVoUOnHZPRw=; b=bDvm5tADH05sAKxcCpxTjYY86hQnJeiuVGTd0sImr3OXeHLw0EF2Kzn13XTN1e7sUg1Z+EgJ6meCSUgrC3OGGMbL2QLenLMXdZmXesJVjFpd5GdwD05J+lzfJcKkznp8SDNx69jlQLpxLAG8ShilRWFf9e5jz0mA6Of1MvDY49c= Received: from SN6PR11MB3535.namprd11.prod.outlook.com (52.135.125.32) by SN6PR11MB2704.namprd11.prod.outlook.com (52.135.92.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2516.17; Fri, 6 Dec 2019 16:04:41 +0000 Received: from SN6PR11MB3535.namprd11.prod.outlook.com ([fe80::3d0e:c081:4ab:3857]) by SN6PR11MB3535.namprd11.prod.outlook.com ([fe80::3d0e:c081:4ab:3857%4]) with mapi id 15.20.2495.014; Fri, 6 Dec 2019 16:04:41 +0000 From: "Rabeda, Maciej" To: Philippe Mathieu-Daude , "devel@edk2.groups.io" CC: Antoine Coeur , "Wu, Jiaxin" , "Fu, Siyuan" Subject: Re: [PATCH 41/79] NetworkPkg/Ip4Dxe: Fix various typos Thread-Topic: [PATCH 41/79] NetworkPkg/Ip4Dxe: Fix various typos Thread-Index: AQHVqfXVdhBzXaqSlEKJnMMnK6cjnqetScVA Date: Fri, 6 Dec 2019 16:04:41 +0000 Message-ID: References: <20191203161602.15969-1-philmd@redhat.com> <20191203161602.15969-42-philmd@redhat.com> In-Reply-To: <20191203161602.15969-42-philmd@redhat.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows x-ctpclassification: CTP_NT x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiNzc0ZGFlZmMtODFhNC00ZGFjLTlmYWQtN2I2MTUxYmIwMmJjIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiMGNkclJQcFlydHArdGJnalpKdEdYeXREY3VvRytrRHREOVhjMlNUK1wvVUZxWUdUTmp4UW45dVFwZ1lXUEJtMVIifQ== dlp-reaction: no-action dlp-version: 11.2.0.6 authentication-results: spf=none (sender IP is ) smtp.mailfrom=maciej.rabeda@intel.com; x-originating-ip: [134.191.221.96] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 3da9d5c4-e18e-40d0-4e14-08d77a660108 x-ms-traffictypediagnostic: SN6PR11MB2704: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:612; x-forefront-prvs: 0243E5FD68 x-forefront-antispam-report: SFV:NSPM;SFS:(10019020)(396003)(366004)(376002)(136003)(39860400002)(346002)(13464003)(189003)(199004)(55016002)(66476007)(478600001)(66946007)(2906002)(66556008)(229853002)(52536014)(64756008)(66446008)(305945005)(7696005)(76176011)(19627235002)(26005)(186003)(76116006)(5660300002)(71200400001)(81156014)(81166006)(30864003)(8676002)(6506007)(71190400001)(8936002)(107886003)(316002)(9686003)(33656002)(74316002)(102836004)(86362001)(53546011)(99286004)(4326008)(110136005)(54906003)(559001)(579004)(569006);DIR:OUT;SFP:1102;SCL:1;SRVR:SN6PR11MB2704;H:SN6PR11MB3535.namprd11.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;MX:1;A:1; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: hSr2uyMzMqKw+3pHO06Mr6PaSCC6mt601FyUAR3s5FgoH5iqSPIF4DbUDb/9Y0e4Juv5/2PIcqS7XU3sDgV8NvOJxkaT5kU5iT9KWuBZ9UU27Xo5Fh7mXDXWXm+sbVkzHx3MiPjpmVXtdq9OUOZnXvNpdpCMcsxQK+kqbVww8SnKcRLVDBJx8uTFVzIf9gxWZrqbsaQsKnRFbAy6+f28OVi0rcdqLuXFGDrFW3S9N/mJGPbAvjCZlhE0A5GITsWbFOClhxd2739FYeMmxZIl27e9JxcIOsYncsfKMeq0WcLzXvZKP96zemrqDswrtMtgPjEIt6bY1kyN/JjOAZLeLX7N+Mcxs77AzS8PjjSFrA8muOjnJr640U2IZ5OtxHSfjJOTh7aEHpBSJs2ulz7Cs4tMJxrvbi/+vaLh7Q4JXTeBcVsiEwr/MMmA6BYQjiWxQ2ALYhlVgdiIu5pXGtsknRtgjZYEkww4Te7liDMyMz9aFkwQeNzyEuOtwIZMMbxfm6Q6jd6f4FK4GrKCAqoofQ== MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 3da9d5c4-e18e-40d0-4e14-08d77a660108 X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Dec 2019 16:04:41.6799 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 9TOlQg2SZ+VUOmo774ZGJ9IXnvNJGmxcdrvdV1TmxVjmVd4biBh06ePlhfJOMd6WXlYNCVh5s5/qP1izbakTEA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR11MB2704 Return-Path: maciej.rabeda@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 UmV2aWV3ZWQtYnk6IE1hY2llaiBSYWJlZGEgPG1hY2llai5yYWJlZGFAaW50ZWwuY29tPg0KDQpU aGFua3MhDQpNYWNpZWoNCg0KLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCkZyb206IFBoaWxp cHBlIE1hdGhpZXUtRGF1ZGUgPHBoaWxtZEByZWRoYXQuY29tPiANClNlbnQ6IFR1ZXNkYXksIERl Y2VtYmVyIDMsIDIwMTkgMTc6MTUNClRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbw0KQ2M6IEFudG9p bmUgQ29ldXIgPGNvZXVyQGdteC5mcj47IFd1LCBKaWF4aW4gPGppYXhpbi53dUBpbnRlbC5jb20+ OyBGdSwgU2l5dWFuIDxzaXl1YW4uZnVAaW50ZWwuY29tPjsgUmFiZWRhLCBNYWNpZWogPG1hY2ll ai5yYWJlZGFAaW50ZWwuY29tPjsgUGhpbGlwcGUgTWF0aGlldS1EYXVkZSA8cGhpbG1kQHJlZGhh dC5jb20+DQpTdWJqZWN0OiBbUEFUQ0ggNDEvNzldIE5ldHdvcmtQa2cvSXA0RHhlOiBGaXggdmFy aW91cyB0eXBvcw0KDQpGcm9tOiBBbnRvaW5lIENvZXVyIDxjb2V1ckBnbXguZnI+DQoNCkZpeCB2 YXJpb3VzIHR5cG9zIGluIGNvbW1lbnRzIGFuZCBkb2N1bWVudGF0aW9uLg0KDQpDYzogSmlheGlu IFd1IDxqaWF4aW4ud3VAaW50ZWwuY29tPg0KQ2M6IFNpeXVhbiBGdSA8c2l5dWFuLmZ1QGludGVs LmNvbT4NCkNjOiBNYWNpZWogUmFiZWRhIDxtYWNpZWoucmFiZWRhQGludGVsLmNvbT4NClJldmll d2VkLWJ5OiBQaGlsaXBwZSBNYXRoaWV1LURhdWRlIDxwaGlsbWRAcmVkaGF0LmNvbT4NClNpZ25l ZC1vZmYtYnk6IFBoaWxpcHBlIE1hdGhpZXUtRGF1ZGUgPHBoaWxtZEByZWRoYXQuY29tPg0KLS0t DQogTmV0d29ya1BrZy9JcDREeGUvSXA0Q29tbW9uLmggICAgICB8IDE0ICsrKysrLS0tLS0NCiBO ZXR3b3JrUGtnL0lwNER4ZS9JcDRDb25maWcySW1wbC5oIHwgIDIgKy0NCiBOZXR3b3JrUGtnL0lw NER4ZS9JcDREcml2ZXIuaCAgICAgIHwgIDYgKystLS0NCiBOZXR3b3JrUGtnL0lwNER4ZS9JcDRJ Y21wLmggICAgICAgIHwgIDggKysrLS0tDQogTmV0d29ya1BrZy9JcDREeGUvSXA0SWYuaCAgICAg ICAgICB8ICA0ICstLQ0KIE5ldHdvcmtQa2cvSXA0RHhlL0lwNElnbXAuaCAgICAgICAgfCAgMiAr LQ0KIE5ldHdvcmtQa2cvSXA0RHhlL0lwNEltcGwuaCAgICAgICAgfCAgOCArKystLS0NCiBOZXR3 b3JrUGtnL0lwNER4ZS9JcDRJbnB1dC5oICAgICAgIHwgIDYgKystLS0NCiBOZXR3b3JrUGtnL0lw NER4ZS9JcDRPdXRwdXQuaCAgICAgIHwgIDQgKy0tDQogTmV0d29ya1BrZy9JcDREeGUvSXA0Um91 dGUuaCAgICAgICB8IDEyICsrKystLS0tLQ0KIE5ldHdvcmtQa2cvSXA0RHhlL0lwNENvbW1vbi5j ICAgICAgfCAxMCArKystLS0tDQogTmV0d29ya1BrZy9JcDREeGUvSXA0Q29uZmlnMkltcGwuYyB8 IDEwICsrKy0tLS0NCiBOZXR3b3JrUGtnL0lwNER4ZS9JcDRDb25maWcyTnYuYyAgIHwgIDQgKy0t DQogTmV0d29ya1BrZy9JcDREeGUvSXA0RHJpdmVyLmMgICAgICB8IDEwICsrKy0tLS0NCiBOZXR3 b3JrUGtnL0lwNER4ZS9JcDRJZi5jICAgICAgICAgIHwgMTQgKysrKystLS0tLQ0KIE5ldHdvcmtQ a2cvSXA0RHhlL0lwNElnbXAuYyAgICAgICAgfCAgNiArKy0tLQ0KIE5ldHdvcmtQa2cvSXA0RHhl L0lwNEltcGwuYyAgICAgICAgfCAxNCArKysrKy0tLS0tDQogTmV0d29ya1BrZy9JcDREeGUvSXA0 SW5wdXQuYyAgICAgICB8IDI4ICsrKysrKysrKystLS0tLS0tLS0tDQogTmV0d29ya1BrZy9JcDRE eGUvSXA0T3B0aW9uLmMgICAgICB8ICAyICstDQogTmV0d29ya1BrZy9JcDREeGUvSXA0T3V0cHV0 LmMgICAgICB8IDEyICsrKystLS0tLQ0KIE5ldHdvcmtQa2cvSXA0RHhlL0lwNFJvdXRlLmMgICAg ICAgfCAxNCArKysrKy0tLS0tDQogMjEgZmlsZXMgY2hhbmdlZCwgOTUgaW5zZXJ0aW9ucygrKSwg OTUgZGVsZXRpb25zKC0pDQoNCmRpZmYgLS1naXQgYS9OZXR3b3JrUGtnL0lwNER4ZS9JcDRDb21t b24uaCBiL05ldHdvcmtQa2cvSXA0RHhlL0lwNENvbW1vbi5oIGluZGV4IDhmYmZkNTQ4NzIxOS4u YTg0NjAyZDQ1YWMwIDEwMDY0NA0KLS0tIGEvTmV0d29ya1BrZy9JcDREeGUvSXA0Q29tbW9uLmgN CisrKyBiL05ldHdvcmtQa2cvSXA0RHhlL0lwNENvbW1vbi5oDQpAQCAtMjMsNyArMjMsNyBAQCB0 eXBlZGVmIHN0cnVjdCBfSVA0X1NFUlZJQ0UgICAgSVA0X1NFUlZJQ0U7DQogI2RlZmluZSBJUDRf TElOS19QUk9NSVNDICAgICAgMHgwMDAwMDAwNA0KIA0KIC8vDQotLy8gSVA0IGFkZHJlc3MgY2Fz dCB0eXBlIGNsYXNzZmljYXRpb24uIEtlZXAgaXQgdHJ1ZSB0aGF0IGFueQ0KKy8vIElQNCBhZGRy ZXNzIGNhc3QgdHlwZSBjbGFzc2lmaWNhdGlvbi4gS2VlcCBpdCB0cnVlIHRoYXQgYW55DQogLy8g dHlwZSBiaWdnZXIgdGhhbiBvciBlcXVhbCB0byBMT0NBTF9CUk9BRENBU1QgaXMgYnJvYWRjYXN0 Lg0KIC8vDQogI2RlZmluZSBJUDRfUFJPTUlTQ1VPVVMgICAgICAgMQ0KQEAgLTYzLDEzICs2Mywx MyBAQCB0eXBlZGVmIHN0cnVjdCBfSVA0X1NFUlZJQ0UgICAgSVA0X1NFUlZJQ0U7DQogI2RlZmlu ZSBJUDRfSVNfQlJPQURDQVNUKENhc3RUeXBlKSAoKENhc3RUeXBlKSA+PSBJUDRfTE9DQUxfQlJP QURDQVNUKQ0KIA0KIC8vLw0KLS8vLyBDb252ZXIgdGhlIE1pY3Jvc2Vjb25kIHRvIHNlY29uZC4g SVAgdHJhbnNtaXQvcmVjZWl2ZSB0aW1lIGlzDQorLy8vIENvbnZlcnQgdGhlIE1pY3Jvc2Vjb25k IHRvIHNlY29uZC4gSVAgdHJhbnNtaXQvcmVjZWl2ZSB0aW1lIGlzDQogLy8vIGluIHRoZSB1bml0 IG9mIG1pY3Jvc2Vjb25kLiBJUCB0aWNrcyBvbmNlIHBlciBzZWNvbmQuDQogLy8vDQogI2RlZmlu ZSBJUDRfVVNfVE9fU0VDKFVzKSAoKChVcykgKyA5OTk5OTkpIC8gMTAwMDAwMCkNCiANCiAvKioN Ci0gIFJldHVybiB0aGUgY2FzdCB0eXBlIChVbmljYXN0L0JvcmFkY2FzdCkgc3BlY2lmaWMgdG8g YW4NCisgIFJldHVybiB0aGUgY2FzdCB0eXBlIChVbmljYXN0L0Jyb2FkY2FzdCkgc3BlY2lmaWMg dG8gYW4NCiAgIGludGVyZmFjZS4gQWxsIHRoZSBhZGRyZXNzZXMgYXJlIGhvc3QgYnl0ZSBvcmRl cmVkLg0KIA0KICAgQHBhcmFtW2luXSAgSXBBZGRyICAgICAgICAgICAgICAgIFRoZSBJUCBhZGRy ZXNzIHRvIGNsYXNzaWZ5IGluIGhvc3QgYnl0ZSBvcmRlcg0KQEAgLTc3LDcgKzc3LDcgQEAgdHlw ZWRlZiBzdHJ1Y3QgX0lQNF9TRVJWSUNFICAgIElQNF9TRVJWSUNFOw0KIA0KICAgQHJldHVybiBU aGUgY2FzdCB0eXBlIG9mIHRoaXMgSVAgYWRkcmVzcyBzcGVjaWZpYyB0byB0aGUgaW50ZXJmYWNl Lg0KICAgQHJldHZhbCBJUDRfTE9DQUxfSE9TVCAgICAgICAgVGhlIElwQWRkciBlcXVhbHMgdG8g dGhlIGludGVyZmFjZSdzIGFkZHJlc3MNCi0gIEByZXR2YWwgSVA0X1NVQk5FVF9CUk9BRENBU1Qg IFRoZSBJcEFkZHIgaXMgYSBkaXJlY3RlZCBzdWJuZXQgYm9yYWRjYXN0IHRvICB0aGUNCisgIEBy ZXR2YWwgSVA0X1NVQk5FVF9CUk9BRENBU1QgIFRoZSBJcEFkZHIgaXMgYSBkaXJlY3RlZCBzdWJu ZXQgDQorIGJyb2FkY2FzdCB0byAgdGhlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBpbnRlcmZhY2UNCiAgIEByZXR2YWwgSVA0X05FVF9CUk9BRENBU1QgICAgIFRoZSBJcEFkZHIg aXMgYSBuZXR3b3JrIGJyb2FkY2FzdCB0byB0aGUgaW50ZXJmYWNlDQogICBAcmV0dmFsIDAgICAg ICAgICAgICAgICAgICAgICBPdGhlcndpc2UuDQpAQCAtMTQ2LDcgKzE0Niw3IEBAIElwNEZpbmRO ZXQgKA0KICAgRmluZCBhbiBpbnRlcmZhY2Ugb2YgdGhlIHNlcnZpY2Ugd2l0aCB0aGUgc2FtZSBJ cC9OZXRtYXNrIHBhaXIuDQogDQogICBAcGFyYW1baW5dICBJcFNiICAgICAgICAgICAgICAgICAg SXA0IHNlcnZpY2UgYmluZGluZyBpbnN0YW5jZQ0KLSAgQHBhcmFtW2luXSAgSXAgICAgICAgICAg ICAgICAgICAgIFRoZSBJcCBhZHJlc3MgdG8gZmluZCAoaG9zdCBieXRlIG9yZGVyKQ0KKyAgQHBh cmFtW2luXSAgSXAgICAgICAgICAgICAgICAgICAgIFRoZSBJcCBhZGRyZXNzIHRvIGZpbmQgKGhv c3QgYnl0ZSBvcmRlcikNCiAgIEBwYXJhbVtpbl0gIE5ldG1hc2sgICAgICAgICAgICAgICBUaGUg bmV0d29yayB0byBmaW5kIChob3N0IGJ5dGUgb3JkZXIpDQogDQogICBAcmV0dXJuIFRoZSBJUDRf SU5URVJGQUNFIHBvaW50IGlmIGZvdW5kLCBvdGhlcndpc2UgTlVMTCBAQCAtMTk5LDEwICsxOTks MTAgQEAgSXA0TnRvaEhlYWQgKA0KIC8qKg0KICAgVmFsaWRhdGUgdGhhdCBJcC9OZXRtYXNrIHBh aXIgaXMgT0sgdG8gYmUgdXNlZCBhcyBzdGF0aW9uDQogICBhZGRyZXNzLiBPbmx5IGNvbnRpbnVv dXMgbmV0bWFza3MgYXJlIHN1cHBvcnRlZC4gYW5kIGNoZWNrDQotICB0aGF0IFN0YXRpb25BZGRy ZXNzIGlzIGEgdW5pY2FzdCBhZGRyZXNzIG9uIHRoZSBuZXd0d29yay4NCisgIHRoYXQgU3RhdGlv bkFkZHJlc3MgaXMgYSB1bmljYXN0IGFkZHJlc3Mgb24gdGhlIG5ldHdvcmsuDQogDQogICBAcGFy YW1baW5dICBJcCAgICAgICAgICAgICAgICAgVGhlIElQIGFkZHJlc3MgdG8gdmFsaWRhdGUuDQot ICBAcGFyYW1baW5dICBOZXRtYXNrICAgICAgICAgICAgVGhlIG5ldG1ha3Mgb2YgdGhlIElQLg0K KyAgQHBhcmFtW2luXSAgTmV0bWFzayAgICAgICAgICAgIFRoZSBuZXRtYXNrIG9mIHRoZSBJUC4N CiANCiAgIEByZXR2YWwgVFJVRSAgICAgICAgICAgICAgICAgICBUaGUgSXAvTmV0bWFzayBwYWly IGlzIHZhbGlkLg0KICAgQHJldHZhbCBGQUxTRSAgICAgICAgICAgICAgICAgIFRoZSBJcC9OZXRt YXNrIHBhaXIgaXMgaW52YWxpZC4NCmRpZmYgLS1naXQgYS9OZXR3b3JrUGtnL0lwNER4ZS9JcDRD b25maWcySW1wbC5oIGIvTmV0d29ya1BrZy9JcDREeGUvSXA0Q29uZmlnMkltcGwuaA0KaW5kZXgg MTcxNmRkZTM5OWFiLi4wZTQ2MzllNzdjNzggMTAwNjQ0DQotLS0gYS9OZXR3b3JrUGtnL0lwNER4 ZS9JcDRDb25maWcySW1wbC5oDQorKysgYi9OZXR3b3JrUGtnL0lwNER4ZS9JcDRDb25maWcySW1w bC5oDQpAQCAtMjA1LDcgKzIwNSw3IEBAIHR5cGVkZWYgc3RydWN0IHsNCiAvKioNCiAgIFJlYWQg dGhlIGNvbmZpZ3VyYXRpb24gZGF0YSBmcm9tIHZhcmlhYmxlIHN0b3JhZ2UgYWNjb3JkaW5nIHRv IHRoZSBWYXJOYW1lIGFuZA0KICAgZ0VmaUlwNENvbmZpZzJQcm90b2NvbEd1aWQuIEl0IGNoZWNr cyB0aGUgaW50ZWdyaXR5IG9mIHZhcmlhYmxlIGRhdGEuIElmIHRoZQ0KLSAgZGF0YSBpcyBjb3Jy dXB0ZWQsIGl0IGNsZWFycyB0aGUgdmFyaWFibGUgZGF0YSB0byBaRVJPLiBPdGhld2lzZSwgaXQg b3V0cHV0cyB0aGUNCisgIGRhdGEgaXMgY29ycnVwdGVkLCBpdCBjbGVhcnMgdGhlIHZhcmlhYmxl IGRhdGEgdG8gWkVSTy4gT3RoZXJ3aXNlLCBpdCANCisgb3V0cHV0cyB0aGUNCiAgIGNvbmZpZ3Vy YXRpb24gZGF0YSB0byBJUDRfQ09ORklHMl9JTlNUQU5DRS4NCiANCiAgIEBwYXJhbVtpbl0gICAg ICBWYXJOYW1lICAgICAgIFRoZSBwb2ludGVyIHRvIHRoZSB2YXJpYWJsZSBuYW1lDQpkaWZmIC0t Z2l0IGEvTmV0d29ya1BrZy9JcDREeGUvSXA0RHJpdmVyLmggYi9OZXR3b3JrUGtnL0lwNER4ZS9J cDREcml2ZXIuaCBpbmRleCBiZTM3NDcxNTcwM2MuLmQ5NGJkZjNiZGVjMSAxMDA2NDQNCi0tLSBh L05ldHdvcmtQa2cvSXA0RHhlL0lwNERyaXZlci5oDQorKysgYi9OZXR3b3JrUGtnL0lwNER4ZS9J cDREcml2ZXIuaA0KQEAgLTQ3LDcgKzQ3LDcgQEAgSXA0RHJpdmVyRW50cnlQb2ludCAoDQogICAp Ow0KIA0KIC8vDQotLy8gRnVuY3Rpb24gcHJvdG90eXBlcyBmb3IgdGhlIERyaXZyIEJpbmRpbmcg UHJvdG9jb2wNCisvLyBGdW5jdGlvbiBwcm90b3R5cGVzIGZvciB0aGUgRHJpdmVyIEJpbmRpbmcg UHJvdG9jb2wNCiAvLw0KIC8qKg0KICAgVGVzdCB0byBzZWUgaWYgdGhpcyBkcml2ZXIgc3VwcG9y dHMgQ29udHJvbGxlckhhbmRsZS4gVGhpcyBzZXJ2aWNlIEBAIC0xNDMsNyArMTQzLDcgQEAgSXA0 RHJpdmVyQmluZGluZ1N0b3AgKA0KICAgICAgICAgICAgICAgICAgICAgICB0aGVuIGEgbmV3IGhh bmRsZSBpcyBjcmVhdGVkLiBJZiBpdCBpcyBhIHBvaW50ZXIgdG8gYW4gZXhpc3RpbmcgVUVGSSBo YW5kbGUsDQogICAgICAgICAgICAgICAgICAgICAgIHRoZW4gdGhlIHByb3RvY29sIGlzIGFkZGVk IHRvIHRoZSBleGlzdGluZyBVRUZJIGhhbmRsZS4NCiANCi0gIEByZXR2YWwgRUZJX1NVQ0NFUyAg ICAgICAgICAgIFRoZSBwcm90b2NvbCB3YXMgYWRkZWQgdG8gQ2hpbGRIYW5kbGUuDQorICBAcmV0 dmFsIEVGSV9TVUNDRVNTICAgICAgICAgICBUaGUgcHJvdG9jb2wgd2FzIGFkZGVkIHRvIENoaWxk SGFuZGxlLg0KICAgQHJldHZhbCBFRklfSU5WQUxJRF9QQVJBTUVURVIgQ2hpbGRIYW5kbGUgaXMg TlVMTC4NCiAgIEByZXR2YWwgRUZJX09VVF9PRl9SRVNPVVJDRVMgIFRoZXJlIGFyZSBub3QgZW5v dWdoIHJlc291cmNlcyBhdmFpbGFibGUgdG8gY3JlYXRlDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB0aGUgY2hpbGQgQEAgLTE2Nyw3ICsxNjcsNyBAQCBJcDRTZXJ2aWNlQmluZGlu Z0NyZWF0ZUNoaWxkICgNCiAgIEBwYXJhbSAgVGhpcyAgICAgICAgUG9pbnRlciB0byB0aGUgRUZJ X1NFUlZJQ0VfQklORElOR19QUk9UT0NPTCBpbnN0YW5jZS4NCiAgIEBwYXJhbSAgQ2hpbGRIYW5k bGUgSGFuZGxlIG9mIHRoZSBjaGlsZCB0byBkZXN0cm95DQogDQotICBAcmV0dmFsIEVGSV9TVUND RVMgICAgICAgICAgICBUaGUgcHJvdG9jb2wgd2FzIHJlbW92ZWQgZnJvbSBDaGlsZEhhbmRsZS4N CisgIEByZXR2YWwgRUZJX1NVQ0NFU1MgICAgICAgICAgIFRoZSBwcm90b2NvbCB3YXMgcmVtb3Zl ZCBmcm9tIENoaWxkSGFuZGxlLg0KICAgQHJldHZhbCBFRklfVU5TVVBQT1JURUQgICAgICAgQ2hp bGRIYW5kbGUgZG9lcyBub3Qgc3VwcG9ydCB0aGUgcHJvdG9jb2wgdGhhdCBpcyBiZWluZyByZW1v dmVkLg0KICAgQHJldHZhbCBFRklfSU5WQUxJRF9QQVJBTUVURVIgQ2hpbGQgaGFuZGxlIGlzIE5V TEwuDQogICBAcmV0dmFsIEVGSV9BQ0NFU1NfREVOSUVEICAgICBUaGUgcHJvdG9jb2wgY291bGQg bm90IGJlIHJlbW92ZWQgZnJvbSB0aGUgQ2hpbGRIYW5kbGUNCmRpZmYgLS1naXQgYS9OZXR3b3Jr UGtnL0lwNER4ZS9JcDRJY21wLmggYi9OZXR3b3JrUGtnL0lwNER4ZS9JcDRJY21wLmggaW5kZXgg YTUyMjAwMTc2ZjVhLi5hMjM5NTJkYmRkZWQgMTAwNjQ0DQotLS0gYS9OZXR3b3JrUGtnL0lwNER4 ZS9JcDRJY21wLmgNCisrKyBiL05ldHdvcmtQa2cvSXA0RHhlL0lwNEljbXAuaA0KQEAgLTEwLDcg KzEwLDcgQEAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQgICNk ZWZpbmUgX19FRklfSVA0X0lDTVBfSF9fDQogDQogICAvLw0KLSAgLy8gSUNNUCB0eXBlIGRlZmlu YXRpb25zDQorICAvLyBJQ01QIHR5cGUgZGVmaW5pdGlvbnMNCiAgIC8vDQogI2RlZmluZSBJQ01Q X0VDSE9fUkVQTFkgICAgICAgICAgICAwDQogI2RlZmluZSBJQ01QX0RFU1RfVU5SRUFDSEFCTEUg ICAgICAzDQpAQCAtMjcsNyArMjcsNyBAQCBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTIt Q2xhdXNlLVBhdGVudA0KICNkZWZpbmUgSUNNUF9ERUZBVUxUX0NPREUgICAgICAgICAgMA0KIA0K ICAgLy8NCi0gIC8vIElDTVAgY29kZSBkZWZpbmF0aW9ucyBmb3IgSUNNUF9ERVNUX1VOUkVBQ0hB QkxFDQorICAvLyBJQ01QIGNvZGUgZGVmaW5pdGlvbnMgZm9yIElDTVBfREVTVF9VTlJFQUNIQUJM RQ0KICAgLy8NCiAjZGVmaW5lIElDTVBfTkVUX1VOUkVBQ0hBQkxFICAgICAgIDANCiAjZGVmaW5l IElDTVBfSE9TVF9VTlJFQUNIQUJMRSAgICAgIDENCkBAIC00NCwxMyArNDQsMTMgQEAgU1BEWC1M aWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQgICNkZWZpbmUgSUNNUF9IT1NU X1VOUkVBQ0hBQkxFX1RPUyAgMTINCiANCiAgIC8vDQotICAvLyBJQ01QIGNvZGUgZGVmaW5hdGlv bnMgZm9yIElDTVBfVElNRV9FWENFRURFRA0KKyAgLy8gSUNNUCBjb2RlIGRlZmluaXRpb25zIGZv ciBJQ01QX1RJTUVfRVhDRUVERUQNCiAgIC8vDQogI2RlZmluZSBJQ01QX1RJTUVPVVRfSU5fVFJB TlNJVCAgICAwDQogI2RlZmluZSBJQ01QX1RJTUVPVVRfUkVBU1NFTUJMRSAgICAxICAvLyBIb3N0 IG1heSBnZW5lcmF0ZQ0KIA0KICAgLy8NCi0gIC8vIElDTVAgY29kZSBkZWZpbmF0aW9ucyBmb3Ig SUNNUF9USU1FX0VYQ0VFREVEDQorICAvLyBJQ01QIGNvZGUgZGVmaW5pdGlvbnMgZm9yIElDTVBf VElNRV9FWENFRURFRA0KICAgLy8NCiAjZGVmaW5lIElDTVBfTkVUX1JFRElSRUNUICAgICAgICAg IDANCiAjZGVmaW5lIElDTVBfSE9TVF9SRURJUkVDVCAgICAgICAgIDENCmRpZmYgLS1naXQgYS9O ZXR3b3JrUGtnL0lwNER4ZS9JcDRJZi5oIGIvTmV0d29ya1BrZy9JcDREeGUvSXA0SWYuaCBpbmRl eCBkNzNiYjUyODVmOTcuLmVjOTUxZDMwNDM0ZSAxMDA2NDQNCi0tLSBhL05ldHdvcmtQa2cvSXA0 RHhlL0lwNElmLmgNCisrKyBiL05ldHdvcmtQa2cvSXA0RHhlL0lwNElmLmgNCkBAIC0xLDUgKzEs NSBAQA0KIC8qKiBAZmlsZQ0KLSAgRGVmaW5pdGlvbiBmb3IgSVA0IHBlc3VkbyBpbnRlcmZhY2Ug c3RydWN0dXJlLg0KKyAgRGVmaW5pdGlvbiBmb3IgSVA0IHBzZXVkbyBpbnRlcmZhY2Ugc3RydWN0 dXJlLg0KIA0KIENvcHlyaWdodCAoYykgMjAwNSAtIDIwMTgsIEludGVsIENvcnBvcmF0aW9uLiBB bGwgcmlnaHRzIHJlc2VydmVkLjxCUj4NCiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTIt Q2xhdXNlLVBhdGVudCBAQCAtMzI1LDcgKzMyNSw3IEBAIElwNENhbmNlbFJlY2VpdmUgKA0KIA0K ICAgQHJldHZhbCBFRklfQUxSRUFEWV9TVEFSVEVEICAgVGhlcmUgaXMgYWxyZWFkeSBhIHBlbmRp bmcgcmVjZWl2ZSByZXF1ZXN0Lg0KICAgQHJldHZhbCBFRklfT1VUX09GX1JFU09VUkNFUyAgRmFp bGVkIHRvIGFsbG9jYXRlIHJlc291cmNlIHRvIHJlY2VpdmUuDQotICBAcmV0dmFsIEVGSV9TVUND RVNTICAgICAgICAgICBUaGUgcmVjaWV2ZSByZXF1ZXN0IGhhcyBiZWVuIHN0YXJ0ZWQuDQorICBA cmV0dmFsIEVGSV9TVUNDRVNTICAgICAgICAgICBUaGUgcmVjZWl2ZSByZXF1ZXN0IGhhcyBiZWVu IHN0YXJ0ZWQuDQogICBAcmV0dmFsIG90aGVyICAgICAgICAgICAgICAgICBPdGhlciBlcnJvciBv Y2N1cnMuDQogDQogKiovDQpkaWZmIC0tZ2l0IGEvTmV0d29ya1BrZy9JcDREeGUvSXA0SWdtcC5o IGIvTmV0d29ya1BrZy9JcDREeGUvSXA0SWdtcC5oIGluZGV4IDQ5YzEzYmEzYTdhMC4uNTY2MzFi ZDRhZmIzIDEwMDY0NA0KLS0tIGEvTmV0d29ya1BrZy9JcDREeGUvSXA0SWdtcC5oDQorKysgYi9O ZXR3b3JrUGtnL0lwNER4ZS9JcDRJZ21wLmgNCkBAIC0xNzAsNyArMTcwLDcgQEAgSXA0Q29tYmlu ZUdyb3VwcyAoDQogICBAcGFyYW0gIENvdW50ICAgICAgICAgICAgIFRoZSBudW1iZXIgb2YgZ3Jv dXAgYWRkcmVzc2VzIGluIHRoZSBHcm91cHMuDQogICBAcGFyYW0gIEFkZHIgICAgICAgICAgICAg IFRoZSBJUDQgbXVsdGljYXN0IGFkZHJlc3MgdG8gcmVtb3ZlLg0KIA0KLSAgQHJldHVybiBUaGUg bnVibWVyIG9mIGdyb3VwIGFkZHJlc3NlcyBpbiB0aGUgR3JvdXBzIGFmdGVyIHJlbW92ZS4NCisg IEByZXR1cm4gVGhlIG51bWJlciBvZiBncm91cCBhZGRyZXNzZXMgaW4gdGhlIEdyb3VwcyBhZnRl ciByZW1vdmUuDQogICAgICAgICAgIEl0IGlzIENvdW50IGlmIHRoZSBBZGRyIGlzbid0IGluIHRo ZSBHcm91cHMuDQogDQogKiovDQpkaWZmIC0tZ2l0IGEvTmV0d29ya1BrZy9JcDREeGUvSXA0SW1w bC5oIGIvTmV0d29ya1BrZy9JcDREeGUvSXA0SW1wbC5oIGluZGV4IGEzMjJhODU5ODFhNS4uZThm ZjMzZDM4YWRjIDEwMDY0NA0KLS0tIGEvTmV0d29ya1BrZy9JcDREeGUvSXA0SW1wbC5oDQorKysg Yi9OZXR3b3JrUGtnL0lwNER4ZS9JcDRJbXBsLmgNCkBAIC0xLDUgKzEsNSBAQA0KIC8qKiBAZmls ZQ0KLSAgSXA0IGludGVybmFsIGZ1bmN0aW9ucyBhbmQgdHlwZSBkZWZpbnRpb25zLg0KKyAgSXA0 IGludGVybmFsIGZ1bmN0aW9ucyBhbmQgdHlwZSBkZWZpbml0aW9ucy4NCiANCiBDb3B5cmlnaHQg KGMpIDIwMDUgLSAyMDE4LCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC48 QlI+DQogKEMpIENvcHlyaWdodCAyMDE1IEhld2xldHQtUGFja2FyZCBEZXZlbG9wbWVudCBDb21w YW55LCBMLlAuPEJSPiBAQCAtMTM0LDcgKzEzNCw3IEBAIHN0cnVjdCBfSVA0X1BST1RPQ09MIHsN CiAgIExJU1RfRU5UUlkgICAgICAgICAgICAgICAgTGluazsgICAgICAgLy8gTGluayB0byBhbGwg dGhlIElQIHByb3RvY29sIGZyb20gdGhlIHNlcnZpY2UNCiANCiAgIC8vDQotICAvLyBVc2VyJ3Mg dHJhbnNtaXQvcmVjZWl2ZSB0b2tlbnMsIGFuZCByZWNlaXZlZC9kZWxpdmVyZCBwYWNrZXRzDQor ICAvLyBVc2VyJ3MgdHJhbnNtaXQvcmVjZWl2ZSB0b2tlbnMsIGFuZCByZWNlaXZlZC9kZWxpdmVy ZWQgcGFja2V0cw0KICAgLy8NCiAgIE5FVF9NQVAgICAgICAgICAgICAgICAgICAgUnhUb2tlbnM7 DQogICBORVRfTUFQICAgICAgICAgICAgICAgICAgIFR4VG9rZW5zOyAgIC8vIG1hcCBiZXR3ZWVu IChVc2VyJ3MgVG9rZW4sIElQNF9UWFRPS0VfV1JBUCkNCkBAIC0yNjAsNyArMjYwLDcgQEAgSXA0 U2VydmljZUNvbmZpZ01ucCAoDQogICApOw0KIA0KIC8qKg0KLSAgSW50aWlhbGl6ZSB0aGUgSVA0 X1BST1RPQ09MIHN0cnVjdHVyZSB0byB0aGUgdW5jb25maWd1cmVkIHN0YXRlcy4NCisgIEluaXRp YWxpemUgdGhlIElQNF9QUk9UT0NPTCBzdHJ1Y3R1cmUgdG8gdGhlIHVuY29uZmlndXJlZCBzdGF0 ZXMuDQogDQogICBAcGFyYW0gIElwU2IgICAgICAgICAgICAgICAgICAgVGhlIElQNCBzZXJ2aWNl IGluc3RhbmNlLg0KICAgQHBhcmFtICBJcEluc3RhbmNlICAgICAgICAgICAgIFRoZSBJUDQgY2hp bGQgaW5zdGFuY2UuDQpAQCAtMzE1LDcgKzMxNSw3IEBAIElwNENhbmNlbCAoDQogDQogICBAcmV0 dmFsIEVGSV9BTFJFQURZX1NUQVJURUQgICAgV2FudCB0byBqb2luIHRoZSBncm91cCwgYnV0IGFs cmVhZHkgYSBtZW1iZXIgb2YgaXQNCiAgIEByZXR2YWwgRUZJX09VVF9PRl9SRVNPVVJDRVMgICBG YWlsZWQgdG8gYWxsb2NhdGUgc29tZSByZXNvdXJjZXMuDQotICBAcmV0dmFsIEVGSV9ERVZJQ0Vf RVJST1IgICAgICAgRmFpbGVkIHRvIHNldCB0aGUgZ3JvdXAgY29uZmlndXJhdG9uDQorICBAcmV0 dmFsIEVGSV9ERVZJQ0VfRVJST1IgICAgICAgRmFpbGVkIHRvIHNldCB0aGUgZ3JvdXAgY29uZmln dXJhdGlvbg0KICAgQHJldHZhbCBFRklfU1VDQ0VTUyAgICAgICAgICAgIFN1Y2Nlc3NmdWxseSB1 cGRhdGVkIHRoZSBncm91cCBzZXR0aW5nLg0KICAgQHJldHZhbCBFRklfTk9UX0ZPVU5EICAgICAg ICAgIFRyeSB0byBsZWF2ZSB0aGUgZ3JvdXAgd2hpY2ggaXQgaXNuJ3QgYSBtZW1iZXIuDQogDQpk aWZmIC0tZ2l0IGEvTmV0d29ya1BrZy9JcDREeGUvSXA0SW5wdXQuaCBiL05ldHdvcmtQa2cvSXA0 RHhlL0lwNElucHV0LmggaW5kZXggZjRkNDVkMTYxM2QwLi45YmQ4NmUxNWM5Y2YgMTAwNjQ0DQot LS0gYS9OZXR3b3JrUGtnL0lwNER4ZS9JcDRJbnB1dC5oDQorKysgYi9OZXR3b3JrUGtnL0lwNER4 ZS9JcDRJbnB1dC5oDQpAQCAtMTI4LDcgKzEyOCw3IEBAIElwNEFjY3BldEZyYW1lICgNCiANCiAv KioNCiAgIERlbXVsdGlwbGUgdGhlIHBhY2tldC4gdGhlIHBhY2tldCBkZWxpdmVyeSBpcyBwcm9j ZXNzZWQgaW4gdHdvDQotICBwYXNzZXMuIFRoZSBmaXJzdCBwYXNzIHdpbGwgZW5xdWUgYSBzaGFy ZWQgY29weSBvZiB0aGUgcGFja2V0DQorICBwYXNzZXMuIFRoZSBmaXJzdCBwYXNzIHdpbGwgZW5x dWV1ZSBhIHNoYXJlZCBjb3B5IG9mIHRoZSBwYWNrZXQNCiAgIHRvIGVhY2ggSVA0IGNoaWxkIHRo YXQgYWNjZXB0cyB0aGUgcGFja2V0LiBUaGUgc2Vjb25kIHBhc3Mgd2lsbA0KICAgZGVsaXZlciBh IG5vbi1zaGFyZWQgY29weSBvZiB0aGUgcGFja2V0IHRvIGVhY2ggSVA0IGNoaWxkIHRoYXQNCiAg IGhhcyBwZW5kaW5nIHJlY2VpdmUgcmVxdWVzdHMuIERhdGEgaXMgY29waWVkIGlmIG1vcmUgdGhh biBvbmUgQEAgLTIxNSw3ICsyMTUsNyBAQCBJcDRQYWNrZXRUaW1lclRpY2tpbmcgKA0KICAgYWN0 aW9uczogYnlwYXNzIHRoZSBwYWNrZXQsIGRpc2NhcmQgdGhlIHBhY2tldCwgb3IgcHJvdGVjdCB0 aGUgcGFja2V0Lg0KIA0KICAgQHBhcmFtW2luXSAgICAgICBJcFNiICAgICAgICAgIFRoZSBJUDQg c2VydmljZSBpbnN0YW5jZS4NCi0gIEBwYXJhbVtpbiwgb3V0XSAgSGVhZCAgICAgICAgICBUaGUg VGhlIGNhbGxlciBzdXBwbGllZCBJUDQgaGVhZGVyLg0KKyAgQHBhcmFtW2luLCBvdXRdICBIZWFk ICAgICAgICAgIFRoZSBjYWxsZXIgc3VwcGxpZWQgSVA0IGhlYWRlci4NCiAgIEBwYXJhbVtpbiwg b3V0XSAgTmV0YnVmICAgICAgICBUaGUgSVA0IHBhY2tldCB0byBiZSBwcm9jZXNzZWQgYnkgSVBz ZWMuDQogICBAcGFyYW1baW4sIG91dF0gIE9wdGlvbnMgICAgICAgVGhlIGNhbGxlciBzdXBwbGll ZCBvcHRpb25zLg0KICAgQHBhcmFtW2luLCBvdXRdICBPcHRpb25zTGVuICAgIFRoZSBsZW5ndGgg b2YgdGhlIG9wdGlvbi4NCkBAIC0yMjcsNyArMjI3LDcgQEAgSXA0UGFja2V0VGltZXJUaWNraW5n ICgNCiAgIEByZXR2YWwgRUZJX1NVQ0NFU1MgICAgICAgICAgICBUaGUgcGFja2V0IHdhcyBieXBh c3NlZCBhbmQgYWxsIGJ1ZmZlcnMgcmVtYWluIHRoZSBzYW1lLg0KICAgQHJldHZhbCBFRklfU1VD Q0VTUyAgICAgICAgICAgIFRoZSBwYWNrZXQgd2FzIHByb3RlY3RlZC4NCiAgIEByZXR2YWwgRUZJ X0FDQ0VTU19ERU5JRUQgICAgICBUaGUgcGFja2V0IHdhcyBkaXNjYXJkZWQuDQotICBAcmV0dmFs IEVGSV9PVVRfT0ZfUkVTT1VSQ0VTICAgVGhlcmUgaXMgbm8gc3VmZmNpZW50IHJlc291cmNlIHRv IGNvbXBsZXRlIHRoZSBvcGVyYXRpb24uDQorICBAcmV0dmFsIEVGSV9PVVRfT0ZfUkVTT1VSQ0VT ICAgVGhlcmUgaXMgbm8gc3VmZmljaWVudCByZXNvdXJjZSB0byBjb21wbGV0ZSB0aGUgb3BlcmF0 aW9uLg0KICAgQHJldHZhbCBFRklfQlVGRkVSX1RPT19TTUFMTCAgIFRoZSBudW1iZXIgb2Ygbm9u LWVtcHR5IGJsb2NrIGlzIGJpZ2dlciB0aGFuIHRoZQ0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIG51bWJlciBvZiBpbnB1dCBkYXRhIGJsb2NrcyB3aGVuIGJ1aWxkIGEgZnJhZ21l bnQgdGFibGUuDQogDQpkaWZmIC0tZ2l0IGEvTmV0d29ya1BrZy9JcDREeGUvSXA0T3V0cHV0Lmgg Yi9OZXR3b3JrUGtnL0lwNER4ZS9JcDRPdXRwdXQuaCBpbmRleCBhZTU0ZjhiNDg1Y2EuLmJiNmZh NjQxYjA5MCAxMDA2NDQNCi0tLSBhL05ldHdvcmtQa2cvSXA0RHhlL0lwNE91dHB1dC5oDQorKysg Yi9OZXR3b3JrUGtnL0lwNER4ZS9JcDRPdXRwdXQuaA0KQEAgLTk5LDEwICs5OSwxMCBAQCBJcDRD YW5jZWxQYWNrZXQgKA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZyYWdtZW50LCBUdGws IFByb3RvY29sLCBTcmMgYW5kIERzdC4gQWxsIHRoZSBmaWVsZHMNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBhcmUgaW4gaG9zdCBieXRlIG9yZGVyLiBUaGlzIGZ1bmN0aW9uIHdpbGwgZmls bCBpbg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZSBWZXIsIEhlYWRMZW4sIGFuZCBj aGVja3N1bS4NCi0gIEBwYXJhbSAgT3B0aW9uICAgICAgICAgICBUaGUgb3JnaW5hbCBJUDQgb3B0 aW9uIHRvIGNvcHkgZnJvbQ0KKyAgQHBhcmFtICBPcHRpb24gICAgICAgICAgIFRoZSBvcmlnaW5h bCBJUDQgb3B0aW9uIHRvIGNvcHkgZnJvbQ0KICAgQHBhcmFtICBPcHRMZW4gICAgICAgICAgIFRo ZSBsZW5ndGggb2YgdGhlIElQNCBvcHRpb24NCiANCi0gIEByZXR2YWwgRUZJX0JBRF9CVUZGRVJf U0laRSAgVGhlcmUgaXMgbm8gZW5vdWdodCByb29tIGluIHRoZSBoZWFkIHNwYWNlIG9mDQorICBA cmV0dmFsIEVGSV9CQURfQlVGRkVSX1NJWkUgIFRoZXJlIGlzIG5vIGVub3VnaCByb29tIGluIHRo ZSBoZWFkIA0KKyBzcGFjZSBvZg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQYWNr ZXQuDQogICBAcmV0dmFsIEVGSV9TVUNDRVNTICAgICAgICAgIFRoZSBJUDQgaGVhZGVyIGlzIHN1 Y2Nlc3NmdWxseSBhZGRlZCB0byB0aGUgcGFja2V0Lg0KIA0KZGlmZiAtLWdpdCBhL05ldHdvcmtQ a2cvSXA0RHhlL0lwNFJvdXRlLmggYi9OZXR3b3JrUGtnL0lwNER4ZS9JcDRSb3V0ZS5oIGluZGV4 IDRiMGI1MjgyYWI1YS4uYjRkOTE2NjdlOTU5IDEwMDY0NA0KLS0tIGEvTmV0d29ya1BrZy9JcDRE eGUvSXA0Um91dGUuaA0KKysrIGIvTmV0d29ya1BrZy9JcDREeGUvSXA0Um91dGUuaA0KQEAgLTEs NSArMSw1IEBADQogLyoqIEBmaWxlDQotICBFRkkgSVA0IHJvdXRlIHRhYmxlIGFuZCByb3V0ZSBj YWNoZSB0YWJsZSBkZWZpbnRpb25zLg0KKyAgRUZJIElQNCByb3V0ZSB0YWJsZSBhbmQgcm91dGUg Y2FjaGUgdGFibGUgZGVmaW5pdGlvbnMuDQogDQogQ29weXJpZ2h0IChjKSAyMDA1IC0gMjAxOCwg SW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuPEJSPg0KIFNQRFgtTGljZW5z ZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2UtUGF0ZW50IEBAIC01Niw4ICs1Niw4IEBAIHR5cGVk ZWYgc3RydWN0IHsgIC8vLyAgLy8vIFRoZSByb3V0ZSBjYWNoZSB0YWJsZSBpcyBvcmdhbml6ZWQg YXMgYSBoYXNoIHRhYmxlLiBFYWNoICAvLy8gSVA0IHJvdXRlIHRhYmxlIGhhcyBhIGVtYmVkZGVk IHJvdXRlIGNhY2hlLiBGb3Igbm93IHRoZSAtLy8vIHJvdXRlIGNhY2hlIGFuZCByb3V0ZSB0YWJs ZSBhcmUgYmluZGVkIHRvZ2VodGVyLiBCdXQga2VlcCAtLy8vIHRoZSByb3V0ZSBjYWNoZSBhIHNl cGVyYXRlZCBzdHJ1Y3R1cmUgaW4gY2FzZSB3ZSB3YW50IHRvDQorLy8vIHJvdXRlIGNhY2hlIGFu ZCByb3V0ZSB0YWJsZSBhcmUgYmluZGVkIHRvZ2V0aGVyLiBCdXQga2VlcCAvLy8gdGhlIA0KK3Jv dXRlIGNhY2hlIGEgc2VwYXJhdGVkIHN0cnVjdHVyZSBpbiBjYXNlIHdlIHdhbnQgdG8NCiAvLy8g ZGV0YWNoIHRoZW0gbGF0ZXIuDQogLy8vDQogdHlwZWRlZiBzdHJ1Y3Qgew0KQEAgLTEzOCw3ICsx MzgsNyBAQCBJcDRBZGRSb3V0ZSAoDQogDQogICBAcmV0dmFsIEVGSV9TVUNDRVNTICAgICAgICAg ICBUaGUgcm91dGUgZW50cnkgaXMgc3VjY2Vzc2Z1bGx5IHJlbW92ZWQNCiAgIEByZXR2YWwgRUZJ X05PVF9GT1VORCAgICAgICAgIFRoZXJlIGlzIG5vIHJvdXRlIGVudHJ5IGluIHRoZSB0YWJsZSB3 aXRoIHRoYXQNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb3Blcml0eS4NCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb3BlcnR5Lg0KIA0KICoqLw0KIEVGSV9T VEFUVVMNCkBAIC0xNTEsNyArMTUxLDcgQEAgSXA0RGVsUm91dGUgKA0KIA0KIC8qKg0KICAgRmlu ZCBhIHJvdXRlIGNhY2hlIHdpdGggdGhlIGRzdCBhbmQgc3JjLiBUaGlzIGlzIHVzZWQgYnkgSUNN UA0KLSAgcmVkaXJlY3QgbWVzc2FzZ2UgcHJvY2Vzcy4gQWxsIGtpbmRzIG9mIHJlZGlyZWN0IGlz IHRyZWF0ZWQgYXMNCisgIHJlZGlyZWN0IG1lc3NhZ2UgcHJvY2Vzcy4gQWxsIGtpbmRzIG9mIHJl ZGlyZWN0IGlzIHRyZWF0ZWQgYXMNCiAgIGhvc3QgcmVkaXJlY3QgYWNjb3JkaW5nIHRvIFJGQzEx MjIuIFNvLCBvbmx5IHJvdXRlIGNhY2hlIGVudHJpZXMNCiAgIGFyZSBtb2RpZmllZCBhY2NvcmRp bmcgdG8gdGhlIElDTVAgcmVkaXJlY3QgbWVzc2FnZS4NCiANCkBAIC0yMTUsNyArMjE1LDcgQEAg SXA0Um91dGUgKA0KICAgQHBhcmFtW2luXSAgSXBJbnN0YW5jZSAgICAgICAgVGhlIElQNCBjaGls ZCB0aGF0IHJlcXVlc3RzIHRoZSByb3V0ZSB0YWJsZS4NCiANCiAgIEByZXR2YWwgRUZJX1NVQ0NF U1MgICAgICAgICAgIFRoZSByb3V0ZSB0YWJsZSBpcyBzdWNjZXNzZnVsbHkgYnVpbGQNCi0gIEBy ZXR2YWwgRUZJX09VVF9PRl9SRVNPVVJDRVMgIEZhaWxlZCB0byBhbGxvY2F0ZSB0aGUgbWVtb3J5 IGZvciB0aGUgcm90dWUgdGFibGUuDQorICBAcmV0dmFsIEVGSV9PVVRfT0ZfUkVTT1VSQ0VTICBG YWlsZWQgdG8gYWxsb2NhdGUgdGhlIG1lbW9yeSBmb3IgdGhlIHJvdXRlIHRhYmxlLg0KIA0KICoq Lw0KIEVGSV9TVEFUVVMNCmRpZmYgLS1naXQgYS9OZXR3b3JrUGtnL0lwNER4ZS9JcDRDb21tb24u YyBiL05ldHdvcmtQa2cvSXA0RHhlL0lwNENvbW1vbi5jIGluZGV4IGM3NTZhMmRiZjdlNC4uZjQy NjliOGVhNDk1IDEwMDY0NA0KLS0tIGEvTmV0d29ya1BrZy9JcDREeGUvSXA0Q29tbW9uLmMNCisr KyBiL05ldHdvcmtQa2cvSXA0RHhlL0lwNENvbW1vbi5jDQpAQCAtOSw3ICs5LDcgQEAgU1BEWC1M aWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCiANCiANCiAvKioNCi0gIFJl dHVybiB0aGUgY2FzdCB0eXBlIChVbmljYXN0L0JvcmFkY2FzdCkgc3BlY2lmaWMgdG8gYW4NCisg IFJldHVybiB0aGUgY2FzdCB0eXBlIChVbmljYXN0L0Jyb2FkY2FzdCkgc3BlY2lmaWMgdG8gYW4N CiAgIGludGVyZmFjZS4gQWxsIHRoZSBhZGRyZXNzZXMgYXJlIGhvc3QgYnl0ZSBvcmRlcmVkLg0K IA0KICAgQHBhcmFtW2luXSAgSXBBZGRyICAgICAgICAgICAgICAgIFRoZSBJUCBhZGRyZXNzIHRv IGNsYXNzaWZ5IGluIGhvc3QgYnl0ZSBvcmRlcg0KQEAgLTE3LDcgKzE3LDcgQEAgU1BEWC1MaWNl bnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCiANCiAgIEByZXR1cm4gVGhlIGNh c3QgdHlwZSBvZiB0aGlzIElQIGFkZHJlc3Mgc3BlY2lmaWMgdG8gdGhlIGludGVyZmFjZS4NCiAg IEByZXR2YWwgSVA0X0xPQ0FMX0hPU1QgICAgICAgIFRoZSBJcEFkZHIgZXF1YWxzIHRvIHRoZSBp bnRlcmZhY2UncyBhZGRyZXNzDQotICBAcmV0dmFsIElQNF9TVUJORVRfQlJPQURDQVNUICBUaGUg SXBBZGRyIGlzIGEgZGlyZWN0ZWQgc3VibmV0IGJvcmFkY2FzdCB0byAgdGhlDQorICBAcmV0dmFs IElQNF9TVUJORVRfQlJPQURDQVNUICBUaGUgSXBBZGRyIGlzIGEgZGlyZWN0ZWQgc3VibmV0IA0K KyBicm9hZGNhc3QgdG8gIHRoZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50 ZXJmYWNlDQogICBAcmV0dmFsIElQNF9ORVRfQlJPQURDQVNUICAgICBUaGUgSXBBZGRyIGlzIGEg bmV0d29yayBicm9hZGNhc3QgdG8gdGhlIGludGVyZmFjZQ0KICAgQHJldHZhbCAwICAgICAgICAg ICAgICAgICAgICAgT3RoZXJ3aXNlLg0KQEAgLTE4Miw3ICsxODIsNyBAQCBJcDRGaW5kTmV0ICgN CiAgIEZpbmQgYW4gaW50ZXJmYWNlIG9mIHRoZSBzZXJ2aWNlIHdpdGggdGhlIHNhbWUgSXAvTmV0 bWFzayBwYWlyLg0KIA0KICAgQHBhcmFtW2luXSAgSXBTYiAgICAgICAgICAgICAgICAgIElwNCBz ZXJ2aWNlIGJpbmRpbmcgaW5zdGFuY2UNCi0gIEBwYXJhbVtpbl0gIElwICAgICAgICAgICAgICAg ICAgICBUaGUgSXAgYWRyZXNzIHRvIGZpbmQgKGhvc3QgYnl0ZSBvcmRlcikNCisgIEBwYXJhbVtp bl0gIElwICAgICAgICAgICAgICAgICAgICBUaGUgSXAgYWRkcmVzcyB0byBmaW5kIChob3N0IGJ5 dGUgb3JkZXIpDQogICBAcGFyYW1baW5dICBOZXRtYXNrICAgICAgICAgICAgICAgVGhlIG5ldHdv cmsgdG8gZmluZCAoaG9zdCBieXRlIG9yZGVyKQ0KIA0KICAgQHJldHVybiBUaGUgSVA0X0lOVEVS RkFDRSBwb2ludCBpZiBmb3VuZCwgb3RoZXJ3aXNlIE5VTEwgQEAgLTI2NiwxMCArMjY2LDEwIEBA IElwNE50b2hIZWFkICgNCiAvKioNCiAgIFZhbGlkYXRlIHRoYXQgSXAvTmV0bWFzayBwYWlyIGlz IE9LIHRvIGJlIHVzZWQgYXMgc3RhdGlvbg0KICAgYWRkcmVzcy4gT25seSBjb250aW51b3VzIG5l dG1hc2tzIGFyZSBzdXBwb3J0ZWQuIGFuZCBjaGVjaw0KLSAgdGhhdCBTdGF0aW9uQWRkcmVzcyBp cyBhIHVuaWNhc3QgYWRkcmVzcyBvbiB0aGUgbmV3dHdvcmsuDQorICB0aGF0IFN0YXRpb25BZGRy ZXNzIGlzIGEgdW5pY2FzdCBhZGRyZXNzIG9uIHRoZSBuZXR3b3JrLg0KIA0KICAgQHBhcmFtW2lu XSAgSXAgICAgICAgICAgICAgICAgIFRoZSBJUCBhZGRyZXNzIHRvIHZhbGlkYXRlLg0KLSAgQHBh cmFtW2luXSAgTmV0bWFzayAgICAgICAgICAgIFRoZSBuZXRtYWtzIG9mIHRoZSBJUC4NCisgIEBw YXJhbVtpbl0gIE5ldG1hc2sgICAgICAgICAgICBUaGUgbmV0bWFzayBvZiB0aGUgSVAuDQogDQog ICBAcmV0dmFsIFRSVUUgICAgICAgICAgICAgICAgICAgVGhlIElwL05ldG1hc2sgcGFpciBpcyB2 YWxpZC4NCiAgIEByZXR2YWwgRkFMU0UgICAgICAgICAgICAgICAgICBUaGUgSXAvTmV0bWFzayBw YWlyIGlzIGludmFsaWQuDQpkaWZmIC0tZ2l0IGEvTmV0d29ya1BrZy9JcDREeGUvSXA0Q29uZmln MkltcGwuYyBiL05ldHdvcmtQa2cvSXA0RHhlL0lwNENvbmZpZzJJbXBsLmMNCmluZGV4IDlkY2E0 OGRkZDY0NS4uOWNmYWQ1OTE2ZDEwIDEwMDY0NA0KLS0tIGEvTmV0d29ya1BrZy9JcDREeGUvSXA0 Q29uZmlnMkltcGwuYw0KKysrIGIvTmV0d29ya1BrZy9JcDREeGUvSXA0Q29uZmlnMkltcGwuYw0K QEAgLTE3NCw3ICsxNzQsNyBAQCBJcDRDb25maWcyU2lnbmFsRXZlbnQgKA0KIC8qKg0KICAgUmVh ZCB0aGUgY29uZmlndXJhdGlvbiBkYXRhIGZyb20gdmFyaWFibGUgc3RvcmFnZSBhY2NvcmRpbmcg dG8gdGhlIFZhck5hbWUgYW5kDQogICBnRWZpSXA0Q29uZmlnMlByb3RvY29sR3VpZC4gSXQgY2hl Y2tzIHRoZSBpbnRlZ3JpdHkgb2YgdmFyaWFibGUgZGF0YS4gSWYgdGhlDQotICBkYXRhIGlzIGNv cnJ1cHRlZCwgaXQgY2xlYXJzIHRoZSB2YXJpYWJsZSBkYXRhIHRvIFpFUk8uIE90aGV3aXNlLCBp dCBvdXRwdXRzIHRoZQ0KKyAgZGF0YSBpcyBjb3JydXB0ZWQsIGl0IGNsZWFycyB0aGUgdmFyaWFi bGUgZGF0YSB0byBaRVJPLiBPdGhlcndpc2UsIGl0IA0KKyBvdXRwdXRzIHRoZQ0KICAgY29uZmln dXJhdGlvbiBkYXRhIHRvIElQNF9DT05GSUcyX0lOU1RBTkNFLg0KIA0KICAgQHBhcmFtW2luXSAg ICAgIFZhck5hbWUgICAgICAgVGhlIHBvaW50ZXIgdG8gdGhlIHZhcmlhYmxlIG5hbWUNCkBAIC0z NzcsNyArMzc3LDcgQEAgSXA0Q29uZmlnMldyaXRlQ29uZmlnRGF0YSAoDQogICBAcGFyYW1bb3V0 XSAgVGFibGUgICAgICAgVGhlIGJ1aWx0IElQNCByb3V0ZSB0YWJsZS4NCiANCiAgIEByZXR2YWwg RUZJX1NVQ0NFU1MgICAgICAgICAgIFRoZSByb3V0ZSB0YWJsZSBpcyBzdWNjZXNzZnVsbHkgYnVp bGQNCi0gIEByZXR2YWwgRUZJX05PVF9GT1VORCAgICAgICAgIEZhaWxlZCB0byBhbGxvY2F0ZSB0 aGUgbWVtb3J5IGZvciB0aGUgcm90dWUgdGFibGUuDQorICBAcmV0dmFsIEVGSV9OT1RfRk9VTkQg ICAgICAgICBGYWlsZWQgdG8gYWxsb2NhdGUgdGhlIG1lbW9yeSBmb3IgdGhlIHJvdXRlIHRhYmxl Lg0KIA0KICoqLw0KIEVGSV9TVEFUVVMNCkBAIC05MTIsNyArOTEyLDcgQEAgSXA0U3RhcnRBdXRv Q29uZmlnICgNCiANCiAgIC8vDQogICAvLyBBIGhvc3QgbXVzdCBub3QgaW52b2tlIERIQ1AgY29u ZmlndXJhdGlvbiBpZiBpdCBpcyBhbHJlYWR5DQotICAvLyBwYXJ0aWNpcGF0aW5nIGluIHRoZSBE SENQIGNvbmZpZ3VyYWl0b24gcHJvY2Vzcy4NCisgIC8vIHBhcnRpY2lwYXRpbmcgaW4gdGhlIERI Q1AgY29uZmlndXJhdGlvbiBwcm9jZXNzLg0KICAgLy8NCiAgIGlmIChJbnN0YW5jZS0+RGhjcDRI YW5kbGUgIT0gTlVMTCkgew0KICAgICByZXR1cm4gRUZJX1NVQ0NFU1M7DQpAQCAtMTIzNCw3ICsx MjM0LDcgQEAgSXA0Q29uZmlnMlNldFBvbGljeSAoDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB1bmRlciB0aGUgY3VycmVudCBwb2xpY3kuDQogICBAcmV0dmFsIEVGSV9JTlZBTElE X1BBUkFNRVRFUiBPbmUgb3IgbW9yZSBmaWVsZHMgaW4gRGF0YSBpcyBpbnZhbGlkLg0KICAgQHJl dHZhbCBFRklfT1VUX09GX1JFU09VUkNFUyAgRmFpbCB0byBhbGxvY2F0ZSByZXNvdXJjZSB0byBj b21wbGV0ZSB0aGUgb3BlcmF0aW9uLg0KLSAgQHJldHZhbCBFRklfTk9UX1JFQURZICAgICAgICAg QW4gYXN5bmNocm91cyBwcm9jZXNzIGlzIGludm9rZWQgdG8gc2V0IHRoZSBzcGVjaWZpZWQNCisg IEByZXR2YWwgRUZJX05PVF9SRUFEWSAgICAgICAgIEFuIGFzeW5jaHJvbm91cyBwcm9jZXNzIGlz IGludm9rZWQgdG8gc2V0IHRoZSBzcGVjaWZpZWQNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGNvbmZpZ3VyYXRpb24gZGF0YSwgYW5kIHRoZSBwcm9jZXNzIGlzIG5vdCBmaW5pc2hl ZC4NCiAgIEByZXR2YWwgRUZJX0FCT1JURUQgICAgICAgICAgIFRoZSBtYW51YWwgYWRkcmVzc2Vz IHRvIGJlIHNldCBlcXVhbCBjdXJyZW50DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBjb25maWd1cmF0aW9uLg0KQEAgLTE3MjEsNyArMTcyMSw3IEBAIEVmaUlwNENvbmZpZzJTZXRE YXRhICgNCiAgICAgfQ0KICAgfSBlbHNlIHsNCiAgICAgLy8NCi0gICAgLy8gQW5vdGhlciBhc3lu Y2hvcm5vdXMgcHJvY2VzcyBpcyBvbiB0aGUgd2F5Lg0KKyAgICAvLyBBbm90aGVyIGFzeW5jaHJv bm91cyBwcm9jZXNzIGlzIG9uIHRoZSB3YXkuDQogICAgIC8vDQogICAgIFN0YXR1cyA9IEVGSV9B Q0NFU1NfREVOSUVEOw0KICAgfQ0KZGlmZiAtLWdpdCBhL05ldHdvcmtQa2cvSXA0RHhlL0lwNENv bmZpZzJOdi5jIGIvTmV0d29ya1BrZy9JcDREeGUvSXA0Q29uZmlnMk52LmMNCmluZGV4IGE0ZDI5 OTZhNjBlNi4uNjMwMTRjYTMxOTA3IDEwMDY0NA0KLS0tIGEvTmV0d29ya1BrZy9JcDREeGUvSXA0 Q29uZmlnMk52LmMNCisrKyBiL05ldHdvcmtQa2cvSXA0RHhlL0lwNENvbmZpZzJOdi5jDQpAQCAt OTg4LDcgKzk4OCw3IEBAIEZhaWx1cmU6DQogICBAcGFyYW1bb3V0XSBQcm9ncmVzcyAgICAgICBB IHBvaW50ZXIgdG8gYSBzdHJpbmcgZmlsbGVkIGluIHdpdGggdGhlDQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBvZmZzZXQgb2YgdGhlIG1vc3QgcmVjZW50ICcmJyBiZWZvcmUgdGhlDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaXJzdCBmYWlsaW5nIG5hbWUgLyB2YWx1ZSBw YWlyIChvciB0aGUNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlZ2lubiBpbmcgb2Yg dGhlIHN0cmluZyBpZiB0aGUgZmFpbHVyZQ0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg YmVnaW5uaW5nIG9mIHRoZSBzdHJpbmcgaWYgdGhlIGZhaWx1cmUNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGlzIGluIHRoZSBmaXJzdCBuYW1lIC8gdmFsdWUgcGFpcikgb3INCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHRoZSB0ZXJtaW5hdGluZyBOVUxMIGlmIGFsbCB3YXMN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3NmdWwuDQpAQCAtMTA5OCw3ICsx MDk4LDcgQEAgSXA0Rm9ybVJvdXRlQ29uZmlnICgNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB2YXJpYWJsZSBhbmQgaXRzIGRhdGEuDQogICBAcmV0dmFsIEVGSV9ERVZJQ0VfRVJS T1IgICAgICAgVGhlIHZhcmlhYmxlIGNvdWxkIG5vdCBiZSBzYXZlZC4NCiAgIEByZXR2YWwgRUZJ X1VOU1VQUE9SVEVEICAgICAgICBUaGUgc3BlY2lmaWVkIEFjdGlvbiBpcyBub3Qgc3VwcG9ydGVk IGJ5IHRoZQ0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrLkN1cnJl bnRseSBub3QgaW1wbGVtZW50ZWQuDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Y2FsbGJhY2suIEN1cnJlbnRseSBub3QgaW1wbGVtZW50ZWQuDQogICBAcmV0dmFsIEVGSV9JTlZB TElEX1BBUkFNRVRFUlMgUGFzc2luZyBpbiB3cm9uZyBwYXJhbWV0ZXIuDQogICBAcmV0dmFsIE90 aGVycyAgICAgICAgICAgICAgICAgT3RoZXIgZXJyb3JzIGFzIGluZGljYXRlZC4NCiANCmRpZmYg LS1naXQgYS9OZXR3b3JrUGtnL0lwNER4ZS9JcDREcml2ZXIuYyBiL05ldHdvcmtQa2cvSXA0RHhl L0lwNERyaXZlci5jIGluZGV4IDYyYmU4YjY4MWExOC4uN2ZlZDY1OWNhMTAxIDEwMDY0NA0KLS0t IGEvTmV0d29ya1BrZy9JcDREeGUvSXA0RHJpdmVyLmMNCisrKyBiL05ldHdvcmtQa2cvSXA0RHhl L0lwNERyaXZlci5jDQpAQCAtNTgxLDcgKzU4MSw3IEBAIElwNERyaXZlckJpbmRpbmdTdGFydCAo DQogICBJcDRDZmcyICA9ICZJcFNiLT5JcDRDb25maWcySW5zdGFuY2UuSXA0Q29uZmlnMjsNCiAN CiAgIC8vDQotICAvLyBJbnN0YWxsIHRoZSBJcDRTZXJ2aWNlQmluZGluZyBQcm90b2NvbCBvbnRv IENvbnRyb2xlckhhbmRsZQ0KKyAgLy8gSW5zdGFsbCB0aGUgSXA0U2VydmljZUJpbmRpbmcgUHJv dG9jb2wgb250byBDb250cm9sbGVySGFuZGxlDQogICAvLw0KICAgU3RhdHVzID0gZ0JTLT5JbnN0 YWxsTXVsdGlwbGVQcm90b2NvbEludGVyZmFjZXMgKA0KICAgICAgICAgICAgICAgICAgICZDb250 cm9sbGVySGFuZGxlLA0KQEAgLTgyOSw3ICs4MjksNyBAQCBPTl9FUlJPUjoNCiAgICAgICAgICAg ICAgICAgICAgICAgdGhlbiBhIG5ldyBoYW5kbGUgaXMgY3JlYXRlZC4gSWYgaXQgaXMgYSBwb2lu dGVyIHRvIGFuIGV4aXN0aW5nIFVFRkkgaGFuZGxlLA0KICAgICAgICAgICAgICAgICAgICAgICB0 aGVuIHRoZSBwcm90b2NvbCBpcyBhZGRlZCB0byB0aGUgZXhpc3RpbmcgVUVGSSBoYW5kbGUuDQog DQotICBAcmV0dmFsIEVGSV9TVUNDRVMgICAgICAgICAgICBUaGUgcHJvdG9jb2wgd2FzIGFkZGVk IHRvIENoaWxkSGFuZGxlLg0KKyAgQHJldHZhbCBFRklfU1VDQ0VTUyAgICAgICAgICAgVGhlIHBy b3RvY29sIHdhcyBhZGRlZCB0byBDaGlsZEhhbmRsZS4NCiAgIEByZXR2YWwgRUZJX0lOVkFMSURf UEFSQU1FVEVSIENoaWxkSGFuZGxlIGlzIE5VTEwuDQogICBAcmV0dmFsIEVGSV9PVVRfT0ZfUkVT T1VSQ0VTICBUaGVyZSBhcmUgbm90IGVub3VnaCByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGNyZWF0 ZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlIGNoaWxkIEBAIC05MzMsNyAr OTMzLDcgQEAgT05fRVJST1I6DQogICBAcGFyYW0gIFRoaXMgICAgICAgIFBvaW50ZXIgdG8gdGhl IEVGSV9TRVJWSUNFX0JJTkRJTkdfUFJPVE9DT0wgaW5zdGFuY2UuDQogICBAcGFyYW0gIENoaWxk SGFuZGxlIEhhbmRsZSBvZiB0aGUgY2hpbGQgdG8gZGVzdHJveQ0KIA0KLSAgQHJldHZhbCBFRklf U1VDQ0VTICAgICAgICAgICAgVGhlIHByb3RvY29sIHdhcyByZW1vdmVkIGZyb20gQ2hpbGRIYW5k bGUuDQorICBAcmV0dmFsIEVGSV9TVUNDRVNTICAgICAgICAgICBUaGUgcHJvdG9jb2wgd2FzIHJl bW92ZWQgZnJvbSBDaGlsZEhhbmRsZS4NCiAgIEByZXR2YWwgRUZJX1VOU1VQUE9SVEVEICAgICAg IENoaWxkSGFuZGxlIGRvZXMgbm90IHN1cHBvcnQgdGhlIHByb3RvY29sIHRoYXQgaXMgYmVpbmcg cmVtb3ZlZC4NCiAgIEByZXR2YWwgRUZJX0lOVkFMSURfUEFSQU1FVEVSIENoaWxkIGhhbmRsZSBp cyBOVUxMLg0KICAgQHJldHZhbCBFRklfQUNDRVNTX0RFTklFRCAgICAgVGhlIHByb3RvY29sIGNv dWxkIG5vdCBiZSByZW1vdmVkIGZyb20gdGhlIENoaWxkSGFuZGxlDQpAQCAtMTAyMCwxNCArMTAy MCwxNCBAQCBJcDRTZXJ2aWNlQmluZGluZ0Rlc3Ryb3lDaGlsZCAoDQogICAvLyBVbmluc3RhbGwg dGhlIElQNCBwcm90b2NvbCBmaXJzdC4gTWFueSB0aGluZyBoYXBwZW5zIGR1cmluZw0KICAgLy8g dGhpczoNCiAgIC8vIDEuIFRoZSBjb25zdW1lciBvZiB0aGUgSVA0IHByb3RvY29sIHdpbGwgYmUg c3RvcHBlZCBpZiBpdA0KLSAgLy8gb3BlbnMgdGhlIHByb3RvY29sIEJZX0RSSVZFUi4gRm9yIGVh eG1wbGUsIGlmIE1OUCBkcml2ZXIgaXMNCisgIC8vIG9wZW5zIHRoZSBwcm90b2NvbCBCWV9EUklW RVIuIEZvciBleGFtcGxlLCBpZiBNTlAgZHJpdmVyIGlzDQogICAvLyBzdG9wcGVkLCBJUCBkcml2 ZXIncyBzdG9wIGZ1bmN0aW9uIHdpbGwgYmUgY2FsbGVkLCBhbmQgdW5pbnN0YWxsDQogICAvLyBF RklfSVA0X1BST1RPQ09MIHdpbGwgdHJpZ2dlciB0aGUgVURQJ3Mgc3RvcCBmdW5jdGlvbi4gVGhp cw0KICAgLy8gbWFrZXMgaXQgcG9zc2libGUgdG8gY3JlYXRlIHRoZSBuZXR3b3JrIHN0YWNrIGJv dHRvbSB1cCwgYW5kDQogICAvLyBzdG9wIGl0IHRvcCBkb3duLg0KICAgLy8gMi4gdGhlIHVwcGVy IGxheWVyIHdpbGwgcmVjeWNsZSB0aGUgcmVjZWl2ZWQgcGFja2V0LiBUaGUgcmVjeWNsZQ0KICAg Ly8gZXZlbnQncyBUUEwgaXMgaGlnaGVyIHRoYW4gdGhpcyBmdW5jdGlvbi4gVGhlIHJlY3ljbGUg ZXZlbnRzDQotICAvLyB3aWxsIGJlIGNhbGxlZCBiYWNrIGJlZm9yZSBwcmVjZWVkaW5nLiBJZiBh bnkgcGFja2V0cyBub3QgcmVjeWNsZWQsDQorICAvLyB3aWxsIGJlIGNhbGxlZCBiYWNrIGJlZm9y ZSBwcmVjZWRpbmcuIElmIGFueSBwYWNrZXRzIG5vdCByZWN5Y2xlZCwNCiAgIC8vIHRoYXQgbWVh bnMgdGhlcmUgaXMgYSByZXNvdXJjZSBsZWFrLg0KICAgLy8NCiAgIGdCUy0+UmVzdG9yZVRQTCAo T2xkVHBsKTsNCmRpZmYgLS1naXQgYS9OZXR3b3JrUGtnL0lwNER4ZS9JcDRJZi5jIGIvTmV0d29y a1BrZy9JcDREeGUvSXA0SWYuYyBpbmRleCA1M2EzMzMwMzdmOTQuLmRiNDU5ZTk3YzhhOCAxMDA2 NDQNCi0tLSBhL05ldHdvcmtQa2cvSXA0RHhlL0lwNElmLmMNCisrKyBiL05ldHdvcmtQa2cvSXA0 RHhlL0lwNElmLmMNCkBAIC0xLDUgKzEsNSBAQA0KIC8qKiBAZmlsZQ0KLSAgSW1wbGVtZW50IElQ NCBwZXN1ZG8gaW50ZXJmYWNlLg0KKyAgSW1wbGVtZW50IElQNCBwc2V1ZG8gaW50ZXJmYWNlLg0K IA0KIENvcHlyaWdodCAoYykgMjAwNSAtIDIwMTgsIEludGVsIENvcnBvcmF0aW9uLiBBbGwgcmln aHRzIHJlc2VydmVkLjxCUj4NCiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNl LVBhdGVudCBAQCAtOSwxMyArOSwxMyBAQCBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTIt Q2xhdXNlLVBhdGVudCAgI2luY2x1ZGUgIklwNEltcGwuaCINCiANCiAvLw0KLS8vIE1hYyBhZGRy ZXNzIHdpdGggYWxsIHplcm8sIHVzZWQgdG8gZGV0ZXJtaW5lIHdoZXRodGVyIHRoZSBBUlANCisv LyBNYWMgYWRkcmVzcyB3aXRoIGFsbCB6ZXJvLCB1c2VkIHRvIGRldGVybWluZSB3aGV0aGVyIHRo ZSBBUlANCiAvLyByZXNvbHZlIHN1Y2NlZWRlZC4gRmFpbGVkIEFSUCByZXF1ZXN0cyB6ZXJvIHRo ZSBNQUMgYWRkcmVzcyBidWZmZXIuDQogLy8NCiBFRklfTUFDX0FERFJFU1MgIG1aZXJvTWFjQWRk cmVzczsNCiANCiAvKioNCi0gIENhbGxiYWNrIGZ1bnRpb24gd2hlbiBmcmFtZSB0cmFuc21pc3Np b24gaXMgZmluaXNoZWQuIEl0IHdpbGwNCisgIENhbGxiYWNrIGZ1bmN0aW9uIHdoZW4gZnJhbWUg dHJhbnNtaXNzaW9uIGlzIGZpbmlzaGVkLiBJdCB3aWxsDQogICBjYWxsIHRoZSBmcmFtZSBvd25l cidzIGNhbGxiYWNrIGZ1bmN0aW9uIHRvIHRlbGwgaXQgdGhlIHJlc3VsdC4NCiANCiAgIEBwYXJh bVtpbl0gIENvbnRleHQgICAgICAgICAgICBDb250ZXh0IHdoaWNoIGlzIHBvaW50IHRvIHRoZSB0 b2tlbi4NCkBAIC01NjMsNyArNTYzLDcgQEAgSXA0U2V0QWRkcmVzcyAoDQogICAvLw0KICAgLy8g U2V0IHRoZSBpcC9uZXRtYXNrLCB0aGVuIGNvbXB1dGUgdGhlIHN1Ym5ldCBicm9hZGNhc3QNCiAg IC8vIGFuZCBuZXR3b3JrIGJyb2FkY2FzdCBmb3IgZWFzeSBhY2Nlc3MuIFdoZW4gY29tcHV0aW5n DQotICAvLyBuZXdvcmsgYnJvYWRjYXN0LCB0aGUgc3VibmV0IG1hc2sgaXMgbW9zdCBsaWtlIGxv bmdlcg0KKyAgLy8gbmV0d29yayBicm9hZGNhc3QsIHRoZSBzdWJuZXQgbWFzayBpcyBtb3N0IGxp a2UgbG9uZ2VyDQogICAvLyB0aGFuIHRoZSBkZWZhdWx0IG5ldG1hc2sgKG5vdCBzdWJuZXRlZCkg YXMgZGVmaW5lZCBpbg0KICAgLy8gUkZDNzkzLiBJZiB0aGF0IGlzbid0IHRoZSBjYXNlLCB3ZSBh cmUgYWdncmVnYXRpbmcgdGhlDQogICAvLyBuZXR3b3JrcywgdXNlIHRoZSBzdWJuZXQncyBtYXNr IGluc3RlYWQuDQpAQCAtOTc5LDcgKzk3OSw3IEBAIElwNE9uQXJwUmVzb2x2ZWQgKA0KIA0KIA0K IC8qKg0KLSAgQ2FsbGJhY2sgZnVudGlvbiB3aGVuIGZyYW1lIHRyYW5zbWlzc2lvbiBpcyBmaW5p c2hlZC4gSXQgd2lsbA0KKyAgQ2FsbGJhY2sgZnVuY3Rpb24gd2hlbiBmcmFtZSB0cmFuc21pc3Np b24gaXMgZmluaXNoZWQuIEl0IHdpbGwNCiAgIGNhbGwgdGhlIGZyYW1lIG93bmVyJ3MgY2FsbGJh Y2sgZnVuY3Rpb24gdG8gdGVsbCBpdCB0aGUgcmVzdWx0Lg0KIA0KICAgQHBhcmFtW2luXSAgQ29u dGV4dCAgICAgICAgICAgIENvbnRleHQgd2hpY2ggaXMgcG9pbnQgdG8gdGhlIHRva2VuLg0KQEAg LTEyNTEsNyArMTI1MSw3IEBAIElwNE9uRnJhbWVSZWNlaXZlZERwYyAoDQogICB9DQogDQogICAv Lw0KLSAgLy8gV3JhcCB0aGUgZnJhbWUgaW4gYSBuZXQgYnVmZmVyIHRoZW4gZGVsaWV2ZXIgaXQg dG8gSVAgaW5wdXQuDQorICAvLyBXcmFwIHRoZSBmcmFtZSBpbiBhIG5ldCBidWZmZXIgdGhlbiBk ZWxpdmVyIGl0IHRvIElQIGlucHV0Lg0KICAgLy8gSVAgd2lsbCByZWFzc2VtYmxlIHRoZSBwYWNr ZXQsIGFuZCBkZWxpdmVyIGl0IHRvIHVwcGVyIGxheWVyDQogICAvLw0KICAgTmV0ZnJhZy5MZW4g ID0gTW5wUnhEYXRhLT5EYXRhTGVuZ3RoOyBAQCAtMTMwNyw3ICsxMzA3LDcgQEAgSXA0T25GcmFt ZVJlY2VpdmVkICgNCiANCiAgIEByZXR2YWwgRUZJX0FMUkVBRFlfU1RBUlRFRCAgIFRoZXJlIGlz IGFscmVhZHkgYSBwZW5kaW5nIHJlY2VpdmUgcmVxdWVzdC4NCiAgIEByZXR2YWwgRUZJX09VVF9P Rl9SRVNPVVJDRVMgIEZhaWxlZCB0byBhbGxvY2F0ZSByZXNvdXJjZSB0byByZWNlaXZlLg0KLSAg QHJldHZhbCBFRklfU1VDQ0VTUyAgICAgICAgICAgVGhlIHJlY2lldmUgcmVxdWVzdCBoYXMgYmVl biBzdGFydGVkLg0KKyAgQHJldHZhbCBFRklfU1VDQ0VTUyAgICAgICAgICAgVGhlIHJlY2VpdmUg cmVxdWVzdCBoYXMgYmVlbiBzdGFydGVkLg0KICAgQHJldHZhbCBvdGhlciAgICAgICAgICAgICAg ICAgT3RoZXIgZXJyb3Igb2NjdXJzLg0KIA0KICoqLw0KZGlmZiAtLWdpdCBhL05ldHdvcmtQa2cv SXA0RHhlL0lwNElnbXAuYyBiL05ldHdvcmtQa2cvSXA0RHhlL0lwNElnbXAuYyBpbmRleCBlNjli MmZlN2ZjMDguLmY2OWJhNzYyZmU0ZCAxMDA2NDQNCi0tLSBhL05ldHdvcmtQa2cvSXA0RHhlL0lw NElnbXAuYw0KKysrIGIvTmV0d29ya1BrZy9JcDREeGUvSXA0SWdtcC5jDQpAQCAtMTQ5LDcgKzE0 OSw3IEBAIElwNEZpbmRNYWMgKA0KIA0KICAgQHBhcmFtW2luXSAgSXBTYiAgICAgICAgICAgICAg IFRoZSBJUDQgc2VydmljZSBpbnN0YW5jZSB0aGF0IHJlcXVlc3RzIHRoZQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHRyYW5zbWlzc2lvbi4NCi0gIEBwYXJhbVtpbl0gIERzdCAg ICAgICAgICAgICAgICBUaGUgZGVzdGluYXRvbiB0byBzZW5kIHRvLg0KKyAgQHBhcmFtW2luXSAg RHN0ICAgICAgICAgICAgICAgIFRoZSBkZXN0aW5hdGlvbiB0byBzZW5kIHRvLg0KICAgQHBhcmFt W2luXSAgVHlwZSAgICAgICAgICAgICAgIFRoZSBJR01QIG1lc3NhZ2UgdHlwZSwgc3VjaCBhcyBJ R01QIHYxIG1lbWJlcnNoaXANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXBv cnQuDQogICBAcGFyYW1baW5dICBHcm91cCAgICAgICAgICAgICAgVGhlIGdyb3VwIGFkZHJlc3Mg aW4gdGhlIElHTVAgbWVzc2FnZSBoZWFkLg0KQEAgLTI3Myw3ICsyNzMsNyBAQCBJcDRKb2luR3Jv dXAgKA0KIA0KICAgLy8NCiAgIC8vIElmIHRoZSBJUCBzZXJ2aWNlIGFscmVhZHkgaXMgYSBtZW1i ZXIgaW4gdGhlIGdyb3VwLCBqdXN0DQotICAvLyBpbmNyZWFzZSB0aGUgcmVmZXJuY2UgY291bnQg YW5kIHJldHVybi4NCisgIC8vIGluY3JlYXNlIHRoZSByZWZlcmVuY2UgY291bnQgYW5kIHJldHVy bi4NCiAgIC8vDQogICBHcm91cCAgICAgPSBJcDRGaW5kR3JvdXAgKElnbXBDdHJsLCBBZGRyZXNz KTsNCiANCkBAIC01ODcsNyArNTg3LDcgQEAgSXA0Q29tYmluZUdyb3VwcyAoDQogICBAcGFyYW0g IENvdW50ICAgICAgICAgICAgIFRoZSBudW1iZXIgb2YgZ3JvdXAgYWRkcmVzc2VzIGluIHRoZSBH cm91cHMuDQogICBAcGFyYW0gIEFkZHIgICAgICAgICAgICAgIFRoZSBJUDQgbXVsdGljYXN0IGFk ZHJlc3MgdG8gcmVtb3ZlLg0KIA0KLSAgQHJldHVybiBUaGUgbnVibWVyIG9mIGdyb3VwIGFkZHJl c3NlcyBpbiB0aGUgR3JvdXBzIGFmdGVyIHJlbW92ZS4NCisgIEByZXR1cm4gVGhlIG51bWJlciBv ZiBncm91cCBhZGRyZXNzZXMgaW4gdGhlIEdyb3VwcyBhZnRlciByZW1vdmUuDQogICAgICAgICAg IEl0IGlzIENvdW50IGlmIHRoZSBBZGRyIGlzbid0IGluIHRoZSBHcm91cHMuDQogDQogKiovDQpk aWZmIC0tZ2l0IGEvTmV0d29ya1BrZy9JcDREeGUvSXA0SW1wbC5jIGIvTmV0d29ya1BrZy9JcDRE eGUvSXA0SW1wbC5jIGluZGV4IGVjNmYwMzcwNzcyYi4uNTkzNWQ0MDVkZDU5IDEwMDY0NA0KLS0t IGEvTmV0d29ya1BrZy9JcDREeGUvSXA0SW1wbC5jDQorKysgYi9OZXR3b3JrUGtnL0lwNER4ZS9J cDRJbXBsLmMNCkBAIC0xOTgsNyArMTk4LDcgQEAgRWZpSXA0Um91dGVzICgNCiAgIEByZXR2YWwg IEVGSV9OT1RfU1RBUlRFRCAgICAgICBUaGlzIGluc3RhbmNlIGhhcyBub3QgYmVlbiBzdGFydGVk Lg0KICAgQHJldHZhbCAgRUZJX05PX01BUFBJTkcgICAgICAgIFdoZW4gdXNpbmcgdGhlIGRlZmF1 bHQgYWRkcmVzcywgY29uZmlndXJhdGlvbiAoREhDUCwgQk9PVFAsDQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgUkFSUCwgZXRjLikgaXMgbm90IGZpbmlzaGVkIHlldC4NCi0gIEBy ZXR2YWwgIEVGSV9JTlZBTElEX1BBUkFNRVRFUiBPbmUgb3IgbW9yZSBwYW1ldGVycyBhcmUgaW52 YWxpZC4NCisgIEByZXR2YWwgIEVGSV9JTlZBTElEX1BBUkFNRVRFUiBPbmUgb3IgbW9yZSBwYXJh bWV0ZXJzIGFyZSBpbnZhbGlkLg0KICAgQHJldHZhbCAgRUZJX0FDQ0VTU19ERU5JRUQgICAgIFRo ZSB0cmFuc21pdCBjb21wbGV0aW9uIHRva2VuIHdpdGggdGhlIHNhbWUgVG9rZW4uRXZlbnQNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3YXMgYWxyZWFkeSBpbiB0aGUgdHJhbnNt aXQgcXVldWUuDQogICBAcmV0dmFsICBFRklfTk9UX1JFQURZICAgICAgICAgVGhlIGNvbXBsZXRp b24gdG9rZW4gY291bGQgbm90IGJlIHF1ZXVlZCBiZWNhdXNlIHRoZSB0cmFuc21pdA0KQEAgLTUy NSw3ICs1MjUsNyBAQCBJcDRTZXJ2aWNlQ29uZmlnTW5wICgNCiANCiANCiAvKioNCi0gIEludGlp YWxpemUgdGhlIElQNF9QUk9UT0NPTCBzdHJ1Y3R1cmUgdG8gdGhlIHVuY29uZmlndXJlZCBzdGF0 ZXMuDQorICBJbml0aWFsaXplIHRoZSBJUDRfUFJPVE9DT0wgc3RydWN0dXJlIHRvIHRoZSB1bmNv bmZpZ3VyZWQgc3RhdGVzLg0KIA0KICAgQHBhcmFtICBJcFNiICAgICAgICAgICAgICAgICAgIFRo ZSBJUDQgc2VydmljZSBpbnN0YW5jZS4NCiAgIEBwYXJhbSAgSXBJbnN0YW5jZSAgICAgICAgICAg ICBUaGUgSVA0IGNoaWxkIGluc3RhbmNlLg0KQEAgLTk4NSw3ICs5ODUsNyBAQCBPTl9FWElUOg0K IA0KICAgQHJldHZhbCBFRklfQUxSRUFEWV9TVEFSVEVEICAgIFdhbnQgdG8gam9pbiB0aGUgZ3Jv dXAsIGJ1dCBhbHJlYWR5IGEgbWVtYmVyIG9mIGl0Lg0KICAgQHJldHZhbCBFRklfT1VUX09GX1JF U09VUkNFUyAgIEZhaWxlZCB0byBhbGxvY2F0ZSBzb21lIHJlc291cmNlcy4NCi0gIEByZXR2YWwg RUZJX0RFVklDRV9FUlJPUiAgICAgICBGYWlsZWQgdG8gc2V0IHRoZSBncm91cCBjb25maWd1cmF0 b24uDQorICBAcmV0dmFsIEVGSV9ERVZJQ0VfRVJST1IgICAgICAgRmFpbGVkIHRvIHNldCB0aGUg Z3JvdXAgY29uZmlndXJhdGlvbi4NCiAgIEByZXR2YWwgRUZJX1NVQ0NFU1MgICAgICAgICAgICBT dWNjZXNzZnVsbHkgdXBkYXRlZCB0aGUgZ3JvdXAgc2V0dGluZy4NCiAgIEByZXR2YWwgRUZJX05P VF9GT1VORCAgICAgICAgICBUcnkgdG8gbGVhdmUgdGhlIGdyb3VwIHdoaWNoIGl0IGlzbid0IGEg bWVtYmVyLg0KIA0KQEAgLTEwNDMsNyArMTA0Myw3IEBAIElwNEdyb3VwcyAoDQogICAvLw0KICAg Ly8gTGVhdmUgdGhlIGdyb3VwLiBMZWF2ZSBhbGwgdGhlIGdyb3VwcyBpZiBHcm91cEFkZHJlc3Mg aXMgTlVMTC4NCiAgIC8vIE11c3QgaXRlcmF0ZSBmcm9tIHRoZSBlbmQgdG8gdGhlIGJlZ2lubmlu ZyBiZWNhdXNlIHRoZSBHcm91cENvdW50DQotICAvLyBpcyBkZWNyZWFtZW50ZWQgZWFjaCB0aW1l IGFuIGFkZHJlc3MgaXMgcmVtb3ZlZC4uDQorICAvLyBpcyBkZWNyZW1lbnRlZCBlYWNoIHRpbWUg YW4gYWRkcmVzcyBpcyByZW1vdmVkLi4NCiAgIC8vDQogICBmb3IgKEluZGV4ID0gSXBJbnN0YW5j ZS0+R3JvdXBDb3VudDsgSW5kZXggPiAwIDsgSW5kZXgtLSkgew0KICAgICBBU1NFUlQgKElwSW5z dGFuY2UtPkdyb3VwcyAhPSBOVUxMKTsgQEAgLTEyODMsNyArMTI4Myw3IEBAIE9OX0VYSVQ6DQog ICBAcGFyYW1baW5dICBNYXAgICAgICAgICAgICAgICAgICAgIFRoZSBjb250YWluZXIgb2YgZWl0 aGVyIHVzZXIncyB0cmFuc21pdCBvciByZWNlaXZlDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHRva2VuLg0KICAgQHBhcmFtW2luXSAgSXRlbSAgICAgICAgICAgICAgICAg ICBDdXJyZW50IGl0ZW0gdG8gY2hlY2sgYWdhaW5zdC4NCi0gIEBwYXJhbVtpbl0gIENvbnRleHQg ICAgICAgICAgICAgICAgVGhlIFRva2VuIHRvIGNoZWNrIGFnYWluaXN0Lg0KKyAgQHBhcmFtW2lu XSAgQ29udGV4dCAgICAgICAgICAgICAgICBUaGUgVG9rZW4gdG8gY2hlY2sgYWdhaW5zdC4NCiAN CiAgIEByZXR2YWwgRUZJX0FDQ0VTU19ERU5JRUQgICAgICBUaGUgdG9rZW4gb3IgZXZlbnQgaGFz IGFscmVhZHkgYmVlbiBlbnF1ZXVlZCBpbiBJUC4NCiAgIEByZXR2YWwgRUZJX1NVQ0NFU1MgICAg ICAgICAgICBUaGUgY3VycmVudCBpdGVtIGlzbid0IHRoZSBzYW1lIHRva2VuL2V2ZW50IGFzIHRo ZQ0KQEAgLTE1NTcsNyArMTU1Nyw3IEBAIElwNE9uUGFja2V0U2VudCAoDQogICBAcmV0dmFsICBF RklfTk9UX1NUQVJURUQgICAgICAgVGhpcyBpbnN0YW5jZSBoYXMgbm90IGJlZW4gc3RhcnRlZC4N CiAgIEByZXR2YWwgIEVGSV9OT19NQVBQSU5HICAgICAgICBXaGVuIHVzaW5nIHRoZSBkZWZhdWx0 IGFkZHJlc3MsIGNvbmZpZ3VyYXRpb24gKERIQ1AsIEJPT1RQLA0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFJBUlAsIGV0Yy4pIGlzIG5vdCBmaW5pc2hlZCB5ZXQuDQotICBAcmV0 dmFsICBFRklfSU5WQUxJRF9QQVJBTUVURVIgT25lIG9yIG1vcmUgcGFtZXRlcnMgYXJlIGludmFs aWQuDQorICBAcmV0dmFsICBFRklfSU5WQUxJRF9QQVJBTUVURVIgT25lIG9yIG1vcmUgcGFyYW1l dGVycyBhcmUgaW52YWxpZC4NCiAgIEByZXR2YWwgIEVGSV9BQ0NFU1NfREVOSUVEICAgICBUaGUg dHJhbnNtaXQgY29tcGxldGlvbiB0b2tlbiB3aXRoIHRoZSBzYW1lIFRva2VuLkV2ZW50DQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2FzIGFscmVhZHkgaW4gdGhlIHRyYW5zbWl0 IHF1ZXVlLg0KICAgQHJldHZhbCAgRUZJX05PVF9SRUFEWSAgICAgICAgIFRoZSBjb21wbGV0aW9u IHRva2VuIGNvdWxkIG5vdCBiZSBxdWV1ZWQgYmVjYXVzZSB0aGUgdHJhbnNtaXQNCkBAIC0xNjE5 LDcgKzE2MTksNyBAQCBFZmlJcDRUcmFuc21pdCAoDQogICB9DQogDQogICAvLw0KLSAgLy8gbWFr ZSBzdXJlIHRoYXQgdG9rZW4gaXMgcHJvcGVybHkgZm9ybWF0ZWQNCisgIC8vIG1ha2Ugc3VyZSB0 aGF0IHRva2VuIGlzIHByb3Blcmx5IGZvcm1hdHRlZA0KICAgLy8NCiAgIFN0YXR1cyA9IElwNFR4 VG9rZW5WYWxpZCAoVG9rZW4sIElwSWYsIENvbmZpZy0+UmF3RGF0YSk7DQogDQpkaWZmIC0tZ2l0 IGEvTmV0d29ya1BrZy9JcDREeGUvSXA0SW5wdXQuYyBiL05ldHdvcmtQa2cvSXA0RHhlL0lwNElu cHV0LmMgaW5kZXggMjRjNTg0NjU4ODAzLi5mZWMyNDJjNzFmNGYgMTAwNjQ0DQotLS0gYS9OZXR3 b3JrUGtnL0lwNER4ZS9JcDRJbnB1dC5jDQorKysgYi9OZXR3b3JrUGtnL0lwNER4ZS9JcDRJbnB1 dC5jDQpAQCAtMzg3LDcgKzM4Nyw3IEBAIElwNFJlYXNzZW1ibGUgKA0KICAgICBSZW1vdmVFbnRy eUxpc3QgKCZBc3NlbWJsZS0+TGluayk7DQogDQogICAgIC8vDQotICAgIC8vIElmIHRoZSBwYWNr ZXQgaXMgcHJvcGVybHkgZm9ybWF0ZWQsIHRoZSBsYXN0IGZyYWdtZW50J3MgRW5kDQorICAgIC8v IElmIHRoZSBwYWNrZXQgaXMgcHJvcGVybHkgZm9ybWF0dGVkLCB0aGUgbGFzdCBmcmFnbWVudCdz IEVuZA0KICAgICAvLyBlcXVhbHMgdG8gdGhlIHBhY2tldCdzIHRvdGFsIGxlbmd0aC4gT3RoZXJ3 aXNlLCB0aGUgcGFja2V0DQogICAgIC8vIGlzIGEgZmFrZSwgZHJvcCBpdCBub3cuDQogICAgIC8v DQpAQCAtNDY4LDcgKzQ2OCw3IEBAIElwNElwU2VjRnJlZSAoDQogICBhY3Rpb25zOiBieXBhc3Mg dGhlIHBhY2tldCwgZGlzY2FyZCB0aGUgcGFja2V0LCBvciBwcm90ZWN0IHRoZSBwYWNrZXQuDQog DQogICBAcGFyYW1baW5dICAgICAgIElwU2IgICAgICAgICAgVGhlIElQNCBzZXJ2aWNlIGluc3Rh bmNlLg0KLSAgQHBhcmFtW2luLCBvdXRdICBIZWFkICAgICAgICAgIFRoZSBUaGUgY2FsbGVyIHN1 cHBsaWVkIElQNCBoZWFkZXIuDQorICBAcGFyYW1baW4sIG91dF0gIEhlYWQgICAgICAgICAgVGhl IGNhbGxlciBzdXBwbGllZCBJUDQgaGVhZGVyLg0KICAgQHBhcmFtW2luLCBvdXRdICBOZXRidWYg ICAgICAgIFRoZSBJUDQgcGFja2V0IHRvIGJlIHByb2Nlc3NlZCBieSBJUHNlYy4NCiAgIEBwYXJh bVtpbiwgb3V0XSAgT3B0aW9ucyAgICAgICBUaGUgY2FsbGVyIHN1cHBsaWVkIG9wdGlvbnMuDQog ICBAcGFyYW1baW4sIG91dF0gIE9wdGlvbnNMZW4gICAgVGhlIGxlbmd0aCBvZiB0aGUgb3B0aW9u Lg0KQEAgLTQ4MCw3ICs0ODAsNyBAQCBJcDRJcFNlY0ZyZWUgKA0KICAgQHJldHZhbCBFRklfU1VD Q0VTUyAgICAgICAgICAgIFRoZSBwYWNrZXQgd2FzIGJ5cGFzc2VkIGFuZCBhbGwgYnVmZmVycyBy ZW1haW4gdGhlIHNhbWUuDQogICBAcmV0dmFsIEVGSV9TVUNDRVNTICAgICAgICAgICAgVGhlIHBh Y2tldCB3YXMgcHJvdGVjdGVkLg0KICAgQHJldHZhbCBFRklfQUNDRVNTX0RFTklFRCAgICAgIFRo ZSBwYWNrZXQgd2FzIGRpc2NhcmRlZC4NCi0gIEByZXR2YWwgRUZJX09VVF9PRl9SRVNPVVJDRVMg ICBUaGVyZSBpcyBubyBzdWZmY2llbnQgcmVzb3VyY2UgdG8gY29tcGxldGUgdGhlIG9wZXJhdGlv bi4NCisgIEByZXR2YWwgRUZJX09VVF9PRl9SRVNPVVJDRVMgICBUaGVyZSBpcyBubyBzdWZmaWNp ZW50IHJlc291cmNlIHRvIGNvbXBsZXRlIHRoZSBvcGVyYXRpb24uDQogICBAcmV0dmFsIEVGSV9C VUZGRVJfVE9PX1NNQUxMICAgVGhlIG51bWJlciBvZiBub24tZW1wdHkgYmxvY2sgaXMgYmlnZ2Vy IHRoYW4gdGhlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVtYmVyIG9mIGlu cHV0IGRhdGEgYmxvY2tzIHdoZW4gYnVpbGQgYSBmcmFnbWVudCB0YWJsZS4NCiANCkBAIC02MjUs NyArNjI1LDcgQEAgSXA0SXBTZWNQcm9jZXNzUGFja2V0ICgNCiAgICAgfQ0KIA0KICAgICAvLw0K LSAgICAvLyBGcmVlIG9yZ2luYWwgTmV0YnVmLg0KKyAgICAvLyBGcmVlIG9yaWdpbmFsIE5ldGJ1 Zi4NCiAgICAgLy8NCiAgICAgTmV0SXBTZWNOZXRidWZGcmVlICgqTmV0YnVmKTsNCiAgICAgKk5l dGJ1ZiA9IFR4V3JhcC0+UGFja2V0Ow0KQEAgLTY4OSw4ICs2ODksOCBAQCBPTl9FWElUOg0KICAg QHBhcmFtW2luXSAgICAgICBGbGFnICAgICAgICAgICAgVGhlIGxpbmsgbGF5ZXIgZmxhZyBmb3Ig dGhlIHBhY2tldCByZWNlaXZlZCwgc3VjaA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgYXMgbXVsdGljYXN0Lg0KIA0KLSAgQHJldHZhbCAgICAgRUZJX1NFVUNDRVNTICAgICAg ICAgICAgICAgVGhlIHJlY2lldmVkIHBhY2tldCBpcyBpbiB3ZWxsIGZvcm0uDQotICBAcmV0dmFs ICAgICBFRklfSU5WQUlMRF9QQVJBTUVURVIgICAgICBUaGUgcmVjaWV2ZWQgcGFja2V0IGlzIG1h bGZvcm1lZC4NCisgIEByZXR2YWwgICAgIEVGSV9TVUNDRVNTICAgICAgICAgICAgICAgIFRoZSBy ZWNlaXZlZCBwYWNrZXQgaXMgaW4gd2VsbCBmb3JtLg0KKyAgQHJldHZhbCAgICAgRUZJX0lOVkFM SURfUEFSQU1FVEVSICAgICAgVGhlIHJlY2VpdmVkIHBhY2tldCBpcyBtYWxmb3JtZWQuDQogDQog KiovDQogRUZJX1NUQVRVUw0KQEAgLTg5MSw4ICs4OTEsOCBAQCBJcDRBY2NwZXRGcmFtZSAoDQog ICBaZXJvTWVtICgmWmVyb0hlYWQsIHNpemVvZiAoSVA0X0hFQUQpKTsNCiAgIGlmICgwID09IENv bXBhcmVNZW0gKEhlYWQsICZaZXJvSGVhZCwgc2l6ZW9mIChJUDRfSEVBRCkpKSB7DQogICAvLyBQ YWNrZXQgbWF5IGhhdmUgYmVlbiBjaGFuZ2VkLiBIZWFkLCBIZWFkTGVuLCBUb3RhbExlbiwgYW5k DQotICAvLyBpbmZvIG11c3QgYmUgcmVsb2FkZWQgYm9mb3JlIHVzZS4gVGhlIG93bmVyc2hpcCBv ZiB0aGUgcGFja2V0DQotICAvLyBpcyB0cmFuc2ZlcmVkIHRvIHRoZSBwYWNrZXQgcHJvY2VzcyBs b2dpYy4NCisgIC8vIGluZm8gbXVzdCBiZSByZWxvYWRlZCBiZWZvcmUgdXNlLiBUaGUgb3duZXJz aGlwIG9mIHRoZSBwYWNrZXQgIC8vIA0KKyBpcyB0cmFuc2ZlcnJlZCB0byB0aGUgcGFja2V0IHBy b2Nlc3MgbG9naWMuDQogICAvLw0KICAgICBIZWFkID0gKElQNF9IRUFEICopIE5ldGJ1ZkdldEJ5 dGUgKFBhY2tldCwgMCwgTlVMTCk7DQogICAgIEFTU0VSVCAoSGVhZCAhPSBOVUxMKTsNCkBAIC05 NzMsNyArOTczLDcgQEAgSXA0SW5zdGFuY2VGcmFtZUFjY2VwdGFibGUgKA0KICAgQ29uZmlnID0g JklwSW5zdGFuY2UtPkNvbmZpZ0RhdGE7DQogDQogICAvLw0KLSAgLy8gRGlydHkgdHJpY2sgZm9y IHRoZSBUaWFubyBVRUZJIG5ldHdvcmsgc3RhY2sgaW1wbG1lbnRhdGlvbi4gSWYNCisgIC8vIERp cnR5IHRyaWNrIGZvciB0aGUgVGlhbm8gVUVGSSBuZXR3b3JrIHN0YWNrIGltcGxlbWVudGF0aW9u LiBJZg0KICAgLy8gUmVjZWl2ZVRpbWVvdXQgPT0gLTEsIHRoZSByZWNlaXZlIG9mIHRoZSBwYWNr ZXQgZm9yIHRoaXMgaW5zdGFuY2UNCiAgIC8vIGlzIGRpc2FibGVkLiBUaGUgVUVGSSBzcGVjIGRv bid0IGhhdmUgc3VjaCBjYXBhYmlsaXR5LiBXZSBhZGQNCiAgIC8vIHRoaXMgdG8gaW1wcm92ZSB0 aGUgcGVyZm9ybWFuY2UgYmVjYXVzZSBJUCB3aWxsIG1ha2UgYSBjb3B5IG9mIEBAIC0xMDg2LDcg KzEwODYsNyBAQCBJcDRJbnN0YW5jZUVucXVlUGFja2V0ICgNCiAgIH0NCiANCiAgIC8vDQotICAv LyBFbnF1ZSBhIHNoYXJlZCBjb3B5IG9mIHRoZSBwYWNrZXQuDQorICAvLyBFbnF1ZXVlIGEgc2hh cmVkIGNvcHkgb2YgdGhlIHBhY2tldC4NCiAgIC8vDQogICBDbG9uZSA9IE5ldGJ1ZkNsb25lIChQ YWNrZXQpOw0KIA0KQEAgLTEzNjUsNyArMTM2NSw3IEBAIElwNEludGVyZmFjZUVucXVlUGFja2V0 ICgNCiAgIC8vDQogICAvLyBGaXJzdCwgY2hlY2sgdGhhdCB0aGUgcGFja2V0IGlzIGFjY2VwdGFi bGUgdG8gdGhpcyBpbnRlcmZhY2UNCiAgIC8vIGFuZCBmaW5kIHRoZSBsb2NhbCBjYXN0IHR5cGUg Zm9yIHRoZSBpbnRlcmZhY2UuIEEgcGFja2V0IHNlbnQNCi0gIC8vIHRvIHNheSAxOTIuMTY4LjEu MSBzaG91bGQgTk9UIGJlIGRlbGxpZXZlciB0byAxMC4wLjAuMSB1bmxlc3MNCisgIC8vIHRvIHNh eSAxOTIuMTY4LjEuMSBzaG91bGQgTk9UIGJlIGRlbGl2ZXIgdG8gMTAuMC4wLjEgdW5sZXNzDQog ICAvLyBwcm9taXNjdW91cyByZWNlaXZpbmcuDQogICAvLw0KICAgTG9jYWxUeXBlID0gMDsNCkBA IC0xMzgxLDcgKzEzODEsNyBAQCBJcDRJbnRlcmZhY2VFbnF1ZVBhY2tldCAoDQogDQogICB9IGVs c2Ugew0KICAgICAvLw0KLSAgICAvLyBDaGVjayB0aGUgZGVzdGluYXRpb24gYWdhaW5pc3QgbG9j YWwgSVAuIElmIHRoZSBzdGF0aW9uDQorICAgIC8vIENoZWNrIHRoZSBkZXN0aW5hdGlvbiBhZ2Fp bnN0IGxvY2FsIElQLiBJZiB0aGUgc3RhdGlvbg0KICAgICAvLyBhZGRyZXNzIGlzIDAuMC4wLjAs IGl0IG1lYW5zIHJlY2VpdmluZyBhbGwgdGhlIElQIGRlc3RpbmVkDQogICAgIC8vIHRvIGxvY2Fs IG5vbi16ZXJvIElQLiBPdGhlcndpc2UsIGl0IGlzIG5lY2Vzc2FyeSB0byBjb21wYXJlDQogICAg IC8vIHRoZSBkZXN0aW5hdGlvbiB0byB0aGUgaW50ZXJmYWNlJ3MgSVAgYWRkcmVzcy4NCkBAIC0x NDYzLDcgKzE0NjMsNyBAQCBJcDRJbnRlcmZhY2VEZWxpdmVyUGFja2V0ICgNCiANCiAvKioNCiAg IERlbXVsdGlwbGUgdGhlIHBhY2tldC4gdGhlIHBhY2tldCBkZWxpdmVyeSBpcyBwcm9jZXNzZWQg aW4gdHdvDQotICBwYXNzZXMuIFRoZSBmaXJzdCBwYXNzIHdpbGwgZW5xdWUgYSBzaGFyZWQgY29w eSBvZiB0aGUgcGFja2V0DQorICBwYXNzZXMuIFRoZSBmaXJzdCBwYXNzIHdpbGwgZW5xdWV1ZSBh IHNoYXJlZCBjb3B5IG9mIHRoZSBwYWNrZXQNCiAgIHRvIGVhY2ggSVA0IGNoaWxkIHRoYXQgYWNj ZXB0cyB0aGUgcGFja2V0LiBUaGUgc2Vjb25kIHBhc3Mgd2lsbA0KICAgZGVsaXZlciBhIG5vbi1z aGFyZWQgY29weSBvZiB0aGUgcGFja2V0IHRvIGVhY2ggSVA0IGNoaWxkIHRoYXQNCiAgIGhhcyBw ZW5kaW5nIHJlY2VpdmUgcmVxdWVzdHMuIERhdGEgaXMgY29waWVkIGlmIG1vcmUgdGhhbiBvbmUg QEAgLTE0OTUsNyArMTQ5NSw3IEBAIElwNERlbXVsdGlwbGV4ICgNCiAgIElOVE4gICAgICAgICAg ICAgICAgICAgICAgRW5xdWV1ZWQ7DQogDQogICAvLw0KLSAgLy8gVHdvIHBhc3MgZGVsaXZlcnk6 IGZpcnN0LCBlbnF1ZSBhIHNoYXJlZCBjb3B5IG9mIHRoZSBwYWNrZXQNCisgIC8vIFR3byBwYXNz IGRlbGl2ZXJ5OiBmaXJzdCwgZW5xdWV1ZSBhIHNoYXJlZCBjb3B5IG9mIHRoZSBwYWNrZXQNCiAg IC8vIHRvIGVhY2ggaW5zdGFuY2UgdGhhdCBhY2NlcHQgdGhlIHBhY2tldC4NCiAgIC8vDQogICBF bnF1ZXVlZCA9IDA7DQpkaWZmIC0tZ2l0IGEvTmV0d29ya1BrZy9JcDREeGUvSXA0T3B0aW9uLmMg Yi9OZXR3b3JrUGtnL0lwNER4ZS9JcDRPcHRpb24uYyBpbmRleCBiM2M1OThjNjRhMzguLjBmNmU0 NDRjZThiZSAxMDA2NDQNCi0tLSBhL05ldHdvcmtQa2cvSXA0RHhlL0lwNE9wdGlvbi5jDQorKysg Yi9OZXR3b3JrUGtnL0lwNER4ZS9JcDRPcHRpb24uYw0KQEAgLTE4MSw3ICsxODEsNyBAQCBJcDRD b3B5T3B0aW9uICgNCiANCiAgIC8vDQogICAvLyBIZWFkIGxlbmd0aCBpcyBpbiB0aGUgdW5pdCBv ZiA0IGJ5dGVzLiBOb3csIExlbiBpcyB0aGUNCi0gIC8vIGFjdXRhbCBvcHRpb24gbGVuZ3RoIHRv IGFwcGVhciBpbiB0aGUgSVAgaGVhZGVyLg0KKyAgLy8gYWN0dWFsIG9wdGlvbiBsZW5ndGggdG8g YXBwZWFyIGluIHRoZSBJUCBoZWFkZXIuDQogICAvLw0KICAgTGVuID0gKChOZXh0ICsgMykgJn4w eDAzKTsNCiANCmRpZmYgLS1naXQgYS9OZXR3b3JrUGtnL0lwNER4ZS9JcDRPdXRwdXQuYyBiL05l dHdvcmtQa2cvSXA0RHhlL0lwNE91dHB1dC5jIGluZGV4IDVlYjM4MTQwODljYi4uYzE2MWI3MjU0 MmJlIDEwMDY0NA0KLS0tIGEvTmV0d29ya1BrZy9JcDREeGUvSXA0T3V0cHV0LmMNCisrKyBiL05l dHdvcmtQa2cvSXA0RHhlL0lwNE91dHB1dC5jDQpAQCAtMjEsMTAgKzIxLDEwIEBAIFVJTlQxNiAg bUlwNElkOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZyYWdtZW50LCBUdGwsIFByb3Rv Y29sLCBTcmMgYW5kIERzdC4gQWxsIHRoZSBmaWVsZHMNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBhcmUgaW4gaG9zdCBieXRlIG9yZGVyLiBUaGlzIGZ1bmN0aW9uIHdpbGwgZmlsbCBpbg0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZSBWZXIsIEhlYWRMZW4sIGFuZCBjaGVja3N1 bS4NCi0gIEBwYXJhbSAgT3B0aW9uICAgICAgICAgICBUaGUgb3JnaW5hbCBJUDQgb3B0aW9uIHRv IGNvcHkgZnJvbQ0KKyAgQHBhcmFtICBPcHRpb24gICAgICAgICAgIFRoZSBvcmlnaW5hbCBJUDQg b3B0aW9uIHRvIGNvcHkgZnJvbQ0KICAgQHBhcmFtICBPcHRMZW4gICAgICAgICAgIFRoZSBsZW5n dGggb2YgdGhlIElQNCBvcHRpb24NCiANCi0gIEByZXR2YWwgRUZJX0JBRF9CVUZGRVJfU0laRSAg VGhlcmUgaXMgbm8gZW5vdWdodCByb29tIGluIHRoZSBoZWFkIHNwYWNlIG9mDQorICBAcmV0dmFs IEVGSV9CQURfQlVGRkVSX1NJWkUgIFRoZXJlIGlzIG5vIGVub3VnaCByb29tIGluIHRoZSBoZWFk IA0KKyBzcGFjZSBvZg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQYWNrZXQuDQog ICBAcmV0dmFsIEVGSV9TVUNDRVNTICAgICAgICAgIFRoZSBJUDQgaGVhZGVyIGlzIHN1Y2Nlc3Nm dWxseSBhZGRlZCB0byB0aGUgcGFja2V0Lg0KIA0KQEAgLTMwMCw3ICszMDAsNyBAQCBJcDRPdXRw dXQgKA0KIA0KICAgfSBlbHNlIGlmIChHYXRlV2F5ID09IElQNF9BTExaRVJPX0FERFJFU1MpIHsN CiAgICAgLy8NCi0gICAgLy8gUm91dGUgdGhlIHBhY2tldCB1bmxlc3Mgb3ZlcnJpZGVkLCB0aGF0 IGlzLCBHYXRlV2F5IGlzbid0IHplcm8uDQorICAgIC8vIFJvdXRlIHRoZSBwYWNrZXQgdW5sZXNz IG92ZXJyaWRkZW4sIHRoYXQgaXMsIEdhdGVXYXkgaXNuJ3QgemVyby4NCiAgICAgLy8NCiAgICAg aWYgKElwSW5zdGFuY2UgPT0gTlVMTCkgew0KICAgICAgIENhY2hlRW50cnkgPSBJcDRSb3V0ZSAo SXBTYi0+RGVmYXVsdFJvdXRlVGFibGUsIEhlYWQtPkRzdCwgSGVhZC0+U3JjLCBJcElmLT5TdWJu ZXRNYXNrLCBUUlVFKTsgQEAgLTMzMSw3ICszMzEsNyBAQCBJcDRPdXRwdXQgKA0KIA0KICAgaWYg KFBhY2tldC0+VG90YWxTaXplICsgSGVhZExlbiA+IE10dSkgew0KICAgICAvLw0KLSAgICAvLyBG cmFnbWVudGF0aW9uIGlzIGRpYWJsZWQgZm9yIFJhd0RhdGEgbW9kZS4NCisgICAgLy8gRnJhZ21l bnRhdGlvbiBpcyBkaXNhYmxlZCBmb3IgUmF3RGF0YSBtb2RlLg0KICAgICAvLw0KICAgICBpZiAo UmF3RGF0YSkgew0KICAgICAgIHJldHVybiBFRklfQkFEX0JVRkZFUl9TSVpFOw0KQEAgLTM5OSw3 ICszOTksNyBAQCBJcDRPdXRwdXQgKA0KICAgfQ0KIA0KICAgLy8NCi0gIC8vIFNlbmQgdGhlIGZp cnN0IGZyYWdtZW50LCBpdCBpcyBlaXRoZXIgdGhlIG9yZ2luYWwgcGFja2V0LCBvciB0aGUNCisg IC8vIFNlbmQgdGhlIGZpcnN0IGZyYWdtZW50LCBpdCBpcyBlaXRoZXIgdGhlIG9yaWdpbmFsIHBh Y2tldCwgb3IgdGhlDQogICAvLyBmaXJzdCBmcmFnbWVudCBvZiBhIGZyYWdtZW50ZWQgcGFja2V0 LiBJdCBzZWVtcyB0aGF0IHRoZXJlIGlzIGEgc3VidGxlDQogICAvLyBidWcgaGVyZTogd2hhdCBp ZiB0aGUgY2FsbGVyIGZyZWUgdGhlIHBhY2tldCBpbiBDYWxsYmFjayBhbmQgSXBJZiAob3INCiAg IC8vIE1OUCBjaGlsZCB1c2VkIGJ5IHRoYXQgaW50ZXJmYWNlKSBzdGlsbCBob2xkcyB0aGUgZnJh Z21lbnRzIGFuZCB0cnkgQEAgLTQyMCw3ICs0MjAsNyBAQCBJcDRPdXRwdXQgKA0KICAgLy8gICAg aXMgYm91bmQgd2l0aCB0aGUgUGFja2V0LiBJdCB3aWxsIG9ubHkgYmUgZnJlZWQgd2hlbiBhbGwN CiAgIC8vICAgIHRoZSByZWZlcmVuY2VzIHRvIFBhY2tldCBoYXZlIGJlZW4gcmVsZWFzZWQuIFVw b24gdGhlbiwgdGhlDQogICAvLyAgICBQYWNrZXQncyBPbkZyZWUgY2FsbGJhY2sgd2lsbCByZWxl YXNlIHRoZSBJUDRfVFhUT0tFTl9XUkFQLA0KLSAgLy8gICAgYW5kIHNpbmdhbCB0aGUgdXNlcidz IHJlY3ljbGUgZXZlbnQuIFNvLCBhbHNvIG5vIHByb2JsZW0gZm9yDQorICAvLyAgICBhbmQgc2ln bmFsIHRoZSB1c2VyJ3MgcmVjeWNsZSBldmVudC4gU28sIGFsc28gbm8gcHJvYmxlbSBmb3INCiAg IC8vICAgIHVwcGVyIGxheWVyJ3MgcGFja2V0cy4NCiAgIC8vDQogICBJcDRQcmVwZW5kSGVhZCAo UGFja2V0LCBIZWFkLCBPcHRpb24sIE9wdExlbik7IGRpZmYgLS1naXQgYS9OZXR3b3JrUGtnL0lw NER4ZS9JcDRSb3V0ZS5jIGIvTmV0d29ya1BrZy9JcDREeGUvSXA0Um91dGUuYyBpbmRleCAxMjRj MDczMGFkODcuLjM4NjAxMTkzNGIxOSAxMDA2NDQNCi0tLSBhL05ldHdvcmtQa2cvSXA0RHhlL0lw NFJvdXRlLmMNCisrKyBiL05ldHdvcmtQa2cvSXA0RHhlL0lwNFJvdXRlLmMNCkBAIC05LDE0ICs5 LDE0IEBAIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2UtUGF0ZW50DQogDQog DQogLyoqDQotICBBbGxvY2F0ZSBhIHJvdXRlIGVudHJ5IHRoZW4gaW5pdGlhbGl6ZSBpdCB3aXRo IHRoZSBEZXN0L05ldG1ha3MNCisgIEFsbG9jYXRlIGEgcm91dGUgZW50cnkgdGhlbiBpbml0aWFs aXplIGl0IHdpdGggdGhlIERlc3QvTmV0bWFzaw0KICAgYW5kIEdhdGV3YXkuDQogDQogICBAcGFy YW1baW5dICBEZXN0ICAgICAgICAgICAgICAgICAgVGhlIGRlc3RpbmF0aW9uIG5ldHdvcmsNCiAg IEBwYXJhbVtpbl0gIE5ldG1hc2sgICAgICAgICAgICAgICBUaGUgZGVzdGluYXRpb24gbmV0d29y ayBtYXNrDQogICBAcGFyYW1baW5dICBHYXRlV2F5ICAgICAgICAgICAgICAgVGhlIG5leHRob3Ag YWRkcmVzcw0KIA0KLSAgQHJldHVybiBOVUxMIGlmIGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1lb3J5 LCBvdGhlcndpc2UgdGhlIG5ld2x5IGNyZWF0ZWQNCisgIEByZXR1cm4gTlVMTCBpZiBmYWlsZWQg dG8gYWxsb2NhdGUgbWVtb3J5LCBvdGhlcndpc2UgdGhlIG5ld2x5IA0KKyBjcmVhdGVkDQogICAg ICAgICAgIHJvdXRlIGVudHJ5Lg0KIA0KICoqLw0KQEAgLTEyOSw3ICsxMjksNyBAQCBJcDRGcmVl Um91dGVDYWNoZUVudHJ5ICgNCiAvKioNCiAgIEluaXRpYWxpemUgYW4gZW1wdHkgcm91dGUgY2Fj aGUgdGFibGUuDQogDQotICBAcGFyYW1baW4sIG91dF0gIFJ0Q2FjaGUgICAgICAgICAgICAgICBU aGUgcm90dWUgY2FjaGUgdGFibGUgdG8gaW5pdGlhbGl6ZS4NCisgIEBwYXJhbVtpbiwgb3V0XSAg UnRDYWNoZSAgICAgICAgICAgICAgIFRoZSByb3V0ZSBjYWNoZSB0YWJsZSB0byBpbml0aWFsaXpl Lg0KIA0KICoqLw0KIFZPSUQNCkBAIC0zNTksNyArMzU5LDcgQEAgSXA0QWRkUm91dGUgKA0KIA0K ICAgQHJldHZhbCBFRklfU1VDQ0VTUyAgICAgICAgICAgVGhlIHJvdXRlIGVudHJ5IGlzIHN1Y2Nl c3NmdWxseSByZW1vdmVkDQogICBAcmV0dmFsIEVGSV9OT1RfRk9VTkQgICAgICAgICBUaGVyZSBp cyBubyByb3V0ZSBlbnRyeSBpbiB0aGUgdGFibGUgd2l0aCB0aGF0DQotICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBwcm9wZXJpdHkuDQorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBwcm9wZXJ0eS4NCiANCiAqKi8NCiBFRklfU1RBVFVTDQpAQCAtMzk2LDcgKzM5Niw3IEBA IElwNERlbFJvdXRlICgNCiANCiAvKioNCiAgIEZpbmQgYSByb3V0ZSBjYWNoZSB3aXRoIHRoZSBk c3QgYW5kIHNyYy4gVGhpcyBpcyB1c2VkIGJ5IElDTVANCi0gIHJlZGlyZWN0IG1lc3Nhc2dlIHBy b2Nlc3MuIEFsbCBraW5kcyBvZiByZWRpcmVjdCBpcyB0cmVhdGVkIGFzDQorICByZWRpcmVjdCBt ZXNzYWdlIHByb2Nlc3MuIEFsbCBraW5kcyBvZiByZWRpcmVjdCBpcyB0cmVhdGVkIGFzDQogICBo b3N0IHJlZGlyZWN0IGFjY29yZGluZyB0byBSRkMxMTIyLiBTbywgb25seSByb3V0ZSBjYWNoZSBl bnRyaWVzDQogICBhcmUgbW9kaWZpZWQgYWNjb3JkaW5nIHRvIHRoZSBJQ01QIHJlZGlyZWN0IG1l c3NhZ2UuDQogDQpAQCAtNDQ0LDcgKzQ0NCw3IEBAIElwNEZpbmRSb3V0ZUNhY2hlICgNCiAgIDIu IFRoZSBsb2NhbCByb3V0ZSBlbnRyaWVzIGhhdmUgcHJlY2VkZW5jZSBvdmVyIHRoZSBkZWZhdWx0 IHJvdXRlIGVudHJ5Lg0KIA0KICAgQHBhcmFtW2luXSAgUnRUYWJsZSAgICAgICAgICAgICAgIFRo ZSByb3V0ZSB0YWJsZSB0byBzZWFyY2ggZnJvbQ0KLSAgQHBhcmFtW2luXSAgRHN0ICAgICAgICAg ICAgICAgICAgIFRoZSBkZXN0aW9uYXRpb24gYWRkcmVzcyB0byBzZWFyY2gNCisgIEBwYXJhbVtp bl0gIERzdCAgICAgICAgICAgICAgICAgICBUaGUgZGVzdGluYXRpb24gYWRkcmVzcyB0byBzZWFy Y2gNCiANCiAgIEByZXR1cm4gTlVMTCBpZiBubyByb3V0ZSBtYXRjaGVzIHRoZSBEc3QsIG90aGVy d2lzZSB0aGUgcG9pbnQgdG8gdGhlDQogICAgICAgICAgIG1vc3Qgc3BlY2lmaWMgcm91dGUgdG8g dGhlIERzdC4NCkBAIC02MDUsNyArNjA1LDcgQEAgSXA0Um91dGUgKA0KICAgQHBhcmFtW2luXSAg SXBJbnN0YW5jZSAgICAgICAgVGhlIElQNCBjaGlsZCB0aGF0IHJlcXVlc3RzIHRoZSByb3V0ZSB0 YWJsZS4NCiANCiAgIEByZXR2YWwgRUZJX1NVQ0NFU1MgICAgICAgICAgIFRoZSByb3V0ZSB0YWJs ZSBpcyBzdWNjZXNzZnVsbHkgYnVpbGQNCi0gIEByZXR2YWwgRUZJX09VVF9PRl9SRVNPVVJDRVMg IEZhaWxlZCB0byBhbGxvY2F0ZSB0aGUgbWVtb3J5IGZvciB0aGUgcm90dWUgdGFibGUuDQorICBA cmV0dmFsIEVGSV9PVVRfT0ZfUkVTT1VSQ0VTICBGYWlsZWQgdG8gYWxsb2NhdGUgdGhlIG1lbW9y eSBmb3IgdGhlIHJvdXRlIHRhYmxlLg0KIA0KICoqLw0KIEVGSV9TVEFUVVMNCi0tDQoyLjIxLjAN Cg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KCkludGVsIFRlY2hub2xvZ3kgUG9sYW5kIHNwLiB6IG8uby4KdWwuIFNs b3dhY2tpZWdvIDE3MyB8IDgwLTI5OCBHZGFuc2sgfCBTYWQgUmVqb25vd3kgR2RhbnNrIFBvbG5v YyB8IFZJSSBXeWR6aWFsIEdvc3BvZGFyY3p5IEtyYWpvd2VnbyBSZWplc3RydSBTYWRvd2VnbyAt IEtSUyAxMDE4ODIgfCBOSVAgOTU3LTA3LTUyLTMxNiB8IEthcGl0YWwgemFrbGFkb3d5IDIwMC4w MDAgUExOLgoKVGEgd2lhZG9tb3NjIHdyYXogeiB6YWxhY3puaWthbWkgamVzdCBwcnplem5hY3pv bmEgZGxhIG9rcmVzbG9uZWdvIGFkcmVzYXRhIGkgbW96ZSB6YXdpZXJhYyBpbmZvcm1hY2plIHBv dWZuZS4gVyByYXppZSBwcnp5cGFka293ZWdvIG90cnp5bWFuaWEgdGVqIHdpYWRvbW9zY2ksIHBy b3NpbXkgbyBwb3dpYWRvbWllbmllIG5hZGF3Y3kgb3JheiB0cndhbGUgamVqIHVzdW5pZWNpZTsg amFraWVrb2x3aWVrCnByemVnbGFkYW5pZSBsdWIgcm96cG93c3plY2huaWFuaWUgamVzdCB6YWJy b25pb25lLgpUaGlzIGUtbWFpbCBhbmQgYW55IGF0dGFjaG1lbnRzIG1heSBjb250YWluIGNvbmZp ZGVudGlhbCBtYXRlcmlhbCBmb3IgdGhlIHNvbGUgdXNlIG9mIHRoZSBpbnRlbmRlZCByZWNpcGll bnQocykuIElmIHlvdSBhcmUgbm90IHRoZSBpbnRlbmRlZCByZWNpcGllbnQsIHBsZWFzZSBjb250 YWN0IHRoZSBzZW5kZXIgYW5kIGRlbGV0ZSBhbGwgY29waWVzOyBhbnkgcmV2aWV3IG9yIGRpc3Ry aWJ1dGlvbiBieQpvdGhlcnMgaXMgc3RyaWN0bHkgcHJvaGliaXRlZC4K