From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail04.groups.io (mail04.groups.io [45.79.224.9]) by spool.mail.gandi.net (Postfix) with ESMTPS id E837F94188A for ; Sun, 14 Apr 2024 14:35:45 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=TQHD8KWIVIgHd5lOv6IO6QEsFYscGKRrOjQDj6LLi1c=; c=relaxed/simple; d=groups.io; h=From:To:CC:Subject:Thread-Topic:Thread-Index:Date:Message-ID:References:In-Reply-To:Accept-Language:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Resent-Date:Resent-From:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Language:Content-Type:Content-Transfer-Encoding; s=20240206; t=1713105344; v=1; b=TnlGrwZ78zDciq+tyr0JJD5vYjnCwgtzw2eo3q1POm6aASbbILHw4nlBjRBbPrttJKTVvcOQ P398RT3go/tV1JKuftZbQCzPgg8S9x7K2JpCXRRPV2APbjwyD1HGLf5yv4yuXA0Uk6AmUGO74rF u9I5CwMZzUIviwbHZQEYdQRuX2jdBeNQxB39ggwL7TTSoNkSn61Lv+eoEoQKKzXoMZujtzkiH3M 6NP9B0hZL1rfos6fw8wpflqO5pR4Uc+WUzW2yOnT55E17HS8pjsjOqSDDbAfRMTmGTWdc6EUBR7 oMNEvr6e+wXnyMAt81P34latB+5k54rUtY5KijNHPjLdA== X-Received: by 127.0.0.2 with SMTP id iSGVYY7687511xvHQ7JRex6j; Sun, 14 Apr 2024 07:35:44 -0700 X-Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.14]) by mx.groups.io with SMTP id smtpd.web10.33655.1713105343491083051 for ; Sun, 14 Apr 2024 07:35:43 -0700 X-CSE-ConnectionGUID: srZSadbDSpmI3yBLFLTEHA== X-CSE-MsgGUID: A722cq0NTeiB9KceSYBRlg== X-IronPort-AV: E=McAfee;i="6600,9927,11043"; a="12343307" X-IronPort-AV: E=Sophos;i="6.07,201,1708416000"; d="scan'208";a="12343307" X-Received: from orviesa006.jf.intel.com ([10.64.159.146]) by orvoesa106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Apr 2024 07:35:43 -0700 X-CSE-ConnectionGUID: qY8ydSJQTKKJQfNpT73LCA== X-CSE-MsgGUID: 9fNDn+WxS6mKMvYO0PCrtQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.07,201,1708416000"; d="scan'208";a="22097603" X-Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by orviesa006.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 14 Apr 2024 07:35:43 -0700 X-Received: from fmsmsx603.amr.corp.intel.com (10.18.126.83) 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.2507.35; Sun, 14 Apr 2024 07:35:42 -0700 X-Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35 via Frontend Transport; Sun, 14 Apr 2024 07:35:42 -0700 X-Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.168) 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.35; Sun, 14 Apr 2024 07:35:41 -0700 X-Received: from IA1PR11MB6170.namprd11.prod.outlook.com (2603:10b6:208:3ea::11) by SA3PR11MB7611.namprd11.prod.outlook.com (2603:10b6:806:304::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7452.49; Sun, 14 Apr 2024 14:35:38 +0000 X-Received: from IA1PR11MB6170.namprd11.prod.outlook.com ([fe80::ecc4:7fd0:cabb:89af]) by IA1PR11MB6170.namprd11.prod.outlook.com ([fe80::ecc4:7fd0:cabb:89af%4]) with mapi id 15.20.7452.041; Sun, 14 Apr 2024 14:35:38 +0000 From: "Huang, Yanbo" To: Taylor Beebe , "devel@edk2.groups.io" CC: "Wang, Jian J" , "Gao, Liming" , "Bi, Dandan" , "Zhou, Jianfeng" Subject: Re: [edk2-devel] MdeModulePkg: Fix MAT SplitRecord() Logic introduce one bug and will cause SUT reset when boot to windows Thread-Topic: MdeModulePkg: Fix MAT SplitRecord() Logic introduce one bug and will cause SUT reset when boot to windows Thread-Index: AQHajJhZnsQmOLi+jkyTDHFiOYCs3LFkvbMAgAMWR8A= Date: Sun, 14 Apr 2024 14:35:38 +0000 Message-ID: References: <20231127181818.411-1-taylor.d.beebe@gmail.com> <20231127181818.411-11-taylor.d.beebe@gmail.com> <45b9b2a8-4bbb-4d67-94a9-6c6d6607feb7@gmail.com> In-Reply-To: <45b9b2a8-4bbb-4d67-94a9-6c6d6607feb7@gmail.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: IA1PR11MB6170:EE_|SA3PR11MB7611:EE_ x-ms-office365-filtering-correlation-id: f485837c-7943-490c-c3b7-08dc5c90275f x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam-message-info: aPDr1/KeY6sdVjD/0agJ0UxFxQVTXGVF0bFEoF9MQirZBVbjFpLP2O8/f7hjIgSK0geJ7ulOcgoKBfU5vqVMn6zX2Hr/WsriY17SH2VqXyTzk0pSQL1uKzZxiw41/6jjWjC/TBHpVDRj9MjngMnO/tYdAmzG57d38X+YITVqoeQH/nMz7sArfJFYFbViOzhjrpB2QZ5YQSeWAzt2bKDBbcGEGN77VttyQegRANk5F0VTeny8+mvO1fwI+NID++lVjaUQwEkMbIqXCGldaBNvdqDyd/v8KIHkGzw6EVH+kHbpmYsVsHZP1q86/liOv9XNsNByhWUW/wlwV1ve2M70ocG/5Ns2o0A5G6GmwZF4DFXgPYfLON2GZlVtmeFbWiNJ7xjB6DaO3TZlSoX0vrEOwhq7x7lpjUszuQ79MLMFNF7CNd9/ZBQ6pROIW3sA6pOIFXGS2VsCXOyXp+LYPUdn7aLWqU1Tg4As/s6M+EB+FSIrNDPKK0RMSZK55C4T1ijfr5m+UdtwnCeKQKeRjDa1vqYHyHsl5QEgp/zAh1xwmyVkDAESaIKyGbMOPPf2yfh07kBduMtcRbtA4C20Mvg/owiD/R/1d/SNS0TQ3apF9z7MBRu841/WUY51YP/l9UOQpEPxcw5Jwq5ScHwXkbxaKQa8Cy6fz7BNPfUtjE7UraqeFz65vAvKugFQQE4qFafV x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?bzNSM1k1aDdHQ0UvM25ZTFJta2JiWDJ1RzdSdnFQTFRPMzJsWTdSZk9BUVEx?= =?utf-8?B?VmR2cVFMb2VVc3ViOE1vZytiaGgyR0NLakZzeEl5eGp4L1lUc3lvaGRnSG1P?= =?utf-8?B?aVdxNXFwckVidkFGY0M4aUpuVGQ4UG9KTGhIWGJkaE4vWUtnQjZ2alF2bEUy?= =?utf-8?B?Yk1vZUk4UlQ3bTZGa3Nwb2pEZXlaNEp5SDFTSDh5R0xhQ2R6c2k5bWt6T2Y3?= =?utf-8?B?ejVZckx3anZmVnhNYWk2Z1ovQnFNaWdCTXRqZWs5RHdjeWpDcHZCeUpNd25i?= =?utf-8?B?OXJUWjBqNmZvSHc2YWM1YlFONVJLRDlyMVVGVkh5amZOYjZjdzN5cldzUk1n?= =?utf-8?B?VENKK0h3Q3ZISVlGNVdUL3VLRFdsMSs4OHFIV1UyNGZRUlI1U0hOVDdEWWgw?= =?utf-8?B?NHE0eE44b085azVpQ2V2T0VLbVAzSFpDY2hOZHRra1R1STRrVmFuUkVRSHZo?= =?utf-8?B?c3FhTkVMRnFmaUZ3SkNFTmJiYy8xMXM5SFJ0NkNzdWtkZXJNenZZQzlpa0I0?= =?utf-8?B?RTVVV3piVWNPanNOOEI5UjgvZWlHNWV0U0hiVlJqNVNaeWtReGVkZHRXbTdt?= =?utf-8?B?UzBCZlF0bVMzMnVqOWdINU9WUkdNb3haUExwRnJnT25raVRJS0ZRMVBESEI5?= =?utf-8?B?dGNTMVpTKys4Nis3SjFzcXdGZWN1WitJZ2l0aUd6Z3crVFBDQnhqb05tSXJq?= =?utf-8?B?S0JzZitqOGFaMkdzdU9QL2NNZEtmVVlRMXhEY3FEaUNaY0VtR3RGVUdQakRN?= =?utf-8?B?aFBTei9qSXdMOU13bzZxb21UdjBpMC9XdkcxTi9BZjVRMU5zSnQ3VEVacHRu?= =?utf-8?B?OEZWL0tjU1ZpNWc5UEc1WmlzWjBId0ZYRnRXeUpTYm1DUm9XdmlGdk5mbHI0?= =?utf-8?B?RTVxSlliZFZtSVVYNnNFa2JDZFhtNGc2QWJ3bnZKNFdha0dpcVdJUEpkV1FV?= =?utf-8?B?Ui9xQm1CSUdwYzh4TmlOd0d0Z2s1a3lXNExSeHh2WExlVXJyV1BJYjdpR3hV?= =?utf-8?B?MTZOKy92VmdsamV4NmhqT2wxL2doOFdrS0QxMHVMZGtOdVU4aytlWnVzYUd5?= =?utf-8?B?Yy9qKzFZajZWa0lZMGdoZEMxNzluMGliV0RxaUxXaUVESDVjQWtzUlIwR2Nu?= =?utf-8?B?dng1eUxTSHc3TDRWSyttM1E2eHhyTThpOUJkWkd1dkwreFhMOUFZUE9oN3RJ?= =?utf-8?B?amc4UGc4NXpPL2hoSDZVTVRzd21kOGd0aXZ2YWlmZ212RmdXbGpyWnB5bWYr?= =?utf-8?B?RFRKYXQrODgyVjhBV0FYcldLbkQ2VDU2T1R2SU5vbHVXUEplMm03MHBaSTBH?= =?utf-8?B?eGJDZjMvaFYyaVl2Nkp6MFRIcFRINDdpdDluSWJrczkydnY2N3BEM3VoTlFp?= =?utf-8?B?eXd6Q1dQL3JzOEFDK2NtZGtKY2taeDh6M1dSUXVLendqZXUwVzJhT2VoTDJy?= =?utf-8?B?b3p6UEQ2UXBYVjJUcTFwdlFWYnpmQ1A1SUY4UEJKV2U2U0JtRk1wRWV0Z2Z4?= =?utf-8?B?OHBocVVzSGFuamRUTmh1WEpGQy9rejFMMitSR1poQ1c1QXZ5blc2blR0MDJR?= =?utf-8?B?V0xWdnBScENvaEl0NUJVanNZYU9JYUN2OU0vcmVGUkZGQ2Y5YVBPd2t3Qktl?= =?utf-8?B?OFdQRWs1Q0dWNi9iRnhOSFNIUkNjd1dZRVRQOSt2WTZRZTRIYS9rbkdYZk85?= =?utf-8?B?MWJQU3BpbU5oZUt6SGV6Z2FkQjJJMmE5c1hvZnZsblNIU09pK0ZteW9mdEM4?= =?utf-8?B?YzBkQTkrMFEvc2l5ZmZkcXVkUncxRWZ2T2J3YjkyU1ZJSmI0cnBRdVMrQ0pw?= =?utf-8?B?VGpqUXl3d2h5SDhzaGljZmRmR0UwN2h4bm8veUZTRXk4Ukw2d0RLekNnb0pY?= =?utf-8?B?ckx3djAvYUJoSS8xRXB6R0lLOHcyYnhScnMzMExxeWlRcHRrSDJzUTJVbEMw?= =?utf-8?B?VnNNVnovV1pzNkx3TEJLOWFlWDVxMTNxa0ZleWpnU3czQThYTEJaNG5xanN6?= =?utf-8?B?Q1NRVnhjVnZucExjS0puOTNMbXJoQjVZbkRXdmxNS3dUeWhOV2x6T2luQ21v?= =?utf-8?B?S2tHbDNVT0d3ZjVML3Y5Sng3NU95c2MrdElYSmFwRXAxY1R5dmZ4RHdWbHE3?= =?utf-8?Q?trZ2prvfz1yBSwXk7yKdcivxf?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: IA1PR11MB6170.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: f485837c-7943-490c-c3b7-08dc5c90275f X-MS-Exchange-CrossTenant-originalarrivaltime: 14 Apr 2024 14:35:38.4953 (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: 9QsmsGUTOibLsihoVi1ElJXzyRurHm5dJgXZYQ1CZ75wJlRA4WNP9NgxRlh2enpKkv7RKzGZFT26CB9wx7HVTw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA3PR11MB7611 X-OriginatorOrg: intel.com Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Resent-Date: Sun, 14 Apr 2024 07:35:43 -0700 Resent-From: yanbo.huang@intel.com Reply-To: devel@edk2.groups.io,yanbo.huang@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: GLZuszHERSaXj7cbyEcGFbZtx7686176AA= Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20240206 header.b=TnlGrwZ7; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=intel.com (policy=none); spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 45.79.224.9 as permitted sender) smtp.mailfrom=bounce@groups.io SGkgVGF5bG9yLA0KDQpGb3IgeW91ciBtZW50aW9uZWQ6ICJJbiB0aGlzIGNhc2UsIGJlY2F1c2Ug dGhlIG1lbW9yeSB0eXBlIG9mIHRoZSBidWZmZXIgaXMgRWZpUnVudGltZVNlcnZpY2VzQ29kZSwg c2hvdWxkbid0IHRoZSBmaW5hbCBwYWdlcyBiZSBFRklfTUVNT1JZX1JPPyINCg0KQWZ0ZXIgcHJp bnQgdGhlIGF0dHJpYnV0ZXMsIHRoZSBhdHRyaWJ1dGUgYXJlIG5vdCBzZXQgdG8gRUZJX01FTU9S WV9STywgbmVhcmx5IGFsbCBvZiB0aGUgTmV3UmVjb3JkLT5BdHRyaWJ1dGUgYXJlIHNldCB0byAw IGluIFNwbGl0UmVjb3JkIEFQSS4NCg0KQmVzdCBSZWdhcmRzLA0KWWFuYm8gSHVhbmcNCi0tLS0t T3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9tOiBUYXlsb3IgQmVlYmUgPHRheWxvci5kLmJlZWJl QGdtYWlsLmNvbT4gDQpTZW50OiBGcmlkYXksIEFwcmlsIDEyLCAyMDI0IDExOjEwIFBNDQpUbzog SHVhbmcsIFlhbmJvIDx5YW5iby5odWFuZ0BpbnRlbC5jb20+OyBkZXZlbEBlZGsyLmdyb3Vwcy5p bw0KQ2M6IFdhbmcsIEppYW4gSiA8amlhbi5qLndhbmdAaW50ZWwuY29tPjsgR2FvLCBMaW1pbmcg PGdhb2xpbWluZ0BieW9zb2Z0LmNvbS5jbj47IEJpLCBEYW5kYW4gPGRhbmRhbi5iaUBpbnRlbC5j b20+OyBaaG91LCBKaWFuZmVuZyA8amlhbmZlbmcuemhvdUBpbnRlbC5jb20+DQpTdWJqZWN0OiBS ZTogTWRlTW9kdWxlUGtnOiBGaXggTUFUIFNwbGl0UmVjb3JkKCkgTG9naWMgaW50cm9kdWNlIG9u ZSBidWcgYW5kIHdpbGwgY2F1c2UgU1VUIHJlc2V0IHdoZW4gYm9vdCB0byB3aW5kb3dzDQoNCkhp IFlhbmJvLA0KDQpDYW4geW91IGhlbHAgbWUgdW5kZXJzdGFuZCB0aGUgbWVtb3J5IGxheW91dCB3 aGljaCBjYXVzZXMgdGhpcyBpc3N1ZT8NCg0KSWYgYSBzaW5nbGUgRWZpUnVudGltZVNlcnZpY2Vz Q29kZSBkZXNjcmlwdG9yIG5lZWRzIHRvIGJlIHNwbGl0IGJlY2F1c2UgYW4gaW1hZ2UgaXMgd2l0 aGluIHRoZSBtZW1vcnkgcmFuZ2UuIEkgdGhpbmsgdGhhdCBkZXNjcmlwdG9yIGlzIHNwbGl0IGxp a2Ugc28gaW4gdGhlIGNhc2UgeW91J3JlIGVuY291bnRlcmluZzoNCg0KLS0tLS0tLS0tLS0tLS0t LS0tLcKgIC0tLcKgwqDCoMKgwqDCoCAtLS0NCnzCoMKgwqDCoMKgwqAgREFUQcKgwqDCoMKgwqAg fMKgwqDCoMKgIHzCoMKgwqDCoMKgIMKgIHwNCi0tLS0tLS0tLS0tLS0tLS0tLS3CoMKgwqDCoCB8 wqDCoMKgwqDCoMKgwqAgfA0KfMKgwqDCoMKgwqDCoCBDT0RFIMKgwqDCoMKgIHzCoMKgwqDCoCB8 IEltYWdlwqAgfA0KLS0tLS0tLS0tLS0tLS0tLS0tLcKgwqDCoMKgIHwgTWVtb3J5IHwgRWZpUnVu dGltZVNlcnZpY2VzQ29kZQ0KfMKgwqDCoMKgwqDCoCBEQVRBwqDCoMKgwqDCoCB8wqDCoMKgwqAg fMKgwqDCoMKgwqDCoMKgIHwNCi0tLS0tLS0tLS0tLS0tLS0tLS3CoCAtLS3CoMKgwqDCoMKgwqDC oMKgIHwNCnzCoMKgIEV4dHJhIFBhZ2VzIMKgIHzCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8 DQotLS0tLS0tLS0tLS0tLS0tLS0twqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAtLS0NCg0KSW4gdGhp cyBjYXNlLCBiZWNhdXNlIHRoZSBtZW1vcnkgdHlwZSBvZiB0aGUgYnVmZmVyIGlzIEVmaVJ1bnRp bWVTZXJ2aWNlc0NvZGUsIHNob3VsZG4ndCB0aGUgZmluYWwgcGFnZXMgYmUgRUZJX01FTU9SWV9S Tz8NCg0KVGhhbmtzIQ0KLVRheWxvcg0KT24gNC8xMS8yMDI0IDEwOjE0IFBNLCBIdWFuZywgWWFu Ym8gd3JvdGU6DQo+IEhpIEJlZWJlLA0KPg0KPiBSZWNlbnRseSB3ZSBmb3VuZCB0aGlzIGNvbW1p dCAiIE1kZU1vZHVsZVBrZzogRml4IE1BVCBTcGxpdFJlY29yZCgpIExvZ2ljICIgd2lsbCBjYXVz ZSBTVVQgcmVzZXQgYWZ0ZXIgZW5hYmxlIHNvbWUga25vYnMuDQo+IEkgZmlsZWQgb25lIEJ1Z3pp bGxhIGZvciBpdDogDQo+IGh0dHBzOi8vYnVnemlsbGEudGlhbm9jb3JlLm9yZy9zaG93X2J1Zy5j Z2k/aWQ9NDc1MQ0KPg0KPiBBZnRlciBkZWJ1Zywgd2UgZm91bmQgaW4gU3BsaXRSZWNvcmQgQVBJ LCBtYW55IGVudHJpZXMgYXR0cmlidXRlIGFyZSBzZXQgdG8gMCwgbm90IGFsaWduIHdpdGggdGhl IFVFRkkgc3BlYzoNCj4gIk1lbW9yeSBBdHRyaWJ1dGVzIFRhYmxlIChNQVQpOg0KPiBFRklfTUVN T1JZX0FUVFJJQlVURVNfVEFCTEUuIFRoZSBlbnRpcmUgVUVGSSBydW50aW1lIG11c3QgYmUgZGVz Y3JpYmVkIGJ5IHRoaXMgdGFibGUuDQo+IEFsbCBlbnRyaWVzIG11c3QgaW5jbHVkZSBhdHRyaWJ1 dGVzIEVGSV9NRU1PUllfUk8sIEVGSV9NRU1PUllfWFAsIG9yIGJvdGguIE1lbW9yeSBNVVNUIGJl IGVpdGhlciByZWFkYWJsZSBhbmQgZXhlY3V0YWJsZSBPUiB3cml0ZWFibGUgYW5kIG5vbi1leGVj dXRhYmxlLiINCj4gVGhpcyBzaG91bGQgYmUgdGhlIHJvb3QgY2F1c2Ugb2YgdGhpcyBpc3N1ZS4N Cj4gV2hlbiB3ZSB1cGRhdGUgIk5ld1JlY29yZC0+QXR0cmlidXRlICAgICA9IFRlbXBSZWNvcmQu QXR0cmlidXRlOyIgdG8gIk5ld1JlY29yZC0+QXR0cmlidXRlICAgICA9IFRlbXBSZWNvcmQuQXR0 cmlidXRlIHwgRUZJX01FTU9SWV9YUDsiLCBTVVQgY2FuIGJvb3QgdG8gd2luZG93cy4NCj4NCj4g QHRheWxvci5kLmJlZWJlQGdtYWlsLmNvbSBDb3VsZCB5b3UgcGxlYXNlIGhlbHAgdG8gc2VuZCBv bmUgZm9ybWFsIGZpeCBwYXRjaCBmb3IgdGhpcyBpc3N1ZT8NCj4gVGhhbmtzIQ0KPg0KPiBCZXN0 IFJlZ2FyZHMsDQo+IFlhbmJvIEh1YW5nDQo+DQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0t DQo+IEZyb206IGRldmVsQGVkazIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4gT24g QmVoYWxmIE9mIFRheWxvciANCj4gQmVlYmUNCj4gU2VudDogVHVlc2RheSwgTm92ZW1iZXIgMjgs IDIwMjMgMjoxOCBBTQ0KPiBUbzogZGV2ZWxAZWRrMi5ncm91cHMuaW8NCj4gQ2M6IFdhbmcsIEpp YW4gSiA8amlhbi5qLndhbmdAaW50ZWwuY29tPjsgR2FvLCBMaW1pbmcgDQo+IDxnYW9saW1pbmdA Ynlvc29mdC5jb20uY24+OyBCaSwgRGFuZGFuIDxkYW5kYW4uYmlAaW50ZWwuY29tPg0KPiBTdWJq ZWN0OiBbZWRrMi1kZXZlbF0gW1BBVENIIHY1IDEwLzE2XSBNZGVNb2R1bGVQa2c6IEZpeCBNQVQg DQo+IFNwbGl0UmVjb3JkKCkgTG9naWMNCj4NCj4gU3BsaXRSZWNvcmQoKSBkb2VzIG5vdCBoYW5k bGUgdGhlIGNhc2Ugd2hlcmUgYSBtZW1vcnkgZGVzY3JpcHRvciBkZXNjcmliZXMgYW4gaW1hZ2Ug cmVnaW9uIHBsdXMgZXh0cmEgcGFnZXMgYmVmb3JlIG9yIGFmdGVyIHRoZSBpbWFnZSByZWdpb24u IFRoaXMgcGF0Y2ggZml4ZXMgdGhpcyBjYXNlIGJ5IGNhcnZpbmcgb2ZmIHRoZSB1bnJlbGF0ZWQg cmVnaW9ucyBpbnRvIHRoZWlyIG93biBkZXNjcmlwdG9ycy4NCj4NCj4gQ2M6IEppYW4gSiBXYW5n IDxqaWFuLmoud2FuZ0BpbnRlbC5jb20+DQo+IENjOiBMaW1pbmcgR2FvIDxnYW9saW1pbmdAYnlv c29mdC5jb20uY24+DQo+IENjOiBEYW5kYW4gQmkgPGRhbmRhbi5iaUBpbnRlbC5jb20+DQo+IFNp Z25lZC1vZmYtYnk6IFRheWxvciBCZWViZSA8dGF5bG9yLmQuYmVlYmVAZ21haWwuY29tPg0KPiBS ZXZpZXdlZC1ieTogTGltaW5nIEdhbyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPg0KPiAtLS0N Cj4gICBNZGVNb2R1bGVQa2cvTGlicmFyeS9JbWFnZVByb3BlcnRpZXNSZWNvcmRMaWIvSW1hZ2VQ cm9wZXJ0aWVzUmVjb3JkTGliLmMgfCA1NiArKysrKysrKysrLS0tLS0tLS0tLQ0KPiAgIDEgZmls ZSBjaGFuZ2VkLCAyNyBpbnNlcnRpb25zKCspLCAyOSBkZWxldGlvbnMoLSkNCj4NCj4gZGlmZiAt LWdpdCANCj4gYS9NZGVNb2R1bGVQa2cvTGlicmFyeS9JbWFnZVByb3BlcnRpZXNSZWNvcmRMaWIv SW1hZ2VQcm9wZXJ0aWVzUmVjb3JkTA0KPiBpYi5jIA0KPiBiL01kZU1vZHVsZVBrZy9MaWJyYXJ5 L0ltYWdlUHJvcGVydGllc1JlY29yZExpYi9JbWFnZVByb3BlcnRpZXNSZWNvcmRMDQo+IGliLmMg aW5kZXggN2MwZWNkMDdjMWJiLi45ZDQwODIyODBiZjUgMTAwNjQ0DQo+IC0tLSANCj4gYS9NZGVN b2R1bGVQa2cvTGlicmFyeS9JbWFnZVByb3BlcnRpZXNSZWNvcmRMaWIvSW1hZ2VQcm9wZXJ0aWVz UmVjb3JkTA0KPiBpYi5jDQo+ICsrKyBiL01kZU1vZHVsZVBrZy9MaWJyYXJ5L0ltYWdlUHJvcGVy dGllc1JlY29yZExpYi9JbWFnZVByb3BlcnRpZXNSZWMNCj4gKysrIG9yDQo+ICsrKyBkTGliLmMN Cj4gQEAgLTMyMyw3ICszMjMsNiBAQCBTcGxpdFJlY29yZCAoDQo+ICAgICBVSU5UNjQgICAgICAg ICAgICAgICAgICAgUGh5c2ljYWxFbmQ7DQo+ICAgICBVSU5UTiAgICAgICAgICAgICAgICAgICAg TmV3UmVjb3JkQ291bnQ7DQo+ICAgICBVSU5UTiAgICAgICAgICAgICAgICAgICAgVG90YWxOZXdS ZWNvcmRDb3VudDsNCj4gLSAgQk9PTEVBTiAgICAgICAgICAgICAgICAgIElzTGFzdFJlY29yZERh dGE7DQo+ICAgDQo+ICAgICBpZiAoTWF4U3BsaXRSZWNvcmRDb3VudCA9PSAwKSB7DQo+ICAgICAg IENvcHlNZW0gKE5ld1JlY29yZCwgT2xkUmVjb3JkLCBEZXNjcmlwdG9yU2l6ZSk7IEBAIC0zNDQs MzUgKzM0MywxNiBAQCBTcGxpdFJlY29yZCAoDQo+ICAgICAgIE5ld0ltYWdlUmVjb3JkID0gR2V0 SW1hZ2VSZWNvcmRCeUFkZHJlc3MgKFBoeXNpY2FsU3RhcnQsIFBoeXNpY2FsRW5kIC0gUGh5c2lj YWxTdGFydCwgSW1hZ2VSZWNvcmRMaXN0KTsNCj4gICAgICAgaWYgKE5ld0ltYWdlUmVjb3JkID09 IE5VTEwpIHsNCj4gICAgICAgICAvLw0KPiAtICAgICAgLy8gTm8gbW9yZSBpbWFnZSBjb3ZlcmVk IGJ5IHRoaXMgcmFuZ2UsIHN0b3ANCj4gKyAgICAgIC8vIE5vIG1vcmUgaW1hZ2VzIGNvdmVyIHRo aXMgcmFuZ2UsIGNoZWNrIGlmIHdlJ3ZlIHJlYWNoZWQgdGhlIGVuZCBvZiB0aGUgb2xkIGRlc2Ny aXB0b3IuIElmIG5vdCwNCj4gKyAgICAgIC8vIGFkZCB0aGUgcmVtYWluaW5nIHJhbmdlIHRvIHRo ZSBuZXcgZGVzY3JpcHRvciBsaXN0Lg0KPiAgICAgICAgIC8vDQo+IC0gICAgICBpZiAoKFBoeXNp Y2FsRW5kID4gUGh5c2ljYWxTdGFydCkgJiYgKEltYWdlUmVjb3JkICE9IE5VTEwpKSB7DQo+IC0g ICAgICAgIC8vDQo+IC0gICAgICAgIC8vIElmIHRoaXMgaXMgc3RpbGwgYWRkcmVzcyBpbiB0aGlz IHJlY29yZCwgbmVlZCByZWNvcmQuDQo+IC0gICAgICAgIC8vDQo+IC0gICAgICAgIE5ld1JlY29y ZCAgICAgICAgPSBQUkVWSU9VU19NRU1PUllfREVTQ1JJUFRPUiAoTmV3UmVjb3JkLCBEZXNjcmlw dG9yU2l6ZSk7DQo+IC0gICAgICAgIElzTGFzdFJlY29yZERhdGEgPSBGQUxTRTsNCj4gLSAgICAg ICAgaWYgKChOZXdSZWNvcmQtPkF0dHJpYnV0ZSAmIEVGSV9NRU1PUllfWFApICE9IDApIHsNCj4g LSAgICAgICAgICBJc0xhc3RSZWNvcmREYXRhID0gVFJVRTsNCj4gLSAgICAgICAgfQ0KPiAtDQo+ IC0gICAgICAgIGlmIChJc0xhc3RSZWNvcmREYXRhKSB7DQo+IC0gICAgICAgICAgLy8NCj4gLSAg ICAgICAgICAvLyBMYXN0IHJlY29yZCBpcyBEQVRBLCBqdXN0IG1lcmdlIGl0Lg0KPiAtICAgICAg ICAgIC8vDQo+IC0gICAgICAgICAgTmV3UmVjb3JkLT5OdW1iZXJPZlBhZ2VzID0gRWZpU2l6ZVRv UGFnZXMgKFBoeXNpY2FsRW5kIC0gTmV3UmVjb3JkLT5QaHlzaWNhbFN0YXJ0KTsNCj4gLSAgICAg ICAgfSBlbHNlIHsNCj4gLSAgICAgICAgICAvLw0KPiAtICAgICAgICAgIC8vIExhc3QgcmVjb3Jk IGlzIENPREUsIGNyZWF0ZSBhIG5ldyBEQVRBIGVudHJ5Lg0KPiAtICAgICAgICAgIC8vDQo+IC0g ICAgICAgICAgTmV3UmVjb3JkICAgICAgICAgICAgICAgID0gTkVYVF9NRU1PUllfREVTQ1JJUFRP UiAoTmV3UmVjb3JkLCBEZXNjcmlwdG9yU2l6ZSk7DQo+IC0gICAgICAgICAgTmV3UmVjb3JkLT5U eXBlICAgICAgICAgID0gVGVtcFJlY29yZC5UeXBlOw0KPiAtICAgICAgICAgIE5ld1JlY29yZC0+ UGh5c2ljYWxTdGFydCA9IFRlbXBSZWNvcmQuUGh5c2ljYWxTdGFydDsNCj4gLSAgICAgICAgICBO ZXdSZWNvcmQtPlZpcnR1YWxTdGFydCAgPSAwOw0KPiAtICAgICAgICAgIE5ld1JlY29yZC0+TnVt YmVyT2ZQYWdlcyA9IFRlbXBSZWNvcmQuTnVtYmVyT2ZQYWdlczsNCj4gLSAgICAgICAgICBOZXdS ZWNvcmQtPkF0dHJpYnV0ZSAgICAgPSBUZW1wUmVjb3JkLkF0dHJpYnV0ZSB8IEVGSV9NRU1PUllf WFA7DQo+IC0gICAgICAgICAgVG90YWxOZXdSZWNvcmRDb3VudCsrOw0KPiAtICAgICAgICB9DQo+ ICsgICAgICBpZiAoUGh5c2ljYWxFbmQgPiBQaHlzaWNhbFN0YXJ0KSB7DQo+ICsgICAgICAgIE5l d1JlY29yZC0+VHlwZSAgICAgICAgICA9IFRlbXBSZWNvcmQuVHlwZTsNCj4gKyAgICAgICAgTmV3 UmVjb3JkLT5QaHlzaWNhbFN0YXJ0ID0gUGh5c2ljYWxTdGFydDsNCj4gKyAgICAgICAgTmV3UmVj b3JkLT5WaXJ0dWFsU3RhcnQgID0gMDsNCj4gKyAgICAgICAgTmV3UmVjb3JkLT5OdW1iZXJPZlBh Z2VzID0gRWZpU2l6ZVRvUGFnZXMgKFBoeXNpY2FsRW5kIC0gUGh5c2ljYWxTdGFydCk7DQo+ICsg ICAgICAgIE5ld1JlY29yZC0+QXR0cmlidXRlICAgICA9IFRlbXBSZWNvcmQuQXR0cmlidXRlOw0K PiArICAgICAgICBUb3RhbE5ld1JlY29yZENvdW50Kys7DQo+ICAgICAgICAgfQ0KPiAgIA0KPiAg ICAgICAgIGJyZWFrOw0KPiBAQCAtMzgwLDYgKzM2MCwyNCBAQCBTcGxpdFJlY29yZCAoDQo+ICAg DQo+ICAgICAgIEltYWdlUmVjb3JkID0gTmV3SW1hZ2VSZWNvcmQ7DQo+ICAgDQo+ICsgICAgLy8N Cj4gKyAgICAvLyBVcGRhdGUgUGh5c2ljYWxTdGFydCB0byBleGNsdWRlIHRoZSBwb3J0aW9uIGJl Zm9yZSB0aGUgaW1hZ2UgYnVmZmVyDQo+ICsgICAgLy8NCj4gKyAgICBpZiAoVGVtcFJlY29yZC5Q aHlzaWNhbFN0YXJ0IDwgSW1hZ2VSZWNvcmQtPkltYWdlQmFzZSkgew0KPiArICAgICAgTmV3UmVj b3JkLT5UeXBlICAgICAgICAgID0gVGVtcFJlY29yZC5UeXBlOw0KPiArICAgICAgTmV3UmVjb3Jk LT5QaHlzaWNhbFN0YXJ0ID0gVGVtcFJlY29yZC5QaHlzaWNhbFN0YXJ0Ow0KPiArICAgICAgTmV3 UmVjb3JkLT5WaXJ0dWFsU3RhcnQgID0gMDsNCj4gKyAgICAgIE5ld1JlY29yZC0+TnVtYmVyT2ZQ YWdlcyA9IEVmaVNpemVUb1BhZ2VzIChJbWFnZVJlY29yZC0+SW1hZ2VCYXNlIC0gVGVtcFJlY29y ZC5QaHlzaWNhbFN0YXJ0KTsNCj4gKyAgICAgIE5ld1JlY29yZC0+QXR0cmlidXRlICAgICA9IFRl bXBSZWNvcmQuQXR0cmlidXRlOw0KPiArICAgICAgVG90YWxOZXdSZWNvcmRDb3VudCsrOw0KPiAr DQo+ICsgICAgICBQaHlzaWNhbFN0YXJ0ICAgICAgICAgICAgPSBJbWFnZVJlY29yZC0+SW1hZ2VC YXNlOw0KPiArICAgICAgVGVtcFJlY29yZC5QaHlzaWNhbFN0YXJ0ID0gUGh5c2ljYWxTdGFydDsN Cj4gKyAgICAgIFRlbXBSZWNvcmQuTnVtYmVyT2ZQYWdlcyA9IEVmaVNpemVUb1BhZ2VzIChQaHlz aWNhbEVuZCAtIA0KPiArIFBoeXNpY2FsU3RhcnQpOw0KPiArDQo+ICsgICAgICBOZXdSZWNvcmQg PSAoRUZJX01FTU9SWV9ERVNDUklQVE9SICopKChVSU5UOCAqKU5ld1JlY29yZCArIERlc2NyaXB0 b3JTaXplKTsNCj4gKyAgICB9DQo+ICsNCj4gICAgICAgLy8NCj4gICAgICAgLy8gU2V0IG5ldyBy ZWNvcmQNCj4gICAgICAgLy8NCj4gLS0NCj4gMi40Mi4wLndpbmRvd3MuMg0KPg0KPg0KPg0KPiAN Cj4NCj4NCg0KCi09LT0tPS09LT0tPS09LT0tPS09LT0tCkdyb3Vwcy5pbyBMaW5rczogWW91IHJl Y2VpdmUgYWxsIG1lc3NhZ2VzIHNlbnQgdG8gdGhpcyBncm91cC4KVmlldy9SZXBseSBPbmxpbmUg KCMxMTc3MjEpOiBodHRwczovL2VkazIuZ3JvdXBzLmlvL2cvZGV2ZWwvbWVzc2FnZS8xMTc3MjEK TXV0ZSBUaGlzIFRvcGljOiBodHRwczovL2dyb3Vwcy5pby9tdC8xMDU0Nzc1NjQvNzY4NjE3NgpH cm91cCBPd25lcjogZGV2ZWwrb3duZXJAZWRrMi5ncm91cHMuaW8KVW5zdWJzY3JpYmU6IGh0dHBz Oi8vZWRrMi5ncm91cHMuaW8vZy9kZXZlbC91bnN1YiBbcmViZWNjYUBvcGVuZncuaW9dCi09LT0t PS09LT0tPS09LT0tPS09LT0tCgoNCg==