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.web11.3395.1685581573033745940 for ; Wed, 31 May 2023 18:06:13 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=b3HhWh8s; spf=pass (domain: intel.com, ip: 134.134.136.24, mailfrom: jiewen.yao@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1685581573; x=1717117573; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=GBSyO2zO/nKr3zfNr2efv0WoDqC3wnM3p+dnR+RIdhw=; b=b3HhWh8sz5JN79uF9vat0/IbUQX5tgqbqWnpfITDNyF7OXEPVX08w6mM IVwKRxdUROz/d89g21qHBqImKwYzWiKvH3BT8lSpvz4a86v1e/3ENU6uV A5GEi/eRm4mZC7/XjvVAM3ZZERbtGUd2DcPI2efTo5mIVduEnqxmCrfg7 2smQ64gnNiNuMv7/ALFwm8Dn/TDtukrmJKCtTA0oKpaKt3skYKVrHxq7C JBOIGepeuTiH2+wsCRhS41E4vQxx6U9ww0rXkRGvcB+KERFKLIBqkoTmV CqPhXWjHBIwTGHeTxnauL7k+PkzTKMHzQwGxj15V9Vn9OA1+tKtQ5NX8U w==; X-IronPort-AV: E=McAfee;i="6600,9927,10727"; a="357810286" X-IronPort-AV: E=Sophos;i="6.00,207,1681196400"; d="scan'208";a="357810286" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 31 May 2023 18:06:11 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10727"; a="684627979" X-IronPort-AV: E=Sophos;i="6.00,207,1681196400"; d="scan'208";a="684627979" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by orsmga006.jf.intel.com with ESMTP; 31 May 2023 18:06:11 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 31 May 2023 18:06:10 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23 via Frontend Transport; Wed, 31 May 2023 18:06:10 -0700 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (104.47.70.102) 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.2507.23; Wed, 31 May 2023 18:06:10 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TEWyUS/8oMxdSXkt8KLGjSGPqdrBp0oPiNZmHSbkD2ViN92dbfUgp0pkVX+UIAWQdvGmV5zsqPDtwLiNV0JQRY8ajZNbx62gwuF0GGbDNeXmxd8xaXOGOqv3t+L4Tk903C6lUsexAxWZL3PXzuQne/G/1Bi/OjC7Nm4TJZy+O/ExuiaOwenDtQQNP7VflBHN5ZS6CsJb/cr19fx+1hEdzqo8f4LgcQFZzFT0Zy1dGWSkCOgppf4+ddUflO6zKCYCIK9SrcGrnaxeS+MfqeP7cVE1qXxvJqRkweDFnI4AhzrlDxcpdkLcgsZ3X1HotGwGtM0IpHvxIu/CTWPaR+ZOMA== 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=GBSyO2zO/nKr3zfNr2efv0WoDqC3wnM3p+dnR+RIdhw=; b=Gra+REGmj69AYWPiwMEY9wGxjkY7Rq6bLxFRhvP9jhhhDTiAp2bZlc+b0+PdyZT5RenkgLZknacVzII1KySySATcR/zbHZ0fs33C8AhzFgP+lj+H3yKSKXpaJhcMLysJYuuIk6MUB0u3esCBQx7uaFheNvP5XmxoQklB4BEF74fF0F8+xkT40PEeP1Pcz3+fJHO6DZ4vu2WUDF9WANrpCw9qkaUI9NkPnk4W4XDzwVRh0E2uDfN3mJmYWtFH1DcrcTuu5rj4t3QVMY3KrMP+0RDEUfgsUvgsD3F7cC34GtJ0TGZMl9OSjgQzyg6tKrwPaBq/nAgXbrkb3zVmlATs/A== 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 MW4PR11MB5872.namprd11.prod.outlook.com (2603:10b6:303:169::14) by SA2PR11MB5100.namprd11.prod.outlook.com (2603:10b6:806:119::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.23; Thu, 1 Jun 2023 01:06:07 +0000 Received: from MW4PR11MB5872.namprd11.prod.outlook.com ([fe80::3caa:6866:1037:5388]) by MW4PR11MB5872.namprd11.prod.outlook.com ([fe80::3caa:6866:1037:5388%6]) with mapi id 15.20.6455.020; Thu, 1 Jun 2023 01:06:07 +0000 From: "Yao, Jiewen" To: "devel@edk2.groups.io" , "Wu, Jiaxin" , "Li, Zhihao" , "Gao, Liming" , "Ni, Ray" , "kraxel@redhat.com" CC: "Wang, Jian J" Subject: Re: [edk2-devel] [PATCH v1 1/1] MdeModulePkg/VariableSmm.c: add Ap rendezvous check before SmmSetVariable. Thread-Topic: [edk2-devel] [PATCH v1 1/1] MdeModulePkg/VariableSmm.c: add Ap rendezvous check before SmmSetVariable. Thread-Index: AQHZiimglFrRgUaWtEmSOBhSYPO0x691Mv8QgAAC37A= Date: Thu, 1 Jun 2023 01:06:07 +0000 Message-ID: References: <20230510105653.635-1-zhihao.li@intel.com> <05b701d9896c$5df57160$19e05420$@byosoft.com.cn> 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-traffictypediagnostic: MW4PR11MB5872:EE_|SA2PR11MB5100:EE_ x-ms-office365-filtering-correlation-id: 6f9eea28-792f-4dc6-f9fb-08db623c6157 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: IevawxFyppsnw35oVMwfcayZMB0d1hYB3l5fsoCsILWqMVHL3loywRr6eFDGyWaAVp9k2B0FFiH8ZKBop3S8sOeDUBRv+tCpFVTXk1CSJ/+8Bhwrl260AziIEAW/n/Y07dEx63PddYOSykxoe4bw3SxM0gFUlwHRUmzF7LxWzuzuqxreQzx7yA1uMUfSvLx9Zv8lbQV+XYmEG4HfdrKr4w0jqq+rJrTdVifBjtpRa5FJYjQOb40KiLjxZJMeMiA0iRSuKj2kh4UppbiHR1HvmAEjp4YHDxSGFf0+iuSQ9Dl1z+zOiQrIYiB1X0SGJN4oWgKIZlIges6Sc0j/Nk1sPht4Y/N1X1H3naT8FN0EFuFIZQH4rFI0kGg4Rk8so+xT4T0xkktDFAsz9OFRkVKMUa2GcUZmnoYWgC5IlwtUpG++9EJh6JgVbbVGvTV8rtdEZU8lQHdTbVEFISDUxBxdpU0OyeS50HzFoFqkrHOpW9aZpdfgQlX68SC2dBH/s5p2ZnJuCZsQVR40QOrtJvDAwdLI+zmgbXnAGcSlR56rJfgy6rshKDNl2iSefLQ/jXbGVkf/xGLHq0vOZcxcuLzn4thZ+fALbxGglREcl/EbzZWJPbVsN5cvZ6EwXuA2z3/5cy/YX17pflWottijE7vZS4ylLWyEjwID4C1rTFaHGyY= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW4PR11MB5872.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(376002)(39860400002)(396003)(346002)(366004)(451199021)(66899021)(76116006)(2906002)(38070700005)(66476007)(66556008)(41300700001)(66946007)(8676002)(66446008)(4326008)(64756008)(316002)(5660300002)(86362001)(52536014)(33656002)(55016003)(71200400001)(122000001)(53546011)(107886003)(38100700002)(186003)(8936002)(26005)(966005)(7696005)(9686003)(6506007)(83380400001)(921005)(478600001)(110136005)(45080400002)(82960400001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?djBES3BLajFkczdJTXlJbk84K2ZUQ0toczJTUEgrODBFZmZjUnZpZ3k5VDhV?= =?utf-8?B?d0E1M1N0NGU1UTVFSk92cXJPVHpuVVcxQWIvQzN6SDMxWnNWTVAvTDNOVW9C?= =?utf-8?B?Rzl2UStnd3RHQ1B2YmxVQXM0cGQ2b2hsRTU4TFJ3SGpGYXYyZXN5L0pRRHFV?= =?utf-8?B?cWxLUzQ1VmgxWC8rSEs1c3J3elFiMnNGUXNraVQyZ1g3ZVBpamdKTUV1SmJr?= =?utf-8?B?RnNhVTZZelpyU2d0d1dRcWp1RzY5M3JTUzg4VmE5UUVna0pIemVZdEsrTzVO?= =?utf-8?B?L09aTWc2aGN0SFBYYnRNN3ZCbEpBd3ZMdkhyQVQ0SlA3aU4zK0IwUFQyOTE0?= =?utf-8?B?UDJzODJsL2tRTUhmYWFFUHNyRmlZeXdqa0lOODlhOW9NTTAvSk53Um5WbG5M?= =?utf-8?B?NjBZd2V2Rk9iYUVpR2t6eGw5L2xGRVJINVFMekZLbVBRd0tucXN6SHpocUM4?= =?utf-8?B?akZDR3AyVVVvWlJUQnBCQms1dXV3OFBTL0MyOVhUVXJIdXF3ZTFaV05HcWx5?= =?utf-8?B?b3Q2b2tJVUVIOVhrY1g5UVRuMWg4K3o3aUwxN1hxL3A0RTZjRGlncmowTjcx?= =?utf-8?B?b2dTbWNUZkZlYkpwUy95L245MVhoeDFPMk9NNWlPSHlpK1h0cDhZUm4wSXZC?= =?utf-8?B?d2l1K3JVeHp3OTNBUy9NM2c1MkRxSTk2YTBQRWlTdFZhMEN6VEFyb0kySFRY?= =?utf-8?B?WkoxakZVaTErWGlBbmZGL2tBa0E2QUlKUmZDWmEyMXoveW1qV0JjcTZwTDN1?= =?utf-8?B?dmw3Z0lkWll4R3FNMjZJQWRjdnoydGx0UnF2dktQYWpVV1ZHWnJldzMwYkpl?= =?utf-8?B?YUd1SFAwTlozVnBteXlBdDMvd3p4elZ0amRieFZ3NDZGY0JuWFZZbmpOWURa?= =?utf-8?B?Si9zaWxYdHZEdzh4MnhlUEYzdExESGw5ak1sWUdOY3Mrbkp4UnhFVEg5VmVX?= =?utf-8?B?azZmTU5PVU1qQzMxWHgvNnZLc3ZMRGdQT0xNUjFuQ3dObm10dDNDUG1SUnZz?= =?utf-8?B?dUtGVzJXYXdtVE1hVWNRQmJZYUY4eitIZEpVTUlyZGRvREhmT1hjZXpTdVZv?= =?utf-8?B?WVhUMkRWaU9Hcm1mdXJNSmxINzBGdldCemZUMjJsQWtqaEs0OE5ncG5CMzVE?= =?utf-8?B?TEk4SVZNUjQwYVRxcWpFK3p2TG1ldFY5SzV6bzhlaWNUejlqbjBuR0VLd2J2?= =?utf-8?B?QjBNV1l1dU5vYjdvajh0YW1ETDRXdEFia0JkMzY4T2wvNjVaY1lkbnZrSTJp?= =?utf-8?B?aW9JMUNpMDVjVGNZRzFhdkNIWFBjeGh2b2dJbUZGdXNYekNnWENZa3BrdVZU?= =?utf-8?B?VGFORk1vTG1ucmwveWtCOVhIdEFNVStDUmV0dXB3TUMxV1VCUUMvMWEzSko1?= =?utf-8?B?VThwNCs2NmpJKzQxUHVXeEJMUHh5VVlSOFlRQmJDeG50MFQrdGJXZWZwMHE2?= =?utf-8?B?T3JsRGZSaC94N2JVTmw2ZjFLanJ1V1o2OEZGWXE2VXhXRXFZb3liVnhLWDEw?= =?utf-8?B?TWluRkh1MmpMSVFFLzRTZm9aVlUza2JKN0lSSStwSzZPNFNHaXJLalFoaXlG?= =?utf-8?B?MHNvQ2hNUW0rSWUwM213U0VpYXg4QkdtL3AvcVozV0JSUDJTQnZjaDE3Smh6?= =?utf-8?B?ZVM2cERTdGJ5cmJxY3F5QjFjRFo0UTVZT09qVDFmN3l0Ky9TVDQ2bUR0cUJI?= =?utf-8?B?S3hOaDljUGxQK1R6amsrb2NJV2QxZzl5V1JuTnRxbldvdHhYZ2dxRlhmL1lr?= =?utf-8?B?a2UzM2Q5L1k5UTJSaW5oaFk0Z2xWbDVoaUQ4dkxIaHVQWm8wV0dZK0gwd094?= =?utf-8?B?ZmZaZHpadjAxMGdqT0JCTTNZMFNmdmZ5bEpWUjlxUW9PVWRoVGtzVW1pU2kv?= =?utf-8?B?M1ZYczlYMWZwWjRiMkR2TEdHWVBMMXBsNW5rSzZ5amlvM0RGYStpR3RJSUdY?= =?utf-8?B?dWZWNEM2aDRmNmt2SkE2WTJVZ1p4UVhxZFdDd25SOTVFd2RaVDZvWnpCODFW?= =?utf-8?B?ZmxYbm1ZVUhJN0VFcFAxNVR5VWFTZEtJQVFTYXhCUXo1RmtxUi83YmlSZk8y?= =?utf-8?B?RzR6ckZ4SWtFb3Y4Z2JYZm9FRHBMbzlaTmNpQi80ampvYktPall3Tjcyem9M?= =?utf-8?Q?JoHZzHBDXAi36aRrdGvRrJgKc?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MW4PR11MB5872.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6f9eea28-792f-4dc6-f9fb-08db623c6157 X-MS-Exchange-CrossTenant-originalarrivaltime: 01 Jun 2023 01:06:07.3699 (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: IJbkHCvsBZ4wTwB8iZLEB5VzkDAJAn4SE8ydBEPP66Tc8PM64sMKBO7MCzUcVkbdRaE4JyT2634tViXuUgekGA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA2PR11MB5100 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 RGlzYWJsaW5nIGZsYXNoIGlzIGEgc2lsaWNvbiBiZWhhdmlvci4NCg0KQ2FuIHdlIGRvIFNtbVdh aXRGb3JBbGxQcm9jZXNzb3IoKSBpbiBGVkIgZHJpdmVyLCBvciBTUEkgZHJpdmVyID8NCg0KVGhh bmsgeW91DQpZYW8sIEppZXdlbg0KDQoNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0K PiBGcm9tOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbyA8ZGV2ZWxAZWRrMi5ncm91cHMuaW8+IE9uIEJl aGFsZiBPZiBXdSwgSmlheGluDQo+IFNlbnQ6IFRodXJzZGF5LCBKdW5lIDEsIDIwMjMgOTowMyBB TQ0KPiBUbzogZGV2ZWxAZWRrMi5ncm91cHMuaW87IExpLCBaaGloYW8gPHpoaWhhby5saUBpbnRl bC5jb20+OyBHYW8sIExpbWluZw0KPiA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPjsgTmksIFJh eSA8cmF5Lm5pQGludGVsLmNvbT47IGtyYXhlbEByZWRoYXQuY29tDQo+IENjOiBXYW5nLCBKaWFu IEogPGppYW4uai53YW5nQGludGVsLmNvbT4NCj4gU3ViamVjdDogUmU6IFtlZGsyLWRldmVsXSBb UEFUQ0ggdjEgMS8xXSBNZGVNb2R1bGVQa2cvVmFyaWFibGVTbW0uYzogYWRkDQo+IEFwIHJlbmRl enZvdXMgY2hlY2sgYmVmb3JlIFNtbVNldFZhcmlhYmxlLg0KPiANCj4gSGkgQWxsLA0KPiANCj4g SSB0aGluayB3ZSBuZWVkIHRoaXMgcGF0Y2g6DQo+IA0KPiBUaGVyZSBpcyBhIHJlcXVpcmVtZW50 IHRoYXQgYWxsIENQVSB0aHJlYWRzIG11c3QgaW4gU01NIGZvciBOb24tVm9sYXRpbGUNCj4gdmFy aWFibGUuIEJlY2F1c2UgdGhlIFNNTSB3aWxsIGRpc2FibGVzIHRoZSBmbGFzaCBwcm90ZWN0aW9u LiBCZWZvcmUgdGhhdCwgd2UNCj4gbXVzdCBndWFyYW50ZWUgYWxsIENQVSB0aHJlYWRzIGFyZSBp biBTTU0gdG8gYXZvaWQgdGhlIG5vbi1zbW0gbW9kZSBjcHVzDQo+IG1vZGlmeSB0aGUgZmxhc2gu DQo+IA0KPiANCj4gWmhpaGFvLA0KPiANCj4gSSB0aGluayB0aGlzIGlzIG9ubHkgbmVlZGVkIGZv ciB0aGUgTm9uLVZvbGF0aWxlLCBJIHN1Z2dlc3QgYXMgYmVsb3cgY2hlY2s6DQo+IA0KPiAgICAg ICBpZiAoKEF0dHJpYnV0ZXMgJiBFRklfVkFSSUFCTEVfTk9OX1ZPTEFUSUxFKSAhPSAwKSB7DQo+ ICAgICAgICAgaWYgKEVGSV9FUlJPUiAoU21tV2FpdEZvckFsbFByb2Nlc3NvciAoVFJVRSkpKSB7 DQo+ICAgICAgICAgICBERUJVRyAoKERFQlVHX0VSUk9SLCAiIFNtbVZhcmlhYmxlU2V0VmFyaWFi bGU6IEZhaWwgdG8gd2FpdCBmb3IgYWxsIEFQDQo+IGNoZWNrIGluIFNNTSFcbiIpKTsNCj4gICAg ICAgICAgIFN0YXR1cyA9IEVGSV9BQk9SVEVEOw0KPiAgICAgICAgICAgZ290byBFWElUOw0KPiAg ICAgICAgIH0NCj4gICAgICAgfQ0KPiANCj4gVGhhbmtzLA0KPiBKaWF4aW4NCj4gDQo+ID4gLS0t LS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiBGcm9tOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbyA8 ZGV2ZWxAZWRrMi5ncm91cHMuaW8+IE9uIEJlaGFsZiBPZiBMaSwNCj4gPiBaaGloYW8NCj4gPiBT ZW50OiBGcmlkYXksIE1heSAxOSwgMjAyMyA0OjExIFBNDQo+ID4gVG86IEdhbywgTGltaW5nIDxn YW9saW1pbmdAYnlvc29mdC5jb20uY24+OyBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsgTmksDQo+ID4g UmF5IDxyYXkubmlAaW50ZWwuY29tPjsga3JheGVsQHJlZGhhdC5jb20NCj4gPiBDYzogV2FuZywg SmlhbiBKIDxqaWFuLmoud2FuZ0BpbnRlbC5jb20+DQo+ID4gU3ViamVjdDogUmU6IFtlZGsyLWRl dmVsXSBbUEFUQ0ggdjEgMS8xXSBNZGVNb2R1bGVQa2cvVmFyaWFibGVTbW0uYzoNCj4gPiBhZGQg QXAgcmVuZGV6dm91cyBjaGVjayBiZWZvcmUgU21tU2V0VmFyaWFibGUuDQo+ID4NCj4gPiBIaSBM aW1pbmcNCj4gPiBJbiBBcC1SZWxheGVkIG1vZGUsIEJzcCB3aWxsIG5vdCB3YWl0IGZvciBhbGwg YXAgYXJyaXZlIGFuZCBjYWxsIHRoZSBTTUkNCj4gPiBoYW5kbGVycy4gIEJ1dCBzb21lIFNNSSBo YW5kbGVycyBuZWVkIGFsbCBBcHMgYXJyaXZlIGluIHNtbSBtb2RlIHN1Y2ggYXMNCj4gPiBTbW1T ZXRWYXJpYWJsZS4gQXMgdGhlIGRlc2lnbiwgU2V0VmFyaWFibGUgbmVlZCB0byBsZXQgYWxsIGFw cyBhcnJpdmUgYmVjYXVzZQ0KPiA+IGl0IHdpbGwgd3JpdGUgZmxhc2guIEhhbGYgeWVhciBhZ28s IEkgc2VuZCB0aGUgcGF0Y2ggdGhhdCBjYWxsaW5nDQo+ID4gU21tQ3B1UmVuZGV6dm91cygpIGJl Zm9yZSBTbW1TZXRWYXJpYWJsZS4gSXQgd2FzIHJldmlld2VkIGJ1dCBoYXNuJ3QNCj4gPiBtZXJn ZWQuIFNtbUNwdVJlbmRlenZvdXMoKSB3aWxsIHJldHVybiBpbW1lZGlhdGVseSBpbiB0cmFkaXRp b25hbC1BUA0KPiA+IG1vZGUuDQo+ID4gSSdtIG5vdCBzdXJlIHdoYXQgcmV0dXJucyBFRklfQUND RVNTX0RFTklFRC4gQ2FsbGluZyBTbW1DcHVSZW5kZXp2b3VzKCkNCj4gPiBiZWZvcmUgU21tU2V0 VmFyaWFibGUgaXMgb3VyIG9yaWdpbmFsIGRlc2lnbiBidXQgaGF2ZW4ndCBpbXBsZW1lbnRlZC4N Cj4gPg0KPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gRnJvbTogZ2FvbGltaW5n IDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+DQo+ID4gU2VudDogVGh1cnNkYXksIE1heSAxOCwg MjAyMyA1OjM4IFBNDQo+ID4gVG86IExpLCBaaGloYW8gPHpoaWhhby5saUBpbnRlbC5jb20+OyBk ZXZlbEBlZGsyLmdyb3Vwcy5pbzsgTmksIFJheQ0KPiA+IDxyYXkubmlAaW50ZWwuY29tPjsga3Jh eGVsQHJlZGhhdC5jb20NCj4gPiBDYzogV2FuZywgSmlhbiBKIDxqaWFuLmoud2FuZ0BpbnRlbC5j b20+DQo+ID4gU3ViamVjdDog5Zue5aSNOiBbUEFUQ0ggdjEgMS8xXSBNZGVNb2R1bGVQa2cvVmFy aWFibGVTbW0uYzogYWRkIEFwDQo+ID4gcmVuZGV6dm91cyBjaGVjayBiZWZvcmUgU21tU2V0VmFy aWFibGUuDQo+ID4NCj4gPiBaaGloYW86DQo+ID4gICBIYXZlIHlvdSByb290IGNhdXNlIHRoaXMg aXNzdWUgdGhhdCBTbW1WYXJpYWJsZVNldFZhcmlhYmxlIG1heSByZXR1cm4NCj4gPiBFRklfQUND RVNTX0RFTklFRD8NCj4gPg0KPiA+ICAgSSBhbSBub3Qgc3VyZSB3aGV0aGVyIHRoaXMgZml4IGlz IHByb3Blci4gSSBhbHNvIGFkZCBVZWZpQ3B1UGtnIG1haW50YWluZXJzDQo+ID4gUmF5IGFuZCBH ZXJkIGluIHRoZSBtYWlsIGxvb3AgZm9yIHRoaXMgZGlzY3Vzc2lvbi4NCj4gPg0KPiA+IFRoYW5r cw0KPiA+IExpbWluZw0KPiA+ID4gLS0tLS3pgq7ku7bljp/ku7YtLS0tLQ0KPiA+ID4g5Y+R5Lu2 5Lq6OiBaaGloYW8gTGkgPHpoaWhhby5saUBpbnRlbC5jb20+DQo+ID4gPiDlj5HpgIHml7bpl7Q6 IDIwMjPlubQ15pyIMTDml6UgMTg6NTcNCj4gPiA+IOaUtuS7tuS6ujogZGV2ZWxAZWRrMi5ncm91 cHMuaW8NCj4gPiA+IOaKhOmAgTogSmlhbiBKIFdhbmcgPGppYW4uai53YW5nQGludGVsLmNvbT47 IExpbWluZyBHYW8NCj4gPiA+IDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+DQo+ID4gPiDkuLvp opg6IFtQQVRDSCB2MSAxLzFdIE1kZU1vZHVsZVBrZy9WYXJpYWJsZVNtbS5jOiBhZGQgQXAgcmVu ZGV6dm91cw0KPiA+IGNoZWNrDQo+ID4gPiBiZWZvcmUgU21tU2V0VmFyaWFibGUuDQo+ID4gPg0K PiA+ID4gUkVGOiBodHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hvd19idWcuY2dpP2lk PTQ0MjkNCj4gPiA+DQo+ID4gPiBGb3IgQXAtUmVsYXhlZCBzeW5jIG1vZGUsIFNtbVZhcmlhYmxl U2V0VmFyaWFibGUoKSBuZWVkIHRvIGxldCBhbGwgQXBzDQo+ID4gPiBhcnJpdmUgdG8gc21tIGJl Zm9yZSBpdCBzZXQgdGhlIHZhcmlhYmxlLiBJZiBub3QsIGl0IHdvdWxkIHJldHVybg0KPiA+ID4g RUZJX0FDQ0VTU19ERU5JRUQuDQo+ID4gPg0KPiA+ID4gQ2M6IEppYW4gSiBXYW5nIDxqaWFuLmou d2FuZ0BpbnRlbC5jb20+DQo+ID4gPiBDYzogTGltaW5nIEdhbyA8Z2FvbGltaW5nQGJ5b3NvZnQu Y29tLmNuPg0KPiA+ID4NCj4gPiA+IFNpZ25lZC1vZmYtYnk6IFpoaWhhbyBMaSA8emhpaGFvLmxp QGludGVsLmNvbT4NCj4gPiA+IC0tLQ0KPiA+ID4gIE1kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvVmFy aWFibGUvUnVudGltZUR4ZS9WYXJpYWJsZVNtbS5jDQo+ID4gPiB8IDEwICsrKysrKysrKy0NCj4g PiA+ICBNZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1ZhcmlhYmxlL1J1bnRpbWVEeGUvVmFyaWFibGVT bW0uaW5mDQo+ID4gPiB8ICAzICsrLQ0KPiA+ID4NCj4gPiBNZGVNb2R1bGVQa2cvVW5pdmVyc2Fs L1ZhcmlhYmxlL1J1bnRpbWVEeGUvVmFyaWFibGVTdGFuZGFsb25lTW0uaW5mDQo+ID4gPiB8ICAz ICsrLQ0KPiA+ID4gIDMgZmlsZXMgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlv bnMoLSkNCj4gPiA+DQo+ID4gPiBkaWZmIC0tZ2l0DQo+ID4gYS9NZGVNb2R1bGVQa2cvVW5pdmVy c2FsL1ZhcmlhYmxlL1J1bnRpbWVEeGUvVmFyaWFibGVTbW0uYw0KPiA+ID4gYi9NZGVNb2R1bGVQ a2cvVW5pdmVyc2FsL1ZhcmlhYmxlL1J1bnRpbWVEeGUvVmFyaWFibGVTbW0uYw0KPiA+ID4gaW5k ZXggNTI1M2MzMjhkY2Q5Li40OTQ0OTAzZTY0ZDQgMTAwNjQ0DQo+ID4gPiAtLS0gYS9NZGVNb2R1 bGVQa2cvVW5pdmVyc2FsL1ZhcmlhYmxlL1J1bnRpbWVEeGUvVmFyaWFibGVTbW0uYw0KPiA+ID4g KysrIGIvTWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9WYXJpYWJsZS9SdW50aW1lRHhlL1ZhcmlhYmxl U21tLmMNCj4gPiA+IEBAIC0xNCw3ICsxNCw3IEBADQo+ID4gPiAgICBWYXJpYWJsZVNlcnZpY2VT ZXRWYXJpYWJsZSgpLCBWYXJpYWJsZVNlcnZpY2VRdWVyeVZhcmlhYmxlSW5mbygpLA0KPiA+ID4g UmVjbGFpbUZvck9TKCksDQo+ID4gPg0KPiA+ID4gICAgU21tVmFyaWFibGVHZXRTdGF0aXN0aWNz KCkgc2hvdWxkIGFsc28gZG8gdmFsaWRhdGlvbiBiYXNlZCBvbiBpdHMNCj4gPiA+IG93biBrbm93 bGVkZ2UuDQo+ID4gPg0KPiA+ID4NCj4gPiA+DQo+ID4gPiAtQ29weXJpZ2h0IChjKSAyMDEwIC0g MjAxOSwgSW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMNCj4gPiA+IHJlc2VydmVkLjxCUj4N Cj4gPiA+DQo+ID4gPiArQ29weXJpZ2h0IChjKSAyMDEwIC0gMjAyMywgSW50ZWwgQ29ycG9yYXRp b24uIEFsbCByaWdodHMNCj4gPiA+ICtyZXNlcnZlZC48QlI+DQo+ID4gPg0KPiA+ID4gIENvcHly aWdodCAoYykgMjAxOCwgTGluYXJvLCBMdGQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuPEJSPg0KPiA+ ID4NCj4gPiA+ICBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBhdGVudA0K PiA+ID4NCj4gPiA+DQo+ID4gPg0KPiA+ID4gQEAgLTI4LDYgKzI4LDcgQEAgU1BEWC1MaWNlbnNl LUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCj4gPiA+DQo+ID4gPg0KPiA+ID4gICNp bmNsdWRlIDxMaWJyYXJ5L01tU2VydmljZXNUYWJsZUxpYi5oPg0KPiA+ID4NCj4gPiA+ICAjaW5j bHVkZSA8TGlicmFyeS9WYXJpYWJsZVBvbGljeUxpYi5oPg0KPiA+ID4NCj4gPiA+ICsjaW5jbHVk ZSA8TGlicmFyeS9TbW1DcHVSZW5kZXp2b3VzTGliLmg+DQo+ID4gPg0KPiA+ID4NCj4gPiA+DQo+ ID4gPiAgI2luY2x1ZGUgPEd1aWQvU21tVmFyaWFibGVDb21tb24uaD4NCj4gPiA+DQo+ID4gPiAg I2luY2x1ZGUgIlZhcmlhYmxlLmgiDQo+ID4gPg0KPiA+ID4gQEAgLTg3LDYgKzg4LDEzIEBAIFNt bVZhcmlhYmxlU2V0VmFyaWFibGUgKCAgew0KPiA+ID4NCj4gPiA+ICAgIEVGSV9TVEFUVVMgIFN0 YXR1czsNCj4gPiA+DQo+ID4gPg0KPiA+ID4NCj4gPiA+ICsgIC8vDQo+ID4gPg0KPiA+ID4gKyAg Ly8gTmVlZCB0byB3YWl0IGZvciBhbGwgQXBzIHRvIGFycml2ZSBpbiBSZWxheGVkLUFQIFN5bmMg TW9kZQ0KPiA+ID4NCj4gPiA+ICsgIC8vDQo+ID4gPg0KPiA+ID4gKyAgaWYgKEVGSV9FUlJPUiAo U21tV2FpdEZvckFsbFByb2Nlc3NvciAoVFJVRSkpKSB7DQo+ID4gPg0KPiA+ID4gKyAgICBERUJV RyAoKERFQlVHX0VSUk9SLCAiU2V0VmFyaWFibGU6IGZhaWwgdG8gd2FpdCBmb3IgYWxsIEFQIGNo ZWNrDQo+ID4gPiArIGluDQo+ID4gPiBTTU0hXG4iKSk7DQo+ID4gPg0KPiA+ID4gKyAgfQ0KPiA+ ID4NCj4gPiA+ICsNCj4gPiA+DQo+ID4gPiAgICAvLw0KPiA+ID4NCj4gPiA+ICAgIC8vIERpc2Fi bGUgd3JpdGUgcHJvdGVjdGlvbiB3aGVuIHRoZSBjYWxsaW5nIFNldFZhcmlhYmxlKCkgdGhyb3Vn aA0KPiA+ID4gRUZJX1NNTV9WQVJJQUJMRV9QUk9UT0NPTC4NCj4gPiA+DQo+ID4gPiAgICAvLw0K PiA+ID4NCj4gPiA+IGRpZmYgLS1naXQNCj4gPiA+IGEvTWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9W YXJpYWJsZS9SdW50aW1lRHhlL1ZhcmlhYmxlU21tLmluZg0KPiA+ID4gYi9NZGVNb2R1bGVQa2cv VW5pdmVyc2FsL1ZhcmlhYmxlL1J1bnRpbWVEeGUvVmFyaWFibGVTbW0uaW5mDQo+ID4gPiBpbmRl eCA4YzU1MmI4N2UwODAuLjFjZjBkMDUxZTZjOSAxMDA2NDQNCj4gPiA+IC0tLSBhL01kZU1vZHVs ZVBrZy9Vbml2ZXJzYWwvVmFyaWFibGUvUnVudGltZUR4ZS9WYXJpYWJsZVNtbS5pbmYNCj4gPiA+ ICsrKyBiL01kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvVmFyaWFibGUvUnVudGltZUR4ZS9WYXJpYWJs ZVNtbS5pbmYNCj4gPiA+IEBAIC0xOCw3ICsxOCw3IEBADQo+ID4gPiAgIyAgbWF5IG5vdCBiZSBt b2RpZmllZCB3aXRob3V0IGF1dGhvcml6YXRpb24uIElmIHBsYXRmb3JtIGZhaWxzIHRvDQo+ID4g cHJvdGVjdA0KPiA+ID4gdGhlc2UgcmVzb3VyY2VzLA0KPiA+ID4NCj4gPiA+ICAjICB0aGUgYXV0 aGVudGljYXRpb24gc2VydmljZSBwcm92aWRlZCBpbiB0aGlzIGRyaXZlciB3aWxsIGJlIGJyb2tl biwNCj4gPiA+IGFuZA0KPiA+IHRoZQ0KPiA+ID4gYmVoYXZpb3IgaXMgdW5kZWZpbmVkLg0KPiA+ ID4NCj4gPiA+ICAjDQo+ID4gPg0KPiA+ID4gLSMgQ29weXJpZ2h0IChjKSAyMDEwIC0gMjAxOSwg SW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMNCj4gPiA+IHJlc2VydmVkLjxCUj4NCj4gPiA+ DQo+ID4gPiArIyBDb3B5cmlnaHQgKGMpIDIwMTAgLSAyMDIzLCBJbnRlbCBDb3Jwb3JhdGlvbi4g QWxsIHJpZ2h0cw0KPiA+ID4gK3Jlc2VydmVkLjxCUj4NCj4gPiA+DQo+ID4gPiAgIyBDb3B5cmln aHQgKGMpIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4NCj4gPiA+DQo+ID4gPiAgIyBTUERYLUxpY2Vu c2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBhdGVudA0KPiA+ID4NCj4gPiA+ICAjDQo+ID4g Pg0KPiA+ID4gQEAgLTg0LDYgKzg0LDcgQEANCj4gPiA+ICAgIFZhcmlhYmxlUG9saWN5TGliDQo+ ID4gPg0KPiA+ID4gICAgVmFyaWFibGVQb2xpY3lIZWxwZXJMaWINCj4gPiA+DQo+ID4gPiAgICBT YWZlSW50TGliDQo+ID4gPg0KPiA+ID4gKyAgU21tQ3B1UmVuZGV6dm91c0xpYg0KPiA+ID4NCj4g PiA+DQo+ID4gPg0KPiA+ID4gIFtQcm90b2NvbHNdDQo+ID4gPg0KPiA+ID4gICAgZ0VmaVNtbUZp cm13YXJlVm9sdW1lQmxvY2tQcm90b2NvbEd1aWQgICAgICAgICMjIENPTlNVTUVTDQo+ID4gPg0K PiA+ID4gZGlmZiAtLWdpdA0KPiA+ID4NCj4gPiBhL01kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvVmFy aWFibGUvUnVudGltZUR4ZS9WYXJpYWJsZVN0YW5kYWxvbmVNbS5pDQo+ID4gbg0KPiA+ID4gZg0K PiA+ID4NCj4gPiBiL01kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvVmFyaWFibGUvUnVudGltZUR4ZS9W YXJpYWJsZVN0YW5kYWxvbmVNbS4NCj4gPiBpbg0KPiA+ID4gZg0KPiA+ID4gaW5kZXggZjA5YmVk NDBjZjUxLi44OTE4NzQ1NmNhMjUgMTAwNjQ0DQo+ID4gPiAtLS0NCj4gPiA+DQo+ID4gYS9NZGVN b2R1bGVQa2cvVW5pdmVyc2FsL1ZhcmlhYmxlL1J1bnRpbWVEeGUvVmFyaWFibGVTdGFuZGFsb25l TW0uaQ0KPiA+IG4NCj4gPiA+IGYNCj4gPiA+ICsrKw0KPiA+ID4NCj4gPiBiL01kZU1vZHVsZVBr Zy9Vbml2ZXJzYWwvVmFyaWFibGUvUnVudGltZUR4ZS9WYXJpYWJsZVN0YW5kYWxvbmVNbS4NCj4g PiBpbg0KPiA+ID4gZg0KPiA+ID4gQEAgLTE4LDcgKzE4LDcgQEANCj4gPiA+ICAjICBtYXkgbm90 IGJlIG1vZGlmaWVkIHdpdGhvdXQgYXV0aG9yaXphdGlvbi4gSWYgcGxhdGZvcm0gZmFpbHMgdG8N Cj4gPiBwcm90ZWN0DQo+ID4gPiB0aGVzZSByZXNvdXJjZXMsDQo+ID4gPg0KPiA+ID4gICMgIHRo ZSBhdXRoZW50aWNhdGlvbiBzZXJ2aWNlIHByb3ZpZGVkIGluIHRoaXMgZHJpdmVyIHdpbGwgYmUg YnJva2VuLA0KPiA+ID4gYW5kDQo+ID4gdGhlDQo+ID4gPiBiZWhhdmlvciBpcyB1bmRlZmluZWQu DQo+ID4gPg0KPiA+ID4gICMNCj4gPiA+DQo+ID4gPiAtIyBDb3B5cmlnaHQgKGMpIDIwMTAgLSAy MDE5LCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cw0KPiA+ID4gcmVzZXJ2ZWQuPEJSPg0K PiA+ID4NCj4gPiA+ICsjIENvcHlyaWdodCAoYykgMjAxMCAtIDIwMjMsIEludGVsIENvcnBvcmF0 aW9uLiBBbGwgcmlnaHRzDQo+ID4gPiArcmVzZXJ2ZWQuPEJSPg0KPiA+ID4NCj4gPiA+ICAjIENv cHlyaWdodCAoYykgMjAxOCwgTGluYXJvLCBMdGQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuPEJSPg0K PiA+ID4NCj4gPiA+ICAjIENvcHlyaWdodCAoYykgTWljcm9zb2Z0IENvcnBvcmF0aW9uLg0KPiA+ ID4NCj4gPiA+ICAjIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2UtUGF0ZW50 DQo+ID4gPg0KPiA+ID4gQEAgLTgwLDYgKzgwLDcgQEANCj4gPiA+ICAgIFZhcmlhYmxlRmxhc2hJ bmZvTGliDQo+ID4gPg0KPiA+ID4gICAgVmFyaWFibGVQb2xpY3lMaWINCj4gPiA+DQo+ID4gPiAg ICBWYXJpYWJsZVBvbGljeUhlbHBlckxpYg0KPiA+ID4NCj4gPiA+ICsgIFNtbUNwdVJlbmRlenZv dXNMaWINCj4gPiA+DQo+ID4gPg0KPiA+ID4NCj4gPiA+ICBbUHJvdG9jb2xzXQ0KPiA+ID4NCj4g PiA+ICAgIGdFZmlTbW1GaXJtd2FyZVZvbHVtZUJsb2NrUHJvdG9jb2xHdWlkICAgICAgICAjIyBD T05TVU1FUw0KPiA+ID4NCj4gPiA+IC0tDQo+ID4gPiAyLjI2LjIud2luZG93cy4xDQo+ID4NCj4g Pg0KPiA+DQo+ID4NCj4gPg0KPiA+DQo+ID4NCj4gDQo+IA0KPiANCj4gDQo+IA0KPiANCg0K