From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=pass header.i=@amdcloud.onmicrosoft.com header.s=selector2-amdcloud-onmicrosoft-com header.b=PeuztuMz; spf=none, err=SPF record not found (domain: amd.com, ip: 40.107.80.84, mailfrom: thomas.lendacky@amd.com) Received: from NAM03-DM3-obe.outbound.protection.outlook.com (NAM03-DM3-obe.outbound.protection.outlook.com [40.107.80.84]) by groups.io with SMTP; Thu, 26 Sep 2019 07:46:09 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AcyIUYRy2efNNwYf+467kWIHOIEPrbUxt3NFD0TxK8C2TtybwSZPbBEjEsJv0D1kUeYAW4/TZwXBQzb+g0lJTTzUfb/xLD2pnf9RsFbFr8CskWowPH4XGiDLolnE9R1e942uR+cy2Q6xdxhYUYYo1NQ80IKvDrY07AHa35kr3oHn8lagA3w5EOzZOymKHH/3OnFnffcKTccfP9TVy7VT85bTfqeSfcWY/j5KJL6so4cNZ9AZMfZleeTqkjoQeqqchmBzp3PXFsmPLTEQYe1rL47DwbRUC6nNQueDPJ6fXFphPHJsEly76bn7lWDcV4zfUvY9a8SdBgrUbhovhgmblg== 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=5eDSkoGtHugm10pjSXXA0uTeb7HKRYBJi7DF0bGhR6I=; b=ZXzrAxAnY7ww18D8CeHJcfhEpt9qTHUOg5Kh46UshJE5bEJdlFkwAPcarH/GvnIL+UJB/nsf+p94I/DMS8UBZkbzp/R4+3zvZR3wsLKraM21GNoqJFyVSCUm7AB5OZVaPedZdVYUXmMIQeyo/c7zutmEs/z+nLjq2iTpRjYDLYXTEKDJhFNEyHTsaSmc/gehq/Hdsos/3lfj4+WbqnEAL4ST21XueMULCRuQGdoDu5bkZSyc8oS+joHGUOJHXb44tabLd0Vc9Z8vcn7UpOIjM998dug8JdnNbxV8ID96Eylnpx8KFtVWdHFpwfFh67f8aPdk4q6uNsycm44EKO33gA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amdcloud.onmicrosoft.com; s=selector2-amdcloud-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5eDSkoGtHugm10pjSXXA0uTeb7HKRYBJi7DF0bGhR6I=; b=PeuztuMzvD8qj6CC3AKEwe8WPkpi06nyTSLnFflIdsug1uN2MQC70WH7iffc1VLhLOT8m0mlP06tvi396HNuuOIWCSMKUqPdn5kwuu770lSATPWcWl4C4VJhwqtRYwGsH7zotbtfLF2fiJnR2yLFjEwhmi7/tEy+JFeycU+aYgs= Received: from DM6PR12MB3163.namprd12.prod.outlook.com (20.179.104.150) by DM6PR12MB4332.namprd12.prod.outlook.com (10.141.187.151) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2305.17; Thu, 26 Sep 2019 14:46:07 +0000 Received: from DM6PR12MB3163.namprd12.prod.outlook.com ([fe80::400e:f0c3:7ca:2fcc]) by DM6PR12MB3163.namprd12.prod.outlook.com ([fe80::400e:f0c3:7ca:2fcc%6]) with mapi id 15.20.2284.023; Thu, 26 Sep 2019 14:46:07 +0000 From: "Lendacky, Thomas" To: Laszlo Ersek , "devel@edk2.groups.io" CC: Jordan Justen , Ard Biesheuvel , Michael D Kinney , Liming Gao , Eric Dong , Ray Ni , "Singh, Brijesh" Subject: Re: [edk2-devel] [RFC PATCH v2 10/44] OvmfPkg: A per-CPU variable area for #VC usage Thread-Topic: [edk2-devel] [RFC PATCH v2 10/44] OvmfPkg: A per-CPU variable area for #VC usage Thread-Index: AQHVbyPIi0t/93BoCUigK+eNYlDx0Kc9p3cAgABsgIA= Date: Thu, 26 Sep 2019 14:46:07 +0000 Message-ID: References: <6fac34b0-2d20-e2ff-66b6-de9bd7488f40@redhat.com> In-Reply-To: <6fac34b0-2d20-e2ff-66b6-de9bd7488f40@redhat.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: SN1PR12CA0101.namprd12.prod.outlook.com (2603:10b6:802:21::36) To DM6PR12MB3163.namprd12.prod.outlook.com (2603:10b6:5:182::22) authentication-results: spf=none (sender IP is ) smtp.mailfrom=Thomas.Lendacky@amd.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [165.204.78.1] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: a6c05213-4e7e-4c43-65f7-08d7429043bc x-ms-office365-filtering-ht: Tenant x-ms-traffictypediagnostic: DM6PR12MB4332: x-ms-exchange-purlcount: 3 x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-forefront-prvs: 0172F0EF77 x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(4636009)(346002)(376002)(366004)(396003)(136003)(39860400002)(189003)(199004)(54906003)(25786009)(86362001)(110136005)(305945005)(102836004)(7736002)(26005)(66946007)(66556008)(66476007)(31696002)(66446008)(476003)(64756008)(6486002)(6436002)(6246003)(446003)(478600001)(2616005)(66066001)(6506007)(14454004)(186003)(11346002)(81166006)(52116002)(8936002)(76176011)(99286004)(81156014)(53546011)(486006)(966005)(8676002)(386003)(6306002)(316002)(36756003)(256004)(14444005)(19627235002)(5660300002)(2501003)(31686004)(71200400001)(71190400001)(6116002)(3846002)(229853002)(6512007)(2906002)(4326008);DIR:OUT;SFP:1101;SCL:1;SRVR:DM6PR12MB4332;H:DM6PR12MB3163.namprd12.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;MX:1;A:1; received-spf: None (protection.outlook.com: amd.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: TfSuIcH+rHDsF7EbRjRuMLJ+HsawvSX3sPZ022nOYX3QvbO7htOeJkeiYhmt71mu76RLXu7KXMEi6W1YWdJCvDcfs8TRHmDbhBdnX9NbVvfQ7TKuuXhSZlv4WRe5XCJBSz64dtmOLMHkbc6Pf4ICJ44tg9jGeRB9O6191c3o+JKIGV8LdlRXqoMxI9bTN+JZqi2jf0u50LeyS3kqw+rTyclXhDNWhtpX0p5JROSNOs+k8knMWpT5l/1kxa6un3QON/XwpVplXgZKffLEt+xQ3TZ14DBF1XD/AUmm6OaNyHTXIeSVy5JqzeOA83GOTcpN5wlf4xyBzEhdsFWcjd+gf8XfpKQ32FR5356ZnOKcGlgwJIhTyhXsuFrxTJfjvkyYfKhj+jacY5+RcIXBwim57aDPvfnLNgxx+N26Hcew0HWXsneEcqX+k/qKoIOjiDXcBKyIHVR4FtXcgDqFFctQdg== MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: a6c05213-4e7e-4c43-65f7-08d7429043bc X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Sep 2019 14:46:07.7647 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 0CPQ8O7UQdPUGa38MidtOG+t3yg2j60NmFsK+YyHRfbD2Za/OIgnBQ5xK3fkuv83+3OtF/EpeODMdXOinZFHaA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB4332 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 T24gOS8yNi8xOSAzOjE3IEFNLCBMYXN6bG8gRXJzZWsgd3JvdGU6DQo+IE9uIDA5LzE5LzE5IDIx OjUyLCBMZW5kYWNreSwgVGhvbWFzIHdyb3RlOg0KPj4gRnJvbTogVG9tIExlbmRhY2t5IDx0aG9t YXMubGVuZGFja3lAYW1kLmNvbT4NCj4+DQo+PiBCWjogaHR0cHM6Ly9idWd6aWxsYS50aWFub2Nv cmUub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTk4DQo+Pg0KPj4gQSBwZXItQ1BVIGltcGxlbWVudGF0 aW9uIGZvciBob2xkaW5nIHZhbHVlcyBzcGVjaWZpYyB0byBhIENQVSB3aGVuDQo+PiBydW5uaW5n IGFzIGFuIFNFVi1FUyBndWVzdCwgc3BlY2lmaWNhbGx5IHRvIGhvbGQgdGhlIERlYnVnIFJlZ2lz dGVyDQo+PiB2YWx1ZS4gQWxsb2NhdGUgYW4gZXh0cmEgcGFnZSBpbW1lZGlhdGVseSBhZnRlciB0 aGUgR0hDQiBwYWdlIGZvciBlYWNoDQo+PiBBUC4NCj4+DQo+PiBVc2luZyB0aGUgcGFnZSBhZnRl ciB0aGUgR0hDQiBlbnN1cmVzIHRoYXQgaXQgaXMgdW5pcXVlIHBlciBBUC4gQnV0LA0KPj4gaXQg YWxzbyBlbmRzIHVwIGJlaW5nIG1hcmtlZCBzaGFyZWQvdW5lbmNyeXB0ZWQgd2hlbiBpdCBkb2Vz bid0IG5lZWQgdG8NCj4+IGJlLiBJdCBpcyBwb3NzaWJsZSBkdXJpbmcgUEVJIHRvIG1hcmsgb25s eSB0aGUgR0hDQiBwYWdlcyBhcyBzaGFyZWQgKGFuZA0KPj4gdGhhdCBpcyBkb25lKSwgYnV0IERY RSBpcyBub3QgYXMgZWFzeS4gVGhlcmUgbmVlZHMgdG8gYmUgYSB3YXkgdG8gY2hhbmdlDQo+PiB0 aGUgcGFnZXRhYmxlcyBjcmVhdGVkIGZvciBEWEUgdXNpbmcgQ3JlYXRlSWRlbnRpdHlNYXBwaW5n UGFnZVRhYmxlcygpDQo+PiBiZWZvcmUgc3dpdGNoaW5nIHRvIHRoZW0uDQo+Pg0KPj4gQ2M6IEpv cmRhbiBKdXN0ZW4gPGpvcmRhbi5sLmp1c3RlbkBpbnRlbC5jb20+DQo+PiBDYzogTGFzemxvIEVy c2VrIDxsZXJzZWtAcmVkaGF0LmNvbT4NCj4+IENjOiBBcmQgQmllc2hldXZlbCA8YXJkLmJpZXNo ZXV2ZWxAbGluYXJvLm9yZz4NCj4+IFNpZ25lZC1vZmYtYnk6IFRvbSBMZW5kYWNreSA8dGhvbWFz LmxlbmRhY2t5QGFtZC5jb20+DQo+PiAtLS0NCj4+ICBPdm1mUGtnL092bWZQa2dYNjQuZmRmICAg ICAgICAgICAgICAgIHwgMiArLQ0KPj4gIE92bWZQa2cvUGxhdGZvcm1QZWkvQW1kU2V2LmMgICAg ICAgICAgfCAyICstDQo+PiAgT3ZtZlBrZy9SZXNldFZlY3Rvci9SZXNldFZlY3Rvci5uYXNtYiB8 IDIgKy0NCj4+ICAzIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMo LSkNCj4+DQo+PiBkaWZmIC0tZ2l0IGEvT3ZtZlBrZy9Pdm1mUGtnWDY0LmZkZiBiL092bWZQa2cv T3ZtZlBrZ1g2NC5mZGYNCj4+IGluZGV4IGE1NjcxMzFhMDU5MS4uODQ3MTY5NTIwNTJkIDEwMDY0 NA0KPj4gLS0tIGEvT3ZtZlBrZy9Pdm1mUGtnWDY0LmZkZg0KPj4gKysrIGIvT3ZtZlBrZy9Pdm1m UGtnWDY0LmZkZg0KPj4gQEAgLTc5LDcgKzc5LDcgQEAgW0ZELk1FTUZEXQ0KPj4gIDB4MDA4MDAw fDB4MDAxMDAwDQo+PiAgZ1VlZmlPdm1mUGtnVG9rZW5TcGFjZUd1aWQuUGNkT3ZtZlNlY0doY2JQ YWdlVGFibGVCYXNlfGdVZWZpT3ZtZlBrZ1Rva2VuU3BhY2VHdWlkLlBjZE92bWZTZWNHaGNiUGFn ZVRhYmxlU2l6ZQ0KPj4NCj4+IC0weDAwOTAwMHwweDAwMTAwMA0KPj4gKzB4MDA5MDAwfDB4MDAy MDAwDQo+PiAgZ1VlZmlPdm1mUGtnVG9rZW5TcGFjZUd1aWQuUGNkT3ZtZlNlY0doY2JCYXNlfGdV ZWZpT3ZtZlBrZ1Rva2VuU3BhY2VHdWlkLlBjZE92bWZTZWNHaGNiU2l6ZQ0KPj4NCj4+ICAweDAx MDAwMHwweDAxMDAwMA0KPj4gZGlmZiAtLWdpdCBhL092bWZQa2cvUGxhdGZvcm1QZWkvQW1kU2V2 LmMgYi9Pdm1mUGtnL1BsYXRmb3JtUGVpL0FtZFNldi5jDQo+PiBpbmRleCAzMGMwZTRhZjcyNTIu LjY5OWJiOGIxMTU1NyAxMDA2NDQNCj4+IC0tLSBhL092bWZQa2cvUGxhdGZvcm1QZWkvQW1kU2V2 LmMNCj4+ICsrKyBiL092bWZQa2cvUGxhdGZvcm1QZWkvQW1kU2V2LmMNCj4+IEBAIC00OCw3ICs0 OCw3IEBAIEFtZFNldkVzSW5pdGlhbGl6ZSAoDQo+PiAgICAvLw0KPj4gICAgLy8gQWxsb2NhdGUg R0hDQiBwYWdlcy4NCj4+ICAgIC8vDQo+PiAtICBHaGNiUGFnZUNvdW50ID0gbU1heENwdUNvdW50 Ow0KPj4gKyAgR2hjYlBhZ2VDb3VudCA9IG1NYXhDcHVDb3VudCAqIDI7DQo+PiAgICBHaGNiQmFz ZSA9IEFsbG9jYXRlUGFnZXMgKEdoY2JQYWdlQ291bnQpOw0KPj4gICAgQVNTRVJUIChHaGNiQmFz ZSk7DQo+Pg0KPj4gZGlmZiAtLWdpdCBhL092bWZQa2cvUmVzZXRWZWN0b3IvUmVzZXRWZWN0b3Iu bmFzbWIgYi9Pdm1mUGtnL1Jlc2V0VmVjdG9yL1Jlc2V0VmVjdG9yLm5hc21iDQo+PiBpbmRleCA4 OTA5ZmM5MzEzZjQuLmQ3YzBhYjNhZGEwMCAxMDA2NDQNCj4+IC0tLSBhL092bWZQa2cvUmVzZXRW ZWN0b3IvUmVzZXRWZWN0b3IubmFzbWINCj4+ICsrKyBiL092bWZQa2cvUmVzZXRWZWN0b3IvUmVz ZXRWZWN0b3IubmFzbWINCj4+IEBAIC01Nyw3ICs1Nyw3IEBADQo+PiAgICAgICVlcnJvciAiVGhp cyBpbXBsZW1lbnRhdGlvbiBpbmhlcmVudGx5IGRlcGVuZHMgb24gUGNkT3ZtZlNlY0doY2JQYWdl VGFibGVTaXplIg0KPj4gICAgJWVuZGlmDQo+Pg0KPj4gLSAgJWlmIChGaXhlZFBjZEdldDMyIChQ Y2RPdm1mU2VjR2hjYlNpemUpICE9IDB4MTAwMCkNCj4+ICsgICVpZiAoRml4ZWRQY2RHZXQzMiAo UGNkT3ZtZlNlY0doY2JTaXplKSAhPSAweDIwMDApDQo+PiAgICAgICVlcnJvciAiVGhpcyBpbXBs ZW1lbnRhdGlvbiBpbmhlcmVudGx5IGRlcGVuZHMgb24gUGNkT3ZtZlNlY0doY2JTaXplIg0KPj4g ICAgJWVuZGlmDQo+Pg0KPj4NCj4gDQo+IEluIGNvbm5lY3Rpb24gdG8gbXkgcXVlc3Rpb24gYXQg WzFdOg0KPiANCj4gKiBXaHkgZG8gd2UgYWRkIHRoZSBleHRyYSBwYWdlIHRvIFNFQyBhcyB3ZWxs Pw0KDQpXZSBhZGQgdGhlIGV4dHJhIHBhZ2UgYmVjYXVzZSBpdCBtYXkgYmUgcmVmZXJlbmNlZCBz aG91bGQgYSByZWFkIG9yIHdyaXRlDQp0byBEUjcgYmUgZG9uZSBkdXJpbmcgU0VDLiBCYXNlZCBv biB0aGUgR0hDQiBwcm90b2NvbCwgd2UgbmVlZCB0byBjYWNoZQ0KdGhlIHZhbHVlIHdyaXR0ZW4g KGFuZCBub3QgYWN0dWFsbHkgdXBkYXRlIHRoZSBEUjcgcmVnaXN0ZXIpIGFuZCByZXR1cm4NCml0 IG9uIHJlYWQuDQoNCj4gDQo+ICAgSSB0aG91Z2h0IHRoYXQsIGFmdGVyIHBhdGNoIDQgKCJPdm1m UGtnL1Jlc2V0VmVjdG9yOiBBZGQgc3VwcG9ydCBmb3IgYQ0KPiAgIDMyLWJpdCBTRVYgY2hlY2si KSwgd2Ugd2VyZSBhbGwgc2V0IGZvciBoYW5kbGluZyAjVkMsIGZvciB0aGUgdGltZSBvZg0KPiAg IHRoZSBpbml0aWFsIFNFViBjaGVjazsgZnVydGhlcm1vcmUsIHRoYXQgb25seSBDUFVJRCB3b3Vs ZCBjYXVzZSBhICNWQy4NCg0KUGF0Y2ggIzQgY292ZXJzIHRoZSBzbWFsbCB3aW5kb3cgd2hlcmUg dGhlIFNFViBzdXBwb3J0IGNoZWNrIGlzIGJlaW5nIGRvbmUNCmluIDMyLWJpdCBtb2RlIGluIG9y ZGVyIHRvIGJ1aWxkIHRoZSBwYWdlIHRhYmxlcyBmb3IgNjQtYml0IG1vZGUuIFRoZQ0KZXhjZXB0 aW9uIGhhbmRsaW5nIHN1cHBvcnQgaXMgdmVyeSBzcGVjaWZpYyBhdCB0aGlzIHN0YWdlIHRvIHBl cmZvcm0ganVzdA0KdGhlIEdIQ0IgQ1BVSUQgcHJvdG9jb2wgYmVjYXVzZSB3ZSBhcmUgbm90IHJ1 bm5pbmcgaW4gNjQtYml0IG1vZGUgYW5kIHNvIGENCkdIQ0IgcGFnZSBjYW4ndCBiZSB1c2VkIGJl Y2F1c2UgaXQgY2FuJ3QgYmUgc2hhcmVkIHdpdGggdGhlIGh5cGVydmlzb3IuDQoNCj4gDQo+ICAg SWYgdGhhdCdzIHRoZSBjYXNlLCB3aGVuIGV4YWN0bHkgd291bGQgYmUgdGhlIG5ldyBwYWdlIChh dCAweDgwX2EwMDApDQo+ICAgYmUgdXNlZD8NCg0KUGF0Y2ggIzE3IChVZWZpQ3B1UGtnL0NwdUV4 Y2VwdGlvbkhhbmRsZXI6IEFkZCAjVkMgZXhjZXB0aW9uIGhhbmRsaW5nIGZvcg0KU2VjIHBoYXNl KSBpcyB3aGVyZSB0aGUgU0VDIGV4Y2VwdGlvbiBoYW5kbGluZyBpcyBlbmFibGVkIHdoaWNoIHdp bGwgdXNlDQp0aGUgbmV3IHBhZ2VzIGF0IDB4ODBfOTAwMCBhbmQgMHg4MF9hMDAwLiBUaGUgR0hD QiBwYWdlIGhhcyBhIHNwZWNpZmljDQpmb3JtYXQgYW5kIHdlIGNhbid0IHN0b3JlIGRhdGEgaW4g aXQsIHNvIGFub3RoZXIgcGFnZSBpcyBuZWVkZWQgZm9yIHRoZQ0KRFI3IGRhdGEuDQoNCkl0IHdv dWxkIGJlIG5pY2UgaWYgRURLMiBoYWQgc3VwcG9ydCBmb3IgcGVyLUNQVSB2YXJpYWJsZXMgc28g dGhhdCB0aGlzDQpleHRyYSBwYWdlIHdvdWxkbid0IGJlIHJlcXVpcmVkLg0KDQpBbmQgc2luY2Ug dGhlIEdIQ0JfQkFTRSBpcyB1c2VkIGJ5IHRoZSBTRUMgZXhjZXB0aW9uIGhhbmRsZXIsIEkgcHJv YmFibHkNCm5lZWQgdG8gcmVuYW1lIFBjZE92bWZTZWNHaGNiQmFzZS9TaXplIHRvIFBjZFVlZmlD cHVTZWNHaGNiQmFzZS9TaXplIGFuZA0KZGVmaW5lIHRoZW0gdW5kZXIgVWVmaUNwdVBrZyBhbmQg anVzdCBpbml0aWFsaXplIHRoZW0gaW4gdGhlIE92bWZQa2csDQpyaWdodD8NCg0KPiANCj4gKiBB c3N1bWluZyB3ZSByZWFsbHkgbmVlZCBQY2RPdm1mU2VjR2hjYlNpemUgPSAweDAwMjAwMCwgaXQg aXMgbm93DQo+ICAgdGhlb3JldGljYWxseSBwb3NzaWJsZSB0aGF0IHRoZSA4S0IgYXJlYSBzdHJh ZGRsZXMgYSAyTUIgcGFnZQ0KPiAgIGJvdW5kYXJ5Lg0KPiANCj4gICBPYnZpb3VzbHkgd2UgZG9u J3Qgd2FudCB0byBhY2NvbW1vZGF0ZSB0aGF0IGNvcm5lciBjYXNlLCBidXQgd2Ugc2hvdWxkDQo+ ICAgY2F0Y2ggaXQuIEkgdGhpbmsgd2Ugc2hvdWxkIGVuZm9yY2UgLS0gd2l0aCBhbiAlaWYgLyAl ZXJyb3IgLS0NCj4gICBzb21ldGhpbmcgbGlrZToNCj4gDQo+ICAgKEZpeGVkUGNkR2V0MzIgKFBj ZE92bWZTZWNHaGNiQmFzZSkgPj4gMjEpID09DQo+ICAgKChGaXhlZFBjZEdldDMyIChQY2RPdm1m U2VjR2hjYkJhc2UpICsgRml4ZWRQY2RHZXQzMiAoUGNkT3ZtZlNlY0doY2JTaXplKSAtIDEpID4+ IDIxKQ0KPiANCj4gICBUaGF0IHNhbml0eSBjaGVjayBpcyBsaWtlbHkgYmVzdCB0byBzcXVhc2gg aW50byBwYXRjaCA2ICgiT3ZtZlBrZzoNCj4gICBDcmVhdGUgYSBHSENCIHBhZ2UgZm9yIHVzZSBk dXJpbmcgU2VjIHBoYXNlIikuDQoNCll1cCwgSSBjYW4gYWRkIHRoYXQuDQoNClRoYW5rcywNClRv bQ0KDQo+IA0KPiBbMV0gaHR0cDovL21pZC5tYWlsLWFyY2hpdmUuY29tL2FkMjg5NzUxLWMxYjct Yzg3YS00MWQxLTljZTk4MzhkOTRmMUByZWRoYXQuY29tDQo+ICAgICBodHRwczovL2VkazIuZ3Jv dXBzLmlvL2cvZGV2ZWwvbWVzc2FnZS80ODA4MA0KPiANCj4gVGhhbmtzIQ0KPiBMYXN6bG8NCj4g DQo=