From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by mx.groups.io with SMTP id smtpd.web08.5361.1630486785159125407 for ; Wed, 01 Sep 2021 01:59:45 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=YKJnPBcd; spf=pass (domain: intel.com, ip: 192.55.52.151, mailfrom: jiewen.yao@intel.com) X-IronPort-AV: E=McAfee;i="6200,9189,10093"; a="198919592" X-IronPort-AV: E=Sophos;i="5.84,368,1620716400"; d="scan'208";a="198919592" Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Sep 2021 01:59:44 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.84,368,1620716400"; d="scan'208";a="532018401" Received: from orsmsx604.amr.corp.intel.com ([10.22.229.17]) by FMSMGA003.fm.intel.com with ESMTP; 01 Sep 2021 01:59:43 -0700 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by ORSMSX604.amr.corp.intel.com (10.22.229.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Wed, 1 Sep 2021 01:59:43 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.10 via Frontend Transport; Wed, 1 Sep 2021 01:59:43 -0700 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (104.47.70.102) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.10; Wed, 1 Sep 2021 01:59:42 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SFsbLCcDjCLnzumyyDYRYxYOgi6PbYOSDJjpNCrHRFv9YeC11oGzXs2TMgwg4cx++69ftLmriw14GtNqx+skI+wEShBXMGU4qHj4QcoN6rTHFgcDbqeYuNAnESDOhtTKd01F5rM/AdrSaXMyzDcez5/ZSKMZ7fqVahbYi93KitQvx125cdvlJHsmE3yJ10cA6AQ7BX024DUFAHQqwG2oRhXFhS05Vl97/9FhdWGaM4RjAMqY+3FTwt6XSyEyP9DEJfjTXFQEmi/QzbiPeAZPKY3NHLT5J7RGGnRYUjqRA4UfpBi7ZISkdr0J3SmiEqbFqcnIGMjZEzlic2Ps7pjBOQ== 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=AmNH06SbeHE8dEzRRqVS8gPLnojk3QeIpUuLlzimb+w=; b=b9OlBIOuDcs538JTPXkpCBcSkuQujEDp4H3pTbZw247J/BmcEH5AaTiBVTptyow35IiHWhOhGpHy+x7N90i16t/gXFQnnGDMeYERd6vssqxHV3JaogDwHdmFa/rbD+azHIQOZzpenf5nHzGETmmX73FW1vBRUZ4q7LSn5RJRhNW7bcIQhYtzjCUZUXzvqGNCO/mo0l0GFiGiViqYvUONl/Q6L0B3KBfdrrKeGju7QHfyqT4WvvnV9WgROi1LP7Y/kfF5RcAyP3uNm6lnk/1H2ZXlHBAEaU59+IqqjHbE5Uk168s0XfuxYytUeVcKUsnbXLMKFN9mptruOPeae2wKUw== 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=AmNH06SbeHE8dEzRRqVS8gPLnojk3QeIpUuLlzimb+w=; b=YKJnPBcdP4uLuVDd05AeXCL85ZTCSDUkEHQEG4GiyP0u2pQE0gMDmg87O8c7C4aoHwQAdG9UVECzOt/LHzepVg9lKw5YTQd0iUQTsFtkUDFTQY0M2B9bi/K2gcyUV/wVso2bDFHvf5sj9TGJpPgBzuJXLsZbdCmE5aKurbUi5ho= Received: from PH0PR11MB4885.namprd11.prod.outlook.com (2603:10b6:510:35::14) by PH0PR11MB4872.namprd11.prod.outlook.com (2603:10b6:510:32::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4478.19; Wed, 1 Sep 2021 08:59:41 +0000 Received: from PH0PR11MB4885.namprd11.prod.outlook.com ([fe80::754e:42e9:16cd:1306]) by PH0PR11MB4885.namprd11.prod.outlook.com ([fe80::754e:42e9:16cd:1306%5]) with mapi id 15.20.4478.019; Wed, 1 Sep 2021 08:59:41 +0000 From: "Yao, Jiewen" To: "Xu, Min M" , Ard Biesheuvel , "devel@edk2.groups.io" , "kraxel@redhat.com" CC: Ard Biesheuvel , "Justen, Jordan L" , Brijesh Singh , "Erdem Aktas" , James Bottomley , "Tom Lendacky" Subject: Re: [edk2-devel] [PATCH V5 1/2] OvmfPkg: Introduce Tdx BFV/CFV PCDs and PcdOvmfImageSizeInKb Thread-Topic: [edk2-devel] [PATCH V5 1/2] OvmfPkg: Introduce Tdx BFV/CFV PCDs and PcdOvmfImageSizeInKb Thread-Index: AQHXnUe57bNmh1jvK06QbttUR89TkauLn8GAgAFWjYCAABzkgIAAEf6AgABEIgCAAT2hgIAADqKAgAAM/oCAAAZBAIAAGbsA Date: Wed, 1 Sep 2021 08:59:40 +0000 Message-ID: References: <77440edd1e175207dffcaaa052ce26ae71e6c66c.1630289827.git.min.m.xu@intel.com> <20210830070339.u47qq3g7hb4rq3xc@sirius.home.kraxel.org> <20210831051305.dhqvsh4jzqekmjly@sirius.home.kraxel.org> <20210831102120.kh2b6boorxets75j@sirius.home.kraxel.org> <20210901061033.auj6v3nnofmcawxc@sirius.home.kraxel.org> In-Reply-To: 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: 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: da63de5e-9d9e-42a8-e606-08d96d26d5a7 x-ms-traffictypediagnostic: PH0PR11MB4872: 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: hBXunOpcwsbhJ9ssGJaQ0xCdf2OYkExVH3f2VJdHqPxxnHGSE4Bx/FebOWe9MJQjyNstBr/wVlwguq7sxj0dPadwcvbW9Aeo2Lhadt/N6MXsbj60LGhoTp88quhyDfeCz2pH6SXMZRiZHI/VuLYcRYuKDTNz9CvF2B3bGzbbEvm4+/9oWRBwN1yLEwrtdpdUGtleTRyQBkeGZYLBEWpMVZWrKKUJdJpXB308m2N32FNVOt8Yzu0SIA+BRxyR20vavnENEBNeWB2jj+UA/ZdAWtCn0uNWOLBlDN9T2P9aEnmPJD2W/TIdzUMTTX3lw2qubJuSrKTtvWF4pXd7VguyRWeAPKx8gBQQ7lerXXCeFBXcavftWtUTpVwurZ/S6mFHx4AUYMxvoyov/gqwCzIxrIjOt60f+xntzTd34PUeMgLoXm3AJ4gGFYn34QOR9tV0k32wwuCkGThBAm0xKKsZBMulpL0AWwz8AsTwLiaqK6kKYmReVdN8KOWUN5O/bUlFKm/BuuOkvxI1ih1xURyuxntSrnzlH1GzSyvbrvJdlfzoALo3Axk1Qu6pzXeYum/XxuWIchQdDoYq+60kYzPgJnHZ/15CurW/T8xNqfWt6yG5tB31IzX/lUsQ9B0GJ4iiXBQHt/R9siJnFu/pqQmtV8htA4gbJVxOfVMDGk66ac+TCa83IvDrbH4hLvR8lEAy9kzGTiynW8Ibq9ek+APqWg== 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:(6029001)(4636009)(39860400002)(376002)(346002)(136003)(396003)(366004)(71200400001)(66446008)(66946007)(66476007)(76116006)(8676002)(8936002)(110136005)(66556008)(7696005)(64756008)(54906003)(316002)(38100700002)(478600001)(9686003)(5660300002)(55016002)(86362001)(2906002)(53546011)(6506007)(38070700005)(26005)(186003)(33656002)(122000001)(52536014)(83380400001)(4326008);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?U1NUR3lDZ3dFR3piQW5EZ0pjWXFEUHRoek9XcUtFSWNOek4xM0ZVOUg2SFl2?= =?utf-8?B?NUVBT3ArRXN3RWx1SVB3bG5GL21GQzkxNDNUbWxJSTFuU3ZpeUUyZ29MazBk?= =?utf-8?B?cEZRYklVbTZJeU9wcnQ1cmljNm1PMlUwaS9iVWJEb3FtTkV2d3djZnd6VHFk?= =?utf-8?B?V2pWdnFiWGZoUTBicHg4aGwzMFBIMkFLdEVXb3NNczNoT3NsRXpBSkFtRSt1?= =?utf-8?B?OVRXTXFFTGlrNU1uM2p4eE4yZktqTTBvQnBPV003U08vcFdJdFRiMVBaYm9x?= =?utf-8?B?aXROSU96VkV0amFQU0xVZDgwSHJ1VTUxbjczdHpJcjhsWFE3SnpJNmlZTXhR?= =?utf-8?B?QnRRTEJiR0ZWSEdKUnRWdUNUcVQ5U3RmZCtDUUxyVCt6RjVyNGJWWGg3RC9u?= =?utf-8?B?QjRMQ1YreUVhVmN4TWp2M0dIZkIxOUhCbEQwYjFpcWdIRjJMdWJqTGt1ZXo1?= =?utf-8?B?b2lKK0d0bHFXY1ZJeGN3OXBWQ1l3blBVN0N4ektxRDZXNGhrTHU0VWRxTHRm?= =?utf-8?B?SGswRDdUWW5PWkNOckx6dEtLU1RTdW8xa0dIckZYN1FvV1FyU0orT0F6SkFu?= =?utf-8?B?L2I0bDErTXVWcWs4TUUvOUpvdjZ6MEs3eWF4MlUxTzRkakVFcnMxMG9kWUdS?= =?utf-8?B?RXhlWGhuTVNvZGtpTnZpRlgrbzY2eVpjQTBkcDJaWnZVclJtRkhuQUhHcjRZ?= =?utf-8?B?bWhpRGJuMDlnMk0xMTVYZ2loQmNJM0NGN1lGdDB5UDhKQWRRcEFFZGR5ODRq?= =?utf-8?B?OU9tcEszK0J2UWYySVM3SXgvdDNFdWsydU5ZTlEvN1QzTFJEdWZZYXVRZXJH?= =?utf-8?B?WDgyY1BGMWNnRThkWUpLUXg1ZUNLUEVJWUl6K253Umx0bVRkbm13aEVhbFp1?= =?utf-8?B?a3RkVDBvR2JpZ2lGTnlpSzROSktaSXBCYkxGdEpSaVdHc2ZzL0djdkVjZU5E?= =?utf-8?B?SGx0ZkEySXRJNmVYQkFNNmswMVh2RVR3SWdTeVBNcVI2U1N3VS8vSXArZGJ6?= =?utf-8?B?WWJpWjRtQnFBYkVCVEVpUWF1MksvSVA1QjBScXdhVHFwQ1R4clpOd2cxMEY5?= =?utf-8?B?TkVRMW80ZWVPNUpyRGloSDg0TjRjZmYvT2c2NUVab2xvaFh0TFFUODlSS2N6?= =?utf-8?B?MWRsTmpFbTZiRzBNaTlxK09uS0ozRGlyMkplQ3Q3Y2szQzZlRXA4czVyMXRP?= =?utf-8?B?NGZOb1BHNkM4cFhONFdPdnVRUGdjYzllVXR3bkhrQU14am5qRXV0N2ZkWnNj?= =?utf-8?B?clQyeGZia0l2OFhUUDRucFhFSTAxKzUzeDBGbU1TSktwQ05sT0U3UFoxQXRY?= =?utf-8?B?dGw5R1ZnZDkyTUl4dENBUUNJc1AxanJzb3k5VlRWUTIvSDdKTHNNNzNPeUs1?= =?utf-8?B?SEVnTHNXR2FXU2JvdnMybTF0amMxR3I5dkxjcnVrMFNZa05PNkpHeXM4ZTBk?= =?utf-8?B?cHVGVmh3cVhHMERNMDBibVlGMWJERDFibmNzZU5WM2ViZUhJdURVTDhDS1Fa?= =?utf-8?B?eWZuYWM5QlN1MG5VNFZ3aFdSN3VnUkcwamJrUlUrVEtDeXFpWU1lRXBOVTNG?= =?utf-8?B?aDIwL21ZbEJ0ZUpPbGEwSkVBRmlxN0FSdi9zaHI0dzNlcGorZVdESFphZU50?= =?utf-8?B?TkVCYW5tTVFXL01NbXVqb1prRUErRURrUlNxbFRWNkQ3eTlXNWtEWXpxNmdm?= =?utf-8?B?K3IrTGRGZ204akdiMnA2MncyUkFtU2RpQVRzaEVOZEcxWFJTOUJzZHp4SGJw?= =?utf-8?Q?D2f235QCwxwOnqFlNXHu3i8CBgxLYKn9ORgRbLF?= 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: da63de5e-9d9e-42a8-e606-08d96d26d5a7 X-MS-Exchange-CrossTenant-originalarrivaltime: 01 Sep 2021 08:59:40.8807 (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: PxhzdVUx2Yp1moTvRjxul39pq0jMG9BhXEmBQqITxc+ndAgDgTMZYxd3axl9ow/SiaYw4yCfPiVtV8HaIHyJhQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB4872 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 SGkgTWluDQpJIGFncmVlIHdpdGggR2VyZCBhbmQgQXJkIGluIHRoaXMgY2FzZS4NCg0KSXQgaXMg Tk9UIHNvIG9idmlvdXMgdGhhdCB0aGUgRlRXIGlzIHByb2R1Y2VkIHRoZW4gY29uc3VtZWQgaW4g dGhlIGNvZGUuIFdoYXQgaWYgdGhlIGF0dGFja2VyIHByZXBhcmVzIHNvbWUgc3BlY2lhbCBjb25m aWd1cmF0aW9uIHRvIHRyaWdnZXIgdGhlIEZUVyBwcm9jZXNzIGF0IHRoZSBmaXJzdCBib290LCB0 aGUgY29kZSB3aWxsIGRvICpyZWFkKiBiZWZvcmUgKndyaXRlKj8gVGhhdCBpcyBhIHBvdGVudGlh bCBhdHRhY2sgc3VyZmFjZS4NCg0KSW4gbXkgdmlldywgdGhlIGRlc2lnbiBzaG91bGQgYmUgc28g c2ltcGxlIHRoYXQgaXQgaXMgb2J2aW91c2x5IG5vIGJ1Zy4NCkkgcmVjb21tZW5kIHRvIG1lYXN1 cmUgdGhlIHdob2xlIENGViwgdG8gZWxpbWluYXRlIGFueSBwb3RlbnRpYWwgYXR0YWNrIHN1cmZh Y2UsIHdoaWNoIGlzIGFsd2F5cyB0aGUgYmVzdCB3YXkgaW4gc2VjdXJpdHkuDQoNClRvIGVuc3Vy ZSB0aGUgZGV2ZWxvcGVyIGRvZXMgY29uZmlndXJlIHRoZSBQQ0QgY29ycmVjdGx5LCBJIGFsc28g cmVjb21tZW5kIHRvIGFkZCAiQVNTRVJUKENmdlNpemUgPT0gRnYtPkZ2TGVuZ3RoIiBNZWFzdXJl Q29uZmlndXJhdGlvblZvbHVtZSgpLg0KDQpUaGFuayB5b3UNCllhbyBKaWV3ZW4NCg0KDQo+IC0t LS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IFh1LCBNaW4gTSA8bWluLm0ueHVAaW50 ZWwuY29tPg0KPiBTZW50OiBXZWRuZXNkYXksIFNlcHRlbWJlciAxLCAyMDIxIDM6MTkgUE0NCj4g VG86IEFyZCBCaWVzaGV1dmVsIDxhcmRiQGtlcm5lbC5vcmc+OyBkZXZlbEBlZGsyLmdyb3Vwcy5p bzsNCj4ga3JheGVsQHJlZGhhdC5jb20NCj4gQ2M6IEFyZCBCaWVzaGV1dmVsIDxhcmRiK3RpYW5v Y29yZUBrZXJuZWwub3JnPjsgSnVzdGVuLCBKb3JkYW4gTA0KPiA8am9yZGFuLmwuanVzdGVuQGlu dGVsLmNvbT47IEJyaWplc2ggU2luZ2ggPGJyaWplc2guc2luZ2hAYW1kLmNvbT47IEVyZGVtDQo+ IEFrdGFzIDxlcmRlbWFrdGFzQGdvb2dsZS5jb20+OyBKYW1lcyBCb3R0b21sZXkgPGplamJAbGlu dXguaWJtLmNvbT47DQo+IFlhbywgSmlld2VuIDxqaWV3ZW4ueWFvQGludGVsLmNvbT47IFRvbSBM ZW5kYWNreQ0KPiA8dGhvbWFzLmxlbmRhY2t5QGFtZC5jb20+DQo+IFN1YmplY3Q6IFJFOiBbZWRr Mi1kZXZlbF0gW1BBVENIIFY1IDEvMl0gT3ZtZlBrZzogSW50cm9kdWNlIFRkeCBCRlYvQ0ZWIFBD RHMNCj4gYW5kIFBjZE92bWZJbWFnZVNpemVJbktiDQo+IA0KPiBPbiBTZXB0ZW1iZXIgMSwgMjAy MSAyOjU3IFBNLCBBcmQgQmllc2hldXZlbCB3cm90ZToNCj4gPiBPbiBXZWQsIDEgU2VwdCAyMDIx IGF0IDA4OjEwLCBHZXJkIEhvZmZtYW5uIDxrcmF4ZWxAcmVkaGF0LmNvbT4gd3JvdGU6DQo+ID4g Pg0KPiA+ID4gICBIaSwNCj4gPiA+DQo+ID4gPiA+ID4gSSBkaWRuJ3QgZnVsbHkgaW52ZXN0aWdh dGUgd2hhdCBraW5kIG9mIGF0dGFja3Mgb25lIGNhbiBkby4gIEknbQ0KPiA+ID4gPiA+IHByZXR0 eSBzdXJlIHNpbXBseSBtYWtpbmcgdGhlIHZhcmlhYmxlIHN0b3JlIGxhcmdlciBhbmQgdGhlIHNw YXJlDQo+ID4gPiA+ID4gc21hbGxlciB3b3Jrcywgc28gcGFydHMgb2YgdGhlIHZhcmlhYmxlIHN0 b3JlIGFyZSBvdXRzaWRlIHRoZSBhcmVhDQo+ID4gPiA+ID4geW91IGFyZSBtZWFzdXJpbmcuICBO b3QgZnVsbHkgc3VyZSB3aGVuZXZlciBvbmUgY2FuIGFjdHVhbGx5DQo+ID4gPiA+ID4gcmVvcmRl ciB0aGUgc2VjdGlvbnMgdG8gbW92ZSB0aGUgdmFyc3RvcmUgY29tcGxldGVseSBpbnRvIHRoZQ0K PiA+ID4gPiA+IHVubWVhc3VyZWQgYXJlYS4gIE9yIHBsYXkgb3V0IG90aGVyIGF0dGFja3Mgd2l0 aCB0aGUgc2FtZSBlZmZlY3QsIGxpa2UNCj4gPiBibG9hdGluZyBzb21lIGhlYWRlciBzdHJ1Y3Qu DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiBTaW1wbHkgbWVhc3VyaW5nIGV2ZXJ5dGhpbmcgKGluY2x1 ZGluZyB0aGUgc3BhcmUpIHdpbGwgc3RvcCBhbGwgdGhhdC4NCj4gPiA+ID4gPiBDaGFuZ2VzIHdv dWxkbid0IGdvIHVubm90aWNlZCwgcGVyaW9kLiAgTm8gaWZzIGFuZCBidXRzLiAgU28gSSdtDQo+ ID4gPiA+ID4gd29uZGVyaW5nIHdoeSB5b3Ugbm90IGRvaW5nIHRoYXQ/ICBQZXJmb3JtYW5jZT8g IFdvdWxkbid0IGJlIHRoZQ0KPiA+ID4gPiA+IGZpcnN0IHRpbWUgYSBwZXJmb3JtYW5jZSBvcHRp bWl6YXRpb24gcG9rZXMgYSBob2xlIGludG8gYSBzZWN1cml0eQ0KPiA+IGNvbmNlcHQgLi4uDQo+ ID4gPiA+ID4NCj4gPiA+ID4gVGhlIG1lYXN1cmVtZW50IHZhbHVlIG9mIHRoZSBDRlYgKHByb3Zp c2lvbmVkIGNvbmZpZ3VyYXRpb24gZGF0YSkgaXMNCj4gPiA+ID4gZXh0ZW5kZWQgdG8gUlRNUiBy ZWdpc3RlcnMgKHNpbWlsYXIgdG8gVFBNIFBDUnMpLiBBdCB0aGUgc2FtZSB0aW1lDQo+ID4gPiA+ IGl0IGlzIHJlY29yZGVkIGluIHRoZSBURCBFdmVudCBsb2cuDQo+ID4gPiA+IFRoZXNlIGluZm9y bWF0aW9uIHdpbGwgYmUgdXNlZCBieSB0aGUgQXR0ZXN0YXRpb24gc2VydmVyIChUaGlzIGlzIHRo ZSBzby0NCj4gY2FsbGVkDQo+ID4gQXR0ZXN0YXRpb24pLg0KPiA+ID4gPiBJbiBvdGhlciB3b3Jk cyB0aGVyZSBpcyBhIGtub3duICpnb29kKiBDRlYgbWVhc3VyZW1lbnQgdmFsdWUuIEFueQ0KPiA+ ID4gPiBjaGFuZ2VzIHRvIHRoZSBDRlYsIGZvciBleGFtcGxlIHRoZSBsYXlvdXQsIHRoZSBvcmRl ciBvZiB0aGUNCj4gPiA+ID4gdmFyaWFibGVzLCB0aGUgY29udGVudCBvZiB0aGUgdmFyaWFibGVz IHdpbGwgcHJvZHVjZSBhICpiYWQqIENGVg0KPiA+IG1lYXN1cmVtZW50Lg0KPiA+ID4NCj4gPiA+ IFllcy4gIFRoZSBhdHRhY2tlciB3b3VsZCBuZWVkIGEgdmFyc3RvcmUgd2l0aCBhIG1vZGlmaWVk IGxheW91dCBiZWluZw0KPiA+ID4gYXBwcm92ZWQgYnkgdGhlIGF0dGVzdGF0aW9uIHNlcnZlciBh cyBmaXJzdCBzdGVwLCB0aGVuIGhlIHdvdWxkIGJlDQo+ID4gPiBhYmxlIHRvIG1vZGlmeSB2YXJp YWJsZXMgdW5ub3RpY2VkIGluIGEgc2Vjb25kIHN0ZXAuDQo+ID4gPg0KPiA+ID4gU28sIGFzc3Vt aW5nIGFuIGF0dGFja2VyIGlzbid0IGFibGUgdG8gY2Fycnkgb3V0IHRoZSBmaXJzdCBzdGVwIGl0 DQo+ID4gPiBzaG91bGQgYmUgYWxsIGZpbmUgaW4gdGhlb3J5LiAgV2hlbiBpdCBjb21lcyB0byBz ZWN1cml0eSBpdCBuZXZlcg0KPiA+ID4gaHVydHMgdG8gaGF2ZSBhbm90aGVyIGxpbmUgb2YgZGVm ZW5zZSB0aG91Z2gsIHNvIEkgd291bGQgc3RpbGwNCj4gPiA+IHN0cm9uZ2x5IHJlY29tbWVuZCB0 byBtZWFzdXJlIHRoZSBjb21wbGV0ZSB2YXJzdG9yZSAoaW5jbHVkaW5nIHNwYXJlKS4NCj4gPiA+ DQo+ID4gPiBBdCB0aGUgZW5kIG9mIHRoZSBkYXkgaXQgaXMgeW91ciBjYWxsLCBJJ20gbm90IGdv aW5nIHRvIHZldG8gdGhlIHBhdGNoLg0KPiA+ID4gQnV0IEknbGwgcmVzZXJ2ZSB0aGUgcmlnaHQg dG8gcHVsbCBhICJ0b2xkIHlvdSBzbyIgaW4gY2FzZSBzb21lb25lDQo+ID4gPiBtYW5hZ2VzIHRv IGV4cGxvaXQgdGhhdCBzb21lIGRheS4NCj4gPiA+DQo+ID4NCj4gPiBIYXZlIHRvIGFncmVlIHdp dGggR2VyZCBoZXJlOiBpZiB0aG9zZSBjb250ZW50cyBhcmUgYmVpbmcgaW50ZXJwcmV0ZWQgYnkg dGhlDQo+ID4gY29kZSwgYW5kIG1heSB0aGVyZWZvcmUgYWZmZWN0IGl0cyBleGVjdXRpb24sIEkg ZG9uJ3QgdGhpbmsgaXQgc2hvdWxkIGJlIG9taXR0ZWQNCj4gPiBmcm9tIHRoZSBtZWFzdXJlbWVu dCB1bmxlc3MgdGhlcmUgaXMgYSBjb21wZWxsaW5nIHJlYXNvbiBmb3IgaXQuIE9taXR0aW5nIGl0 DQo+ID4gc2ltcGx5IGJlY2F1c2UgeW91IGNhbiBkb2Vzbid0IHNlZW0gc3VmZmljaWVudCBqdXN0 aWZpY2F0aW9uIHRvIG1lLg0KPiBDRlYgKHRoZSB2YXJpYWJsZXMgcGFydCkgaXMgdHJlYXRlZCBh cyBleHRlcm5hbCBpbnB1dC4gRm9yIGV4YW1wbGUsIHRoZSBzZWN1cmUNCj4gYm9vdA0KPiB2YXJp YWJsZXMuIEZyb20gdGhlIHNlY3VyaXR5IHBlcnNwZWN0aXZlIGV4dGVybmFsIGlucHV0IG1heWJl IG1vZGlmaWVkIGJ5IHNvbWUNCj4gbWFsaWNpb3VzIHVzZXJzLiBUaGF0J3Mgd2h5IGl0IGlzIG1l YXN1cmVkIHNvIHRoYXQgaW4gdGhlIGxhdGVyIEF0dGVzdGF0aW9uIGNhbg0KPiBmaW5kDQo+IHRo ZSBtb2RpZmljYXRpb24uIFRoaXMgaXMgdGhlIHNhbWUgcmVhc29uIHdoeSB0aGUgZGF0YSBkb3du bG9hZGVkIGZyb20gUUVNVQ0KPiAodGhydSBmd19jZmcpIHNob3VsZCBiZSBtZWFzdXJlZC4NCj4g QXMgdG8gdGhlIHNwYXJlIHBhcnQgaW4gdmFyc3RvcmUsIGl0IGlzIG5vdCBleHRlcm5hbCBpbnB1 dCwgaXMgaXQ/IEl0J3MgcHJvZHVjZWQgYW5kDQo+IGNvbnN1bWVkDQo+IGJ5IGNvZGUgaXRzZWxm LiBGcm9tIHRoaXMgcGVyc3BlY3RpdmUgaXQgc2hvdWxkIG5vdCBiZSBtZWFzdXJlZC4gSWYgdGhl IHNwYXJlIHBhcnQNCj4gaXMgaW5jbHVkZWQgaW4gdGhlIG1lYXN1cmVtZW50LCB0aGVuIHRoZSAq Z29vZCogbWVhc3VyZW1lbnQgaXMgbm90IGtub3duDQo+IGFueW1vcmUuDQo+IEJlY2F1c2Ugbm8g b25lIGtub3dzIGFib3V0IHRoZSBjb250ZW50IG9mIHNwYXJlIHBhcnQgaW4gYWR2YW5jZS4NCj4g Pg0KPiA+IC0tDQo+ID4gQXJkLg0K