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.web11.225.1592347459509629940 for ; Tue, 16 Jun 2020 15:44:19 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=ZIH4Nz85; spf=pass (domain: intel.com, ip: 192.55.52.136, mailfrom: michael.d.kinney@intel.com) IronPort-SDR: rnEm6uIeYF4qRLxRqjkYZFj2Hgz9PWUO1A/B3Ijzh7g7r357DdJezZIMd7LKMRscM9lOhpjKcC 6zQk32wmUGxA== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Jun 2020 15:44:17 -0700 IronPort-SDR: 1BRl9J0b0l1l3uQEGl8fRlkDtkwGc2cFpGUcc0A6bY4i9tsg9YMWRCsOJO6pTFxe3G/OcruyXb T5HKkN9fMmdw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,520,1583222400"; d="scan'208";a="476630669" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by fmsmga005.fm.intel.com with ESMTP; 16 Jun 2020 15:44:17 -0700 Received: from fmsmsx111.amr.corp.intel.com (10.18.116.5) by fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 16 Jun 2020 15:44:17 -0700 Received: from FMSEDG002.ED.cps.intel.com (10.1.192.134) by fmsmsx111.amr.corp.intel.com (10.18.116.5) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 16 Jun 2020 15:44:17 -0700 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (104.47.55.101) by edgegateway.intel.com (192.55.55.69) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 16 Jun 2020 15:44:13 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IAnCjfpniSwRFsqkXtTASmPZ20jHm5dsdIkesYLVxfnmfhV9f9Kj60S9wY+t8uwOkcukAEoKjplKyJ8uf1mTYAFnoxQh6IRSStBeGfk4W7XtEbq3ce/89JX5NeL83uI+K903x8kZTwFcSLg6+KVa5m/RF3OVnOWxgSmkzntZUUpO4guRbK3amiNFtFlPIFRfwkzuM0Qyv+QIKoNm2bNPCRs0bhylrvVPir0ATfYzqNM3fyBdW8pESIQNlkp11RJthDf8tAzrcmRq1QJOvN8FqY4nZ4Pc/tpgDrUZfq7pZD7F/m+aFpqfl5dmmb1a0dkNSnMZ1d9QDtaP4QereET2/Q== 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=oxhgbQ3OpUlfcbl7VWXgD1pJfMK0EDUMPrxJSUfRopk=; b=moQox3g09lYq/RejBM7LaSjmwpMQyqIAx9OZUxZcekf8uXtJdcx6dmO5SWf4CXYc+hCJx1E13uyynWp4BQQkj3s6zTcM1tn/3/gBrIQJ6k+Q5CABp/cWFd3Nj/4oFRAthmhdK6cHygT96981Mec212tcwxiWT+CpdnA2sojk01lO5OYxGWK62jnnM7fg0gcVYi13AjTm0ebSLttwzMcfKJT+BzXE2DAnkzj+Td5D9xmCDVZRRxWHdmAamcwhgugRw8mzk1FfNHzubu88SzfPdl4M9SIGzD8nBtMzaiDRmo3T/QAAaWtKsjoTywziXbMXtC1l0WvvcHtbjt9rE4DhfA== 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=oxhgbQ3OpUlfcbl7VWXgD1pJfMK0EDUMPrxJSUfRopk=; b=ZIH4Nz85gcBj4bCsM0RX1mEGMRx6ilLVK2TRvoXhohLNHY9nbN8kOH79VSshXUr/wGEz6h1Txrcjvu9i9c4Svz9jVo4XUKh3AqCAy8IGQ6tfLPp72i70c7e9BYNCsIPCGacOgaNjYm4KZCxOYfLeFrsdOv3JsgoE3MU6ZXHPP5k= Received: from MN2PR11MB4461.namprd11.prod.outlook.com (2603:10b6:208:192::29) by BL0PR11MB3427.namprd11.prod.outlook.com (2603:10b6:208:7b::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3088.18; Tue, 16 Jun 2020 22:44:11 +0000 Received: from MN2PR11MB4461.namprd11.prod.outlook.com ([fe80::10bc:1a4e:4745:ffc1]) by MN2PR11MB4461.namprd11.prod.outlook.com ([fe80::10bc:1a4e:4745:ffc1%3]) with mapi id 15.20.3109.021; Tue, 16 Jun 2020 22:44:11 +0000 From: "Michael D Kinney" To: "Liu, Zhiguang" , "devel@edk2.groups.io" , "Kinney, Michael D" CC: "Tian, Feng" , "Zeng, Star" , Laszlo Ersek , "Yao, Jiewen" Subject: Re: [PATCH 2/5] MdeModulePkg/SmmCore: Remove UEFI LOADED_IMAGE from SMM. Thread-Topic: [PATCH 2/5] MdeModulePkg/SmmCore: Remove UEFI LOADED_IMAGE from SMM. Thread-Index: AQHWQ70193OMb6SQIEibeo6Bs8/6Eajb1xIw Date: Tue, 16 Jun 2020 22:44:11 +0000 Message-ID: References: <20200616090434.1201-1-zhiguang.liu@intel.com> <20200616090434.1201-2-zhiguang.liu@intel.com> In-Reply-To: <20200616090434.1201-2-zhiguang.liu@intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.2.0.6 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: [134.134.136.208] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: c04bcf98-1566-4c98-f966-08d81246ca01 x-ms-traffictypediagnostic: BL0PR11MB3427: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-forefront-prvs: 04362AC73B x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: n4AZJi9pLc2MMrl5OvMt0efQTUuKCHeaw6Mc4CkzkMGlqYgq1CVghKUm6FBlhmT7NmxabclLr8Xq8SO1M1MBMmkZIEFFTmw4ITFj7RhJ6SNpzT2cOmwN6352m2/C+9ilPUIz9XhfgQT0AXIK2wVUbdWSFcmiqZzibv2LFBQ8Z/YJL9dSlhSTZW+Uli1r2FBNf5t/f8Sq3Tcs01JxlcuGhlrKp0ji/At8wfjFKzPqO0NEKVFTdjnqiuqekDLgxQdO8b5tlp262C1yb4HMTsEhdK1x4HiYLqSa2bR3rRl+ykxhhsRw/Sm3jwY0fNzuJpD7QEZMxt6i6Xtb1pJv+CRQ9IYhGzsGH2Ky7drhkm/BU4GLS1Nf0/eFqAApnl7r9mArSQjO4lnsWvAN2lEiTqIIz9ol7C7vIBVDXSYmCGfL8L+pEUDRVFfOswEb4dHYx3Zbpdg7GW0SM7ZOwn68yPI/DQ== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN2PR11MB4461.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFTY:;SFS:(4636009)(39860400002)(366004)(346002)(136003)(376002)(396003)(86362001)(66946007)(186003)(8676002)(33656002)(52536014)(6506007)(8936002)(966005)(4326008)(53546011)(76116006)(66476007)(66556008)(66446008)(5660300002)(7696005)(26005)(64756008)(55016002)(110136005)(71200400001)(30864003)(107886003)(2906002)(9686003)(83380400001)(54906003)(478600001)(316002)(44824005);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: aSYQ54K5h0rBCWsBr5os5qA1Q+8L/X8Z+JtOlZjyUgt8rq+BaNyUHaDvjS4+SzgbX3p6BcqLiNrbWqiiVjU39+m8pK/kYbLgTGn3BdeC0dTVn2DjnAZMyEXHLyHRVa9OHCyEUj+xfTly7flKoi0uhhDjBLh6I39KLlT2CGk5RyjXWoWSnWzQn+UYHqzQ3DkHoFoBb0pccwmA+EyHQa7o3WLY9WyQxEZWTU7VrRgK3FxuCSTCEZmf+txMUBPuUx1DAUvLS7DqyQvubwU2OEvicGvua8Wfs8grPcALGIvhV+j8Jf9QAaUxTr8YierRW8fc5Y2/M1cn+rkBqJf+MGMUO0MAr4suG124btqBOO7HkblT+1Q4xhvxInImi+CSrfbZniGC4327hyMcTN4ATR9fupgf8gyttojud/JeDj5H0u4FByva10iAAGvr2eTjMZuxdkON3X+XwbJMUg9xgMMuDmL+fU90t1g/vRVJ+UxsXofLjAlfP9BdFUwytniCBkSV MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: c04bcf98-1566-4c98-f966-08d81246ca01 X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Jun 2020 22:44:11.7593 (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: zAf/gx7336GDwnWcSwP5qsCuLGrXYqjYLMXC6arXS/iJJ4MB0IW/Flg8RC4gh4jjhPAYVnNs6BE1t6wOx/9TBUtlMZpCCDgCYoNO+kHYVhI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL0PR11MB3427 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 WmhpZ3VhbmcsDQoNClRoZSBjb21taXQgbWVzc2FnZSBzaG91bGQgbm90IGhhdmUgbW9yZSB0aGFu IG9uZSBTaWduZWQtb2ZmLWJ5Lg0KDQpVc2Ugb2YgU3VnZ2VzdGVkLWJ5IG1heSBiZSBtb3JlIGFw cHJvcHJpYXRlIGhlcmUuDQoNCk1pa2UNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0K PiBGcm9tOiBMaXUsIFpoaWd1YW5nIDx6aGlndWFuZy5saXVAaW50ZWwuY29tPg0KPiBTZW50OiBU dWVzZGF5LCBKdW5lIDE2LCAyMDIwIDI6MDUgQU0NCj4gVG86IGRldmVsQGVkazIuZ3JvdXBzLmlv DQo+IENjOiBUaWFuLCBGZW5nIDxmZW5nLnRpYW5AaW50ZWwuY29tPjsgWmVuZywgU3Rhcg0KPiA8 c3Rhci56ZW5nQGludGVsLmNvbT47IEtpbm5leSwgTWljaGFlbCBEDQo+IDxtaWNoYWVsLmQua2lu bmV5QGludGVsLmNvbT47IExhc3psbyBFcnNlaw0KPiA8bGVyc2VrQHJlZGhhdC5jb20+OyBZYW8s IEppZXdlbiA8amlld2VuLnlhb0BpbnRlbC5jb20+DQo+IFN1YmplY3Q6IFtQQVRDSCAyLzVdIE1k ZU1vZHVsZVBrZy9TbW1Db3JlOiBSZW1vdmUgVUVGSQ0KPiBMT0FERURfSU1BR0UgZnJvbSBTTU0u DQo+IA0KPiBSRUY6IGh0dHBzOi8vYnVnemlsbGEudGlhbm9jb3JlLm9yZy9zaG93X2J1Zy5jZ2k/ aWQ9MjMxNw0KPiANCj4gVGhpcyBwYXRjaCByZW1vdmVzIEVGSV9MT0FERURfSU1BR0VfUFJPVE9D T0wgZnJvbSBEWEUNCj4gZGF0YWJhc2UuDQo+IFRoZSBTbW1Db3JlIG9ubHkgaW5zdGFsbCBFRklf TE9BREVEX0lNQUdFX1BST1RPQ09MIHRvDQo+IFNNTSBkYXRhYmFzZS4NCj4gDQo+IEV4cG9zaW5n IExPQURFRF9JTUFHRV9QUk9UT0NPTCBtYXkgY2F1c2UgU01NIGluZm9ybWF0aW9uDQo+IGxlYWth Z2UNCj4gdG8gbm9uLVNNTSBjb21wb25lbnQuDQo+IA0KPiBDYzogRmVuZyBUaWFuIDxmZW5nLnRp YW5AaW50ZWwuY29tPg0KPiBDYzogU3RhciBaZW5nIDxzdGFyLnplbmdAaW50ZWwuY29tPg0KPiBD YzogTWljaGFlbCBEIEtpbm5leSA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+IENjOiBM YXN6bG8gRXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPg0KPiBTaWduZWQtb2ZmLWJ5OiBKaWV3ZW4g WWFvIDxqaWV3ZW4ueWFvQGludGVsLmNvbT4NCj4gU2lnbmVkLW9mZi1ieTogWmhpZ3VhbmcgTGl1 IDx6aGlndWFuZy5saXVAaW50ZWwuY29tPg0KPiAtLS0NCj4gIE1kZU1vZHVsZVBrZy9Db3JlL1Bp U21tQ29yZS9EaXNwYXRjaGVyLmMgfCAxMDQNCj4gKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+ICBNZGVNb2R1bGVQa2cvQ29yZS9QaVNtbUNvcmUv UGlTbW1Db3JlLmMgIHwgIDM0IC0tLS0tLS0tDQo+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t DQo+ICBNZGVNb2R1bGVQa2cvQ29yZS9QaVNtbUNvcmUvUGlTbW1Db3JlLmggIHwgICA0ICsrLS0N Cj4gIDMgZmlsZXMgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKSwgMTI5IGRlbGV0aW9ucygtKQ0K PiANCj4gZGlmZiAtLWdpdCBhL01kZU1vZHVsZVBrZy9Db3JlL1BpU21tQ29yZS9EaXNwYXRjaGVy LmMNCj4gYi9NZGVNb2R1bGVQa2cvQ29yZS9QaVNtbUNvcmUvRGlzcGF0Y2hlci5jDQo+IGluZGV4 IDc2ZWU5ZTBiODkuLjJiZTI4NjYyMzQgMTAwNjQ0DQo+IC0tLSBhL01kZU1vZHVsZVBrZy9Db3Jl L1BpU21tQ29yZS9EaXNwYXRjaGVyLmMNCj4gKysrIGIvTWRlTW9kdWxlUGtnL0NvcmUvUGlTbW1D b3JlL0Rpc3BhdGNoZXIuYw0KPiBAQCAtMzE2LDcgKzMxNiw3IEBAIFNtbUxvYWRJbWFnZSAoDQo+ ICAgIEVGSV9GSVJNV0FSRV9WT0xVTUUyX1BST1RPQ09MICAqRnY7DQo+IA0KPiAgICBQRV9DT0ZG X0xPQURFUl9JTUFHRV9DT05URVhUICAgSW1hZ2VDb250ZXh0Ow0KPiANCj4gDQo+IA0KPiAtICBQ RVJGX0xPQURfSU1BR0VfQkVHSU4gKERyaXZlckVudHJ5LT5JbWFnZUhhbmRsZSk7DQo+IA0KPiAr ICBQRVJGX0xPQURfSU1BR0VfQkVHSU4gKERyaXZlckVudHJ5LT5TbW1JbWFnZUhhbmRsZSk7DQo+ IA0KPiANCj4gDQo+ICAgIEJ1ZmZlciAgICAgICAgICAgICAgID0gTlVMTDsNCj4gDQo+ICAgIFNp emUgICAgICAgICAgICAgICAgID0gMDsNCj4gDQo+IEBAIC01NDYsNTEgKzU0NiwxNCBAQCBTbW1M b2FkSW1hZ2UgKA0KPiAgICBEcml2ZXJFbnRyeS0+SW1hZ2VCdWZmZXIgICAgICA9IERzdEJ1ZmZl cjsNCj4gDQo+ICAgIERyaXZlckVudHJ5LT5OdW1iZXJPZlBhZ2UgICAgID0gUGFnZUNvdW50Ow0K PiANCj4gDQo+IA0KPiAtICAvLw0KPiANCj4gLSAgLy8gQWxsb2NhdGUgYSBMb2FkZWQgSW1hZ2Ug UHJvdG9jb2wgaW4NCj4gRWZpQm9vdFNlcnZpY2VzRGF0YQ0KPiANCj4gLSAgLy8NCj4gDQo+IC0g IFN0YXR1cyA9IGdCUy0+QWxsb2NhdGVQb29sIChFZmlCb290U2VydmljZXNEYXRhLA0KPiBzaXpl b2YgKEVGSV9MT0FERURfSU1BR0VfUFJPVE9DT0wpLCAoVk9JRA0KPiAqKikmRHJpdmVyRW50cnkt PkxvYWRlZEltYWdlKTsNCj4gDQo+IC0gIGlmIChFRklfRVJST1IgKFN0YXR1cykpIHsNCj4gDQo+ IC0gICAgaWYgKEJ1ZmZlciAhPSBOVUxMKSB7DQo+IA0KPiAtICAgICAgZ0JTLT5GcmVlUG9vbCAo QnVmZmVyKTsNCj4gDQo+IC0gICAgfQ0KPiANCj4gLSAgICBTbW1GcmVlUGFnZXMgKERzdEJ1ZmZl ciwgUGFnZUNvdW50KTsNCj4gDQo+IC0gICAgcmV0dXJuIFN0YXR1czsNCj4gDQo+IC0gIH0NCj4g DQo+IC0NCj4gDQo+IC0gIFplcm9NZW0gKERyaXZlckVudHJ5LT5Mb2FkZWRJbWFnZSwgc2l6ZW9m DQo+IChFRklfTE9BREVEX0lNQUdFX1BST1RPQ09MKSk7DQo+IA0KPiAgICAvLw0KPiANCj4gICAg Ly8gRmlsbCBpbiB0aGUgcmVtYWluaW5nIGZpZWxkcyBvZiB0aGUgTG9hZGVkIEltYWdlDQo+IFBy b3RvY29sIGluc3RhbmNlLg0KPiANCj4gLSAgLy8gTm90ZTogSW1hZ2VCYXNlIGlzIGFuIFNNUkFN IGFkZHJlc3MgdGhhdCBjYW4gbm90DQo+IGJlIGFjY2Vzc2VkIG91dHNpZGUgb2YgU01SQU0gaWYg U01SQU0gd2luZG93IGlzIGNsb3NlZC4NCj4gDQo+ICAgIC8vDQo+IA0KPiAtICBEcml2ZXJFbnRy eS0+TG9hZGVkSW1hZ2UtPlJldmlzaW9uICAgICAgPQ0KPiBFRklfTE9BREVEX0lNQUdFX1BST1RP Q09MX1JFVklTSU9OOw0KPiANCj4gLSAgRHJpdmVyRW50cnktPkxvYWRlZEltYWdlLT5QYXJlbnRI YW5kbGUgID0NCj4gZ1NtbUNvcmVQcml2YXRlLT5TbW1JcGxJbWFnZUhhbmRsZTsNCj4gDQo+IC0g IERyaXZlckVudHJ5LT5Mb2FkZWRJbWFnZS0+U3lzdGVtVGFibGUgICA9IGdTVDsNCj4gDQo+IC0g IERyaXZlckVudHJ5LT5Mb2FkZWRJbWFnZS0+RGV2aWNlSGFuZGxlICA9DQo+IERldmljZUhhbmRs ZTsNCj4gDQo+IC0NCj4gDQo+ICAgIERyaXZlckVudHJ5LT5TbW1Mb2FkZWRJbWFnZS5SZXZpc2lv biAgICAgPQ0KPiBFRklfTE9BREVEX0lNQUdFX1BST1RPQ09MX1JFVklTSU9OOw0KPiANCj4gICAg RHJpdmVyRW50cnktPlNtbUxvYWRlZEltYWdlLlBhcmVudEhhbmRsZSA9DQo+IGdTbW1Db3JlUHJp dmF0ZS0+U21tSXBsSW1hZ2VIYW5kbGU7DQo+IA0KPiAgICBEcml2ZXJFbnRyeS0+U21tTG9hZGVk SW1hZ2UuU3lzdGVtVGFibGUgID0gZ1NUOw0KPiANCj4gICAgRHJpdmVyRW50cnktPlNtbUxvYWRl ZEltYWdlLkRldmljZUhhbmRsZSA9DQo+IERldmljZUhhbmRsZTsNCj4gDQo+IA0KPiANCj4gLSAg Ly8NCj4gDQo+IC0gIC8vIE1ha2UgYW4gRWZpQm9vdFNlcnZpY2VzRGF0YSBidWZmZXIgY29weSBv Zg0KPiBGaWxlUGF0aA0KPiANCj4gLSAgLy8NCj4gDQo+IC0gIFN0YXR1cyA9IGdCUy0+QWxsb2Nh dGVQb29sIChFZmlCb290U2VydmljZXNEYXRhLA0KPiBHZXREZXZpY2VQYXRoU2l6ZSAoRmlsZVBh dGgpLCAoVk9JRCAqKikmRHJpdmVyRW50cnktDQo+ID5Mb2FkZWRJbWFnZS0+RmlsZVBhdGgpOw0K PiANCj4gLSAgaWYgKEVGSV9FUlJPUiAoU3RhdHVzKSkgew0KPiANCj4gLSAgICBpZiAoQnVmZmVy ICE9IE5VTEwpIHsNCj4gDQo+IC0gICAgICBnQlMtPkZyZWVQb29sIChCdWZmZXIpOw0KPiANCj4g LSAgICB9DQo+IA0KPiAtICAgIFNtbUZyZWVQYWdlcyAoRHN0QnVmZmVyLCBQYWdlQ291bnQpOw0K PiANCj4gLSAgICByZXR1cm4gU3RhdHVzOw0KPiANCj4gLSAgfQ0KPiANCj4gLSAgQ29weU1lbSAo RHJpdmVyRW50cnktPkxvYWRlZEltYWdlLT5GaWxlUGF0aCwNCj4gRmlsZVBhdGgsIEdldERldmlj ZVBhdGhTaXplIChGaWxlUGF0aCkpOw0KPiANCj4gLQ0KPiANCj4gLSAgRHJpdmVyRW50cnktPkxv YWRlZEltYWdlLT5JbWFnZUJhc2UgICAgID0gKFZPSUQNCj4gKikoVUlOVE4pIEltYWdlQ29udGV4 dC5JbWFnZUFkZHJlc3M7DQo+IA0KPiAtICBEcml2ZXJFbnRyeS0+TG9hZGVkSW1hZ2UtPkltYWdl U2l6ZSAgICAgPQ0KPiBJbWFnZUNvbnRleHQuSW1hZ2VTaXplOw0KPiANCj4gLSAgRHJpdmVyRW50 cnktPkxvYWRlZEltYWdlLT5JbWFnZUNvZGVUeXBlID0NCj4gRWZpUnVudGltZVNlcnZpY2VzQ29k ZTsNCj4gDQo+IC0gIERyaXZlckVudHJ5LT5Mb2FkZWRJbWFnZS0+SW1hZ2VEYXRhVHlwZSA9DQo+ IEVmaVJ1bnRpbWVTZXJ2aWNlc0RhdGE7DQo+IA0KPiAtDQo+IA0KPiAgICAvLw0KPiANCj4gICAg Ly8gTWFrZSBhIGJ1ZmZlciBjb3B5IG9mIEZpbGVQYXRoDQo+IA0KPiAgICAvLw0KPiANCj4gQEAg LTU5OSw3ICs1NjIsNiBAQCBTbW1Mb2FkSW1hZ2UgKA0KPiAgICAgIGlmIChCdWZmZXIgIT0gTlVM TCkgew0KPiANCj4gICAgICAgIGdCUy0+RnJlZVBvb2wgKEJ1ZmZlcik7DQo+IA0KPiAgICAgIH0N Cj4gDQo+IC0gICAgZ0JTLT5GcmVlUG9vbCAoRHJpdmVyRW50cnktPkxvYWRlZEltYWdlLT5GaWxl UGF0aCk7DQo+IA0KPiAgICAgIFNtbUZyZWVQYWdlcyAoRHN0QnVmZmVyLCBQYWdlQ291bnQpOw0K PiANCj4gICAgICByZXR1cm4gU3RhdHVzOw0KPiANCj4gICAgfQ0KPiANCj4gQEAgLTYxMCwxNiAr NTcyLDYgQEAgU21tTG9hZEltYWdlICgNCj4gICAgRHJpdmVyRW50cnktPlNtbUxvYWRlZEltYWdl LkltYWdlQ29kZVR5cGUgPQ0KPiBFZmlSdW50aW1lU2VydmljZXNDb2RlOw0KPiANCj4gICAgRHJp dmVyRW50cnktPlNtbUxvYWRlZEltYWdlLkltYWdlRGF0YVR5cGUgPQ0KPiBFZmlSdW50aW1lU2Vy dmljZXNEYXRhOw0KPiANCj4gDQo+IA0KPiAtICAvLw0KPiANCj4gLSAgLy8gQ3JlYXRlIGEgbmV3 IGltYWdlIGhhbmRsZSBpbiB0aGUgVUVGSSBoYW5kbGUNCj4gZGF0YWJhc2UgZm9yIHRoZSBTTU0g RHJpdmVyDQo+IA0KPiAtICAvLw0KPiANCj4gLSAgRHJpdmVyRW50cnktPkltYWdlSGFuZGxlID0g TlVMTDsNCj4gDQo+IC0gIFN0YXR1cyA9IGdCUy0+SW5zdGFsbE11bHRpcGxlUHJvdG9jb2xJbnRl cmZhY2VzICgNCj4gDQo+IC0gICAgICAgICAgICAgICAgICAmRHJpdmVyRW50cnktPkltYWdlSGFu ZGxlLA0KPiANCj4gLSAgICAgICAgICAgICAgICAgICZnRWZpTG9hZGVkSW1hZ2VQcm90b2NvbEd1 aWQsDQo+IERyaXZlckVudHJ5LT5Mb2FkZWRJbWFnZSwNCj4gDQo+IC0gICAgICAgICAgICAgICAg ICBOVUxMDQo+IA0KPiAtICAgICAgICAgICAgICAgICAgKTsNCj4gDQo+IC0NCj4gDQo+ICAgIC8v DQo+IA0KPiAgICAvLyBDcmVhdGUgYSBuZXcgaW1hZ2UgaGFuZGxlIGluIHRoZSBTTU0gaGFuZGxl DQo+IGRhdGFiYXNlIGZvciB0aGUgU01NIERyaXZlcg0KPiANCj4gICAgLy8NCj4gDQo+IEBAIC02 MzEsNyArNTgzLDcgQEAgU21tTG9hZEltYWdlICgNCj4gICAgICAgICAgICAgICAmRHJpdmVyRW50 cnktPlNtbUxvYWRlZEltYWdlDQo+IA0KPiAgICAgICAgICAgICAgICk7DQo+IA0KPiANCj4gDQo+ IC0gIFBFUkZfTE9BRF9JTUFHRV9FTkQgKERyaXZlckVudHJ5LT5JbWFnZUhhbmRsZSk7DQo+IA0K PiArICBQRVJGX0xPQURfSU1BR0VfRU5EIChEcml2ZXJFbnRyeS0+U21tSW1hZ2VIYW5kbGUpOw0K PiANCj4gDQo+IA0KPiAgICAvLw0KPiANCj4gICAgLy8gUHJpbnQgdGhlIGxvYWQgYWRkcmVzcyBh bmQgdGhlIFBEQiBmaWxlIG5hbWUgaWYgaXQNCj4gaXMgYXZhaWxhYmxlDQo+IA0KPiBAQCAtODU2 LDcgKzgwOCw3IEBAIFNtbURpc3BhdGNoZXIgKA0KPiAgICAgICAgLy8gVW50cnVzZWQgdG8gU2No ZWR1bGVkIGl0IHdvdWxkIGhhdmUgYWxyZWFkeQ0KPiBiZWVuIGxvYWRlZCBzbyB3ZSBtYXkgbmVl ZCB0bw0KPiANCj4gICAgICAgIC8vIHNraXAgdGhlIExvYWRJbWFnZQ0KPiANCj4gICAgICAgIC8v DQo+IA0KPiAtICAgICAgaWYgKERyaXZlckVudHJ5LT5JbWFnZUhhbmRsZSA9PSBOVUxMKSB7DQo+ IA0KPiArICAgICAgaWYgKERyaXZlckVudHJ5LT5TbW1JbWFnZUhhbmRsZSA9PSBOVUxMKSB7DQo+ IA0KPiAgICAgICAgICBTdGF0dXMgPSBTbW1Mb2FkSW1hZ2UgKERyaXZlckVudHJ5KTsNCj4gDQo+ IA0KPiANCj4gICAgICAgICAgLy8NCj4gDQo+IEBAIC04ODUsOCArODM3LDggQEAgU21tRGlzcGF0 Y2hlciAoDQo+ICAgICAgICBSRVBPUlRfU1RBVFVTX0NPREVfV0lUSF9FWFRFTkRFRF9EQVRBICgN Cj4gDQo+ICAgICAgICAgIEVGSV9QUk9HUkVTU19DT0RFLA0KPiANCj4gICAgICAgICAgRUZJX1NP RlRXQVJFX1NNTV9EUklWRVIgfCBFRklfU1dfUENfSU5JVF9CRUdJTiwNCj4gDQo+IC0gICAgICAg ICZEcml2ZXJFbnRyeS0+SW1hZ2VIYW5kbGUsDQo+IA0KPiAtICAgICAgICBzaXplb2YgKERyaXZl ckVudHJ5LT5JbWFnZUhhbmRsZSkNCj4gDQo+ICsgICAgICAgICZEcml2ZXJFbnRyeS0+U21tSW1h Z2VIYW5kbGUsDQo+IA0KPiArICAgICAgICBzaXplb2YgKERyaXZlckVudHJ5LT5TbW1JbWFnZUhh bmRsZSkNCj4gDQo+ICAgICAgICAgICk7DQo+IA0KPiANCj4gDQo+ICAgICAgICAvLw0KPiANCj4g QEAgLTg5OCw5ICs4NTAsMTAgQEAgU21tRGlzcGF0Y2hlciAoDQo+ICAgICAgICAvLyBGb3IgZWFj aCBTTU0gZHJpdmVyLCBwYXNzIE5VTEwgYXMgSW1hZ2VIYW5kbGUNCj4gDQo+ICAgICAgICAvLw0K PiANCj4gICAgICAgIFJlZ2lzdGVyU21yYW1Qcm9maWxlSW1hZ2UgKERyaXZlckVudHJ5LCBUUlVF KTsNCj4gDQo+IC0gICAgICBQRVJGX1NUQVJUX0lNQUdFX0JFR0lOIChEcml2ZXJFbnRyeS0NCj4g PkltYWdlSGFuZGxlKTsNCj4gDQo+IC0gICAgICBTdGF0dXMgPQ0KPiAoKEVGSV9JTUFHRV9FTlRS WV9QT0lOVCkoVUlOVE4pRHJpdmVyRW50cnktDQo+ID5JbWFnZUVudHJ5UG9pbnQpKERyaXZlckVu dHJ5LT5JbWFnZUhhbmRsZSwgZ1NUKTsNCj4gDQo+IC0gICAgICBQRVJGX1NUQVJUX0lNQUdFX0VO RCAoRHJpdmVyRW50cnktPkltYWdlSGFuZGxlKTsNCj4gDQo+ICsgICAgICBERUJVRyAoKERFQlVH X0lORk8sICJTTU0gU3RhcnRJbWFnZSAtIDB4JTExcFxuIiwNCj4gRHJpdmVyRW50cnktPkltYWdl RW50cnlQb2ludCkpOw0KPiANCj4gKyAgICAgIFBFUkZfU1RBUlRfSU1BR0VfQkVHSU4gKERyaXZl ckVudHJ5LQ0KPiA+U21tSW1hZ2VIYW5kbGUpOw0KPiANCj4gKyAgICAgIFN0YXR1cyA9DQo+ICgo RUZJX0lNQUdFX0VOVFJZX1BPSU5UKShVSU5UTilEcml2ZXJFbnRyeS0NCj4gPkltYWdlRW50cnlQ b2ludCkoRHJpdmVyRW50cnktPlNtbUltYWdlSGFuZGxlLCBnU1QpOw0KPiANCj4gKyAgICAgIFBF UkZfU1RBUlRfSU1BR0VfRU5EIChEcml2ZXJFbnRyeS0NCj4gPlNtbUltYWdlSGFuZGxlKTsNCj4g DQo+ICAgICAgICBpZiAoRUZJX0VSUk9SKFN0YXR1cykpew0KPiANCj4gICAgICAgICAgREVCVUcg KCgNCj4gDQo+ICAgICAgICAgICAgREVCVUdfRVJST1IsDQo+IA0KPiBAQCAtOTEwLDIwICs4NjMs NiBAQCBTbW1EaXNwYXRjaGVyICgNCj4gICAgICAgICAgICApKTsNCj4gDQo+ICAgICAgICAgIFVu cmVnaXN0ZXJTbXJhbVByb2ZpbGVJbWFnZSAoRHJpdmVyRW50cnksDQo+IFRSVUUpOw0KPiANCj4g ICAgICAgICAgU21tRnJlZVBhZ2VzKERyaXZlckVudHJ5LT5JbWFnZUJ1ZmZlciwNCj4gRHJpdmVy RW50cnktPk51bWJlck9mUGFnZSk7DQo+IA0KPiAtICAgICAgICAvLw0KPiANCj4gLSAgICAgICAg Ly8gVW5pbnN0YWxsIExvYWRlZEltYWdlDQo+IA0KPiAtICAgICAgICAvLw0KPiANCj4gLSAgICAg ICAgU3RhdHVzID0gZ0JTLT5Vbmluc3RhbGxQcm90b2NvbEludGVyZmFjZSAoDQo+IA0KPiAtICAg ICAgICAgICAgICAgICAgICAgICAgRHJpdmVyRW50cnktPkltYWdlSGFuZGxlLA0KPiANCj4gLSAg ICAgICAgICAgICAgICAgICAgICAgICZnRWZpTG9hZGVkSW1hZ2VQcm90b2NvbEd1aWQsDQo+IA0K PiAtICAgICAgICAgICAgICAgICAgICAgICAgRHJpdmVyRW50cnktPkxvYWRlZEltYWdlDQo+IA0K PiAtICAgICAgICAgICAgICAgICAgICAgICAgKTsNCj4gDQo+IC0gICAgICAgIGlmICghRUZJX0VS Uk9SIChTdGF0dXMpKSB7DQo+IA0KPiAtICAgICAgICAgIGlmIChEcml2ZXJFbnRyeS0+TG9hZGVk SW1hZ2UtPkZpbGVQYXRoICE9DQo+IE5VTEwpIHsNCj4gDQo+IC0gICAgICAgICAgICBnQlMtPkZy ZWVQb29sIChEcml2ZXJFbnRyeS0+TG9hZGVkSW1hZ2UtDQo+ID5GaWxlUGF0aCk7DQo+IA0KPiAt ICAgICAgICAgIH0NCj4gDQo+IC0gICAgICAgICAgZ0JTLT5GcmVlUG9vbCAoRHJpdmVyRW50cnkt PkxvYWRlZEltYWdlKTsNCj4gDQo+IC0gICAgICAgIH0NCj4gDQo+ICAgICAgICAgIFN0YXR1cyA9 IFNtbVVuaW5zdGFsbFByb3RvY29sSW50ZXJmYWNlICgNCj4gDQo+ICAgICAgICAgICAgICAgICAg ICAgRHJpdmVyRW50cnktPlNtbUltYWdlSGFuZGxlLA0KPiANCj4gICAgICAgICAgICAgICAgICAg ICAmZ0VmaUxvYWRlZEltYWdlUHJvdG9jb2xHdWlkLA0KPiANCj4gQEAgLTkzOSw4ICs4NzgsOCBA QCBTbW1EaXNwYXRjaGVyICgNCj4gICAgICAgIFJFUE9SVF9TVEFUVVNfQ09ERV9XSVRIX0VYVEVO REVEX0RBVEEgKA0KPiANCj4gICAgICAgICAgRUZJX1BST0dSRVNTX0NPREUsDQo+IA0KPiAgICAg ICAgICBFRklfU09GVFdBUkVfU01NX0RSSVZFUiB8IEVGSV9TV19QQ19JTklUX0VORCwNCj4gDQo+ IC0gICAgICAgICZEcml2ZXJFbnRyeS0+SW1hZ2VIYW5kbGUsDQo+IA0KPiAtICAgICAgICBzaXpl b2YgKERyaXZlckVudHJ5LT5JbWFnZUhhbmRsZSkNCj4gDQo+ICsgICAgICAgICZEcml2ZXJFbnRy eS0+U21tSW1hZ2VIYW5kbGUsDQo+IA0KPiArICAgICAgICBzaXplb2YgKERyaXZlckVudHJ5LT5T bW1JbWFnZUhhbmRsZSkNCj4gDQo+ICAgICAgICAgICk7DQo+IA0KPiANCj4gDQo+ICAgICAgICBp ZiAoIVByZXZpb3VzU21tRW50cnlQb2ludFJlZ2lzdGVyZWQgJiYNCj4gZ1NtbUNvcmVQcml2YXRl LT5TbW1FbnRyeVBvaW50UmVnaXN0ZXJlZCkgew0KPiANCj4gQEAgLTEzNDQsMjcgKzEyODMsNiBA QCBTbW1Ecml2ZXJEaXNwYXRjaEhhbmRsZXIgKA0KPiAgICAgICAgICAgICAgLy8NCj4gDQo+ICAg ICAgICAgICAgICAvLyBJZiB0aGlzIGlzIHRoZSBTTU0gY29yZSBmaWxsIGluIGl0J3MNCj4gRGV2 aWNlUGF0aCAmIERldmljZUhhbmRsZQ0KPiANCj4gICAgICAgICAgICAgIC8vDQo+IA0KPiAtICAg ICAgICAgICAgaWYgKG1TbW1Db3JlTG9hZGVkSW1hZ2UtPkZpbGVQYXRoID09IE5VTEwpDQo+IHsN Cj4gDQo+IC0gICAgICAgICAgICAgIC8vDQo+IA0KPiAtICAgICAgICAgICAgICAvLyBNYXliZSBv bmUgc3BlY2lhbCBGViBjb250YWlucyBvbmx5IG9uZQ0KPiBTTU1fQ09SRSBtb2R1bGUsIHNvIGl0 cyBkZXZpY2UgcGF0aCBtdXN0DQo+IA0KPiAtICAgICAgICAgICAgICAvLyBiZSBpbml0aWFsaXpl ZCBjb21wbGV0ZWx5Lg0KPiANCj4gLSAgICAgICAgICAgICAgLy8NCj4gDQo+IC0gICAgICAgICAg ICAgIEVmaUluaXRpYWxpemVGd1ZvbERldmljZXBhdGhOb2RlDQo+ICgmbUZ2RGV2aWNlUGF0aC5G aWxlLCAmTmFtZUd1aWQpOw0KPiANCj4gLSAgICAgICAgICAgICAgU2V0RGV2aWNlUGF0aEVuZE5v ZGUNCj4gKCZtRnZEZXZpY2VQYXRoLkVuZCk7DQo+IA0KPiAtDQo+IA0KPiAtICAgICAgICAgICAg ICAvLw0KPiANCj4gLSAgICAgICAgICAgICAgLy8gTWFrZSBhbiBFZmlCb290U2VydmljZXNEYXRh IGJ1ZmZlcg0KPiBjb3B5IG9mIEZpbGVQYXRoDQo+IA0KPiAtICAgICAgICAgICAgICAvLw0KPiAN Cj4gLSAgICAgICAgICAgICAgU3RhdHVzID0gZ0JTLT5BbGxvY2F0ZVBvb2wgKA0KPiANCj4gLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVmaUJvb3RTZXJ2aWNlc0RhdGEsDQo+IA0KPiAt ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR2V0RGV2aWNlUGF0aFNpemUNCj4gKChFRklf REVWSUNFX1BBVEhfUFJPVE9DT0wgKikmbUZ2RGV2aWNlUGF0aCksDQo+IA0KPiAtICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgKFZPSUQNCj4gKiopJm1TbW1Db3JlTG9hZGVkSW1hZ2UtPkZp bGVQYXRoDQo+IA0KPiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTsNCj4gDQo+IC0g ICAgICAgICAgICAgIEFTU0VSVF9FRklfRVJST1IgKFN0YXR1cyk7DQo+IA0KPiAtICAgICAgICAg ICAgICBDb3B5TWVtIChtU21tQ29yZUxvYWRlZEltYWdlLT5GaWxlUGF0aCwNCj4gJm1GdkRldmlj ZVBhdGgsIEdldERldmljZVBhdGhTaXplDQo+ICgoRUZJX0RFVklDRV9QQVRIX1BST1RPQ09MICop Jm1GdkRldmljZVBhdGgpKTsNCj4gDQo+IC0NCj4gDQo+IC0gICAgICAgICAgICAgIG1TbW1Db3Jl TG9hZGVkSW1hZ2UtPkRldmljZUhhbmRsZSA9DQo+IEZ2SGFuZGxlOw0KPiANCj4gLSAgICAgICAg ICAgIH0NCj4gDQo+ICAgICAgICAgICAgICBpZiAobVNtbUNvcmVEcml2ZXJFbnRyeS0NCj4gPlNt bUxvYWRlZEltYWdlLkZpbGVQYXRoID09IE5VTEwpIHsNCj4gDQo+ICAgICAgICAgICAgICAgIC8v DQo+IA0KPiAgICAgICAgICAgICAgICAvLyBNYXliZSBvbmUgc3BlY2lhbCBGViBjb250YWlucyBv bmx5IG9uZQ0KPiBTTU1fQ09SRSBtb2R1bGUsIHNvIGl0cyBkZXZpY2UgcGF0aCBtdXN0DQo+IA0K PiBkaWZmIC0tZ2l0IGEvTWRlTW9kdWxlUGtnL0NvcmUvUGlTbW1Db3JlL1BpU21tQ29yZS5jDQo+ IGIvTWRlTW9kdWxlUGtnL0NvcmUvUGlTbW1Db3JlL1BpU21tQ29yZS5jDQo+IGluZGV4IGNmYTk5 MjJjYmQuLmMxYjE4YjA0N2UgMTAwNjQ0DQo+IC0tLSBhL01kZU1vZHVsZVBrZy9Db3JlL1BpU21t Q29yZS9QaVNtbUNvcmUuYw0KPiArKysgYi9NZGVNb2R1bGVQa2cvQ29yZS9QaVNtbUNvcmUvUGlT bW1Db3JlLmMNCj4gQEAgLTEwNCw4ICsxMDQsNiBAQCBFRklfU01SQU1fREVTQ1JJUFRPUg0KPiAq bUZ1bGxTbXJhbVJhbmdlczsNCj4gDQo+IA0KPiAgRUZJX1NNTV9EUklWRVJfRU5UUlkgICAgICAg ICAgICAqbVNtbUNvcmVEcml2ZXJFbnRyeTsNCj4gDQo+IA0KPiANCj4gLUVGSV9MT0FERURfSU1B R0VfUFJPVE9DT0wgICAgICAgKm1TbW1Db3JlTG9hZGVkSW1hZ2U7DQo+IA0KPiAtDQo+IA0KPiAg LyoqDQo+IA0KPiAgICBQbGFjZSBob2xkZXIgZnVuY3Rpb24gdW50aWwgYWxsIHRoZSBTTU0gU3lz dGVtIFRhYmxlDQo+IFNlcnZpY2UgYXJlIGF2YWlsYWJsZS4NCj4gDQo+IA0KPiANCj4gQEAgLTc1 NiwzOCArNzU0LDYgQEAgU21tQ29yZUluc3RhbGxMb2FkZWRJbWFnZSAoDQo+ICAgICkNCj4gDQo+ ICB7DQo+IA0KPiAgICBFRklfU1RBVFVTICAgICAgICAgICAgICAgICBTdGF0dXM7DQo+IA0KPiAt ICBFRklfSEFORExFICAgICAgICAgICAgICAgICBIYW5kbGU7DQo+IA0KPiAtDQo+IA0KPiAtICAv Lw0KPiANCj4gLSAgLy8gQWxsb2NhdGUgYSBMb2FkZWQgSW1hZ2UgUHJvdG9jb2wgaW4NCj4gRWZp Qm9vdFNlcnZpY2VzRGF0YQ0KPiANCj4gLSAgLy8NCj4gDQo+IC0gIFN0YXR1cyA9IGdCUy0+QWxs b2NhdGVQb29sIChFZmlCb290U2VydmljZXNEYXRhLA0KPiBzaXplb2YoRUZJX0xPQURFRF9JTUFH RV9QUk9UT0NPTCksIChWT0lEDQo+ICoqKSZtU21tQ29yZUxvYWRlZEltYWdlKTsNCj4gDQo+IC0g IEFTU0VSVF9FRklfRVJST1IgKFN0YXR1cyk7DQo+IA0KPiAtDQo+IA0KPiAtICBaZXJvTWVtICht U21tQ29yZUxvYWRlZEltYWdlLCBzaXplb2YNCj4gKEVGSV9MT0FERURfSU1BR0VfUFJPVE9DT0wp KTsNCj4gDQo+IC0gIC8vDQo+IA0KPiAtICAvLyBGaWxsIGluIHRoZSByZW1haW5pbmcgZmllbGRz IG9mIHRoZSBMb2FkZWQgSW1hZ2UNCj4gUHJvdG9jb2wgaW5zdGFuY2UuDQo+IA0KPiAtICAvLyBO b3RlOiBJbWFnZUJhc2UgaXMgYW4gU01SQU0gYWRkcmVzcyB0aGF0IGNhbiBub3QNCj4gYmUgYWNj ZXNzZWQgb3V0c2lkZSBvZiBTTVJBTSBpZiBTTVJBTSB3aW5kb3cgaXMgY2xvc2VkLg0KPiANCj4g LSAgLy8NCj4gDQo+IC0gIG1TbW1Db3JlTG9hZGVkSW1hZ2UtPlJldmlzaW9uICAgICAgPQ0KPiBF RklfTE9BREVEX0lNQUdFX1BST1RPQ09MX1JFVklTSU9OOw0KPiANCj4gLSAgbVNtbUNvcmVMb2Fk ZWRJbWFnZS0+UGFyZW50SGFuZGxlICA9IGdTbW1Db3JlUHJpdmF0ZS0NCj4gPlNtbUlwbEltYWdl SGFuZGxlOw0KPiANCj4gLSAgbVNtbUNvcmVMb2FkZWRJbWFnZS0+U3lzdGVtVGFibGUgICA9IGdT VDsNCj4gDQo+IC0NCj4gDQo+IC0gIG1TbW1Db3JlTG9hZGVkSW1hZ2UtPkltYWdlQmFzZSAgICAg PSAoVk9JRA0KPiAqKShVSU5UTilnU21tQ29yZVByaXZhdGUtPlBpU21tQ29yZUltYWdlQmFzZTsN Cj4gDQo+IC0gIG1TbW1Db3JlTG9hZGVkSW1hZ2UtPkltYWdlU2l6ZSAgICAgPSBnU21tQ29yZVBy aXZhdGUtDQo+ID5QaVNtbUNvcmVJbWFnZVNpemU7DQo+IA0KPiAtICBtU21tQ29yZUxvYWRlZElt YWdlLT5JbWFnZUNvZGVUeXBlID0NCj4gRWZpUnVudGltZVNlcnZpY2VzQ29kZTsNCj4gDQo+IC0g IG1TbW1Db3JlTG9hZGVkSW1hZ2UtPkltYWdlRGF0YVR5cGUgPQ0KPiBFZmlSdW50aW1lU2Vydmlj ZXNEYXRhOw0KPiANCj4gLQ0KPiANCj4gLSAgLy8NCj4gDQo+IC0gIC8vIENyZWF0ZSBhIG5ldyBp bWFnZSBoYW5kbGUgaW4gdGhlIFVFRkkgaGFuZGxlDQo+IGRhdGFiYXNlIGZvciB0aGUgU01NIERy aXZlcg0KPiANCj4gLSAgLy8NCj4gDQo+IC0gIEhhbmRsZSA9IE5VTEw7DQo+IA0KPiAtICBTdGF0 dXMgPSBnQlMtPkluc3RhbGxNdWx0aXBsZVByb3RvY29sSW50ZXJmYWNlcyAoDQo+IA0KPiAtICAg ICAgICAgICAgICAgICAgJkhhbmRsZSwNCj4gDQo+IC0gICAgICAgICAgICAgICAgICAmZ0VmaUxv YWRlZEltYWdlUHJvdG9jb2xHdWlkLA0KPiBtU21tQ29yZUxvYWRlZEltYWdlLA0KPiANCj4gLSAg ICAgICAgICAgICAgICAgIE5VTEwNCj4gDQo+IC0gICAgICAgICAgICAgICAgICApOw0KPiANCj4g LSAgQVNTRVJUX0VGSV9FUlJPUiAoU3RhdHVzKTsNCj4gDQo+IA0KPiANCj4gICAgLy8NCj4gDQo+ ICAgIC8vIEFsbG9jYXRlIGEgTG9hZGVkIEltYWdlIFByb3RvY29sIGluIFNNTQ0KPiANCj4gZGlm ZiAtLWdpdCBhL01kZU1vZHVsZVBrZy9Db3JlL1BpU21tQ29yZS9QaVNtbUNvcmUuaA0KPiBiL01k ZU1vZHVsZVBrZy9Db3JlL1BpU21tQ29yZS9QaVNtbUNvcmUuaA0KPiBpbmRleCA1MGE3ZmMwMDAw Li4zYmJkMWUxNjAzIDEwMDY0NA0KPiAtLS0gYS9NZGVNb2R1bGVQa2cvQ29yZS9QaVNtbUNvcmUv UGlTbW1Db3JlLmgNCj4gKysrIGIvTWRlTW9kdWxlUGtnL0NvcmUvUGlTbW1Db3JlL1BpU21tQ29y ZS5oDQo+IEBAIC0xMjIsOCArMTIyLDggQEAgdHlwZWRlZiBzdHJ1Y3Qgew0KPiAgICBCT09MRUFO ICAgICAgICAgICAgICAgICAgICAgICAgIEluaXRpYWxpemVkOw0KPiANCj4gICAgQk9PTEVBTiAg ICAgICAgICAgICAgICAgICAgICAgICBEZXBleFByb3RvY29sRXJyb3I7DQo+IA0KPiANCj4gDQo+ IC0gIEVGSV9IQU5ETEUgICAgICAgICAgICAgICAgICAgICAgSW1hZ2VIYW5kbGU7DQo+IA0KPiAt ICBFRklfTE9BREVEX0lNQUdFX1BST1RPQ09MICAgICAgICpMb2FkZWRJbWFnZTsNCj4gDQo+ICsg IEVGSV9IQU5ETEUNCj4gSW1hZ2VIYW5kbGVfUmVzZXJ2ZWQxOw0KPiANCj4gKyAgRUZJX0xPQURF RF9JTUFHRV9QUk9UT0NPTA0KPiAqTG9hZGVkSW1hZ2VfUmVzZXJ2ZWQyOw0KPiANCj4gICAgLy8N Cj4gDQo+ICAgIC8vIEltYWdlIEVudHJ5UG9pbnQgaW4gU01SQU0NCj4gDQo+ICAgIC8vDQo+IA0K PiAtLQ0KPiAyLjI1LjEud2luZG93cy4xDQoNCg==