From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by mx.groups.io with SMTP id smtpd.web08.313.1627386125098896506 for ; Tue, 27 Jul 2021 04:42:05 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=RTFUB3ae; spf=pass (domain: intel.com, ip: 134.134.136.20, mailfrom: jiewen.yao@intel.com) X-IronPort-AV: E=McAfee;i="6200,9189,10057"; a="199606679" X-IronPort-AV: E=Sophos;i="5.84,273,1620716400"; d="scan'208";a="199606679" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Jul 2021 04:42:02 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.84,273,1620716400"; d="scan'208";a="434702589" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by orsmga002.jf.intel.com with ESMTP; 27 Jul 2021 04:42:01 -0700 Received: from orsmsx605.amr.corp.intel.com (10.22.229.18) by ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.10; Tue, 27 Jul 2021 04:42:01 -0700 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx605.amr.corp.intel.com (10.22.229.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4 via Frontend Transport; Tue, 27 Jul 2021 04:42:01 -0700 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.170) 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.10; Tue, 27 Jul 2021 04:41:59 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XMD+6qyiL30xvX4H0sU+p3B4IukbQ0w2+O4q3mmS7Ux+4e1eZByqyyf8/I/LOE/gFFxd/Ms06QjuL1E3uYbO80oi53qHIpTigGJbeuitaZHZzHwnNL1RQnUv6EPVZomWoPEXaZdI3CEgg2BJKQ0AjLFHuUKf0z8r/95mC66HC8ciXjTylDb/YyiTzTNJcBV2IBAW4p9ilTZ7JKtAPIflJxvcN6PTSy3OwjbrDR9VmVxOCciZL5JIqzqDmfPP5VpDwqBAQNwsSN0CDFbJC5jFOOmMpY8+rfX/8VKdk28niqsULtdLEBHVGwx+6XTUIF4RAFvAd7hvgSubrnNeo9Sf2Q== 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=7o7GKCae+w6yBMgCzX/pl7e3ajaEbqJJQnhuCwfNXbY=; b=FYdNOrwMPpwRvtWU2In4QQELzymFJa+338/1DavFTQMDQueGVBVGkcET/Q9GGlX5Qf7+Q5VSTlmhifO1sHgf1qLakmfjQfxvnaPqXFAhOUyqG35wxUvbbH9+6+kU8JLVYObnZeFKYJkysLdbVpIR3Bv5OOAosDXQ3bUpgWeXNZ+Rw2ZsCoTykB7Y+rgFgGbyov9JMGaqqI+/z3MFrBiCYeMSZwyslju3UrhxMqQ+Eq2d2xx8UDXgtoNuQdfIxXz2xVuoiPyE4nLitl0tXvAatO7UWcz72xrj7TeBx8R5tzG677aj9BRMiv8OVFnBxpEiT3i0YbBVKGnLTgqfCyQUaA== 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=7o7GKCae+w6yBMgCzX/pl7e3ajaEbqJJQnhuCwfNXbY=; b=RTFUB3aeprjPesCWa+j/N/aNKPbyjBIa72VjbGB5hLvOo/IxSgtjwxEH3btShUubr6f3PJW9s10sVh8ypICtWN+tJTZgmgmOdpdRv+AmgYTEI0byVtAsBtlPPqErAMMDrGd8anFS152aBg2S1it+npU8JuAV5XzRS7FDXQCMqT8= Received: from PH0PR11MB4885.namprd11.prod.outlook.com (2603:10b6:510:35::14) by PH0PR11MB4839.namprd11.prod.outlook.com (2603:10b6:510:42::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4352.29; Tue, 27 Jul 2021 11:41:45 +0000 Received: from PH0PR11MB4885.namprd11.prod.outlook.com ([fe80::6c99:8170:1c3c:9121]) by PH0PR11MB4885.namprd11.prod.outlook.com ([fe80::6c99:8170:1c3c:9121%3]) with mapi id 15.20.4352.031; Tue, 27 Jul 2021 11:41:45 +0000 From: "Yao, Jiewen" To: "devel@edk2.groups.io" , "brijesh.singh@amd.com" , "Xu, Min M" CC: Ard Biesheuvel , "Justen, Jordan L" , Erdem Aktas , "James Bottomley" , Tom Lendacky Subject: Re: [edk2-devel] [PATCH V3 00/10] Add Intel TDX support in OvmfPkg/ResetVector Thread-Topic: [edk2-devel] [PATCH V3 00/10] Add Intel TDX support in OvmfPkg/ResetVector Thread-Index: AQHXgqpA+tnzEpgszEeiGiERd35vOqtWZZJwgABIzgCAAAP3UA== Date: Tue, 27 Jul 2021 11:41:45 +0000 Message-ID: References: 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: 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: 78c46e15-bc10-4b57-01f4-08d950f38312 x-ms-traffictypediagnostic: PH0PR11MB4839: 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: 4IiwY2LftsrNEG3y/MfxMxOTVotFJmNvsXHhysB3A3XswUNvW/eJRQ4M5dJVUD8Og6WLQEQge1lBkhPuz2eDp/1lrkdnn4T6anUDDLEvKhM+xfHHJSDBP39oVhQjRqfBm6tOckE0EXgF4SsKWIrObPRNeA9k1SJ23er2ojAI6JfnJdsc3U0oyjB33WthQy//9hH+CjkzF+Iolh0FEGQqRokHB/+99kqtHpPBthwA8UInMwBAU+0LJCBhhWhXAZbzn5kflfnhSTee4zq17Iwpv1LGoIwmKXjxTegHYszTVPKh7PjxpIKJzKGUYP1VwHRV8HRlFGB00QcNHsRfa3Zm5B2JoZpCh/nFUjRVYjnYCzhA4PW3EvRaijF2ddkHs4hircrGFsk1eWJZ7eBd9yLzzxUQst1LC84+AkdcbZxKSGRmElRmITTgk5ORvGI9/rQaYRWo7ShNfgvYrVd816AhXFGFQuUJ4sufEY/CElB0Jdypl4fhpseNcBmuLH88/5xK9dp5A30pDQxyJTrCbYs/ILDts6swiQDJ5WVrVxcPWAVL4UjquazkJyl/Lt2GOT940sqIJzM8IMCT7oqbcj9Er8tGsxhv8A28cOD0L8ERNSEIfgzw2GXdV3hUB/lW/DsEY012OXiQVvMNtG077+iaBebe02yr6zva+JcdgHOQiUkV053CbdfTwaOCivlesm/maOt3Jz9WN+jWP2dtHNzu71LFIKRcHme+TMPHbjPs9qjEWb0wcJVJ98jUcH1luFYsTKEEBvuPoPieYFuah0D54m/ym+CmXRgZPikzXFUOn92CgJgh7+hI7MBQpoH8JmlE7b6EgIbqIDyY6aUVqaF/Nw== 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)(376002)(346002)(39850400004)(396003)(136003)(19627235002)(9686003)(122000001)(30864003)(8676002)(966005)(38100700002)(55016002)(5660300002)(66946007)(316002)(45080400002)(83380400001)(2906002)(186003)(86362001)(7696005)(66556008)(64756008)(33656002)(66446008)(66476007)(6636002)(110136005)(6506007)(26005)(76116006)(53546011)(8936002)(52536014)(71200400001)(54906003)(478600001)(4326008)(38070700004);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?NUJCMkRYNXM5aXpVK096UmNrMlBnRDhyWStnVmZlSFdEbmV5WEdPbW5sSGpu?= =?utf-8?B?ZnpaZ05iSTV4MXE2MzlsRml2ZlJINUNlQ2dWS3BvOXBUYkNCMktySHo1YVNB?= =?utf-8?B?KzVtNWhWYkNScG5iTFM5czJDT0RmRGVjQlRyZWJaTHBnNzdLM043SFh5dmY2?= =?utf-8?B?MjNXOWJsdCtkTEdzYjU4WDNlZVN0d3pXaUhteFAveGZlN3dZVTRNU2phUXdn?= =?utf-8?B?UzZUcStOcTdMSHA5azlBZ2h2d0d5RGwwaVBSaWZGbWZ0NUgvdFFFcVhVNDJz?= =?utf-8?B?Q1JHT0F5TnFMOStiZDQwbW5taXpTcnd4NWU1RnRNa0NoYUNad25ZcnA1RDBH?= =?utf-8?B?WEJselJKN2c0NXE0TXpnbFIzWXVtQlU4MCtTaVpSd09DTE9HNXBsRUtucGtP?= =?utf-8?B?VjR2MVVzajFjOVIwaFBKV0Eya3pqQVV1Vy9jcTJOdFJZdm92RTdIVk4xUGox?= =?utf-8?B?TWdiM2p1M0ZrSkNUbWdVTXNHd2U4Q1lzaFd4SjB5N2UrME5FS1dNYzBEMTFp?= =?utf-8?B?MjZndXFXYnJOMFp2QmFBRmR3bW5tZkdLVkVEcjAyK1IwYzMrUFQ2Unp4UWR0?= =?utf-8?B?Wmdya0E5RWF0OFRlT1Zac3NKMmNQYzFSRGtCRVcrODJ6dlZXMnhpSUZVcStP?= =?utf-8?B?eUs3K0REOXc0ZVlXSkFUdEtmR3RqSThUeGxyRGpTK25DcSsxcy9IWHNvaDhT?= =?utf-8?B?cGQ2WkV4Uk81N3RtTkNBOTlWbmhwVUUwK0puWHpVZU44ZlkzQWFHSmpEcHZk?= =?utf-8?B?bTNXeXdyMG92QTB3d0dCV24zUnlRUldkbjVHQmtjZkZVcmFSMWQ3WE5NdTRO?= =?utf-8?B?OUl5MHc3YUtvbDhsUjFqYUdzTG9JSmdSazJYNEZjcW1GKzQ3aWVLbG4wOXR3?= =?utf-8?B?clZlSmowRXZZVFp4MXJ0dVQ4L0RXNSt5V2M2WHAzaE5lV2cwclBOTW5zRnNR?= =?utf-8?B?S3lJVVZIWWhFM0U1aGNMdmtpZXkvUkhrUFRMWjlteHBydkVwSWFFZHh3OFBB?= =?utf-8?B?VUQ5U3FSRndhdlZXNjgreThtVlRkSGMrcFVEblhoZEU4UERuekMzVWdoVk9u?= =?utf-8?B?cDZ1VXk2WmpoZ2ZPSFBvbFYxZStWdWQ3cXIyZzdTYWxjTUxmaGhIb0Zndi8v?= =?utf-8?B?cXpFdGl0Wm81cXZhQ1h0MDVTSWoyM09VQ3FTek9DZW9hS0JhQmZ4UFdvY1lP?= =?utf-8?B?RmEyYUhkSWNzYVgvZHcxd1dWc1UvT0pjNUUzOW52SEpuNWFPa0p5MCt5ZTF5?= =?utf-8?B?RDdUbkhDRk00ZVpxOGVsUForejVYVGJPL0QxV1NoZjhDdU5IRTBOSVQ5V0o1?= =?utf-8?B?WjFVZmlKeFVRN1hObWkrYjRySDVHeDRQMXFicyszd2gyQXhrQ2RZdXZKQUI4?= =?utf-8?B?ZVVhaHE0UTFKSzV5bkN0VkJDUlFMOTdaQm1SQ1hPT2xVV0RKb0REYnVkOUtE?= =?utf-8?B?d0VUckF1MkFiZ1VsYTlEamNuUjQvdE5iVGdtVlNUWGFZTDY1ZW1HSXBDZm44?= =?utf-8?B?VnhZYXduWHBYemxlR3V5U0lHaStIbXBxeHRXMGdFbU8wQ2s4aFJaN1Z4NldX?= =?utf-8?B?UFlZdkZVU0FZL2lFY3JnRjBCV2ZPaGhqRXV6R3hiNjhrMkpRWHZBYUcyQmNM?= =?utf-8?B?NEpqeFBOZ2N0dHc1RDQ3eGo2WndlckxxbDJGcmprbUtjaFZVcy80bGwxNXVh?= =?utf-8?B?TEJnYzNUbGtJNGY5c2diU3dVK1M1YlBjZFE0M3ZLN01BdUYwem0wbHd5OTFI?= =?utf-8?Q?rqt6OC7yF9TWuewigybQUDTGRx1eXnUXQ3zvj+9?= 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: 78c46e15-bc10-4b57-01f4-08d950f38312 X-MS-Exchange-CrossTenant-originalarrivaltime: 27 Jul 2021 11:41:45.4651 (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: mS2O14CMjTr6nUkIqhah3KJzjDNrCmiWM8ALmjqhqlNiqIxP8iy2TBZrSjiaDobF6IofP2UZNqPSYDHB4NnQlQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB4839 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 VGhhbmsgQnJpamVzaC4NClllcywgSSBqdXN0IG5vdGljZSB0aGF0Lg0KDQpJIGFtIHJldmlld2lu ZyBTTlAgcGF0Y2ggc2VyaWVzLiBJdCBtYXkgdGFrZSBtZSBzb21lIHRpbWUgdG8gcmV2aWV3IGFs bCAyOCBwYXRjaGVzLg0KDQpUaGFuayB5b3UNCllhbyBKaWV3ZW4NCg0KDQo+IC0tLS0tT3JpZ2lu YWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IGRldmVsQGVkazIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsy Lmdyb3Vwcy5pbz4gT24gQmVoYWxmIE9mIEJyaWplc2gNCj4gU2luZ2ggdmlhIGdyb3Vwcy5pbw0K PiBTZW50OiBUdWVzZGF5LCBKdWx5IDI3LCAyMDIxIDc6MjQgUE0NCj4gVG86IFlhbywgSmlld2Vu IDxqaWV3ZW4ueWFvQGludGVsLmNvbT47IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBYdSwgTWluIE0N Cj4gPG1pbi5tLnh1QGludGVsLmNvbT4NCj4gQ2M6IGJyaWplc2guc2luZ2hAYW1kLmNvbTsgQXJk IEJpZXNoZXV2ZWwgPGFyZGIrdGlhbm9jb3JlQGtlcm5lbC5vcmc+Ow0KPiBKdXN0ZW4sIEpvcmRh biBMIDxqb3JkYW4ubC5qdXN0ZW5AaW50ZWwuY29tPjsgRXJkZW0gQWt0YXMNCj4gPGVyZGVtYWt0 YXNAZ29vZ2xlLmNvbT47IEphbWVzIEJvdHRvbWxleSA8amVqYkBsaW51eC5pYm0uY29tPjsgVG9t DQo+IExlbmRhY2t5IDx0aG9tYXMubGVuZGFja3lAYW1kLmNvbT4NCj4gU3ViamVjdDogUmU6IFtl ZGsyLWRldmVsXSBbUEFUQ0ggVjMgMDAvMTBdIEFkZCBJbnRlbCBURFggc3VwcG9ydCBpbg0KPiBP dm1mUGtnL1Jlc2V0VmVjdG9yDQo+IA0KPiBIaSwNCj4gDQo+IA0KPiBPbiA3LzI3LzIxIDI6MTYg QU0sIFlhbywgSmlld2VuIHdyb3RlOg0KPiA+IFRoYW5rcyBNaW4uDQo+ID4gTWFueSB0aGFua3Mg Zm9yIHNwbGl0dGluZyBTRVYgc3R1ZmYgdG8gYSBzdGFuZGFsb25lIGZpbGUuIFRoYXQgaXMgdmVy eSBnb29kIHN0YXJ0Lg0KPiANCj4gSSBhbSBub3Qgc3VyZSBpZiB5b3Ugbm90aWNlZCBidXQgdGhl IFNFViByZWZhY3RvcmluZyB3YXMgYWxyZWFkeQ0KPiBpbmNsdWRlZCBpbiB0aGUgU05QIHNlcmll cywgSSBleHRyYWN0ZWQgdGhvc2UgcGF0Y2hlcyBmcm9tIFNOUCBzZXJpZXMNCj4gYW5kIHBvc3Rl ZCBub3cgZGlyZWN0bHkgZm9yIHRoZSBhY2NlcHRhbmNlLiBUaGlzIHdpbGwgZ2l2ZSBhIHdlbGwg dGVzdGVkDQo+IFNFViByZWZhY3RvciBsb2dpYyB3aGljaCBNaW4gY2FuIGJ1aWxkIHVwb24uIFRo ZSByZWZhY3RvciBzZXJpZXMgaXMNCj4gdGVzdGVkIG9uIG5vbi1TRVYgYW5kIFNFViBndWVzdC4N Cj4gDQo+IHRoYW5rcw0KPiANCj4gPg0KPiA+IFNvbWUgb3RoZXIgY29tbWVudHMgZm9yIHlvdXIg Y29uc2lkZXJhdGlvbjoNCj4gPg0KPiA+IDEpIFRoZXJlIGlzIG5vIG5lZWQgdG8gY3JlYXRlIGEg c3RhbmRhbG9uZSBJbml0MzIuYXNtIGFuZCBSZWxvYWRGbGF0MzIuYXNtLg0KPiBUaGV5IGFyZSBv bmx5IG5lZWRlZCBpbiBURFggc28gZmFyLiBQbGVhc2Uga2VlcCBpdCBpbiBURFguDQo+ID4NCj4g PiAyKSBJIGRvIG5vdCBzZWUgdGhlIGFic29sdXRlIG5lZWQgdG8gY3JlYXRlIG11bHRpcGxlIHBh dGNoZXMgZm9yDQo+IFJlc2V0VmVjdG9yLm5hc20vUmVzZXRWZWN0b3JWdGYwLmFzbSB0byBhZGQg VERYIHN0dWZmIG9uZSBieSBvbmUuIFRoYXQNCj4gYWx3YXlzIG1ha2VzIG1lIGZlZWwgeW91IG1p c3Mgc29tZXRoaW5nIGluIHRoZSBiZWdpbm5pbmcuIFNpbmNlIGFsbCB0aGUgcGF0Y2hlcw0KPiBh cmUgYWRkaW5nIFREWCBzdXBwb3J0LCBJIHRoaW5rIHdlIGNhbiBhZGQgdGhlbSBvbmUgdGltZS4N Cj4gPg0KPiA+IDMpIFRoZSBzdHJhdGVneSBJIHRha2UgdG8gcmV2aWV3IHRoZSBwYXRjaCBpcyB0 byBjb21wYXJlIHRoZSBSZXNldFZlY3RvciBpbg0KPiBVZWZpQ3B1UGtnIGFuZCBPdm1mUGtnLg0K PiA+IElmIHRoZXkgYXJlIHNpbWlsYXIsIEkgYW0gYXQgZWFzZS4gSWYgdGhleSBhcmUgZGlmZmVy ZW50LCBJIHdvdWxkIGFzayB3aHkuDQo+ID4NCj4gPiBGb3IgZXhhbXBsZSwgT1ZNRiB2ZXJzaW9u IEZsYXQzMlRvRmxhdDY0LmFzbSBtaXNzaW5nIHRoZQ0KPiBDUjQvQ1IwL0VGRVJfTVNSIGhhbmRs aW5nIGluIG5vcm1hbCBtb2RlLiBJIGFtIG5vdCBzdXJlIHdoeS4gQSBwb3RlbnRpYWwNCj4gYnVn PyBXZSBoYWQgYmV0dGVyIG1ha2UgdGhlbSBjb25zaXN0ZW50Lg0KPiA+DQo+ID4gNCkgSSBjYW4g dW5kZXJzdGFuZCBkaWZmZXJlbmNlIGluIFBhZ2VUYWJsZXM2NC5hc20uIFVlZmlDcHVQa2cgdXNl cyBST00NCj4gcGFnZSB0YWJsZSwgd2hpbGUgT1ZNRiB1c2VzIHJ1bnRpbWUgY3JhdGVkIHBhZ2Ug dGFibGUuIFRoYXQgaXMgT0suDQo+ID4NCj4gPiBIb3dldmVyLCBpdCBpcyBoYXJkIGZvciBtZSB0 byB1bmRlcnN0YW5kIGhvdyBTRVYvVERYIGhhY2sgdGhlIGJ1aWxkIHBhZ2UNCj4gdGFibGUuDQo+ ID4NCj4gPiBJIHN0aWxsIHJlY29tbWVuZCB3ZSBtb3ZlIFNFViBob29rIHRvIFNFViBmaWxlLCBh bmQgVERYIGhvb2sgdG8gVERYIGZpbGUuDQo+ID4gSWYgd2UgY2FuIHVzZSBiZWxvdyBwYXR0ZXIs IHRoYXQgY2FuIGhlbHAgbWUgYSBsb3QgdG8gdW5kZXJzdGFuZCB0aGUgbG9naWMuDQo+ID4gPT09 PT09PT09PT09PT09DQo+ID4gU2V0Q3IzRm9yUGFnZVRhYmxlczY0Og0KPiA+DQo+ID4gICAgIHhv ciAgICAgZWR4LCBlZHgNCj4gPg0KPiA+ICAgICBQcmVCdWlsZFBhZ2VUYWJsZUhvb2tTZXYNCj4g PiAgICAgUHJlQnVpbGRQYWdlVGFibGVIb29rVGR4DQo+ID4NCj4gPiBCdWlsZFBhZ2VUYWJsZXM6 DQo+ID4NCj4gPiAgICAgWFhYWFhYDQo+ID4NCj4gPiAgICAgUG9zdEJ1aWxkUGFnZVRhYmxlSG9v a1Nldg0KPiA+ICAgICBQb3N0QnVpbGRQYWdlVGFibGVIb29rVGR4DQo+ID4NCj4gPiBTZXRDcjM6 DQo+ID4gPT09PT09PT09PT09PT09DQo+ID4NCj4gPiA1KSBUaGVyZSBhcmUgdG9vIG1hbnkgbm9p c2UgaW4gUmVzZXRWZWN0b3JWdGYwLmFzbS4NCj4gPiBDYW4gd2UgbW92ZSBTRVYgYW5kIFREWCBy ZWxhdGVkIEdVSUQgZGVmaW5pdGlvbiB0byBhIHN0YW5kYWxvbmUNCj4gU2V2VnRmMC5hc20gYW5k IFRkeFZ0ZjAuYXNtPw0KPiA+DQo+ID4NCj4gPiBUaGFuayB5b3UNCj4gPiBZYW8gSmlld2VuDQo+ ID4NCj4gPg0KPiA+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+PiBGcm9tOiBkZXZl bEBlZGsyLmdyb3Vwcy5pbyA8ZGV2ZWxAZWRrMi5ncm91cHMuaW8+IE9uIEJlaGFsZiBPZiBNaW4g WHUNCj4gPj4gU2VudDogVHVlc2RheSwgSnVseSAyNywgMjAyMSAxOjQyIFBNDQo+ID4+IFRvOiBk ZXZlbEBlZGsyLmdyb3Vwcy5pbw0KPiA+PiBDYzogWHUsIE1pbiBNIDxtaW4ubS54dUBpbnRlbC5j b20+OyBBcmQgQmllc2hldXZlbA0KPiA+PiA8YXJkYit0aWFub2NvcmVAa2VybmVsLm9yZz47IEp1 c3RlbiwgSm9yZGFuIEwgPGpvcmRhbi5sLmp1c3RlbkBpbnRlbC5jb20+Ow0KPiA+PiBCcmlqZXNo IFNpbmdoIDxicmlqZXNoLnNpbmdoQGFtZC5jb20+OyBFcmRlbSBBa3Rhcw0KPiA+PiA8ZXJkZW1h a3Rhc0Bnb29nbGUuY29tPjsgSmFtZXMgQm90dG9tbGV5IDxqZWpiQGxpbnV4LmlibS5jb20+OyBZ YW8sDQo+ID4+IEppZXdlbiA8amlld2VuLnlhb0BpbnRlbC5jb20+OyBUb20gTGVuZGFja3kNCj4g PHRob21hcy5sZW5kYWNreUBhbWQuY29tPg0KPiA+PiBTdWJqZWN0OiBbZWRrMi1kZXZlbF0gW1BB VENIIFYzIDAwLzEwXSBBZGQgSW50ZWwgVERYIHN1cHBvcnQgaW4NCj4gPj4gT3ZtZlBrZy9SZXNl dFZlY3Rvcg0KPiA+Pg0KPiA+PiBSRUY6DQo+IGh0dHBzOi8vbmFtMTEuc2FmZWxpbmtzLnByb3Rl Y3Rpb24ub3V0bG9vay5jb20vP3VybD1odHRwcyUzQSUyRiUyRmJ1Z3ppbGxhLg0KPiB0aWFub2Nv cmUub3JnJTJGc2hvd19idWcuY2dpJTNGaWQlM0QzNDI5JmFtcDtkYXRhPTA0JTdDMDElN0Nicmlq ZXNoLg0KPiBzaW5naCU0MGFtZC5jb20lN0M4NDVhZmI2N2NlMmQ0N2IxMzA5MzA4ZDk1MGNlODAx MiU3QzNkZDg5NjFmZTQ4DQo+IDg0ZTYwOGUxMWE4MmQ5OTRlMTgzZCU3QzAlN0MwJTdDNjM3NjI5 NjcwMTA2NTAzMjIxJTdDVW5rbm93biUNCj4gN0NUV0ZwYkdac2IzZDhleUpXSWpvaU1DNHdMakF3 TURBaUxDSlFJam9pVjJsdU16SWlMQ0pCVGlJNklrMWhhV3dpTA0KPiBDSlhWQ0k2TW4wJTNEJTdD MTAwMCZhbXA7c2RhdGE9NUpQbWZmRkh1UWlMaUc5NTR6Njh2TkxUMmgxbnd1VVJUDQo+IFJwZnNj ekNtJTJGMCUzRCZhbXA7cmVzZXJ2ZWQ9MA0KPiA+Pg0KPiA+PiBJbnRlbCdzIFRydXN0IERvbWFp biBFeHRlbnNpb25zIChJbnRlbCBURFgpIHJlZmVycyB0byBhbiBJbnRlbCB0ZWNobm9sb2d5DQo+ ID4+IHRoYXQgZXh0ZW5kcyBWaXJ0dWFsIE1hY2hpbmVzIEV4dGVuc2lvbnMgKFZNWCkgYW5kIE11 bHRpLUtleSBUb3RhbCBNZW1vcnkNCj4gPj4gRW5jcnlwdGlvbiAoTUtUTUUpIHdpdGggYSBuZXcg a2luZCBvZiB2aXJ1dGFsIG1hY2hpbmVzIGd1ZXN0IGNhbGxlZCBhDQo+ID4+IFRydXN0IERvbWFp biAoVEQpLiBBIFREIGlzIGRlc2luZ2VkIHRvIHJ1biBpbiBhIENQVSBtb2RlIHRoYXQgcHJvdGVj dHMgdGhlDQo+ID4+IGNvbmZpZGVudGlhbGl0eSBvZiBURCBtZW1vcnkgY29udGVudHMgYW5kIHRo ZSBURCdzIENQVSBzdGF0ZSBmcm9tIG90aGVyDQo+ID4+IHNvZnR3YXJlLCBpbmNsdWRpbmcgdGhl IGhvc3RpbmcgVmlydHVhbC1NYWNoaW5lIE1vbml0b3IgKFZNTSksIHVubGVzcw0KPiA+PiBleHBs aWNpdGx5IHNoYXJlZCBieSB0aGUgVEQgaXRzZWxmLg0KPiA+Pg0KPiA+PiBUaGUgcGF0Y2gtc2V0 cyB0byBzdXBwb3J0IEludGVsIFREWCBpbiBPdm1mUGtnIGlzIHNwbGl0IGludG8gc2V2ZXJhbA0K PiA+PiB3YXZlcy4gVGhpcyBpcyB3YXZlMSB3aGljaCBhZGRzIEludGVsIFREWCBzdXBwb3J0IGlu IE92bWZQa2cvUmVzZXRWZWN0b3IuDQo+ID4+IE5vdGU6IFREWCBvbmx5IHdvcmtzIGluIFg2NC4N Cj4gPj4NCj4gPj4gQWNjb3JkaW5nIHRvIHRoZSBjb21tZW50cyBpbg0KPiBodHRwczovL25hbTEx LnNhZmVsaW5rcy5wcm90ZWN0aW9uLm91dGxvb2suY29tLz91cmw9aHR0cHMlM0ElMkYlMkZlZGsy LmdyDQo+IG91cHMuaW8lMkZnJTJGZGV2ZWwlMkZtZXNzYWdlJTJGNzgxNTImYW1wO2RhdGE9MDQl N0MwMSU3Q2JyaWplc2guc2kNCj4gbmdoJTQwYW1kLmNvbSU3Qzg0NWFmYjY3Y2UyZDQ3YjEzMDkz MDhkOTUwY2U4MDEyJTdDM2RkODk2MWZlNDg4NA0KPiBlNjA4ZTExYTgyZDk5NGUxODNkJTdDMCU3 QzAlN0M2Mzc2Mjk2NzAxMDY1MDMyMjElN0NVbmtub3duJTdDDQo+IFRXRnBiR1pzYjNkOGV5SldJ am9pTUM0d0xqQXdNREFpTENKUUlqb2lWMmx1TXpJaUxDSkJUaUk2SWsxaGFXd2lMQ0pYDQo+IFZD STZNbjAlM0QlN0MxMDAwJmFtcDtzZGF0YT1MS3B5UlJjbmd5NEg3MWJWaENidlpNT3h5NFFNTXIl MkINCj4gYkU3bEdtRWdMSUhBJTNEJmFtcDtyZXNlcnZlZD0wDQo+ID4+IGFuZA0KPiBodHRwczov L25hbTExLnNhZmVsaW5rcy5wcm90ZWN0aW9uLm91dGxvb2suY29tLz91cmw9aHR0cHMlM0ElMkYl MkZlZGsyLmdyDQo+IG91cHMuaW8lMkZnJTJGZGV2ZWwlMkZtZXNzYWdlJTJGNzgxNTEmYW1wO2Rh dGE9MDQlN0MwMSU3Q2JyaWplc2guc2kNCj4gbmdoJTQwYW1kLmNvbSU3Qzg0NWFmYjY3Y2UyZDQ3 YjEzMDkzMDhkOTUwY2U4MDEyJTdDM2RkODk2MWZlNDg4NA0KPiBlNjA4ZTExYTgyZDk5NGUxODNk JTdDMCU3QzAlN0M2Mzc2Mjk2NzAxMDY1MDMyMjElN0NVbmtub3duJTdDDQo+IFRXRnBiR1pzYjNk OGV5SldJam9pTUM0d0xqQXdNREFpTENKUUlqb2lWMmx1TXpJaUxDSkJUaUk2SWsxaGFXd2lMQ0pY DQo+IFZDSTZNbjAlM0QlN0MxMDAwJmFtcDtzZGF0YT0lMkI3UzclMkJzTmtIQzhMV2w1eldOYk50 MFFGOFJZNUkNCj4gQ1VWWW9iVXJZa2xZVE0lM0QmYW1wO3Jlc2VydmVkPTAsIFBhZ2VUYWJsZXM2 NC5hc20gYW5kDQo+ID4+IEZsYXQzMlRvRmxhdDY0LmFzbSBhcmUgcmVmaW5lZC4gU0VWIGFuZCBU RFggcmVsYXRlZCByb3V0aW5lcyBhcmUgc2VwYXJhdGVkDQo+ID4+IHRvIEFtZFNldi5hc20gYW5k IEludGVsVGR4LmFzbS4NCj4gPj4NCj4gPj4gUGF0Y2ggMSBhZGQgdGhlIFBDRHMgb2YgQkZWL0NG Vi4gQkZWIGlzIHRoZSBjb2RlIHBhcnQgb2YgdGhlIGltYWdlLiBDRlYgaXMNCj4gPj4gdGhlIGNv bmZpZ3VyYXRpb24gcGFydC4gQkZWIGlzIG1lYXN1cmVkIGJ5IFZNTSBhbmQgQ0ZWIGlzIG1lYXN1 cmVkIGJ5DQo+IFREVkYNCj4gPj4gaXRzZWxmLg0KPiA+Pg0KPiA+PiBQYXRjaCAyIGFkZCBUZHhN ZXRhZGF0YSBpbiBPdm1mUGtnL1Jlc2V0VmVjdG9yLiBJdCBkZXNjcmliZXMgdGhlDQo+ID4+IGlu Zm9ybWF0aW9uIGFib3V0IHRoZSBpbWFnZSBzbyB0aGF0IFZNTSBjYW4gZG8gdGhlIGluaXRpYWxp emF0aW9uIGFuZA0KPiA+PiBtZWFzdXJlbWVudCBiYXNlZCBvbiB0aGVzZSBpbmZvcm1hdGlvbi4N Cj4gPj4NCj4gPj4gUGF0Y2ggMyBzZXQgdGhlIGluaXRpYWwgdmFsdWUgb2YgVGQgbWFpbGJveCBh bmQgaXRzIHJlbGF0ZWQgbWFjcm9zIHVzZWQgaW4NCj4gPj4gUmVzZXRWZWN0b3IuDQo+ID4+DQo+ ID4+IFBhdGNoIDQgZGVmaW5lIG1hY3JvIG9mIFREWF9QVF9BRERSIHdoaWNoIGluZGljYXRlcyB0 aGUgVGR4IGV4dHJhIHBhZ2UNCj4gPj4gdGFibGVzLg0KPiA+Pg0KPiA+PiBQYXRjaCA1IGlzIElu dGVsVGR4LmFzbSB3aGljaCBpbmNsdWRlcyBiZWxvdyByb3V0aW5lcyB1c2VkIGluIFJlc2V0VmVj dG9yLg0KPiA+PiAgLSBJc1RkeA0KPiA+PiAgLSBJbml0VGR4DQo+ID4+ICAtIFBvc3RTZXRDcjNQ YWdlVGFibGVzNjRUZHgNCj4gPj4NCj4gPj4gUGF0Y2ggNiBpcyBBbWRTZXYuYXNtIHdoaWNoIGlu Y2x1ZGVzIFNFViByb3V0aW5lcy4gVGhlc2Ugcm91dGluZXMgYXJlDQo+ID4+IGV4dHJhY3RlZCBm cm9tIHRoZSBwcmV2aW91cyBQYWdlVGFibGVzNjQuYXNtL0ZsYXQzMlRvRmxhdDY0LmFzbS4NCj4g Pj4NCj4gPj4gUGF0Y2ggNyBsb2FkIHRoZSBHRFQgYW5kIHNldCBDUjAsIHRoZW4ganVtcCB0byBG bGF0MzIgcHJvdGVjdGVkIG1vZGUuIFRoaXMNCj4gPj4gaXMgYmVjYXVzZSBHRFQgaXMgbm90IHNl dCBpbiB0aGUgaW5pdGlhbCBzdGFnZSBvZiBSZXNldFZlY3Rvci4NCj4gPj4NCj4gPj4gUGF0Y2gg OCBpcyBJbml0MzIuYXNtLiBJdCBpcyB0aGUgZW50cnkgcG9pbnQgb2YgZG9pbmcgdGhlIDMyLWJp dCBwcm90ZWN0ZWQNCj4gPj4gbW9kZSBpbml0aWFsaXphdGlvbi4gUmVsb2FkRmxhdDMyIGFuZCBJ bml0VGR4IGFyZSBjYWxsZWQuIEluIHRoZSBmdXR1cmUgaWYNCj4gPj4gU0VWIGhhcyBzb21ldGhp bmcgdG8gaW5pdGlhbGl6ZSwgSW5pdFNldiAoZm9yIGV4YW1wbGUpIGNhbiBiZSBjYWxsZWQgaW4N Cj4gPj4gdHVybi4NCj4gPj4NCj4gPj4gUGF0Y2ggOSBjcmVhdGUgTWFpbi5hc20gaW4gT3ZtZlBr Zy9SZXNldFZlY3Rvci4gSXQgaXMgYmFzZWQgb24gdGhlDQo+ID4+IHN1Z2dlc3Rpb24gaW4NCj4g aHR0cHM6Ly9uYW0xMS5zYWZlbGlua3MucHJvdGVjdGlvbi5vdXRsb29rLmNvbS8/dXJsPWh0dHBz JTNBJTJGJTJGZWRrMi5ncg0KPiBvdXBzLmlvJTJGZyUyRmRldmVsJTJGbWVzc2FnZSUyRjc4MTUy JmFtcDtkYXRhPTA0JTdDMDElN0NicmlqZXNoLnNpDQo+IG5naCU0MGFtZC5jb20lN0M4NDVhZmI2 N2NlMmQ0N2IxMzA5MzA4ZDk1MGNlODAxMiU3QzNkZDg5NjFmZTQ4ODQNCj4gZTYwOGUxMWE4MmQ5 OTRlMTgzZCU3QzAlN0MwJTdDNjM3NjI5NjcwMTA2NTEzMjA4JTdDVW5rbm93biU3Qw0KPiBUV0Zw Ykdac2IzZDhleUpXSWpvaU1DNHdMakF3TURBaUxDSlFJam9pVjJsdU16SWlMQ0pCVGlJNklrMWhh V3dpTENKWA0KPiBWQ0k2TW4wJTNEJTdDMTAwMCZhbXA7c2RhdGE9SjduYWVFWDdtSmhvTUQ0ZjBM RFdFVU5FamlZRDdESFNKSQ0KPiBDUUZ4cWY4djglM0QmYW1wO3Jlc2VydmVkPTAuIEluIHRoaXMg Y29tbWl0DQo+ID4+IGl0IGlzIHNpbXBseSBjb3BpZWQgZnJvbSBVZWZpQ3B1UGtnLiBJbiB0aGUg bmV4dCBjb21taXQgdGhpcyBNYWluLmFzbSBpcw0KPiA+PiB1cGRhdGVkIHRvIGFkZCBhIG5ldyBF bnRyeSAoTWFpbjMyKSB0byBzdXBwb3J0IFRkeC4NCj4gPj4NCj4gPj4gSW4gUGF0Y2ggMTAsIGFs bCBhYm92ZSBhcmUgcHV0IHRvZ2V0aGVyLiBJbml0MzIuYXNtIGNhbGwgUmVsb2FkRmxhdDMyDQo+ ID4+IHRvIGp1bXAgdG8gMzItYml0IHByb3RlY3RlZCBtb2RlLCB0aGVuIEluaXRUZHggaW5pdGlh bGl6ZSBURFhfV09SS19BUkVBDQo+ID4+IHRvIHJlY29yZCAnVERYRycgZmxhZ3MuIEFmdGVyIHRo YXQgcGFnZSB0YWJsZXMgYXJlIGJ1aWx0IGFuZCBzZXQsIHRoZW4NCj4gPj4ganVtcCB0byBTZWNF bnRyeS4NCj4gPj4NCj4gPj4gW1REWF06DQo+IGh0dHBzOi8vbmFtMTEuc2FmZWxpbmtzLnByb3Rl Y3Rpb24ub3V0bG9vay5jb20vP3VybD1odHRwcyUzQSUyRiUyRnNvZnR3YXINCj4gZS5pbnRlbC5j b20lMkZjb250ZW50JTJGZGFtJTJGZGV2ZWxvcCUyRmV4dGVybmFsJTJGdXMlMkZlbiUyRiZhbXA7 DQo+IGRhdGE9MDQlN0MwMSU3Q2JyaWplc2guc2luZ2glNDBhbWQuY29tJTdDODQ1YWZiNjdjZTJk NDdiMTMwOTMwOGQ5NQ0KPiAwY2U4MDEyJTdDM2RkODk2MWZlNDg4NGU2MDhlMTFhODJkOTk0ZTE4 M2QlN0MwJTdDMCU3QzYzNzYyOTY3MDENCj4gMDY1MTMyMDglN0NVbmtub3duJTdDVFdGcGJHWnNi M2Q4ZXlKV0lqb2lNQzR3TGpBd01EQWlMQ0pRSWpvaVYybA0KPiB1TXpJaUxDSkJUaUk2SWsxaGFX d2lMQ0pYVkNJNk1uMCUzRCU3QzEwMDAmYW1wO3NkYXRhPU9Yc05lcm1jT08NCj4gV3p3bCUyQnR6 bm5LM2ZHdEgzSEQ0Ym12cVhWTlI4U0FQUEklM0QmYW1wO3Jlc2VydmVkPTANCj4gPj4gZG9jdW1l bnRzL3RkeC13aGl0ZXBhcGVyLWZpbmFsOS0xNy5wZGYNCj4gPj4NCj4gPj4gW1REVkZdOg0KPiBo dHRwczovL25hbTExLnNhZmVsaW5rcy5wcm90ZWN0aW9uLm91dGxvb2suY29tLz91cmw9aHR0cHMl M0ElMkYlMkZzb2Z0d2FyDQo+IGUuaW50ZWwuY29tJTJGY29udGVudCUyRmRhbSUyRmRldmVsb3Al MkZleHRlcm5hbCUyRnVzJTJGZW4lMkYmYW1wOw0KPiBkYXRhPTA0JTdDMDElN0NicmlqZXNoLnNp bmdoJTQwYW1kLmNvbSU3Qzg0NWFmYjY3Y2UyZDQ3YjEzMDkzMDhkOTUNCj4gMGNlODAxMiU3QzNk ZDg5NjFmZTQ4ODRlNjA4ZTExYTgyZDk5NGUxODNkJTdDMCU3QzAlN0M2Mzc2Mjk2NzAxDQo+IDA2 NTEzMjA4JTdDVW5rbm93biU3Q1RXRnBiR1pzYjNkOGV5SldJam9pTUM0d0xqQXdNREFpTENKUUlq b2lWMmwNCj4gdU16SWlMQ0pCVGlJNklrMWhhV3dpTENKWFZDSTZNbjAlM0QlN0MxMDAwJmFtcDtz ZGF0YT1PWHNOZXJtY09PDQo+IFd6d2wlMkJ0em5uSzNmR3RIM0hENGJtdnFYVk5SOFNBUFBJJTNE JmFtcDtyZXNlcnZlZD0wDQo+ID4+IGRvY3VtZW50cy90ZHgtdmlydHVhbC1maXJtd2FyZS1kZXNp Z24tZ3VpZGUtcmV2LTEucGRmDQo+ID4+DQo+ID4+IFtSZXZpZXdDb21tZW50LTFdOg0KPiBodHRw czovL25hbTExLnNhZmVsaW5rcy5wcm90ZWN0aW9uLm91dGxvb2suY29tLz91cmw9aHR0cHMlM0El MkYlMkZlZGsyLmdyDQo+IG91cHMuaW8lMkZnJTJGZGV2ZWwlMkZtZXNzYWdlJTJGNzgxNTEmYW1w O2RhdGE9MDQlN0MwMSU3Q2JyaWplc2guc2kNCj4gbmdoJTQwYW1kLmNvbSU3Qzg0NWFmYjY3Y2Uy ZDQ3YjEzMDkzMDhkOTUwY2U4MDEyJTdDM2RkODk2MWZlNDg4NA0KPiBlNjA4ZTExYTgyZDk5NGUx ODNkJTdDMCU3QzAlN0M2Mzc2Mjk2NzAxMDY1MTMyMDglN0NVbmtub3duJTdDDQo+IFRXRnBiR1pz YjNkOGV5SldJam9pTUM0d0xqQXdNREFpTENKUUlqb2lWMmx1TXpJaUxDSkJUaUk2SWsxaGFXd2lM Q0pYDQo+IFZDSTZNbjAlM0QlN0MxMDAwJmFtcDtzZGF0YT1DamFTemZmU1oxd0VNRkowOXVxWmlI UiUyRk5jQ2VmSiUyQmk0DQo+IGcyaXBsS3hJaXclM0QmYW1wO3Jlc2VydmVkPTANCj4gPj4NCj4g Pj4gW1Jldmlld0NvbW1lbnQtMl06DQo+IGh0dHBzOi8vbmFtMTEuc2FmZWxpbmtzLnByb3RlY3Rp b24ub3V0bG9vay5jb20vP3VybD1odHRwcyUzQSUyRiUyRmVkazIuZ3INCj4gb3Vwcy5pbyUyRmcl MkZkZXZlbCUyRm1lc3NhZ2UlMkY3ODE1MiZhbXA7ZGF0YT0wNCU3QzAxJTdDYnJpamVzaC5zaQ0K PiBuZ2glNDBhbWQuY29tJTdDODQ1YWZiNjdjZTJkNDdiMTMwOTMwOGQ5NTBjZTgwMTIlN0MzZGQ4 OTYxZmU0ODg0DQo+IGU2MDhlMTFhODJkOTk0ZTE4M2QlN0MwJTdDMCU3QzYzNzYyOTY3MDEwNjUx MzIwOCU3Q1Vua25vd24lN0MNCj4gVFdGcGJHWnNiM2Q4ZXlKV0lqb2lNQzR3TGpBd01EQWlMQ0pR SWpvaVYybHVNeklpTENKQlRpSTZJazFoYVd3aUxDSlgNCj4gVkNJNk1uMCUzRCU3QzEwMDAmYW1w O3NkYXRhPUo3bmFlRVg3bUpob01ENGYwTERXRVVORWppWUQ3REhTSkkNCj4gQ1FGeHFmOHY4JTNE JmFtcDtyZXNlcnZlZD0wDQo+ID4+DQo+ID4+IENvZGUgaXMgYXQNCj4gaHR0cHM6Ly9uYW0xMS5z YWZlbGlua3MucHJvdGVjdGlvbi5vdXRsb29rLmNvbS8/dXJsPWh0dHBzJTNBJTJGJTJGZ2l0aHVi LmMNCj4gb20lMkZteHU5JTJGZWRrMiUyRnRyZWUlMkZ0ZHZmX3dhdmUxLnYzJmFtcDtkYXRhPTA0 JTdDMDElN0NicmlqZXMNCj4gaC5zaW5naCU0MGFtZC5jb20lN0M4NDVhZmI2N2NlMmQ0N2IxMzA5 MzA4ZDk1MGNlODAxMiU3QzNkZDg5NjFmZTQNCj4gODg0ZTYwOGUxMWE4MmQ5OTRlMTgzZCU3QzAl N0MwJTdDNjM3NjI5NjcwMTA2NTEzMjA4JTdDVW5rbm93bg0KPiAlN0NUV0ZwYkdac2IzZDhleUpX SWpvaU1DNHdMakF3TURBaUxDSlFJam9pVjJsdU16SWlMQ0pCVGlJNklrMWhhV3dpDQo+IExDSlhW Q0k2TW4wJTNEJTdDMTAwMCZhbXA7c2RhdGE9OWx5MDVhYXhSV2JOTEJSOFByTm5jUUwlMkIlMkJy DQo+IHpobktsazNrdGhOVnM5a0lVJTNEJmFtcDtyZXNlcnZlZD0wDQo+ID4+DQo+ID4+IHYzIGNo YW5nZXM6DQo+ID4+ICAtIFJlZmluZSBQYWdlVGFibGVzNjQuYXNtIGFuZCBGbGF0MzJUb0ZsYXQ2 NC5hc20gYmFzZWQgb24gdGhlIHJldmlldw0KPiA+PiAgICBjb21tZW50cyBpbiBbUmV2aWV3Q29t bWVudC0xXSBhbmQgW1Jldmlld0NvbW1lbnQtMl0uDQo+ID4+ICAtIFNFViBjb2RlcyBhcmUgaW4g QW1kU2V2LmFzbQ0KPiA+PiAgLSBURFggY29kZXMgYXJlIGluIEludGVsVGR4LmFzbQ0KPiA+PiAg LSBNYWluLmFzbSBpcyBjcmVhdGVkIGluIE92bWZQa2cvUmVzZXRWZWN0b3IuIFRoZSBvbmUgaW4N Cj4gPj4gICAgVWVmaUNwdVBrZy9SZXNldFZlY3Rvci9WdGYwIGlzIG5vdCB1c2VkLg0KPiA+PiAg LSBJbml0MzIuYXNtL1JlbG9hZEZsYXQzMi5hc20gaW4gVWVmaUNwdVBrZy9SZXNldFZlY3Rvci9W dGYwL0lhMzIgYXJlDQo+ID4+ICAgIGRlbGV0ZWQuIFRoZXkncmUgbW92ZWQgdG8gT3ZtZlBrZy9S ZXNldFZlY3Rvci9JYTMyLg0KPiA+PiAgLSBJbml0VGR4LmFzbSBpcyByZW5hbWVkIHRvIEludGVU ZHguYXNtDQo+ID4+DQo+ID4+IHYyIGNoYW5nZXM6DQo+ID4+ICAtIE1vdmUgSW5pdFRkeC5hc20g YW5kIFJlbG9hZEZsYXQzMi5hc20gZnJvbQ0KPiBVZWZpQ3B1UGtnL1Jlc2V0VmVjdG9yL1Z0ZjAN Cj4gPj4gICAgdG8gT3ZtZlBrZy9SZXNldFZlY3Rvci4gSW5pdDMyLmFzbSBpcyBjcmVhdGVkIHdo aWNoIGlzIGEgbnVsbCBzdHViIG9mDQo+ID4+ICAgIDMyLWJpdCBpbml0aWFsaXphdGlvbi4gSW4g TWFpbjMyIGp1c3Qgc2ltcGx5IGNhbGwgSW5pdDMyLiBJdCBtYWtlcw0KPiA+PiAgICB0aGUgTWFp bi5hc20gaW4gVWVmaUNwdVBrZy9SZXNldFZlY3RvciBjbGVhbiBhbmQgY2xlYXIuDQo+ID4+ICAt IEluaXQzMi5hc20vSW5pdFRkeC5hc20vUmVsb2FkRmxhdDMyLmFzbSBhcmUgY3JlYXRlZCB1bmRl cg0KPiA+PiAgICBPdm1mUGtnL1Jlc2V0VmVjdG9yL0lhMzIuDQo+ID4+ICAtIFVwZGF0ZSBzb21l IGRlc2NyaXB0aW9ucyBvZiB0aGUgcGF0Y2gtc2V0cy4NCj4gPj4gIC0gVXBkYXRlIHRoZSBSRUYg bGluayBpbiBjb3ZlciBsZXR0ZXIuDQo+ID4+ICAtIEFkZCBBcmQgQmllc2hldXZlbCBpbiBDYyBs aXN0Lg0KPiA+Pg0KPiA+PiB2MToNCj4gaHR0cHM6Ly9uYW0xMS5zYWZlbGlua3MucHJvdGVjdGlv bi5vdXRsb29rLmNvbS8/dXJsPWh0dHBzJTNBJTJGJTJGZWRrMi5ncg0KPiBvdXBzLmlvJTJGZyUy RmRldmVsJTJGbWVzc2FnZSUyRjc3Njc1JmFtcDtkYXRhPTA0JTdDMDElN0NicmlqZXNoLnNpDQo+ IG5naCU0MGFtZC5jb20lN0M4NDVhZmI2N2NlMmQ0N2IxMzA5MzA4ZDk1MGNlODAxMiU3QzNkZDg5 NjFmZTQ4ODQNCj4gZTYwOGUxMWE4MmQ5OTRlMTgzZCU3QzAlN0MwJTdDNjM3NjI5NjcwMTA2NTEz MjA4JTdDVW5rbm93biU3Qw0KPiBUV0ZwYkdac2IzZDhleUpXSWpvaU1DNHdMakF3TURBaUxDSlFJ am9pVjJsdU16SWlMQ0pCVGlJNklrMWhhV3dpTENKWA0KPiBWQ0k2TW4wJTNEJTdDMTAwMCZhbXA7 c2RhdGE9b3NVNFFPV2wzRldSWjk0VnlEJTJCMFZIc2U3JTJCQ3gNCj4gVVNiaVZCdFdmN1dtYmNR JTNEJmFtcDtyZXNlcnZlZD0wDQo+ID4+DQo+ID4+IENjOiBBcmQgQmllc2hldXZlbCA8YXJkYit0 aWFub2NvcmVAa2VybmVsLm9yZz4NCj4gPj4gQ2M6IEpvcmRhbiBKdXN0ZW4gPGpvcmRhbi5sLmp1 c3RlbkBpbnRlbC5jb20+DQo+ID4+IENjOiBCcmlqZXNoIFNpbmdoIDxicmlqZXNoLnNpbmdoQGFt ZC5jb20+DQo+ID4+IENjOiBFcmRlbSBBa3RhcyA8ZXJkZW1ha3Rhc0Bnb29nbGUuY29tPg0KPiA+ PiBDYzogSmFtZXMgQm90dG9tbGV5IDxqZWpiQGxpbnV4LmlibS5jb20+DQo+ID4+IENjOiBKaWV3 ZW4gWWFvIDxqaWV3ZW4ueWFvQGludGVsLmNvbT4NCj4gPj4gQ2M6IFRvbSBMZW5kYWNreSA8dGhv bWFzLmxlbmRhY2t5QGFtZC5jb20+DQo+ID4+IFNpZ25lZC1vZmYtYnk6IE1pbiBYdSA8bWluLm0u eHVAaW50ZWwuY29tPg0KPiA+Pg0KPiA+PiBNaW4gWHUgKDEwKToNCj4gPj4gICBPdm1mUGtnOiBB ZGQgVGR4IEJGVi9DRlYgUENEcyBhbmQgUGNkT3ZtZkltYWdlU2l6ZUluS2INCj4gPj4gICBPdm1m UGtnOiBBZGQgVGR4IG1ldGFkYXRhDQo+ID4+ICAgT3ZtZlBrZzogU2V0IFRkTWFpbGJveCBpbml0 aWFsIHZhbHVlIGFuZCBtYWNyb3MNCj4gPj4gICBPdm1mUGtnOiBBZGQgVERYX1BUX0FERFIgZGVm aXRpb24gaW4gUmVzZXRWZWN0b3IubmFzbWINCj4gPj4gICBPdm1mUGtnOiBBZGQgSW50ZWxUZHgu YXNtIGluIFJlc2V0VmVjdG9yDQo+ID4+ICAgT3ZtZlBrZzogQWRkIEFtZFNldi5hc20gaW4gUmVz ZXRWZWN0b3INCj4gPj4gICBPdm1mUGtnOiBBZGQgUmVsb2FkRmxhdDMyDQo+ID4+ICAgT3ZtZlBr ZzogQWRkIEluaXQzMg0KPiA+PiAgIE92bWZQa2c6IENyZWF0ZSBNYWluLmFzbSBpbiBSZXNldFZl Y3Rvcg0KPiA+PiAgIE92bWZQa2c6IFVwZGF0ZSBSZXNldFZlY3RvciB0byBzdXBwb3J0IFRkeA0K PiA+Pg0KPiA+PiAgT3ZtZlBrZy9Pdm1mUGtnLmRlYyAgICAgICAgICAgICAgICAgICAgICAgICAg fCAgMTMgKw0KPiA+PiAgT3ZtZlBrZy9Pdm1mUGtnRGVmaW5lcy5mZGYuaW5jICAgICAgICAgICAg ICAgfCAgMTIgKy0NCj4gPj4gIE92bWZQa2cvT3ZtZlBrZ1g2NC5mZGYgICAgICAgICAgICAgICAg ICAgICAgIHwgICA2ICsNCj4gPj4gIE92bWZQa2cvUmVzZXRWZWN0b3IvSWExNi9SZXNldFZlY3Rv clZ0ZjAuYXNtIHwgIDM4ICsrDQo+ID4+ICBPdm1mUGtnL1Jlc2V0VmVjdG9yL0lhMzIvQW1kU2V2 LmFzbSAgICAgICAgICB8IDUyNiArKysrKysrKysrKysrKysrKysrDQo+ID4+ICBPdm1mUGtnL1Jl c2V0VmVjdG9yL0lhMzIvRmxhdDMyVG9GbGF0NjQuYXNtICB8IDExMCArLS0tDQo+ID4+ICBPdm1m UGtnL1Jlc2V0VmVjdG9yL0lhMzIvSW5pdDMyLmFzbSAgICAgICAgICB8ICAzMiArKw0KPiA+PiAg T3ZtZlBrZy9SZXNldFZlY3Rvci9JYTMyL0ludGVsVGR4LmFzbSAgICAgICAgfCAxNzIgKysrKysr DQo+ID4+ICBPdm1mUGtnL1Jlc2V0VmVjdG9yL0lhMzIvUGFnZVRhYmxlczY0LmFzbSAgICB8IDQ3 OCArKystLS0tLS0tLS0tLS0tLQ0KPiA+PiAgT3ZtZlBrZy9SZXNldFZlY3Rvci9JYTMyL1JlbG9h ZEZsYXQzMi5hc20gICAgfCAgNDQgKysNCj4gPj4gIE92bWZQa2cvUmVzZXRWZWN0b3IvTWFpbi5h c20gICAgICAgICAgICAgICAgIHwgMTE5ICsrKysrDQo+ID4+ICBPdm1mUGtnL1Jlc2V0VmVjdG9y L1Jlc2V0VmVjdG9yLmluZiAgICAgICAgICB8ICAxMSArLQ0KPiA+PiAgT3ZtZlBrZy9SZXNldFZl Y3Rvci9SZXNldFZlY3Rvci5uYXNtYiAgICAgICAgfCAgNjYgKystDQo+ID4+ICBPdm1mUGtnL1Jl c2V0VmVjdG9yL1g2NC9UZHhNZXRhZGF0YS5hc20gICAgICB8ICA5NyArKysrDQo+ID4+ICAxNCBm aWxlcyBjaGFuZ2VkLCAxMjI0IGluc2VydGlvbnMoKyksIDUwMCBkZWxldGlvbnMoLSkNCj4gPj4g IGNyZWF0ZSBtb2RlIDEwMDY0NCBPdm1mUGtnL1Jlc2V0VmVjdG9yL0lhMzIvQW1kU2V2LmFzbQ0K PiA+PiAgY3JlYXRlIG1vZGUgMTAwNjQ0IE92bWZQa2cvUmVzZXRWZWN0b3IvSWEzMi9Jbml0MzIu YXNtDQo+ID4+ICBjcmVhdGUgbW9kZSAxMDA2NDQgT3ZtZlBrZy9SZXNldFZlY3Rvci9JYTMyL0lu dGVsVGR4LmFzbQ0KPiA+PiAgY3JlYXRlIG1vZGUgMTAwNjQ0IE92bWZQa2cvUmVzZXRWZWN0b3Iv SWEzMi9SZWxvYWRGbGF0MzIuYXNtDQo+ID4+ICBjcmVhdGUgbW9kZSAxMDA2NDQgT3ZtZlBrZy9S ZXNldFZlY3Rvci9NYWluLmFzbQ0KPiA+PiAgY3JlYXRlIG1vZGUgMTAwNjQ0IE92bWZQa2cvUmVz ZXRWZWN0b3IvWDY0L1RkeE1ldGFkYXRhLmFzbQ0KPiA+Pg0KPiA+PiAtLQ0KPiA+PiAyLjI5LjIu d2luZG93cy4yDQo+ID4+DQo+ID4+DQo+ID4+DQo+ID4+DQo+ID4+DQo+IA0KPiANCj4gDQo+IA0K DQo=