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.web10.22861.1681238931790132876 for ; Tue, 11 Apr 2023 11:48:52 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=THz246aM; spf=pass (domain: intel.com, ip: 134.134.136.24, mailfrom: michael.d.kinney@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1681238931; x=1712774931; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=k2A1baN5QdbWPZ3hU2ljkoEMuWub5J2/qRjbyOaccVo=; b=THz246aMYahxBILYadNGX8JtwhFbllQM4b0iJctuA+ZcEVlQIFyvIr1K BvZXX+Cww5ujZxa7tJ488vmoCP0Qwuc+4o3zj0ZHGkUKDGdxgAPu6lO3G c33GxFZs7Xx7u3lE0ZBZTbtjo1JrNH+1b0SGv+ic4rll80+AoON6LN0+G GMN+Fjf0p1HliPcymGBBQAOb7Iae706Cm/0oplNLHcOVd+xDjRkhRQPX8 299jYtyWKYhGbmnFcl/XISKde31AUM9jY4/r+0qnb53tiXjxuuBghJUKM Di9KkGsLtjTOXo/vHSuRY1Wzp0+5M3dFW1I72Q81PXepjRpcLeAL6eHCD w==; X-IronPort-AV: E=McAfee;i="6600,9927,10677"; a="345496617" X-IronPort-AV: E=Sophos;i="5.98,336,1673942400"; d="scan'208";a="345496617" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Apr 2023 11:48:50 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10677"; a="666064914" X-IronPort-AV: E=Sophos;i="5.98,336,1673942400"; d="scan'208";a="666064914" Received: from orsmsx601.amr.corp.intel.com ([10.22.229.14]) by orsmga006.jf.intel.com with ESMTP; 11 Apr 2023 11:48:49 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Tue, 11 Apr 2023 11:48:49 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Tue, 11 Apr 2023 11:48:49 -0700 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23 via Frontend Transport; Tue, 11 Apr 2023 11:48:49 -0700 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.45) 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.2507.21; Tue, 11 Apr 2023 11:48:49 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Zk6PIRraqlVJEgYMRpEhF5FZa0WaJ9gUOvIKoIg2eUlLefOh9//la1yOPqng9xz2ZulfzGQEqoUoRk5O6PErCqyTeNdH5+QHNEd3inbc3qc/fBhE4o8713RzuMovW6uGk9FqmAnZBzYUSbI1frzww9bWoNyD7CbGur85fbbOI1WHiFVmiW/lD+88MmDuUVwkOLZVBThiysbIl9MnaqYpOC7Q5xWwgkid+vdEDpat54+eEguAYViAKKUtAaUUPdvyHA5q/Q4gBNfmjmIMmzPXM1BsNPZdPD/vfL4fA3YiDM9xGt90JoVN7yd40IpGUKT4SvR3OJjN5yf41GSFx6lvug== 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=k2A1baN5QdbWPZ3hU2ljkoEMuWub5J2/qRjbyOaccVo=; b=U6Rnan/Me9l/WnqocWXhlcdmG25MWjaFFKPs+QY8C+RIS9uFd7HE+kMsrK5IbtGNKoJoM8Nupgb4Xj5N0Mu4wxjn4WZU3zQMWScXnzA4RJBgngvEsfhbuS13m2gmy+S4wlIfQlxTOlJPr4LAUjyuQpZCWESbtOxn9AtcbQ63/bCN/1Ueur566cRcNfEOceite3BQIvnh/0iRQ50Kb3L6lKLa/JKuILV67/nYorxYWMExoPxTZpNiKNLXYkPJKKcp4U/vE7QJWXvwxI+xNvCUyZePRYXf2kbksd2iFun7IjDeW54s6tfPZCtroZ5hwIGk4CIK9XaQf76VAlXjXdRlxA== 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 Received: from CO1PR11MB4929.namprd11.prod.outlook.com (2603:10b6:303:6d::19) by SA2PR11MB5145.namprd11.prod.outlook.com (2603:10b6:806:113::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6277.38; Tue, 11 Apr 2023 18:48:46 +0000 Received: from CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::7920:244:f7f8:3196]) by CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::7920:244:f7f8:3196%5]) with mapi id 15.20.6298.028; Tue, 11 Apr 2023 18:48:46 +0000 From: "Michael D Kinney" To: "Attar, AbdulLateef (Abdul Lateef)" , "Chang, Abner" , "devel@edk2.groups.io" CC: "Grimes, Paul" , "Kirkendall, Garrett" , "Dong, Eric" , "Ni, Ray" , "Kumar, Rahul R" , Gerd Hoffmann , "Gao, Liming" , "Liu, Zhiguang" , Ard Biesheuvel , "Yao, Jiewen" , "Justen, Jordan L" , "Kinney, Michael D" Subject: Re: [PATCH v8 0/9] Adds AmdSmmCpuFeaturesLib and SmmSmramSaveStateLib Thread-Topic: [PATCH v8 0/9] Adds AmdSmmCpuFeaturesLib and SmmSmramSaveStateLib Thread-Index: AQHZbCxwUGPwjOAMkUihcfL15eGE968mc7uA Date: Tue, 11 Apr 2023 18:48:46 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_ActionId=c569055e-c7c6-443b-b17a-a1f1e4c42563;MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_ContentBits=0;MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_Enabled=true;MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_Method=Standard;MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_Name=General;MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_SetDate=2023-04-11T01:07:33Z;MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_SiteId=3dd8961f-e488-4e60-8e11-a82d994e183d; authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CO1PR11MB4929:EE_|SA2PR11MB5145:EE_ x-ms-office365-filtering-correlation-id: 1de063d7-6857-4902-1af3-08db3abd617e x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: dJuOXUas/m4AsJck6TQU/9Xk8HcdG2oo60YjS2RBJpgUA5Nsf3Zz3qTk3KJPvhB5QFeNMxkUnKYve29x3rwXXw245XWIIyq/3TPdhQx9820ydh2Rrl+CZ0sAR3BhTF+PGoslZTnQ2kSfFoGmqnZ5H9X5+IokHHDDoVcZ3jYlFfC/fWVw+7BJSU+nDnTY7Y+GvmGlTFj8SZbfP42ax3wEXMOn9yKjoTXpa207LAh6wZCTq5iZglxvhqICa6eewV7PwrChtHtHh3IfpHRbGPbnlRXRywJumsrNRtl7EyqdNowGdOVrqNEeWROLAN7tHKfTRC4/Xsih4QHTbJ5V06aLYGTBH5CIFrnp6k/iV9VtoqIqiG2SScHrHIVRdxZQSMnq+66PnSmluHu4m/zyF8Sf7+CZLM+WZ4QEmlXWlqRLBHvXGcqZglvfMqiZ9twjtE8fFoY/dnDpwKHde6ozSQofg2Pz1wLYq2VULoWJwdFHUT3KT1ddoVrKydvk5Z6OWAaXMhez912pUcxItjMxDPDrg7Sm2uPxg5YrgYy/JsFIKayLR11mT8ea+9JokitDfM50Rm8FQrT/LAVYzAnpqUoT3JPhzEqaCiMka1yfTmiW3L3W78wb+ogUsdWOItaqWwtj x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR11MB4929.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(136003)(346002)(376002)(396003)(366004)(451199021)(71200400001)(478600001)(7696005)(33656002)(55016003)(82960400001)(83380400001)(38100700002)(122000001)(86362001)(38070700005)(19627235002)(2906002)(110136005)(53546011)(6506007)(316002)(186003)(5660300002)(966005)(26005)(54906003)(9686003)(66556008)(66446008)(64756008)(107886003)(41300700001)(8936002)(66476007)(8676002)(52536014)(76116006)(66946007)(4326008)(213903007);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?YXNiVWNKZXhtbHJ3a3N1WnlWZzZVY3lsUGovR3J2L2pYdUVERWprK0pyUk5y?= =?utf-8?B?L05ZZ1lsVi9TeDI4Z3JiVnFqWTZRYVFTTW1teExIanB6ajFVUUR1L1pBdEZZ?= =?utf-8?B?SjVoZDJNS3RKL1NFSG5SdndEUkNyckdPVXFWYXhiRHAzdEZCYTlBemZpbG4x?= =?utf-8?B?NFhsUDliTm00bGVRM2ZGQ2hrQkVwYzVzM290M1RVVC9SOEpXOHhNSzE3Ly8v?= =?utf-8?B?bWVhMXN3bnZQeVhtRGE1NUU2ZlNVaW90ZG4xM0NEd0Nzak5CT3FwNTEreXda?= =?utf-8?B?bWlYelpLRmZVUTMrY2p5a0owVUFuOFRia0pvNjI4L0xxakNoQmkwa1U1YVJx?= =?utf-8?B?MExtVHpuQ2VuVVlicW9tZXhGcTdyd0IrVmhWd1A5eFFmRE93azVzdGFVdlp5?= =?utf-8?B?Y3NoU0ZoM1p3VUJoTlhUYnhQSnJMVHNRWTJQcHZJWkZ2ZnkzVmhSQTU3NlRQ?= =?utf-8?B?UlBySHowVXo0UkhuK3NVZzNQajhUdDg5OTJMYjNHK1lCSXQycWRzLzZPRXVZ?= =?utf-8?B?MGVMQUF4ZzRDVWhSY0llZnNRdmNnYWdhUkdWL1V3endXTS90b0FqTmd4dHZm?= =?utf-8?B?N2dyQ0Z5U251YkgwL3lhbTAwRitlbzByWlprUktteVZmZWRrOWZkSmJ4aHdj?= =?utf-8?B?NnZzVkZ0Y2d2NmRSaE5RNXpDY1hTbUNubmxGYjgyVzE5M3dKSGllMk1mL1ln?= =?utf-8?B?bmo0SVdvWk9tYitueHFHalc0NjNxNzV0MUhVQktpQ2pxOHNTL3A5cTNESTQ4?= =?utf-8?B?ZmtPYmRYLzRiYW8wMnVPWmJkNGw0ejQ2YWxlOXhFcXhNVFNFN01iUGRQdG9w?= =?utf-8?B?QmtyWjF4MjIzVlN0VE9WTEh6VTNOOXlQN28zbjJ3WExuTHFibG9XMFZjTmlI?= =?utf-8?B?MkUzeHdIdUpNUk5mNU9tSE9tb05nd1VOTXdZREtELy91VUJlT3BNTFIrcnho?= =?utf-8?B?MWJrMGh3Y3l5MVV6Si9GNkhXY0tWdWlZamc1M2g1MmNYSDNtQmpxVnkxREFV?= =?utf-8?B?aldoTXhONzBVdGVEa3NrYmxsaGtBakpFS21hTnlGaVZCWTV2RmZHSk1QT0hB?= =?utf-8?B?TU1ZN2M5S1VLUDA2RzYzekNNcWM1MnEwSkNQWDliay9aNFFIYlhtOFY0MHJp?= =?utf-8?B?MzdvdnhPelpyZnVnYzl1ZnBvL3phbmR4UkVNS2c2dFY0RkZQNmlSZGZuKzlM?= =?utf-8?B?YlNBRHdSaC9aWGRHU3E1OXNiSjNuNzQwYmszbS9hSjZvUWo4dmdJU3lSNHIw?= =?utf-8?B?ZkFUQmdmQjFwRjBUYnl3YjBJSlJlSHhVcTBndHFqczh0MXN2ais2aE9MQ2k1?= =?utf-8?B?UmNVbW5DS0FwbUFyRXRnVnJXVzFiZFRYQ3Z0aE96M0tUblZTRVB2U1JKRnlQ?= =?utf-8?B?SGZpZG5RdzNXSWFvTDlEQW9oMFpKMXlNUjdaVk1JbEk1UDJBUmlOOTFTd1Y3?= =?utf-8?B?KzZ2QlNhSG1nemUyV0poYlRpeUxvNmdoVXhYSDVBdFEwM1dyU0syZ0pwU1c1?= =?utf-8?B?NmxoU0NXV1B4VkNzYnNBeG9JM1p2emxib0FVTnhtQ1lZQm14aWcwcmJzWXZz?= =?utf-8?B?M2pjWnpRL0g5cUkyY0IrekZWcHVTTDlXT3FhVUtneENWRERUWkFjalB0ODl3?= =?utf-8?B?c2dsWUU3RkllYTY0dCtoTFFUWnZpU0p1TlE3bTBaK1Y5RE1XdmNiNzJCS0NZ?= =?utf-8?B?TlA5dDJrY05pc0ZDZEYyTHEvOTRuSjdBSW9SZWFXN1pjZ09pa2lsZ0NOQTdG?= =?utf-8?B?Um9sUk9wYWRCOXhIWkNVMXlMeS9HU3FXYlZCWHNsNElGaE9yUzVRR1JCOHZa?= =?utf-8?B?cHFBZm1yUktJd01sRU5KNVo3bSs3dG1pOWYvVWQrQlNwNk1oZnNJMzZhTmRK?= =?utf-8?B?Q1RKbHFHbGRNdGxQdEMyZHVMakVLU0ptSTIwcjRVVVNpZ1pBMW03YkRpSkRW?= =?utf-8?B?OGViOTNPN1h3ckVwbEt5bVIwemIwd1Y0T2F6eUlDeHdSWXBtUFh6QUZlRWps?= =?utf-8?B?eHVkcEhSNWF3UHFlVjBHVGpON0s5SDlsZWJvcTMzT29mVEZ6UkRVRVY1REg0?= =?utf-8?B?SVZyOHVIZkxaOHVOUHF5N3pUWlhvOHdDNWZMVGZhaXN5VEZabVVGME5TZFVI?= =?utf-8?B?UmhRMWQ2T2tyT2xMZmpLVzRQa2o2aE40OEw2Tnk1ZG1LZCtUNzhkWWdTNUdy?= =?utf-8?B?eVE9PQ==?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CO1PR11MB4929.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1de063d7-6857-4902-1af3-08db3abd617e X-MS-Exchange-CrossTenant-originalarrivaltime: 11 Apr 2023 18:48:46.1382 (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: jfqXH4NaRKck9f1xLcuGJQ345mL5q8P5Aui5z8EpewOblBzKGvBJfgL7c39kLNh7vbrgJuAIVnPGPW1UT2LlN1LwVzdqrZvqfWyg02Go6Nk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA2PR11MB5145 Return-Path: michael.d.kinney@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 VGhhbmtzIGZvciB0aGUgZmVlZGJhY2sgQWJkdWwuICBXZSB1c3VhbGx5IGRvIG5vdCBzZWUgdGhp cyBpbiB0aGUgaGlzdG9yeSBmb3IgYSBuZXcgbGliIGluc3RhbmNlLg0KDQpJIGtub3cgd2UgcmVj b21tZW5kIGRldmVsb3BlcnMgc3RhcnQgZnJvbSBhIHRlbXBsYXRlIG9mIGEgbGliIGluc3RhbmNl IGlmIGl0IGlzIGF2YWlsYWJsZQ0KYW5kIHRoZW4gZmlsbCBpbiB0aGUgc3BlY2lmaWMgaW1wbGVt ZW50YXRpb24sIGJ1dCB0aG9zZSAyIHN0ZXBzIGRvIG5vdCBnbyBpbnRvIGNvbW1pdA0KaGlzdG9y eS4NCg0KTWlrZQ0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IEF0dGFy LCBBYmR1bExhdGVlZiAoQWJkdWwgTGF0ZWVmKSA8QWJkdWxMYXRlZWYuQXR0YXJAYW1kLmNvbT4N Cj4gU2VudDogTW9uZGF5LCBBcHJpbCAxMCwgMjAyMyA5OjE3IFBNDQo+IFRvOiBDaGFuZywgQWJu ZXIgPEFibmVyLkNoYW5nQGFtZC5jb20+OyBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtp bm5leUBpbnRlbC5jb20+OyBkZXZlbEBlZGsyLmdyb3Vwcy5pbw0KPiBDYzogR3JpbWVzLCBQYXVs IDxQYXVsLkdyaW1lc0BhbWQuY29tPjsgS2lya2VuZGFsbCwgR2FycmV0dCA8R2FycmV0dC5LaXJr ZW5kYWxsQGFtZC5jb20+OyBEb25nLCBFcmljDQo+IDxlcmljLmRvbmdAaW50ZWwuY29tPjsgTmks IFJheSA8cmF5Lm5pQGludGVsLmNvbT47IEt1bWFyLCBSYWh1bCBSIDxyYWh1bC5yLmt1bWFyQGlu dGVsLmNvbT47IEdlcmQgSG9mZm1hbm4NCj4gPGtyYXhlbEByZWRoYXQuY29tPjsgR2FvLCBMaW1p bmcgPGdhb2xpbWluZ0BieW9zb2Z0LmNvbS5jbj47IExpdSwgWmhpZ3VhbmcgPHpoaWd1YW5nLmxp dUBpbnRlbC5jb20+OyBBcmQgQmllc2hldXZlbA0KPiA8YXJkYit0aWFub2NvcmVAa2VybmVsLm9y Zz47IFlhbywgSmlld2VuIDxqaWV3ZW4ueWFvQGludGVsLmNvbT47IEp1c3RlbiwgSm9yZGFuIEwg PGpvcmRhbi5sLmp1c3RlbkBpbnRlbC5jb20+DQo+IFN1YmplY3Q6IFJFOiBbUEFUQ0ggdjggMC85 XSBBZGRzIEFtZFNtbUNwdUZlYXR1cmVzTGliIGFuZCBTbW1TbXJhbVNhdmVTdGF0ZUxpYg0KPiAN Cj4gW0FNRCBPZmZpY2lhbCBVc2UgT25seSAtIEdlbmVyYWxdDQo+IA0KPiBIaSBNaWtlLCBBYm5l ciwNCj4gICAgICAgICBQYXRjaCA1LzkgaXMgYmxhbmsgaW1wbGVtZW50YXRpb24gb2YgU21tQ3B1 RmVhdHVyZXNMaWIgbGlicmFyeSBjbGFzcy4NCj4gV2hlcmVhcyBwYXRjaCA2LzkgaXMgYWN0dWFs IGltcGxlbWVudGF0aW9uIG9mIHRoZSBsaWJyYXJ5IGZvciBBTUQgcHJvY2Vzc29yIGZhbWlseS4N Cj4gSSBoYWQgc2VwYXJhdGVkIGluIHR3byBkaWZmZXJlbnQgcGF0Y2hlcyBmb3IgZWFzeSB0byBy ZXZpZXcuDQo+IFRoYW5rcw0KPiBBYmR1TA0KPiANCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0t LS0NCj4gRnJvbTogQ2hhbmcsIEFibmVyIDxBYm5lci5DaGFuZ0BhbWQuY29tPg0KPiBTZW50OiAx MSBBcHJpbCAyMDIzIDA2OjM4DQo+IFRvOiBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtp bm5leUBpbnRlbC5jb20+OyBBdHRhciwgQWJkdWxMYXRlZWYgKEFiZHVsIExhdGVlZikgPEFiZHVs TGF0ZWVmLkF0dGFyQGFtZC5jb20+Ow0KPiBkZXZlbEBlZGsyLmdyb3Vwcy5pbw0KPiBDYzogR3Jp bWVzLCBQYXVsIDxQYXVsLkdyaW1lc0BhbWQuY29tPjsgS2lya2VuZGFsbCwgR2FycmV0dCA8R2Fy cmV0dC5LaXJrZW5kYWxsQGFtZC5jb20+OyBEb25nLCBFcmljDQo+IDxlcmljLmRvbmdAaW50ZWwu Y29tPjsgTmksIFJheSA8cmF5Lm5pQGludGVsLmNvbT47IEt1bWFyLCBSYWh1bCBSIDxyYWh1bC5y Lmt1bWFyQGludGVsLmNvbT47IEdlcmQgSG9mZm1hbm4NCj4gPGtyYXhlbEByZWRoYXQuY29tPjsg R2FvLCBMaW1pbmcgPGdhb2xpbWluZ0BieW9zb2Z0LmNvbS5jbj47IExpdSwgWmhpZ3VhbmcgPHpo aWd1YW5nLmxpdUBpbnRlbC5jb20+OyBBcmQgQmllc2hldXZlbA0KPiA8YXJkYit0aWFub2NvcmVA a2VybmVsLm9yZz47IFlhbywgSmlld2VuIDxqaWV3ZW4ueWFvQGludGVsLmNvbT47IEp1c3Rlbiwg Sm9yZGFuIEwgPGpvcmRhbi5sLmp1c3RlbkBpbnRlbC5jb20+DQo+IFN1YmplY3Q6IFJFOiBbUEFU Q0ggdjggMC85XSBBZGRzIEFtZFNtbUNwdUZlYXR1cmVzTGliIGFuZCBTbW1TbXJhbVNhdmVTdGF0 ZUxpYg0KPiANCj4gW0FNRCBPZmZpY2lhbCBVc2UgT25seSAtIEdlbmVyYWxdDQo+IA0KPiBIaSBN aWtlLA0KPiBJIHRoaW5rIDUvOSB3YXMgYWRkZWQgZm9yIHRob3NlIGZ1bmN0aW9ucyBBTUQgaGFz IG5vIGltcGxlbWVudGF0aW9uIGFzIHRoZSBpbml0aWFsIGNvbW1pdCwgd2hpbGUgNi85IHdhcyB1 cGRhdGVkIGZvciB0aGUNCj4gZnVuY3Rpb25zIHdpdGggQU1EIGltcGxlbWVudGF0aW9ucy4NCj4g QEF0dGFyLCBBYmR1bExhdGVlZiAoQWJkdWwgTGF0ZWVmKWNhbiBjb25maXJtIHRoaXMuDQo+IA0K PiBUaGFua3MNCj4gQWJuZXINCj4gDQo+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4g PiBGcm9tOiBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+ ID4gU2VudDogVHVlc2RheSwgQXByaWwgMTEsIDIwMjMgMTI6MjkgQU0NCj4gPiBUbzogQXR0YXIs IEFiZHVsTGF0ZWVmIChBYmR1bCBMYXRlZWYpIDxBYmR1bExhdGVlZi5BdHRhckBhbWQuY29tPjsN Cj4gPiBkZXZlbEBlZGsyLmdyb3Vwcy5pbw0KPiA+IENjOiBHcmltZXMsIFBhdWwgPFBhdWwuR3Jp bWVzQGFtZC5jb20+OyBLaXJrZW5kYWxsLCBHYXJyZXR0DQo+ID4gPEdhcnJldHQuS2lya2VuZGFs bEBhbWQuY29tPjsgQ2hhbmcsIEFibmVyIDxBYm5lci5DaGFuZ0BhbWQuY29tPjsNCj4gPiBEb25n LCBFcmljIDxlcmljLmRvbmdAaW50ZWwuY29tPjsgTmksIFJheSA8cmF5Lm5pQGludGVsLmNvbT47 IEt1bWFyLA0KPiA+IFJhaHVsIFIgPHJhaHVsLnIua3VtYXJAaW50ZWwuY29tPjsgR2VyZCBIb2Zm bWFubiA8a3JheGVsQHJlZGhhdC5jb20+Ow0KPiA+IEdhbywgTGltaW5nIDxnYW9saW1pbmdAYnlv c29mdC5jb20uY24+OyBMaXUsIFpoaWd1YW5nDQo+ID4gPHpoaWd1YW5nLmxpdUBpbnRlbC5jb20+ OyBBcmQgQmllc2hldXZlbCA8YXJkYit0aWFub2NvcmVAa2VybmVsLm9yZz47DQo+ID4gWWFvLCBK aWV3ZW4gPGppZXdlbi55YW9AaW50ZWwuY29tPjsgSnVzdGVuLCBKb3JkYW4gTA0KPiA+IDxqb3Jk YW4ubC5qdXN0ZW5AaW50ZWwuY29tPjsgS2lubmV5LCBNaWNoYWVsIEQNCj4gPiA8bWljaGFlbC5k Lmtpbm5leUBpbnRlbC5jb20+DQo+ID4gU3ViamVjdDogUkU6IFtQQVRDSCB2OCAwLzldIEFkZHMg QW1kU21tQ3B1RmVhdHVyZXNMaWIgYW5kDQo+ID4gU21tU21yYW1TYXZlU3RhdGVMaWINCj4gPg0K PiA+IENhdXRpb246IFRoaXMgbWVzc2FnZSBvcmlnaW5hdGVkIGZyb20gYW4gRXh0ZXJuYWwgU291 cmNlLiBVc2UgcHJvcGVyDQo+ID4gY2F1dGlvbiB3aGVuIG9wZW5pbmcgYXR0YWNobWVudHMsIGNs aWNraW5nIGxpbmtzLCBvciByZXNwb25kaW5nLg0KPiA+DQo+ID4NCj4gPiBJcyB0aGVyZSBhIHJl YXNvbiB3aHkgcGF0Y2hlcyA1IGFuZCA2IHdoZXJlIG5vdCBjb21iaW5lZD8NCj4gPg0KPiA+IE1p a2UNCj4gPg0KPiA+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+IEZyb206IEFi ZHVsIExhdGVlZiBBdHRhciA8YWJkYXR0YXJAYW1kLmNvbT4NCj4gPiA+IFNlbnQ6IE1vbmRheSwg QXByaWwgMTAsIDIwMjMgNDoxMCBBTQ0KPiA+ID4gVG86IGRldmVsQGVkazIuZ3JvdXBzLmlvDQo+ ID4gPiBDYzogQWJkdWwgTGF0ZWVmIEF0dGFyIDxhYmRhdHRhckBhbWQuY29tPjsgUGF1bCBHcmlt ZXMNCj4gPiA+IDxwYXVsLmdyaW1lc0BhbWQuY29tPjsgR2FycmV0dCBLaXJrZW5kYWxsDQo+ID4g PiA8Z2FycmV0dC5raXJrZW5kYWxsQGFtZC5jb20+OyBBYm5lciBDaGFuZyA8YWJuZXIuY2hhbmdA YW1kLmNvbT47DQo+ID4gRG9uZywNCj4gPiA+IEVyaWMgPGVyaWMuZG9uZ0BpbnRlbC5jb20+OyBO aSwgUmF5IDxyYXkubmlAaW50ZWwuY29tPjsgS3VtYXIsIFJhaHVsDQo+ID4gPiBSIDxyYWh1bC5y Lmt1bWFyQGludGVsLmNvbT47IEdlcmQgSG9mZm1hbm4gPGtyYXhlbEByZWRoYXQuY29tPjsNCj4g PiBLaW5uZXksDQo+ID4gPiBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPjsg R2FvLCBMaW1pbmcNCj4gPiA+IDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+OyBMaXUsIFpoaWd1 YW5nIDx6aGlndWFuZy5saXVAaW50ZWwuY29tPjsNCj4gPiA+IEFyZCBCaWVzaGV1dmVsIDxhcmRi K3RpYW5vY29yZUBrZXJuZWwub3JnPjsgWWFvLCBKaWV3ZW4NCj4gPiA+IDxqaWV3ZW4ueWFvQGlu dGVsLmNvbT47IEp1c3RlbiwgSm9yZGFuIEwgPGpvcmRhbi5sLmp1c3RlbkBpbnRlbC5jb20+DQo+ ID4gPiBTdWJqZWN0OiBbUEFUQ0ggdjggMC85XSBBZGRzIEFtZFNtbUNwdUZlYXR1cmVzTGliIGFu ZA0KPiA+ID4gU21tU21yYW1TYXZlU3RhdGVMaWINCj4gPiA+DQo+ID4gPiBQUjogaHR0cHM6Ly9n aXRodWIuY29tL3RpYW5vY29yZS9lZGsyL3B1bGwvNDI1OA0KPiA+ID4NCj4gPiA+IFY4IGRlbHRh IGNoYW5nZXM6DQo+ID4gPiAgICBBZGRyZXNzZWQgcmV2aWV3IGNvbW1lbnRzIGZyb20gQWJuZXIs DQo+ID4gPiAgICBGaXggdGhlIHdoaXRlc3BhY2UgZXJyb3IuDQo+ID4gPiAgICBTZXBlcmF0ZSB0 aGUgT3ZtZiBjaGFuZ2VzIHRvIGFub3RoZXIgcGF0Y2gNCj4gPiA+IFY3IGRlbHRhIGNoYW5nZXM6 DQo+ID4gPiAgICBBZGRzIFNtbVNtcmFtU2F2ZVN0YXRlTGliIGZvciBJbnRlbCBwcm9jZXNzb3Iu DQo+ID4gPiAgICBJbnRlZ3JhdGUgU21tU21yYW1TYXZlU3RhdGVMaWIgbGlicmFyeS4NCj4gPiA+ IFY2IGRlbHRhIGNoYW5nZXM6DQo+ID4gPiAgICBBZGRyZXNzZWQgcmV2aWV3IGNvbW1lbnRzIGZv ciBSYXkgTkkuDQo+ID4gPiAgICByZW1vdmVkIHVubmVjZXNzYXJ5IEVGSUFQSS4NCj4gPiA+IFY1 IGRlbHRhIGNoYW5nZXM6DQo+ID4gPiAgICByZWJhc2UgdG8gbWFzdGVyIGJyYW5jaC4NCj4gPiA+ ICAgIHVwZGF0ZWQgUmV2aWV3ZWQtYnkNCj4gPiA+IFY0IGRlbHRhIGNoYW5nZXM6DQo+ID4gPiAg IHJlYmFzZSB0byBtYXN0ZXIgYnJhbmNoLg0KPiA+ID4gICBhZGRlZCByZXZpZXdlZC1ieS4NCj4g PiA+IFYzIGRlbHRhIGNoYW5nZXM6DQo+ID4gPiAgIEFkZHJlc3NlZCByZXZpZXcgY29tbWVudHMg ZnJvbSBBYm5lciBjaGFuZy4NCj4gPiA+ICAgUmUtYXJyYW5nZWQgcGF0Y2ggb3JkZXIuDQo+ID4g Pg0KPiA+ID4gQ2M6IFBhdWwgR3JpbWVzIDxwYXVsLmdyaW1lc0BhbWQuY29tPg0KPiA+ID4gQ2M6 IEdhcnJldHQgS2lya2VuZGFsbCA8Z2FycmV0dC5raXJrZW5kYWxsQGFtZC5jb20+DQo+ID4gPiBD YzogQWJuZXIgQ2hhbmcgPGFibmVyLmNoYW5nQGFtZC5jb20+DQo+ID4gPiBDYzogRXJpYyBEb25n IDxlcmljLmRvbmdAaW50ZWwuY29tPg0KPiA+ID4gQ2M6IFJheSBOaSA8cmF5Lm5pQGludGVsLmNv bT4NCj4gPiA+IENjOiBSYWh1bCBLdW1hciA8cmFodWwxLmt1bWFyQGludGVsLmNvbT4NCj4gPiA+ IENjOiBHZXJkIEhvZmZtYW5uIDxrcmF4ZWxAcmVkaGF0LmNvbT4NCj4gPiA+IENjOiBNaWNoYWVs IEQgS2lubmV5IDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4NCj4gPiA+IENjOiBMaW1pbmcg R2FvIDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+DQo+ID4gPiBDYzogWmhpZ3VhbmcgTGl1IDx6 aGlndWFuZy5saXVAaW50ZWwuY29tPg0KPiA+ID4gQ2M6IEFyZCBCaWVzaGV1dmVsIDxhcmRiK3Rp YW5vY29yZUBrZXJuZWwub3JnPg0KPiA+ID4gQ2M6IEppZXdlbiBZYW8gPGppZXdlbi55YW9AaW50 ZWwuY29tPg0KPiA+ID4gQ2M6IEpvcmRhbiBKdXN0ZW4gPGpvcmRhbi5sLmp1c3RlbkBpbnRlbC5j b20+DQo+ID4gPiBDYzogQWJkdWwgTGF0ZWVmIEF0dGFyIDxhYmRhdHRhckBhbWQuY29tPg0KPiA+ ID4NCj4gPiA+IEFiZHVsIExhdGVlZiBBdHRhciAoOSk6DQo+ID4gPiAgIE1kZVBrZzogQWRkcyBB TUQgU01SQU0gc2F2ZSBzdGF0ZSBtYXANCj4gPiA+ICAgVWVmaUNwdVBrZzogQWRkcyBTbW1TbXJh bVNhdmVTdGF0ZUxpYiBsaWJyYXJ5IGNsYXNzDQo+ID4gPiAgIFVlZmlDcHVQa2c6IEltcGxlbWVu dHMgU21tU21yYW1TYXZlU3RhdGVMaWIgbGlicmFyeSBjbGFzcw0KPiA+ID4gICBVZWZpQ3B1UGtn L1NtbUNwdUZlYXR1cmVzTGliOiBSZXN0cnVjdHVyZSBhcmNoLWRlcGVuZGVudCBjb2RlDQo+ID4g PiAgIFVlZmlDcHVQa2c6IEluaXRpYWwgaW1wbGVtZW50YXRpb24gb2YgQU1EJ3MgU21tQ3B1RmVh dHVyZXNMaWINCj4gPiA+ICAgVWVmaUNwdVBrZzogSW1wbGVtZW50cyBTbW1DcHVGZWF0dXJlc0xp YiBmb3IgQU1EIEZhbWlseQ0KPiA+ID4gICBVZWZpQ3B1UGtnOiBJbXBsZW1lbnRzIFNtbVNtcmFt U2F2ZVN0YXRlTGliIGZvciBJbnRlbA0KPiA+ID4gICBVZWZpQ3B1UGtnOiBVc2VzIFNtbVNtcmFt U2F2ZVN0YXRlTGliIGxpYnJhcnkNCj4gPiA+ICAgT3ZtZlBrZzogVXNlcyBTbW1TbXJhbVNhdmVT dGF0ZUxpYiBsaWJyYXJ5DQo+ID4gPg0KPiA+ID4gIFVlZmlDcHVQa2cvVWVmaUNwdVBrZy5kZWMg ICAgICAgICAgICAgICAgICAgICB8ICAgNCArDQo+ID4gPiAgT3ZtZlBrZy9Pdm1mUGtnSWEzMlg2 NC5kc2MgICAgICAgICAgICAgICAgICAgIHwgICAyICsNCj4gPiA+ICBVZWZpQ3B1UGtnL1VlZmlD cHVQa2cuZHNjICAgICAgICAgICAgICAgICAgICAgfCAgMTUgKw0KPiA+ID4gIC4uLi9BbWRTbW1D cHVGZWF0dXJlc0xpYi5pbmYgICAgICAgICAgICAgICAgICB8ICAzOCArKw0KPiA+ID4gIC4uLi9B bWRTbW1TbXJhbVNhdmVTdGF0ZUxpYi5pbmYgICAgICAgICAgICAgICB8ICAyOCArDQo+ID4gPiAg Li4uL0ludGVsU21tU21yYW1TYXZlU3RhdGVMaWIuaW5mICAgICAgICAgICAgIHwgIDI4ICsNCj4g PiA+ICBVZWZpQ3B1UGtnL1BpU21tQ3B1RHhlU21tL1BpU21tQ3B1RHhlU21tLmluZiAgfCAgIDIg Kw0KPiA+ID4gIC4uLi9JbmNsdWRlL1JlZ2lzdGVyL0FtZC9TbXJhbVNhdmVTdGF0ZU1hcC5oICB8 IDE5NCArKysrKysrDQo+ID4gPiAgLi4uL0luY2x1ZGUvTGlicmFyeS9TbW1TbXJhbVNhdmVTdGF0 ZUxpYi5oICAgIHwgIDcwICsrKw0KPiA+ID4gIC4uLi9TbW1TbXJhbVNhdmVTdGF0ZUxpYi9TbXJh bVNhdmVTdGF0ZS5oICAgICB8IDEwMCArKysrDQo+ID4gPiAgVWVmaUNwdVBrZy9QaVNtbUNwdUR4 ZVNtbS9QaVNtbUNwdUR4ZVNtbS5oICAgIHwgICAyICsNCj4gPiA+ICAuLi4vU21tQ3B1RmVhdHVy ZXNMaWIvQW1kU21tQ3B1RmVhdHVyZXNMaWIuYyAgfCA0NDUNCj4gPiArKysrKysrKysrKysrKysr DQo+ID4gPiAgLi4uL0ludGVsU21tQ3B1RmVhdHVyZXNMaWIuYyAgICAgICAgICAgICAgICAgIHwg MTI4ICsrKysrDQo+ID4gPiAgLi4uL1NtbUNwdUZlYXR1cmVzTGliQ29tbW9uLmMgICAgICAgICAg ICAgICAgIHwgMTI4IC0tLS0tDQo+ID4gPiAgLi4uL1NtbVNtcmFtU2F2ZVN0YXRlTGliL0FtZFNt cmFtU2F2ZVN0YXRlLmMgIHwgMjg2ICsrKysrKysrKysNCj4gPiA+ICAuLi4vSW50ZWxTbXJhbVNh dmVTdGF0ZS5jICAgICAgICAgICAgICAgICAgICAgfCAzNTkgKysrKysrKysrKysrKw0KPiA+ID4g IC4uLi9TbXJhbVNhdmVTdGF0ZUNvbW1vbi5jICAgICAgICAgICAgICAgICAgICB8IDIzMiArKysr KysrKw0KPiA+ID4gIFVlZmlDcHVQa2cvUGlTbW1DcHVEeGVTbW0vUGlTbW1DcHVEeGVTbW0uYyAg ICB8ICAgNSArLQ0KPiA+ID4gIFVlZmlDcHVQa2cvUGlTbW1DcHVEeGVTbW0vU21yYW1TYXZlU3Rh dGUuYyAgICB8IDUwMCArLS0tLS0tLS0tLS0tLS0tLQ0KPiA+IC0NCj4gPiA+ICBNZGVQa2cvTWRl UGtnLmNpLnlhbWwgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDQgKy0NCj4gPiA+ICAyMCBm aWxlcyBjaGFuZ2VkLCAxOTQxIGluc2VydGlvbnMoKyksIDYyOSBkZWxldGlvbnMoLSkgIGNyZWF0 ZSBtb2RlDQo+ID4gPiAxMDA2NDQNCj4gPiBVZWZpQ3B1UGtnL0xpYnJhcnkvU21tQ3B1RmVhdHVy ZXNMaWIvQW1kU21tQ3B1RmVhdHVyZXNMaWIuaW5mDQo+ID4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0 DQo+ID4gPg0KPiA+IFVlZmlDcHVQa2cvTGlicmFyeS9TbW1TbXJhbVNhdmVTdGF0ZUxpYi9BbWRT bW1TbXJhbVNhdmVTdGF0ZUxpYi4NCj4gPiBpbmYNCj4gPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQN Cj4gPiA+DQo+ID4gVWVmaUNwdVBrZy9MaWJyYXJ5L1NtbVNtcmFtU2F2ZVN0YXRlTGliL0ludGVs U21tU21yYW1TYXZlU3RhdGVMaWIuaQ0KPiA+IG5mDQo+ID4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0 DQo+ID4gTWRlUGtnL0luY2x1ZGUvUmVnaXN0ZXIvQW1kL1NtcmFtU2F2ZVN0YXRlTWFwLmgNCj4g PiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQNCj4gPiBVZWZpQ3B1UGtnL0luY2x1ZGUvTGlicmFyeS9T bW1TbXJhbVNhdmVTdGF0ZUxpYi5oDQo+ID4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0DQo+ID4gPiBV ZWZpQ3B1UGtnL0xpYnJhcnkvU21tU21yYW1TYXZlU3RhdGVMaWIvU21yYW1TYXZlU3RhdGUuaA0K PiA+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NA0KPiA+ID4gVWVmaUNwdVBrZy9MaWJyYXJ5L1NtbUNw dUZlYXR1cmVzTGliL0FtZFNtbUNwdUZlYXR1cmVzTGliLmMNCj4gPiA+ICBjcmVhdGUgbW9kZSAx MDA2NDQNCj4gPiA+IFVlZmlDcHVQa2cvTGlicmFyeS9TbW1TbXJhbVNhdmVTdGF0ZUxpYi9BbWRT bXJhbVNhdmVTdGF0ZS5jDQo+ID4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0DQo+ID4gPiBVZWZpQ3B1 UGtnL0xpYnJhcnkvU21tU21yYW1TYXZlU3RhdGVMaWIvSW50ZWxTbXJhbVNhdmVTdGF0ZS5jDQo+ ID4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0DQo+ID4gPiBVZWZpQ3B1UGtnL0xpYnJhcnkvU21tU21y YW1TYXZlU3RhdGVMaWIvU21yYW1TYXZlU3RhdGVDb21tb24uYw0KPiA+ID4NCj4gPiA+IC0tDQo+ ID4gPiAyLjI1LjENCg==