From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by mx.groups.io with SMTP id smtpd.web12.4391.1632403198121493262 for ; Thu, 23 Sep 2021 06:19:58 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=pzeHh43f; spf=pass (domain: intel.com, ip: 192.55.52.115, mailfrom: min.m.xu@intel.com) X-IronPort-AV: E=McAfee;i="6200,9189,10115"; a="223486783" X-IronPort-AV: E=Sophos;i="5.85,316,1624345200"; d="scan'208";a="223486783" Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 23 Sep 2021 06:19:56 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.85,316,1624345200"; d="scan'208";a="702710420" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by fmsmga006.fm.intel.com with ESMTP; 23 Sep 2021 06:19:56 -0700 Received: from orsmsx606.amr.corp.intel.com (10.22.229.19) by ORSMSX602.amr.corp.intel.com (10.22.229.15) 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:19:55 -0700 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx606.amr.corp.intel.com (10.22.229.19) 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:19:55 -0700 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.175) by edgegateway.intel.com (134.134.137.100) 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:19:55 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EG8VGu/M6iIpKMwCMb4VeAM6/1959JYV2aQT29JB3BorbDTuEJzkZLk/LudMFVmvkhHRZ1xqRbNhKhqUbsiES5/ft3CYJoIBgdvlNfWhEH1zUnImf1DoPa4rHdiPDx5QB6mVUzMSIUSqmlIcPMxnK1QDDQmhGK2oPeqbnveK2bCP5mcb7Dq5urUXVGg+NeSYM73bPY30bfhxxK8F//kb6UJ9lvcrPIyMOpiCSuMPzOOYX58AtYhvzMvtO/FdojEkv3Y++45+ykUkORg7Ho/CmnIg9mtWxHaqRQ+Qw8iRG6jFi3T3y+GIUmbFwQ87vsa7qIaXL3XnBtvFhzo/a4m7lQ== 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=HzRWmdBIWrqzNp2/3KrTrqYKiWkkpkIFsozFC5lEmOg=; b=SXphvstvl5gz0HmPSmxUufFcpUuDD9Th4h29COo33CMI20oGAk4wpT4GKGxvPY9VobcDwuHl8LcBKZKr5le/Z7CFyZmd08ikggprfdnGWHJQ6ICcTH5HW4PlkYWGVceh+2JO+5Wc+KgJTmmqaw5yFLTlsj4zJmJ7UGn3VQOpNGnSH4J+0HfJo/+S8EclftRb9t6E0U4q/cJeFDw3atITvO/f+TZsf8jzZFv4WOVqQxH7odI7if4463Zp4SJzM1GV6se8V7zQJ8Twh8qO4HVmrStvJI7HLFki4Zot+ue1QIytaF9V4l7wIklnkeB5S/ngaFDfB2PAxHPKAeFdh9plYg== 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=HzRWmdBIWrqzNp2/3KrTrqYKiWkkpkIFsozFC5lEmOg=; b=pzeHh43f8eJ1x1vEX9yYBlwbnyQuWHNRrwdtla5MQBA1bZP3JAek0+Ui7zRnNUJEL3OwyCD14ZaYPOnNZbhJ+ueF9xgHlc7vcTak+Vw69dqqgGFmSaNHAKq2qocywwXw6kUa9Rct2Bb3MK9c1lQHFNs70/c+aZdB9IS6Yx3CeuM= Received: from PH0PR11MB5064.namprd11.prod.outlook.com (2603:10b6:510:3b::15) by PH0PR11MB5094.namprd11.prod.outlook.com (2603:10b6:510:3f::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4544.13; Thu, 23 Sep 2021 13:19:48 +0000 Received: from PH0PR11MB5064.namprd11.prod.outlook.com ([fe80::c93:200e:5aeb:e11b]) by PH0PR11MB5064.namprd11.prod.outlook.com ([fe80::c93:200e:5aeb:e11b%3]) with mapi id 15.20.4415.029; Thu, 23 Sep 2021 13:19:48 +0000 From: "Min Xu" To: "devel@edk2.groups.io" , "brijesh.singh@amd.com" , "Yao, Jiewen" , 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: AQHXrsfvMPrievJgoEGG0tDgpJPsrauvry6AgAAIPYCAAZqLgIAAL+cAgAAU7QCAAAKEQA== Date: Thu, 23 Sep 2021 13:19:48 +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: <7c9aeb95-5c33-bd8d-4f0c-40133f4c7c3d@amd.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.200.16 authentication-results: edk2.groups.io; dkim=none (message not signed) header.d=none;edk2.groups.io; dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: ed8aa24c-5466-4e7d-acb6-08d97e94d170 x-ms-traffictypediagnostic: PH0PR11MB5094: 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-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: YEF8pzCA46AphRpguavfKfL+JvtZzid+RfS9/ARmqE6JZIOwFhTZC2qSCOtzH09WKEuLjI8+BuHjT10MQ8ZzsmWI99jbPB0g+GjTYRV841jHK9lriH1XD7G6PK4LRPkx6v9OwI7l/HK4D2KX8TWtFjiRl+pO3iTL+FAQlHaudsMEolPeJGud8Gcr1VUT2k+Md1/Xt+COYTnmTtsfhtEFtLaSqL3o8LrumWMY1ZlVFAwt6pveThWQx+Bfjg3o4bUVw4N9P61VY615cBQ4oLeYYQqfTuYx95e4Q+f3cjOGFtcc1snB76IQ5xbhx4C+l5CjF+PcHwYjzKcYw/Us61np///2P3mK0NUW+B7V1duyXsTt51H8DWBJcN3BCXZ5I7EIyRm5cFdnJE+ALRdciZJvAyIVf/OPUzDqigZUyKolPSUkXtqmQSvnWykumWTEqkO+onhJmNHqnxT8mQKQ2oy0kntz9BcfVUk20ORD9uecDtIv5RpLDqQmdV+PxiWp4mFwmMHVK78wC2W1R/3HuSXhjQ8xN7GqsmIh7LlxgdaIIWcY43ZWvsFTqlxBKVdeqSywgx6VAd1zMca0jtnzHItqnTs20Vfqo4Swb2FTEvnWaSR8C2HLGZUaQ0Q2kql6t48cJ9j4IVgofQjQ7VfTLSUpfW6e3GPVBuTxamidcSzSHGVqZWvASfsvtBmFde5PUoVi/rRkoxMQagcxZXiFiNeegQS7JbnUMfg3UkJLEf9mYoVGouPvxb3uLrcpQPzo6Wm95uN/nn/2nS/s7svH2ccPndF7ZfzkUuyMX1uvU1UsibjWx4LPNTMMwHONcBaAsfIo6yotbMrrwfTOcJgukEtuvv3RBrXUy8Hssx6OSarBpvc= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH0PR11MB5064.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(76116006)(55016002)(86362001)(66946007)(6506007)(9686003)(7696005)(83380400001)(26005)(966005)(38070700005)(316002)(186003)(33656002)(53546011)(508600001)(38100700002)(122000001)(71200400001)(8936002)(4326008)(64756008)(66556008)(66446008)(8676002)(5660300002)(2906002)(66476007)(52536014)(54906003)(110136005)(21314003);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?SEtGWmtmR1hMYnV1Y1J3WERmVEFUckVpekJYK2ZJbHRnaEVnYlQ3aFVLUGJ5?= =?utf-8?B?NlFIUE5maUxyS25id3phV3czblpsS1VQZVRyZHRtRmlYSmt6anBOVXdKY1Zs?= =?utf-8?B?MzU4M2lPdlhWdStyN0ZBVmwvcVlPY3p3YTdCbGI1NytEY2ZyMzJMdkZMOC9l?= =?utf-8?B?MURPNGtYVDh0OVVFMUV1RDlrQ0ZXM1RwcEwyQmxtYm4rUHVmWEJXWFlGaStN?= =?utf-8?B?NzdLRnhXT2tzZkNnMWQ3eXVLcDJ6N1dSUExIbHZFQWs2Ui85QUNmdUpFWkNs?= =?utf-8?B?SEplOUpGL3RMUG1sT2lCWm5kbUZMdjNjZUR1MWk4Vm1CY1JZWmZ1bk1EejRv?= =?utf-8?B?R1M4T1lBUXJwcE9DZmZFQmtITTN4b21HYkpGdHNGL3Y4eG1FbmpRbGdacWky?= =?utf-8?B?emxDSFhiNzZZNmdXN2FLcXdjcXJRRUJqaFZlOE5aTmZvNU5GejJKYWlZVS9q?= =?utf-8?B?UkY2UzNjSktmb1p4NVZMV2FzMmZJUDBwRm5FNy9DdkRaNXhiTVZYYVY5VHdZ?= =?utf-8?B?S2JaNG9TdEQ5Ri9kS2xhc1IyV1R4Qm9ldFhnZjNha2ZLdDdmZmhzelVxMGlX?= =?utf-8?B?U0tzTEFUMkV4ci83NGZzaUQrbmRmRktXVE1pZ1pXREdCK1RSSTh4MnhmWlho?= =?utf-8?B?MXgzY0g1Y0tjTVhRYmV3QmR0NkdNd1Y4STZ4RDFVOEVBYU1XbGt3RmVwWEcx?= =?utf-8?B?dnZ2aHNFVFpkaG9RSnFBbGI3MkFQbFp1VmpWa1M4ZEZ5aEZlNzd6T0ZVNHlG?= =?utf-8?B?RzdPVnA0T1NrZk1tY2ltWjFuYmZHQnc5bEl4Ymw4QVN5cGR0ckZDZEUxNnov?= =?utf-8?B?b2c1MlI0K0k1ZU90dlUvT2dWN1p0ZStoMEUrbG9PUzFCd21LNkxxOEsyRXJF?= =?utf-8?B?U0puaUtVTksyOXNnMVBVdjA4b3pBUWw0K29NK0pCM1YwSVRxOWhINGNzNTBo?= =?utf-8?B?ZDEzR3NiOUNzZVBNZjdnZkp4Q0J1d05RaHg2bDZDQmpmT0tWWGIyQ0pJTm15?= =?utf-8?B?VnNKdFM0cGozempEVThaWVVNMUtacW93bHM0MTM4WHV0Nm43NmtDdEEybHBs?= =?utf-8?B?aWlmTm9WVm5UZHAzWkQ4ZjZEcWdjNDJLQWZSRGpqa1UvQkp2NU1hRHNBblA1?= =?utf-8?B?VjhuYVd4SFdrMnZLR3JEcXQyL1cwZVpUTWh1czdQMHNoK3dvQzV4ZWRQbWxn?= =?utf-8?B?dnMwM3EwT0hMa29TbCtMTS93dkxsUTRNS20ycTJXeS9RK2Q1Um1zWHJ3azc4?= =?utf-8?B?VTRnMmZ3dENtZTM2TmRjdENyNUQ2UDNkL29qWGZUbTRldjgxQ3RiL3crN0Vx?= =?utf-8?B?VEh6bXk1dTFjNnh0ZDVWbkVvUDMzMTRCdzFEdXVvQ2ZPK0M2Zm93aXRGejNq?= =?utf-8?B?WXhrUWJjcDZiY2JqZzk1MkxGa3ZCYlpKWEhrdW0yZjU2TGZjTzBqMmlEdytS?= =?utf-8?B?bUtndno3L1ZMcUs2YktwYmxwemVWb3NVRU9RQ09uWDk4VEpTQm9tK2NqbEJK?= =?utf-8?B?SXZpMHBLMm4veTlnVEV3UFhGMU9BRlJsVFEvd09PRjUzNHZQcytSWGFKNEdr?= =?utf-8?B?OG44a3drK3RtTWxlQ0luUzhFMm1ncWJuUjFhNDJqMGwxRURsZ0E3YXArOSti?= =?utf-8?B?YlhuTEc1MDg5WjVDWUhWaGRwK3dMdnJSQk1kQXUyak9EUkozbmVOS0cveWVE?= =?utf-8?B?Yk9kMnhCcURobDhPcGVtWENPUDIrYVB3VWg5ckpVMGc5Skk2SklMajVlQ2dZ?= =?utf-8?Q?/2f8WKqVoiRjBdhD1pCWAacnuembBU0qIv+PB54?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH0PR11MB5064.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ed8aa24c-5466-4e7d-acb6-08d97e94d170 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Sep 2021 13:19:48.2084 (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: I6aJihe8hL+nYtxnCa/iyDJu+b3D+Tnk2IQoWXV3bxG20ZMxITSqhl6WA0RLmau7hkAuhSTpXuJMEHGMcD8PFQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB5094 Return-Path: min.m.xu@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SSBzdWdnZXN0IFNFViBhbmQgVERYIGtlZXAgdGhlaXIgb3duIG1ldGFkYXRhIGluIHNlcGFyYXRl IGZpbGVzLiBUaGlzIGlzIGJlY2F1c2UgU0VWIGFuZCBURFggaGFzIGRpZmZlcmVudCBpdGVtIHN0 cnVjdHVyZS4NCg0KRnJvbSB0aGUgT3ZtZk1ldGFkYXRhIGRlZmluaXRpb24gaW4gU0VWIChodHRw czovL2dpdGh1Yi5jb20vQU1ERVNFL292bWYvYmxvYi9zbnAtdjgvT3ZtZlBrZy9SZXNldFZlY3Rv ci9YNjQvT3ZtZk1ldGFkYXRhLmFzbSkgdGhlcmUgYXJlIDMgZmllbGRzIGluIHRoZSBpdGVtLiAo QmFzZS9TaXplL1R5cGUpLiANCg0KQnV0IGZvciBURFgsIHRoZXJlIGFyZSA2IGZpZWxkcyAoRGF0 YU9mZnNldC9SYXdEYXRhU2l6ZS9NZW1vcnlBZGRyZXNzL01lbW9yeVNpemUvVHlwZS9BdHRyaWJ1 dGUpIGluIG9uZSBpdGVtLiANClRoYXQgaXMgYmVjYXVzZSBURFgtUUVNVSBub3Qgb25seSBpbml0 aWFsaXplIHRoZSBtZW1vcnkgcmVnaW9uLCBidXQgYWxzbyBkb2VzIG1vcmUgdGFza3MgKG1lYXN1 cmVtZW50KSBpZiB0aGUgQXR0cmlidXRlIGluZGljYXRlcy4NCkRhdGFPZmZzZXQvUmF3RGF0YVNp emUgaXMgdXNlZCBieSB0aGUgVERYLVFFTVUgdG8gZG8gdGhlIG1lYXN1cmVtZW50IGlmIHRoZSBB dHRyaWJ1dGUgZmllbGQgaXMgTVIuRVhURU5ELiANCk1lbW9yeUFkZHJlc3MvTWVtb3J5U2l6ZSBp bmRpY2F0ZXMgdGhlIFREWC1RRU1VIGhvdyB0byBpbml0aWFsaXplIHRoZSBtZW1vcnkgcmVnaW9u Lg0KDQpXZSBjYW4gYWRkIG1vcmUgZmllbGRzIGluIHRoZSBpdGVtIHRvIG1ha2UgaXQgd29ya2Fi bGUgZm9yIGJvdGggU0VWIGFuZCBURFgsIChmb3IgZXhhbXBsZSwgYWRkIERhdGFPZmZzZXQvUmF3 RGF0YVNpemUvQXR0cmlidXRlKSwgYnV0IGl0IGFsc28gcmVzdHJpY3QgdGhlIGNoYW5nZXMgaW4g dGhlIGZ1dHVyZSBpZiBtb3JlIGZpZWxkcyBpcyBuZWVkZWQgKFREWCdzIGNoYW5nZSB3aWxsIGlt cGFjdCB0aGUgZXhpc3RpbmcgU0VWLVFFTVUpLg0KDQpPbiBTZXB0ZW1iZXIgMjMsIDIwMjEgODo1 NSBQTSwgQnJpamVzaCBTaW5naCB3cm90ZToNCj4gDQo+IExpa2UgR2VyZCBJIHdvdWxkIHByZWZl ciB0byBoYXZlIG9uZSBtZXRhZGF0YSB0YWJsZSBpbiB0aGUgcmVzZXQgR1VJRC4NCj4gVGhlIG1l dGFkYXRhIHRhYmxlIHdpbGwgY29udGFpbiBtdWx0aXBsZSBlbnRyaWVzOyBsb3Qgb2YgZW50cmll cyBhcmUgY29tbW9uDQo+IGJldHdlZW4gU05QIGFuZCBURFguIFNvbWUgZW50cmllcyB3aWxsIGhh dmUgc3BlY2lmaWMgbWVhbmluZyBmb3IgdGhlIHBsYXRmb3JtLg0KPiBUaG9zZSBzcGVjaWFsIGVu dHJpZXMgc2hvdWxkIGJlIG1hcmtlZCB1c2luZyB0aGUNCj4gT1ZNRl9TRUNUSU9OX1RZUEVfe1RE WCxTTlB9X1hYWFguIEl0IGlzIHBlcmZlY3RseSBmaW5lIHRvIGhhdmUgYSBtb3JlIHRoYW4NCj4g b25lIGVudHJ5IGZvciB0aGUgc2FtZSByZWdpb24gd2l0aCBkaWZmZXJlbnQgdHlwZSwgZS5nDQo+ IA0KPiBHaGNiQm9va2tlZXBpbmdTbnA6DQo+IA0KPiDCoCBHSENCX0JPT0tLRVBJTkdfQkFTRV9B RERSRVNTDQo+IA0KPiDCoCBHSENCX0JPT0tLRUVQSU5HX1NJWkUNCj4gDQo+IMKgIE9WTUZfU0VD VElPTl9UWVBFX1NOUF9NRU0NCj4gDQo+IFRkeE1haWxCb3hFeHQ6DQo+IA0KPiDCoCBHSENCX0JP T0tLRVBJTkdfQkFTRV9BRERSRVNTDQo+IA0KPiDCoCBHSENCX0JPT0tLRUVQSU5HX1NJWkUNCj4g DQo+IMKgIE9WTUZfU0VDVElPTl9UWVBFX1REWF9NQUlMQk9YDQo+IA0KPiBJZiB3ZSB3YW50IGFs bCB0aGUgT1ZNRl9TRUNUSU9OX1RZUEVfU05QX3h4eCBzaG91bGQgYmUgZGVmaW5lZCBpbiBhDQo+ IHNlcGFyYXRlIGZpbGUgdGhlbiB0aGF0IGlzIGFsc28gZG9hYmxlLiBJIHB1dCBldmVyeXRoaW5n IGluIG9uZSBwbGFjZSBiZWNhdXNlIEkgd2FzDQo+IHRyeWluZyB0byBrZWVwIGVudHJ5IG9yZGVy IHNpbWlsYXIgdG8gd2hhdCBpcyBwcmVzZW50IGluIE1FTUZELg0KPiANCj4gdGhhbmtzDQo+IA0K PiBPbiA5LzIzLzIxIDY6MzkgQU0sIFlhbywgSmlld2VuIHdyb3RlOg0KPiA+IEkgc3Ryb25nbHkg cmVjb21tZW5kIHRvIHNlcGFyYXRlIFNFViBhbmQgVERYIGluIGFsbCBjb250ZXh0LCBpZiBpdCBp cyBzb21ldGhpbmcNCj4gU0VWIG9yIFREWCBzcGVjaWZpYy4NCj4gPiBUaGVuIGVhY2ggZmlsZSBo YXMgY2xlYXIgb3duZXJzaGlwLg0KPiA+IElmIGl0IGlzIHNvbWV0aGluZyBnZW5lcmljIGZvciBi b3RoIFNFViBhbmQgVERYLCBpdCBjYW4gaW4gb25lIGZpbGUuDQo+ID4NCj4gPiBGb3IgZXhhbXBs ZSwgU2VjUGVpVGVtcFJhbS9TZWNQYWdlVGFibGUgY2FuIGJlIGluIGNvbW1vbiBmaWxlLg0KPiA+ IEJ1dCBTZXZTbnBTZWNyZXRzL0doY2JCb29ra2VlcGluZyBzaG91bGQgYmUgaW4gU0VWIGZpbGUu DQo+ID4NCj4gPiBUaGFuayB5b3UNCj4gPiBZYW8gSmlld2VuDQo+ID4NCj4gPj4gLS0tLS1Pcmln aW5hbCBNZXNzYWdlLS0tLS0NCj4gPj4gRnJvbTogR2VyZCBIb2ZmbWFubiA8a3JheGVsQHJlZGhh dC5jb20+DQo+ID4+IFNlbnQ6IFRodXJzZGF5LCBTZXB0ZW1iZXIgMjMsIDIwMjEgNDo0OCBQTQ0K PiA+PiBUbzogWHUsIE1pbiBNIDxtaW4ubS54dUBpbnRlbC5jb20+DQo+ID4+IENjOiBkZXZlbEBl ZGsyLmdyb3Vwcy5pbzsgQXJkIEJpZXNoZXV2ZWwgPGFyZGIrdGlhbm9jb3JlQGtlcm5lbC5vcmc+ Ow0KPiA+PiBKdXN0ZW4sIEpvcmRhbiBMIDxqb3JkYW4ubC5qdXN0ZW5AaW50ZWwuY29tPjsgQnJp amVzaCBTaW5naA0KPiA+PiA8YnJpamVzaC5zaW5naEBhbWQuY29tPjsgRXJkZW0gQWt0YXMgPGVy ZGVtYWt0YXNAZ29vZ2xlLmNvbT47IEphbWVzDQo+ID4+IEJvdHRvbWxleSA8amVqYkBsaW51eC5p Ym0uY29tPjsgWWFvLCBKaWV3ZW4gPGppZXdlbi55YW9AaW50ZWwuY29tPjsNCj4gPj4gVG9tIExl bmRhY2t5IDx0aG9tYXMubGVuZGFja3lAYW1kLmNvbT4NCj4gPj4gU3ViamVjdDogUmU6IFtQQVRD SCBWNyAxLzFdIE92bWZQa2c6IEVuYWJsZSBURFggaW4gUmVzZXRWZWN0b3INCj4gPj4NCj4gPj4g T24gVGh1LCBTZXAgMjMsIDIwMjEgYXQgMTI6Mzg6MjRBTSArMDAwMCwgWHUsIE1pbiBNIHdyb3Rl Og0KPiA+Pj4gT24gU2VwdGVtYmVyIDIyLCAyMDIxIDM6NDkgUE0sIEdlcmQgSG9mZm1hbm4gd3Jv dGU6DQo+ID4+Pj4gICBIaSwNCj4gPj4+Pg0KPiA+Pj4+PiArJWlmZGVmIEFSQ0hfWDY0DQo+ID4+ Pj4+ICs7DQo+ID4+Pj4+ICs7IFREWCBNZXRhZGF0YSBvZmZzZXQgYmxvY2sNCj4gPj4+Pj4gKzsN Cj4gPj4+Pj4gKzsgVGR4TWV0YWRhdGEuYXNtIGlzIGluY2x1ZGVkIGluIEFSQ0hfWDY0IGJlY2F1 c2UgSW50ZSBURFggaXMNCj4gPj4+Pj4gK29ubHkgOyBhdmFpbGFibGUgaW4gQVJDSF9YNjQuIEJl bG93IGJsb2NrIGRlc2NyaWJlcyB0aGUgb2Zmc2V0IG9mDQo+ID4+Pj4+ICs7IFRkeE1ldGFkYXRh IGJsb2NrIGluIE92bWYgaW1hZ2UgOyA7IEdVSUQgOg0KPiA+Pj4+PiArZTQ3YTY1MzUtOTg0YS00 Nzk4LTg2NWUtNDY4NWE3YmY4ZWMyDQo+ID4+Pj4+ICs7DQo+ID4+Pj4+ICt0ZHhNZXRhZGF0YU9m ZnNldFN0YXJ0Og0KPiA+Pj4+PiArICAgIEREICAgICAgdGR4TWV0YWRhdGFPZmZzZXRTdGFydCAt IFRkeE1ldGFkYXRhR3VpZCAtIDE2DQo+ID4+Pj4+ICsgICAgRFcgICAgICB0ZHhNZXRhZGF0YU9m ZnNldEVuZCAtIHRkeE1ldGFkYXRhT2Zmc2V0U3RhcnQNCj4gPj4+Pj4gKyAgICBEQiAgICAgIDB4 MzUsIDB4NjUsIDB4N2EsIDB4ZTQsIDB4NGEsIDB4OTgsIDB4OTgsIDB4NDcNCj4gPj4+Pj4gKyAg ICBEQiAgICAgIDB4ODYsIDB4NWUsIDB4NDYsIDB4ODUsIDB4YTcsIDB4YmYsIDB4OGUsIDB4YzIN Cj4gPj4+Pj4gK3RkeE1ldGFkYXRhT2Zmc2V0RW5kOg0KPiA+Pj4+PiArDQo+ID4+Pj4+ICslZW5k aWYNCj4gPj4+PiBUaGlzIHNob3VsZCBiZSBzd2l0Y2hlZCB0byBjb21tb24gb3ZtZiBtZXRhZGF0 YSAoc2VlIHBhdGNoZXMgNC03IG9mDQo+ID4+Pj4gdGhlIFNFVi1TTlAgc2VyaWVzKS4NCj4gPj4+ Pg0KPiA+Pj4+IE1pbjogcGxlYXNlIGhhdmUgYSBsb29rIGF0IHRoZXNlIHBhdGNoZXMuDQo+ID4+ Pj4NCj4gPj4+IEhpLCBHZXJkDQo+ID4+PiBJIGNoZWNrZWQgdGhlIHBhdGNoZXMgNC03IG9mIHRo ZSBTRVYtU05QIHNlcmllcy4gVGhlIGNvbW1vbg0KPiA+Pj4gT3ZtZk1ldGFkYXRhIGlzIGRlc2ln bmVkIGZvciBib3RoIFNFViBhbmQgVERYLCByaWdodD8NCj4gPj4gVGhhdCBpcyB0aGUgaWRlYSwg eWVzLg0KPiA+Pg0KPiA+Pj4gSWYgc28sIHRoZW4gaXQgbWVhbnMgdGhlIFNFViBhbmQgVERYIG1l dGFkYXRhIHdpbGwgYmUgbWl4ZWQgaW4gdGhpcw0KPiA+Pj4gT3ZtZk1ldGFkYXRhLg0KPiA+PiBZ ZXMuDQo+ID4+DQo+ID4+PiBJIGFtIHRoaW5raW5nIHRoZXJlIHdpbGwgYWx3YXlzIGJlIGRpZmZl cmVudCBmaWVsZHMgZm9yIFNFViBhbmQgVERYLg0KPiA+Pj4gRm9yIGV4YW1wbGUsIFNFViBoYXMg UGNkT3ZtZlNlY0doY2JQYWdlVGFibGUgYnV0IFREWCBkb2Vzbid0IG5lZWQNCj4gPj4+IHRoYXQg cGFnZS4gSWYgdGhlIGNvbW1vbiBPdm1mTWV0YWRhdGEgaXMgY29uc3VtZWQgYnkgVERYLVFFTVUs IHRoZW4NCj4gPj4+IFBjZE92bWZTZWNHaGNiUGFnZVRhYmxlQmFzZSB3aWxsIGJlIGluaXRpYWxp emVkIHRvby4NCj4gPj4+IFRoYXQgZG9lc24ndCBtYWtlIHNlbnNlLg0KPiA+PiBXZSBoYXZlIGRp ZmZlcmVudCByYW5nZSB0eXBlcy4gIE9WTUZfKiBhcmUgdGhlIGNvbW1vbiBhcmVhcy4gIFNFVl8q DQo+ID4+IHdpbGwgYmUgdXNlZCBieSBzZXYgb25seSwgVERYXyogd2lsbCBiZSB1c2VkIGJ5IHRk eCBvbmx5LiAgVERYIGFuZA0KPiA+PiBTRVYgZW50cmllcyBhcmUgYWxsb3dlZCB0byBvdmVybGFw LCBpLmUuIFBjZE92bWZTZWNHaGNiUGFnZVRhYmxlQmFzZQ0KPiA+PiBzaG91bGQgaGF2ZSBzb21l IFNFVl8qIHR5cGUgZm9yIHNldiAoSSB0aGluayB0aGlzIG5lZWRzIGZpeGluZyBpbiB0aGUNCj4g Pj4gc2VyaWVzKSwgYW5kIHRkeCBjYW4gdXNlIHRoZSBwYWdlIGZvciBzb21ldGhpbmcgZWxzZSBi eSBhZGRpbmcgYW4NCj4gPj4gVERYXyogZW50cnkgZm9yIHRoZSBzYW1lIHJhbmdlLg0KPiA+Pg0K PiA+Pj4gSSBhbSB0aGlua2luZyB0aGF0IFNFViBhbmQgVERYIGNhbiBrZWVwIHRoZWlyIG93biBN ZXRhZGF0YSAoaW4NCj4gPj4+IHNlcGFyYXRlIGZpbGVzLCBTZXZNZXRhZGF0YS5hc20gYW5kIFRk eE1ldGFkYXRhLmFzbSkgd2hpY2ggYXJlDQo+ID4+PiBwb2ludGVkIGJ5IHRoZSBTRVYgb3IgVERY IG9mZnNldHMgaW4gdGhlIEdVSUQtZWQgY2hhaW4gaW4gUmVzZXRWZWN0b3IuDQo+ID4+IEknZCB2 ZXJ5IG11Y2ggcHJlZmVyIHRvIGhhdmUgYSBzaW5nbGUgdGFibGUgdG8gYXZvaWQgZHVwbGljYXRp b24gZm9yDQo+ID4+IHRoZSBjb21tb24gbWVtb3J5IGFyZWFzIGFuZCBrZWVwIHRoZSByZXNldCB2 ZWN0b3Igc21hbGwuDQo+ID4+DQo+ID4+IEhhdmluZyBzZXBhcmF0ZSBTZXZNZXRhZGF0YS5hc20g KyBUZHhNZXRhZGF0YS5hc20gZmlsZXMgKHRoZW4gaGF2ZQ0KPiA+PiBPdm1mTWV0YWRhdGEuYXNt IGluY2x1ZGUgdGhlc2UgdHdvKSBpcyBhbiBvcHRpb24uICBJIHRoaW5rIHRoaXMgaXNuJ3QNCj4g Pj4gbmVlZGVkLCB3ZSBjYW4gYWxzbyBqdXN0IGdyb3VwIHRoZSBlbnRyaWVzIGluIE92bWZNZXRh ZGF0YS5hc20uDQo+ID4+DQo+ID4+PiBJbiB0aGlzIGNhc2UsIFNFViBhbmQgVERYIGNhbiBkZXNp Z24gdGhlaXIgb3duIG1ldGFkYXRhIGZsZXhpYmx5LA0KPiA+Pj4gZm9yIGV4YW1wbGUsIHRoZSBh dHRyaWJ1dGUsIHRoZSBpdGVtIHN0cnVjdHVyZSwgYWRkL3JlbW92ZS91cGRhdGUNCj4gPj4+IHRo ZSBpdGVtcywgZXRjLg0KPiA+PiBXaHkgaGF2ZSB0d28gd2F5cyB0byBkbyB0aGUgc2FtZSB0aGlu Zz8NCj4gPj4NCj4gPj4gdGFrZSBjYXJlLA0KPiA+PiAgIEdlcmQNCj4gDQo+IA0KPiANCj4gDQoN Cg==