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.9402.1617975869149404979 for ; Fri, 09 Apr 2021 06:44:29 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=hvZT9Dwr; spf=pass (domain: intel.com, ip: 192.55.52.93, mailfrom: jiewen.yao@intel.com) IronPort-SDR: StELpafMpFggTQmSO2+aTfKAlEMfRe0DrjoRdh98Q7rs29EBsMnT55Z8cBVmF7KDyAM+Z8pFKx 14VQjP9bkCXg== X-IronPort-AV: E=McAfee;i="6000,8403,9949"; a="190564783" X-IronPort-AV: E=Sophos;i="5.82,209,1613462400"; d="scan'208";a="190564783" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Apr 2021 06:44:28 -0700 IronPort-SDR: S7dFJc192aXpNMEBxBGkkwkW2bXwrHkLkVLwZjuV3YxOsYeNUKXUdm/JjwC/M4R+GrgrShbzfU 1gQWiHiZX6OQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.82,209,1613462400"; d="scan'208";a="520286928" Received: from fmsmsx606.amr.corp.intel.com ([10.18.126.86]) by fmsmga001.fm.intel.com with ESMTP; 09 Apr 2021 06:44:28 -0700 Received: from fmsmsx601.amr.corp.intel.com (10.18.126.81) by fmsmsx606.amr.corp.intel.com (10.18.126.86) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2; Fri, 9 Apr 2021 06:44:27 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2 via Frontend Transport; Fri, 9 Apr 2021 06:44:27 -0700 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (104.47.55.106) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2106.2; Fri, 9 Apr 2021 06:44:27 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=l8SPD//Wl6B3c7dmQcSDEAWu2teS6081zOWzN21m5FZgRunmfSWNttxN2CdgcxdRuZlRSdB9v5LTn7xVsAp0IZYSdspPBZTFR6EuuqEgMs1mwjQ90dv8d4oGl5yY8FkiL+EVRx8FELHnl/7FG1OFQjlbP7QnU0ZVPUqK9/yeDJJGFG/V/FuSJ2jcQIbr2PIuu3osjKINhiDr2sclj8D9h8kok7jaOfXsIR6LQOT4qvTMhRg3tviXBaXgHvNOp1uxlQG1UsWnbJadX+nZt0YJdYklvvbnxN1WA87ucjL7aIxl+jnARZ4zqspkP98BpLSAsZGAXXCIIKUiDtwESRWgdA== 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=yxIVi0aoWwt0wrBNMaR4sLbedd6MvlWOlVXUQPVX1kk=; b=KmcSezfspZKlLpmZfA8u9qOAHzyMRZ0zMWx2/Meyri/h6ezKOtn9vAFBQGNAOxmBR0L+er9DcVIHUInEhRdPcpMqhtSLkqKAA3rAOlPBSGyUuKonVoSynu1SRel+ag0pZyGkMVJ79DwUEFX3tZmrpuQbx8GFAR6i4txEMue4p40DtziTGxluUZhXvxMwFXWTIJFYYfPQe7wlJqfIuf6bZYfc2qBa8Ixjanp08uO76mbI72534JmWjQRquKiO29W42YGg5hOi9tO4wWE5qjaD+hWxChT3nvT7wCuln720C27L0tN/5JvCCDf1QowdChiR2+ZYtoGUKdn5P2JAopYPag== 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=yxIVi0aoWwt0wrBNMaR4sLbedd6MvlWOlVXUQPVX1kk=; b=hvZT9Dwri8I4sDlThBpyxiRxwmfMkUQwiiPWrEZsD+VF3OP8ZHvUQt1OJIeANAiNwOQvPounZo9hIe+cZo1ve7H7sf9vOQbxt7WUkDS6AQ4y5D85ZtHaGoUo0oeel+HWPsPDgB/Yn9YZnKiJCu68NPKiXKFrPK1ulceWbzMvob4= Received: from BY5PR11MB4166.namprd11.prod.outlook.com (2603:10b6:a03:191::25) by BY5PR11MB4468.namprd11.prod.outlook.com (2603:10b6:a03:1c9::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.29; Fri, 9 Apr 2021 13:44:26 +0000 Received: from BY5PR11MB4166.namprd11.prod.outlook.com ([fe80::2c04:3586:4a42:819]) by BY5PR11MB4166.namprd11.prod.outlook.com ([fe80::2c04:3586:4a42:819%2]) with mapi id 15.20.3999.034; Fri, 9 Apr 2021 13:44:26 +0000 From: "Yao, Jiewen" To: Laszlo Ersek , "Xu, Min M" CC: "devel@edk2.groups.io" , "thomas.lendacky@amd.com" , "jejb@linux.ibm.com" , Brijesh Singh , "Justen, Jordan L" , Ard Biesheuvel , Paolo Bonzini Subject: Re: [edk2-devel] [RFC PATCH 01/19] OvmfPkg: Reserve the Secrets and Cpuid page for the SEV-SNP guest Thread-Topic: [edk2-devel] [RFC PATCH 01/19] OvmfPkg: Reserve the Secrets and Cpuid page for the SEV-SNP guest Thread-Index: AQHXIMLwRxFl6aK5N0uIyth3gHjo4aqnLnKAgABNfgCAAL/ekIAAERwAgADvwoCAAPULcIAAg5qAgAGS1ACAAAGIMA== Date: Fri, 9 Apr 2021 13:44:26 +0000 Message-ID: References: <20210324153215.17971-1-brijesh.singh@amd.com> <20210324153215.17971-2-brijesh.singh@amd.com> <719a63e555376ca65a7bbe0c7e23c20b6b631cd3.camel@linux.ibm.com> <9aa00ba0-def0-9a4e-1578-0b55b8047ebd@redhat.com> <2ff2c569-1032-3e5f-132a-159c47c9f067@amd.com> <18180548-016d-4e37-68fd-050dfc3b4e77@redhat.com> In-Reply-To: <18180548-016d-4e37-68fd-050dfc3b4e77@redhat.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.5.1.3 dlp-product: dlpe-windows dlp-reaction: no-action authentication-results: redhat.com; dkim=none (message not signed) header.d=none;redhat.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.198.147.211] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 731c846d-f9cd-4075-9479-08d8fb5d9740 x-ms-traffictypediagnostic: BY5PR11MB4468: 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:9508; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: qEAGpzZVzZVXlcYAtXqxoqDg4xcBY5/6lrvsQt1fKzq7mkWp2nJBlSaxK5Nq/x1oPgrD3wHcWGn5T0eJO3pN320uNWiy53YCN+V7wr9yf8csKntOXq42zHko7AQ189M8Tj7v9xw8IOg84HKpWZsM75GJX5F1wF17AxqPu8aAdtTEQa+uOgrgAAGALteJS+FSIRynmwHufi9IOOMqYrIZ9nPeKQ99qvBnO1v+MlU1OIrHItKIbDafRT4pgbZir9XZ/gPTKeKhYJZAqhztRz3NISd/RjouWgM0xZU9IYNKJsxIj+SH/I5T77HH+WSoAVDCR6ViL1TNJ6LKE05Av7jgHujDk6ox7SNwVe+CjV7hTsADnp5cwGN4vtLXpad1cbyUXk+I74qDbtkX3WxHM8qVZ20/7nLlVzAom2bOmz2CP2Wbrb/eVfiadTr7FkIlkQqj1KKRlwkQXhQ7SR8J4QFu8SkqyOt5BJmXCdz6rZ4F9BrZbd/bDIIr0PsghBgoHxzdzvVNHU/fiWsawBbKbzQw37JA+bd5aF64KTDKpiX6Yti3Z0qp4C0D7jyFqLLlHs6rPsQ+XI4uELVp4/lchqmgfSWOSa4cgb5bgr+RKN/YXXAL71oSVuR2jTuYOhDhllOAqWNI7InrTCkZqknjRsEAvClG55n2+wbnKPdDVQxEiBFcxg9mWiVQlG1KzwQGy7IQiVL5bJWBq9Pt6xXbl2G/Ghowbe/TTI1rWzg9v4VZhHm96v8hBBsS6m8XyUYAp/Ay x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BY5PR11MB4166.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(396003)(376002)(346002)(366004)(39860400002)(136003)(966005)(53546011)(478600001)(6506007)(186003)(71200400001)(33656002)(83380400001)(110136005)(316002)(64756008)(8936002)(9686003)(54906003)(8676002)(7696005)(55016002)(76116006)(66556008)(66946007)(66476007)(6636002)(2906002)(4326008)(52536014)(26005)(86362001)(66446008)(5660300002)(38100700001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: =?utf-8?B?YVNqalREN3JFRmJFeDJaTTdsZzl2R0Z3dEN1SFFrVHBOcC9iQVR1NG5hckl5?= =?utf-8?B?cjQ1U3JTa0cwM0RBUTRJUlQ2WWM2NUVGSU9jcnFQK05CenJxWlQ0djdmMHJG?= =?utf-8?B?YWxJd2xaR0lpekFhc0lzWHo3bTFmUm5kcDNEREFnUU04VkN5SzhFWlJNT3lR?= =?utf-8?B?aFl6anB0VkM5bUhmdGIyUU56ajRwNTc1cjlIU0g5bDlGWDd0RlI0L0pTdFFh?= =?utf-8?B?SkhVcFVhU2NzWW1TenpFbVk1TzloSU9HWmJHcWVMdGJzUTJGd05IdlFGYk5n?= =?utf-8?B?VnhxNThaWk02dEp1a3J4eXZjamRna2Fjd0dzcnV4UE9WRmtOQjFld0NtYmNF?= =?utf-8?B?bWFNSHBTYytIMHFCaks1UnFYREFNSjRITnpydWxhd2J4NS8ydTNmZmVJYTdj?= =?utf-8?B?eFJkL1g3SFUrVEFpSmhteWdyU1liZldKc3JDMTRveEE1U0NGMVh4OSthVlln?= =?utf-8?B?L3ZqVnVDU1o3WE51dTNDN3UwTTJhMmk0RTIycWppOEd0ZGJndkhJbVFoVnFz?= =?utf-8?B?K3p1MEl0MVNJamZBUlZXYytzQzZYcWltVEl1QTdjY1hMcE1PS1VIV0tsOUVS?= =?utf-8?B?ZVdIMm9kZU9ZMTVKcG5oMDZwV3JLY3BFQlkzbTdkcXRsNXBuTjFwbC9wM1lN?= =?utf-8?B?YXh3ekZWUHFmVlNvbS9EYUY5cTJ0VEQ4Mi9HcGJoRjZ0azVuSVB5OUczQW52?= =?utf-8?B?S2dJRU5KTkphcWc4VDV4aFBmQkxnYXp1SWFXS2F2SEJBKytlWU1tZzFwWnVl?= =?utf-8?B?Tk9wbzZLNllRWitoYVVXbzEzeUxiWTlCNFUzYTVvR2o5ckl3ZDJoV3FDcUU5?= =?utf-8?B?OGFXU0FGdkNKWVp6U0FxTjVvVEkxUGRXaDVBUmJFMDdXdFpjaTIzLzczLzNy?= =?utf-8?B?T3R0cmFLYjhGUndqUkNSajR5Z3lCMWdVelVKQWk2bVloRmYrT3FHbW1qWlNx?= =?utf-8?B?N1VhUTBoalF5UEhkcDBQbEVkQUpJUjA0bmxQZnU0cU1oQVpMMkVYZzlPbExl?= =?utf-8?B?WEtsOFNHak9QNWh1eTd0VkN6TG1scXAvSUNWcXZnSzBKZy9RdUVja3BYeDlC?= =?utf-8?B?YkxVenpsZlBkUnlBSFAvZ1BZY3gyWVk0bnlEbk5OVkwwTXVyalpmczRKd0RB?= =?utf-8?B?TWd0SkppMUlTdkgvOVkwRXRXVkNBczFMVjdOUEg0b3lsLzdLNVdUWXByb2Ev?= =?utf-8?B?dXJhakJPY1RjUGU4RDh0Z0lGSFZBZEJqN3VLM3BjOEZYWTZpUThOQW9yNWpE?= =?utf-8?B?ck5qZiswSFpSSkFBQWgySU9pSm9hRUNpaGNZS2dTd25SMkZWTjQ4L3ViSjN2?= =?utf-8?B?WFJaQnhISDdWQW1WRERRNEpjN3YzM3VGcXhvOVd1SFY5alhFTGJMUHpRTnB4?= =?utf-8?B?b0FBZzBwS0FtL3pNMGR5S0Jrd3NwZDJycW5IMUN4dmxUajg0WjZvbUovV2M5?= =?utf-8?B?dEltUmV1VTVRU3BuNmFkMENMalRRQU4xSyt0WFp4THQvbWQ4bktlNHUrQ2VP?= =?utf-8?B?WHIvbFVRcmRzMXBxRThJKytuK0UxT1ZhQmpJN3hjRmVEc01UbzZYT21TV1hS?= =?utf-8?B?cXQxaFdsbkU2VHhxYTBIT3dPV1BwMTVaUlRScUNKVHY0UXVTZG9WODlTR3Ez?= =?utf-8?B?Z1VadjN3NXYycFhYV0ovUDJIQXl5QnJRY0pSam8yZlpDeWNibHdyZWRVREln?= =?utf-8?B?c2ljbFloTHlXeTJzaEtLcjlaa0I3NjlzVFZ6SHZMdklkV1VmcDJCaXY1RXZY?= =?utf-8?Q?Ea6Z+Sqsz07i1IzllCg7JVKqArwrqoyfvB0HmkZ?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BY5PR11MB4166.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 731c846d-f9cd-4075-9479-08d8fb5d9740 X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Apr 2021 13:44:26.0337 (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: semqBRGDbwDGhKM7hysBYh9AduEE4lK0sThDFaVctlTETKkKMwHhX8ir1zG4y1EAvHO8FotlZ0tZcELHtNgNYQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR11MB4468 Return-Path: jiewen.yao@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SGkgTGFzemxvDQpUaGFua3MuDQoNCldlIGRpZCBwcm92aWRlIGEgc2VwYXJhdGUgYmluYXJ5IGlu IHRoZSBiZWdpbm5pbmcgLSBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3RpYW5vY29yZS9lZGsyLXN0 YWdpbmcvdHJlZS9URFZGLCB3aXRoIHNhbWUgZ29hbCAtIGVhc3kgdG8gbWFpbnRhaW4gYW5kIGRl dmVsb3AuIEEgY2xlYW4gc29sdXRpb24sIGRlZmluaXRlbHkuDQoNCkhvd2V2ZXIsIHdlIGdvdCBy ZXF1aXJlbWVudCB0byBkZWxpdmVyIG9uZSBiaW5hcnkgc29sdXRpb24gdG9nZXRoZXIgd2l0aCAx KSBub3JtYWwgT1ZNRiwgMikgQU1ELVNFViwgMykgSW50ZWwtVERYLg0KTm93LCB3ZSBhcmUgc3Ry dWdnbGluZyB0byBtZXJnZSB0aGVtLi4uLi4uDQoNCkZvciBEWEUsIHdlIGhvcGUgdG8gaXNvbGF0 ZSBURFggZHJpdmVyIHdoZW5ldmVyIGl0IGlzIHBvc3NpYmxlLg0KQnV0IHdlIG9ubHkgaGF2ZSBv bmUgcmVzZXQgdmVjdG9yIGhlcmUuIFNpZ2guLi4NCg0KDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNz YWdlLS0tLS0NCj4gRnJvbTogTGFzemxvIEVyc2VrIDxsZXJzZWtAcmVkaGF0LmNvbT4NCj4gU2Vu dDogRnJpZGF5LCBBcHJpbCA5LCAyMDIxIDk6MzMgUE0NCj4gVG86IFh1LCBNaW4gTSA8bWluLm0u eHVAaW50ZWwuY29tPg0KPiBDYzogZGV2ZWxAZWRrMi5ncm91cHMuaW87IHRob21hcy5sZW5kYWNr eUBhbWQuY29tOyBqZWpiQGxpbnV4LmlibS5jb207DQo+IEJyaWplc2ggU2luZ2ggPGJyaWplc2gu c2luZ2hAYW1kLmNvbT47IFlhbywgSmlld2VuIDxqaWV3ZW4ueWFvQGludGVsLmNvbT47DQo+IEp1 c3RlbiwgSm9yZGFuIEwgPGpvcmRhbi5sLmp1c3RlbkBpbnRlbC5jb20+OyBBcmQgQmllc2hldXZl bA0KPiA8YXJkYit0aWFub2NvcmVAa2VybmVsLm9yZz47IFBhb2xvIEJvbnppbmkgPHBib256aW5p QHJlZGhhdC5jb20+DQo+IFN1YmplY3Q6IFJlOiBbZWRrMi1kZXZlbF0gW1JGQyBQQVRDSCAwMS8x OV0gT3ZtZlBrZzogUmVzZXJ2ZSB0aGUgU2VjcmV0cyBhbmQNCj4gQ3B1aWQgcGFnZSBmb3IgdGhl IFNFVi1TTlAgZ3Vlc3QNCj4gDQo+IEhpIE1pbiwNCj4gDQo+IE9uIDA0LzA4LzIxIDE1OjMxLCBM ZW5kYWNreSwgVGhvbWFzIHdyb3RlOg0KPiA+IE9uIDQvOC8yMSAxOjI0IEFNLCBYdSwgTWluIE0g d3JvdGU6DQo+IA0KPiA+PiBZZXMgdGhpcyBpcyB0aGUgcm9vdCBjYXVzZS4gVERYIHJlcXVpcmVz IHRoZSBzdGFydHVwIG1vZGUgdG8gYmUgMzItYml0DQo+ID4+IHByb3RlY3RlZCBtb2RlIHdoaWxl IHRoZSBsZWdhY3kgVk0gc3RhcnR1cCBtb2RlIGlzIDE2LWJpdCByZWFsIG1vZGUuDQo+ID4+IEFk ZCBtb3JlIEJJVFMgZGlyZWN0aXZlcyBjYW4gd29yayByb3VuZCB0aGlzLiBJIGhhdmUgdHJpZWQg aXQgYW5kIGl0IHdvcmtzLg0KPiA+Pg0KPiA+PiBTbyBteSBpbml0aWFsIHNvbHV0aW9uIGlzIHRv IHVzZSAqam1wIHJlbDgqIGJlY2F1c2UgaXQgd29ya3MgaW4gYm90aCAxNi1iaXQNCj4gPj4gYW5k IDMyLWJpdCBtb2RlLiBCdXQgKmptcCByZWw4KiBkZXBlbmRzIG9uIHRoZSBkaXN0YW5jZSB3aGlj aCBzaG91bGQNCj4gPj4gYmUgbGVzcyB0aGFuIDEyOCBieXRlcy4gSWYgbW9yZSBtZXRhZGF0YSBp cyBhZGRlZCBpbiB0aGUgUmVzZXRWZWN0b3IuYXNtDQo+ID4+IHRoZW4gd2UgaGF2ZSB0byB1c2Ug dGhlIEJJVFMgc29sdXRpb24uDQo+ID4NCj4gPiBUbyBtZSwgaXQgc291bmRzIGxpa2UgdGhlIEJJ VFMgc29sdXRpb24gc2hvdWxkIGJlIHRoZSBhcHByb2FjaCB5b3UgdXNlDQo+ID4gZnJvbSB0aGUg c3RhcnQuDQo+IA0KPiBCVFcsIGhhdmUgeW91IGNvbnNpZGVyZWQgdXNpbmcgYSBzZXBhcmF0ZSBS ZXNldFZlY3RvciBtb2R1bGUgZm9yIFREWD8NCj4gVGhhdCB3b3VsZCBvYnZpYXRlIHRoaXMgbXVs dGktbW9kZSB0cmlja2VyeS4gKE1vc3QgcmVjZW50bHkgcmFpc2VkIGJ5DQo+IFBhb2xvLikNCj4g DQo+IEkgdGhpbmsgVERYIHdpbGwgbmVlZCBhIHNlcGFyYXRlIHBsYXRmb3JtIERTQyAvIEZERiAv IGZ3IGJpbmFyeSBhbnl3YXkuDQo+IEkgcmVhbGl6ZSB0aGF0J3Mgbm90IGEgZG9uZSBkZWFsIHll dDsgaXQgbWF5IGRlcGVuZCBvbiB3aG8gcHJvdmlkZXMgdGhlDQo+IGZpcm13YXJlIGJpbmFyeSAo Z3Vlc3Qgb3duZXIgb3IgY2xvdWQgb3duZXIpIC0tIG9mIGNvdXJzZSB0aGUgZ3Vlc3QNCj4gb3du ZXIgd2lsbCBoYXZlIHRvIHBlcmZvcm0gdGhlIGF0dGVzdGF0aW9uIGluIGVpdGhlciBjYXNlLCBi dXQgdGhlDQo+ICJwcm92ZW5hbmNlIiBxdWVzdGlvbiByZW1haW5zIG9wZW4sIElJVUMuDQo+IA0K PiBBbmQgZXZlbiBpZiBURFggZ2V0cyBpdHMgb3duIGZpcm13YXJlIHBsYXRmb3JtLCBpdCdzIGEg c2VwYXJhdGUgcXVlc3Rpb24NCj4gd2hldGhlciB0aGUgUmVzZXRWZWN0b3IgbW9kdWxlIGl0c2Vs ZiBzaG91bGQgYmUgc3BsaXQuIEknbSBpbmNsaW5lZCB0bw0KPiB0aGluayBhIHNlcGFyYXRpb24g YXQgdGhhdCBsZXZlbCB3b3VsZCBtYWtlIGRldmVsb3BtZW50IGFuZCBtYWludGVuYW5jZQ0KPiBl YXNpZXIuDQo+IA0KPiAoRldJVywgWGVuIFBWSCBoYXMgaXRzIG93biByZXNldCB2ZWN0b3IgbW9k dWxlLCBpbiBPdm1mUGtnL1hlblJlc2V0VmVjdG9yLikNCj4gDQo+IFRoYW5rcw0KPiBMYXN6bG8N Cg0K