From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=helo; client-ip=40.107.71.72; helo=nam05-by2-obe.outbound.protection.outlook.com; envelope-from=leo.duran@amd.com; receiver=edk2-devel@lists.01.org Received: from NAM05-BY2-obe.outbound.protection.outlook.com (mail-eopbgr710072.outbound.protection.outlook.com [40.107.71.72]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id E09B421A07A80 for ; Wed, 12 Sep 2018 11:22:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amdcloud.onmicrosoft.com; s=selector1-amd-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=W1+A47PHp+pyYA/YTlBQ6QKQa5kdH6LF6JP763aYE9Q=; b=nVi7zVEQsP+qw7kveU9/UKGXpk4kTT5Vg7plVLMx2cVEMlM7l2a+UaN/b045uCjC5WCNvAK+OsHxN7rGgIT1QGQEFTwpWpu8LQgNr1JxUQIrNOgO/9ZBM39IynoeN0FyTrUR4Nnmto03fh4cBZhhGOj9Ko4R/nQV+i0YR+Ope+w= Received: from CY4PR12MB1815.namprd12.prod.outlook.com (10.175.63.21) by CY4PR12MB1720.namprd12.prod.outlook.com (10.175.62.142) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1122.16; Wed, 12 Sep 2018 18:21:58 +0000 Received: from CY4PR12MB1815.namprd12.prod.outlook.com ([fe80::ecd7:135f:4e1b:2d82]) by CY4PR12MB1815.namprd12.prod.outlook.com ([fe80::ecd7:135f:4e1b:2d82%3]) with mapi id 15.20.1122.019; Wed, 12 Sep 2018 18:21:57 +0000 From: "Duran, Leo" To: Laszlo Ersek , "edk2-devel@lists.01.org" CC: Eric Dong , Ruiyu Ni Thread-Topic: [PATCH] UefiCpuPkg/MtrrLib: Add flag to skip disabling MTRRs prior to MTRR change. Thread-Index: AQHUSeX3EbC17fDvXkWWIRAmwJTcUaTrbK6AgAANLJCAAO+ogIAAVCzAgAAzL4CAAAHbwA== Date: Wed, 12 Sep 2018 18:21:57 +0000 Message-ID: References: <1536680498-6554-1-git-send-email-leo.duran@amd.com> <1536680498-6554-2-git-send-email-leo.duran@amd.com> <17c6d6d1-2655-fe06-a8b9-f48141bfb0d7@redhat.com> <610eaa55-c87b-5e0c-4f87-5c1e79ffc5ba@redhat.com> <12abd990-3b08-9159-e7a9-ffd7eb7282b3@redhat.com> In-Reply-To: <12abd990-3b08-9159-e7a9-ffd7eb7282b3@redhat.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=leo.duran@amd.com; x-originating-ip: [165.204.77.1] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; CY4PR12MB1720; 20:PE/B6yL4yM+DO7CPKd8R6DATWoibtVFr9NY2vzrYF3Mvgi0+jflLz+f4N+1F6H3y6miFnWLYxbFTbunsv0AuXysM+cu/VYDXPr9vyfIZ24w1Dkzd66ZsH0KW1sfVSgWU47r5TdSH5MlMWkmLu/b7vsAiRjEidS8aeul8h+49e29oXlOPWbm4O9Cbf3ET6ZeICVNc/e1hslz/mHvPN/N4c09CYRXosjIK1/K5wOqlc0yXpVB4M03Gj51vvGVl/rP8 x-ms-exchange-antispam-srfa-diagnostics: SOS; x-ms-office365-filtering-correlation-id: 9b23de88-b781-4b0e-9e27-08d618dca038 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989137)(4534165)(4627221)(201703031133081)(201702281549075)(8990107)(5600074)(711020)(4618075)(2017052603328)(7153060)(7193020); SRVR:CY4PR12MB1720; x-ms-traffictypediagnostic: CY4PR12MB1720: x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(767451399110)(162533806227266)(163750095850)(228905959029699); x-ms-exchange-senderadcheck: 1 x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231311)(944501410)(52105095)(10201501046)(3002001)(93006095)(93001095)(6055026)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123564045)(20161123558120)(20161123562045)(201708071742011)(7699050); SRVR:CY4PR12MB1720; BCL:0; PCL:0; RULEID:; SRVR:CY4PR12MB1720; x-forefront-prvs: 07935ACF08 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(376002)(346002)(136003)(366004)(396003)(39860400002)(54094003)(199004)(189003)(13464003)(52314003)(33656002)(6436002)(99286004)(81156014)(186003)(2501003)(5660300001)(81166006)(76176011)(7696005)(8936002)(26005)(54906003)(446003)(97736004)(110136005)(9686003)(316002)(55016002)(68736007)(93886005)(53936002)(229853002)(486006)(6506007)(476003)(53546011)(102836004)(5250100002)(74316002)(2906002)(105586002)(7736002)(106356001)(86362001)(14444005)(575784001)(11346002)(256004)(2900100001)(8676002)(6116002)(3846002)(25786009)(478600001)(66066001)(4326008)(6246003)(14454004)(305945005); DIR:OUT; SFP:1101; SCL:1; SRVR:CY4PR12MB1720; H:CY4PR12MB1815.namprd12.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: amd.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: 7OS9q+GoackfQotSS9+vONDGBeWWEvf8hjgab4qhIGAnnfm/KKJuX4aGK9o1SJLi5DLNUH5m5++15rPBCUFb3PaqjgZrN2rv6F4TFfPP82BVLtf9MIwu/wxbC9Fe8pt0vG8QUGJ2avhUSpbwSlbaGCnjCBRmBnTHDA+WVK34JlIIkDHBMZC83LieztctnWQB7HHVd3OWasiNoGytR2j24Nvx/kmc2ENi9tppH72u/Kwh4TTYs4hXW5Da4G5lcQcVmbz1wflKLilVVXMDjPimJgAf4tU5xP69EWgcIChtheHluONqp4FWeW8WQ5715LzF+LEkyfjarWDB9zdTOH4buODLUHb8/UTbn+18DANphoI= spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9b23de88-b781-4b0e-9e27-08d618dca038 X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Sep 2018 18:21:57.7929 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR12MB1720 Subject: Re: [PATCH] UefiCpuPkg/MtrrLib: Add flag to skip disabling MTRRs prior to MTRR change. X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Sep 2018 18:22:02 -0000 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogTGFzemxvIEVyc2VrIDxs ZXJzZWtAcmVkaGF0LmNvbT4NCj4gU2VudDogV2VkbmVzZGF5LCBTZXB0ZW1iZXIgMTIsIDIwMTgg MTI6NTkgUE0NCj4gVG86IER1cmFuLCBMZW8gPGxlby5kdXJhbkBhbWQuY29tPjsgZWRrMi1kZXZl bEBsaXN0cy4wMS5vcmcNCj4gQ2M6IEVyaWMgRG9uZyA8ZXJpYy5kb25nQGludGVsLmNvbT47IFJ1 aXl1IE5pIDxydWl5dS5uaUBpbnRlbC5jb20+DQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0hdIFVlZmlD cHVQa2cvTXRyckxpYjogQWRkIGZsYWcgdG8gc2tpcCBkaXNhYmxpbmcgTVRSUnMNCj4gcHJpb3Ig dG8gTVRSUiBjaGFuZ2UuDQo+IA0KPiBPbiAwOS8xMi8xOCAxNzoxNywgRHVyYW4sIExlbyB3cm90 ZToNCj4gPiBMYXN6bG8sIGV0IGFsLA0KPiA+DQo+ID4gUGVyaGFwcyBpdCB3b3VsZCBiZSBiZXN0 IGlmIEkgcHJvdmlkZSBhbiBleGFtcGxlIG9mIHRoZSBwcm9ibGVtIEknbSB0cnlpbmcNCj4gdG8g c29sdmUsIGFuZCBwZXJoYXBzIHdlIG1heSBjaGltZSBpbiB3aXRoIHN1Z2dlc3Rpb25zLg0KPiA+ DQo+ID4gQWdhaW4sDQo+ID4gVGhlIGZ1bmRhbWVudGFsIGlzc3VlIGhhcyB0byBkbyB3aXRoIHNo YXJlZCBNVFJSIGNvbnRyb2wgYnkgc2V0IG9mDQo+IHRocmVhZHMgd2l0aGluIGEgY29yZSB3aXRo IFNNVCBlbmFibGVkLg0KPiA+IFNvIGlkZWFsbHkgb25seSBvbmUgdGhyZWFkICh0aGUgZmlyc3Qg dGhyZWFkIHRoYXQgd2FrZXMgdXApIGZyb20gYSBzZXQgd291bGQNCj4gY29uZmlndXJlIHRoZSBN U1IsIGFuZCBvdGhlciB0aHJlYWRzIGluIHRoZSBzZXQgd291bGQgbm90IG5lZWQgdG8uDQo+ID4N Cj4gPiBUaGUgcHJvYmxlbSB3aXRoIHRoZSBleGlzdGluZyBjb2RlIGlzIHRoYXQgb25jZSB0aGUg Zmlyc3QgdGhyZWFkIGNvbmZpZ3VyZXMNCj4gdGhlIE1TUiwgYW5vdGhlciB0aHJlYWQgaW4gdGhl IHNldCBmb2xsb3dzIGFuZCBjbGVhcnMgdGhlIEVOQUJMRSBiaXQgaW4NCj4gTXRyckxpYlByZU10 cnJDaGFuZ2UoKS4NCj4gDQo+IFJpZ2h0LCBJIHRoaW5rIEkgdW5kZXJzdG9vZCB0aGF0LiBXaGF0 IEkgZG9uJ3QgdW5kZXJzdGFuZCBpczoNCj4gDQo+ID4gKEJhc2ljYWxseSwgdGhlIHNlY29uZCB0 aHJlYWQgcHVsbHMgdGhlIHJ1ZyBmcm9tIHVuZGVyIHRoZSBmaXJzdCB0aHJlYWQpLg0KPiANCj4g d2h5IGl0IGlzIGEgcHJvYmxlbSB0aGF0LCB3aGVuIHRoZSBzZWNvbmQgdGhyZWFkIHdha2VzIHVw IG9uIHRoZSBzYW1lDQo+IGNvcmUsIGl0IHJlcGVhdHMgdGhlIHdob2xlIE1UUlIgY29uZmlndXJh dGlvbj8gSXQgZG9lcyBjbGVhciB0aGUgRW5hYmxlIGJpdA0KPiB0ZW1wb3JhcmlseSwgeWVzLCBi dXQgaW4gdGhlIGVuZCBpdCByZS1zdG9yZXMgdGhlIGV4YWN0IHNhbWUgTVRSUiBjb25maWcuIEFu ZA0KPiB3aGlsZSB0aGlzIGhhcHBlbnMsIHRoZSBmaXJzdCB0aHJlYWQgb24gdGhlIGNvcmUgKGFs cmVhZHkgcGFzdCB0aGUgTVRSUg0KPiBzZXR1cCkgc2hvdWxkbid0IGJlIGRvaW5nIGFueXRoaW5n IGF0IGFsbCwgYmVjYXVzZSBhbGwgbG9naWNhbCBDUFVzIHNob3VsZCBzaXQNCj4gdGlnaHQgdW50 aWwgYWxsIG9mIHRoZW0gY29tcGxldGUgdGhlIE1UUlIgc2V0dXAuDQo+IA0KPiANCj4gTm93LCBv ZiBjb3Vyc2UsIGlmIHRoZSBNVFJSIHNldHVwIHJ1bnMgaW4gcGFyYWxsZWwgb24gYWxsIGxvZ2lj YWwgQ1BVcyAoSSBjYW4ndA0KPiByZWNhbGwgb2ZmLWhhbmQgd2hldGhlciB0aGV5IGFyZSBzdGFy dGVkIHVwIGluIHBhcmFsbGVsIG9yIG9uZS1ieS1vbmUgLS0gSQ0KPiB0aGluayBpdCdzICJmcmVl IGZvciBhbGwiIHRob3VnaCksIGFuZCBvbiB2YXJpb3VzIENQVSBtb2RlbHMgdGhpcyBtb2RpZmll cw0KPiByZXNvdXJjZXMgdGhhdCBhcmUgc2hhcmVkLCB0aGVuIHdlIGhhdmUgYSBtb3JlIHNlcmlv dXMgcHJvYmxlbS4gQmVjYXVzZQ0KPiB0aGVuIHR3byB0aHJlYWRzIG9uIHRoZSBzYW1lIGNvcmUg bWF5IG1vZGlmeSBwYXJ0cyBvZiB0aGUgc2hhcmVkIE1UUlINCj4gc2V0dGluZ3MgKm90aGVyKiB0 aGFuIGp1c3QgdGhlIEVuYWJsZSBiaXQuDQo+IA0KDQpJIGFsc28gdGhpbmsgaXQncyBhICdmcmVl IGZvciBhbGwiDQooTXkgdW5kZXJzdGFuZGluZyBpcyB0aGF0IHRoZSBCU1AgaXNzdWVzIGEgYnJv YWRjYXN0IHRvIHRoZSBBUHMuKQ0KDQpQZXJoYXBzIGlmIHRoZSBzZWNvbmQgdGhyZWFkIHdhaXRz IGZvciB0aGUgZmlyc3QgdGhyZWFkIHRvIGNvbXBsZXRlIGFuZCBnZXQgc2FmZWx5IHBhcmtlZCwg dGhlIGZpcnN0IHRocmVhZCBtYXkgYmUgdGhlbiBpbW11bmUgdG8gdGhlIHN1YnNlcXVlbnQgY2hh bmdlcy4NCg0KPiBQZXJoYXBzIHRoaXMgc2hvdWxkIGJlIHNvbHZlZCBieSBhZGRpbmcgc3VpdGFi bGUgZXhjbHVzaW9uLCBzbyB0aGF0IG9ubHkgb25lDQo+IHRocmVhZCBvbiBlYWNoIGNvcmUgY29u ZmlndXJlIHRoZSBNVFJSLiBJbiBvdGhlciB3b3JkcywgY29udGludWUgdG8gcGVybWl0DQo+IGZ1 bGwgcGFyYWxsZWxpc20gYmV0d2VlbiBjb3JlcywgYnV0IHJlc3RyaWN0IGVhY2ggY29yZSB0byBq dXN0IG9uZSBsb2dpY2FsDQo+IHRocmVhZCwgd2hlbiBkb2luZyB0aGUgTVRSUiBjaGFuZ2VzLg0K PiANCg0KWWVzLCBhZ3JlZWQhDQpUaGF0IHdvdWxkIGJlIGlkZWFsIGZvciB0aGUgY2FzZSB3aGVy ZSB0aHJlYWRzIGluIGEgY29yZSBzaGFyZSBNVFJSIHJlc291cmNlcy4NCg0KVW5mb3J0dW5hdGVs eSwgTXRyclNldEFsbE10cnJzKCkgZ2V0cyBjYWxsZWQgZnJvbSBxdWl0ZSBhIGZldyBwbGFjZXMs IHNvIG9yY2hlc3RyYXRpbmcgdGhlICJvbmx5IG9uZSBsb2dpY2FsIHRocmVhZCIgbG9naWMgbWF5 IGJlIHF1aXRlIGNvbXBsaWNhdGVkLg0KQWdhaW4sIEkgcHJlc3VtZSB0aGF0IHdoaWxlIHRoZSB3 b3JrZXIgdGhyZWFkIG1ha2VzIHRoZSBNVFJSIGNoYW5nZXMsIHRoZSBvdGhlciB0aHJlYWRzIG11 c3QgYmUgc2FmZWx5IHBhcmtlZCBhbmQgaW1tdW5lIHRvIHRvZ2dsaW5nIG9mIHRoZSBFbmFibGUg Yml0Lg0KDQo+IEkgd29uZGVyIGlmIHRoZSByaWdodCBhcHByb2FjaCBpcyB0byBkaXNjb3ZlciB0 aGUgQ1BVIHRvcG9sb2d5IHVwLWZyb250DQo+IChiYXNlZCBvbiB0aGUgaW5pdGlhbCBBUElDIElE cyBwZXJoYXBzPyksIGFuZCB0byBtb2RpZnkgdGhlIE1UUlIgc2V0dXANCj4gY2FsbGJhY2sgZm9y IFN0YXJ0dXBBbGxBUHMgLS0gb24gdGhlIGFmZmVjdGVkIENQVSBtb2RlbHMgLS0gc28gdGhhdCB0 aGUNCj4gY2FsbGJhY2sgcmV0dXJucyB3aXRob3V0IGRvaW5nIGFueXRoaW5nIG9uIHRoZSBpbml0 aWFsbHkgImJsYWNrbGlzdGVkIg0KPiB0aHJlYWRzLg0KPiANCj4gQnkgdGhlIHRpbWUgd2UgYXJl IGluIE10cnJMaWIsIGl0J3MgbGlrZWx5IHRvbyBsYXRlIHRvIGNhdGNoIHRoZSBub24tZmF2b3Jl ZA0KPiB0aGVhZHMuDQo+IA0KPiAoSSdkIHZlcnkgbXVjaCBsaWtlIG90aGVycyB0byBjaGltZSBp biB0b28uKQ0KPiANCj4gVGhhbmtzDQo+IExhc3psbw0KPiANCj4gPg0KPiA+IEkgaG9wZSB0aGF0 IGhlbHBzIGV4cGxhaW4gd2hhdCBJJ20gYWZ0ZXIuDQo+ID4gTGVvLg0KPiA+DQo+ID4+IC0tLS0t T3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+IEZyb206IExhc3psbyBFcnNlayA8bGVyc2VrQHJl ZGhhdC5jb20+DQo+ID4+IFNlbnQ6IFdlZG5lc2RheSwgU2VwdGVtYmVyIDEyLCAyMDE4IDQ6NTUg QU0NCj4gPj4gVG86IER1cmFuLCBMZW8gPGxlby5kdXJhbkBhbWQuY29tPjsgZWRrMi1kZXZlbEBs aXN0cy4wMS5vcmcNCj4gPj4gQ2M6IEVyaWMgRG9uZyA8ZXJpYy5kb25nQGludGVsLmNvbT47IFJ1 aXl1IE5pIDxydWl5dS5uaUBpbnRlbC5jb20+DQo+ID4+IFN1YmplY3Q6IFJlOiBbUEFUQ0hdIFVl ZmlDcHVQa2cvTXRyckxpYjogQWRkIGZsYWcgdG8gc2tpcCBkaXNhYmxpbmcNCj4gPj4gTVRSUnMg cHJpb3IgdG8gTVRSUiBjaGFuZ2UuDQo+ID4+DQo+ID4+IE9uIDA5LzExLzE4IDIxOjQ3LCBEdXJh biwgTGVvIHdyb3RlOg0KPiA+Pj4NCj4gPj4+DQo+ID4+Pj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdl LS0tLS0NCj4gPj4+PiBGcm9tOiBMYXN6bG8gRXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPg0KPiA+ Pj4+IFNlbnQ6IFR1ZXNkYXksIFNlcHRlbWJlciAxMSwgMjAxOCAxOjUwIFBNDQo+ID4+Pj4gVG86 IER1cmFuLCBMZW8gPGxlby5kdXJhbkBhbWQuY29tPjsgZWRrMi1kZXZlbEBsaXN0cy4wMS5vcmcN Cj4gPj4+PiBDYzogRXJpYyBEb25nIDxlcmljLmRvbmdAaW50ZWwuY29tPjsgUnVpeXUgTmkgPHJ1 aXl1Lm5pQGludGVsLmNvbT4NCj4gPj4+PiBTdWJqZWN0OiBSZTogW1BBVENIXSBVZWZpQ3B1UGtn L010cnJMaWI6IEFkZCBmbGFnIHRvIHNraXAgZGlzYWJsaW5nDQo+ID4+Pj4gTVRSUnMgcHJpb3Ig dG8gTVRSUiBjaGFuZ2UuDQo+ID4+Pj4NCj4gPj4+PiBPbiAwOS8xMS8xOCAxNzo0MSwgTGVvIER1 cmFuIHdyb3RlOg0KPiA+Pj4+PiBUaGUgZGVmYXVsdCBiZWhhdmlvciBpcyB0byBkaXNhYmxlIE1U UlJzIHByaW9yIHRvIGFuIE1UUlIgY2hhbmdlLg0KPiA+Pj4+PiBIb3dldmVyLCBvbiBTTVQgcGxh dGZvcm1zIHdpdGggc2hhcmVkIENQVSByZXNvdXJjZXMgaXQgbWF5IGJlDQo+ID4+Pj4+IGRlc2ly YWJsZSB0byBza2lwIHRoZSBkZWZhdWx0IGJlaGF2aW9yLCBhbmQgbGVhdmUgdGhlIGN1cnJlbnQN Cj4gPj4+Pj4gc3RhdGUgb2YgdGhlDQo+ID4+Pj4gRW5hYmxlIGJpdC4NCj4gPj4+Pj4NCj4gPj4+ Pj4gQ2M6IEVyaWMgRG9uZyA8ZXJpYy5kb25nQGludGVsLmNvbT4NCj4gPj4+Pj4gQ2M6IExhc3ps byBFcnNlayA8bGVyc2VrQHJlZGhhdC5jb20+DQo+ID4+Pj4+IENvbnRyaWJ1dGVkLXVuZGVyOiBU aWFub0NvcmUgQ29udHJpYnV0aW9uIEFncmVlbWVudCAxLjENCj4gPj4+Pj4gU2lnbmVkLW9mZi1i eTogTGVvIER1cmFuIDxsZW8uZHVyYW5AYW1kLmNvbT4NCj4gPj4+Pj4gLS0tDQo+ID4+Pj4+ICBV ZWZpQ3B1UGtnL0xpYnJhcnkvTXRyckxpYi9NdHJyTGliLmMgICB8IDEwICsrKysrKystLS0NCj4g Pj4+Pj4gIFVlZmlDcHVQa2cvTGlicmFyeS9NdHJyTGliL010cnJMaWIuaW5mIHwgIDMgKysrDQo+ ID4+Pj4+ICBVZWZpQ3B1UGtnL1VlZmlDcHVQa2cuZGVjICAgICAgICAgICAgICB8ICA3ICsrKysr KysNCj4gPj4+Pj4gIDMgZmlsZXMgY2hhbmdlZCwgMTcgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlv bnMoLSkNCj4gPj4+Pj4NCj4gPj4+Pj4gZGlmZiAtLWdpdCBhL1VlZmlDcHVQa2cvTGlicmFyeS9N dHJyTGliL010cnJMaWIuYw0KPiA+Pj4+PiBiL1VlZmlDcHVQa2cvTGlicmFyeS9NdHJyTGliL010 cnJMaWIuYw0KPiA+Pj4+PiBpbmRleCBkZmNlOWE5Li5iYWY5YTBmIDEwMDY0NA0KPiA+Pj4+PiAt LS0gYS9VZWZpQ3B1UGtnL0xpYnJhcnkvTXRyckxpYi9NdHJyTGliLmMNCj4gPj4+Pj4gKysrIGIv VWVmaUNwdVBrZy9MaWJyYXJ5L010cnJMaWIvTXRyckxpYi5jDQo+ID4+Pj4+IEBAIC02LDYgKzYs OCBAQA0KPiA+Pj4+PiAgICAgIGV4Y2VwdCBmb3IgTXRyclNldEFsbE10cnJzKCkgd2hpY2ggaXMg dXNlZCB0byBzeW5jIEJTUCdzIE1UUlINCj4gPj4+Pj4gc2V0dGluZyB0bw0KPiA+Pj4+IEFQcy4N Cj4gPj4+Pj4NCj4gPj4+Pj4gICAgQ29weXJpZ2h0IChjKSAyMDA4IC0gMjAxOCwgSW50ZWwgQ29y cG9yYXRpb24uIEFsbCByaWdodHMNCj4gPj4+Pj4gcmVzZXJ2ZWQuPEJSPg0KPiA+Pj4+PiArICBD b3B5cmlnaHQgKGMpIDIwMTgsIEFNRCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuPEJSPg0KPiA+ Pj4+PiArDQo+ID4+Pj4+ICAgIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRl cmlhbHMNCj4gPj4+Pj4gICAgYXJlIGxpY2Vuc2VkIGFuZCBtYWRlIGF2YWlsYWJsZSB1bmRlciB0 aGUgdGVybXMgYW5kIGNvbmRpdGlvbnMNCj4gPj4+Pj4gb2YgdGhlDQo+ID4+Pj4gQlNEIExpY2Vu c2UNCj4gPj4+Pj4gICAgd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24uICBUaGUg ZnVsbCB0ZXh0IG9mIHRoZQ0KPiA+Pj4+PiBsaWNlbnNlIG1heSBiZSBmb3VuZCBhdCBAQCAtMzEw LDkgKzMxMiwxMSBAQA0KPiBNdHJyTGliUHJlTXRyckNoYW5nZQ0KPiA+PiAoDQo+ID4+Pj4+ICAg IC8vDQo+ID4+Pj4+ICAgIC8vIERpc2FibGUgTVRSUnMNCj4gPj4+Pj4gICAgLy8NCj4gPj4+Pj4g LSAgRGVmVHlwZS5VaW50NjQgPSBBc21SZWFkTXNyNjQgKE1TUl9JQTMyX01UUlJfREVGX1RZUEUp Ow0KPiA+Pj4+PiAtICBEZWZUeXBlLkJpdHMuRSA9IDA7DQo+ID4+Pj4+IC0gIEFzbVdyaXRlTXNy NjQgKE1TUl9JQTMyX01UUlJfREVGX1RZUEUsIERlZlR5cGUuVWludDY0KTsNCj4gPj4+Pj4gKyAg aWYgKCFQY2RHZXRCb29sIChQY2RTa2lwRGlzYWJsZU10cnJzT25QcmVNdHJyQ2hhbmdlKSkgew0K PiA+Pj4+PiArICAgIERlZlR5cGUuVWludDY0ID0gQXNtUmVhZE1zcjY0IChNU1JfSUEzMl9NVFJS X0RFRl9UWVBFKTsNCj4gPj4+Pj4gKyAgICBEZWZUeXBlLkJpdHMuRSA9IDA7DQo+ID4+Pj4+ICsg ICAgQXNtV3JpdGVNc3I2NCAoTVNSX0lBMzJfTVRSUl9ERUZfVFlQRSwgRGVmVHlwZS5VaW50NjQp OyAgfQ0KPiA+Pj4+PiAgfQ0KPiA+Pj4+Pg0KPiA+Pj4+PiAgLyoqDQo+ID4+Pj4+IGRpZmYgLS1n aXQgYS9VZWZpQ3B1UGtnL0xpYnJhcnkvTXRyckxpYi9NdHJyTGliLmluZg0KPiA+Pj4+IGIvVWVm aUNwdVBrZy9MaWJyYXJ5L010cnJMaWIvTXRyckxpYi5pbmYNCj4gPj4+Pj4gaW5kZXggYTk3Y2M2 MS4uMDZmMzNlOCAxMDA2NDQNCj4gPj4+Pj4gLS0tIGEvVWVmaUNwdVBrZy9MaWJyYXJ5L010cnJM aWIvTXRyckxpYi5pbmYNCj4gPj4+Pj4gKysrIGIvVWVmaUNwdVBrZy9MaWJyYXJ5L010cnJMaWIv TXRyckxpYi5pbmYNCj4gPj4+Pj4gQEAgLTIsNiArMiw4IEBADQo+ID4+Pj4+ICAjICBNVFJSIGxp YnJhcnkgcHJvdmlkZXMgQVBJcyBmb3IgTVRSUiBvcGVyYXRpb24uDQo+ID4+Pj4+ICAjDQo+ID4+ Pj4+ICAjICBDb3B5cmlnaHQgKGMpIDIwMDYgLSAyMDE4LCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxs IHJpZ2h0cw0KPiA+Pj4+PiByZXNlcnZlZC48QlI+DQo+ID4+Pj4+ICsjICBDb3B5cmlnaHQgKGMp IDIwMTgsIEFNRCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuPEJSPiAjDQo+ID4+Pj4+ICAjICBU aGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzICAjICBhcmUgbGljZW5z ZWQNCj4gPj4+Pj4gYW5kIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBhbmQgY29uZGl0 aW9ucyBvZiB0aGUNCj4gPj4+PiBCU0QgTGljZW5zZQ0KPiA+Pj4+PiAgIyAgd2hpY2ggYWNjb21w YW5pZXMgdGhpcyBkaXN0cmlidXRpb24uICBUaGUgZnVsbCB0ZXh0IG9mIHRoZQ0KPiA+Pj4+PiBs aWNlbnNlIG1heSBiZQ0KPiA+Pj4+IGZvdW5kIGF0DQo+ID4+Pj4+IEBAIC00Myw0ICs0NSw1IEBA DQo+ID4+Pj4+DQo+ID4+Pj4+ICBbUGNkXQ0KPiA+Pj4+Pg0KPiA+PiBnVWVmaUNwdVBrZ1Rva2Vu U3BhY2VHdWlkLlBjZENwdU51bWJlck9mUmVzZXJ2ZWRWYXJpYWJsZU10cnJzDQo+ID4+Pj4gIyMg U09NRVRJTUVTX0NPTlNVTUVTDQo+ID4+Pj4+ICsNCj4gZ1VlZmlDcHVQa2dUb2tlblNwYWNlR3Vp ZC5QY2RTa2lwRGlzYWJsZU10cnJzT25QcmVNdHJyQ2hhbmdlDQo+ID4+Pj4gIyMgQ09OU1VNRVMN Cj4gPj4+Pj4NCj4gPj4+Pj4gZGlmZiAtLWdpdCBhL1VlZmlDcHVQa2cvVWVmaUNwdVBrZy5kZWMN Cj4gYi9VZWZpQ3B1UGtnL1VlZmlDcHVQa2cuZGVjDQo+ID4+Pj4+IGluZGV4IDY5ZDc3N2EuLjY0 ZWM3NjMgMTAwNjQ0DQo+ID4+Pj4+IC0tLSBhL1VlZmlDcHVQa2cvVWVmaUNwdVBrZy5kZWMNCj4g Pj4+Pj4gKysrIGIvVWVmaUNwdVBrZy9VZWZpQ3B1UGtnLmRlYw0KPiA+Pj4+PiBAQCAtMiw2ICsy LDcgQEANCj4gPj4+Pj4gICMgVGhpcyBQYWNrYWdlIHByb3ZpZGVzIFVFRkkgY29tcGF0aWJsZSBD UFUgbW9kdWxlcyBhbmQgbGlicmFyaWVzLg0KPiA+Pj4+PiAgIw0KPiA+Pj4+PiAgIyBDb3B5cmln aHQgKGMpIDIwMDcgLSAyMDE3LCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cw0KPiA+Pj4+ PiByZXNlcnZlZC48QlI+DQo+ID4+Pj4+ICsjIENvcHlyaWdodCAoYykgMjAxOCwgQU1EIEluYy4g QWxsIHJpZ2h0cyByZXNlcnZlZC48QlI+DQo+ID4+Pj4+ICAjDQo+ID4+Pj4+ICAjIFRoaXMgcHJv Z3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIGxpY2Vuc2VkIGFuZA0KPiA+ Pj4+PiBtYWRlDQo+ID4+Pj4gYXZhaWxhYmxlIHVuZGVyDQo+ID4+Pj4+ICAjIHRoZSB0ZXJtcyBh bmQgY29uZGl0aW9ucyBvZiB0aGUgQlNEIExpY2Vuc2Ugd2hpY2ggYWNjb21wYW5pZXMNCj4gPj4+ Pj4gdGhpcw0KPiA+Pj4+IGRpc3RyaWJ1dGlvbi4NCj4gPj4+Pj4gQEAgLTI3Myw2ICsyNzQsMTIg QEANCj4gPj4+Pj4gICAgIyBAUHJvbXB0IEN1cnJlbnQgYm9vdCBpcyBhIHBvd2VyLW9uIHJlc2V0 Lg0KPiA+Pj4+Pg0KPiA+Pj4+DQo+ID4+DQo+IGdVZWZpQ3B1UGtnVG9rZW5TcGFjZUd1aWQuUGNk SXNQb3dlck9uUmVzZXR8RkFMU0V8Qk9PTEVBTnwweDAwMDANCj4gPj4+PiAwMDFCDQo+ID4+Pj4+ DQo+ID4+Pj4+ICsgICMjIEluZGljYXRlcyBkZXNpcmVkIGJlaGF2aW9yIGZvciBkaXNhYmxpbmcg TVRSUnMgcHJpb3IgdG8gTVRSUg0KPiA+Pj4+IGNoYW5nZS48QlI+PEJSPg0KPiA+Pj4+PiArICAj ICAgVFJVRSAgLSBTa2lwIGRpc2FibGluZyBNVFJScyBwcmlvciB0byBNVFJSIGNoYW5nZS48QlI+ DQo+ID4+Pj4+ICsgICMgICBGQUxTRSAtIERpc2FibGUgTVRSUnMgcHJpb3IgdG8gTVRSUiBjaGFu Z2UuPEJSPg0KPiA+Pj4+PiArICAjIEBQcm9tcHQgRGVzaXJlZCBiZWhhdmlvciBmb3IgZGlzYWJs aW5nIE1UUlJzIHByaW9yIHRvIE1UUlINCj4gPj4gY2hhbmdlLg0KPiA+Pj4+PiArDQo+ID4+Pj4N Cj4gPj4NCj4gZ1VlZmlDcHVQa2dUb2tlblNwYWNlR3VpZC5QY2RTa2lwRGlzYWJsZU10cnJzT25Q cmVNdHJyQ2hhbmdlfEZBTFNFDQo+ID4+Pj4gfEJPT0xFQU58MHgwMDAwMDAxRQ0KPiA+Pj4+PiAr DQo+ID4+Pj4+ICBbUGNkc0R5bmFtaWMsIFBjZHNEeW5hbWljRXhdDQo+ID4+Pj4+ICAgICMjIENv bnRhaW5zIHRoZSBwb2ludGVyIHRvIGEgQ1BVIFMzIGRhdGEgYnVmZmVyIG9mIHN0cnVjdHVyZQ0K PiA+Pj4+IEFDUElfQ1BVX0RBVEEuDQo+ID4+Pj4+ICAgICMgQFByb21wdCBUaGUgcG9pbnRlciB0 byBhIENQVSBTMyBkYXRhIGJ1ZmZlci4NCj4gPj4+Pj4NCj4gPj4+Pg0KPiA+Pj4+IFJlY2VudGx5 LCBSYXkgaGFzIHdyaXR0ZW4gc2V2ZXJhbCAmIHNpZ25pZmljYW50IHBhdGNoZXMgZm9yDQo+ID4+ Pj4gTXRyckxpYjsgSSdtIGFkZGluZyBoaW0uDQo+ID4+Pj4NCj4gPj4+PiBJIGRvbid0IHVuZGVy c3RhbmQgdGhlIG1vdGl2YXRpb24gYmVoaW5kIHRoaXMgcGF0Y2guIEFzIGZhciBhcyBJDQo+ID4+ Pj4gcmVtZW1iZXIgKHdoaWNoIGlzIGFkbWl0dGVkbHkgInF1aXRlIHZhZ3VlbHkiKSwgdGhlIFNE TSByZXF1aXJlcw0KPiA+Pj4+IGFsbCBsb2dpY2FsIHByb2Nlc3NvcnMgdG8gcHJvZ3JhbSB0aGVp ciBNVFJScyBpZGVudGljYWxseSBpbiBwYXJhbGxlbC4NCj4gPj4+PiBUaGF0IGlzLCB0aGVyZSBz aG91bGQgYmUgYSBzdGFydCBsaW5lIHdoZXJlIGFsbCB0aGUgQ1BVcyB3YWl0IGZvcg0KPiA+Pj4+ IGVhY2ggb3RoZXIsIHRoZW4gdGhleSBhbGwgc2V0IHVwIHRoZWlyIE1UUlJzLCB0aGVuIHRoZXkg YWxsIHdhaXQNCj4gPj4+PiB1bnRpbCB0aGV5IGFsbCBmaW5pc2gsIHRoZW4gdGhleSBhbGwgZ28g dGhlaXIgbWVycnkgd2F5cy4gQUlVSSB0aGUNCj4gPj4+PiBDUFUgTVAgUFBJIGFuZCBwcm90b2Nv bCBpbXBsZW1lbnQgdGhpcyBhbHJlYWR5LiBJIGRvbid0IHVuZGVyc3RhbmQNCj4gPj4+PiBpbiB3 aGF0IHNpdHVhdGlvbiB5b3UnZCBoYXZlIG9uZSB0aHJlYWQgb2YgYSBjb3JlIG1hbmlwdWxhdGlu Zw0KPiA+Pj4+IE1UUlIsIHdpdGggdGhlIHNpYmxpbmcgdGhyZWFkICpub3QqIG1hbmlwdWxhdGlu ZyBNVFJSIChpLmUuLCBkb2luZw0KPiA+Pj4+IHNvbWV0aGluZyBlbHNlKS4gVGhhdCBkb2Vzbid0 IHNlZW0gdG8gbWF0Y2ggd2hhdCB0aGUgU0RNIGRpY3RhdGVzDQo+ID4+Pj4gKG9yLCB3ZWxsLCB3 aGF0IG15IG1lbW9yaWVzIG9mIHRoZSBTRE0gYXJlIDopICkuDQo+ID4+Pj4NCj4gPj4+PiBJIHNl ZSB0aGF0IHRoZSBkZWZhdWx0IGJlaGF2aW9yIGRvZXNuJ3QgY2hhbmdlLCBhbmQgSSdtIG5vdCBh Z2FpbnN0DQo+ID4+Pj4gdGhlIHBhdGNoOyBJIGp1c3Qgc3VzcGVjdCB0aGF0LCBmb3IgaW50cm9k dWNpbmcgYSBuZXcgUENELCBtb3JlDQo+ID4+Pj4gY29uY3JldGUgLyBwcmFjdGljYWwganVzdGlm aWNhdGlvbiBjb3VsZCBiZSBuZWVkZWQuDQo+ID4+Pj4NCj4gPj4+DQo+ID4+PiBJbiBvdXIgY2Fz ZSBtdWx0aXBsZSBwcm9jZXNzb3JzICh0aHJlYWRzKSBzaGFyZSBNVFRSIHNldHRpbmdzLCBoZW5j ZQ0KPiA+Pj4gdGhlDQo+ID4+IEVuYWJsZSBiaXQgaXMgc2hhcmVkLg0KPiA+Pj4NCj4gPj4+PiBN b3JlIHF1ZXN0aW9uczoNCj4gPj4+Pg0KPiA+Pj4+IC0gRG9uJ3QgeW91IG5lZWQgYSBzaW1pbGFy IChzeW1tZXRyaWMpIGNoYW5nZSBpbg0KPiA+Pj4+IE10cnJMaWJQb3N0TXRyckNoYW5nZSgpPyBJ ZiBub3QsIHdoeSBub3Q/IENhbiB5b3UgYWRkIHRoYXQgdG8gdGhlDQo+ID4+Pj4gY29tbWl0IG1l c3NhZ2U/DQo+ID4+Pg0KPiA+Pj4gTm8gbmVlZC4gVGhlICJQb3N0IiBjb2RlIGp1c3QgcmVzdG9y ZXMuDQo+ID4+PiBTdXJlLCBJIGNhbiBhZGQgYSBjb21tZW50Lg0KPiA+Pg0KPiA+PiBTdXJlLCBm dW5jdGlvbmFsbHkgaXQgZG9lc24ndCBodXJ0IEkgZ3Vlc3MsIGJ1dCB5b3UgY291bGQgYXZvaWQg YSBSTVcNCj4gPj4gdG8gTVNSX0lBMzJfTVRSUl9ERUZfVFlQRS4NCj4gPj4NCj4gPj4gT3IgaXMg aXQgbmVjZXNzYXJ5IHRvIHJld3JpdGUgdGhlIEZFIGJpdD8gKEl0IGRvZXNuJ3QgbG9vayBuZWNl c3NhcnkNCj4gPj4gdG8gbWUsIGJ1dCBJIGNvdWxkIGJlIHdyb25nLikNCj4gPj4NCj4gPj4gT3Ig bWF5YmUgeW91IG5lZWQgdG8gd3JpdGUgdG8gdGhlIE1TUiB0aGUgKmZpcnN0KiB0aW1lIHRoYXQN Cj4gPj4gTXRyckxpYlBvc3RNdHJyQ2hhbmdlKCkgaXMgY2FsbGVkLi4uDQo+ID4+DQo+ID4+IEFu eXdheSwgSSdtIE9LIHdpdGggdGhlIHBhdGNoLCBJJ2xsIGxldCBFcmljIGFuZCBSYXkgZGVjaWRl Lg0KPiA+Pg0KPiA+PiBBY2tlZC1ieTogTGFzemxvIEVyc2VrIDxsZXJzZWtAcmVkaGF0LmNvbT4N Cj4gPj4NCj4gPj4NCj4gPj4gVGhhbmtzDQo+ID4+IExhc3psbw0KDQo=