From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by mx.groups.io with SMTP id smtpd.web09.27477.1611524446126421209 for ; Sun, 24 Jan 2021 13:40:46 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=lgB8kclq; spf=pass (domain: intel.com, ip: 192.55.52.136, mailfrom: guo.dong@intel.com) IronPort-SDR: ZSbozKHb2OI5qF8k3BA3u6l7buFgUsYVfkRXDAZtBUyw3X334xE3WCtn8SxW+42W9AzbXSfKzb ChL6XdxjG0Pw== X-IronPort-AV: E=McAfee;i="6000,8403,9874"; a="158815322" X-IronPort-AV: E=Sophos;i="5.79,372,1602572400"; d="scan'208";a="158815322" Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 24 Jan 2021 13:40:43 -0800 IronPort-SDR: w+eyfh0Q94aXcuZB2K6dw7tN9BL2xuSUphhokl4DbQhZvmgPXfOtCojv/yzUEOV+LzmlqViwXM Nwxk7Cpyu7Og== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.79,372,1602572400"; d="scan'208";a="401891546" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by fmsmga004.fm.intel.com with ESMTP; 24 Jan 2021 13:40:43 -0800 Received: from fmsmsx609.amr.corp.intel.com (10.18.126.89) 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.2106.2; Sun, 24 Jan 2021 13:40:43 -0800 Received: from fmsmsx607.amr.corp.intel.com (10.18.126.87) by fmsmsx609.amr.corp.intel.com (10.18.126.89) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Sun, 24 Jan 2021 13:40:43 -0800 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx607.amr.corp.intel.com (10.18.126.87) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5 via Frontend Transport; Sun, 24 Jan 2021 13:40:43 -0800 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (104.47.55.109) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.1713.5; Sun, 24 Jan 2021 13:40:42 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Z0gZF9+KxAklJgC0MA+Wsx/2rx344n+4bnqZlS272vsx/S2+I2wB/GgNMkFVBPN7F12XOFYcxXuz9f2F81aPGHrISL5QIdC4yfY/n3N8I3luZ55JzI31q+LblmYymWNPFX88ZPMDZ/lxQI25sQzQyB7+Q9TKvXnb+hw2UDK5VBSqX75DqHAps+zqo9a0WuceOks03TqI7XfUpFiBcLVoWcOhd1x6m/MP/JBW4fxMwgwZxvQ8VEphlwNSEZKyDcimtcGaM9LVFhLC99YGtgZwykofRbFudoU5JjyoY/il4nzNdU/9XMdcKkTcA/JblA/urJxLdK1ZIZN4SKsbkanIYA== 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-SenderADCheck; bh=Tp6xqeESc9VRiERJ3ELj3L14Pw6vyBo1a6wouAriMmc=; b=n4uHug93J4/1sOQAi+Pd/0XobBWH7oxfVUkwjaO7xAKvSdwcINQp1CHlgaKt379SYyGxpt/Y6MrtNcJhnM8Co+yfz7whF0rvDYT9L9yNIgoze4/TlwQaqcJMPePzxGBH90QC/QAgKzEBDg/ZMd9zDcevudlqv4CvibKtKgvNWBEksxINU7g+eM/pn4hb+mJjbUGm/3/ckvzyH/iNm5UiSn+NWz8KsFvaRuJkAJyxbqJXgVVRfCmSmNFZm1TiR20WS+3w1tCOUn5eBWDq3PW0dB66SGvCBVEpw8XDnpGC9JBcgw1/my0vsIc4CVUVWEA7fzg+rHzbEHg/CiLBvCyOSw== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Tp6xqeESc9VRiERJ3ELj3L14Pw6vyBo1a6wouAriMmc=; b=lgB8kclqLpr6cjFJrOIjM4gKEPoBcP3wXL8clRaSnSesWZt1p5/SjCDpztFAMLBfRH9y0jeSLsjf0l9PAW+0m9olKE9CR79jPIk4CGyJj19EwFrbN+KD1rEr8UXFrEtdnjFeKZw7F1j+vilEGt7pafCIBGtq6uEXUNrN507GnRo= Received: from BYAPR11MB3622.namprd11.prod.outlook.com (2603:10b6:a03:fe::30) by BYAPR11MB3398.namprd11.prod.outlook.com (2603:10b6:a03:19::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3784.16; Sun, 24 Jan 2021 21:40:41 +0000 Received: from BYAPR11MB3622.namprd11.prod.outlook.com ([fe80::cc51:e99f:f09d:1268]) by BYAPR11MB3622.namprd11.prod.outlook.com ([fe80::cc51:e99f:f09d:1268%7]) with mapi id 15.20.3784.017; Sun, 24 Jan 2021 21:40:41 +0000 From: "Guo Dong" To: "Ma, Maurice" , Patrick Rudolph CC: "devel@edk2.groups.io" , "You, Benjamin" Subject: Re: [PATCH] UefiPayloadPkg/BlSupportDxe: Use EfiSmbiosProtocol to install tables Thread-Topic: [PATCH] UefiPayloadPkg/BlSupportDxe: Use EfiSmbiosProtocol to install tables Thread-Index: AQHW75K6llcvkoilIkegGfnma0beB6oxutgAgAB7YICABRgFkA== Date: Sun, 24 Jan 2021 21:40:41 +0000 Message-ID: References: <20210120160157.3343911-1-patrick.rudolph@9elements.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.5.1.3 authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [68.2.51.172] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 410bc9c8-6d75-43c3-4af4-08d8c0b0b28a x-ms-traffictypediagnostic: BYAPR11MB3398: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: bm2i2jSLOI9LTz5uC3ApRAsMWZn2IWP1ea2MX2xoaWbkosqNoc2h9sTLnWIk1UybRxUTZ7/i9wN0nyRv6AtRQIfDlG/mWjJ5yVL1LMr9HMziuFyTL36qB+7eZHjhMUegw7dOdUuh9ywn/wD4fp76GdVNqwHYker9j95zvQxrmRRO9/Drpe3EBf3H9SVlgVXhW4xV12OSkEPeEDii/V8ZDhUrI6A7ENjnjc0etjmGBFuav+TjrqeKoyM9DxkWWuHsLxrcUq6BJVkU3P9MH4GP8ui9A8BZEwuHddAJzVHjpLAYrW3WEioN6JyKgkuQT9dfZwUyPsaJ9pJymFJzt+3g5cEps6XSOX6DfvHmS0TgavEQCKZzs+SOZXmC1VNsqpTzpMyUFY2Iby9EQ3W7gkkO7A== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR11MB3622.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(6029001)(4636009)(396003)(39860400002)(346002)(376002)(136003)(366004)(86362001)(110136005)(26005)(8676002)(186003)(54906003)(316002)(478600001)(2906002)(66476007)(66946007)(66446008)(66556008)(76116006)(52536014)(5660300002)(71200400001)(7696005)(33656002)(8936002)(64756008)(107886003)(9686003)(55016002)(4326008)(83380400001)(6506007)(53546011);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: =?utf-8?B?WnhiQVZwVlNldlZ1WlVvOUplVkEyZStKS1BKY011NXEzWGVJV2NyVG5NTlRQ?= =?utf-8?B?WHF2blcvQ0ZUUzhwb3VsUXgxYzZ2RFFzNGJSeElqSUVKbXM1ZHJnNjNhNnhU?= =?utf-8?B?cExqbWp3VEhSZGNnNCt6RHBQOXo5c05udGh2U2ZTUHdOemxINUx0WXA4OG5F?= =?utf-8?B?THl0cWttWXdhVitlTnh0bzZ1WUNlalhSSksxWVFMQWp4elBDTlZrcUxqb2lx?= =?utf-8?B?c3JlL2lWUVN4b0J3Z1ZUNHNEK0h3VU9FN1A5V2poRmRZclF0WWhQeFltcWlH?= =?utf-8?B?Z3A0a1l3YU5OVHJWNGIvN3NZUTVQeWd2R2QyYlVoR0JQakx2aFcyQllvUndV?= =?utf-8?B?UnlYdzRCSWlSM0ptTzMzMDV6MkZKOUFVUmFUdFJObjZUVlYrZmluOVJKa1lh?= =?utf-8?B?c1Azb0tMcTZETHVRR1RmK0JTWWg5elNYUUJLRHZYMkh4V09RQjFtNUJuYnhi?= =?utf-8?B?eUk3QXlRZWJMeEp1SXMvT3d5Tlh5eHRESVdrSVNhdEJvTUtoN1A1OTJnbmV2?= =?utf-8?B?YVBGZ0Zqbjh5bVJhYWVyajdEeTVGaFB6RXl5WWEyWUVvSjY0dW52cGdTR3VO?= =?utf-8?B?K0FDWW1Cc2JQdElNK3RyMm9mUXJkRkd5aWs2NUZrMTNVNW55cUJ4Mm4vRklW?= =?utf-8?B?bVhieHRQR2hudkJGYjE1VmphM1JMaGVlWGQrbzZac1JaVGNoN3AwVnRvNnZK?= =?utf-8?B?M2llZDNkNGh6dXNQcjRiT1BmaExMbXpOc1pDVnlEcUdYeFZVelB1OG1wSGNL?= =?utf-8?B?Y0taVjBhanpTV3dMV0c1Q3dpcVhNQ0gzMEU2T0JUNnNTaU1FUTN1WjhaQitk?= =?utf-8?B?NDY5bzNRZXFEMEVyby9pOEZ4YmJBMGdFa0cyK0F4NGZWQS9ObG4zUzRUYnR0?= =?utf-8?B?V2lCU1RGKzVEeUR5T201bFIvZGw4SHoxNVo4V2tuVmdlaHBpSWx5MUpsTzNy?= =?utf-8?B?TGdLUGJMakhzMFBEYXlxbmI2RWNBUWMrelRmOGtNanE0c3NUc2R4cVFnMWpt?= =?utf-8?B?WGxrQTNMZ3J2WjhCSDlKeDBTQ216WDh1V3cydjNUM2w0ZmhzV0lkd2R3TUhK?= =?utf-8?B?YjU0Z2lIZmQ0S09TeituKzFmaUl6UnVkN09ZU2lQQ3crZ1BKUzRZVXNqd1pm?= =?utf-8?B?Z0g2NU5CbGhxdHVFZ1ZnaWsvQ2Mrb3h3M1ppekdWcGxTZThxL2RIcHpsZnNu?= =?utf-8?B?NnF6dEJYZXBkWUtLY3ZJem9XRFR5VVoyNkcrZjc4dk14UEd1YTlxNEI3ajhi?= =?utf-8?B?dS81cUdGZkRmT01VTXJyRmw5WVo1T01FZGNOZ3dOcXhBQndpcE81dFVPQ29q?= =?utf-8?Q?QyqCU3QJs2Mb0=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BYAPR11MB3622.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 410bc9c8-6d75-43c3-4af4-08d8c0b0b28a X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Jan 2021 21:40:41.3840 (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: DvHOAFLASVp473O1kOxdILUnl02BjVSNowLhKlHJw6rhCpUjd2GozQyVI69R3qlDIpi1TFWha97hYrWisLrgfA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR11MB3398 Return-Path: guo.dong@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 DQpIb3cgYWJvdXQgdXBkYXRlIFNtYmlvc0R4ZSB0byBkZXRlY3QgaWYgU01CSU9TIHRhYmxlIGlz IGluc3RhbGxlZCBpbiBDb25maWd1cmF0aW9uIFRhYmxlIGluIGl0cyBlbnRyeSBwb2ludD8NCklm IGl0IGlzIG5vdCBpbnN0YWxsZWQsIG5vIGNoYW5nZSB0byBjdXJyZW50IGJlaGF2aW9yIChpbnN0 YWxsIFNtYmlvc1Byb3RvY29sIG9uIGFuIGVtcHR5IFNNQklPUyB0YWJsZSkuDQpJZiBpdCBpcyBp bnN0YWxsZWQsIGluc3RhbGwgU21iaW9zUHJvdG9jb2wgd2l0aCB0aGUgU01CSU9TIHRhYmxlIGZy b20gQ29uZmlndXJhdGlvbiBUYWJsZS4NCg0KVGhhbmtzLA0KR3VvDQoNCj4gLS0tLS1PcmlnaW5h bCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogTWEsIE1hdXJpY2UgPG1hdXJpY2UubWFAaW50ZWwuY29t Pg0KPiBTZW50OiBUaHVyc2RheSwgSmFudWFyeSAyMSwgMjAyMSA4OjMzIEFNDQo+IFRvOiBQYXRy aWNrIFJ1ZG9scGggPHBhdHJpY2sucnVkb2xwaEA5ZWxlbWVudHMuY29tPg0KPiBDYzogZGV2ZWxA ZWRrMi5ncm91cHMuaW87IERvbmcsIEd1byA8Z3VvLmRvbmdAaW50ZWwuY29tPjsgWW91LA0KPiBC ZW5qYW1pbiA8YmVuamFtaW4ueW91QGludGVsLmNvbT4NCj4gU3ViamVjdDogUkU6IFtQQVRDSF0g VWVmaVBheWxvYWRQa2cvQmxTdXBwb3J0RHhlOiBVc2UgRWZpU21iaW9zUHJvdG9jb2wNCj4gdG8g aW5zdGFsbCB0YWJsZXMNCj4gDQo+IEhpLCBQYXRyaWNrLA0KPiANCj4gU2luY2UgQmxTdXBwb3J0 RHhlIGRvZXMgc29tZSB2ZXJ5IGJhc2ljIGluaXRpYWxpemF0aW9uIGZvciBVRUZJIHBheWxvYWQg KEVYOg0KPiBJbml0aWFsaXplIFBjZFBjaUV4cHJlc3NCYXNlQWRkcmVzcyBkeW5hbWljIFBDRCks IGFuZCBpdCBuZWVkcyB0byBiZSBkb25lDQo+IGluIHZlcnkgZWFybHkgcGhhc2UuICBTbyBpdCBp cyBkZXNpcmVkIG5vdCB0byBwdXNoIHRoZSBkaXNwYXRjaGluZyBvcmRlciBieQ0KPiBhZGRpbmcg bW9yZSBkZXBlbmRlbmNpZXMuICBPdGhlcndpc2UsIGRyaXZlcnMgZGlzcGF0Y2hlZCBiZWZvcmUg aXQgbWlnaHQNCj4gZ2V0IGluY29ycmVjdCBQQ0QgdmFsdWVzLg0KPiANCj4gWWVzLCBJIGtub3cg UmVnaXN0ZXJQcm90b2NvbE5vdGlmeSgpIGlzIGRpc2NvdXJhZ2VkIGZvciBVRUZJIGRyaXZlci4g ICBUaGlzDQo+IGRyaXZlciBpcyBub3QgVUVGSSBkcml2ZXIsIHNvIHdlIGNhbm5vdCB1c2UgVUVG SSBkcml2ZXIgbW9kZWwgdG8gYWRkcmVzcyBpdA0KPiBoZXJlLiAgIERvIHdlIGhhdmUgYW55IGFs dGVybmF0aXZlIHdheSB3aXRob3V0IGFkZGluZyBuZXcgZGVwZW5kZW5jaWVzIGluDQo+IElORiA/ DQo+IA0KPiBUaGFua3MNCj4gTWF1cmljZQ0KPiANCj4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2Ut LS0tLQ0KPiA+IEZyb206IFBhdHJpY2sgUnVkb2xwaCA8cGF0cmljay5ydWRvbHBoQDllbGVtZW50 cy5jb20+DQo+ID4gU2VudDogVGh1cnNkYXksIEphbnVhcnkgMjEsIDIwMjEgMDoxMQ0KPiA+IFRv OiBNYSwgTWF1cmljZSA8bWF1cmljZS5tYUBpbnRlbC5jb20+DQo+ID4gQ2M6IGRldmVsQGVkazIu Z3JvdXBzLmlvOyBEb25nLCBHdW8gPGd1by5kb25nQGludGVsLmNvbT47IFlvdSwNCj4gQmVuamFt aW4NCj4gPiA8YmVuamFtaW4ueW91QGludGVsLmNvbT4NCj4gPiBTdWJqZWN0OiBSZTogW1BBVENI XSBVZWZpUGF5bG9hZFBrZy9CbFN1cHBvcnREeGU6IFVzZQ0KPiBFZmlTbWJpb3NQcm90b2NvbCB0 bw0KPiA+IGluc3RhbGwgdGFibGVzDQo+ID4NCj4gPiBIaSBNYXVyaWNlLA0KPiA+IEknbGwgYWRh cHQgdGhlIGZ1bmN0aW9uIG5hbWVzIHRvIG1hdGNoIEVESzIgbmFtaW5nIGNvbnZlbnRpb25zLg0K PiA+DQo+ID4gVGhlIFNtYmlvc0R4ZSBpcyBhbHJlYWR5IHBhcnQgb2YgVWVmaVBheWxvYWRQa2cs IHNvIGl0J3Mgbm90IG9wdGlvbmFsIChyaWdodA0KPiBub3cpLg0KPiA+IEkgZG9uJ3Qgc2VlIGhv dyByZWdpc3RlcmluZyBnRWZpU21iaW9zUHJvdG9jb2xHdWlkIGNvdWxkIGZhaWwuDQo+ID4gSWYg eW91IHRoaW5rIERlcGV4IG11c3QgYmUgdHJ1ZSwgdGhlcmUgc2hvdWxkIGJlDQo+ID4gYSkgYSBj b21tZW50IHN0YXRpbmcgdGhlIHJlYXNvbnMgd2h5IERlcGV4IG11c3Qgbm90IGJlIGNoYW5nZWQN Cj4gPiBiKSBJJ2xsIGhhdmUgdG8gbW92ZSB0aGUgU01CSU9TIGNvZGUgb3V0IG9mIEJsU3VwcG9y dER4ZSBpbnRvDQo+ID4gQmxTdXBwb3J0U21iaW9zRHhlIGFuZCBhZGQgdGhlIERlcGV4IHNlY3Rp b24gdGhlcmUuDQo+ID4gICAgIEEgZmFpbGVkIGRpc3BhdGNoIG9mIEJsU3VwcG9ydFNtYmlvc0R4 ZSB3b3VsZCB0aGVuIGJlIG5vbiBjcml0aWNhbC4NCj4gPg0KPiA+IERvIHlvdSB0aGluayB0aGlz IHdvdWxkIGJlIGEgYmV0dGVyIHNvbHV0aW9uPw0KPiA+DQo+ID4gSSBkb24ndCB3YW50IHRvIHVz ZSBSZWdpc3RlclByb3RvY29sTm90aWZ5KCkgYXMgaXQncyBkaXNjb3VyYWdlZCwgaXNuJ3QgaXQ/ DQo+ID4NCj4gPiBLaW5kIFJlZ2FyZHMsDQo+ID4gUGF0cmljayBSdWRvbHBoDQo+ID4NCj4gPiBP biBUaHUsIEphbiAyMSwgMjAyMSBhdCAyOjE0IEFNIE1hLCBNYXVyaWNlIDxtYXVyaWNlLm1hQGlu dGVsLmNvbT4NCj4gd3JvdGU6DQo+ID4gPg0KPiA+ID4gSGksIFBhdHJpY2sNCj4gPiA+DQo+ID4g PiBJbiB0aGlzIHBhdGNoIEkgbm90aWNlZCB0aGF0IHdlIGNoYW5nZWQgdGhlIEJsU3VwcG9ydER4 ZSBkZXBlbmRlbmN5DQo+IGZyb20NCj4gPiBUcnVlIHRvIGdFZmlTbWJpb3NQcm90b2NvbEd1aWQu DQo+ID4gPiBTaW5jZSBCbFN1cHBvcnREeGUgaXMgY29uc2lkZXJlZCBhcyBjcml0aWNhbCBmb3Ig VUVGSSBwYXlsb2FkLCAgYW5kIG9uIHRoZQ0KPiBvdGhlcg0KPiA+IHNpZGUgU01CSU9TIGRyaXZl ciBjb3VsZCBiZSBvcHRpb25hbCBpbiBzb21lIGNhc2UsICBkbyB5b3UgdGhpbmsgaXQgaXMgYmV0 dGVyDQo+IHRvDQo+ID4gaGFuZGxlIGl0IHRocm91Z2ggUmVnaXN0ZXJQcm90b2NvbE5vdGlmeSgp ID8gICBJbiB0aGlzIHdheSwgIGlmDQo+ID4gZ0VmaVNtYmlvc1Byb3RvY29sR3VpZCBpcyBub3Qg aW5zdGFsbGVkIGZvciBhbnkgcmVhc29uLCAgQmxTdXBwb3J0RHhlIGNhbg0KPiBzdGlsbCBiZQ0K PiA+IGRpc3BhdGNoZWQgYW5kIHRoZSBib290IGZsb3cgY2FuIGNvbnRpbnVlLg0KPiA+ID4NCj4g PiA+IFNvbWUgb3RoZXIgY29tbWVudHM6DQo+ID4gPiAtICBQbGVhc2UgYWRkIGZ1bmN0aW9uIGFu ZCBwYXJhbWV0ZXIgZGVzY3JpcHRpb24gZm9yDQo+ID4gQmxEeGVJbnN0YWxsU01CSU9TdGFibGVz KCkuDQo+ID4gPiAtICBUbyBmb2xsb3cgdGhlIG5hbWluZyBjb252ZW50aW9uIGluIEVESzIsICAg bWF5YmUgIHVzZQ0KPiA+IEJsRHhlSW5zdGFsbFNtYmlvc1RhYmxlcyBpbnN0ZWFkIG9mIEJsRHhl SW5zdGFsbFNNQklPU3RhYmxlcygpLg0KPiA+ID4NCj4gPiA+IFRoYW5rcw0KPiA+ID4gTWF1cmlj ZQ0KPiA+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4gPiBGcm9tOiBQYXRy aWNrIFJ1ZG9scGggPHBhdHJpY2sucnVkb2xwaEA5ZWxlbWVudHMuY29tPg0KPiA+ID4gPiBTZW50 OiBXZWRuZXNkYXksIEphbnVhcnkgMjAsIDIwMjEgODowMg0KPiA+ID4gPiBUbzogZGV2ZWxAZWRr Mi5ncm91cHMuaW8NCj4gPiA+ID4gQ2M6IE1hLCBNYXVyaWNlIDxtYXVyaWNlLm1hQGludGVsLmNv bT47IERvbmcsIEd1bw0KPiA+ID4gPiA8Z3VvLmRvbmdAaW50ZWwuY29tPjsgWW91LCBCZW5qYW1p biA8YmVuamFtaW4ueW91QGludGVsLmNvbT4NCj4gPiA+ID4gU3ViamVjdDogW1BBVENIXSBVZWZp UGF5bG9hZFBrZy9CbFN1cHBvcnREeGU6IFVzZSBFZmlTbWJpb3NQcm90b2NvbA0KPiA+ID4gPiB0 byBpbnN0YWxsIHRhYmxlcw0KPiA+ID4gPg0KPiA+ID4gPiBUaGUgZGVmYXVsdCBFZmlTbWJpb3NQ cm90b2NvbCBvcGVyYXRlcyBvbiBhbiBlbXB0eSBTTUJJT1MgdGFibGUuDQo+ID4gPiA+IEFzIHRo ZSBTTUJJT1MgdGFibGVzIGFyZSBwcm92aWRlZCBieSB0aGUgYm9vdGxvYWRlciwgaW5zdGFsbCB0 aGUNCj4gPiA+ID4gU01CSU9TIHRhYmxlcyB1c2luZyB0aGUgRWZpU21iaW9zUHJvdG9jb2wuDQo+ ID4gPiA+DQo+ID4gPiA+IFRoaXMgZml4ZXMgdGhlIHNldHRpbmdzIG1lbnUgbm90IHNob3dpbmcg YW55IGhhcmR3YXJlIGluZm9ybWF0aW9uLA0KPiA+ID4gPiBpbnN0ZWFkIG9ubHkNCj4gPiA+ID4g IjAgTUIgUkFNIiB3YXMgZGlzcGxheWVkLg0KPiA+ID4gPg0KPiA+ID4gPiBUZXN0cyBzaG93ZWQg dGhhdCB0aGUgT1MgY2FuIHN0aWxsIHNlZSB0aGUgU01CSU9TIHRhYmxlcy4NCj4gPiA+ID4NCj4g PiA+ID4gU2lnbmVkLW9mZi1ieTogUGF0cmljayBSdWRvbHBoIDxwYXRyaWNrLnJ1ZG9scGhAOWVs ZW1lbnRzLmNvbT4NCj4gPiA+ID4gLS0tDQo+ID4gPiA+ICBVZWZpUGF5bG9hZFBrZy9CbFN1cHBv cnREeGUvQmxTdXBwb3J0RHhlLmMgICB8IDExMQ0KPiA+ID4gPiArKysrKysrKysrKysrKysrKysr LQ0KPiA+ID4gPiAgVWVmaVBheWxvYWRQa2cvQmxTdXBwb3J0RHhlL0JsU3VwcG9ydER4ZS5oICAg fCAgIDMgKw0KPiA+ID4gPiAgVWVmaVBheWxvYWRQa2cvQmxTdXBwb3J0RHhlL0JsU3VwcG9ydER4 ZS5pbmYgfCAgIDUgKy0NCj4gPiA+ID4gIDMgZmlsZXMgY2hhbmdlZCwgMTE1IGluc2VydGlvbnMo KyksIDQgZGVsZXRpb25zKC0pDQo+ID4gPiA+DQo+ID4gPiA+IGRpZmYgLS1naXQgYS9VZWZpUGF5 bG9hZFBrZy9CbFN1cHBvcnREeGUvQmxTdXBwb3J0RHhlLmMNCj4gPiA+ID4gYi9VZWZpUGF5bG9h ZFBrZy9CbFN1cHBvcnREeGUvQmxTdXBwb3J0RHhlLmMNCj4gPiA+ID4gaW5kZXggYTc0NmQwNTgx ZS4uZGI0NzhjMWFiYyAxMDA2NDQNCj4gPiA+ID4gLS0tIGEvVWVmaVBheWxvYWRQa2cvQmxTdXBw b3J0RHhlL0JsU3VwcG9ydER4ZS5jDQo+ID4gPiA+ICsrKyBiL1VlZmlQYXlsb2FkUGtnL0JsU3Vw cG9ydER4ZS9CbFN1cHBvcnREeGUuYw0KPiA+ID4gPiBAQCAtNzksNiArNzksMTA3IEBAIFJlc2Vy dmVSZXNvdXJjZUluR2NkICgNCj4gPiA+ID4gICAgcmV0dXJuIFN0YXR1czsgfSArRUZJX1NUQVRV UytFRklBUEkrQmxEeGVJbnN0YWxsU01CSU9TdGFibGVzKCsgIElODQo+ID4gVUlOVDY0DQo+ID4g PiA+IFNtYmlvc1RhYmxlQmFzZSwrICBJTiBVSU5UMzIgICAgU21iaW9zVGFibGVTaXplKykreysg IEVGSV9TVEFUVVMNCj4gPiA+ID4gU3RhdHVzOysgIFNNQklPU19UQUJMRV9FTlRSWV9QT0lOVCAg ICAgICpTbWJpb3NUYWJsZTsrDQo+ID4gPiA+IFNNQklPU19UQUJMRV8zXzBfRU5UUllfUE9JTlQg ICpTbWJpb3MzMFRhYmxlOysNCj4gPiA+ID4gU01CSU9TX1NUUlVDVFVSRV9QT0lOVEVSICAgICAg U21iaW9zOysNCj4gU01CSU9TX1NUUlVDVFVSRV9QT0lOVEVSDQo+ID4gPiA+IFNtYmlvc0VuZDsr ICBDSEFSOCAgICAgICAgICAgICAgICAgICAgICAgICAqU3RyaW5nOysgIEVGSV9TTUJJT1NfSEFO RExFDQo+ID4gPiA+IFNtYmlvc0hhbmRsZTsrICBFRklfU01CSU9TX1BST1RPQ09MICAgICAgICAg ICAqU21iaW9zUHJvdG87KysgIC8vKw0KPiAvLw0KPiA+IExvY2F0ZQ0KPiA+ID4gPiBTbWJpb3Mg cHJvdG9jb2wuKyAgLy8rICBTdGF0dXMgPSBnQlMtPkxvY2F0ZVByb3RvY29sDQo+ID4gKCZnRWZp U21iaW9zUHJvdG9jb2xHdWlkLA0KPiA+ID4gPiBOVUxMLCAoVk9JRCAqKikmU21iaW9zUHJvdG8p OysgIGlmIChFRklfRVJST1IgKFN0YXR1cykpIHsrICAgIERFQlVHDQo+ID4gPiA+ICgoREVCVUdf RVJST1IsICIlYTogRmFpbGVkIHRvIGxvY2F0ZSBnRWZpU21iaW9zUHJvdG9jb2xHdWlkXG4iLCsN Cj4gPiA+ID4gX19GVU5DVElPTl9fKSk7KyAgICByZXR1cm4gU3RhdHVzOysgIH0rKyAgU21iaW9z MzBUYWJsZSA9DQo+ID4gPiA+IChTTUJJT1NfVEFCTEVfM18wX0VOVFJZX1BPSU5UICopKFVJTlRO KShTbWJpb3NUYWJsZUJhc2UpOysNCj4gPiA+ID4gU21iaW9zVGFibGUgPSAoU01CSU9TX1RBQkxF X0VOVFJZX1BPSU5UDQo+ID4gPiA+ICopKFVJTlROKShTbWJpb3NUYWJsZUJhc2UpOysrIGlmIChD b21wYXJlTWVtDQo+ID4gPiA+IChTbWJpb3MzMFRhYmxlLT5BbmNob3JTdHJpbmcsICJfU00zXyIs IDUpID09IDApIHsrIFNtYmlvcy5IZHIgPQ0KPiA+ID4gPiAoU01CSU9TX1NUUlVDVFVSRSAqKSAo VUlOVE4pIFNtYmlvczMwVGFibGUtDQo+ID4gPiA+ID5UYWJsZUFkZHJlc3M7KyAgICBTbWJpb3NF bmQuUmF3ID0gKFVJTlQ4ICopIChVSU5UTikNCj4gKFNtYmlvczMwVGFibGUtDQo+ID4gPiA+ID5U YWJsZUFkZHJlc3MgKyBTbWJpb3MzMFRhYmxlLT5UYWJsZU1heGltdW1TaXplKTsrICAgIGlmDQo+ ID4gKFNtYmlvczMwVGFibGUtDQo+ID4gPiA+ID5UYWJsZU1heGltdW1TaXplID4gU21iaW9zVGFi bGVTaXplKSB7KyAgICAgIERFQlVHKChERUJVR19JTkZPLA0KPiAiJWE6DQo+ID4gPiA+IFNNQklP UyB0YWJsZSBzaXplIGdyZWF0ZXIgdGhhbiByZXBvcnRlZCBieSBib290bG9hZGVyXG4iLCsNCj4g PiA+ID4gX19GVU5DVElPTl9fKSk7KyAgICB9KyAgfSBlbHNlIGlmIChDb21wYXJlTWVtIChTbWJp b3NUYWJsZS0NCj4gPiA+QW5jaG9yU3RyaW5nLA0KPiA+ID4gPiAiX1NNXyIsIDQpID09IDApIHsr ICAgIFNtYmlvcy5IZHIgICAgPSAoU01CSU9TX1NUUlVDVFVSRSAqKSAoVUlOVE4pDQo+ID4gPiA+ IFNtYmlvc1RhYmxlLT5UYWJsZUFkZHJlc3M7KyAgICBTbWJpb3NFbmQuUmF3ID0gKFVJTlQ4ICop ICgoVUlOVE4pDQo+ID4gPiA+IFNtYmlvc1RhYmxlLT5UYWJsZUFkZHJlc3MgKyBTbWJpb3NUYWJs ZS0+VGFibGVMZW5ndGgpOysrICAgIGlmDQo+ID4gKFNtYmlvc1RhYmxlLQ0KPiA+ID4gPiA+VGFi bGVMZW5ndGggPiBTbWJpb3NUYWJsZVNpemUpIHsrICAgICAgREVCVUcoKERFQlVHX0lORk8sICIl YToNCj4gU01CSU9TDQo+ID4gPiA+IHRhYmxlIHNpemUgZ3JlYXRlciB0aGFuIHJlcG9ydGVkIGJ5 IGJvb3Rsb2FkZXJcbiIsKw0KPiA+ID4gPiBfX0ZVTkNUSU9OX18pKTsrICAgIH0rICB9IGVsc2Ug eysgICAgREVCVUcgKChERUJVR19FUlJPUiwgIiVhOiBObw0KPiB2YWxpZA0KPiA+ID4gPiBTTUJJ T1MgdGFibGUgZm91bmRcbiIsIF9fRlVOQ1RJT05fXyApKTsrICAgIHJldHVybg0KPiA+IEVGSV9O T1RfRk9VTkQ7KyAgfSsrDQo+ID4gPiA+IGRvIHsrICAgIC8vIENoZWNrIGZvciBlbmQgbWFya2Vy KyAgICBpZiAoU21iaW9zLkhkci0+VHlwZSA9PSAxMjcpIHsrDQo+ID4gPiA+IGJyZWFrOysgICAg fSsrICAgIC8vIEluc3RhbGwgdGhlIHRhYmxlKyAgICBTbWJpb3NIYW5kbGUgPQ0KPiA+ID4gPiBT TUJJT1NfSEFORExFX1BJX1JFU0VSVkVEOysgICAgU3RhdHVzID0gU21iaW9zUHJvdG8tPkFkZCAo Kw0KPiA+ID4gPiBTbWJpb3NQcm90bywrICAgICAgICAgICAgICAgICAgICAgICAgICBnSW1hZ2VI YW5kbGUsKw0KPiAmU21iaW9zSGFuZGxlLCsNCj4gPiA+ID4gU21iaW9zLkhkcisgICAgICAgICAg ICAgICAgICAgICAgICAgICk7KyAgICBBU1NFUlRfRUZJX0VSUk9SIChTdGF0dXMpOysgICAgaWYN Cj4gPiAoRUZJX0VSUk9SDQo+ID4gPiA+IChTdGF0dXMpKSB7KyAgICAgIHJldHVybiBTdGF0dXM7 KyAgICB9KyAgICAvLysgICAgLy8gR28gdG8gdGhlIG5leHQgU01CSU9TDQo+IHN0cnVjdHVyZS4N Cj4gPiA+ID4gRWFjaCBTTUJJT1Mgc3RydWN0dXJlIG1heSBpbmNsdWRlIDIgcGFydHM6KyAgICAv LyAxLiBGb3JtYXR0ZWQgc2VjdGlvbjsNCj4gMi4NCj4gPiA+ID4gVW5mb3JtYXR0ZWQgc3RyaW5n IHNlY3Rpb24uIFNvLCAyIHN0ZXBzIGFyZSBuZWVkZWQrICAgIC8vIHRvIHNraXAgb25lDQo+IFNN QklPUw0KPiA+ID4gPiBzdHJ1Y3R1cmUuKyAgICAvLysrICAgIC8vKyAgICAvLyBTdGVwIDE6IFNr aXAgb3ZlciBmb3JtYXR0ZWQgc2VjdGlvbi4rICAgIC8vKw0KPiA+IFN0cmluZyA9DQo+ID4gPiA+ IChDSEFSOCAqKSAoU21iaW9zLlJhdyArIFNtYmlvcy5IZHItPkxlbmd0aCk7KysgICAgLy8rICAg IC8vIFN0ZXAgMjogU2tpcA0KPiA+IG92ZXINCj4gPiA+ID4gdW5mb3JtYXR0ZWQgc3RyaW5nIHNl Y3Rpb24uKyAgICAvLysgICAgZG8geysgICAgICAvLysgICAgICAvLyBFYWNoIHN0cmluZyBpcw0K PiA+IHRlcm1pbmF0ZWQNCj4gPiA+ID4gd2l0aCBhIE5VTEwoMDBoKSBCWVRFIGFuZCB0aGUgc2V0 cyBvZiBzdHJpbmdzKyAgICAgIC8vIGlzIHRlcm1pbmF0ZWQgd2l0aA0KPiBhbg0KPiA+ID4gPiBh ZGRpdGlvbmFsIE5VTEwoMDBoKSBCWVRFLisgICAgICAvLysgICAgICBmb3IgKCA7ICpTdHJpbmcg IT0gMDsgU3RyaW5nKyspDQo+IHsrICAgICAgfSsrDQo+ID4gaWYNCj4gPiA+ID4gKCooVUlOVDgq KSsrU3RyaW5nID09IDApIHsrICAgICAgICAvLysgICAgICAgIC8vIFBvaW50ZXIgdG8gdGhlIG5l eHQgU01CSU9TDQo+ID4gPiA+IHN0cnVjdHVyZS4rICAgICAgICAvLysgICAgICAgIFNtYmlvcy5S YXcgPSAoVUlOVDggKikrK1N0cmluZzsrDQo+ID4gYnJlYWs7KyAgICAgIH0rICAgIH0NCj4gPiA+ ID4gd2hpbGUgKFRSVUUpOysgIH0gd2hpbGUgKFNtYmlvcy5SYXcgPCBTbWJpb3NFbmQuUmF3KTsr KyAgcmV0dXJuDQo+ID4gPiA+IEVGSV9TVUNDRVNTOyt9ICAvKiogICBNYWluIGVudHJ5IGZvciB0 aGUgYm9vdGxvYWRlciBzdXBwb3J0IERYRQ0KPiA+IG1vZHVsZS5AQCAtDQo+ID4gPiA+IDEzMyw5 ICsyMzQsMTMgQEAgQmxEeGVFbnRyeVBvaW50ICgNCj4gPiA+ID4gICAgLy8gSW5zdGFsbCBTbWJp b3MgVGFibGUgICAvLyAgIGlmIChTeXN0ZW1UYWJsZUluZm8tPlNtYmlvc1RhYmxlQmFzZSAhPSAw DQo+ICYmDQo+ID4gPiA+IFN5c3RlbVRhYmxlSW5mby0+U21iaW9zVGFibGVTaXplICE9IDApIHst ICAgIERFQlVHICgoREVCVUdfRVJST1IsDQo+ID4gIkluc3RhbGwNCj4gPiA+ID4gU21iaW9zIFRh YmxlIGF0IDB4JWx4LCBsZW5ndGggMHgleFxuIiwNCj4gPiA+ID4gU3lzdGVtVGFibGVJbmZvLT5T bWJpb3NUYWJsZUJhc2UsDQo+ID4gPiA+IFN5c3RlbVRhYmxlSW5mby0+U21iaW9zVGFibGVTaXpl KSk7LSAgICBTdGF0dXMgPSBnQlMtDQo+ID4gPkluc3RhbGxDb25maWd1cmF0aW9uVGFibGUNCj4g PiA+ID4gKCZnRWZpU21iaW9zVGFibGVHdWlkLCAoVk9JRCAqKShVSU5UTilTeXN0ZW1UYWJsZUlu Zm8tDQo+ID4gPlNtYmlvc1RhYmxlQmFzZSk7LQ0KPiA+ID4gPiBBU1NFUlRfRUZJX0VSUk9SIChT dGF0dXMpOysgICAgREVCVUcgKChERUJVR19FUlJPUiwgIkluc3RhbGwNCj4gU21iaW9zDQo+ID4g VGFibGUNCj4gPiA+ID4gYXQgMHglbHgsIGxlbmd0aCAweCV4XG4iLCsgICAgICBTeXN0ZW1UYWJs ZUluZm8tPlNtYmlvc1RhYmxlQmFzZSwNCj4gPiA+ID4gU3lzdGVtVGFibGVJbmZvLT5TbWJpb3NU YWJsZVNpemUpKTsrKyAgICBpZg0KPiA+ID4gPiAoQmxEeGVJbnN0YWxsU01CSU9TdGFibGVzKFN5 c3RlbVRhYmxlSW5mby0+U21iaW9zVGFibGVCYXNlLA0KPiA+ID4gPiBTeXN0ZW1UYWJsZUluZm8t PlNtYmlvc1RhYmxlU2l6ZSkgIT0gRUZJX1NVQ0NFU1MpIHsrICAgICAgU3RhdHVzID0NCj4gZ0JT LQ0KPiA+ID4gPiA+SW5zdGFsbENvbmZpZ3VyYXRpb25UYWJsZSAoJmdFZmlTbWJpb3NUYWJsZUd1 aWQsIChWT0lEDQo+ID4gPiA+ICopKFVJTlROKVN5c3RlbVRhYmxlSW5mby0+U21iaW9zVGFibGVC YXNlKTsrDQo+IEFTU0VSVF9FRklfRVJST1INCj4gPiA+ID4gKFN0YXR1cyk7KyAgICB9ICAgfSAg ICAvL2RpZmYgLS1naXQNCj4gYS9VZWZpUGF5bG9hZFBrZy9CbFN1cHBvcnREeGUvQmxTdXBwb3J0 RHhlLmgNCj4gPiA+ID4gYi9VZWZpUGF5bG9hZFBrZy9CbFN1cHBvcnREeGUvQmxTdXBwb3J0RHhl LmgNCj4gPiA+ID4gaW5kZXggNTEyMTA1ZmFmZC4uYTUyMTZjZDJlOSAxMDA2NDQNCj4gPiA+ID4g LS0tIGEvVWVmaVBheWxvYWRQa2cvQmxTdXBwb3J0RHhlL0JsU3VwcG9ydER4ZS5oDQo+ID4gPiA+ ICsrKyBiL1VlZmlQYXlsb2FkUGtnL0JsU3VwcG9ydER4ZS9CbFN1cHBvcnREeGUuaA0KPiA+ID4g PiBAQCAtMTAsNiArMTAsOCBAQCBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNl LVBhdGVudA0KPiA+ID4gPiAgICNpbmNsdWRlIDxQaUR4ZS5oPiArI2luY2x1ZGUgPFByb3RvY29s L1NtYmlvcy5oPisgI2luY2x1ZGUNCj4gPiA+ID4gPExpYnJhcnkvVWVmaURyaXZlckVudHJ5UG9p bnQuaD4gI2luY2x1ZGUNCj4gPiA+ID4gPExpYnJhcnkvVWVmaUJvb3RTZXJ2aWNlc1RhYmxlTGli Lmg+DQo+ID4gPiA+ICNpbmNsdWRlIDxMaWJyYXJ5L0R4ZVNlcnZpY2VzVGFibGVMaWIuaD5AQCAt MjYsNSArMjgsNiBAQA0KPiA+ID4gPiBTUERYLUxpY2Vuc2UtDQo+ID4gPiA+IElkZW50aWZpZXI6 IEJTRC0yLUNsYXVzZS1QYXRlbnQgICNpbmNsdWRlIDxHdWlkL0dyYXBoaWNzSW5mb0hvYi5oPg0K PiA+ID4gPiAjaW5jbHVkZSA8SW5kdXN0cnlTdGFuZGFyZC9BY3BpLmg+KyNpbmNsdWRlDQo+ID4g PiA+IDxJbmR1c3RyeVN0YW5kYXJkL1NtQmlvcy5oPiAgI2VuZGlmZGlmZiAtIC1naXQNCj4gPiA+ ID4gYS9VZWZpUGF5bG9hZFBrZy9CbFN1cHBvcnREeGUvQmxTdXBwb3J0RHhlLmluZg0KPiA+ID4g PiBiL1VlZmlQYXlsb2FkUGtnL0JsU3VwcG9ydER4ZS9CbFN1cHBvcnREeGUuaW5mDQo+ID4gPiA+ IGluZGV4IGNlYmM4MTEzNTUuLmQyNmE3NTI0OGIgMTAwNjQ0DQo+ID4gPiA+IC0tLSBhL1VlZmlQ YXlsb2FkUGtnL0JsU3VwcG9ydER4ZS9CbFN1cHBvcnREeGUuaW5mDQo+ID4gPiA+ICsrKyBiL1Vl ZmlQYXlsb2FkUGtnL0JsU3VwcG9ydER4ZS9CbFN1cHBvcnREeGUuaW5mDQo+ID4gPiA+IEBAIC01 Niw1ICs1Niw4IEBADQo+ID4gPiA+ICAgIGdFZmlNZGVQa2dUb2tlblNwYWNlR3VpZC5QY2RQY2lF eHByZXNzQmFzZUFkZHJlc3MNCj4gPiA+ID4gZ0VmaU1kZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFBj aUV4cHJlc3NCYXNlU2l6ZSArW1Byb3RvY29sc10rDQo+ID4gPiA+IGdFZmlTbWJpb3NQcm90b2Nv bEd1aWQrIFtEZXBleF0tICBUUlVFKyAgZ0VmaVNtYmlvc1Byb3RvY29sR3VpZC0tDQo+ID4gPiA+ IDIuMjYuMg0KPiA+ID4NCg==