From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 5282182164 for ; Thu, 23 Feb 2017 17:32:10 -0800 (PST) Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga103.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 23 Feb 2017 17:32:09 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.35,199,1484035200"; d="scan'208";a="61667642" Received: from fmsmsx108.amr.corp.intel.com ([10.18.124.206]) by orsmga004.jf.intel.com with ESMTP; 23 Feb 2017 17:32:09 -0800 Received: from fmsmsx125.amr.corp.intel.com (10.18.125.40) by FMSMSX108.amr.corp.intel.com (10.18.124.206) with Microsoft SMTP Server (TLS) id 14.3.248.2; Thu, 23 Feb 2017 17:32:09 -0800 Received: from shsmsx101.ccr.corp.intel.com (10.239.4.153) by FMSMSX125.amr.corp.intel.com (10.18.125.40) with Microsoft SMTP Server (TLS) id 14.3.248.2; Thu, 23 Feb 2017 17:32:09 -0800 Received: from shsmsx102.ccr.corp.intel.com ([169.254.2.88]) by SHSMSX101.ccr.corp.intel.com ([169.254.1.177]) with mapi id 14.03.0248.002; Fri, 24 Feb 2017 09:32:05 +0800 From: "Zeng, Star" To: Ard Biesheuvel , "Yao, Jiewen" CC: "Kinney, Michael D" , "edk2-devel@lists.01.org" , "Carsey, Jaben" , Andrew Fish , "Gao, Liming" , "Zeng, Star" Thread-Topic: [edk2] [PATCH v4 1/3] MdeModulePkg: Add performance property configuration table Thread-Index: AQHSfdnOBdchm/45UESC+Iq39KjeiaFWO+8AgCA3MoCAAQybMA== Date: Fri, 24 Feb 2017 01:32:05 +0000 Message-ID: <0C09AFA07DD0434D9E2A0C6AEB0483103B82B30B@shsmsx102.ccr.corp.intel.com> References: <1486097737-12816-1-git-send-email-michael.d.kinney@intel.com> <1486097737-12816-2-git-send-email-michael.d.kinney@intel.com> <74D8A39837DF1E4DA445A8C0B3885C503A8E8BED@shsmsx102.ccr.corp.intel.com> In-Reply-To: Accept-Language: zh-CN, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Subject: Re: [PATCH v4 1/3] MdeModulePkg: Add performance property configuration table X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Feb 2017 01:32:10 -0000 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 QWdyZWUsIEkgd2lsbCBzZW5kIHBhdGNoIGZvciBpdCBBU0FQLg0KDQpUaGFua3MsDQpTdGFyDQot LS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KRnJvbTogQXJkIEJpZXNoZXV2ZWwgW21haWx0bzph cmQuYmllc2hldXZlbEBsaW5hcm8ub3JnXSANClNlbnQ6IEZyaWRheSwgRmVicnVhcnkgMjQsIDIw MTcgMTozMCBBTQ0KVG86IFlhbywgSmlld2VuIDxqaWV3ZW4ueWFvQGludGVsLmNvbT4NCkNjOiBL aW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+OyBlZGsyLWRldmVs QGxpc3RzLjAxLm9yZzsgQ2Fyc2V5LCBKYWJlbiA8amFiZW4uY2Fyc2V5QGludGVsLmNvbT47IFpl bmcsIFN0YXIgPHN0YXIuemVuZ0BpbnRlbC5jb20+OyBBbmRyZXcgRmlzaCA8YWZpc2hAYXBwbGUu Y29tPjsgR2FvLCBMaW1pbmcgPGxpbWluZy5nYW9AaW50ZWwuY29tPg0KU3ViamVjdDogUmU6IFtl ZGsyXSBbUEFUQ0ggdjQgMS8zXSBNZGVNb2R1bGVQa2c6IEFkZCBwZXJmb3JtYW5jZSBwcm9wZXJ0 eSBjb25maWd1cmF0aW9uIHRhYmxlDQoNCk9uIDMgRmVicnVhcnkgMjAxNyBhdCAwNTozMiwgWWFv LCBKaWV3ZW4gPGppZXdlbi55YW9AaW50ZWwuY29tPiB3cm90ZToNCj4gVGhhbmsgeW91IE1pa2Ug YW5kIFN0YXIuDQo+DQo+IEl0IGlzIGdvb2QgaWRlYSB0byByZW1vdmUgVGltZXJMaWIgZGVwZW5k ZW5jeS4NCj4gU2VyaWVzIFJldmlld2VkLWJ5OiBKaWV3ZW4ueWFvQGludGVsLmNvbQ0KPg0KDQpU aGlzIHBhdGNoIGJyZWFrcyB0aGUgR0NDIGJ1aWxkOg0KDQo8aHR0cHM6Ly9jaS5saW5hcm8ub3Jn L2plbmtpbnMvam9iL2xlZy12aXJ0LXRpYW5vY29yZS1lZGsyLXVwc3RyZWFtL3dzL2VkazIvTWRl TW9kdWxlUGtnL0xpYnJhcnkvRHhlQ29yZVBlcmZvcm1hbmNlTGliL0R4ZUNvcmVQZXJmb3JtYW5j ZUxpYi5jPjoNCkluIGZ1bmN0aW9uICdEeGVDb3JlUGVyZm9ybWFuY2VMaWJDb25zdHJ1Y3Rvcic6 DQo8aHR0cHM6Ly9jaS5saW5hcm8ub3JnL2plbmtpbnMvam9iL2xlZy12aXJ0LXRpYW5vY29yZS1l ZGsyLXVwc3RyZWFtL3dzL2VkazIvTWRlTW9kdWxlUGtnL0xpYnJhcnkvRHhlQ29yZVBlcmZvcm1h bmNlTGliL0R4ZUNvcmVQZXJmb3JtYW5jZUxpYi5jPjo1Mzg6MzoNCmVycm9yOiBwYXNzaW5nIGFy Z3VtZW50IDIgb2YgJ0VmaUdldFN5c3RlbUNvbmZpZ3VyYXRpb25UYWJsZScgZnJvbSBpbmNvbXBh dGlibGUgcG9pbnRlciB0eXBlIFstV2Vycm9yXQ0KICAgU3RhdHVzID0gRWZpR2V0U3lzdGVtQ29u ZmlndXJhdGlvblRhYmxlICgmZ1BlcmZvcm1hbmNlUHJvdG9jb2xHdWlkLCAmUGVyZm9ybWFuY2VQ cm9wZXJ0eSk7DQogICBeDQpJbiBmaWxlIGluY2x1ZGVkIGZyb20NCjxodHRwczovL2NpLmxpbmFy by5vcmcvamVua2lucy9qb2IvbGVnLXZpcnQtdGlhbm9jb3JlLWVkazItdXBzdHJlYW0vd3MvZWRr Mi9NZGVNb2R1bGVQa2cvTGlicmFyeS9EeGVDb3JlUGVyZm9ybWFuY2VMaWIvRHhlQ29yZVBlcmZv cm1hbmNlTGliSW50ZXJuYWwuaD46MzU6MCwNCiAgICAgICAgICAgICAgICAgZnJvbQ0KPGh0dHBz Oi8vY2kubGluYXJvLm9yZy9qZW5raW5zL2pvYi9sZWctdmlydC10aWFub2NvcmUtZWRrMi11cHN0 cmVhbS93cy9lZGsyL01kZU1vZHVsZVBrZy9MaWJyYXJ5L0R4ZUNvcmVQZXJmb3JtYW5jZUxpYi9E eGVDb3JlUGVyZm9ybWFuY2VMaWIuYz46MjY6DQo8aHR0cHM6Ly9jaS5saW5hcm8ub3JnL2plbmtp bnMvam9iL2xlZy12aXJ0LXRpYW5vY29yZS1lZGsyLXVwc3RyZWFtL3dzL2VkazIvTWRlUGtnL0lu Y2x1ZGUvTGlicmFyeS9VZWZpTGliLmg+OjEzNToxOg0Kbm90ZTogZXhwZWN0ZWQgJ3ZvaWQgKion IGJ1dCBhcmd1bWVudCBpcyBvZiB0eXBlICdzdHJ1Y3QgUEVSRk9STUFOQ0VfUFJPUEVSVFkgKion DQogRWZpR2V0U3lzdGVtQ29uZmlndXJhdGlvblRhYmxlICgNCiBeDQoNClRoaXMgZml4ZXMgaXQg Zm9yIG1lOg0KDQpkaWZmIC0tZ2l0IGEvTWRlTW9kdWxlUGtnL0xpYnJhcnkvRHhlQ29yZVBlcmZv cm1hbmNlTGliL0R4ZUNvcmVQZXJmb3JtYW5jZUxpYi5jDQpiL01kZU1vZHVsZVBrZy9MaWJyYXJ5 L0R4ZUNvcmVQZXJmb3JtYW5jZUxpYi9EeGVDb3JlUGVyZm9ybWFuY2VMaWIuYw0KaW5kZXggMTU2 NDUxNDUxOGQzLi41NDM4YmQwODYxNDQgMTAwNjQ0DQotLS0gYS9NZGVNb2R1bGVQa2cvTGlicmFy eS9EeGVDb3JlUGVyZm9ybWFuY2VMaWIvRHhlQ29yZVBlcmZvcm1hbmNlTGliLmMNCisrKyBiL01k ZU1vZHVsZVBrZy9MaWJyYXJ5L0R4ZUNvcmVQZXJmb3JtYW5jZUxpYi9EeGVDb3JlUGVyZm9ybWFu Y2VMaWIuYw0KQEAgLTUzNSw3ICs1MzUsNyBAQCBEeGVDb3JlUGVyZm9ybWFuY2VMaWJDb25zdHJ1 Y3RvciAoDQoNCiAgIEludGVybmFsR2V0UGVpUGVyZm9ybWFuY2UgKCk7DQoNCi0gIFN0YXR1cyA9 IEVmaUdldFN5c3RlbUNvbmZpZ3VyYXRpb25UYWJsZSAoJmdQZXJmb3JtYW5jZVByb3RvY29sR3Vp ZCwgJlBlcmZvcm1hbmNlUHJvcGVydHkpOw0KKyAgU3RhdHVzID0gRWZpR2V0U3lzdGVtQ29uZmln dXJhdGlvblRhYmxlICgmZ1BlcmZvcm1hbmNlUHJvdG9jb2xHdWlkLA0KKFZPSUQgKiopJlBlcmZv cm1hbmNlUHJvcGVydHkpOw0KICAgaWYgKEVGSV9FUlJPUiAoU3RhdHVzKSkgew0KICAgICAvLw0K ICAgICAvLyBJbnN0YWxsIGNvbmZpZ3VyYXRpb24gdGFibGUgZm9yIHBlcmZvcm1hbmNlIHByb3Bl cnR5Lg0KDQoNClRoYW5rcywNCkFyZCwNCg0KDQo+DQo+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2Ut LS0tLQ0KPj4gRnJvbTogZWRrMi1kZXZlbCBbbWFpbHRvOmVkazItZGV2ZWwtYm91bmNlc0BsaXN0 cy4wMS5vcmddIE9uIEJlaGFsZiANCj4+IE9mIE1pY2hhZWwgS2lubmV5DQo+PiBTZW50OiBGcmlk YXksIEZlYnJ1YXJ5IDMsIDIwMTcgMTI6NTYgUE0NCj4+IFRvOiBlZGsyLWRldmVsQGxpc3RzLjAx Lm9yZw0KPj4gQ2M6IEFuZHJldyBGaXNoIDxhZmlzaEBhcHBsZS5jb20+OyBHYW8sIExpbWluZyAN Cj4+IDxsaW1pbmcuZ2FvQGludGVsLmNvbT47IFlhbywgSmlld2VuIDxqaWV3ZW4ueWFvQGludGVs LmNvbT47IENhcnNleSwgDQo+PiBKYWJlbiA8amFiZW4uY2Fyc2V5QGludGVsLmNvbT47IFplbmcs IFN0YXIgPHN0YXIuemVuZ0BpbnRlbC5jb20+DQo+PiBTdWJqZWN0OiBbZWRrMl0gW1BBVENIIHY0 IDEvM10gTWRlTW9kdWxlUGtnOiBBZGQgcGVyZm9ybWFuY2UgcHJvcGVydHkgDQo+PiBjb25maWd1 cmF0aW9uIHRhYmxlDQo+Pg0KPj4gRnJvbTogU3RhciBaZW5nIDxzdGFyLnplbmdAaW50ZWwuY29t Pg0KPj4NCj4+IERlZmluZSBQRVJGT1JNQU5DRV9QUk9QRVJUWSwgYW5kIGluc3RhbGwgcGVyZm9y bWFuY2UgcHJvcGVydHkgDQo+PiBjb25maWd1cmF0aW9uIHRhYmxlIGluIER4ZUNvcmVQZXJmb3Jt YW5jZUxpYiBhbmQgDQo+PiBTbW1Db3JlUGVyZm9ybWFuY2VMaWIuDQo+Pg0KPj4gQ2M6IEFuZHJl dyBGaXNoIDxhZmlzaEBhcHBsZS5jb20+DQo+PiBDYzogTWljaGFlbCBLaW5uZXkgPG1pY2hhZWwu ZC5raW5uZXlAaW50ZWwuY29tPg0KPj4gQ2M6IExpbWluZyBHYW8gPGxpbWluZy5nYW9AaW50ZWwu Y29tPg0KPj4gQ2M6IEppZXdlbiBZYW8gPGppZXdlbi55YW9AaW50ZWwuY29tPg0KPj4gQ2M6IENp bm5hbW9uIFNoaWEgPGNpbm5hbW9uLnNoaWFAaHBlLmNvbT4NCj4+IENjOiBKYWJlbiBDYXJzZXkg PGphYmVuLmNhcnNleUBpbnRlbC5jb20+DQo+PiBDb250cmlidXRlZC11bmRlcjogVGlhbm9Db3Jl IENvbnRyaWJ1dGlvbiBBZ3JlZW1lbnQgMS4wDQo+PiBTaWduZWQtb2ZmLWJ5OiBTdGFyIFplbmcg PHN0YXIuemVuZ0BpbnRlbC5jb20+DQo+PiAtLS0NCj4+ICBNZGVNb2R1bGVQa2cvSW5jbHVkZS9H dWlkL1BlcmZvcm1hbmNlLmggICAgICAgICAgICB8IDEyICsrKysrKysrKystDQo+PiAgLi4uL0R4 ZUNvcmVQZXJmb3JtYW5jZUxpYi9EeGVDb3JlUGVyZm9ybWFuY2VMaWIuYyAgfCAyMw0KPj4gKysr KysrKysrKysrKysrKysrKystLQ0KPj4gIC4uLi9EeGVDb3JlUGVyZm9ybWFuY2VMaWIuaW5mICAg ICAgICAgICAgICAgICAgICAgIHwgIDIgKysNCj4+ICAuLi4vRHhlQ29yZVBlcmZvcm1hbmNlTGli SW50ZXJuYWwuaCAgICAgICAgICAgICAgICB8ICAzICsrLQ0KPj4gIC4uLi9TbW1Db3JlUGVyZm9y bWFuY2VMaWIvU21tQ29yZVBlcmZvcm1hbmNlTGliLmMgIHwgMTgNCj4+ICsrKysrKysrKysrKysr KysrDQo+PiAgLi4uL1NtbUNvcmVQZXJmb3JtYW5jZUxpYi5pbmYgICAgICAgICAgICAgICAgICAg ICAgfCAgNSArKysrLQ0KPj4gIDYgZmlsZXMgY2hhbmdlZCwgNTggaW5zZXJ0aW9ucygrKSwgNSBk ZWxldGlvbnMoLSkNCj4+DQo+PiBkaWZmIC0tZ2l0IGEvTWRlTW9kdWxlUGtnL0luY2x1ZGUvR3Vp ZC9QZXJmb3JtYW5jZS5oDQo+PiBiL01kZU1vZHVsZVBrZy9JbmNsdWRlL0d1aWQvUGVyZm9ybWFu Y2UuaA0KPj4gaW5kZXggYzQwMDQ2Yy4uZGY0MGM2YyAxMDA2NDQNCj4+IC0tLSBhL01kZU1vZHVs ZVBrZy9JbmNsdWRlL0d1aWQvUGVyZm9ybWFuY2UuaA0KPj4gKysrIGIvTWRlTW9kdWxlUGtnL0lu Y2x1ZGUvR3VpZC9QZXJmb3JtYW5jZS5oDQo+PiBAQCAtNCw3ICs0LDcgQEANCj4+ICAgICogcGVy Zm9ybWFuY2UgcHJvdG9jb2wgaW50ZXJmYWNlcy4NCj4+ICAgICogcGVyZm9ybWFuY2UgdmFyaWFi bGVzLg0KPj4NCj4+IC1Db3B5cmlnaHQgKGMpIDIwMDkgLSAyMDEzLCBJbnRlbCBDb3Jwb3JhdGlv bi4gQWxsIHJpZ2h0cyANCj4+IHJlc2VydmVkLjxCUj4NCj4+ICtDb3B5cmlnaHQgKGMpIDIwMDkg LSAyMDE3LCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyANCj4+ICtyZXNlcnZlZC48QlI+ DQo+PiAgVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbGlj ZW5zZWQgYW5kIG1hZGUgDQo+PiBhdmFpbGFibGUgdW5kZXIgIHRoZSB0ZXJtcyBhbmQgY29uZGl0 aW9ucyBvZiB0aGUgQlNEIExpY2Vuc2UgdGhhdCANCj4+IGFjY29tcGFuaWVzIHRoaXMgZGlzdHJp YnV0aW9uLg0KPj4gIFRoZSBmdWxsIHRleHQgb2YgdGhlIGxpY2Vuc2UgbWF5IGJlIGZvdW5kIGF0 IEBAIC0xOCw2ICsxOCwxNiBAQCANCj4+IFdJVEhPVVQgV0FSUkFOVElFUyBPUiBSRVBSRVNFTlRB VElPTlMgT0YgQU5ZIEtJTkQsIEVJVEhFUiBFWFBSRVNTIE9SIA0KPj4gSU1QTElFRC4NCj4+ICAj aWZuZGVmIF9fUEVSRk9STUFOQ0VfREFUQV9IX18NCj4+ICAjZGVmaW5lIF9fUEVSRk9STUFOQ0Vf REFUQV9IX18NCj4+DQo+PiArI2RlZmluZSBQRVJGT1JNQU5DRV9QUk9QRVJUWV9SRVZJU0lPTiAw eDENCj4+ICsNCj4+ICt0eXBlZGVmIHN0cnVjdCB7DQo+PiArICBVSU5UMzIgICAgICAgICAgICAg ICAgUmV2aXNpb247DQo+PiArICBVSU5UMzIgICAgICAgICAgICAgICAgUmVzZXJ2ZWQ7DQo+PiAr ICBVSU5UNjQgICAgICAgICAgICAgICAgRnJlcXVlbmN5Ow0KPj4gKyAgVUlOVDY0ICAgICAgICAg ICAgICAgIFRpbWVyU3RhcnRWYWx1ZTsNCj4+ICsgIFVJTlQ2NCAgICAgICAgICAgICAgICBUaW1l ckVuZFZhbHVlOw0KPj4gK30gUEVSRk9STUFOQ0VfUFJPUEVSVFk7DQo+PiArDQo+PiAgLy8NCj4+ ICAvLyBQRUlfUEVSRk9STUFOQ0VfU1RSSU5HX1NJWkUgbXVzdCBiZSBhIG11bHRpcGxlIG9mIDgu DQo+PiAgLy8NCj4+IGRpZmYgLS1naXQNCj4+IGEvTWRlTW9kdWxlUGtnL0xpYnJhcnkvRHhlQ29y ZVBlcmZvcm1hbmNlTGliL0R4ZUNvcmVQZXJmb3JtYW5jZUxpYi5jDQo+PiBiL01kZU1vZHVsZVBr Zy9MaWJyYXJ5L0R4ZUNvcmVQZXJmb3JtYW5jZUxpYi9EeGVDb3JlUGVyZm9ybWFuY2VMaWIuYw0K Pj4gaW5kZXggNDczOWJiOC4uMTU2NDUxNCAxMDA2NDQNCj4+IC0tLQ0KPj4gYS9NZGVNb2R1bGVQ a2cvTGlicmFyeS9EeGVDb3JlUGVyZm9ybWFuY2VMaWIvRHhlQ29yZVBlcmZvcm1hbmNlTGliLmMN Cj4+ICsrKw0KPj4gYi9NZGVNb2R1bGVQa2cvTGlicmFyeS9EeGVDb3JlUGVyZm9ybWFuY2VMaWIv RHhlQ29yZVBlcmZvcm1hbmNlTGliLmMNCj4+IEBAIC0xMCw3ICsxMCw3IEBADQo+PiAgICBUaGlz IGxpYnJhcnkgaXMgbWFpbmx5IHVzZWQgYnkgRHhlQ29yZSB0byBzdGFydCBwZXJmb3JtYW5jZSAN Cj4+IGxvZ2dpbmcgdG8gZW5zdXJlIHRoYXQNCj4+ICAgIFBlcmZvcm1hbmNlIFByb3RvY29sIGlz IGluc3RhbGxlZCBhdCB0aGUgdmVyeSBiZWdpbm5pbmcgb2YgRFhFIHBoYXNlLg0KPj4NCj4+IC1D b3B5cmlnaHQgKGMpIDIwMDYgLSAyMDE2LCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyAN Cj4+IHJlc2VydmVkLjxCUj4NCj4+ICtDb3B5cmlnaHQgKGMpIDIwMDYgLSAyMDE3LCBJbnRlbCBD b3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyANCj4+ICtyZXNlcnZlZC48QlI+DQo+PiAgKEMpIENvcHly aWdodCAyMDE2IEhld2xldHQgUGFja2FyZCBFbnRlcnByaXNlIERldmVsb3BtZW50IExQPEJSPiAg DQo+PiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzICBhcmUgbGlj ZW5zZWQgYW5kIG1hZGUgDQo+PiBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIGFuZCBjb25kaXRp b25zIG9mIHRoZSBCU0QgTGljZW5zZSBAQCAtNjEsNiANCj4+ICs2MSw4IEBAIFBFUkZPUk1BTkNF X0VYX1BST1RPQ09MIG1QZXJmb3JtYW5jZUV4SW50ZXJmYWNlID0gew0KPj4gICAgR2V0R2F1Z2VF eA0KPj4gICAgfTsNCj4+DQo+PiArUEVSRk9STUFOQ0VfUFJPUEVSVFkgIG1QZXJmb3JtYW5jZVBy b3BlcnR5Ow0KPj4gKw0KPj4gIC8qKg0KPj4gICAgU2VhcmNoZXMgaW4gdGhlIGdhdWdlIGFycmF5 IHdpdGgga2V5d29yZCBIYW5kbGUsIFRva2VuLCBNb2R1bGUgYW5kIA0KPj4gSWRlbnRpZmllci4N Cj4+DQo+PiBAQCAtNTAyLDYgKzUwNCw4IEBAIER4ZUNvcmVQZXJmb3JtYW5jZUxpYkNvbnN0cnVj dG9yICgNCj4+ICAgICkNCj4+ICB7DQo+PiAgICBFRklfU1RBVFVTICAgICAgICAgICAgICAgIFN0 YXR1czsNCj4+ICsgIFBFUkZPUk1BTkNFX1BST1BFUlRZICAgICAgKlBlcmZvcm1hbmNlUHJvcGVy dHk7DQo+PiArDQo+Pg0KPj4gICAgaWYgKCFQZXJmb3JtYW5jZU1lYXN1cmVtZW50RW5hYmxlZCAo KSkgew0KPj4gICAgICAvLw0KPj4gQEAgLTUzMSw3ICs1MzUsMjIgQEAgRHhlQ29yZVBlcmZvcm1h bmNlTGliQ29uc3RydWN0b3IgKA0KPj4NCj4+ICAgIEludGVybmFsR2V0UGVpUGVyZm9ybWFuY2Ug KCk7DQo+Pg0KPj4gLSAgcmV0dXJuIFN0YXR1czsNCj4+ICsgIFN0YXR1cyA9IEVmaUdldFN5c3Rl bUNvbmZpZ3VyYXRpb25UYWJsZSANCj4+ICsgKCZnUGVyZm9ybWFuY2VQcm90b2NvbEd1aWQsDQo+ PiAmUGVyZm9ybWFuY2VQcm9wZXJ0eSk7DQo+PiArICBpZiAoRUZJX0VSUk9SIChTdGF0dXMpKSB7 DQo+PiArICAgIC8vDQo+PiArICAgIC8vIEluc3RhbGwgY29uZmlndXJhdGlvbiB0YWJsZSBmb3Ig cGVyZm9ybWFuY2UgcHJvcGVydHkuDQo+PiArICAgIC8vDQo+PiArICAgIG1QZXJmb3JtYW5jZVBy b3BlcnR5LlJldmlzaW9uICA9DQo+PiBQRVJGT1JNQU5DRV9QUk9QRVJUWV9SRVZJU0lPTjsNCj4+ ICsgICAgbVBlcmZvcm1hbmNlUHJvcGVydHkuUmVzZXJ2ZWQgID0gMDsNCj4+ICsgICAgbVBlcmZv cm1hbmNlUHJvcGVydHkuRnJlcXVlbmN5ID0gR2V0UGVyZm9ybWFuY2VDb3VudGVyUHJvcGVydGll cyANCj4+ICsgKA0KPj4gKw0KPj4gJm1QZXJmb3JtYW5jZVByb3BlcnR5LlRpbWVyU3RhcnRWYWx1 ZSwNCj4+ICsNCj4+ICZtUGVyZm9ybWFuY2VQcm9wZXJ0eS5UaW1lckVuZFZhbHVlDQo+PiArICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTsNCj4+ICsgICAgU3RhdHVzID0g Z0JTLT5JbnN0YWxsQ29uZmlndXJhdGlvblRhYmxlIA0KPj4gKyAoJmdQZXJmb3JtYW5jZVByb3Rv Y29sR3VpZCwNCj4+ICZtUGVyZm9ybWFuY2VQcm9wZXJ0eSk7DQo+PiArICAgIEFTU0VSVF9FRklf RVJST1IgKFN0YXR1cyk7DQo+PiArICB9DQo+PiArDQo+PiArICByZXR1cm4gRUZJX1NVQ0NFU1M7 DQo+PiAgfQ0KPj4NCj4+ICAvKioNCj4+IGRpZmYgLS1naXQNCj4+IGEvTWRlTW9kdWxlUGtnL0xp YnJhcnkvRHhlQ29yZVBlcmZvcm1hbmNlTGliL0R4ZUNvcmVQZXJmb3JtYW5jZUxpYi5pbg0KPj4g ZiANCj4+IGIvTWRlTW9kdWxlUGtnL0xpYnJhcnkvRHhlQ29yZVBlcmZvcm1hbmNlTGliL0R4ZUNv cmVQZXJmb3JtYW5jZUxpYi5pbg0KPj4gZg0KPj4gaW5kZXggZTA5MWM2Mi4uNWI4OWNlMiAxMDA2 NDQNCj4+IC0tLQ0KPj4gYS9NZGVNb2R1bGVQa2cvTGlicmFyeS9EeGVDb3JlUGVyZm9ybWFuY2VM aWIvRHhlQ29yZVBlcmZvcm1hbmNlTGliLmluDQo+PiBmDQo+PiArKysNCj4+IGIvTWRlTW9kdWxl UGtnL0xpYnJhcnkvRHhlQ29yZVBlcmZvcm1hbmNlTGliL0R4ZUNvcmVQZXJmb3JtYW5jZUxpYi5p bg0KPj4gZg0KPj4gQEAgLTU2LDExICs1NiwxMyBAQA0KPj4gICAgQmFzZUxpYg0KPj4gICAgSG9i TGliDQo+PiAgICBEZWJ1Z0xpYg0KPj4gKyAgVWVmaUxpYg0KPj4NCj4+DQo+PiAgW0d1aWRzXQ0K Pj4gICAgIyMgU09NRVRJTUVTX0NPTlNVTUVTICAgIyMgSE9CDQo+PiAgICAjIyBQUk9EVUNFUyAg ICAgICAgICAgICAjIyBVTkRFRklORUQgIyBJbnN0YWxsIHByb3RvY29sDQo+PiArICAjIyBQUk9E VUNFUyAgICAgICAgICAgICAjIyBTeXN0ZW1UYWJsZQ0KPj4gICAgZ1BlcmZvcm1hbmNlUHJvdG9j b2xHdWlkDQo+PiAgICAjIyBTT01FVElNRVNfQ09OU1VNRVMgICAjIyBIT0INCj4+ICAgICMjIFBS T0RVQ0VTICAgICAgICAgICAgICMjIFVOREVGSU5FRCAjIEluc3RhbGwgcHJvdG9jb2wNCj4+IGRp ZmYgLS1naXQNCj4+IGEvTWRlTW9kdWxlUGtnL0xpYnJhcnkvRHhlQ29yZVBlcmZvcm1hbmNlTGli L0R4ZUNvcmVQZXJmb3JtYW5jZUxpYkludA0KPj4gZXJuYWwuaA0KPj4gYi9NZGVNb2R1bGVQa2cv TGlicmFyeS9EeGVDb3JlUGVyZm9ybWFuY2VMaWIvRHhlQ29yZVBlcmZvcm1hbmNlTGliSW50DQo+ PiBlcm5hbC5oDQo+PiBpbmRleCAyYjljY2QyLi5mMTU0MGQ4IDEwMDY0NA0KPj4gLS0tDQo+PiBh L01kZU1vZHVsZVBrZy9MaWJyYXJ5L0R4ZUNvcmVQZXJmb3JtYW5jZUxpYi9EeGVDb3JlUGVyZm9y bWFuY2VMaWJJbnQNCj4+IGVybmFsLmgNCj4+ICsrKw0KPj4gYi9NZGVNb2R1bGVQa2cvTGlicmFy eS9EeGVDb3JlUGVyZm9ybWFuY2VMaWIvRHhlQ29yZVBlcmZvcm1hbmNlTGliSW50DQo+PiBlcm5h bC5oDQo+PiBAQCAtNCw3ICs0LDcgQEANCj4+ICAgIFRoaXMgaGVhZGVyIGZpbGUgaG9sZHMgdGhl IHByb3RvdHlwZXMgb2YgdGhlIFBlcmZvcm1hbmNlIGFuZCANCj4+IFBlcmZvcm1hbmNlRXggUHJv dG9jb2wgcHVibGlzaGVkIGJ5IHRoaXMNCj4+ICAgIGxpYnJhcnkgaW5zdGFuY2UgYXQgaXRzIGNv bnN0cnVjdG9yLg0KPj4NCj4+IC1Db3B5cmlnaHQgKGMpIDIwMDYgLSAyMDEyLCBJbnRlbCBDb3Jw b3JhdGlvbi4gQWxsIHJpZ2h0cyANCj4+IHJlc2VydmVkLjxCUj4NCj4+ICtDb3B5cmlnaHQgKGMp IDIwMDYgLSAyMDE3LCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyANCj4+ICtyZXNlcnZl ZC48QlI+DQo+PiAgVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyAg YXJlIGxpY2Vuc2VkIGFuZCBtYWRlIA0KPj4gYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBhbmQg Y29uZGl0aW9ucyBvZiB0aGUgQlNEIExpY2Vuc2UgIHdoaWNoIA0KPj4gYWNjb21wYW5pZXMgdGhp cyBkaXN0cmlidXRpb24uICBUaGUgZnVsbCB0ZXh0IG9mIHRoZSBsaWNlbnNlIG1heSBiZSANCj4+ IGZvdW5kIGF0IEBAIC0zMiw2ICszMiw3IEBAIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBSRVBSRVNF TlRBVElPTlMgT0YgDQo+PiBBTlkgS0lORCwgRUlUSEVSIEVYUFJFU1MgT1IgSU1QTElFRC4NCj4+ ICAjaW5jbHVkZSA8TGlicmFyeS9QY2RMaWIuaD4NCj4+ICAjaW5jbHVkZSA8TGlicmFyeS9VZWZp Qm9vdFNlcnZpY2VzVGFibGVMaWIuaD4NCj4+ICAjaW5jbHVkZSA8TGlicmFyeS9NZW1vcnlBbGxv Y2F0aW9uTGliLmg+DQo+PiArI2luY2x1ZGUgPExpYnJhcnkvVWVmaUxpYi5oPg0KPj4NCj4+ICAv Lw0KPj4gIC8vIEludGVyZmFjZSBkZWNsYXJhdGlvbnMgZm9yIFBlcmZvcm1hbmNlRXggUHJvdG9j b2wuDQo+PiBkaWZmIC0tZ2l0DQo+PiBhL01kZU1vZHVsZVBrZy9MaWJyYXJ5L1NtbUNvcmVQZXJm b3JtYW5jZUxpYi9TbW1Db3JlUGVyZm9ybWFuY2VMaWIuDQo+PiBjDQo+PiBiL01kZU1vZHVsZVBr Zy9MaWJyYXJ5L1NtbUNvcmVQZXJmb3JtYW5jZUxpYi9TbW1Db3JlUGVyZm9ybWFuY2VMaWIuDQo+ PiBjDQo+PiBpbmRleCA2ZjhkMmRkLi5hMDNhOGM4IDEwMDY0NA0KPj4gLS0tDQo+PiBhL01kZU1v ZHVsZVBrZy9MaWJyYXJ5L1NtbUNvcmVQZXJmb3JtYW5jZUxpYi9TbW1Db3JlUGVyZm9ybWFuY2VM aWIuDQo+PiBjDQo+PiArKysNCj4+IGIvTWRlTW9kdWxlUGtnL0xpYnJhcnkvU21tQ29yZVBlcmZv cm1hbmNlTGliL1NtbUNvcmVQZXJmb3JtYW5jZUxpYi4NCj4+IGMNCj4+IEBAIC02OSw2ICs2OSw4 IEBAIFBFUkZPUk1BTkNFX0VYX1BST1RPQ09MIG1QZXJmb3JtYW5jZUV4SW50ZXJmYWNlID0gew0K Pj4gICAgR2V0R2F1Z2VFeA0KPj4gIH07DQo+Pg0KPj4gK1BFUkZPUk1BTkNFX1BST1BFUlRZIG1Q ZXJmb3JtYW5jZVByb3BlcnR5Ow0KPj4gKw0KPj4gIC8qKg0KPj4gICAgU2VhcmNoZXMgaW4gdGhl IGdhdWdlIGFycmF5IHdpdGgga2V5d29yZCBIYW5kbGUsIFRva2VuLCBNb2R1bGUgYW5kIA0KPj4g SWRlbnRmaWVyLg0KPj4NCj4+IEBAIC02ODcsNiArNjg5LDcgQEAgSW5pdGlhbGl6ZVNtbUNvcmVQ ZXJmb3JtYW5jZUxpYiAoICB7DQo+PiAgICBFRklfU1RBVFVTICAgICAgICAgICAgICAgIFN0YXR1 czsNCj4+ICAgIEVGSV9IQU5ETEUgICAgICAgICAgICAgICAgSGFuZGxlOw0KPj4gKyAgUEVSRk9S TUFOQ0VfUFJPUEVSVFkgICAgICAqUGVyZm9ybWFuY2VQcm9wZXJ0eTsNCj4+DQo+PiAgICAvLw0K Pj4gICAgLy8gSW5pdGlhbGl6ZSBzcGluIGxvY2sNCj4+IEBAIC03MjUsNiArNzI4LDIxIEBAIElu aXRpYWxpemVTbW1Db3JlUGVyZm9ybWFuY2VMaWIgKA0KPj4gICAgQVNTRVJUX0VGSV9FUlJPUiAo U3RhdHVzKTsNCj4+ICAgIFN0YXR1cyA9IGdTbXN0LT5TbWlIYW5kbGVyUmVnaXN0ZXIgKFNtbVBl cmZvcm1hbmNlSGFuZGxlckV4LA0KPj4gJmdTbW1QZXJmb3JtYW5jZUV4UHJvdG9jb2xHdWlkLCAm SGFuZGxlKTsNCj4+ICAgIEFTU0VSVF9FRklfRVJST1IgKFN0YXR1cyk7DQo+PiArDQo+PiArICBT dGF0dXMgPSBFZmlHZXRTeXN0ZW1Db25maWd1cmF0aW9uVGFibGUgKCZnUGVyZm9ybWFuY2VQcm90 b2NvbEd1aWQsDQo+PiAmUGVyZm9ybWFuY2VQcm9wZXJ0eSk7DQo+PiArICBpZiAoRUZJX0VSUk9S IChTdGF0dXMpKSB7DQo+PiArICAgIC8vDQo+PiArICAgIC8vIEluc3RhbGwgY29uZmlndXJhdGlv biB0YWJsZSBmb3IgcGVyZm9ybWFuY2UgcHJvcGVydHkuDQo+PiArICAgIC8vDQo+PiArICAgIG1Q ZXJmb3JtYW5jZVByb3BlcnR5LlJldmlzaW9uICA9DQo+PiBQRVJGT1JNQU5DRV9QUk9QRVJUWV9S RVZJU0lPTjsNCj4+ICsgICAgbVBlcmZvcm1hbmNlUHJvcGVydHkuUmVzZXJ2ZWQgID0gMDsNCj4+ ICsgICAgbVBlcmZvcm1hbmNlUHJvcGVydHkuRnJlcXVlbmN5ID0gR2V0UGVyZm9ybWFuY2VDb3Vu dGVyUHJvcGVydGllcyAoDQo+PiArDQo+PiAmbVBlcmZvcm1hbmNlUHJvcGVydHkuVGltZXJTdGFy dFZhbHVlLA0KPj4gKw0KPj4gJm1QZXJmb3JtYW5jZVByb3BlcnR5LlRpbWVyRW5kVmFsdWUNCj4+ ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApOw0KPj4gKyAgICBTdGF0 dXMgPSBnQlMtPkluc3RhbGxDb25maWd1cmF0aW9uVGFibGUgKCZnUGVyZm9ybWFuY2VQcm90b2Nv bEd1aWQsDQo+PiAmbVBlcmZvcm1hbmNlUHJvcGVydHkpOw0KPj4gKyAgICBBU1NFUlRfRUZJX0VS Uk9SIChTdGF0dXMpOw0KPj4gKyAgfQ0KPj4gIH0NCj4+DQo+PiAgLyoqDQo+PiBkaWZmIC0tZ2l0 DQo+PiBhL01kZU1vZHVsZVBrZy9MaWJyYXJ5L1NtbUNvcmVQZXJmb3JtYW5jZUxpYi9TbW1Db3Jl UGVyZm9ybWFuY2VMaWIuaQ0KPj4gbmYNCj4+IGIvTWRlTW9kdWxlUGtnL0xpYnJhcnkvU21tQ29y ZVBlcmZvcm1hbmNlTGliL1NtbUNvcmVQZXJmb3JtYW5jZUxpYi5pDQo+PiBuZg0KPj4gaW5kZXgg MTYwYTc0OS4uMWIyZmJkMyAxMDA2NDQNCj4+IC0tLQ0KPj4gYS9NZGVNb2R1bGVQa2cvTGlicmFy eS9TbW1Db3JlUGVyZm9ybWFuY2VMaWIvU21tQ29yZVBlcmZvcm1hbmNlTGliLmkNCj4+IG5mDQo+ PiArKysNCj4+IGIvTWRlTW9kdWxlUGtnL0xpYnJhcnkvU21tQ29yZVBlcmZvcm1hbmNlTGliL1Nt bUNvcmVQZXJmb3JtYW5jZUxpYi5pDQo+PiBuZg0KPj4gQEAgLTgsNyArOCw3IEBADQo+PiAgIyAg VGhpcyBsaWJyYXJ5IGlzIG1haW5seSB1c2VkIGJ5IFNNTSBDb3JlIHRvIHN0YXJ0IHBlcmZvcm1h bmNlIGxvZ2dpbmcgdG8NCj4+IGVuc3VyZSB0aGF0DQo+PiAgIyAgU01NIFBlcmZvcm1hbmNlIGFu ZCBQZXJmb3JtYW5jZUV4IFByb3RvY29sIGFyZSBpbnN0YWxsZWQgYXQgdGhlIHZlcnkNCj4+IGJl Z2lubmluZyBvZiBTTU0gcGhhc2UuDQo+PiAgIw0KPj4gLSMgIENvcHlyaWdodCAoYykgMjAxMSAt IDIwMTUsIEludGVsIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLjxCUj4NCj4+ICsj ICBDb3B5cmlnaHQgKGMpIDIwMTEgLSAyMDE3LCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0 cyByZXNlcnZlZC48QlI+DQo+PiAgIyAgVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5n IG1hdGVyaWFscw0KPj4gICMgIGFyZSBsaWNlbnNlZCBhbmQgbWFkZSBhdmFpbGFibGUgdW5kZXIg dGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIG9mIHRoZSBCU0QNCj4+IExpY2Vuc2UNCj4+ICAjICB3 aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbi4gIFRoZSBmdWxsIHRleHQgb2YgdGhl IGxpY2Vuc2UgbWF5IGJlDQo+PiBmb3VuZCBhdA0KPj4gQEAgLTU3LDYgKzU3LDcgQEANCj4+ICAg IFN5bmNocm9uaXphdGlvbkxpYg0KPj4gICAgU21tU2VydmljZXNUYWJsZUxpYg0KPj4gICAgU21t TWVtTGliDQo+PiArICBVZWZpTGliDQo+Pg0KPj4gIFtQcm90b2NvbHNdDQo+PiAgICBnRWZpU21t QmFzZTJQcm90b2NvbEd1aWQgICAgICAgICAgICAgICAgICAjIyBDT05TVU1FUw0KPj4gQEAgLTY4 LDYgKzY5LDggQEANCj4+ICAgICMjIFBST0RVQ0VTICMjIFVOREVGSU5FRCAjIEluc3RhbGwgcHJv dG9jb2wNCj4+ICAgICMjIENPTlNVTUVTICMjIFVOREVGSU5FRCAjIFNtaUhhbmRsZXJSZWdpc3Rl cg0KPj4gICAgZ1NtbVBlcmZvcm1hbmNlRXhQcm90b2NvbEd1aWQNCj4+ICsgICMjIFBST0RVQ0VT ICMjIFN5c3RlbVRhYmxlDQo+PiArICBnUGVyZm9ybWFuY2VQcm90b2NvbEd1aWQNCj4+DQo+PiAg W1BjZF0NCj4+ICAgIGdFZmlNZGVQa2dUb2tlblNwYWNlR3VpZC5QY2RQZXJmb3JtYW5jZUxpYnJh cnlQcm9wZXJ0eU1hc2sgICAgIyMNCj4+IENPTlNVTUVTDQo+PiAtLQ0KPj4gMi42LjMud2luZG93 cy4xDQo+Pg0KPj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18NCj4+IGVkazItZGV2ZWwgbWFpbGluZyBsaXN0DQo+PiBlZGsyLWRldmVsQGxpc3RzLjAxLm9y Zw0KPj4gaHR0cHM6Ly9saXN0cy4wMS5vcmcvbWFpbG1hbi9saXN0aW5mby9lZGsyLWRldmVsDQo+ IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fDQo+IGVkazIt ZGV2ZWwgbWFpbGluZyBsaXN0DQo+IGVkazItZGV2ZWxAbGlzdHMuMDEub3JnDQo+IGh0dHBzOi8v bGlzdHMuMDEub3JnL21haWxtYW4vbGlzdGluZm8vZWRrMi1kZXZlbA0K