From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mx.groups.io with SMTP id smtpd.web09.4653.1632404340021796426 for ; Thu, 23 Sep 2021 06:39:00 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=huq86ORN; spf=pass (domain: intel.com, ip: 134.134.136.24, mailfrom: jiewen.yao@intel.com) X-IronPort-AV: E=McAfee;i="6200,9189,10115"; a="223874367" X-IronPort-AV: E=Sophos;i="5.85,316,1624345200"; d="scan'208";a="223874367" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 23 Sep 2021 06:38:58 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.85,316,1624345200"; d="scan'208";a="513976861" Received: from fmsmsx605.amr.corp.intel.com ([10.18.126.85]) by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2021 06:38:58 -0700 Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) 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; Thu, 23 Sep 2021 06:38:58 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) 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; Thu, 23 Sep 2021 06:38:58 -0700 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (104.47.55.100) 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; Thu, 23 Sep 2021 06:38:56 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=A6qkJBi2T9gooWSDc5wUvQ0bx8iiWF2+W0ox1lgybfARXFc94mJCXp0r5zBz328IEIKF0f7Aj2odqckQFnJOM5dTsRuVN7Jf6o50IwX2TqBwsjN8bZF/QtmmXFM2ogkdlmrDR2ml0tlQpiKJEr1rsVs2BQdfrQGCYrMyFfXzDE2zgAaG1nqyhMuuqUPLUpt/3Lyy3LuY+qSwZOKEkJVjYrAEWpdHOnBIbyvAGik2gmNNSryEnGN4BtKAdiFeWGPHoO5P3Fm7fen8EeoxDfMSwyEVD+OzFw/bNozqET0X3SslD8ktlSBPeuwXJLApc6yRAIUnOQ+ogFCfm7tDSrwdFA== 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=pvLc6Mt9xxJCdATtMWhW+0bAt8pCi6fpoOOemov4bac=; b=Avpb4AA90RjQZqaxqVFk824BqpkryYcosbVzsLRht9kn852OeXz/69me+ryBXh1BxhgcFZQKW8qw8qexoyfuuG1dzhfpkzpICLh5hL6FY8MkRBOC4h+cuex9P03Pom8Q88ebGwm5VdDYIUynJnIeEdTZv7om4w2N3UlF4Wkr1U1wFewwrckx6AZoW4etdcyVQw2/CaqVq6jSDLrGpE46nTc/8gqHL8VUPCNGzp3JTlBEEEVNwUZrCYgh3/nA05TF91F3xf589KWIUEmWZweS0oQRuL3Aq/KWvvivgIdQYtf38n0f+lFdKf4AuISU728N/q/MByUrTyYKX0bKInrJQA== 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=pvLc6Mt9xxJCdATtMWhW+0bAt8pCi6fpoOOemov4bac=; b=huq86ORN1+9GUBiVfDByHvNB0j75izo+at3qEgPq1sUmyEoyWkzSIDl7CU7z0edsQ2gCJledLtrT/+5IiiCBoWXySy+YHaxerBRY8MZ+5DB4nPrKuzyYwW7mw698ffXFRsDwy/06rGXXn1XAh7+H+FNwt+BN/YVv+bkDU3KgWis= Received: from PH0PR11MB4885.namprd11.prod.outlook.com (2603:10b6:510:35::14) by PH0PR11MB4885.namprd11.prod.outlook.com (2603:10b6:510:35::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4544.14; Thu, 23 Sep 2021 13:38:52 +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.015; Thu, 23 Sep 2021 13:38:52 +0000 From: "Yao, Jiewen" To: "Xu, Min M" , "devel@edk2.groups.io" , "brijesh.singh@amd.com" , Gerd Hoffmann CC: Ard Biesheuvel , "Justen, Jordan L" , Erdem Aktas , "James Bottomley" , Tom Lendacky 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+jg6uvry6AgAEZ5ACAAIjkgIAALkqAgAAWigCAAAcDAIAAA09w Date: Thu, 23 Sep 2021 13:38:52 +0000 Message-ID: References: <12721dade1f2f9905cc34271d9abec24650442ff.1632214561.git.min.m.xu@intel.com> <20210922074929.e5iwf24t6wyndgbu@sirius.home.kraxel.org> <20210923084821.yxizus3loa2p6hms@sirius.home.kraxel.org> <7c9aeb95-5c33-bd8d-4f0c-40133f4c7c3d@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: 77dff098-fa20-4001-b443-08d97e977b8a x-ms-traffictypediagnostic: PH0PR11MB4885: 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: iXTdocPG78akoITIvHuhCsSwSowoDp1TCCrhgvTWjznXGO9NViJevy+rfoU0cZ/gqqN+H1fRGM2APKxgaNh69RBMMxvKDGojM23Rk6jR/8tCYYtamyGdgPu8VgUbMBgTtOMM7DgZobULm2NFyUmLjPrdA+Xy2MOdE1RXwYwd86ddZQQndZTdl5y3uAEA1JGlR/wTFHdYgkSVaR2UPy+6I+6OnJSzjK7qf3tRAvXU5nxJJgRSmGWNjP3mUiu1ps8xFSQqmbFbSpmdi6XM9YdUkFqL7Na0iT0yEGFJEnglmKVJMsHzR1SUADbWC+4DucxPOoRnvAM1wwcoTRHbHDa/lvh+iJe3jtsugbZ/35bcLBAPQrS9JCWnBLCefwSm4nv5qewd1pUzJB3Zc35K1FXGYRGUuETm/88jGSBtwxu1D6hvGJLmc7lfPuMUdyLOuN1QeXgfU4Zgxv/A03Qk0CVaoquK3uSHRQVo+d7U1Ob/4xjIxavnEITBnkmfIOpuMkZ9se3MehMMXsFZcgdqBX0L9X6wDQrOqEhCLH8tHbDYrP/JE+RxliS6ypeOMGTAoFGkad9RkwgnvW2X+f9Pcs3FpQ1Hu8hUQqC+NpIJmH66Y81DSWkG/opO/gdaWMgnZhtMQPwHWVAKUPc/QDblbrCjhlLPtH39TK77RNU4CLDcrYwileZIYA8hLBwOWa8HutTEgr3aJ91+ixfY4ip4EhclGfPZbJbVSPnNyLhnJoNXwYLL/pQt2kZyvUg6ac+rIr6UNXY1fkmc+fo/nukFS1ArDEhmCkjHQTdnq9qnqdHUYmpI4mhlWFAzZ7YtQPpaCxAtWzeJzXwiBJfXfXK3/9HFikG1++Gi069lPqOTw1gaszk= 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)(508600001)(66476007)(6506007)(66946007)(66556008)(4326008)(86362001)(2906002)(76116006)(83380400001)(38100700002)(5660300002)(110136005)(8936002)(33656002)(53546011)(122000001)(55016002)(66446008)(52536014)(64756008)(8676002)(54906003)(966005)(186003)(38070700005)(9686003)(7696005)(26005)(316002)(71200400001)(21314003);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?NGI5YkFVd0Q0RVZGdjEwakR5MHRTUjdwSUdTdWcrb0hGMGF6bWRpVCtMZnp6?= =?utf-8?B?S1E3dElZNEZzQmo4MlBqNGUya3FHVzNTaDIrcHo3ZjhwemR6d2lPcTZDbXBG?= =?utf-8?B?L1RsM1dORGpmci92eVpzS2JGS2Z0RDNYT1pCK0tUWVRCQXBaRFlIb2QvUnBH?= =?utf-8?B?OC9iMFJqRnc0NmlydCtJcUM0NEl2QS9ITnBmbUU2U2FxcktwMHA1NUJPY0hj?= =?utf-8?B?a24rWUc0QzFtREhseXdPL3QrTlVld0QzZXJqRnV5YUc4YkZ3eVpRUjlveVNw?= =?utf-8?B?TWR5Z1FuOVBqaXF4S1V3MS8zaVdVQUN5N0dsS0VYLzVWYWRjOUdQS21vQjVL?= =?utf-8?B?a3NMUWdTaURnUitXUExvVXpYbmVKUGNvK1BUV0tGQU9jKzQwTjdaUVhJMlJl?= =?utf-8?B?TndHUkZHakFkN0NuQ1YwdGFOWW9vblFQWnh0b09vdDZ5RTZqaDRvWk9SL3NU?= =?utf-8?B?c01QOXB5UmpKRDhBZCtrdThXd1dCNXhWbVZKS1NoWGdTdE5zb3RyYkNBNjlH?= =?utf-8?B?eXBxQ2tuNUpKVTZZYkcvTXA4Zzlqcko5NThvYWFsbnFlMW9wdDl0NjhZU0dD?= =?utf-8?B?SHJ2NnV5Z010bENxcHUvWWdnT0pTR3pLU2J1U2h2Vjl1eFZJdFNYL0c0aHNm?= =?utf-8?B?bEx6aG5rRUlkRFBJN25zMm5GS3c1ZHh0anQrc0pRM2NQZytlK1BTK2dyOURj?= =?utf-8?B?UXhIRGY2UnRkeFFyQ3dFQzlhTnJOWWNmaWcwaGJFRmxJN0lOdng0dUw3eU9Z?= =?utf-8?B?WEJPQTR0TC9SMWQxY05SRTBWVjl4SFpwYm1KbmpqSUFXNHVtUkpwbm1BRmpK?= =?utf-8?B?RXppNUJhZVM0elpJY0FqL3Mwa0s1WlRzZWgyNzVwQm5lUE45N3VYQ3hvMi9C?= =?utf-8?B?dHI2UmNZOHdHeFVKOWFtbmlsMm5DN2N1UnMvMzNMc1JUNFQzeXkxVkpJazlV?= =?utf-8?B?cklKdUl6d0FLQVZ3NWxJQU1jLzdGandxWmxNWFFOZEZjRCs1NnQ5aldIQzI1?= =?utf-8?B?Vi9FZDRtWFRSaUNCQnhmVnlkeFJZVzlZQlN0M3loS2NhZnppL2ZWcGJhNHZo?= =?utf-8?B?bFNuOFg4ZGVyNEt6dXk3MnNQY1FWa3FmTlVjbDJ5MW1CeDRmS3JYdlBYa1gy?= =?utf-8?B?QWNMdlNIM2VmaXZkTXlJUThkbDhMT21MOUF1S1ZoTGMvT1ZGWVg1UkZGN1dr?= =?utf-8?B?eFpIeFJRSDBaTUdEUHMzc0tiN05JbUdxRWoxOTNnMC9TSTYyWXB1VktucUlS?= =?utf-8?B?RncwMEFsZk8zOTBhQXFVdStFQXIydEt1OWkwYXZKdURUV1pRUGRoOWtVNURM?= =?utf-8?B?TTBIcGNWRWV6MUdTQlhvUWZtZEFQMmY5SU1tSDNKaWdzVU5YNk4zSmEvelpH?= =?utf-8?B?UGUzYkFWREw3NVVYYm5jTE5YTUhzVzhvY2YrbEs4MXpPWDNnb3BoaUUwMHA3?= =?utf-8?B?L3FueXhuSDM3TFVCbk8wVHFLTy85Nmx0RlNmQzVKWXJrVTI2UDRIVUdjNTFk?= =?utf-8?B?LzRTNzZjZHBxdi94U2hxSkVqTEtpMkFpTXNWTEFab0hKcGlZVFhUWlgwUWN6?= =?utf-8?B?VFdHbW9BajkvYUtWRDlyREN4ekMyNFBvU0NOSGRpb21KSk1OUVp5ZnY0UFQ5?= =?utf-8?B?T2g5ZytJbzJ6MmRhUkxiNHFZd0x5aTh2MTNaMERuZVBFYlRua0JYOFJmVTd1?= =?utf-8?B?b05uY1IzdzEvRTJCU3hSSjY1aWtBWUZpM1dNQmEwS2RSRDcyUUJVUEluRVR0?= =?utf-8?Q?rIHg/rBoOVFwp7mS4/Jkb1/52xFyHD/WM5xoTRL?= 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: 77dff098-fa20-4001-b443-08d97e977b8a X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Sep 2021 13:38:52.6001 (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: dFC0K47d9AP0qM/U4YmBZnxuEIUXVP+qrM9tYcYtFrNvJuc1IdbAcRud7Ujld2ro+ZdPGHa3SVZ5b2W3iTbyTA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB4885 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 R29vZCBwb2ludCwgTWluLg0KDQpJZiBodHRwczovL2dpdGh1Yi5jb20vQU1ERVNFL292bWYvYmxv Yi9zbnAtdjgvT3ZtZlBrZy9SZXNldFZlY3Rvci9YNjQvT3ZtZk1ldGFkYXRhLmFzbSBpcyB0aGUg cHJvcG9zYWwsIHRoZW4gSSBoYXZlIG1vcmUgY29tbWVudDoNCg0KVHlwZTogT1ZNRl9TRUNUSU9O X1RZUEVfQ09ERSwgT1ZNRl9TRUNUSU9OX1RZUEVfVkFSUyBhcmUgTk9UIHVzZWQgZm9yIFNFVi4g SSBhbSBub3Qgc3VyZSB3aHkgdGhleSBhcmUgdGhlcmUuDQoNClR5cGU6IE9WTUZfU0VDVElPTl9U WVBFX0NQVUlEIHNob3VsZCBiZSBTRVYgc3BlY2lmaWMuIFREWCBkb2VzIG5vdCBuZWVkIENQVUlE IHBhZ2UuDQoNClR5cGU6IE9WTUZfU0VDVElPTl9UWVBFX1NFQ19NRU0gYWxzbyBzZWVtcyBmb3Ig U0VWLiBURFggZG9lcyBub3QgbmVlZCB0aGlzIHNwZWNpYWwgbWVtb3J5LCBzdWNoIGFzIFBhZ2Ug dGFibGUuIEl0IGlzIGFscmVhZHkgY292ZXJlZCBieSBjb2RlLg0KDQpUeXBlOiBPVk1GX1NFQ1RJ T05fVFlQRV9TTlBfU0VDUkVUUyAvIE9WTUZfU0VDVElPTl9UWVBFX1NOUF9TRUNfTUVNIGlzIFNF ViBzcGVjaWZpYy4NCg0KVGhlIFNFViB0YWJsZSBpcyB0b3RhbGx5IGRpZmZlcmVudCB3aXRoIFRE WCBtZXRhZGF0YSB0YWJsZS4gSSByZWFsbHkgY2Fubm90IHNlZSB0aGUgYmVuZWZpdCB0byBtZXJn ZSBpbnRvIG9uZSB0YWJsZS4NCg0KVGhhbmsgeW91DQpZYW8gSmlld2VuDQoNCj4gLS0tLS1Pcmln aW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogWHUsIE1pbiBNIDxtaW4ubS54dUBpbnRlbC5jb20+ DQo+IFNlbnQ6IFRodXJzZGF5LCBTZXB0ZW1iZXIgMjMsIDIwMjEgOToyMCBQTQ0KPiBUbzogZGV2 ZWxAZWRrMi5ncm91cHMuaW87IGJyaWplc2guc2luZ2hAYW1kLmNvbTsgWWFvLCBKaWV3ZW4NCj4g PGppZXdlbi55YW9AaW50ZWwuY29tPjsgR2VyZCBIb2ZmbWFubiA8a3JheGVsQHJlZGhhdC5jb20+ DQo+IENjOiBBcmQgQmllc2hldXZlbCA8YXJkYit0aWFub2NvcmVAa2VybmVsLm9yZz47IEp1c3Rl biwgSm9yZGFuIEwNCj4gPGpvcmRhbi5sLmp1c3RlbkBpbnRlbC5jb20+OyBFcmRlbSBBa3RhcyA8 ZXJkZW1ha3Rhc0Bnb29nbGUuY29tPjsgSmFtZXMNCj4gQm90dG9tbGV5IDxqZWpiQGxpbnV4Lmli bS5jb20+OyBUb20gTGVuZGFja3kgPHRob21hcy5sZW5kYWNreUBhbWQuY29tPg0KPiBTdWJqZWN0 OiBSRTogW2VkazItZGV2ZWxdIFtQQVRDSCBWNyAxLzFdIE92bWZQa2c6IEVuYWJsZSBURFggaW4g UmVzZXRWZWN0b3INCj4gDQo+IEkgc3VnZ2VzdCBTRVYgYW5kIFREWCBrZWVwIHRoZWlyIG93biBt ZXRhZGF0YSBpbiBzZXBhcmF0ZSBmaWxlcy4gVGhpcyBpcyBiZWNhdXNlDQo+IFNFViBhbmQgVERY IGhhcyBkaWZmZXJlbnQgaXRlbSBzdHJ1Y3R1cmUuDQo+IA0KPiBGcm9tIHRoZSBPdm1mTWV0YWRh dGEgZGVmaW5pdGlvbiBpbiBTRVYNCj4gKGh0dHBzOi8vZ2l0aHViLmNvbS9BTURFU0Uvb3ZtZi9i bG9iL3NucC0NCj4gdjgvT3ZtZlBrZy9SZXNldFZlY3Rvci9YNjQvT3ZtZk1ldGFkYXRhLmFzbSkg dGhlcmUgYXJlIDMgZmllbGRzIGluIHRoZQ0KPiBpdGVtLiAoQmFzZS9TaXplL1R5cGUpLg0KPiAN Cj4gQnV0IGZvciBURFgsIHRoZXJlIGFyZSA2IGZpZWxkcw0KPiAoRGF0YU9mZnNldC9SYXdEYXRh U2l6ZS9NZW1vcnlBZGRyZXNzL01lbW9yeVNpemUvVHlwZS9BdHRyaWJ1dGUpIGluIG9uZQ0KPiBp dGVtLg0KPiBUaGF0IGlzIGJlY2F1c2UgVERYLVFFTVUgbm90IG9ubHkgaW5pdGlhbGl6ZSB0aGUg bWVtb3J5IHJlZ2lvbiwgYnV0IGFsc28gZG9lcw0KPiBtb3JlIHRhc2tzIChtZWFzdXJlbWVudCkg aWYgdGhlIEF0dHJpYnV0ZSBpbmRpY2F0ZXMuDQo+IERhdGFPZmZzZXQvUmF3RGF0YVNpemUgaXMg dXNlZCBieSB0aGUgVERYLVFFTVUgdG8gZG8gdGhlIG1lYXN1cmVtZW50IGlmDQo+IHRoZSBBdHRy aWJ1dGUgZmllbGQgaXMgTVIuRVhURU5ELg0KPiBNZW1vcnlBZGRyZXNzL01lbW9yeVNpemUgaW5k aWNhdGVzIHRoZSBURFgtUUVNVSBob3cgdG8gaW5pdGlhbGl6ZSB0aGUNCj4gbWVtb3J5IHJlZ2lv bi4NCj4gDQo+IFdlIGNhbiBhZGQgbW9yZSBmaWVsZHMgaW4gdGhlIGl0ZW0gdG8gbWFrZSBpdCB3 b3JrYWJsZSBmb3IgYm90aCBTRVYgYW5kIFREWCwNCj4gKGZvciBleGFtcGxlLCBhZGQgRGF0YU9m ZnNldC9SYXdEYXRhU2l6ZS9BdHRyaWJ1dGUpLCBidXQgaXQgYWxzbyByZXN0cmljdCB0aGUNCj4g Y2hhbmdlcyBpbiB0aGUgZnV0dXJlIGlmIG1vcmUgZmllbGRzIGlzIG5lZWRlZCAoVERYJ3MgY2hh bmdlIHdpbGwgaW1wYWN0IHRoZQ0KPiBleGlzdGluZyBTRVYtUUVNVSkuDQo+IA0KPiBPbiBTZXB0 ZW1iZXIgMjMsIDIwMjEgODo1NSBQTSwgQnJpamVzaCBTaW5naCB3cm90ZToNCj4gPg0KPiA+IExp a2UgR2VyZCBJIHdvdWxkIHByZWZlciB0byBoYXZlIG9uZSBtZXRhZGF0YSB0YWJsZSBpbiB0aGUg cmVzZXQgR1VJRC4NCj4gPiBUaGUgbWV0YWRhdGEgdGFibGUgd2lsbCBjb250YWluIG11bHRpcGxl IGVudHJpZXM7IGxvdCBvZiBlbnRyaWVzIGFyZSBjb21tb24NCj4gPiBiZXR3ZWVuIFNOUCBhbmQg VERYLiBTb21lIGVudHJpZXMgd2lsbCBoYXZlIHNwZWNpZmljIG1lYW5pbmcgZm9yIHRoZQ0KPiBw bGF0Zm9ybS4NCj4gPiBUaG9zZSBzcGVjaWFsIGVudHJpZXMgc2hvdWxkIGJlIG1hcmtlZCB1c2lu ZyB0aGUNCj4gPiBPVk1GX1NFQ1RJT05fVFlQRV97VERYLFNOUH1fWFhYWC4gSXQgaXMgcGVyZmVj dGx5IGZpbmUgdG8gaGF2ZSBhIG1vcmUNCj4gdGhhbg0KPiA+IG9uZSBlbnRyeSBmb3IgdGhlIHNh bWUgcmVnaW9uIHdpdGggZGlmZmVyZW50IHR5cGUsIGUuZw0KPiA+DQo+ID4gR2hjYkJvb2trZWVw aW5nU25wOg0KPiA+DQo+ID4gwqAgR0hDQl9CT09LS0VQSU5HX0JBU0VfQUREUkVTUw0KPiA+DQo+ ID4gwqAgR0hDQl9CT09LS0VFUElOR19TSVpFDQo+ID4NCj4gPiDCoCBPVk1GX1NFQ1RJT05fVFlQ RV9TTlBfTUVNDQo+ID4NCj4gPiBUZHhNYWlsQm94RXh0Og0KPiA+DQo+ID4gwqAgR0hDQl9CT09L S0VQSU5HX0JBU0VfQUREUkVTUw0KPiA+DQo+ID4gwqAgR0hDQl9CT09LS0VFUElOR19TSVpFDQo+ ID4NCj4gPiDCoCBPVk1GX1NFQ1RJT05fVFlQRV9URFhfTUFJTEJPWA0KPiA+DQo+ID4gSWYgd2Ug d2FudCBhbGwgdGhlIE9WTUZfU0VDVElPTl9UWVBFX1NOUF94eHggc2hvdWxkIGJlIGRlZmluZWQg aW4gYQ0KPiA+IHNlcGFyYXRlIGZpbGUgdGhlbiB0aGF0IGlzIGFsc28gZG9hYmxlLiBJIHB1dCBl dmVyeXRoaW5nIGluIG9uZSBwbGFjZSBiZWNhdXNlIEkNCj4gd2FzDQo+ID4gdHJ5aW5nIHRvIGtl ZXAgZW50cnkgb3JkZXIgc2ltaWxhciB0byB3aGF0IGlzIHByZXNlbnQgaW4gTUVNRkQuDQo+ID4N Cj4gPiB0aGFua3MNCj4gPg0KPiA+IE9uIDkvMjMvMjEgNjozOSBBTSwgWWFvLCBKaWV3ZW4gd3Jv dGU6DQo+ID4gPiBJIHN0cm9uZ2x5IHJlY29tbWVuZCB0byBzZXBhcmF0ZSBTRVYgYW5kIFREWCBp biBhbGwgY29udGV4dCwgaWYgaXQgaXMNCj4gc29tZXRoaW5nDQo+ID4gU0VWIG9yIFREWCBzcGVj aWZpYy4NCj4gPiA+IFRoZW4gZWFjaCBmaWxlIGhhcyBjbGVhciBvd25lcnNoaXAuDQo+ID4gPiBJ ZiBpdCBpcyBzb21ldGhpbmcgZ2VuZXJpYyBmb3IgYm90aCBTRVYgYW5kIFREWCwgaXQgY2FuIGlu IG9uZSBmaWxlLg0KPiA+ID4NCj4gPiA+IEZvciBleGFtcGxlLCBTZWNQZWlUZW1wUmFtL1NlY1Bh Z2VUYWJsZSBjYW4gYmUgaW4gY29tbW9uIGZpbGUuDQo+ID4gPiBCdXQgU2V2U25wU2VjcmV0cy9H aGNiQm9va2tlZXBpbmcgc2hvdWxkIGJlIGluIFNFViBmaWxlLg0KPiA+ID4NCj4gPiA+IFRoYW5r IHlvdQ0KPiA+ID4gWWFvIEppZXdlbg0KPiA+ID4NCj4gPiA+PiAtLS0tLU9yaWdpbmFsIE1lc3Nh Z2UtLS0tLQ0KPiA+ID4+IEZyb206IEdlcmQgSG9mZm1hbm4gPGtyYXhlbEByZWRoYXQuY29tPg0K PiA+ID4+IFNlbnQ6IFRodXJzZGF5LCBTZXB0ZW1iZXIgMjMsIDIwMjEgNDo0OCBQTQ0KPiA+ID4+ IFRvOiBYdSwgTWluIE0gPG1pbi5tLnh1QGludGVsLmNvbT4NCj4gPiA+PiBDYzogZGV2ZWxAZWRr Mi5ncm91cHMuaW87IEFyZCBCaWVzaGV1dmVsIDxhcmRiK3RpYW5vY29yZUBrZXJuZWwub3JnPjsN Cj4gPiA+PiBKdXN0ZW4sIEpvcmRhbiBMIDxqb3JkYW4ubC5qdXN0ZW5AaW50ZWwuY29tPjsgQnJp amVzaCBTaW5naA0KPiA+ID4+IDxicmlqZXNoLnNpbmdoQGFtZC5jb20+OyBFcmRlbSBBa3RhcyA8 ZXJkZW1ha3Rhc0Bnb29nbGUuY29tPjsNCj4gSmFtZXMNCj4gPiA+PiBCb3R0b21sZXkgPGplamJA bGludXguaWJtLmNvbT47IFlhbywgSmlld2VuIDxqaWV3ZW4ueWFvQGludGVsLmNvbT47DQo+ID4g Pj4gVG9tIExlbmRhY2t5IDx0aG9tYXMubGVuZGFja3lAYW1kLmNvbT4NCj4gPiA+PiBTdWJqZWN0 OiBSZTogW1BBVENIIFY3IDEvMV0gT3ZtZlBrZzogRW5hYmxlIFREWCBpbiBSZXNldFZlY3Rvcg0K PiA+ID4+DQo+ID4gPj4gT24gVGh1LCBTZXAgMjMsIDIwMjEgYXQgMTI6Mzg6MjRBTSArMDAwMCwg WHUsIE1pbiBNIHdyb3RlOg0KPiA+ID4+PiBPbiBTZXB0ZW1iZXIgMjIsIDIwMjEgMzo0OSBQTSwg R2VyZCBIb2ZmbWFubiB3cm90ZToNCj4gPiA+Pj4+ICAgSGksDQo+ID4gPj4+Pg0KPiA+ID4+Pj4+ ICslaWZkZWYgQVJDSF9YNjQNCj4gPiA+Pj4+PiArOw0KPiA+ID4+Pj4+ICs7IFREWCBNZXRhZGF0 YSBvZmZzZXQgYmxvY2sNCj4gPiA+Pj4+PiArOw0KPiA+ID4+Pj4+ICs7IFRkeE1ldGFkYXRhLmFz bSBpcyBpbmNsdWRlZCBpbiBBUkNIX1g2NCBiZWNhdXNlIEludGUgVERYIGlzDQo+ID4gPj4+Pj4g K29ubHkgOyBhdmFpbGFibGUgaW4gQVJDSF9YNjQuIEJlbG93IGJsb2NrIGRlc2NyaWJlcyB0aGUg b2Zmc2V0IG9mDQo+ID4gPj4+Pj4gKzsgVGR4TWV0YWRhdGEgYmxvY2sgaW4gT3ZtZiBpbWFnZSA7 IDsgR1VJRCA6DQo+ID4gPj4+Pj4gK2U0N2E2NTM1LTk4NGEtNDc5OC04NjVlLTQ2ODVhN2JmOGVj Mg0KPiA+ID4+Pj4+ICs7DQo+ID4gPj4+Pj4gK3RkeE1ldGFkYXRhT2Zmc2V0U3RhcnQ6DQo+ID4g Pj4+Pj4gKyAgICBERCAgICAgIHRkeE1ldGFkYXRhT2Zmc2V0U3RhcnQgLSBUZHhNZXRhZGF0YUd1 aWQgLSAxNg0KPiA+ID4+Pj4+ICsgICAgRFcgICAgICB0ZHhNZXRhZGF0YU9mZnNldEVuZCAtIHRk eE1ldGFkYXRhT2Zmc2V0U3RhcnQNCj4gPiA+Pj4+PiArICAgIERCICAgICAgMHgzNSwgMHg2NSwg MHg3YSwgMHhlNCwgMHg0YSwgMHg5OCwgMHg5OCwgMHg0Nw0KPiA+ID4+Pj4+ICsgICAgREIgICAg ICAweDg2LCAweDVlLCAweDQ2LCAweDg1LCAweGE3LCAweGJmLCAweDhlLCAweGMyDQo+ID4gPj4+ Pj4gK3RkeE1ldGFkYXRhT2Zmc2V0RW5kOg0KPiA+ID4+Pj4+ICsNCj4gPiA+Pj4+PiArJWVuZGlm DQo+ID4gPj4+PiBUaGlzIHNob3VsZCBiZSBzd2l0Y2hlZCB0byBjb21tb24gb3ZtZiBtZXRhZGF0 YSAoc2VlIHBhdGNoZXMgNC03IG9mDQo+ID4gPj4+PiB0aGUgU0VWLVNOUCBzZXJpZXMpLg0KPiA+ ID4+Pj4NCj4gPiA+Pj4+IE1pbjogcGxlYXNlIGhhdmUgYSBsb29rIGF0IHRoZXNlIHBhdGNoZXMu DQo+ID4gPj4+Pg0KPiA+ID4+PiBIaSwgR2VyZA0KPiA+ID4+PiBJIGNoZWNrZWQgdGhlIHBhdGNo ZXMgNC03IG9mIHRoZSBTRVYtU05QIHNlcmllcy4gVGhlIGNvbW1vbg0KPiA+ID4+PiBPdm1mTWV0 YWRhdGEgaXMgZGVzaWduZWQgZm9yIGJvdGggU0VWIGFuZCBURFgsIHJpZ2h0Pw0KPiA+ID4+IFRo YXQgaXMgdGhlIGlkZWEsIHllcy4NCj4gPiA+Pg0KPiA+ID4+PiBJZiBzbywgdGhlbiBpdCBtZWFu cyB0aGUgU0VWIGFuZCBURFggbWV0YWRhdGEgd2lsbCBiZSBtaXhlZCBpbiB0aGlzDQo+ID4gPj4+ IE92bWZNZXRhZGF0YS4NCj4gPiA+PiBZZXMuDQo+ID4gPj4NCj4gPiA+Pj4gSSBhbSB0aGlua2lu ZyB0aGVyZSB3aWxsIGFsd2F5cyBiZSBkaWZmZXJlbnQgZmllbGRzIGZvciBTRVYgYW5kIFREWC4N Cj4gPiA+Pj4gRm9yIGV4YW1wbGUsIFNFViBoYXMgUGNkT3ZtZlNlY0doY2JQYWdlVGFibGUgYnV0 IFREWCBkb2Vzbid0IG5lZWQNCj4gPiA+Pj4gdGhhdCBwYWdlLiBJZiB0aGUgY29tbW9uIE92bWZN ZXRhZGF0YSBpcyBjb25zdW1lZCBieSBURFgtUUVNVSwNCj4gdGhlbg0KPiA+ID4+PiBQY2RPdm1m U2VjR2hjYlBhZ2VUYWJsZUJhc2Ugd2lsbCBiZSBpbml0aWFsaXplZCB0b28uDQo+ID4gPj4+IFRo YXQgZG9lc24ndCBtYWtlIHNlbnNlLg0KPiA+ID4+IFdlIGhhdmUgZGlmZmVyZW50IHJhbmdlIHR5 cGVzLiAgT1ZNRl8qIGFyZSB0aGUgY29tbW9uIGFyZWFzLiAgU0VWXyoNCj4gPiA+PiB3aWxsIGJl IHVzZWQgYnkgc2V2IG9ubHksIFREWF8qIHdpbGwgYmUgdXNlZCBieSB0ZHggb25seS4gIFREWCBh bmQNCj4gPiA+PiBTRVYgZW50cmllcyBhcmUgYWxsb3dlZCB0byBvdmVybGFwLCBpLmUuIFBjZE92 bWZTZWNHaGNiUGFnZVRhYmxlQmFzZQ0KPiA+ID4+IHNob3VsZCBoYXZlIHNvbWUgU0VWXyogdHlw ZSBmb3Igc2V2IChJIHRoaW5rIHRoaXMgbmVlZHMgZml4aW5nIGluIHRoZQ0KPiA+ID4+IHNlcmll cyksIGFuZCB0ZHggY2FuIHVzZSB0aGUgcGFnZSBmb3Igc29tZXRoaW5nIGVsc2UgYnkgYWRkaW5n IGFuDQo+ID4gPj4gVERYXyogZW50cnkgZm9yIHRoZSBzYW1lIHJhbmdlLg0KPiA+ID4+DQo+ID4g Pj4+IEkgYW0gdGhpbmtpbmcgdGhhdCBTRVYgYW5kIFREWCBjYW4ga2VlcCB0aGVpciBvd24gTWV0 YWRhdGEgKGluDQo+ID4gPj4+IHNlcGFyYXRlIGZpbGVzLCBTZXZNZXRhZGF0YS5hc20gYW5kIFRk eE1ldGFkYXRhLmFzbSkgd2hpY2ggYXJlDQo+ID4gPj4+IHBvaW50ZWQgYnkgdGhlIFNFViBvciBU RFggb2Zmc2V0cyBpbiB0aGUgR1VJRC1lZCBjaGFpbiBpbiBSZXNldFZlY3Rvci4NCj4gPiA+PiBJ J2QgdmVyeSBtdWNoIHByZWZlciB0byBoYXZlIGEgc2luZ2xlIHRhYmxlIHRvIGF2b2lkIGR1cGxp Y2F0aW9uIGZvcg0KPiA+ID4+IHRoZSBjb21tb24gbWVtb3J5IGFyZWFzIGFuZCBrZWVwIHRoZSBy ZXNldCB2ZWN0b3Igc21hbGwuDQo+ID4gPj4NCj4gPiA+PiBIYXZpbmcgc2VwYXJhdGUgU2V2TWV0 YWRhdGEuYXNtICsgVGR4TWV0YWRhdGEuYXNtIGZpbGVzICh0aGVuIGhhdmUNCj4gPiA+PiBPdm1m TWV0YWRhdGEuYXNtIGluY2x1ZGUgdGhlc2UgdHdvKSBpcyBhbiBvcHRpb24uICBJIHRoaW5rIHRo aXMgaXNuJ3QNCj4gPiA+PiBuZWVkZWQsIHdlIGNhbiBhbHNvIGp1c3QgZ3JvdXAgdGhlIGVudHJp ZXMgaW4gT3ZtZk1ldGFkYXRhLmFzbS4NCj4gPiA+Pg0KPiA+ID4+PiBJbiB0aGlzIGNhc2UsIFNF ViBhbmQgVERYIGNhbiBkZXNpZ24gdGhlaXIgb3duIG1ldGFkYXRhIGZsZXhpYmx5LA0KPiA+ID4+ PiBmb3IgZXhhbXBsZSwgdGhlIGF0dHJpYnV0ZSwgdGhlIGl0ZW0gc3RydWN0dXJlLCBhZGQvcmVt b3ZlL3VwZGF0ZQ0KPiA+ID4+PiB0aGUgaXRlbXMsIGV0Yy4NCj4gPiA+PiBXaHkgaGF2ZSB0d28g d2F5cyB0byBkbyB0aGUgc2FtZSB0aGluZz8NCj4gPiA+Pg0KPiA+ID4+IHRha2UgY2FyZSwNCj4g PiA+PiAgIEdlcmQNCj4gPg0KPiA+DQo+ID4gDQo+ID4NCg0K