From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by mx.groups.io with SMTP id smtpd.web11.27871.1658972447619258946 for ; Wed, 27 Jul 2022 18:40:48 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=BuexgrHn; spf=pass (domain: intel.com, ip: 192.55.52.151, 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=1658972447; x=1690508447; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=cHG/X9xYYsGn/4lqy6dBO6X9nhEo2X87i1L9XlfdKKc=; b=BuexgrHnGHVwhxUlvlOex37gdqlO8ea0ElitH1K0iszxJCWcSDgTpqEc Ll44dop3P4o2hkqoz6FNNwd3/4/UCdqqM2IVPcp3JhHhgqLrRwWQw12Ql vJgUstztfIS+FwC4vwnngEbvEx9EbI3oRR2GPq16r8Y3iSjrQL1lXGIWT 93nfZrrWiefXlaNejc8bnr+WMXqwRuvcdI/CyqMBG0aIphHyBtN6lFVyh 1c7V9+8dvZ9npc5sRqpNG2WJGNf/uITOlxsM/DyP8SJc1MHoXLds2sQHA zab0jZBScoClFw7RS3unLFG2/uaCHIH/H5mT+9LaP58tQCEls5ogH9eEw g==; X-IronPort-AV: E=McAfee;i="6400,9594,10421"; a="268773607" X-IronPort-AV: E=Sophos;i="5.93,196,1654585200"; d="scan'208";a="268773607" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Jul 2022 18:40:47 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.93,196,1654585200"; d="scan'208";a="659460722" Received: from orsmsx601.amr.corp.intel.com ([10.22.229.14]) by fmsmga008.fm.intel.com with ESMTP; 27 Jul 2022 18:40:47 -0700 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) 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.2375.28; Wed, 27 Jul 2022 18:40:46 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.28; Wed, 27 Jul 2022 18:40:46 -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.2375.28 via Frontend Transport; Wed, 27 Jul 2022 18:40:46 -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.2375.28; Wed, 27 Jul 2022 18:40:42 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=E7qQhfhBTFVaq3k4+mO0VqFEg894Ijh5LteUCbrpjdYb6PiNWFL2DIy97IBhaIWc7mgj+JiDhjkCpTmAS32GOfFr4NKZ5Gus58do4ThGewH90sP80fpjkPpOg2XfIlUqAKv8OWMSNhjGoyNL57+y8mM8QBhale48E5lIe9k9gqf2fS3X6nVY3/0ut5DwRtAvi/7dHcAibV+6TJeAFg4PA8dBMy0S6KZ8LOg0j2SPeAaCDmztq8TBHBrlJMF9DSVluOoYinaSbq5U2VhsAiVRjQRBVJVQHGgTR3LVTFHFHfM2IXUAHHcoBVuY6ojTwKUvxQzJAP9ju0T3/j6tPB7CpQ== 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=cHG/X9xYYsGn/4lqy6dBO6X9nhEo2X87i1L9XlfdKKc=; b=TrvtE2cDfXmlxjhgoemBGHq2XqPFWdIXxFbn5yrBSYRi6XYZQfF3uCM9cUIhkz7kiBmr8r+jGpCC5VGoet9O46aBBTmLS+kD6hUZdJJb9jTKS+TuJuABfm+gqmojAk2JVotZQqcJaHWkCYhqV+8c5KfxdyOzMgiTBhN20w7Gz2E3V9SWUY+VNwkz6rHTO0WHyUtKAPjhhBSoTBYOQVGxbo6pH1L32Zr1FrZl2xNrQRAIcUVrCwKqV/pyQmbMUiYPyc19TJ2CjgxiUziNNaOjQJ/BssA22JZQ5XnLzuqPZHkRWo9Gxyui+2Mkry23Pq/H978hZLz6c5MQo+8v1cWq7g== 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 DM6PR11MB4489.namprd11.prod.outlook.com (2603:10b6:5:203::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5458.21; Thu, 28 Jul 2022 01:40:41 +0000 Received: from CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::99d7:f73:c72c:12f3]) by CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::99d7:f73:c72c:12f3%8]) with mapi id 15.20.5458.024; Thu, 28 Jul 2022 01:40:41 +0000 From: "Michael D Kinney" To: "Zhang, Qi1" , "devel@edk2.groups.io" , "Yao, Jiewen" , "Kinney, Michael D" CC: "Wang, Jian J" Subject: Re: [edk2-devel] [PATCH] SecurityPkg: Add retry mechanism for tpm command Thread-Topic: [edk2-devel] [PATCH] SecurityPkg: Add retry mechanism for tpm command Thread-Index: AQHYoa0JfRfKcLhnFkONkr5dobIMBq2SH1uAgABLHTCAAId+AIAAED2g Date: Thu, 28 Jul 2022 01:40:41 +0000 Message-ID: References: <20220727113532.843-1-qi1.zhang@intel.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.500.17 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 585ea0d5-16ee-46ff-7f5c-08da703a2e4e x-ms-traffictypediagnostic: DM6PR11MB4489:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 8ZHDpRy5TNW+YjrG7rAIaenRx+NkakvtihyQwoyMDT0q1IvC24S/SXwfX7lxJf3qjZ5UcXJrxGbOl3PEWjMzM7eHePN8hy4oHoXl77jJehbGT1X7B5NKqfta8dhHY/Y5Rof9xAdwCcAxPAgdGJUScd+Z56Y1cv3V9tMVw8gBaAOZV/a7mS0jdxGuJFcCkpUlPxzacGEc/RmZGo2EEtQk4HEeYcCvW2XEuZGD5ZJnxog1an68WGJ9WZvv7fwPzL+kL4kcCHBQI2h5YIHhp2DuHT805G+hCqNGRer1Pl7Y2zEhLhdTMXENeaikZ+I+RCs1sOMB7440Mcaf2yzT5me7jNYsflle59/6ovklGnbpHtuYMKJVZ/ciIgO7Gp1IoYUEj2XhwIhE9qj36syGl/0rRvM4oHpSwhZKGih6nKoqOCBt3XXE0zolLttj33+i5EXsR/xh6UbCJEghvn9eN//+L3bnOJKjDCWKSsKfaMPURV0s5U8xsJQSbKKWbvH/2ZvLm/C7B4kSZFRwSggzdNQmMkvTyDv9m7IfG1HwJYs1O9P2MklZ9slaTnJL9QQjHjmyyVmj/qmvRnGsQqqkqQfX8W/XcETPQazA46VYcmyglDvjhrf56BlngVbBzweViJgq2tSQvG6Wbt4h7wO/qec/1G65odDuoXybQaLJAVQNgCXpZTEPfcTWLaipdzvu+JFzuB79XlVqIPrP4VYp5OBTUctr4VXcsFzVbx1hlN1OAfc0LS3bqpdl3EEB0NITcAUKtkvajvmfpDFVlibG9m+fxOUQ3nPT3K4MPKZkLGXPir8y6mVZfxkybf+UZaQu7maK7d6saezaqVFJzHgv/JVHT4TBotOqswnbrw/9SXjxkArw39WtJQR/6MKBGBASBfKd 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:(13230016)(39860400002)(366004)(396003)(346002)(136003)(376002)(38070700005)(82960400001)(52536014)(86362001)(33656002)(38100700002)(19627235002)(83380400001)(122000001)(110136005)(316002)(66446008)(15650500001)(76116006)(66556008)(66476007)(9686003)(55016003)(2906002)(64756008)(5660300002)(107886003)(26005)(7696005)(53546011)(66946007)(8936002)(6506007)(186003)(71200400001)(41300700001)(8676002)(4326008)(966005)(478600001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?UTZJMktnR3d2OXFtYndDbHNmd0pNamZ4MFFzQndjUDA4YTNRTHZXSklDekVO?= =?utf-8?B?SXRuYXJpU3FLM0FnUXZ1bi81NjJITjVreFdFNTk2V1J0cmxLKzVrM1lqSWYv?= =?utf-8?B?dGVBQnUrcUV6Q29HQUdxS0ZkOGlaOWxQVXo1dUFDcnc2SDNxY0VobHBMWGxx?= =?utf-8?B?Uzk3NlQxa3U4eGEwU1ViZjlWZUQwb2p3anNyc3NvRFcwc1A0WkdhaHRZeFgw?= =?utf-8?B?T0RhdENKWWl0VzBGb2pQYlA4OWxPcGZSdG1XTmt0TU1VbVBqYi9uWk4wMDdW?= =?utf-8?B?N1QwZGxqYjE5Njk3VEtnWnB2QXdGaS9EWGVYc2Z2MENNVGFpTVFWU1FPbjVi?= =?utf-8?B?TFBZSDlXNllMRnhYM1hPcFpDOERXYmRTamxiOFBVeDJvekxrSzN0M3k0bmx3?= =?utf-8?B?YVpGT3ZCWXVMMUZ3eHBMdTUyNC9iYnVTeHd1ZWhJdWpJZ1QvT0JTbVRac3do?= =?utf-8?B?WHJ5TW4zWmduUWJRbyszY2dzUHR4Qm8zUXluWnA1MGhQUU9oWUJWMVo3Qmlk?= =?utf-8?B?WW1qVlNYb3NTN1hZM2oreEQ2TnNHOEVScW1ydGpTK0hjWkxYY0NtWmV4REUy?= =?utf-8?B?RnBPUk5GQktxSHQvdnBhZXp6UmtRZDh0RU00WlczNkZVQkY4YVV2OE03TzVN?= =?utf-8?B?NVRyS2h1NEFMTTg1endqVGI1VWJpbDcyUkhZUWY2d0xobnhrTFlWbm5MRlRm?= =?utf-8?B?OVB5UHZKZllIaUhzUjIrSEpkL3gzeUNYbUZwN2thbG41K3N2RThkYmRWRG1X?= =?utf-8?B?WW11ZjlVdXBKK2tTeTBDenMrUDJDaVNqdmU0SUpSOFdiZWFVSWJFaHNtWmxD?= =?utf-8?B?cUVWU2lpRmdGWlFNZXkyRWgyU3J0ckFFUTdxenVESm5pTEpvS01xOStFaE5u?= =?utf-8?B?UU5ZMzYwVUtiK0hOQ2w0VlM3WWlFa2JQRHVVdmdmR0ZwWmdPYjhidnpoUkcv?= =?utf-8?B?NWZ1Q1cxZXRWdEhCZEVuMlB0NzRmdXJ6Y0ZiSGZSRXB6QXZDcVVKYmQwekFu?= =?utf-8?B?V2lRUVZsSGdxZmZnSlJzcVpzdXVXRFFMbVJ4OVh2TUwxYitKeWNoNXpOWTJu?= =?utf-8?B?QWNPdk0zRGdaS2Z5amlCUCtmWmljL1dLMHY2bDFOVjZyRXVzcWd1aWVwQTNU?= =?utf-8?B?MyswRXp1akp4cHYvTERFWWVRaDA1eXdMcDhyZ3JXTGZzV3dZaGJ1ekI1eFln?= =?utf-8?B?UlppYi9oWUNmWk9vcCt3WmZ0L0FucXFkZDVuU2dUbkpFcVBhUnR6cUdieU5P?= =?utf-8?B?bmlLczQyR1ZpYitWMFRDMVR6L1RJTGJDL2tKdDBTOXZrUzN1WFgxWkpOMEtj?= =?utf-8?B?NTZuVkVHSWQ1QmxWSmFXaWRTVGJ0RkwreTlWaVQwYy9VK0dycWVSK1d0OWp4?= =?utf-8?B?SEJkVUE4MXI2MjZreDN2TGMwQ0JmeTlZR2UzaXArRzkvRFM4K051UC9FSE5l?= =?utf-8?B?T0xiWitWNHgrL1p5QWt0TXNxenY1ZklSYjJvNEtTTWpCNFo5b0ROa1ljNm42?= =?utf-8?B?UWZqN0xienlNeWtyQlpaeUV5ZWxHT1lwVFE4dHNTdVB4SVZXUEN1TVJkQmVV?= =?utf-8?B?aStEUnVGU3g4YmFyZmVTNmx3ZkJ2VDBZSDFHbURvWG5NTlRkRzdpOWJ1TG1q?= =?utf-8?B?UDd6ZStGKy83c2YxU2dHdVV4eEZtMWhzWnhZUitEeUhtRStLWCt6dENta2sw?= =?utf-8?B?aGFYZFFnVDYzalprcVA1aGU2b1BFK1VjR0gvWWhlQTJXM0ZTMnJDM2VDdHNO?= =?utf-8?B?WVVBd1JkTlcwampGWExReVc5MkN5UEkxK2Y3aGZHZHF6czlhbzhScmVZcEFi?= =?utf-8?B?bnBqaGl0eFQxaFNaRUprVTU1aG1BMHgyOUJMZTNQanY4WWZUanRLbXlyUWYr?= =?utf-8?B?Z2NiOUdKV0o2ZmlGL1ZBWGNZRHVwL2lYaEJBNmR6djdsd1ZmZ1d1ZlFuV0hv?= =?utf-8?B?SXkxNGFCUTFYUk00dXExOWVSTDE0d0VISjFMRXVHWklZdkkyRnlYaWxIMGtU?= =?utf-8?B?UnNnWVJuakJJOXJCR3FTQ29aaHN5K2ZMSVhhbDg2ZS9TRFMraFV5Sm9VRC8w?= =?utf-8?B?YVVib21mYUJIbzRhTVdzK3EzWGhGd0ViejBpM0dUM095Z2RaUVJMaElQYjZw?= =?utf-8?B?bnh6VjVKKzEyaTFNdE9PaHVqanlSQUpjSC9ITDA5bTBzaDI3Qkk3ZVlFNncv?= =?utf-8?B?cnc9PQ==?= 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: 585ea0d5-16ee-46ff-7f5c-08da703a2e4e X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Jul 2022 01:40:41.3032 (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: rUpMtWhPzNHdUw9XQW6dbqmCecxV0QzNkSPEpdeqTPGO7o6EbqC7CqEp4vKJz3pZpILvNZJlLlTdqKDl6rnhHhJZLznr1FbwxolcftpMZXo= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR11MB4489 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 VGhlIGNvbW1pdCBtZXNzYWdlIGFuZCBjb21tZW50cyBmb3IgdGhlICNkZWZpbmVzDQpmb3IgdGhl IHJldHJ5IGNvdW50IGFuZCB0aW1lb3V0cyBzaG91bGQgc3RhdGUgdGhhdA0KdGhlIHZhbHVlcyBh cmUgcmVxdWlyZWQgYnkgc3BlYyBhbmQgbmFtZSB0aGUgc3BlYy4NCg0KVGhhbmtzLA0KDQpNaWtl DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogWmhhbmcsIFFpMSA8cWkx LnpoYW5nQGludGVsLmNvbT4NCj4gU2VudDogV2VkbmVzZGF5LCBKdWx5IDI3LCAyMDIyIDU6NDEg UE0NCj4gVG86IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT47 IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBZYW8sIEppZXdlbiA8amlld2VuLnlhb0BpbnRlbC5jb20+ DQo+IENjOiBXYW5nLCBKaWFuIEogPGppYW4uai53YW5nQGludGVsLmNvbT4NCj4gU3ViamVjdDog UkU6IFtlZGsyLWRldmVsXSBbUEFUQ0hdIFNlY3VyaXR5UGtnOiBBZGQgcmV0cnkgbWVjaGFuaXNt IGZvciB0cG0gY29tbWFuZA0KPiANCj4gUmV0cnkgY291bnQgaXMgc3VnZ2VzdGVkIGluIHRoZSBz cGVjLg0KPiANCj4gUHRwQ3JiV2FpdFJlZ2lzdGVyQml0cygpIGFscmVhZHkgaGFzIGRlbGF5Lg0K PiANCj4gVGhhbmtzIQ0KPiBRaSBaaGFuZw0KPiANCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0t LS0NCj4gRnJvbTogS2lubmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29t Pg0KPiBTZW50OiBUaHVyc2RheSwgSnVseSAyOCwgMjAyMiAxMjozOCBBTQ0KPiBUbzogZGV2ZWxA ZWRrMi5ncm91cHMuaW87IFlhbywgSmlld2VuIDxqaWV3ZW4ueWFvQGludGVsLmNvbT47IFpoYW5n LCBRaTEgPHFpMS56aGFuZ0BpbnRlbC5jb20+OyBLaW5uZXksIE1pY2hhZWwgRA0KPiA8bWljaGFl bC5kLmtpbm5leUBpbnRlbC5jb20+DQo+IENjOiBXYW5nLCBKaWFuIEogPGppYW4uai53YW5nQGlu dGVsLmNvbT4NCj4gU3ViamVjdDogUkU6IFtlZGsyLWRldmVsXSBbUEFUQ0hdIFNlY3VyaXR5UGtn OiBBZGQgcmV0cnkgbWVjaGFuaXNtIGZvciB0cG0gY29tbWFuZA0KPiANCj4gV2h5IGlzIDMgdGhl IGNvcnJlY3QgcmV0cnkgY291bnQ/DQo+IA0KPiBEbyB3ZSBuZWVkIHRoaXMgdG8gYmUgY29uZmln dXJhYmxlPw0KPiANCj4gSXMgYSBkZWxheSByZXF1aXJlZCBiZXR3ZWVuIHJldHJpZXM/DQo+IA0K PiBXaGF0IHNwZWNpZmljIHN0YXRlIGlzIGEgRFRQTSBnZXR0aW5nIGludG8gdGhhdCByZXF1aXJl cyB0aGlzIHJldHJ5IG1lY2hhbmlzbT8gIENhbiB0aGF0IHN0YXRlIGJlIGRldGVjdGVkPw0KPiAN Cj4gVGhhbmtzLA0KPiANCj4gTWlrZQ0KPiANCj4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0t LQ0KPiA+IEZyb206IGRldmVsQGVkazIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4g T24gQmVoYWxmIE9mIFlhbywNCj4gPiBKaWV3ZW4NCj4gPiBTZW50OiBXZWRuZXNkYXksIEp1bHkg MjcsIDIwMjIgNTowNyBBTQ0KPiA+IFRvOiBaaGFuZywgUWkxIDxxaTEuemhhbmdAaW50ZWwuY29t PjsgZGV2ZWxAZWRrMi5ncm91cHMuaW8NCj4gPiBDYzogV2FuZywgSmlhbiBKIDxqaWFuLmoud2Fu Z0BpbnRlbC5jb20+DQo+ID4gU3ViamVjdDogUmU6IFtlZGsyLWRldmVsXSBbUEFUQ0hdIFNlY3Vy aXR5UGtnOiBBZGQgcmV0cnkgbWVjaGFuaXNtIGZvcg0KPiA+IHRwbSBjb21tYW5kDQo+ID4NCj4g PiBUaGFua3MuIFBsZWFzZSBhZGQgQnVnemlsbGEgSUQgYW5kIGFkZCB0ZXN0ZWQtYnkgdGFnIGJ5 IHRoZSBwZW9wbGUgd2hvIHBlcmZvcm1lZCB0aGUgdGVzdC4NCj4gPg0KPiA+IEZvciB0aGUgY29k ZSwgcmV2aWV3ZWQtYnk6IEppZXdlbiBZYW8gPEppZXdlbi55YW9AaW50ZWwuY29tPg0KPiA+DQo+ ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4gRnJvbTogWmhhbmcsIFFpMSA8 cWkxLnpoYW5nQGludGVsLmNvbT4NCj4gPiA+IFNlbnQ6IFdlZG5lc2RheSwgSnVseSAyNywgMjAy MiA3OjM2IFBNDQo+ID4gPiBUbzogZGV2ZWxAZWRrMi5ncm91cHMuaW8NCj4gPiA+IENjOiBaaGFu ZywgUWkxIDxxaTEuemhhbmdAaW50ZWwuY29tPjsgWWFvLCBKaWV3ZW4NCj4gPiA+IDxqaWV3ZW4u eWFvQGludGVsLmNvbT47IFdhbmcsIEppYW4gSiA8amlhbi5qLndhbmdAaW50ZWwuY29tPg0KPiA+ ID4gU3ViamVjdDogW1BBVENIXSBTZWN1cml0eVBrZzogQWRkIHJldHJ5IG1lY2hhbmlzbSBmb3Ig dHBtIGNvbW1hbmQNCj4gPiA+DQo+ID4gPiBTaWduZWQtb2ZmLWJ5OiBRaSBaaGFuZyA8cWkxLnpo YW5nQGludGVsLmNvbT4NCj4gPiA+IENjOiBKaWV3ZW4gWWFvIDxqaWV3ZW4ueWFvQGludGVsLmNv bT4NCj4gPiA+IENjOiBKaWFuIEogV2FuZyA8amlhbi5qLndhbmdAaW50ZWwuY29tPg0KPiA+ID4g LS0tDQo+ID4gPiAgLi4uL0xpYnJhcnkvVHBtMkRldmljZUxpYkRUcG0vVHBtMlB0cC5jICAgICAg IHwgMTA3ICsrKysrKysrKysrLS0tLS0tLQ0KPiA+ID4gIDEgZmlsZSBjaGFuZ2VkLCA2OCBpbnNl cnRpb25zKCspLCAzOSBkZWxldGlvbnMoLSkNCj4gPiA+DQo+ID4gPiBkaWZmIC0tZ2l0IGEvU2Vj dXJpdHlQa2cvTGlicmFyeS9UcG0yRGV2aWNlTGliRFRwbS9UcG0yUHRwLmMNCj4gPiA+IGIvU2Vj dXJpdHlQa2cvTGlicmFyeS9UcG0yRGV2aWNlTGliRFRwbS9UcG0yUHRwLmMNCj4gPiA+IGluZGV4 IDFkOTliZWFhMTAuLjZiNTk5NGZkZTIgMTAwNjQ0DQo+ID4gPiAtLS0gYS9TZWN1cml0eVBrZy9M aWJyYXJ5L1RwbTJEZXZpY2VMaWJEVHBtL1RwbTJQdHAuYw0KPiA+ID4gKysrIGIvU2VjdXJpdHlQ a2cvTGlicmFyeS9UcG0yRGV2aWNlTGliRFRwbS9UcG0yUHRwLmMNCj4gPiA+IEBAIC0zMyw2ICsz MywxMSBAQCBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBhdGVudCAgLy8N Cj4gPiA+DQo+ID4gPiAgI2RlZmluZSBUUE1DTURCVUZMRU5HVEggIDB4NTAwDQo+ID4gPg0KPiA+ ID4NCj4gPiA+DQo+ID4gPiArLy8NCj4gPiA+DQo+ID4gPiArLy8gTWF4IHJldHJ5IGNvdW50DQo+ ID4gPg0KPiA+ID4gKy8vDQo+ID4gPg0KPiA+ID4gKyNkZWZpbmUgUkVUUllfQ05UX01BWCAgMw0K PiA+ID4NCj4gPiA+ICsNCj4gPiA+DQo+ID4gPiAgLyoqDQo+ID4gPg0KPiA+ID4gICAgQ2hlY2sg d2hldGhlciBUUE0gUFRQIHJlZ2lzdGVyIGV4aXN0Lg0KPiA+ID4NCj4gPiA+DQo+ID4gPg0KPiA+ ID4gQEAgLTE1Myw2ICsxNTgsNyBAQCBQdHBDcmJUcG1Db21tYW5kICgNCj4gPiA+ICAgIFVJTlQz MiAgICAgIFRwbU91dFNpemU7DQo+ID4gPg0KPiA+ID4gICAgVUlOVDE2ICAgICAgRGF0YTE2Ow0K PiA+ID4NCj4gPiA+ICAgIFVJTlQzMiAgICAgIERhdGEzMjsNCj4gPiA+DQo+ID4gPiArICBVSU5U OCAgICAgICBSZXRyeUNudDsNCj4gPiA+DQo+ID4gPg0KPiA+ID4NCj4gPiA+ICAgIERFQlVHX0NP REVfQkVHSU4gKCk7DQo+ID4gPg0KPiA+ID4gICAgVUlOVE4gIERlYnVnU2l6ZTsNCj4gPiA+DQo+ ID4gPiBAQCAtMTc5LDUzICsxODUsNzYgQEAgUHRwQ3JiVHBtQ29tbWFuZCAoDQo+ID4gPiAgICBE RUJVR19DT0RFX0VORCAoKTsNCj4gPiA+DQo+ID4gPiAgICBUcG1PdXRTaXplID0gMDsNCj4gPiA+ DQo+ID4gPg0KPiA+ID4NCj4gPiA+IC0gIC8vDQo+ID4gPg0KPiA+ID4gLSAgLy8gU1RFUCAwOg0K PiA+ID4NCj4gPiA+IC0gIC8vIGlmIENhcENSYklkZWxCeVBhc3MgPT0gMCwgZW5mb3JjZSBJZGxl IHN0YXRlIGJlZm9yZSBzZW5kaW5nDQo+ID4gPiBjb21tYW5kDQo+ID4gPg0KPiA+ID4gLSAgLy8N Cj4gPiA+DQo+ID4gPiAtICBpZiAoKEdldENhY2hlZElkbGVCeVBhc3MgKCkgPT0gMCkgJiYgKChN bWlvUmVhZDMyDQo+ID4gPiAoKFVJTlROKSZDcmJSZWctDQo+ID4gPiA+Q3JiQ29udHJvbFN0YXR1 cykgJiBQVFBfQ1JCX0NPTlRST0xfQVJFQV9TVEFUVVNfVFBNX0lETEUpID09IDApKSB7DQo+ID4g Pg0KPiA+ID4gKyAgUmV0cnlDbnQgPSAwOw0KPiA+ID4NCj4gPiA+ICsgIHdoaWxlIChUUlVFKSB7 DQo+ID4gPg0KPiA+ID4gKyAgICAvLw0KPiA+ID4NCj4gPiA+ICsgICAgLy8gU1RFUCAwOg0KPiA+ ID4NCj4gPiA+ICsgICAgLy8gaWYgQ2FwQ1JiSWRlbEJ5UGFzcyA9PSAwLCBlbmZvcmNlIElkbGUg c3RhdGUgYmVmb3JlIHNlbmRpbmcNCj4gPiA+ICsgY29tbWFuZA0KPiA+ID4NCj4gPiA+ICsgICAg Ly8NCj4gPiA+DQo+ID4gPiArICAgIGlmICgoR2V0Q2FjaGVkSWRsZUJ5UGFzcyAoKSA9PSAwKSAm JiAoKE1taW9SZWFkMzINCj4gPiA+ICsgKChVSU5UTikmQ3JiUmVnLQ0KPiA+ID4gPkNyYkNvbnRy b2xTdGF0dXMpICYgUFRQX0NSQl9DT05UUk9MX0FSRUFfU1RBVFVTX1RQTV9JRExFKSA9PSAwKSkg ew0KPiA+ID4NCj4gPiA+ICsgICAgICBTdGF0dXMgPSBQdHBDcmJXYWl0UmVnaXN0ZXJCaXRzICgN Cj4gPiA+DQo+ID4gPiArICAgICAgICAgICAgICAgICAmQ3JiUmVnLT5DcmJDb250cm9sU3RhdHVz LA0KPiA+ID4NCj4gPiA+ICsgICAgICAgICAgICAgICAgIFBUUF9DUkJfQ09OVFJPTF9BUkVBX1NU QVRVU19UUE1fSURMRSwNCj4gPiA+DQo+ID4gPiArICAgICAgICAgICAgICAgICAwLA0KPiA+ID4N Cj4gPiA+ICsgICAgICAgICAgICAgICAgIFBUUF9USU1FT1VUX0MNCj4gPiA+DQo+ID4gPiArICAg ICAgICAgICAgICAgICApOw0KPiA+ID4NCj4gPiA+ICsgICAgICBpZiAoRUZJX0VSUk9SIChTdGF0 dXMpKSB7DQo+ID4gPg0KPiA+ID4gKyAgICAgICAgUmV0cnlDbnQrKzsNCj4gPiA+DQo+ID4gPiAr ICAgICAgICBpZiAoUmV0cnlDbnQgPCBSRVRSWV9DTlRfTUFYKSB7DQo+ID4gPg0KPiA+ID4gKyAg ICAgICAgICBNbWlvV3JpdGUzMiAoKFVJTlROKSZDcmJSZWctPkNyYkNvbnRyb2xSZXF1ZXN0LA0K PiA+ID4gUFRQX0NSQl9DT05UUk9MX0FSRUFfUkVRVUVTVF9HT19JRExFKTsNCj4gPiA+DQo+ID4g PiArICAgICAgICAgIGNvbnRpbnVlOw0KPiA+ID4NCj4gPiA+ICsgICAgICAgIH0gZWxzZSB7DQo+ ID4gPg0KPiA+ID4gKyAgICAgICAgICAvLw0KPiA+ID4NCj4gPiA+ICsgICAgICAgICAgLy8gVHJ5 IHRvIGdvSWRsZSB0byByZWNvdmVyIFRQTQ0KPiA+ID4NCj4gPiA+ICsgICAgICAgICAgLy8NCj4g PiA+DQo+ID4gPiArICAgICAgICAgIFN0YXR1cyA9IEVGSV9ERVZJQ0VfRVJST1I7DQo+ID4gPg0K PiA+ID4gKyAgICAgICAgICBnb3RvIEdvSWRsZV9FeGl0Ow0KPiA+ID4NCj4gPiA+ICsgICAgICAg IH0NCj4gPiA+DQo+ID4gPiArICAgICAgfQ0KPiA+ID4NCj4gPiA+ICsgICAgfQ0KPiA+ID4NCj4g PiA+ICsNCj4gPiA+DQo+ID4gPiArICAgIC8vDQo+ID4gPg0KPiA+ID4gKyAgICAvLyBTVEVQIDE6 DQo+ID4gPg0KPiA+ID4gKyAgICAvLyBSZWFkeSBpcyBhbnkgdGltZSB0aGUgVFBNIGlzIHJlYWR5 IHRvIHJlY2VpdmUgYSBjb21tYW5kLA0KPiA+ID4gKyBmb2xsb3dpbmcgYQ0KPiA+ID4gd3JpdGUN Cj4gPiA+DQo+ID4gPiArICAgIC8vIG9mIDEgYnkgc29mdHdhcmUgdG8gUmVxdWVzdC5jbWRSZWFk eSwgYXMgaW5kaWNhdGVkIGJ5IHRoZQ0KPiA+ID4gKyBTdGF0dXMgZmllbGQNCj4gPiA+DQo+ID4g PiArICAgIC8vIGJlaW5nIGNsZWFyZWQgdG8gMC4NCj4gPiA+DQo+ID4gPiArICAgIC8vDQo+ID4g Pg0KPiA+ID4gKyAgICBNbWlvV3JpdGUzMiAoKFVJTlROKSZDcmJSZWctPkNyYkNvbnRyb2xSZXF1 ZXN0LA0KPiA+ID4gUFRQX0NSQl9DT05UUk9MX0FSRUFfUkVRVUVTVF9DT01NQU5EX1JFQURZKTsN Cj4gPiA+DQo+ID4gPiAgICAgIFN0YXR1cyA9IFB0cENyYldhaXRSZWdpc3RlckJpdHMgKA0KPiA+ ID4NCj4gPiA+IC0gICAgICAgICAgICAgICAmQ3JiUmVnLT5DcmJDb250cm9sU3RhdHVzLA0KPiA+ ID4NCj4gPiA+IC0gICAgICAgICAgICAgICBQVFBfQ1JCX0NPTlRST0xfQVJFQV9TVEFUVVNfVFBN X0lETEUsDQo+ID4gPg0KPiA+ID4gKyAgICAgICAgICAgICAgICZDcmJSZWctPkNyYkNvbnRyb2xS ZXF1ZXN0LA0KPiA+ID4NCj4gPiA+ICAgICAgICAgICAgICAgICAwLA0KPiA+ID4NCj4gPiA+ICsg ICAgICAgICAgICAgICBQVFBfQ1JCX0NPTlRST0xfQVJFQV9SRVFVRVNUX0NPTU1BTkRfUkVBRFks DQo+ID4gPg0KPiA+ID4gICAgICAgICAgICAgICAgIFBUUF9USU1FT1VUX0MNCj4gPiA+DQo+ID4g PiAgICAgICAgICAgICAgICAgKTsNCj4gPiA+DQo+ID4gPiAgICAgIGlmIChFRklfRVJST1IgKFN0 YXR1cykpIHsNCj4gPiA+DQo+ID4gPiAtICAgICAgLy8NCj4gPiA+DQo+ID4gPiAtICAgICAgLy8g VHJ5IHRvIGdvSWRsZSB0byByZWNvdmVyIFRQTQ0KPiA+ID4NCj4gPiA+IC0gICAgICAvLw0KPiA+ ID4NCj4gPiA+IC0gICAgICBTdGF0dXMgPSBFRklfREVWSUNFX0VSUk9SOw0KPiA+ID4NCj4gPiA+ IC0gICAgICBnb3RvIEdvSWRsZV9FeGl0Ow0KPiA+ID4NCj4gPiA+ICsgICAgICBSZXRyeUNudCsr Ow0KPiA+ID4NCj4gPiA+ICsgICAgICBpZiAoUmV0cnlDbnQgPCBSRVRSWV9DTlRfTUFYKSB7DQo+ ID4gPg0KPiA+ID4gKyAgICAgICAgTW1pb1dyaXRlMzIgKChVSU5UTikmQ3JiUmVnLT5DcmJDb250 cm9sUmVxdWVzdCwNCj4gPiA+IFBUUF9DUkJfQ09OVFJPTF9BUkVBX1JFUVVFU1RfR09fSURMRSk7 DQo+ID4gPg0KPiA+ID4gKyAgICAgICAgY29udGludWU7DQo+ID4gPg0KPiA+ID4gKyAgICAgIH0g ZWxzZSB7DQo+ID4gPg0KPiA+ID4gKyAgICAgICAgU3RhdHVzID0gRUZJX0RFVklDRV9FUlJPUjsN Cj4gPiA+DQo+ID4gPiArICAgICAgICBnb3RvIEdvSWRsZV9FeGl0Ow0KPiA+ID4NCj4gPiA+ICsg ICAgICB9DQo+ID4gPg0KPiA+ID4gICAgICB9DQo+ID4gPg0KPiA+ID4gLSAgfQ0KPiA+ID4NCj4g PiA+DQo+ID4gPg0KPiA+ID4gLSAgLy8NCj4gPiA+DQo+ID4gPiAtICAvLyBTVEVQIDE6DQo+ID4g Pg0KPiA+ID4gLSAgLy8gUmVhZHkgaXMgYW55IHRpbWUgdGhlIFRQTSBpcyByZWFkeSB0byByZWNl aXZlIGEgY29tbWFuZCwNCj4gPiA+IGZvbGxvd2luZyBhIHdyaXRlDQo+ID4gPg0KPiA+ID4gLSAg Ly8gb2YgMSBieSBzb2Z0d2FyZSB0byBSZXF1ZXN0LmNtZFJlYWR5LCBhcyBpbmRpY2F0ZWQgYnkg dGhlDQo+ID4gPiBTdGF0dXMgZmllbGQNCj4gPiA+DQo+ID4gPiAtICAvLyBiZWluZyBjbGVhcmVk IHRvIDAuDQo+ID4gPg0KPiA+ID4gLSAgLy8NCj4gPiA+DQo+ID4gPiAtICBNbWlvV3JpdGUzMiAo KFVJTlROKSZDcmJSZWctPkNyYkNvbnRyb2xSZXF1ZXN0LA0KPiA+ID4gUFRQX0NSQl9DT05UUk9M X0FSRUFfUkVRVUVTVF9DT01NQU5EX1JFQURZKTsNCj4gPiA+DQo+ID4gPiAtICBTdGF0dXMgPSBQ dHBDcmJXYWl0UmVnaXN0ZXJCaXRzICgNCj4gPiA+DQo+ID4gPiAtICAgICAgICAgICAgICZDcmJS ZWctPkNyYkNvbnRyb2xSZXF1ZXN0LA0KPiA+ID4NCj4gPiA+IC0gICAgICAgICAgICAgMCwNCj4g PiA+DQo+ID4gPiAtICAgICAgICAgICAgIFBUUF9DUkJfQ09OVFJPTF9BUkVBX1JFUVVFU1RfQ09N TUFORF9SRUFEWSwNCj4gPiA+DQo+ID4gPiAtICAgICAgICAgICAgIFBUUF9USU1FT1VUX0MNCj4g PiA+DQo+ID4gPiAtICAgICAgICAgICAgICk7DQo+ID4gPg0KPiA+ID4gLSAgaWYgKEVGSV9FUlJP UiAoU3RhdHVzKSkgew0KPiA+ID4NCj4gPiA+IC0gICAgU3RhdHVzID0gRUZJX0RFVklDRV9FUlJP UjsNCj4gPiA+DQo+ID4gPiAtICAgIGdvdG8gR29JZGxlX0V4aXQ7DQo+ID4gPg0KPiA+ID4gLSAg fQ0KPiA+ID4NCj4gPiA+ICsgICAgU3RhdHVzID0gUHRwQ3JiV2FpdFJlZ2lzdGVyQml0cyAoDQo+ ID4gPg0KPiA+ID4gKyAgICAgICAgICAgICAgICZDcmJSZWctPkNyYkNvbnRyb2xTdGF0dXMsDQo+ ID4gPg0KPiA+ID4gKyAgICAgICAgICAgICAgIDAsDQo+ID4gPg0KPiA+ID4gKyAgICAgICAgICAg ICAgIFBUUF9DUkJfQ09OVFJPTF9BUkVBX1NUQVRVU19UUE1fSURMRSwNCj4gPiA+DQo+ID4gPiAr ICAgICAgICAgICAgICAgUFRQX1RJTUVPVVRfQw0KPiA+ID4NCj4gPiA+ICsgICAgICAgICAgICAg ICApOw0KPiA+ID4NCj4gPiA+ICsgICAgaWYgKEVGSV9FUlJPUiAoU3RhdHVzKSkgew0KPiA+ID4N Cj4gPiA+ICsgICAgICBSZXRyeUNudCsrOw0KPiA+ID4NCj4gPiA+ICsgICAgICBpZiAoUmV0cnlD bnQgPCBSRVRSWV9DTlRfTUFYKSB7DQo+ID4gPg0KPiA+ID4gKyAgICAgICAgTW1pb1dyaXRlMzIg KChVSU5UTikmQ3JiUmVnLT5DcmJDb250cm9sUmVxdWVzdCwNCj4gPiA+IFBUUF9DUkJfQ09OVFJP TF9BUkVBX1JFUVVFU1RfR09fSURMRSk7DQo+ID4gPg0KPiA+ID4gKyAgICAgICAgY29udGludWU7 DQo+ID4gPg0KPiA+ID4gKyAgICAgIH0gZWxzZSB7DQo+ID4gPg0KPiA+ID4gKyAgICAgICAgU3Rh dHVzID0gRUZJX0RFVklDRV9FUlJPUjsNCj4gPiA+DQo+ID4gPiArICAgICAgICBnb3RvIEdvSWRs ZV9FeGl0Ow0KPiA+ID4NCj4gPiA+ICsgICAgICB9DQo+ID4gPg0KPiA+ID4gKyAgICB9DQo+ID4g Pg0KPiA+ID4NCj4gPiA+DQo+ID4gPiAtICBTdGF0dXMgPSBQdHBDcmJXYWl0UmVnaXN0ZXJCaXRz ICgNCj4gPiA+DQo+ID4gPiAtICAgICAgICAgICAgICZDcmJSZWctPkNyYkNvbnRyb2xTdGF0dXMs DQo+ID4gPg0KPiA+ID4gLSAgICAgICAgICAgICAwLA0KPiA+ID4NCj4gPiA+IC0gICAgICAgICAg ICAgUFRQX0NSQl9DT05UUk9MX0FSRUFfU1RBVFVTX1RQTV9JRExFLA0KPiA+ID4NCj4gPiA+IC0g ICAgICAgICAgICAgUFRQX1RJTUVPVVRfQw0KPiA+ID4NCj4gPiA+IC0gICAgICAgICAgICAgKTsN Cj4gPiA+DQo+ID4gPiAtICBpZiAoRUZJX0VSUk9SIChTdGF0dXMpKSB7DQo+ID4gPg0KPiA+ID4g LSAgICBTdGF0dXMgPSBFRklfREVWSUNFX0VSUk9SOw0KPiA+ID4NCj4gPiA+IC0gICAgZ290byBH b0lkbGVfRXhpdDsNCj4gPiA+DQo+ID4gPiArICAgIGJyZWFrOw0KPiA+ID4NCj4gPiA+ICAgIH0N Cj4gPiA+DQo+ID4gPg0KPiA+ID4NCj4gPiA+ICAgIC8vDQo+ID4gPg0KPiA+ID4gLS0NCj4gPiA+ IDIuMjYuMi53aW5kb3dzLjENCj4gPg0KPiA+DQo+ID4NCj4gPiANCj4gPg0KDQo=