From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by mx.groups.io with SMTP id smtpd.web11.3272.1588818529551255935 for ; Wed, 06 May 2020 19:28:50 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=sQM4g5bE; spf=pass (domain: intel.com, ip: 134.134.136.126, mailfrom: eric.dong@intel.com) IronPort-SDR: FGSMmik0+E4s0QbqKFLNzugWz6Sb6DLus1LjbDG/ZHUdj3sEhFwPTm/QC9DRI0+tKemHun+uo4 iWPbBhJxTwEA== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 May 2020 19:28:49 -0700 IronPort-SDR: VlV8LofQBz3NxjWUdP5TZy/ujeo5vw8Bu7l/SceNtW9nAztVrpU7xwin+oEfA/Zhs7q3ce8GIw GAEsA1jQkcNg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,361,1583222400"; d="scan'208";a="304984636" Received: from fmsmsx106.amr.corp.intel.com ([10.18.124.204]) by FMSMGA003.fm.intel.com with ESMTP; 06 May 2020 19:28:48 -0700 Received: from fmsmsx603.amr.corp.intel.com (10.18.126.83) by FMSMSX106.amr.corp.intel.com (10.18.124.204) with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 6 May 2020 19:28:48 -0700 Received: from fmsmsx604.amr.corp.intel.com (10.18.126.84) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Wed, 6 May 2020 19:28:48 -0700 Received: from FMSEDG002.ED.cps.intel.com (10.1.192.134) by fmsmsx604.amr.corp.intel.com (10.18.126.84) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256) id 15.1.1713.5 via Frontend Transport; Wed, 6 May 2020 19:28:48 -0700 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.169) by edgegateway.intel.com (192.55.55.69) with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 6 May 2020 19:28:45 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FGfLtBjlfwq46tWlpQ+OX5bZVQDFuh9nXgaI+5grPJSPGi5tRsVyP0zAYO0sJjUmjm6pMsRW4cuRcaYugWwiH9ng6jja5TH0h2ceA9oWiYUeHWmQUB4KLX6oAC119jx5yPWQ8DFISFqybdEOigGQ1gedSeoovIZk11G4jGq9KW0/Bf6qU1+okHbNOsuF/DV7LSxNIu8AgDmVrrivUghPE4TNd8Nu+nea1l39EJYFeb2KW104q7nLsESwOTzdQfCAwd8OAuXJkIexQrBCvZB8cXAPiGc/b2zCAwDirScgChtBrbEsjWtWR+6Nh/G+h62TzbB3SeKicIZ+IKqDBuNb8A== 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-SenderADCheck; bh=tf+wPn1UvFLwbNwJ847rwe1bVURcf6x2vLxnxlwvAAw=; b=JdaJFPVD6gDACIyFJQtysMH6KC6WgSzrQEyttoK2Um3bcQjNCJV1yTi4s4DWP3Z3Fxee5On5rrbxKmzIjtBp+w+OeT+rDzFe0eEKDervoQ02Eiqt/GfEI2y4SNc33uLiMEXLL/tQqs1F6xm4v1ni4l9BEi7YjofDmOYibo0DcWjg0uNAIT9haRBZeIklPdFWyauBWdvaQjs7i7Q24whYPIy85ucXAYzHv/B/rDxqT3BZ6HuWGNq0RBHmg8GjwU1eyuLAWbDku4T/BX3UXPFYvv3y5XPl3wVPRTyWC6kaJSvNU200oRKELApaFC9uSLXeGi1Po6efsVRPV2vpKcGUOg== 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=tf+wPn1UvFLwbNwJ847rwe1bVURcf6x2vLxnxlwvAAw=; b=sQM4g5bEO4v2ILDorN/SE08MNiwU4dYovWsil/IwQgwm0z6na1vYAtRvbdMXJ+2di/ufhMVz+d28pvCIMi01Uey8Fu2EoQEZWk2vsvR60fDQ4subLSLriHmep/eAmHkf9sDNMGaC90QRvTh+qLscix04PA9FC61Bt41Gj2LVMOk= Received: from DM6PR11MB3274.namprd11.prod.outlook.com (2603:10b6:5:b::26) by DM6PR11MB2939.namprd11.prod.outlook.com (2603:10b6:5:70::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2958.27; Thu, 7 May 2020 02:28:43 +0000 Received: from DM6PR11MB3274.namprd11.prod.outlook.com ([fe80::e1d1:a495:9826:f88b]) by DM6PR11MB3274.namprd11.prod.outlook.com ([fe80::e1d1:a495:9826:f88b%3]) with mapi id 15.20.2979.028; Thu, 7 May 2020 02:28:43 +0000 From: "Dong, Eric" To: Tom Lendacky , "devel@edk2.groups.io" , "lersek@redhat.com" CC: "Justen, Jordan L" , Ard Biesheuvel , "Kinney, Michael D" , "Gao, Liming" , "Ni, Ray" , Brijesh Singh , "Wang, Jian J" , "Wu, Hao A" Subject: Re: [edk2-devel] [PATCH v7 01/43] MdeModulePkg: Create PCDs to be used in support of SEV-ES Thread-Topic: [edk2-devel] [PATCH v7 01/43] MdeModulePkg: Create PCDs to be used in support of SEV-ES Thread-Index: AQHWGM1pL5n8c77RvEKHgNe+rGnzSaiUYqrggAMXLgCAAIkO8P//qyoAgAF+L4CAAS5ksIAAP6IAgACdqqCAAEAOAIAAgkqg Date: Thu, 7 May 2020 02:28:43 +0000 Message-ID: References: <3af2e4a8-fa4d-bb29-a282-c406ada7cf06@amd.com> <66c3ab32-0b1c-676b-2924-f14214be5de6@redhat.com> <226c8566-6550-613c-e07c-636686a851f9@amd.com> <13992141-8be7-bdb4-e104-9036dddbb04d@amd.com> In-Reply-To: <13992141-8be7-bdb4-e104-9036dddbb04d@amd.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: amd.com; dkim=none (message not signed) header.d=none;amd.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.102.204.45] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 79f67f50-d400-4838-7157-08d7f22e5ceb x-ms-traffictypediagnostic: DM6PR11MB2939: 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:7691; x-forefront-prvs: 03965EFC76 x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: Lcj7syXaHUlPF91GJwfA/L71KnoOV/EEafeBah+hDyNzWZqBjykkg1p+63CP1Pj/0tMGt18yAW9uc4QOMMbsOhJKpT5jFT2EcvWewYhkUQFCRbgxDI7xSWoM/8/Sses7kny4VqbyG4YjH0gF62Uasc5nCmf38fVFS5ESmgjT8NZ76kcDJdbGqOlqBs2HRW3JU+3x5WwjCArPrF/lxuTJ4Yw2zmTC3m6EESdvCkcuapKC8qogfEgX4gVmRJJpeFYMlVV6rsG2Iq4aixPKrsLd1XqA8IMiniiv64KShkRNZx8cGfYgIDH4VyakNLuP6h3d68939BFXKWZ09y3ffH+AO4lJ6WPoe639NmIRYbMDbmIQzeawzr/lYT40dsJ8RC3+yqWsUXOy3EtGRR6CNjL7pVSicRS288FlM2EDoOh6G9ryifcsVLYHy928a43ZIFAd3YCtDVpJFo7fQsk9DkZ4svAfZPDnVMEWORYydCqF2YIqoXUooP/oJ1UWzEDW3kwHXT80vAGT3PtiHPvjrloyXcmNvTmBlrB+ggwstxDVBq2xbrWK5bYS+6PiesSl+LKcjU2U7E/jz7LH3jBaMSIHw69ofmJiY47B6Zz+Tpn/ov4= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR11MB3274.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFTY:;SFS:(376002)(346002)(366004)(39860400002)(136003)(396003)(33430700001)(966005)(6506007)(76116006)(8936002)(8676002)(478600001)(86362001)(71200400001)(52536014)(66556008)(83290400001)(83280400001)(83320400001)(83310400001)(83300400001)(2906002)(45080400002)(66946007)(64756008)(66476007)(83080400001)(186003)(66446008)(5660300002)(26005)(7696005)(55016002)(30864003)(107886003)(33656002)(9686003)(53546011)(316002)(110136005)(33440700001)(19627235002)(4326008)(54906003);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: yepdD+HZHB0c6g8OQ5G+72MPIMr8q/6QF4mXi1zbTw+mePcma1bwis7gdAzvLVMaTir91bs/Zukz1k+BLBqEdAcsHBGw0t6c04QHhxlsSA7lfiNEbt6AG4O3vNQCS62Sc48/WZOku39XtN35SDpVG+s+5hZ5KWYpjjhoo/7aTjWvg4kCN7jvg+lVDkoJQ9EwAdMdGJXMJycfit5DJRear8sbVGRn645ex3sO91JRtAySvf3OAD2d83gRTVevAL1tn0davCAr207psTPqKRRoaLHq+kpqIbpq/5Wt7tEGWQ+481zTDQ0HCc7puXVZRnego24RjCn5jZH9YgT8MewRowFQn3xbcDUdKM/sL1mBdIJn9aCwCCcMmVqKq0aYOnz1vSFKGJuKIRcR6n5r1P4LZ9arBmHt1VKlYE8oYI6dOLks4B1xxEzSxeJoVPZAEfxs4hQJLT4WBlyiBPc0yj8OHZGWgvcuQH4mh8MqIz+KW1Iv7S1gt1hcWV9GjYPPA33hNzrQQhqV3mywOJ9y6dnovVEhF3uktHLd7SEJrYLiULdxAaXVpSJveUtrWCfvJnHR2r3kNW3ZP7yyKbj8T4C/RjmcLCRtdAj+wo7BSR5pZ5uWUQogGbMnm8skJ2+qvp0EqleEo7kfYL+Ei8cPYi94rJ0JaUUDvYOTf2exRvWovkJ7C3WwuwQDXifA0fE79CR7npbgcxs3k31985eS6dHR/JOK9GgwdX8LQ+Ivg6DQWzjrc+KuKrVX4/r3xSUQiS9QmNBgrVjyLOpx9p/84yyoHxGyjzzMGFVH2Wjcdo3gzwA= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 79f67f50-d400-4838-7157-08d7f22e5ceb X-MS-Exchange-CrossTenant-originalarrivaltime: 07 May 2020 02:28:43.5816 (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: D9x43HGj8lDPGyWnRU70ihtdmF0ZYKb+fni5ZLpW6cbkKrbJCdRY4RmMOmH44tXXVi2FEpSAdh4AUVqsnIw6TQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR11MB2939 Return-Path: eric.dong@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SGkgVG9tLA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IFRvbSBMZW5k YWNreSA8dGhvbWFzLmxlbmRhY2t5QGFtZC5jb20+DQo+IFNlbnQ6IFRodXJzZGF5LCBNYXkgNywg MjAyMCAyOjMzIEFNDQo+IFRvOiBEb25nLCBFcmljIDxlcmljLmRvbmdAaW50ZWwuY29tPjsgZGV2 ZWxAZWRrMi5ncm91cHMuaW87DQo+IGxlcnNla0ByZWRoYXQuY29tDQo+IENjOiBKdXN0ZW4sIEpv cmRhbiBMIDxqb3JkYW4ubC5qdXN0ZW5AaW50ZWwuY29tPjsgQXJkIEJpZXNoZXV2ZWwNCj4gPGFy ZC5iaWVzaGV1dmVsQGxpbmFyby5vcmc+OyBLaW5uZXksIE1pY2hhZWwgRA0KPiA8bWljaGFlbC5k Lmtpbm5leUBpbnRlbC5jb20+OyBHYW8sIExpbWluZyA8bGltaW5nLmdhb0BpbnRlbC5jb20+OyBO aSwgUmF5DQo+IDxyYXkubmlAaW50ZWwuY29tPjsgQnJpamVzaCBTaW5naCA8YnJpamVzaC5zaW5n aEBhbWQuY29tPjsgV2FuZywgSmlhbiBKDQo+IDxqaWFuLmoud2FuZ0BpbnRlbC5jb20+OyBXdSwg SGFvIEEgPGhhby5hLnd1QGludGVsLmNvbT4NCj4gU3ViamVjdDogUmU6IFtlZGsyLWRldmVsXSBb UEFUQ0ggdjcgMDEvNDNdIE1kZU1vZHVsZVBrZzogQ3JlYXRlIFBDRHMgdG8NCj4gYmUgdXNlZCBp biBzdXBwb3J0IG9mIFNFVi1FUw0KPiANCj4gSGkgRXJpYywNCj4gDQo+IE9uIDUvNi8yMCAxMDow NiBBTSwgRG9uZywgRXJpYyB3cm90ZToNCj4gPiBIaSBUb20sDQo+ID4NCj4gPj4gLS0tLS1Pcmln aW5hbCBNZXNzYWdlLS0tLS0NCj4gPj4gRnJvbTogZGV2ZWxAZWRrMi5ncm91cHMuaW8gPGRldmVs QGVkazIuZ3JvdXBzLmlvPiBPbiBCZWhhbGYgT2YNCj4gPj4gTGVuZGFja3ksIFRob21hcw0KPiA+ PiBTZW50OiBXZWRuZXNkYXksIE1heSA2LCAyMDIwIDk6MjAgUE0NCj4gPj4gVG86IERvbmcsIEVy aWMgPGVyaWMuZG9uZ0BpbnRlbC5jb20+OyBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsNCj4gPj4gbGVy c2VrQHJlZGhhdC5jb20NCj4gPj4gQ2M6IEp1c3RlbiwgSm9yZGFuIEwgPGpvcmRhbi5sLmp1c3Rl bkBpbnRlbC5jb20+OyBBcmQgQmllc2hldXZlbA0KPiA+PiA8YXJkLmJpZXNoZXV2ZWxAbGluYXJv Lm9yZz47IEtpbm5leSwgTWljaGFlbCBEDQo+ID4+IDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNv bT47IEdhbywgTGltaW5nIDxsaW1pbmcuZ2FvQGludGVsLmNvbT47IE5pLA0KPiA+PiBSYXkgPHJh eS5uaUBpbnRlbC5jb20+OyBCcmlqZXNoIFNpbmdoIDxicmlqZXNoLnNpbmdoQGFtZC5jb20+OyBX YW5nLA0KPiA+PiBKaWFuIEogPGppYW4uai53YW5nQGludGVsLmNvbT47IFd1LCBIYW8gQSA8aGFv LmEud3VAaW50ZWwuY29tPg0KPiA+PiBTdWJqZWN0OiBSZTogW2VkazItZGV2ZWxdIFtQQVRDSCB2 NyAwMS80M10gTWRlTW9kdWxlUGtnOiBDcmVhdGUgUENEcw0KPiA+PiB0byBiZSB1c2VkIGluIHN1 cHBvcnQgb2YgU0VWLUVTDQo+ID4+DQo+ID4+IE9uIDUvNS8yMCA4OjUzIFBNLCBEb25nLCBFcmlj IHdyb3RlOg0KPiA+Pj4NCj4gPj4+DQo+ID4+Pj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0N Cj4gPj4+PiBGcm9tOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbyBbbWFpbHRvOmRldmVsQGVkazIuZ3Jv dXBzLmlvXSBPbiBCZWhhbGYNCj4gPj4+PiBPZiBMYXN6bG8gRXJzZWsNCj4gPj4+PiBTZW50OiBU dWVzZGF5LCBNYXkgNSwgMjAyMCAxMTozMCBQTQ0KPiA+Pj4+IFRvOiBUb20gTGVuZGFja3kgPHRo b21hcy5sZW5kYWNreUBhbWQuY29tPjsgRG9uZywgRXJpYw0KPiA+Pj4+IDxlcmljLmRvbmdAaW50 ZWwuY29tPjsgZGV2ZWxAZWRrMi5ncm91cHMuaW8NCj4gPj4+PiBDYzogSnVzdGVuLCBKb3JkYW4g TCA8am9yZGFuLmwuanVzdGVuQGludGVsLmNvbT47IEFyZCBCaWVzaGV1dmVsDQo+ID4+Pj4gPGFy ZC5iaWVzaGV1dmVsQGxpbmFyby5vcmc+OyBLaW5uZXksIE1pY2hhZWwgRA0KPiA+Pj4+IDxtaWNo YWVsLmQua2lubmV5QGludGVsLmNvbT47IEdhbywgTGltaW5nIDxsaW1pbmcuZ2FvQGludGVsLmNv bT47DQo+ID4+Pj4gTmksIFJheSA8cmF5Lm5pQGludGVsLmNvbT47IEJyaWplc2ggU2luZ2ggPGJy aWplc2guc2luZ2hAYW1kLmNvbT47DQo+ID4+Pj4gV2FuZywgSmlhbiBKIDxqaWFuLmoud2FuZ0Bp bnRlbC5jb20+OyBXdSwgSGFvIEENCj4gPj4+PiA8aGFvLmEud3VAaW50ZWwuY29tPg0KPiA+Pj4+ IFN1YmplY3Q6IFJlOiBbZWRrMi1kZXZlbF0gW1BBVENIIHY3IDAxLzQzXSBNZGVNb2R1bGVQa2c6 IENyZWF0ZQ0KPiA+Pj4+IFBDRHMgdG8gYmUgdXNlZCBpbiBzdXBwb3J0IG9mIFNFVi1FUw0KPiA+ Pj4+DQo+ID4+Pj4gT24gMDUvMDQvMjAgMTg6NDEsIFRvbSBMZW5kYWNreSB3cm90ZToNCj4gPj4+ Pg0KPiA+Pj4+PiBJcyB0aGVyZSBhbiBlYXN5IHdheSB0byBydW4gZXZlcnl0aGluZyB0aGF0IHRo aXMgbGluayBwb2ludHMsIHRvbz8NCj4gPj4+Pj4gSXMgaXQganVzdCBjcmVhdGluZyBhIHB1bGwg cmVxdWVzdCB0aGF0IGRvZXMgdGhpcz8gSSBkb24ndCB3YW50IHRvDQo+ID4+Pj4+IHRha2UgdXAg YSBsb3Qgb2YgeW91ciB0aW1lLCBzbyBpZiB0aGVyZSdzIHNvbWUgZG9jdW1lbnRhdGlvbiBvbg0K PiA+Pj4+PiBob3cgdG8gcnVuIGFuIGludGVncmF0aW9uIHRlc3QgdG8gZmluZCBhbmQgZml4IGlz c3VlcyBsaWtlIHRoaXMsIGp1c3QgcG9pbnQNCj4gbWUgdG8gaXQuDQo+ID4+Pj4NCj4gPj4+PiBK dXN0IGNyZWF0ZSBhIHB1bGwgcmVxdWVzdDsgaXQgd2lsbCBzZXQgb2ZmIENJLCBhbmQgeW91IGNh biByZXZpZXcNCj4gPj4+PiBWUyBidWlsZCBlcnJvcnMgdGhlcmUgKGlmIGFueSkuDQo+ID4+Pj4N Cj4gPj4+PiBZb3VyIFBSIHdpbGwgYXV0b21hdGljYWxseSBiZSBjbG9zZWQgKHJlamVjdGVkKSBy ZWdhcmRsZXNzIG9mDQo+ID4+Pj4gd2hldGhlciBDSSBzdWNjZWVkcyBvciBub3QuIFBScyBhcmUg bWVyZ2VkIC0tIGluIGZhY3QsDQo+ID4+Pj4gKmF1dG8qLW1lcmdlZCwgYnkgdGhlICJtZXJnaWZ5 IGJvdCIgLS0gaWYgYW5kIG9ubHkgaWYgKGEpIHRoZSBDSQ0KPiA+Pj4+IHJ1biBzdWNjZWVkcywg YW5kIChiKSB0aGUgUFIgaGFzDQo+ID4+IHRoZSAicHVzaCINCj4gPj4+PiBsYWJlbCBzZXQuDQo+ ID4+Pj4NCj4gPj4+PiBBbmQgb25seSBlZGsyIG1haW50YWluZXJzIGhhdmUgcGVybWlzc2lvbiB0 byBzZXQgdGhlICJwdXNoIiBsYWJlbC4NCj4gPj4+PiBBbnkgUFIgd2l0aG91dCB0aGUgInB1c2gi IGxhYmVsIHF1YWxpZmllcyBhcyBhICJwZXJzb25hbCB0ZXN0IGJ1aWxkIi4NCj4gPj4+PiBTbyB5 b3UgY2FuIGZyZWVseSBleHBlcmltZW50IHdpdGggUFJzLCBiZWNhdXNlIHlvdSBjYW4ndCAoZXZl bg0KPiA+Pj4+IHVud2l0dGluZ2x5KSBzYXRpc2Z5IGNvbmRpdGlvbiAoYikuDQo+ID4+Pj4NCj4g Pj4+Pg0KPiA+Pg0KPiBodHRwczovL25hbTExLnNhZmVsaW5rcy5wcm90ZWN0aW9uLm91dGxvb2su Y29tLz91cmw9aHR0cHMlM0ElMkYlMkZnaXQNCj4gPj4+PiBodWIuY29tJTJGdGlhbm9jb3JlJTJG dGlhbm9jb3JlLmdpdGh1Yi5pbyUyRndpa2klMkZFREstSUktDQo+ID4+IERldmVsb3BtZW50DQo+ ID4+Pj4gLQ0KPiA+Pg0KPiAmYW1wO2RhdGE9MDIlN0MwMSU3Q3Rob21hcy5sZW5kYWNreSU0MGFt ZC5jb20lN0M5Y2ZmMzQ3NWFmZjg0YTkNCj4gPj4gNTcyODUNCj4gPj4+Pg0KPiA+Pg0KPiAwOGQ3 ZjE2MDRjOTklN0MzZGQ4OTYxZmU0ODg0ZTYwOGUxMWE4MmQ5OTRlMTgzZCU3QzAlN0MwJTdDNjM3 MjQNCj4gPj4gMzI2ODIxDQo+ID4+Pj4NCj4gPj4NCj4gNzM4MjAxOSZhbXA7c2RhdGE9MyUyRklL QjE3NFFhVkxhcU8wdTFnZHJMMGl6WG1oRVolMkJ5dmozaUMxM1VZQg0KPiA+PiBjJTNEJg0KPiA+ Pj4+IGFtcDtyZXNlcnZlZD0wDQo+ID4+Pj4gUHJvY2Vzcw0KPiA+Pj4+DQo+ID4+Pg0KPiA+Pj4g VGhhbmtzIExhc3psbyBmb3IgeW91ciBleHBsYW5hdGlvbi4NCj4gPj4+DQo+ID4+PiBJIGZvdW5k IHRoaXMgcGF0Y2ggc2VyaWFsIGlzIGluY29tcGF0aWJsZSBmb3IgdGhlIGV4aXN0ZWQgcGxhdGZv cm1zLg0KPiA+Pj4gQ2FuIHlvdSBoZWxwIHRvIGZpeCB0aGUgYnVpbGQgZmFpbHVyZSBmb3IgdGhl c2UgcGxhdGZvcm1zIGluDQo+ID4+Pg0KPiA+Pg0KPiBodHRwczovL25hbTExLnNhZmVsaW5rcy5w cm90ZWN0aW9uLm91dGxvb2suY29tLz91cmw9aHR0cHMlM0ElMkYlMkZnaXQNCj4gPj4gaA0KPiA+ Pj4gdWIuY29tJTJGdGlhbm9jb3JlJTJGZWRrMi0NCj4gPj4gcGxhdGZvcm1zJmFtcDtkYXRhPTAy JTdDMDElN0N0aG9tYXMubGVuZGFja3kNCj4gPj4+ICU0MGFtZC5jb20lN0M5Y2ZmMzQ3NWFmZjg0 YTk1NzI4NTA4ZDdmMTYwNGM5OSU3QzNkZDg5NjFmZTQ4ODQNCj4gZTYNCj4gPj4gMDhlMTFhOA0K PiA+Pj4NCj4gPj4NCj4gMmQ5OTRlMTgzZCU3QzAlN0MwJTdDNjM3MjQzMjY4MjE3MzgyMDE5JmFt cDtzZGF0YT1qVTBxckIlMkJWNloNCj4gPj4gdkZtUHpqY3gNCj4gPj4+IEdvOW8yUHUxJTJGcmhS VzBnVVpUTXYlMkJpWERRJTNEJmFtcDtyZXNlcnZlZD0wDQo+ID4+Pg0KPiA+Pg0KPiA+PiBJIGhh dmUgZml4ZWQgYWxsIG9mIHRoZSBidWlsZCBpc3N1ZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBWUyBj b21waWxlcg0KPiA+PiB1c2luZyB0aGUgcHVsbCByZXF1ZXN0IG1ldGhvZCB0aGF0IExhc3psbyBt ZW50aW9uZWQuIEkgdGhlbg0KPiA+PiBzdWNjZXNzZnVsbHkgYnVpbHQgdGhlIFJQaTQgcGxhdGZv cm0gdW5kZXIgR0NDIChidWlsZCAtbiAzMiAtYQ0KPiA+PiBBQVJDSDY0IC10IEdDQzUgLXANCj4g Pj4gUGxhdGZvcm0vUmFzcGJlcnJ5UGkvUlBpNC9SUGk0LmRzYykgdXNpbmcgdGhlIEFBUkNINjQg Y3Jvc3MgY29tcGlsZXIuDQo+ID4+DQo+ID4+IElzIHRoZXJlIGEgcGFydGljdWxhciBwbGF0Zm9y bSB0aGF0IGV4cGVyaWVuY2VzIGFuIGlzc3VlIG9yIGFyZSB0aGUNCj4gPj4gZmFpbHVyZXMgcmVs YXRlZCB0byB0aGUgVlMgY29tcGlsZXIgZXJyb3JzIHRoYXQgbXkgbmV4dCBzZXJpZXMgd2lsbCBo YXZlDQo+IGZpeGVkPw0KPiA+DQo+ID4gSSB1c2VkIHRoZSBLYWJ5bGFrZVJ2cDMgcGxhdGZvcm0g d2l0aCB5b3VyIGNoYW5nZXMgaW4gRWRrMiBhbmQgbWV0DQo+IGZhaWx1cmVzLg0KPiA+IEthYnls YWtlUnZwMyBjb2RlIGF0DQo+ID4gRWRrMi1wbGF0Zm9ybXNcUGxhdGZvcm1cSW50ZWxcS2FieWxh a2VPcGVuQm9hcmRQa2dcDQo+ID4NCj4gPiAgIEkgdXNlZCBiZWxvdyBjb21tYW5kIHRvIGJ1aWxk IHRoZSBjb2RlLg0KPiA+IEM6XENvZGVcT3BlblNvdXJjZVxlZGsyLXBsYXRmb3Jtc1xQbGF0Zm9y bVxJbnRlbD5idWlsZF9iaW9zLnB5DQo+ID4gLS1wbGF0Zm9ybSBLYWJ5bGFrZVJ2cDMNCj4gPg0K PiA+IFlvdSBuZWVkIGNsb25lIGJlbG93IHJlcG9zaXRvcmllcyB0byBidWlsZCB0aGUgY29kZS4N Cj4gPiBFZGsyOiBnaXRAZ2l0aHViLmNvbTp0aWFub2NvcmUvZWRrMi5naXQgRWRrMi1QbGF0Zm9y bQ0KPiA+IGdpdEBnaXRodWIuY29tOnRpYW5vY29yZS9lZGsyLXBsYXRmb3Jtcy5naXQNCj4gPiBl ZGsyLW5vbi1vc2kgOiAgZ2l0QGdpdGh1Yi5jb206dGlhbm9jb3JlL2VkazItbm9uLW9zaS5naXQN Cj4gPiBGU1A6IGdpdEBnaXRodWIuY29tOkludGVsRnNwL0ZTUC5naXQNCj4gDQo+IE9uIG15IExp bnV4IHN5c3RlbSwgSSBjbG9uZWQgYWxsIHRoZSBsaWJyYXJpZXMgYW5kIHNldCB0aGUgV09SS1NQ QUNFIGFuZA0KPiBQQUNLQUdFU19QQVRIIGVudiB2YXJpYWJsZXMsIHNvdXJjZWQgZWRrc2V0dXAu c2ggYW5kIGlzc3VlZDoNCj4gDQo+IHB5dGhvbjMgZWRrMi1wbGF0Zm9ybXMvUGxhdGZvcm0vSW50 ZWwvYnVpbGRfYmlvcy5weSAtLXBsYXRmb3JtDQo+IEthYnlsYWtlUnZwMw0KPiANCj4gYW5kIGdv dCB0aGUgZm9sbG93aW5nIGVycm9yczoNCj4gDQo+IFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2Fs bCBsYXN0KToNCj4gICBGaWxlICJlZGsyLXBsYXRmb3Jtcy9QbGF0Zm9ybS9JbnRlbC9idWlsZF9i aW9zLnB5IiwgbGluZSAxMDk3LCBpbiA8bW9kdWxlPg0KPiAgICAgbWFpbigpDQo+ICAgRmlsZSAi ZWRrMi1wbGF0Zm9ybXMvUGxhdGZvcm0vSW50ZWwvYnVpbGRfYmlvcy5weSIsIGxpbmUgMTA2Nywg aW4gbWFpbg0KPiAgICAgcGxhdGZvcm1fY29uZmlnID0gZ2V0X3BsYXRmb3JtX2NvbmZpZyhhcmd1 bWVudHMucGxhdGZvcm0sIGJ1aWxkX2NvbmZpZykNCj4gICBGaWxlICJlZGsyLXBsYXRmb3Jtcy9Q bGF0Zm9ybS9JbnRlbC9idWlsZF9iaW9zLnB5IiwgbGluZSA5MDQsIGluDQo+IGdldF9wbGF0Zm9y bV9jb25maWcNCj4gICAgIHBhdGggPSBwbGF0Zm9ybV9kYXRhLmdldChwbGF0Zm9ybV9uYW1lKQ0K PiBBdHRyaWJ1dGVFcnJvcjogJ05vbmVUeXBlJyBvYmplY3QgaGFzIG5vIGF0dHJpYnV0ZSAnZ2V0 Jw0KDQpJIGJ1aWxkIGl0IGluIHdpbmRvd3MgZW52aXJvbm1lbnQgYW5kIEkgbm90IG1ldCB0aGlz IGVycm9yLg0KDQo+IA0KPiBJIGRvbid0IGtub3cgd2hhdCBJJ20gbWlzc2luZyBhcyB0byB3aHkg dGhpcyBlcnJvciBwb3BzIHVwLiBIb3cgaXMgdGhpcyBkb25lDQo+IG9uIGEgTGludXggc3lzdGVt Pw0KPiANCj4gRGlkIHlvdXIgYnVpbGQgZmFpbCBiZWNhdXNlIG9mIHRoZSBWbWdFeGl0TGliIGxp YnJhcnkgbm90IGJlaW5nIHNwZWNpZmllZD8NCj4gSWYgdGhlIHBsYXRmb3JtIGluY2x1ZGVzIHRo ZSBDcHVFeGNlcHRpb25IYW5kbGVyTGliIG9yIE1wSW5pdExpYiBsaWJyYXJpZXMNCj4gdGhlbiBp dCB3aWxsIG5vdyBhbHNvIG5lZWQgdG8gaW5jbHVkZSB0aGUgVm1nRXhpdExpYiBsaWJyYXJ5Lg0K DQpXaXRoIHlvdXIgVjcgcGF0Y2hlcywgSSBhbHNvIG1ldCBvdGhlciBjb2RlIGVycm9ycy4gSnVz dCBsaWtlIEkgcmVwbGllZCB0byB5b3UgaW4gb3RoZXIgbWFpbHMuDQoNCj4gDQo+IEkgd2lzaCB0 aGUgYnVpbGQgc3lzdGVtIGNvdWxkIGZpZ3VyZSBvdXQgdGhhdCBiZWNhdXNlIHRoZSBWbWdFeGl0 TGliIGxpYnJhcnkgaXMNCj4gc3BlY2lmaWVkIGluIHRoZSB2YXJpb3VzIENwdUV4Y2VwdGlvbkhh bmRsZXJMaWIgSU5GIGZpbGVzIGFuZCB0aGUgdmFyaW91cw0KPiBNcEluaXRMaWIgSU5GIGZpbGVz LCBpdCB3b3VsZCBhdXRvbWF0aWNhbGx5IGtub3cgdG8gaW5jbHVkZSBpdCBpbiB3aGF0ZXZlciB1 c2VzDQo+IHRob3NlIGxpYnJhcmllcy4gSXQgZG9lc24ndCBzZWVtIHJpZ2h0IHRoYXQgeW91IHdv dWxkIGhhdmUgdG8ga25vdyBhbmQNCj4gc3BlY2lmeSB0aGUgbGlicmFyeSByZXF1aXJlbWVudHMg b2YgYSBsaWJyYXJ5IHlvdSBhcmUgaW5jbHVkaW5nIHdoZW4gdGhlDQo+IHN5c3RlbSBjb3VsZCBm aWd1cmUgaXQgb3V0Lg0KDQpDdXJyZW50IGJ1aWxkIHN5c3RlbSBub3Qgc3VwcG9ydCB0aGlzIHll dC4gU28sIHRoaXMgaXMgdGhlIGltcGFjdCBmb3IgdGhlIGV4aXRlZCBwbGF0Zm9ybXMuIFdlIG5l ZWQNCnRvIHByZXBhcmUgdGhlIHBhdGNoZXMgZm9yIHRoZSBleGlzdGVkIHBsYXRmb3JtcyB3ZSBj YXJlZCBiZWZvcmUgcHVzaCBhbGwgeW91ciBwYXRjaGVzLg0KDQpUaGFua3MsDQpFcmljDQo+IA0K PiBUaGFua3MsDQo+IFRvbQ0KPiANCj4gPg0KPiA+Pg0KPiA+Pj4gSSB0aGluayB5b3UgYWxzbyBu ZWVkcyB0byBhZGQgYW4gd2lraSBwYWdlIHRvIGV4cGxhaW4gd2hhdCBuZWVkIHRvDQo+ID4+PiBk byBpZiBhbg0KPiA+PiBwbGF0Zm9ybSBuZWVkcyB0byBpbnRlZ3JhdGUgeW91ciBjaGFuZ2VzLCBh bHNvIGl0J3MgYmV0dGVyIHRvIGV4cGxhaW4NCj4gPj4gdGhpcyBmZWF0dXJlIGluIHRoZSBwYWdl Lg0KPiA+Pj4NCj4gPj4NCj4gaHR0cHM6Ly9uYW0xMS5zYWZlbGlua3MucHJvdGVjdGlvbi5vdXRs b29rLmNvbS8/dXJsPWh0dHBzJTNBJTJGJTJGZ2l0DQo+ID4+IGgNCj4gPj4+DQo+ID4+DQo+IHVi LmNvbSUyRnRpYW5vY29yZSUyRnRpYW5vY29yZS5naXRodWIuaW8lMkZ3aWtpJmFtcDtkYXRhPTAy JTdDMDElNw0KPiA+PiBDdGhvDQo+ID4+Pg0KPiA+Pg0KPiBtYXMubGVuZGFja3klNDBhbWQuY29t JTdDOWNmZjM0NzVhZmY4NGE5NTcyODUwOGQ3ZjE2MDRjOTklN0MzZGQ4OQ0KPiA+PiA2MWZlNA0K PiA+Pj4NCj4gPj4NCj4gODg0ZTYwOGUxMWE4MmQ5OTRlMTgzZCU3QzAlN0MwJTdDNjM3MjQzMjY4 MjE3MzgyMDE5JmFtcDtzZGF0YT14DQo+ID4+IExrb1Y0elcNCj4gPj4+IGh4dHNicXN6cVBjMGxF QWwlMkJZTEwlMkIyd2cxbklYcWw4YTY0RSUzRCZhbXA7cmVzZXJ2ZWQ9MA0KPiA+Pg0KPiA+PiBJ IGRvbid0IHNlZSBhbnkgcGxhdGZvcm0gb3RoZXIgdGhhbiBPVk1GIHVzaW5nIHRoaXMgZmVhdHVy ZSBhcyBpdCBpcw0KPiA+PiBhIHZpcnR1YWxpemF0aW9uIGZlYXR1cmUuIEhhdmluZyBzYWlkIHRo YXQgSSBjYW4gYWRkIGFuIGV4cGxhbmF0aW9uDQo+ID4+IG9mIHdoYXQgaXMgbmVlZGVkIHNob3Vs ZCBhbm90aGVyIHZpcnR1YWxpemF0aW9uIHBsYXRmb3JtIGJlIGNyZWF0ZWQNCj4gPj4gdW5kZXIg RURLMiB0aGF0IHdhbnRzIHRvIHN1cHBvcnQgU0VWLUVTLiBBbmQsIGFzIHlvdSBzYWlkLCBJIGNh biBhbHNvDQo+ID4+IGV4cGxhaW4gdGhlIGZlYXR1cmUgb3ZlcmFsbCBvbiB0aGUgcGFnZS4NCj4g Pj4NCj4gPg0KPiA+IEkgdGhpbmsgeW91ciBwYWdlIGluY2x1ZGVzIHR3byBwYXJ0cywgb25lIGlz IGhvdyB0byBjaGFuZ2UgdGhlDQo+ID4gcGxhdGZvcm0gY29kZSB0byBtYWtlIHRoZSBwbGF0Zm9y bSBwYXNzIGJ1aWxkLCB0aGUgb3RoZXIgaXMgaWYgdGhlIHBsYXRmb3JtDQo+IG5lZWRzIHRvIGVu YWJsZSB0aGUgdmlydHVhbGl6YXRpb24gZmVhdHVyZSwgaG93IHRvIGVuYWJsZSBpdC4NCj4gPg0K PiA+Pj4NCj4gPj4+DQo+ID4+PiBJZiB5b3Ugd2FudCB0byBpbmNsdWRlIHRoaXMgY2hhbmdlIGlu IHRoZSBuZXh0IGVkazIgcmVsZWFzZSwgeW91DQo+ID4+PiBuZWVkIHRvIGFkZCBvbmUgaXRlbSBm b3IgaXQgaW4gdGhlIHJlbGVhc2UgcGxhbiBwYWdlLCBzYW1wbGUgY2FuIGJlDQo+ID4+PiBmb3Vu ZCBpbiBiZWxvdyBwYWdlczoNCj4gPj4+DQo+ID4+DQo+IGh0dHBzOi8vbmFtMTEuc2FmZWxpbmtz LnByb3RlY3Rpb24ub3V0bG9vay5jb20vP3VybD1odHRwcyUzQSUyRiUyRmdpdA0KPiA+PiBoDQo+ ID4+PiB1Yi5jb20lMkZ0aWFub2NvcmUlMkZ0aWFub2NvcmUuZ2l0aHViLmlvJTJGd2lraSUyRkVE Sy1JSS1SZWxlYXNlLQ0KPiA+PiBQbGFubg0KPiA+Pj4NCj4gPj4NCj4gaW5nJmFtcDtkYXRhPTAy JTdDMDElN0N0aG9tYXMubGVuZGFja3klNDBhbWQuY29tJTdDOWNmZjM0NzVhZmY4NA0KPiA+PiBh OTU3MjgNCj4gPj4+DQo+ID4+DQo+IDUwOGQ3ZjE2MDRjOTklN0MzZGQ4OTYxZmU0ODg0ZTYwOGUx MWE4MmQ5OTRlMTgzZCU3QzAlN0MwJTdDNjM3Mg0KPiA+PiA0MzI2ODIxDQo+ID4+Pg0KPiA+Pg0K PiA3MzgyMDE5JmFtcDtzZGF0YT1rY0RWallITVM5YlJSWk9sS0VrNXluRk5UMzlBbnhjaEpBTWFr JTJCbjg3MA0KPiA+PiBJJTNEJmFtcA0KPiA+Pj4gO3Jlc2VydmVkPTANCj4gPj4NCj4gPj4gVGhh bmtzLiBJcyB0aGVyZSBhbnlvbmUgaW4gcGFydGljdWxhciB0aGF0IEkgbmVlZCB0byByZXF1ZXN0 IHRoaXMNCj4gPj4gZmVhdHVyZSBiZSBhZGRlZD8NCj4gPg0KPiA+IFlvdSBjYW4gc3luIHdpdGgg TGltaW5nLCBoZSBpcyB0aGUgZWRrMiByZWxlYXNlIG1hbmFnZXIuIEhlIG93bnMgZWRrMg0KPiBz dGFibGUgdGFnIHJlbGVhc2UgdGFzay4NCj4gPg0KPiA+IFRoYW5rcywNCj4gPiBFcmljDQo+ID4+ DQo+ID4+IFRoYW5rcywNCj4gPj4gVG9tDQo+ID4+DQo+ID4+Pg0KPiA+Pj4NCj4gPj4+IFRoYW5r cywNCj4gPj4+IEVyaWMNCj4gPj4+DQo+ID4+Pj4gVGhhbmtzLA0KPiA+Pj4+IExhc3psbw0KPiA+ Pj4+DQo+ID4+Pj4NCj4gPj4+Pg0KPiA+Pg0KPiA+PiANCj4gPg0K