From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by mx.groups.io with SMTP id smtpd.web10.12024.1637678214982111445 for ; Tue, 23 Nov 2021 06:36:55 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=TMWuqmiR; spf=pass (domain: intel.com, ip: 192.55.52.120, mailfrom: jiewen.yao@intel.com) X-IronPort-AV: E=McAfee;i="6200,9189,10176"; a="233752487" X-IronPort-AV: E=Sophos;i="5.87,258,1631602800"; d="scan'208";a="233752487" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 23 Nov 2021 06:36:53 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.87,258,1631602800"; d="scan'208";a="538276024" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by orsmga001.jf.intel.com with ESMTP; 23 Nov 2021 06:36:52 -0800 Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) 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.2242.12; Tue, 23 Nov 2021 06:36:52 -0800 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx612.amr.corp.intel.com (10.18.126.92) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12 via Frontend Transport; Tue, 23 Nov 2021 06:36:52 -0800 Received: from NAM02-BN1-obe.outbound.protection.outlook.com (104.47.51.48) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.12; Tue, 23 Nov 2021 06:36:51 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mDmR6K+aBOGYEHPCJnC2lce1PUvsDk6GFYUk+6VVeQjeVKMmdJXoqj4ZOV5HP0PMZHNjTQ5g7RNDwrYBMdLRYgRob/6aWIr34uLE4WWWCiIoDGD2vw4NlmQFaT4HWqvNdtaHHqTNjhFk/eIXEIalDNqFc3azPtzlBZNk6gVw2lpvagdekmhCvAcuYBxUI6+aMJvkMFdih7cSZkkouW5VfOyK12mSIxcMbmvhE5ozzVeK4ZVpJyOAUAYKHIqUy8Hh5HDFSwh6ZzVHvXTJF4ikCN8y1jPBC3u4LJ3fcO754ejvnGp4lSVQ1WXO1NNBJVYF0CQGH5Rn6AeLNGVeKPrnfA== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ijNZVeDXMTgDNZcmdrNisKqyof9Z9Dh9aCWps8a1vf4=; b=Vki+Wd/hOkpAp0YocUnZU6FmZEBLdqf/iK2ZpPQt+t2+FL2Wop10dhU/iz77/XcpIRvg/xsC1iIsyr0ZTVbz94QjV1eE+zgljlXpQvNyAHomMShuDXo3bayYlznTemr+D+C3TrGnvMxtwxnhHviUDGnxqre5qOTld1qgNxEn4/s6OhuGV64rseo0JWCRzdUo2Ig8+tLDzN6dMFPUaVugn/GHiHC9eswtT0JH4mwXFfEp88HlQs4SltWeN/LFgidHAAFpbTv89AgdB9LzVlG4gY0oONh1aLQNRJqNrQhG8GDFUGDdpRrQi4Bt1E+8YIv4S9sM8FYO4ghyzPlIKHG7Fw== 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=ijNZVeDXMTgDNZcmdrNisKqyof9Z9Dh9aCWps8a1vf4=; b=TMWuqmiRJWNc0T3Em1qYyZnIuJzew/fX4XnMMPosnoaJNShD0VkFxUiboprHig4PT0TVGsqRNKmck5cU8cnX77WWb/3tVO3AwXg7uRVabfyCyuJkmNR3o+fUQIIWATzFlf5oS+FvVYQo9kKz/wODGtxrzU9tNRXjL+Qt0LIGtV4= Received: from MW4PR11MB5872.namprd11.prod.outlook.com (2603:10b6:303:169::14) by MWHPR11MB1519.namprd11.prod.outlook.com (2603:10b6:301:d::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4690.27; Tue, 23 Nov 2021 14:36:47 +0000 Received: from MW4PR11MB5872.namprd11.prod.outlook.com ([fe80::1d07:d296:b2c7:7114]) by MW4PR11MB5872.namprd11.prod.outlook.com ([fe80::1d07:d296:b2c7:7114%8]) with mapi id 15.20.4669.016; Tue, 23 Nov 2021 14:36:47 +0000 From: "Yao, Jiewen" To: "jejb@linux.ibm.com" CC: Gerd Hoffmann , "Xu, Min M" , "devel@edk2.groups.io" , Ard Biesheuvel , "Justen, Jordan L" , Brijesh Singh , Erdem Aktas , Tom Lendacky Subject: Re: [PATCH V3 15/29] OvmfPkg: Update SecEntry.nasm to support Tdx Thread-Topic: [PATCH V3 15/29] OvmfPkg: Update SecEntry.nasm to support Tdx Thread-Index: AQHX2uMZH+dNhguCw0OBghbxJplRDawH11AAgAEwN+CAAfIoAIAAvv7AgAVfi4CAAAXBAIAAGIUAgAAC0nY= Date: Tue, 23 Nov 2021 14:36:47 +0000 Message-ID: <1D6AF5B4-87BD-4773-A5C7-4779016A0673@intel.com> References: <867e8a2aaf28c308b20a659057217453c6e38e00.1635769996.git.min.m.xu@intel.com> <20211103063045.kmttoxyluifwo2bq@sirius.home.kraxel.org> <20211117151942.iqow75zq2lrn5xlc@sirius.home.kraxel.org> <20211119151130.g2wcnuhivt3lxvzi@sirius.home.kraxel.org> <20211123123821.q4fanslttg72n2r3@sirius.home.kraxel.org> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 35d48a04-1f6d-47b3-a6ea-08d9ae8eade9 x-ms-traffictypediagnostic: MWHPR11MB1519: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: mJupdVTZ4x7T7+Fxe1Eu4FD2YYll/LLy7pGXuua63Z5x+w86DFOq0zdiz8RrvRT0tzdGKnLPREDjlgk2bzOwDADcoFvHspn65meP7zj975PZAtuort2td2WjhP8KkCRulluJiR8x9BjzWXt7vgyu9C8B3sCFJ/GcA3pIa9wOupOzWfMaa/C/L3trVMv1H8NrMOCy5W9DeVHdbSC5ELSskYO0AG6mae7nsXQHABWzGYELhr8vJbUKjoVa8DfHe94pqsiM+yGnu8qyhYQPSZ8WrosS3AM0UhiTEkva+K6yrOMKve5FusICvYQrCWzA6EJoT7/yyR7B5RrVQAm35onN0qWKYSDnxZIVOTJWg6/q8gi0p9OvOkrOa90T+yZ8Zf/ak7WX2B0l1GSUnJWdf6PRVH4YEuC5tGRtbhGu87kh8+dMFtFJBNqOolfo+Y5kTMYQZhFsN/G6JHp8Tlm2j4pbnIdfDnxSahz9iVFPy3SSRIpT+5cKS81AjAVWXWYk1b1Okdv8lb7wIxBC9GAnj4ESXtWAV11MG7VomDmCyUpFnry4VjCmTo6+c7vNXEHM9XzURFSmTXhZ7yS/PV7kfPak97UMh/xTfykfs01AvQXObMuDm41yNDtS0uaoUzTWLGCHutckjiJJdRCFDAtXJYOwdvCcJcRVTbyVZbL1fei8edYR0bMVM5zwuFkdbtb3SwaaAE+ulGJSmEebfyZVM79+MEo4feHHGhTkk7zb1e+A/nBKmK+HKc5k0xkEsCD9k8xfPqn7Ze7noe83QhN2jqnD1Nahl4zBKvWlfTZtbXc6kK3mSRDCW2KcqAwtxMGxkrnbEb5VwQa7GmlcXfS7yfXiQw== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW4PR11MB5872.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(8936002)(2616005)(966005)(6916009)(83380400001)(76116006)(54906003)(6512007)(6506007)(36756003)(71200400001)(8676002)(2906002)(26005)(86362001)(38070700005)(15650500001)(38100700002)(4001150100001)(33656002)(66556008)(4326008)(66946007)(64756008)(66446008)(82960400001)(6486002)(91956017)(186003)(5660300002)(66476007)(316002)(508600001)(122000001)(45980500001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?cXhaSEhLOC8xS3QzL0RNMEQyNHVIVHltckVtUHFVKzJrVWU5QzRWZkliSUZr?= =?utf-8?B?VkNQSUVFUnZxbGRJZ2s3ZEh2bTE3RVBXVlYrQ08xaDQzNk1OK2ZNYWJwL1dT?= =?utf-8?B?VmZkT01Hd1ZsaTlIb0VHcmovZ2dBMWl6RHlDM2l1cGdFZ2laVkE4bm55RkZQ?= =?utf-8?B?cjFDVWg2RGVXNkZCa3ZKTTRUczEycGZRTDdVRVlxaFRhU2UyaW5GNDRqaHdL?= =?utf-8?B?NXN2UHBaVmNGc3NURVhJTEcrZUZCbTNYQVZ1N3QyeXZwN0l0emZ0RUc4Y2Y0?= =?utf-8?B?MnMrTWxnSkJZOGRKaDh5blFDZlNrUGVKQklpYUk4a09mbHFlOThlWkYwT0Ni?= =?utf-8?B?MVdabjNZWWFyZ24wa2NSMDArTW9xMDl6SmFka2xvU2Y5RUZLZ1h5THM2cVBB?= =?utf-8?B?RllPbWpnOFhhWlBrakRCazdvSVZhNzNCTkNvOTFQSjEvQndBQkhZRDl5WER6?= =?utf-8?B?RXhsck9JNEhxTFRac3NyL2hTUllvN3VQdWpVMjBpRG9sVUhraCsyM09jTmdG?= =?utf-8?B?N1pBSTliR3ArZmdCUnM0RDIvZ1hiMlJuUTduVDUrTHU0Z3FTRzJtdFRReGdM?= =?utf-8?B?YmIrV0xLcm44VlYwN2lDSUZVSEpwVllac09XaVVuY0xDQVBQN2d5ZGJuVGJm?= =?utf-8?B?NnVweFNsVDQya1kySXFDeFFBTmI0M2EyRG5XYWgwb3RZWUk2SC9xMjcraHow?= =?utf-8?B?WEVUWGllZDhLa2QzOVhKM3I4N0cybEkrajkwd1BtMk9TZmgwKzBUUTBIR2E5?= =?utf-8?B?U05uQmJPWnRyODNIam5HZlRMcUh6djlZOUdkdXpnQUtxK0dqM3k1b29iSm8x?= =?utf-8?B?Vm5DUERINUgvNERTRGx0S1dkQjZ2aVhhdzRHMXp4SE83b24ybCtvZTNxcUs1?= =?utf-8?B?LzJHbFRJMFJlcEdxRXMzZ2JOM0U3QnVrekVRVkZiTks0aHFqSVV1RDlDaDBY?= =?utf-8?B?eFN5OVc4NmJyNjk1aDBGN2h6NkRZMVh5dUllU2p3eitmU1gyb1NVYld4eWRx?= =?utf-8?B?T0Rwc2wvZEVlZktGVWFseXFZNDQ4eCtjclF3ejVUWjZqeWZ1ejdnaWFYT1VE?= =?utf-8?B?THRxWjJBNjQzeThac2tZeVUxbUdqWWY4TXZxY3Q5UDRpSUd2eW80MG44NWla?= =?utf-8?B?TzBHQlhsbFJnRnlXTUE3cFI0d3YwMkxSZG5MbytJdzdvV2N2emkxNkNOTmlu?= =?utf-8?B?SUVFQlJ6Vm9Dbi9OQ3JrVERZU2RUbEpRL00vMlpHalpGSmJ4a0lHTVJTNlpZ?= =?utf-8?B?T0ZzTjgrZDFUTHFwN1JNeG9wanJNN2M4MUtyYk9SNW5VWE1ScXQzR1ltTXEy?= =?utf-8?B?enZNWnBEaTZqcDRVOE9aQktWYWVoejZNMi8vY2p3aVdlNVZKbW8wM0EzWGdl?= =?utf-8?B?d1Nucm5teUFLZ3JtUGU5a2doTE5pbTg4TkVwbE0wZGVLK3YvSUttQ2J1M3Qr?= =?utf-8?B?YVd1bFp0TEJFM0NzdFJYVmFiUitJV1ZNcHZNbmZ3dTRSU2dkSitIRG9Kd2dq?= =?utf-8?B?TDBZRnhMeU5sTkdOcWJFY0tIWTI3ak84VFVGMjBCUVZUVHBhWVJOTUFVVDFj?= =?utf-8?B?UE1rZ0d1aFFMemVvL2ZMNlFEc2I2UHFMK0k1d1pJUGZWcm10WC9jTEl3RlMv?= =?utf-8?B?cjhROEZ0YkVTK1gvdWx2MnprNGdVdEs2c0IvUGF1QTV2WUdCQW5sb1FmaDA5?= =?utf-8?B?dGNMSFl1cjlNV1F5ZUFUQi9qSnR3cDRKcTBjQjc2eHRwem9uQXJiczFsNDN6?= =?utf-8?B?d0tJVTMwZE00VHVFMlhVcTdzSjBoSXE5d2tIZWVqOEp3Y3hVTDhlUHVJTTJL?= =?utf-8?B?ZUl3RWh0SDhyUVY1dFg1QWw0MXZwWEpydEhwMVpiNzQydTNBSzBkSm5SeUFm?= =?utf-8?B?TTUxVlBwbnBrKzV0cVJzN29PaVNzem12cGtNRzlJWWlJeUZlT0tmeU1qQlV0?= =?utf-8?B?bjRjelhSQkY4NUp4dDk0Q2tiRlhQSFo3MUdZTlJyT0JUbHQ0aGJ4REVUMjN5?= =?utf-8?B?NDFVVzVGdG1xM0FxSTFMVUVIK0xBNDVkQWdJZjIrSE1vOWZyWUErTTExS2tR?= =?utf-8?B?czljZHJDWFlHRmpiQnVTOXR2TGh5MXVEMnRxYU5sa1E4RTI3SnMvTXpScm1p?= =?utf-8?B?TVdiY3I4SU1LanpoeUdoTUVEK2c1QU53cml5eUo3UXNpYUVYZnZXUmJ4Yjlt?= =?utf-8?Q?ucrkDAbi58QumDIocdyMEhU=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MW4PR11MB5872.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 35d48a04-1f6d-47b3-a6ea-08d9ae8eade9 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Nov 2021 14:36:47.3954 (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: 4F/gNk21EYbB/2I6aE0vtIA2FfOdeWIyaKz/265pUNPlIq6vd1VzopwZmAhDsg5v5tWMESaX0QlzV0pWCRzIqQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR11MB1519 Return-Path: jiewen.yao@intel.com X-OriginatorOrg: intel.com Content-Language: zh-CN Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 PiBUaGlzIHN0cmljdCBpc29sYXRpb24gYmV0d2VlbiBEWEUgYW5kIFBFSSBtZWFucyB0aGF0IG9u Y2Ugd2UncmUgaW4gRFhFLA0KPiBhbnkgYnVncyBpbiBQRUkgY2FuJ3QgYmUgZXhwbG9pdGVkIHRv IGF0dGFjayB0aGUgRFhFIGVudmlyb25tZW50LiAgDQoNCltqaWV3ZW5dIEkgd291bGQgZGlzYWdy ZWUgdGhlIHN0YXRlbWVudCBhYm92ZS4gDQpUaGVyZSBpcyBub3Qgc3RyaWN0IGlzb2xhdGlvbi4g QWN0dWFsbHkgbm8gaXNvbGF0aW9uIGF0IGFsbC4NClRoZSBEWEUgaXMgbG9hZGVkIGJ5IFBFSS4g DQpBIGJ1ZyBpbiBQRUkgaGFzIGdsb2JhbCBpbXBhY3QgYW5kIGl0IGNhbiBkZWZpbml0ZWx5IGJl IHVzZWQgdG8gYXR0YWNrIHRoZSBEWEUuDQoNCnRoYW5rIHlvdSENCllhbywgSmlld2VuDQoNCg0K PiDlnKggMjAyMeW5tDEx5pyIMjPml6XvvIzkuIvljYgxMDoyN++8jEphbWVzIEJvdHRvbWxleSA8 amVqYkBsaW51eC5pYm0uY29tPiDlhpnpgZPvvJoNCj4gDQo+IO+7v09uIFR1ZSwgMjAyMS0xMS0y MyBhdCAxMzowNyArMDAwMCwgWWFvLCBKaWV3ZW4gd3JvdGU6DQo+PiBDb21tZW50IGJlbG93IG9u bHk6DQo+PiANCj4+PiBJIGFtIHBlcnN1YWRlZCB0byBsZXQgY29uZmlnLWEgYWRvcHQgdGhlIE9W TUYgd2F5LCBiZWNhdXNlIHRoZQ0KPj4+IHRocmVhdCBtb2RlbCBvZiBjb25maWctQSBpcyBzYW1l IGFzIHRoZSBub3JtYWwgT1ZNRi4NCj4+PiBCdXQgY29uZmlnLUIgaXMgTk9ULg0KPj4+IERpZmZl cmVudCB0aHJlYXQgbW9kZWwgZHJpdmVzIGRpZmZlcmVudCBzb2x1dGlvbi4NCj4+PiBJIGNvbXBs ZXRlbHkgZG9uJ3QgdW5kZXJzdGFuZCB3aHkgdGhleSBtdXN0IGJlIHNhbWUuDQo+PiANCj4+IEkg ZG9uJ3QgdW5kZXJzdGFuZCB3aHkgeW91IHdhbnQgc2VwYXJhdGUgdGhlbS4gIEltcHJvdmluZyBP dm1mUGtnDQo+PiBzZWN1cml0eSBpcyBnb29kIGZvciBib3RoIE9WTUYgYW5kIFREVkYuICBGb3Ig VERWRiBpdCBpcyBjbGVhcmx5IG11Y2gNCj4+IG1vcmUgaW1wb3J0YW50IGR1ZSB0byB0aGUgZGlm ZmVyZW50IHRocmVhdCBtb2RlbCwgYnV0IGl0IGlzIGdvb2QgZm9yDQo+PiBPVk1GIHRvby4gIExp a2V3aXNlIGVkazIgaW4gZ2VuZXJhbC4NCj4+IA0KPj4gW0ppZXdlbl0gTXkgYW5zd2VyIGlzIHZl cnkgY2xlYXIgYXMgSSBtZW50aW9uZWQgbXVsdGlwbGUgdGltZXMuDQo+PiBUaGUgdGhyZWF0IG1v ZGVsIGlzIGRpZmZlcmVudC4NCj4+IElNSE8sIHRhbGtpbmcgYWJvdXQgIkltcHJvdmluZyBPdm1m UGtnIHNlY3VyaXR5IiB3aXRob3V0IGEgY2xlYXINCj4+IHRocmVhdCBtb2RlbCBpcyAqbWVhbmlu Z2xlc3MqLg0KPj4gQWxsIG1pdGlnYXRpb24gbXVzdCBiZSBiYXNlZCB1cG9uIHRocmVhdCBtb2Rl IGFuZCBzZWN1cml0eSBvYmplY3RpdmUuDQo+PiBPdGhlcndpc2UsIHdoYXQgeW91IGFyZSBkb2lu ZyBtaWdodCBiZSBlaXRoZXIgdW5uZWNlc3Nhcnkgb3INCj4+IGluc3VmZmljaWVudC4NCj4gDQo+ IENhbiB3ZSB0YWtlIGEgc3RlcCBiYWNrIGFuZCBsb29rIGF0IHRoZSBiaWdnZXIgcGljdHVyZS4g IFRoZSB3YXkgRUZJIGlzDQo+IHN1cHBvc2VkIHRvIG9wZXJhdGUsIGFjY29yZGluZyB0byB0aGUg YXJjaGl0ZWN0dXJlIG1vZGVsOg0KPiANCj4gaHR0cHM6Ly91ZWZpLm9yZy9zaXRlcy9kZWZhdWx0 L2ZpbGVzL3Jlc291cmNlcy9QSV9TcGVjXzFfN19maW5hbF9KYW5fMjAxOS5wZGYNCj4gKEZpZ3Vy ZSAxIGFuZCBUYWJsZSA0KQ0KPiANCj4gaXMgdGhhdCBTRUMgaXMgc3VwcG9zZWQgdG8gYmUgYXMg c21hbGwgYW5kIGNvbXBhY3QgYXMgcG9zc2libGUsIHNvIGl0DQo+IGNvdWxkIGJlIFJPTSBpbnN0 YWxsZWQgd2l0aG91dCB3b3JyeWluZyBhYm91dCB1cGdyYWRlIGlzc3Vlcy4gIEl0J3Mgam9iDQo+ IGlzIG9ubHkgdG8gZ2V0IHRoZSBDUFUgaW5pdGlhbGl6ZWQgdG8gdGhlIHBvaW50IGl0IGNhbiBy dW4gUEVJLCBtZWFzdXJlDQo+IFBFSSBhbmQgdHJhbnNmZXIgY29udHJvbC4gIFNlY3VyaXR5IGRl cGVuZHMgb24gdGhlIHNtYWxsbmVzcyBvZiBTRUMNCj4gYmVjYXVzZSBpZiBpdCdzIHJvbSBpbnN0 YWxsZWQgKGFzIGEgcm9vdCBvZiB0cnVzdCBvdWdodCB0byBiZSkgaXQgY2FuJ3QNCj4gYmUgdXBn cmFkZWQgdG8gZml4IGEgYnVnLg0KPiANCj4gUEVJIGlzIHN1cHBvc2VkIHRvIGluaXRpYWxpemUg dGhlIGhhcmR3YXJlOiBzZXQgdXAgdGhlIENQVSwgbWVtb3J5DQo+IEFwcGxpY2F0aW9uIFByb2Nl c3NvcnMgYW5kIGJvYXJkIGNvbmZpZ3VyYXRpb24gc28gd2UncmUgaW4gYSBrbm93bg0KPiBzdGF0 ZSB3aXRoIGRlc2NyaWJlZCBmZWF0dXJlcyBmb3IgRFhFLiAgSXQgdGhlbiBtZWFzdXJlcyBEWEUg KG9ubHkgaWYNCj4gU0VDIGRpZG4ndCBtZWFzdXJlIGl0KSBhbmQgaGFuZHMgb2ZmIHRvIERYRS4g IFBFSSBjb2RlIGlzIGRlc2lnbmVkIG5vdA0KPiB0byBpbnRlcmFjdCB3aXRoIGFueXRoaW5nIGV4 Y2VwdCBzZXR1cCB0byBtaW5pbWl6ZSBleHRlcm5hbA0KPiBleHBsb2l0YXRpb24gb2YgaW50ZXJu YWwgYnVncy4NCj4gDQo+IERYRSBpcyBzdXBwb3NlZCB0byBjb250YWluIG9ubHkgcnVudGltZSBj b2RlLCBpbmNsdWRpbmcgZGV2aWNlIGRyaXZlcnMuDQo+IA0KPiBUaGUgc2VjdXJpdHkgcG9pbnQg aGVyZSBpcyB0aGF0IHRoZSBqb2Igb2YgUEVJIGlzIG92ZXIgYXMgc29vbiBhcyBpdA0KPiBoYW5k cyBvZmYgdG8gRFhFLCBzbyBhdCB0aGF0IHBvaW50IGFsbCB0aGUgUEVJIGNvZGUgY291bGQgYmUg ZGlzY2FyZGVkDQo+IChpdCB1c3VhbGx5IGlzbid0LCBidXQgaXQgY291bGQgYmUpLg0KPiANCj4g VGhpcyBzdHJpY3QgaXNvbGF0aW9uIGJldHdlZW4gRFhFIGFuZCBQRUkgbWVhbnMgdGhhdCBvbmNl IHdlJ3JlIGluIERYRSwNCj4gYW55IGJ1Z3MgaW4gUEVJIGNhbid0IGJlIGV4cGxvaXRlZCB0byBh dHRhY2sgdGhlIERYRSBlbnZpcm9ubWVudC4gIFRoaXMNCj4gYWxsb3dzIHVzIHRvIG1pbmltaXpl IERYRSB3aGljaCBpcyB3aGVyZSBtb3N0IG9mIHRoZSBtYWluIHJpc2sgb2YNCj4gY29uZmlndXJh dGlvbiBiYXNlZCBleHBsb2l0YXRpb24gaXMuDQo+IA0KPiBJbiB0aGlzIHNlY3VyaXR5IG1vZGVs LCB5b3UgaW5jcmVhc2Ugc2VjdXJpdHkgYnkgbW92aW5nIGFzIG11Y2ggY29kZSBhcw0KPiB5b3Ug Y2FuIGZyb20gRFhFIHRvIFBFSSBiZWNhdXNlIHRoZSB0cnVlIGF0dGFjayBzdXJmYWNlIGlzIERY RS4NCj4gDQo+IFRvIGEgbG90IG9mIHVzLCBjdXR0aW5nIG91dCBQRUksIHdoaWNoIHJlcXVpcmVz IHJlZGlzdHJpYnV0aW5nIGNvZGUNCj4gaW50byBEWEUgc291bmRzIGxpa2UgYW4gaW5jcmVhc2Ug bm90IGEgcmVkdWN0aW9uIGluIHRoZSBhdHRhY2sgc3VyZmFjZQ0KPiBvZiB0aGUgY29kZS4gIFlv dSBjYW4gYXJndWUgdGhhdCBPVk1GIGRvZXNuJ3Qgb2JleSB0aGUgbW9kZWwgYWJvdmUgYW5kDQo+ IGhhcyBhIGxvdCBvZiBpbml0aWFsaXphdGlvbiBjb2RlIGluIERYRSBhbnl3YXksIGJ1dCB0aGVu IHRoZSBjb3JyZWN0DQo+IHJvdXRlIHdvdWxkIGJlIHRvIGZpeCBvdXIgUEVJL0RYRSBzZXBhcmF0 aW9uIHRvIHJlY292ZXIgdGhlIHNlY3VyaXR5DQo+IHByb3BlcnRpZXMuDQo+IA0KPj4+IElmIHlv dSBmb3JjZSBtZSB0byBhZGQgUEVJIHRvIGNvbmZpZy1CLiBGaW5hbGx5LCB0aGF0IGNhdXNlcyBU RFZGDQo+Pj4gY29uZmlnLUIgaXMgY29tcHJvbWlzZWQgZHVlIHRvIGFuIGlzc3VlIGluIFBFSS4N Cj4+PiBXaG8gd2lsbCB0YWtlIHRoZSByZXNwb25zaWJpbGl0eT8gIFdpbGwgeW91IG9yIFJlZEhh dCB0YWtlIHRoYXQ/DQo+PiANCj4+IEJ1Z3MgaGFwcGVuLiAgVGhlcmUgY291bGQgYWxzbyBiZSBi dWdzIGluIHRoZSBhZGRpdGlvbmFsIFNFQyBjb2RlIHlvdQ0KPj4gbmVlZCBmb3IgcGxhdGZvcm0g c2V0dXAgaW4gYSBub24tUEVJIGNvbmZpZ3VyYXRpb24gLi4uDQo+PiANCj4+IFtKaWV3ZW5dIEkg YWdyZWUuIFRoYXQgaXMgd2h5IHdlIG5lZWQgc21hbGxlciBjb2RlLg0KPj4gV2UgY2FuIGp1c3Qg Zm9jdXMgb24gcmV2aWV3IHRoYXQgc21hbGwgcG9ydGlvbiBvZiBjb2RlIHdoYXQgd2UgaGF2ZQ0K Pj4gd3JpdHRlbiBmb3IgVERWRiwgaW5zdGVhZCBvZiB0aGUgd2hvbGUgUEVJLg0KPj4gV2UgaGF2 ZSBwcm9jZXNzIHRvIHJldmlldyBhbmQgbWFpbnRhaW4gdGhlIGV4dHJhIFREVkYgY29kZS4NCj4g DQo+IFRoaXMgZGVwZW5kcyAuLi4gaWYgeW91IGFncmVlIHdpdGggdGhlIHNlY3VyaXR5IG1vZGVs IG91dGxpbmVkIGFib3ZlLA0KPiBidWdzIGluIFBFSSBhcmUgbGVzcyBvZiBhIHByb2JsZW0gYmVj YXVzZSB0aGV5IGNhbid0IGJlIGV4cGxvaXRlZC4gIE9yDQo+IGRvIHlvdSBub3QgYWdyZWUgd2l0 aCB0aGlzIHNlY3VyaXR5IG1vZGVsPw0KPiANCj4gU2VjdXJpdHkgaXNuJ3QgYWJvdXQgdG90YWwg YnVnIGVsaW1pbmF0aW9uLCBpdCdzIGFib3V0IGV4cGxvaXQNCj4gZWxpbWluYXRpb24uICBZb3Ug Zml4IGEgc2VjdXJpdHkgdnVsbmVyYWJpbGl0eSBlaXRoZXIgYnkgZml4aW5nIHRoZSBidWcNCj4g dGhhdCBjYW4gYmUgZXhwbG9pdGVkIG9yIHJlbW92aW5nIHRoZSBhYmlsaXR5IHRvIGV4cGxvaXQg aXQuICBUaGlzIGlzDQo+IHRoZSByZWFzb24gZm9yIHRlY2hub2xvZ2llcyBsaWtlIE5YIC4uLiB0 aGV5IGRvbid0IHN0b3AgcGVvcGxlDQo+IGV4cGxvaXRpbmcgYnVncyB0byB3cml0ZSBjb2RlIHRv IHRoZSBzdGFjaywgYnV0IHRoZXkgZG8gbWVhbiB0aGF0IG9uY2UNCj4geW91IGhhdmUgdGhlIGNv ZGUgb24gdGhlIHN0YWNrIHlvdSBjYW4gbm8tbG9uZ2VyIGV4ZWN1dGUgaXQgYW5kIHRoZQ0KPiBh dHRhY2tlcnMgaGF2ZSB0byBtb3ZlIG9uIHRvIG90aGVyIG1lYW5zIG9mIGdhaW5pbmcgY29udHJv bC4NCj4gDQo+IFRoZSBncmVhdCB0aGluZyBhYm91dCBleHBsb2l0IGVsaW1pbmF0aW9uIHZzIGJ1 ZyBlbGltaW5hdGlvbiBpcyB0aGUNCj4gZm9ybWVyIGNhbiB1c3VhbGx5IGJlIGRvbmUgb24gYSB3 aG9sZSBjbGFzcyBvZiBidWdzIGFuZCB0aGUgbGF0dGVyDQo+IHJlcXVpcmVzIGEgd2hhY2stYS1t b2xlIHBlciBidWcgdHlwZSBhcHByb2FjaC4NCj4gDQo+IEphbWVzDQo+IA0KPiANCg==