From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by mx.groups.io with SMTP id smtpd.web11.12824.1632612607024377496 for ; Sat, 25 Sep 2021 16:30:07 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=SDn9KyUH; spf=pass (domain: intel.com, ip: 134.134.136.100, mailfrom: jiewen.yao@intel.com) X-IronPort-AV: E=McAfee;i="6200,9189,10118"; a="287965587" X-IronPort-AV: E=Sophos;i="5.85,322,1624345200"; d="scan'208";a="287965587" Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 25 Sep 2021 16:30:05 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.85,322,1624345200"; d="scan'208";a="560346861" Received: from fmsmsx605.amr.corp.intel.com ([10.18.126.85]) by fmsmga002.fm.intel.com with ESMTP; 25 Sep 2021 16:30:05 -0700 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx605.amr.corp.intel.com (10.18.126.85) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Sat, 25 Sep 2021 16:30:05 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12 via Frontend Transport; Sat, 25 Sep 2021 16:30:05 -0700 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.177) 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.2242.12; Sat, 25 Sep 2021 16:30:05 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FxbJj6/ADogVdvKAM0/gIezcmDO5HrTfPDVtbxfPblrN5ts/BUuznj83YQgtsph99/dct+9K1543HbbtcztPKumS38G+B/QPcS3PLxBn1PEcNGqLX1QBHM2y5LAKyaOAnluO/eXMQn1egy1b26PeTXP9rslDL5OsUTQRfkTHPZy3WSfnfM3KBhtMcTeUHO87Ptva4UR0/slWOgSHAiSKHCyzgMBGX0XziCRkKxxHaX87Ng4Ynsk+pFcuDTp9sebY1ZfGJjIKk0nDjncbAKJ62L6TgtBMtUzzyvw0Uyq0yAA6cLgNMdKY4o44FWaKcLGNmj/uIopF0GLkz4wqt6lnww== 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; bh=4q/f9e+vORhs/maxIrMkgPTB2qZuOVMYnjluwqdLzx8=; b=H+iuCxXcJ5+N+jJkBZttDI4p3TW112lkqdg/FKejpnoxBWDV+2I96LCb2ye5r269B73MzTxHmdIy4Nqsy+0im1YOv4FMDD/F2zSD7h/HT/CVNi74dGJ/j/+uZ4jyt1V/nawAL514uh1MeookqPVTkqFTz2TNtLbFW1hBE0WrQr45JapZ0ZBMbFrrFUpVlsy3uMUbOGD2XwJMDqXVRgRTSDqflkm2Y9a8LNRE7GvCXEhFFQg/Uti+V2pmevtPnxuVp9d3+48Bl59XDyQ8FI44731n1V/SuoOAacq5SPFHBjgQZTB+z542eYc+bNdd0C5VVa9glEogtF6C8+uBfPQMcg== 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=4q/f9e+vORhs/maxIrMkgPTB2qZuOVMYnjluwqdLzx8=; b=SDn9KyUHaFDmomRlV6TIt22GpuPyXQNZxwNZhe7NPFCw51QP15YgS2m+vWtP8hwpnsj77zXH7NFwFHzVfCcbfcZ1hena02sFgEJ3utE4RiJNqoMO6awTIWLBaUmb12/MXC26JTvdUDrqHMSh63tmHMHDj6+mvkmZqtjsIRXsrTo= Received: from PH0PR11MB4885.namprd11.prod.outlook.com (2603:10b6:510:35::14) by PH0PR11MB5080.namprd11.prod.outlook.com (2603:10b6:510:3f::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4544.13; Sat, 25 Sep 2021 23:30:03 +0000 Received: from PH0PR11MB4885.namprd11.prod.outlook.com ([fe80::754e:42e9:16cd:1306]) by PH0PR11MB4885.namprd11.prod.outlook.com ([fe80::754e:42e9:16cd:1306%6]) with mapi id 15.20.4544.020; Sat, 25 Sep 2021 23:30:03 +0000 From: "Yao, Jiewen" To: "Xu, Min M" , "devel@edk2.groups.io" , "brijesh.singh@amd.com" CC: Ard Biesheuvel , "Justen, Jordan L" , Gerd Hoffmann , Erdem Aktas , James Bottomley , Tom Lendacky , "Yao, Jiewen" Subject: Re: [edk2-devel] [PATCH V7 1/1] OvmfPkg: Enable TDX in ResetVector Thread-Topic: [edk2-devel] [PATCH V7 1/1] OvmfPkg: Enable TDX in ResetVector Thread-Index: AQHXrsfv6qwUC8Li5kiwlPdQeu+jg6uzCIeAgADbXACAADdhAIABTiCAgAACpSA= Date: Sat, 25 Sep 2021 23:30:02 +0000 Message-ID: References: <12721dade1f2f9905cc34271d9abec24650442ff.1632214561.git.min.m.xu@intel.com> <753f43a1-98e2-2477-4708-6e118221207e@amd.com> <1fb11eee-9216-a560-bd4b-2fc72d158d97@amd.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.6.200.16 dlp-product: dlpe-windows dlp-reaction: no-action authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: c06ac923-0b71-4777-753d-08d9807c6656 x-ms-traffictypediagnostic: PH0PR11MB5080: 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:10000; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: d2xRX7SYcvdYAwiN58rZp31LMS4xZc83J4AP4Zd3VlOmSvpN1USkB8qk8sfe6S7i4KBm2wbyaPmaSByCdF1AxTWm9rt2ROc7uI/GkVZTJQ9DSS7gADj9nRKX00XsVLI/brvgMdSYwVxnFLNzhFufMEjAIAeCFzxMIAoUnJ9mIfmsd3tEe2asxgu2kz37upkJlnCZdSBFWyuxb/0+Mm6Np7dMtyLdf7E8hFKtLEUdRk2omUuTkbIXIFZDWVyF+mYBw8e5v0nFWkJ3TuD/OFvg7FevEkXoPdQ09z1KINiLrzlhM3oB4Rxcze9RBSkLSNfj8EE1J2SNAnYMdRGFc7kwcg1qLhoCfcvRaJXlu/KVe4fqRuYlSzVutoqTcViwI9sV79rtBzr266p3TgTBdnJc3GcsdtzsmKoHBDNbwKLXka0ITDwKSGCG1atulqW96F5MunOCoEwM7Wf/YFbj5WZerhASi4ViwSxxJ3gyNBk+X0b8bv+Smlr8EAUq5sT8TmnNnukucQ3FIzrVVROKTnFxxgn3InmeYt+pKW78qI+UXas5AZUC7TctPZeAqSAX0lsWCweHG8AOa8AkkPTTjitTid5hG61Nk5W1Zub0J9aVpXsxGFuOYgjo8ngHUrB5go01k4x6EfDIulAXQOjKKS2qyAn6Q0MAq+C8nhgJLPOxAi0ao1r5j4d0dmyGHYJKifiebkR6OOJtPp5j5Nmjwk4zag== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH0PR11MB4885.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(86362001)(9686003)(54906003)(52536014)(8936002)(19627235002)(66946007)(76116006)(71200400001)(5660300002)(107886003)(26005)(316002)(186003)(508600001)(55016002)(83380400001)(38100700002)(7696005)(66556008)(122000001)(8676002)(64756008)(33656002)(53546011)(66446008)(110136005)(38070700005)(6506007)(4326008)(66476007)(2906002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?Z0RKNlVVRzZTck5RSXQ0SURrRnZoaWxWUk03ckEzWWFSUkpwUmFZZTQ0Q1kz?= =?utf-8?B?WmVJWm1waEs2SHg5ckh0R3MyK3RhWjd0bWF4Tnc3U1ppQjN5MFZ3alBXTks4?= =?utf-8?B?K0s3Z0pFNVAydG1jQVpIcjZZRmJHZjU3a3Q0Z0NhV1dxQ2RnUGl3ZEdIN0tV?= =?utf-8?B?VS9yZmhZT3dUZEN5OGt2MjZId0w1RUFmTnVmSkt3OHFyWkNFOThZY0EzcDR0?= =?utf-8?B?NFFQajBQZEtmVVlDcmdYb1lYVmZrcHZMNEdENk1DMURXM3ZVR3J3ZlFZS1hI?= =?utf-8?B?Y2NuQ3N0OGQ2L0pYN0swTzVQWHF3YTFCOXl5eXFwWjRYMXdjd0x2WTNCRVFL?= =?utf-8?B?NHdqdUNLSjkzZ0hCL3YxajJ4TVFwejBWVHNYN1h6UFM5WG5abEF4RHhhT0Nk?= =?utf-8?B?SHdMTzk4WC8wcFIwdXpYemZHZXQ2U1NJbkFnQzYzM1FxNlVFRlZEVjRBV0Uw?= =?utf-8?B?anpweFhJUVhkbmlhWDhOT0JCYkVhTTFwV2dhWVNiYldoRjJ0ZTB5Y3plcnNi?= =?utf-8?B?WnhGWlh1ajBjWFBNQi95RmNhM0NHdi9yM2lMcWNCVWtJZ2E2WWN4bXU5Y3Nr?= =?utf-8?B?T1JmbCtqemVLZ0l1S01yRE5KSWRmcjVybVMyODJPd21YelMwd0d2a1VFdERN?= =?utf-8?B?OFJGTDJOemlxcjQvdklzZUs1OWsydm1aV3g0NG9peGxGcGxJaThvcE1Pd0dI?= =?utf-8?B?NFNuVWMxRTJrazl5YTE2UjkxV2ppdk1xVWhWZ2duTDVuQ1gwQm00aGpBUFpR?= =?utf-8?B?Tngvc0lFaDNQQkt6UWRmVWx0NzhhRmNPcVdpSzZLNmJkbWR1Y2VEaWFPUEJj?= =?utf-8?B?b2E2UkVkSXk0K29KalpZK2NMQU5sSXI2ZWRQaUVGc28wWUhnSFMvT0pZUHpB?= =?utf-8?B?bEgzS2Mwb2hIMThjOENJcEpQTllPeE92NjVqU1cybmNVeHlvaHNQNWpyalI3?= =?utf-8?B?bURHY3RwQ05LUTV4a2s2dE5nNU1IY0ZxcWFDVDkyQTlHbmhlazU2Nkw1d25D?= =?utf-8?B?RUp6SmhBRzFEYlorWXFMNDVjdzNvRFF4NzRTdEtKT1lFeDZiTVkrVFVtVnNr?= =?utf-8?B?Vkx1aDlaQ0w3NkZycmo4cXo3YVQvNUZQc2xnRWQ4bkpSRXlmSWpJZ2x1MTJu?= =?utf-8?B?NG0vSDJ0RUgzMWdxOVhqdnMxWVloSDhLb1BYKzdFZVROMXNEK00rL21xb3Bo?= =?utf-8?B?UFpHN3R3TUwrNVAraTRyNDVwOE1iNmRBNzdxY3hYa0t0TkNjUnR0dTRMRy9t?= =?utf-8?B?aFd6dVEyQlhadlNjdGo1TTFmZ0hsdnd4dkxqS2haVk54SEVqOEI3azV4dlRr?= =?utf-8?B?WnhqYTN0L3ZkcHcwZHFMem9mMzg3aUlLYmRrcGZiNzY5RjJDeWJsU0lUbVIv?= =?utf-8?B?Q1ZwWEY2d3UvYnRrTkowWkdUdGZGMjZ2WHgrMmNsWk1NM1BYNGNwUTB5MmlS?= =?utf-8?B?K3JmWGx2cCsvaDY2MGdEZ1MxSXVTRUtHbHdUSXBkNUZQZ3cvdzYxQVU1YkxS?= =?utf-8?B?TmJrQ0dNYzZIdjcya0p5VzI2Qi9XUnp3aktOa2RXV0RRdnhZcEN1NDl2aHJt?= =?utf-8?B?VlhqL1ZaZFZmT3g5NWk3MHVWV3k0QmQ1Ymp3TUMzekZuOEd3d1UwanBNMUxB?= =?utf-8?B?WTBZdUN6RFMvTWZGWVNOQjlYYmVMQ3dKTWpDbklkZGJFOEVSL1ZKaTlvendv?= =?utf-8?B?elJvYlcxamt1b1pLdy9abml6dC9aOHZnRzBVRjdzUE9qai9hL0d6NnR3a3dR?= =?utf-8?Q?ZY9DyHcAPrMyV+4LEP8AEJXiAjgCDaYQg1H4yWW?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH0PR11MB4885.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c06ac923-0b71-4777-753d-08d9807c6656 X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Sep 2021 23:30:02.9424 (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: T1uSJH5JG01zbyVArc6LdwMjQAXiLftqYBzSrZAMGIUiBF92NMImvrYxfhS4rpeYjnho7zK6rFs0xuw4tYAXlA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB5080 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 SSByZWNvbW1lbmQgd2Ugc3RhcnQgd2l0aCAyIG1ldGFkYXRhIGFuZCBjaGVjayBpbi4NCkl0IGlz IHdvcmtpbmcgdG9kYXkgZm9yIGJvdGggU0VWIGFuZCBURFgsIHdpdGggS1ZNIGFuZCBDbG91ZCBI eXBlcnZpc29yIHN1cHBvcnQuDQoNClRoYW5rIHlvdQ0KWWFvIEppZXdlbg0KDQo+IC0tLS0tT3Jp Z2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IFh1LCBNaW4gTSA8bWluLm0ueHVAaW50ZWwuY29t Pg0KPiBTZW50OiBTdW5kYXksIFNlcHRlbWJlciAyNiwgMjAyMSA3OjE3IEFNDQo+IFRvOiBkZXZl bEBlZGsyLmdyb3Vwcy5pbzsgYnJpamVzaC5zaW5naEBhbWQuY29tDQo+IENjOiBBcmQgQmllc2hl dXZlbCA8YXJkYit0aWFub2NvcmVAa2VybmVsLm9yZz47IEp1c3RlbiwgSm9yZGFuIEwNCj4gPGpv cmRhbi5sLmp1c3RlbkBpbnRlbC5jb20+OyBHZXJkIEhvZmZtYW5uIDxrcmF4ZWxAcmVkaGF0LmNv bT47IEVyZGVtDQo+IEFrdGFzIDxlcmRlbWFrdGFzQGdvb2dsZS5jb20+OyBKYW1lcyBCb3R0b21s ZXkgPGplamJAbGludXguaWJtLmNvbT47DQo+IFlhbywgSmlld2VuIDxqaWV3ZW4ueWFvQGludGVs LmNvbT47IFRvbSBMZW5kYWNreQ0KPiA8dGhvbWFzLmxlbmRhY2t5QGFtZC5jb20+DQo+IFN1Ympl Y3Q6IFJFOiBbZWRrMi1kZXZlbF0gW1BBVENIIFY3IDEvMV0gT3ZtZlBrZzogRW5hYmxlIFREWCBp biBSZXNldFZlY3Rvcg0KPiANCj4gT24gU2VwdGVtYmVyIDI1LCAyMDIxIDExOjIxIEFNLCBCcmlq ZXNoIFNpbmdoIHdyb3RlOg0KPiA+IEhpIE1pbiwNCj4gPg0KPiA+DQo+ID4gT24gOS8yNC8yMSA3 OjAzIFBNLCBYdSwgTWluIE0gd3JvdGU6DQo+ID4gPiBPbiBTZXB0ZW1iZXIgMjQsIDIwMjEgNjo1 OCBQTSwgQnJpamVzaCBTaW5naCB3cm90ZToNCj4gPiA+PiBIaSBNaW4sDQo+ID4gPj4NCj4gPiA+ PiBPbiA5LzIxLzIxIDQ6MDUgQU0sIE1pbiBYdSB3cm90ZToNCj4gPiA+Pj4gIDsNCj4gPiA+Pj4g IDsgTW9kaWZpZWQ6ICBFQVgsIEVCWCwgRUNYLCBFRFgNCj4gPiA+Pj4gIDsNCj4gPiA+Pj4gIFNl dENyM0ZvclBhZ2VUYWJsZXM2NDoNCj4gPiA+Pj4gLQ0KPiA+ID4+PiAtICAgIDsgQ2xlYXIgdGhl IFdvcmtBcmVhIGhlYWRlci4gVGhlIFNFViBwcm9iZSByb3V0aW5lcyB3aWxsIHBvcHVsYXRlIHRo ZQ0KPiA+ID4+PiAtICAgIDsgd29yayBhcmVhIHdoZW4gZGV0ZWN0ZWQuDQo+ID4gPj4+IC0gICAg bW92ICAgICBieXRlW1dPUktfQVJFQV9HVUVTVF9UWVBFXSwgMA0KPiA+ID4+IFdoeSB5b3UgYXJl IHJlbW92aW5nIHRoZSBhYm92ZSBibG9jayA/IFRoZSB3b3JrYXJlYSBoZHIgbXVzdCBiZQ0KPiA+ ID4+IGluaXRpYWxpemVkIHRvIHplcm8sIGl0cyBub3Qgc2FmZSB0byBhc3N1bWUgdGhhdCB0aGUg Z3Vlc3QgbWVtb3J5IGlzDQo+ID4gPj4gemVybydlZCBpbiB0aGUgbm9uLSBlbmNyeXB0ZWQgY2Fz ZS4NCj4gPiA+Pg0KPiA+ID4gSGksIEJyaWplc2gNCj4gPiA+IFBsZWFzZSBzZWUgYmVsb3cgZXhw bGFuYXRpb24gKEl0IGlzIGluIHRoZSBjb21taXQgbWVzc2FnZSkNCj4gPiA+IC0gSW4gTWFpbjE2 IGVudHJ5IHBvaW50LCBhZnRlciBUcmFuc2l0aW9uRnJvbVJlYWwxNlRvMzJCaXRGbGF0LA0KPiA+ ID4gICAgV09SS19BUkVBX0dVRVNUX1RZUEUgaXMgY2xlYXJlZCB0byAwLiBXT1JLX0FSRUFfR1VF U1RfVFlQRSB3YXMNCj4gPiA+ICAgIHByZXZpb3VzbHkgY2xlYXJlZCBpbiBTZXRDcjNGb3JQYWdl VGFibGVzNjQgKHNlZSBjb21taXQgYWI3N2I2MCkuDQo+ID4gPiAgICBUaGlzIGRvZXNuJ3Qgd29y ayBhZnRlciBURFggaXMgaW50cm9kdWNlZCBpbiBPdm1mLiBJdCBpcyBiZWNhdXNlIGFsbA0KPiA+ ID4gICAgVERYIENQVXMgKEJTUCBhbmQgQVBzKSBzdGFydCB0byBydW4gZnJvbSAweGZmZmZmZmYw LiBJbiBwcmV2aW91cyBjb2RlDQo+ID4gPiAgICBXT1JLX0FSRUFfR1VFU1RfVFlQRSB3aWxsIGJl IGNsZWFyZWQgbXVsdGktdGltZXMgaW4gVERYIGd1ZXN0LiBTbyBmb3INCj4gPiA+ICAgIFNFViBh bmQgTGVnYWN5IGd1ZXN0IGl0IGlzIG1vdmVkIHRvIE1haW4xNiBlbnRyeSBwb2ludCAoYWZ0ZXIN Cj4gPiA+ICAgIFRyYW5zaXRpb25Gcm9tUmVhbDE2VG8zMkJpdEZsYXQpLiBGb3IgVERYIGd1ZXN0 DQo+ID4gV09SS19BUkVBX0dVRVNUX1RZUEUNCj4gPiA+ICAgIGlzIGNsZWFyZWQgYW5kIHNldCBp biBJbml0VGR4V29ya2FyZWENCj4gPg0KPiA+IHRoYW5rcyBmb3IgY2xhcmlmeWluZyBpdC4NCj4g Pg0KPiA+IFRoaXMgaXMgdmVyeSBidXN5IGNvbW1pdCBhbmQgbWFraW5nIHNldmVyYWwgY2hhbmdl cyBhdCBvbmNlLCBzbyBzb21lIG9mDQo+ID4gaW1wb3J0YW50IGNvbW1vbiBjb2RlIG1vdmVtZW50 IGlzIGdldHRpbmcgbG9zdC4gTWF5YmUgSSByZWNvbW1lbmQgeW91DQo+IHRvDQo+ID4gcGxlYXNl IGJyZWFrIGl0IGludG8gbXVsdGlwbGUuIGUsZ8KgIHRoaXMgcGFydGljdWxhciBjaGFuZ2UgY2Fu IGJlIHZlcnkgZWFzaWx5DQo+IGJyb2tlbg0KPiA+IGludG8gdHdvIGNvbW1pdHMNCj4gPg0KPiA+ IDEpIFNpbmNlIFREWCBzdXBwb3J0IG5lZWQgdGhlIGNoYW5nZSBpbiB0aGUgYm9vdCBmbG93LCBh bmQgeW91IGFyZSBubyBsb25nZXINCj4gPiB1c2luZyB0aGUgTWFpbi5hc20gZnJvbSB0aGUgVWVm aUNwdVBrZy4gVGhpcyBjYW4gYmUgYSBwcmUtcGF0Y2ggaW4gd2hpY2ggeW91DQo+ID4gY29weSBV ZWZpQ3B1UGtnL1Jlc2V0VmVjdG9yL1Z0ZjAvbWFpbi5hc20gLT4NCj4gPiBPdm1mUGtnL1Jlc2V0 VmVjdG9yL01haW4uYXNtIGFuZCBkb2N1bWVudCByZWFzb24gYmVoaW5kIHRoZSBtb3ZlLg0KPiA+ DQo+ID4gMikgUmVtb3ZlIGNsZWFyaW5nIG9mIHdvcmthcmVhIGZyb20gU2V0Q3IzRm9yUGFnZVRh YmxlczY0IHRvIE1haW4uYXNtDQo+ID4NCj4gPiBOb3cgdGhhdCB3ZSBoYXZlIG92ZXJyaWRlIGZv ciB0aGUgTWFpbi5hc20sIEkgdGhpbmsgY2xlYXJpbmcgb2YgdGhlIHdvcmthcmVhDQo+ID4gc2hv dWxkIGJlIGRvbmUgZm9yIGFsbCBhcmNoaXRlY3R1cmUgKElhMzIsIHg2NCkgdG8gY292ZXIgdGhl IGNhc2VzIHdoZXJlDQo+ID4gc29tZW9uZSBidWlsZHMgdGhlIE9WTUYgZm9yIDMyYml0IG9yIElB MzIgYW5kIFg2NC4NCj4gPg0KPiBUaGFua3MgZm9yIHJlbWluZGVyLiBJIGhhdmUgdXBkYXRlZCB0 aGUgcGF0Y2gtc2V0IGFzIHlvdSBtZW50aW9uZWQuIEJ1dCBJIGFtDQo+IHdhaXRpbmcgZm9yIGEg Y29uY2x1c2lvbiBvZiB0aGUgTWV0YWRhdGEsIGEgdW5pZmllZCBtZXRhZGF0YSBvciB0d28gc2Vw YXJhdGUNCj4gbWV0YWRhdGEuDQo+IA0KPiBIb2ZmbWFubiBhbmQgSmlld2VuDQo+IERvIHdlIGhh dmUgYSBjb25jbHVzaW9uPw0KPiANCj4gVGhhbmtzDQo+IE1pbg0K