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.27388.1658968843078212775 for ; Wed, 27 Jul 2022 17:40:43 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=S7luEcJP; spf=pass (domain: intel.com, ip: 192.55.52.151, mailfrom: qi1.zhang@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1658968843; x=1690504843; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=cdwS+QCIv34rWhIDe1k95B85vpirlRWyYUYzuQGXBVk=; b=S7luEcJPiUtpQmsVqIWVEco8vaQh7/gJYvw1Gh2eN/UbOEhyIl9aeEEY QXtRWgjk32/LRFrNJi/BuOWnePvTqytJXabBvzn2a+xnZpHCQOyOB3faS mRKQnnCNwD/gbxdAPxcOJh5CjbqBaq3ye7h7tRgs67oOuHXSIdW3/IFbP eEvwS43DNoWe2y19zynDzOPZMD+HOMXXzJ6kI/D/lb/VbmaAvQzfcpv2T zDCleYhrV1GKhVIvlNXlgMQbf3YIWEqn/MrbviMy0gqHjcgiZ6d0gGrLX avF+0gIJ3dTEDIanj+iiOuSy1T5XVDEh40FnDWGnX1IXoH+aqYcsOOVA5 Q==; X-IronPort-AV: E=McAfee;i="6400,9594,10421"; a="268763724" X-IronPort-AV: E=Sophos;i="5.93,196,1654585200"; d="scan'208";a="268763724" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Jul 2022 17:40:42 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.93,196,1654585200"; d="scan'208";a="600619800" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by orsmga002.jf.intel.com with ESMTP; 27 Jul 2022 17:40:40 -0700 Received: from fmsmsx605.amr.corp.intel.com (10.18.126.85) by fmsmsx601.amr.corp.intel.com (10.18.126.81) 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 17:40:40 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx605.amr.corp.intel.com (10.18.126.85) 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 17:40:40 -0700 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.109) by edgegateway.intel.com (192.55.55.68) 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 17:40:40 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=F3C51IBxiuKbYiZfsxRVdScVSy2WO7/lrQRf2nSILTfFTFjagrGggukcPhgfPPGelMHVEXubAy0gXjyJa5dk155UMWITkIv0bSFxADEC4WveXtAaelvzigQS0amnlOmT8sYdzVsWqfV7jCYYyqSTb6PqWSx32hYDEOEpUyI/BVFc1lcJSS3K24dtw60M4Raa1ihDG0xXudJftGITInZ8CHGyO3THs2VecPhIkYgqPHA47fcVDn8jeomabnt1Yp4/k2dbfiGWmHUgHxpoEoc3aknBxLheOCIerdhcvZtEaDNycVEoDzcw5SgR3m1zNeily7HCcLhFP6Id4BfN5mRkSA== 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=cdwS+QCIv34rWhIDe1k95B85vpirlRWyYUYzuQGXBVk=; b=kbMqjEo8i4sDfFRQkOcU8HxUzthRA+60lCVwO2WclM2LteF059gHVhgB/ZzQEphz5Sgy3ZCKSgmj34aIAnHyYqEUfstQFVm8HE+pMvdGgrKp4fOEPBGaUOK5hru7ULEKib3+S6rvZbuczyeECs0pH8u3i+m1no38h4r1KgdIdV69RSU8rfF/JP6MktxhWcDWyiklFjpDy9fZK5ZYTfB7krBlCRXKFbwwn6rvymSgMKZa6i3G75juzhrsGvlL4D0im0h+kWBhJb6nSGOtNhJHjAsriCM+5wsbtGwpM7fi5RrQzMdwvyK/2BNeRFLNrlwiPGfP/62zapdbDymyCZBafQ== 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 DM8PR11MB5750.namprd11.prod.outlook.com (2603:10b6:8:11::17) by DM6PR11MB2682.namprd11.prod.outlook.com (2603:10b6:5:c3::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5458.23; Thu, 28 Jul 2022 00:40:38 +0000 Received: from DM8PR11MB5750.namprd11.prod.outlook.com ([fe80::f038:d19d:1e12:5f3b]) by DM8PR11MB5750.namprd11.prod.outlook.com ([fe80::f038:d19d:1e12:5f3b%7]) with mapi id 15.20.5458.025; Thu, 28 Jul 2022 00:40:38 +0000 From: "Qi Zhang" To: "Kinney, Michael D" , "devel@edk2.groups.io" , "Yao, Jiewen" 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: AQHYoa0DZ2TeyjU7E0OaZACA1DfrO62SH1uAgABLrQCAAIYbQA== Date: Thu, 28 Jul 2022 00:40:38 +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: 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: 59be5bba-7091-4b04-3feb-08da7031cac5 x-ms-traffictypediagnostic: DM6PR11MB2682:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: GEnds9cnzMyJdA36FS3PI/ILIsk32Ny/n5scPvAnz71I8Q7JPQ5DrBzYUH5+EvlqsuCUziCViCV8hW5xoA55bFfDdJTP0cdMaWabVz5T8JM11N3jJeXIAJ8e95STGsRvH1rY6xerdgNdUn57NrgrF5TK5brKptnuWRimcNcX0tcoLSe6EGehJPkjCgzRc1UfcRqLIUUaP0iAxNjnGyaVp0jHM0aLhKZ/zYrz4/FFOTyOTF1ivJlBWl2upVHAU6Fc1OqnHyfBbeQNofd1HkWhCHvKVODSJw2AU8AofFZdlySygDssu8zDX3IXgmSr4mGWtcTJnAlT+GcS7Ruf1/U08QELfgf4gTwfFI1wqjrC47cXCUe2GDvDSZQkE/y1g46cxlOSt0t/SIg1zdtrl6rvdZ2jxYmSJHeDR4bA/WuYX07DOAg4+qooh6WRck0XaX3a7XGdVhQHI8n2dFx6e6q7DL1HnHOKCSxe4m4ehT83zNnrAsqEokbz6RnOrmoVOOzFbLW10q0/rrLvg7B3JfvBLxU3ZhwKRJPmy8Synhrrp7I2fAVp+63dQdyIOkrJDjOsCRV3ncmiSrh2MwAQV7MdPDfkZJQgDbL2qD/8JK0bfTv9u+JLbDslWG5R6N2ohSO6GQNEuNFPRjHS9hMjzoYPkWIvQskPf6DX3Teqk07yrDBLCHhsZr0O9wwWLuKYMz2CVunibTrtUoxgLLBlsOlvf2k/zKfAkwYNMpOIHXFn04WxPXWdlC4TA5ZJoBPtT8QNZpIVuQKMmokOs17YhCX7Ws6XvvRN/IT0KApIMaqk4KuimGBMFnQhhvWi9gpLRZO1RDgcgPAtVjSN/9u1QI97aM0+6DA0nfIvvreYIZqYqIjO/EOfEmY7iJNasXQQMVDs x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM8PR11MB5750.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230016)(396003)(376002)(136003)(346002)(366004)(39860400002)(38100700002)(122000001)(6636002)(82960400001)(316002)(110136005)(19627235002)(83380400001)(41300700001)(38070700005)(7696005)(6506007)(52536014)(66946007)(186003)(66476007)(8936002)(33656002)(5660300002)(966005)(15650500001)(4326008)(478600001)(76116006)(107886003)(71200400001)(9686003)(53546011)(86362001)(26005)(55016003)(66556008)(2906002)(66446008)(64756008)(8676002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?TmFsYlNQZGovK1l4Q3pKamlGb04zK2x6YlNwZ2ZBVlB2Uk0rT3VETzljSWlE?= =?utf-8?B?Ukd0V2xRM2dITFhMT0xOY1ZzaGtqQlFOb2xSN1JhMjFrd1ZVbE54d1ZnLzEw?= =?utf-8?B?WGtMSzdyc1NLV0NoRkRNUGxHN1NyQzkwT0cxajNOV3E2ZEpKMUl6emJtdEpq?= =?utf-8?B?Wmg4N1FBNUlNUmV0ZEtYSGxGS2tjM1JBcEZIUEdmZCtlOCs1VllaakJ3Ylpv?= =?utf-8?B?ekg2Mm5Yc0hjVUZqMXRSYXpUUFl0Z3FGNlZwQWI2bDVHa29GUVdUbG5ST0N5?= =?utf-8?B?eHpLa2NjRXpSbEpYTmp2bmZXNUl5T2NZdVdrUWQvYXRkRGd5dkRIZ29DUnA1?= =?utf-8?B?WTNQRjhuVWo4RFVvckV6MFRNWUQzck54eUpFdkExK1BOWlFGc2VLTG5ScFB4?= =?utf-8?B?akVTUE4xcjd1a05ncGpXTEdUZFFNMEtQeUgwbkpiMlNiVmJHYVZSdU9WRHpk?= =?utf-8?B?Yi9XeEVpWG1QQTFCRS9Hd1p6THVqTVhueWZwL2U4YnBxWUFOOGMvT00yNGMv?= =?utf-8?B?RmJHQ3paam5TY0dxWTRZQmtaZmorMjQ2cVFIOGVDR1owVUszZjlYL3hSblhI?= =?utf-8?B?SWN1TnNoaE9uQVRPVDlHZUpqS2ZQRTk2aFdXY0pLc1J0eWt2Z2RvaWRJTGR4?= =?utf-8?B?cUJObGM3YnN2WjFCTTF4T28yQUsvcnE3dmtvWS9hcGJ2Zkh6MzNqeGtiZ0ti?= =?utf-8?B?NkRYMFcrWGFqWThSYUowMVVYSFJFQ2x5clBPbDhqd0tHS1VkNWJNRXdtbjho?= =?utf-8?B?WjZmSE9BNkZWcFZ4UGJHeHBYZFZ2RU44c2xEdXFyN0VzMG1VTG5nUGZCRkhF?= =?utf-8?B?UW8yZ1IxcHFZbHU2NWZCVmh2VEs1L3c3cXcyZXQ2ZTZJbWI3TVd6VHdJYVQ3?= =?utf-8?B?S3JrUW0ycUNrclU1bHVtRFJTUkcyVVoySjR2RWxNREhwRXhRdWk2MHRISkNL?= =?utf-8?B?d2JOSGFNWmlxNzRNTTlNNURrK2JKcndIcGRQVUowYlhOMGRXSU4xQnB4VjZB?= =?utf-8?B?ZWJIY0pJWGFNSit0R2lESDZ0Um91YXZ1SHZyREtIWURTZUV4ZUdJeXRHdnFr?= =?utf-8?B?S3g2SUxBQStIOGxSSVhQMHlXdERZUWFuZWcyeCtSeXRRcXRUMkxqRHh0RTI4?= =?utf-8?B?djhKU2Z1aGZTZkhwY0VlSkdMNFpCaDJDSmVESHNQU0xTKytSYkJrMC90MEhm?= =?utf-8?B?SUVPOWFCM3V5NmZTTjNmb1pJd1RGQnFYcVhWaUQyWmg4ek4wNE95RitTWXAv?= =?utf-8?B?amhSRVQ4aS9ZSWhkNDZucHYra1graUduU0U0YXpwMkNic0dPQlZrTXE0MkIx?= =?utf-8?B?eU55WkJvL0NtUFNSUkwvWWczazVMd3BGbkZFbjZmZTlYQldtL1N2NEY3aVgr?= =?utf-8?B?SXJUSnJranBBdE93Q1dDcHR6R0lqTmdwRUdnbWxqWEdPMG1naHVRQkFVTDdP?= =?utf-8?B?ZGFYRWc5VGVLcjd4RjQ5OStRSlY3WEIrR3U3aGc5Y0tCbDFpcEhmeUJpWmR2?= =?utf-8?B?WWs4MU8wdmhrQzUwa09VNlV2VENZVTI1aWF6YnVTUmtuK25ocGdUTE00b1Y3?= =?utf-8?B?c3lyeCtNNHhiR1lXbkJSU1luazJtUmhkalJvUWxOYkMvb2pDU3UvRW5YVTdi?= =?utf-8?B?UzBTMCtTQkYwZHdpazFDZ3R0dGd6Z1NJb2kyZkIrTFRZTDQvMjF4K0ZYQk40?= =?utf-8?B?aEorSy8yTDlodjl0SjB0MnE4RURlTWdnQ0hSOEpUN1Y0eGdwMDllOFE2akhj?= =?utf-8?B?U2NSQW9WeUJoZTF1NVRXZ1VWQzlFd2pabEVaTnp5azFHa0gycmVGRnpMbEhk?= =?utf-8?B?UWdZYTBLVFNBT2JRR05Ra3lOVW45Z3FjYzhFbXRwMTNRWEs1aFltdWhiY3Vw?= =?utf-8?B?d2hSdXhteEFGMW9iemRKRlUwTGt3Ymx5azFMQ1NFeUVUc3k2T0NjWGZKWVlJ?= =?utf-8?B?NzJ0OEZNV3VhVHRGZGZCcFhCKzJXbmFwbmxuZnFNRXpSYm82R2tMTlpBMFdw?= =?utf-8?B?SjN6cHJIS0xNZDlidUhPemZPbUFjSVg2bmZTb3Z6cjhuTnhXaU03cDgxWE41?= =?utf-8?B?RUpFNHdORVZ6QlY5MjIwMVhMMTd2OXd3R3R2S1pjZkJNOGo2L0E2NitCK2o2?= =?utf-8?Q?XOnwTkNbxTOKGhSMkprL3YIiG?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM8PR11MB5750.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 59be5bba-7091-4b04-3feb-08da7031cac5 X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Jul 2022 00:40:38.3353 (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: GELMjZ4C6fT8DPMPiKFmkD1y6F+S9rHJYG8lNBVNarzRZxDufg/ZEydfO59K+2vBabNSnMsSdOvqLQyTFv1EsQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR11MB2682 Return-Path: qi1.zhang@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 UmV0cnkgY291bnQgaXMgc3VnZ2VzdGVkIGluIHRoZSBzcGVjLg0KDQpQdHBDcmJXYWl0UmVnaXN0 ZXJCaXRzKCkgYWxyZWFkeSBoYXMgZGVsYXkuDQoNClRoYW5rcyENClFpIFpoYW5nDQoNCi0tLS0t T3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9tOiBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5k Lmtpbm5leUBpbnRlbC5jb20+IA0KU2VudDogVGh1cnNkYXksIEp1bHkgMjgsIDIwMjIgMTI6Mzgg QU0NClRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsgWWFvLCBKaWV3ZW4gPGppZXdlbi55YW9AaW50 ZWwuY29tPjsgWmhhbmcsIFFpMSA8cWkxLnpoYW5nQGludGVsLmNvbT47IEtpbm5leSwgTWljaGFl bCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4NCkNjOiBXYW5nLCBKaWFuIEogPGppYW4u ai53YW5nQGludGVsLmNvbT4NClN1YmplY3Q6IFJFOiBbZWRrMi1kZXZlbF0gW1BBVENIXSBTZWN1 cml0eVBrZzogQWRkIHJldHJ5IG1lY2hhbmlzbSBmb3IgdHBtIGNvbW1hbmQNCg0KV2h5IGlzIDMg dGhlIGNvcnJlY3QgcmV0cnkgY291bnQ/DQoNCkRvIHdlIG5lZWQgdGhpcyB0byBiZSBjb25maWd1 cmFibGU/DQoNCklzIGEgZGVsYXkgcmVxdWlyZWQgYmV0d2VlbiByZXRyaWVzPw0KDQpXaGF0IHNw ZWNpZmljIHN0YXRlIGlzIGEgRFRQTSBnZXR0aW5nIGludG8gdGhhdCByZXF1aXJlcyB0aGlzIHJl dHJ5IG1lY2hhbmlzbT8gIENhbiB0aGF0IHN0YXRlIGJlIGRldGVjdGVkPw0KDQpUaGFua3MsDQoN Ck1pa2UNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBkZXZlbEBlZGsy Lmdyb3Vwcy5pbyA8ZGV2ZWxAZWRrMi5ncm91cHMuaW8+IE9uIEJlaGFsZiBPZiBZYW8sIA0KPiBK aWV3ZW4NCj4gU2VudDogV2VkbmVzZGF5LCBKdWx5IDI3LCAyMDIyIDU6MDcgQU0NCj4gVG86IFpo YW5nLCBRaTEgPHFpMS56aGFuZ0BpbnRlbC5jb20+OyBkZXZlbEBlZGsyLmdyb3Vwcy5pbw0KPiBD YzogV2FuZywgSmlhbiBKIDxqaWFuLmoud2FuZ0BpbnRlbC5jb20+DQo+IFN1YmplY3Q6IFJlOiBb ZWRrMi1kZXZlbF0gW1BBVENIXSBTZWN1cml0eVBrZzogQWRkIHJldHJ5IG1lY2hhbmlzbSBmb3Ig DQo+IHRwbSBjb21tYW5kDQo+IA0KPiBUaGFua3MuIFBsZWFzZSBhZGQgQnVnemlsbGEgSUQgYW5k IGFkZCB0ZXN0ZWQtYnkgdGFnIGJ5IHRoZSBwZW9wbGUgd2hvIHBlcmZvcm1lZCB0aGUgdGVzdC4N Cj4gDQo+IEZvciB0aGUgY29kZSwgcmV2aWV3ZWQtYnk6IEppZXdlbiBZYW8gPEppZXdlbi55YW9A aW50ZWwuY29tPg0KPiANCj4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+IEZyb206 IFpoYW5nLCBRaTEgPHFpMS56aGFuZ0BpbnRlbC5jb20+DQo+ID4gU2VudDogV2VkbmVzZGF5LCBK dWx5IDI3LCAyMDIyIDc6MzYgUE0NCj4gPiBUbzogZGV2ZWxAZWRrMi5ncm91cHMuaW8NCj4gPiBD YzogWmhhbmcsIFFpMSA8cWkxLnpoYW5nQGludGVsLmNvbT47IFlhbywgSmlld2VuIA0KPiA+IDxq aWV3ZW4ueWFvQGludGVsLmNvbT47IFdhbmcsIEppYW4gSiA8amlhbi5qLndhbmdAaW50ZWwuY29t Pg0KPiA+IFN1YmplY3Q6IFtQQVRDSF0gU2VjdXJpdHlQa2c6IEFkZCByZXRyeSBtZWNoYW5pc20g Zm9yIHRwbSBjb21tYW5kDQo+ID4NCj4gPiBTaWduZWQtb2ZmLWJ5OiBRaSBaaGFuZyA8cWkxLnpo YW5nQGludGVsLmNvbT4NCj4gPiBDYzogSmlld2VuIFlhbyA8amlld2VuLnlhb0BpbnRlbC5jb20+ DQo+ID4gQ2M6IEppYW4gSiBXYW5nIDxqaWFuLmoud2FuZ0BpbnRlbC5jb20+DQo+ID4gLS0tDQo+ ID4gIC4uLi9MaWJyYXJ5L1RwbTJEZXZpY2VMaWJEVHBtL1RwbTJQdHAuYyAgICAgICB8IDEwNyAr KysrKysrKysrKy0tLS0tLS0NCj4gPiAgMSBmaWxlIGNoYW5nZWQsIDY4IGluc2VydGlvbnMoKyks IDM5IGRlbGV0aW9ucygtKQ0KPiA+DQo+ID4gZGlmZiAtLWdpdCBhL1NlY3VyaXR5UGtnL0xpYnJh cnkvVHBtMkRldmljZUxpYkRUcG0vVHBtMlB0cC5jDQo+ID4gYi9TZWN1cml0eVBrZy9MaWJyYXJ5 L1RwbTJEZXZpY2VMaWJEVHBtL1RwbTJQdHAuYw0KPiA+IGluZGV4IDFkOTliZWFhMTAuLjZiNTk5 NGZkZTIgMTAwNjQ0DQo+ID4gLS0tIGEvU2VjdXJpdHlQa2cvTGlicmFyeS9UcG0yRGV2aWNlTGli RFRwbS9UcG0yUHRwLmMNCj4gPiArKysgYi9TZWN1cml0eVBrZy9MaWJyYXJ5L1RwbTJEZXZpY2VM aWJEVHBtL1RwbTJQdHAuYw0KPiA+IEBAIC0zMyw2ICszMywxMSBAQCBTUERYLUxpY2Vuc2UtSWRl bnRpZmllcjogQlNELTItQ2xhdXNlLVBhdGVudCAgLy8NCj4gPg0KPiA+ICAjZGVmaW5lIFRQTUNN REJVRkxFTkdUSCAgMHg1MDANCj4gPg0KPiA+DQo+ID4NCj4gPiArLy8NCj4gPg0KPiA+ICsvLyBN YXggcmV0cnkgY291bnQNCj4gPg0KPiA+ICsvLw0KPiA+DQo+ID4gKyNkZWZpbmUgUkVUUllfQ05U X01BWCAgMw0KPiA+DQo+ID4gKw0KPiA+DQo+ID4gIC8qKg0KPiA+DQo+ID4gICAgQ2hlY2sgd2hl dGhlciBUUE0gUFRQIHJlZ2lzdGVyIGV4aXN0Lg0KPiA+DQo+ID4NCj4gPg0KPiA+IEBAIC0xNTMs NiArMTU4LDcgQEAgUHRwQ3JiVHBtQ29tbWFuZCAoDQo+ID4gICAgVUlOVDMyICAgICAgVHBtT3V0 U2l6ZTsNCj4gPg0KPiA+ICAgIFVJTlQxNiAgICAgIERhdGExNjsNCj4gPg0KPiA+ICAgIFVJTlQz MiAgICAgIERhdGEzMjsNCj4gPg0KPiA+ICsgIFVJTlQ4ICAgICAgIFJldHJ5Q250Ow0KPiA+DQo+ ID4NCj4gPg0KPiA+ICAgIERFQlVHX0NPREVfQkVHSU4gKCk7DQo+ID4NCj4gPiAgICBVSU5UTiAg RGVidWdTaXplOw0KPiA+DQo+ID4gQEAgLTE3OSw1MyArMTg1LDc2IEBAIFB0cENyYlRwbUNvbW1h bmQgKA0KPiA+ICAgIERFQlVHX0NPREVfRU5EICgpOw0KPiA+DQo+ID4gICAgVHBtT3V0U2l6ZSA9 IDA7DQo+ID4NCj4gPg0KPiA+DQo+ID4gLSAgLy8NCj4gPg0KPiA+IC0gIC8vIFNURVAgMDoNCj4g Pg0KPiA+IC0gIC8vIGlmIENhcENSYklkZWxCeVBhc3MgPT0gMCwgZW5mb3JjZSBJZGxlIHN0YXRl IGJlZm9yZSBzZW5kaW5nIA0KPiA+IGNvbW1hbmQNCj4gPg0KPiA+IC0gIC8vDQo+ID4NCj4gPiAt ICBpZiAoKEdldENhY2hlZElkbGVCeVBhc3MgKCkgPT0gMCkgJiYgKChNbWlvUmVhZDMyIA0KPiA+ ICgoVUlOVE4pJkNyYlJlZy0NCj4gPiA+Q3JiQ29udHJvbFN0YXR1cykgJiBQVFBfQ1JCX0NPTlRS T0xfQVJFQV9TVEFUVVNfVFBNX0lETEUpID09IDApKSB7DQo+ID4NCj4gPiArICBSZXRyeUNudCA9 IDA7DQo+ID4NCj4gPiArICB3aGlsZSAoVFJVRSkgew0KPiA+DQo+ID4gKyAgICAvLw0KPiA+DQo+ ID4gKyAgICAvLyBTVEVQIDA6DQo+ID4NCj4gPiArICAgIC8vIGlmIENhcENSYklkZWxCeVBhc3Mg PT0gMCwgZW5mb3JjZSBJZGxlIHN0YXRlIGJlZm9yZSBzZW5kaW5nIA0KPiA+ICsgY29tbWFuZA0K PiA+DQo+ID4gKyAgICAvLw0KPiA+DQo+ID4gKyAgICBpZiAoKEdldENhY2hlZElkbGVCeVBhc3Mg KCkgPT0gMCkgJiYgKChNbWlvUmVhZDMyIA0KPiA+ICsgKChVSU5UTikmQ3JiUmVnLQ0KPiA+ID5D cmJDb250cm9sU3RhdHVzKSAmIFBUUF9DUkJfQ09OVFJPTF9BUkVBX1NUQVRVU19UUE1fSURMRSkg PT0gMCkpIHsNCj4gPg0KPiA+ICsgICAgICBTdGF0dXMgPSBQdHBDcmJXYWl0UmVnaXN0ZXJCaXRz ICgNCj4gPg0KPiA+ICsgICAgICAgICAgICAgICAgICZDcmJSZWctPkNyYkNvbnRyb2xTdGF0dXMs DQo+ID4NCj4gPiArICAgICAgICAgICAgICAgICBQVFBfQ1JCX0NPTlRST0xfQVJFQV9TVEFUVVNf VFBNX0lETEUsDQo+ID4NCj4gPiArICAgICAgICAgICAgICAgICAwLA0KPiA+DQo+ID4gKyAgICAg ICAgICAgICAgICAgUFRQX1RJTUVPVVRfQw0KPiA+DQo+ID4gKyAgICAgICAgICAgICAgICAgKTsN Cj4gPg0KPiA+ICsgICAgICBpZiAoRUZJX0VSUk9SIChTdGF0dXMpKSB7DQo+ID4NCj4gPiArICAg ICAgICBSZXRyeUNudCsrOw0KPiA+DQo+ID4gKyAgICAgICAgaWYgKFJldHJ5Q250IDwgUkVUUllf Q05UX01BWCkgew0KPiA+DQo+ID4gKyAgICAgICAgICBNbWlvV3JpdGUzMiAoKFVJTlROKSZDcmJS ZWctPkNyYkNvbnRyb2xSZXF1ZXN0LA0KPiA+IFBUUF9DUkJfQ09OVFJPTF9BUkVBX1JFUVVFU1Rf R09fSURMRSk7DQo+ID4NCj4gPiArICAgICAgICAgIGNvbnRpbnVlOw0KPiA+DQo+ID4gKyAgICAg ICAgfSBlbHNlIHsNCj4gPg0KPiA+ICsgICAgICAgICAgLy8NCj4gPg0KPiA+ICsgICAgICAgICAg Ly8gVHJ5IHRvIGdvSWRsZSB0byByZWNvdmVyIFRQTQ0KPiA+DQo+ID4gKyAgICAgICAgICAvLw0K PiA+DQo+ID4gKyAgICAgICAgICBTdGF0dXMgPSBFRklfREVWSUNFX0VSUk9SOw0KPiA+DQo+ID4g KyAgICAgICAgICBnb3RvIEdvSWRsZV9FeGl0Ow0KPiA+DQo+ID4gKyAgICAgICAgfQ0KPiA+DQo+ ID4gKyAgICAgIH0NCj4gPg0KPiA+ICsgICAgfQ0KPiA+DQo+ID4gKw0KPiA+DQo+ID4gKyAgICAv Lw0KPiA+DQo+ID4gKyAgICAvLyBTVEVQIDE6DQo+ID4NCj4gPiArICAgIC8vIFJlYWR5IGlzIGFu eSB0aW1lIHRoZSBUUE0gaXMgcmVhZHkgdG8gcmVjZWl2ZSBhIGNvbW1hbmQsIA0KPiA+ICsgZm9s bG93aW5nIGENCj4gPiB3cml0ZQ0KPiA+DQo+ID4gKyAgICAvLyBvZiAxIGJ5IHNvZnR3YXJlIHRv IFJlcXVlc3QuY21kUmVhZHksIGFzIGluZGljYXRlZCBieSB0aGUgDQo+ID4gKyBTdGF0dXMgZmll bGQNCj4gPg0KPiA+ICsgICAgLy8gYmVpbmcgY2xlYXJlZCB0byAwLg0KPiA+DQo+ID4gKyAgICAv Lw0KPiA+DQo+ID4gKyAgICBNbWlvV3JpdGUzMiAoKFVJTlROKSZDcmJSZWctPkNyYkNvbnRyb2xS ZXF1ZXN0LA0KPiA+IFBUUF9DUkJfQ09OVFJPTF9BUkVBX1JFUVVFU1RfQ09NTUFORF9SRUFEWSk7 DQo+ID4NCj4gPiAgICAgIFN0YXR1cyA9IFB0cENyYldhaXRSZWdpc3RlckJpdHMgKA0KPiA+DQo+ ID4gLSAgICAgICAgICAgICAgICZDcmJSZWctPkNyYkNvbnRyb2xTdGF0dXMsDQo+ID4NCj4gPiAt ICAgICAgICAgICAgICAgUFRQX0NSQl9DT05UUk9MX0FSRUFfU1RBVFVTX1RQTV9JRExFLA0KPiA+ DQo+ID4gKyAgICAgICAgICAgICAgICZDcmJSZWctPkNyYkNvbnRyb2xSZXF1ZXN0LA0KPiA+DQo+ ID4gICAgICAgICAgICAgICAgIDAsDQo+ID4NCj4gPiArICAgICAgICAgICAgICAgUFRQX0NSQl9D T05UUk9MX0FSRUFfUkVRVUVTVF9DT01NQU5EX1JFQURZLA0KPiA+DQo+ID4gICAgICAgICAgICAg ICAgIFBUUF9USU1FT1VUX0MNCj4gPg0KPiA+ICAgICAgICAgICAgICAgICApOw0KPiA+DQo+ID4g ICAgICBpZiAoRUZJX0VSUk9SIChTdGF0dXMpKSB7DQo+ID4NCj4gPiAtICAgICAgLy8NCj4gPg0K PiA+IC0gICAgICAvLyBUcnkgdG8gZ29JZGxlIHRvIHJlY292ZXIgVFBNDQo+ID4NCj4gPiAtICAg ICAgLy8NCj4gPg0KPiA+IC0gICAgICBTdGF0dXMgPSBFRklfREVWSUNFX0VSUk9SOw0KPiA+DQo+ ID4gLSAgICAgIGdvdG8gR29JZGxlX0V4aXQ7DQo+ID4NCj4gPiArICAgICAgUmV0cnlDbnQrKzsN Cj4gPg0KPiA+ICsgICAgICBpZiAoUmV0cnlDbnQgPCBSRVRSWV9DTlRfTUFYKSB7DQo+ID4NCj4g PiArICAgICAgICBNbWlvV3JpdGUzMiAoKFVJTlROKSZDcmJSZWctPkNyYkNvbnRyb2xSZXF1ZXN0 LA0KPiA+IFBUUF9DUkJfQ09OVFJPTF9BUkVBX1JFUVVFU1RfR09fSURMRSk7DQo+ID4NCj4gPiAr ICAgICAgICBjb250aW51ZTsNCj4gPg0KPiA+ICsgICAgICB9IGVsc2Ugew0KPiA+DQo+ID4gKyAg ICAgICAgU3RhdHVzID0gRUZJX0RFVklDRV9FUlJPUjsNCj4gPg0KPiA+ICsgICAgICAgIGdvdG8g R29JZGxlX0V4aXQ7DQo+ID4NCj4gPiArICAgICAgfQ0KPiA+DQo+ID4gICAgICB9DQo+ID4NCj4g PiAtICB9DQo+ID4NCj4gPg0KPiA+DQo+ID4gLSAgLy8NCj4gPg0KPiA+IC0gIC8vIFNURVAgMToN Cj4gPg0KPiA+IC0gIC8vIFJlYWR5IGlzIGFueSB0aW1lIHRoZSBUUE0gaXMgcmVhZHkgdG8gcmVj ZWl2ZSBhIGNvbW1hbmQsIA0KPiA+IGZvbGxvd2luZyBhIHdyaXRlDQo+ID4NCj4gPiAtICAvLyBv ZiAxIGJ5IHNvZnR3YXJlIHRvIFJlcXVlc3QuY21kUmVhZHksIGFzIGluZGljYXRlZCBieSB0aGUg DQo+ID4gU3RhdHVzIGZpZWxkDQo+ID4NCj4gPiAtICAvLyBiZWluZyBjbGVhcmVkIHRvIDAuDQo+ ID4NCj4gPiAtICAvLw0KPiA+DQo+ID4gLSAgTW1pb1dyaXRlMzIgKChVSU5UTikmQ3JiUmVnLT5D cmJDb250cm9sUmVxdWVzdCwNCj4gPiBQVFBfQ1JCX0NPTlRST0xfQVJFQV9SRVFVRVNUX0NPTU1B TkRfUkVBRFkpOw0KPiA+DQo+ID4gLSAgU3RhdHVzID0gUHRwQ3JiV2FpdFJlZ2lzdGVyQml0cyAo DQo+ID4NCj4gPiAtICAgICAgICAgICAgICZDcmJSZWctPkNyYkNvbnRyb2xSZXF1ZXN0LA0KPiA+ DQo+ID4gLSAgICAgICAgICAgICAwLA0KPiA+DQo+ID4gLSAgICAgICAgICAgICBQVFBfQ1JCX0NP TlRST0xfQVJFQV9SRVFVRVNUX0NPTU1BTkRfUkVBRFksDQo+ID4NCj4gPiAtICAgICAgICAgICAg IFBUUF9USU1FT1VUX0MNCj4gPg0KPiA+IC0gICAgICAgICAgICAgKTsNCj4gPg0KPiA+IC0gIGlm IChFRklfRVJST1IgKFN0YXR1cykpIHsNCj4gPg0KPiA+IC0gICAgU3RhdHVzID0gRUZJX0RFVklD RV9FUlJPUjsNCj4gPg0KPiA+IC0gICAgZ290byBHb0lkbGVfRXhpdDsNCj4gPg0KPiA+IC0gIH0N Cj4gPg0KPiA+ICsgICAgU3RhdHVzID0gUHRwQ3JiV2FpdFJlZ2lzdGVyQml0cyAoDQo+ID4NCj4g PiArICAgICAgICAgICAgICAgJkNyYlJlZy0+Q3JiQ29udHJvbFN0YXR1cywNCj4gPg0KPiA+ICsg ICAgICAgICAgICAgICAwLA0KPiA+DQo+ID4gKyAgICAgICAgICAgICAgIFBUUF9DUkJfQ09OVFJP TF9BUkVBX1NUQVRVU19UUE1fSURMRSwNCj4gPg0KPiA+ICsgICAgICAgICAgICAgICBQVFBfVElN RU9VVF9DDQo+ID4NCj4gPiArICAgICAgICAgICAgICAgKTsNCj4gPg0KPiA+ICsgICAgaWYgKEVG SV9FUlJPUiAoU3RhdHVzKSkgew0KPiA+DQo+ID4gKyAgICAgIFJldHJ5Q250Kys7DQo+ID4NCj4g PiArICAgICAgaWYgKFJldHJ5Q250IDwgUkVUUllfQ05UX01BWCkgew0KPiA+DQo+ID4gKyAgICAg ICAgTW1pb1dyaXRlMzIgKChVSU5UTikmQ3JiUmVnLT5DcmJDb250cm9sUmVxdWVzdCwNCj4gPiBQ VFBfQ1JCX0NPTlRST0xfQVJFQV9SRVFVRVNUX0dPX0lETEUpOw0KPiA+DQo+ID4gKyAgICAgICAg Y29udGludWU7DQo+ID4NCj4gPiArICAgICAgfSBlbHNlIHsNCj4gPg0KPiA+ICsgICAgICAgIFN0 YXR1cyA9IEVGSV9ERVZJQ0VfRVJST1I7DQo+ID4NCj4gPiArICAgICAgICBnb3RvIEdvSWRsZV9F eGl0Ow0KPiA+DQo+ID4gKyAgICAgIH0NCj4gPg0KPiA+ICsgICAgfQ0KPiA+DQo+ID4NCj4gPg0K PiA+IC0gIFN0YXR1cyA9IFB0cENyYldhaXRSZWdpc3RlckJpdHMgKA0KPiA+DQo+ID4gLSAgICAg ICAgICAgICAmQ3JiUmVnLT5DcmJDb250cm9sU3RhdHVzLA0KPiA+DQo+ID4gLSAgICAgICAgICAg ICAwLA0KPiA+DQo+ID4gLSAgICAgICAgICAgICBQVFBfQ1JCX0NPTlRST0xfQVJFQV9TVEFUVVNf VFBNX0lETEUsDQo+ID4NCj4gPiAtICAgICAgICAgICAgIFBUUF9USU1FT1VUX0MNCj4gPg0KPiA+ IC0gICAgICAgICAgICAgKTsNCj4gPg0KPiA+IC0gIGlmIChFRklfRVJST1IgKFN0YXR1cykpIHsN Cj4gPg0KPiA+IC0gICAgU3RhdHVzID0gRUZJX0RFVklDRV9FUlJPUjsNCj4gPg0KPiA+IC0gICAg Z290byBHb0lkbGVfRXhpdDsNCj4gPg0KPiA+ICsgICAgYnJlYWs7DQo+ID4NCj4gPiAgICB9DQo+ ID4NCj4gPg0KPiA+DQo+ID4gICAgLy8NCj4gPg0KPiA+IC0tDQo+ID4gMi4yNi4yLndpbmRvd3Mu MQ0KPiANCj4gDQo+IA0KPiANCj4gDQoNCg==