From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) (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 B5A8F8033C for ; Sun, 12 Mar 2017 19:24:26 -0700 (PDT) Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga105.fm.intel.com with ESMTP; 12 Mar 2017 19:24:26 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.36,156,1486454400"; d="scan'208";a="833835346" Received: from fmsmsx103.amr.corp.intel.com ([10.18.124.201]) by FMSMGA003.fm.intel.com with ESMTP; 12 Mar 2017 19:24:26 -0700 Received: from fmsmsx151.amr.corp.intel.com (10.18.125.4) by FMSMSX103.amr.corp.intel.com (10.18.124.201) with Microsoft SMTP Server (TLS) id 14.3.248.2; Sun, 12 Mar 2017 19:24:25 -0700 Received: from shsmsx102.ccr.corp.intel.com (10.239.4.154) by FMSMSX151.amr.corp.intel.com (10.18.125.4) with Microsoft SMTP Server (TLS) id 14.3.248.2; Sun, 12 Mar 2017 19:24:25 -0700 Received: from shsmsx104.ccr.corp.intel.com ([169.254.5.59]) by shsmsx102.ccr.corp.intel.com ([169.254.2.88]) with mapi id 14.03.0248.002; Mon, 13 Mar 2017 10:24:22 +0800 From: "Ni, Ruiyu" To: "Wang, Sunny (HPS SW)" , "edk2-devel@lists.01.org" CC: "Tian, Feng" , "Haskell, Darrell" Thread-Topic: [edk2] [PATCH] MdeModulePkg/UefiBootManagerLib: Generate boot description for NVME Thread-Index: AQHSmXQPRKK416/dcUGrFSMNAtQyzKGNVESAgAS5ulA= Date: Mon, 13 Mar 2017 02:24:23 +0000 Message-ID: <734D49CCEBEEF84792F5B80ED585239D5B8C88CB@SHSMSX104.ccr.corp.intel.com> References: <20170310075759.79780-1-ruiyu.ni@intel.com> In-Reply-To: Accept-Language: en-US, zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Subject: Re: [PATCH] MdeModulePkg/UefiBootManagerLib: Generate boot description for NVME 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: Mon, 13 Mar 2017 02:24:26 -0000 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SSBkaWRuJ3QgZmluZCB0aGlzIGxpYnJhcnkgaW4gRURLSUkuDQpXaGVuIEkgZmlyc3RseSBzYXcg eW91ciBjb21tZW50cywgSSB3YXMgYSBsaXR0bGUgYml0IHVud2lsbGluZyB0byBjaGFuZ2UNClVl ZmlCb290TWFuYWdlckxpYiB0byBkZXBlbmQgb24gVWVmaU52bUV4cHJlc3NMaWIuIEJlY2F1c2Ug aXQgd291bGQNCnJlcXVpcmUgYWxsIHBsYXRmb3JtcyB0byBpbmNsdWRlIFVlZmlOdm1FeHByZXNz TGliIGluIERTQy4NCkJ1dCBzaW5jZSBub3cgSSBmaW5kIG5vIHN1Y2ggbGlicmFyeSwgSSBmZWVs IG11Y2ggYmV0dGVy8J+Yig0KDQpUaGFua3MvUmF5DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdl LS0tLS0NCj4gRnJvbTogZWRrMi1kZXZlbCBbbWFpbHRvOmVkazItZGV2ZWwtYm91bmNlc0BsaXN0 cy4wMS5vcmddIE9uIEJlaGFsZiBPZg0KPiBXYW5nLCBTdW5ueSAoSFBTIFNXKQ0KPiBTZW50OiBG cmlkYXksIE1hcmNoIDEwLCAyMDE3IDY6MTEgUE0NCj4gVG86IE5pLCBSdWl5dSA8cnVpeXUubmlA aW50ZWwuY29tPjsgZWRrMi1kZXZlbEBsaXN0cy4wMS5vcmcNCj4gQ2M6IFRpYW4sIEZlbmcgPGZl bmcudGlhbkBpbnRlbC5jb20+OyBIYXNrZWxsLCBEYXJyZWxsDQo+IDxkYXJyZWxsLmhhc2tlbGxA aHBlLmNvbT4NCj4gU3ViamVjdDogUmU6IFtlZGsyXSBbUEFUQ0hdIE1kZU1vZHVsZVBrZy9VZWZp Qm9vdE1hbmFnZXJMaWI6DQo+IEdlbmVyYXRlIGJvb3QgZGVzY3JpcHRpb24gZm9yIE5WTUUNCj4g DQo+IEhpIFJheSwNCj4gSnVzdCBhIHF1ZXN0aW9uIG91dCBvZiBjdXJpb3NpdHkuIFdoeSBkb24n dCB3ZSB1c2UgVWVmaU52bUV4cHJlc3NMaWIncw0KPiBOdm1FeHByZXNzSWRlbnRpZnkoKSBmb3Ig c2VuZGluZyBBRE1JTl9JREVOVElGWSBjb21tYW5kIHRvIE5WTUUNCj4gY29udHJvbGxlcj8NCj4g T3RoZXJzIGxvb2sgZ29vZCB0byBtZS4NCj4gDQo+IFJlZ2FyZHMsDQo+IFN1bm55IFdhbmcNCj4g DQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IGVkazItZGV2ZWwgW21haWx0 bzplZGsyLWRldmVsLWJvdW5jZXNAbGlzdHMuMDEub3JnXSBPbiBCZWhhbGYgT2YNCj4gUnVpeXUg TmkNCj4gU2VudDogRnJpZGF5LCBNYXJjaCAxMCwgMjAxNyAzOjU4IFBNDQo+IFRvOiBlZGsyLWRl dmVsQGxpc3RzLjAxLm9yZw0KPiBDYzogRmVuZyBUaWFuIDxmZW5nLnRpYW5AaW50ZWwuY29tPg0K PiBTdWJqZWN0OiBbZWRrMl0gW1BBVENIXSBNZGVNb2R1bGVQa2cvVWVmaUJvb3RNYW5hZ2VyTGli OiBHZW5lcmF0ZQ0KPiBib290IGRlc2NyaXB0aW9uIGZvciBOVk1FDQo+IA0KPiBDb250cmlidXRl ZC11bmRlcjogVGlhbm9Db3JlIENvbnRyaWJ1dGlvbiBBZ3JlZW1lbnQgMS4wDQo+IFNpZ25lZC1v ZmYtYnk6IFJ1aXl1IE5pIDxydWl5dS5uaUBpbnRlbC5jb20+DQo+IENjOiBGZW5nIFRpYW4gPGZl bmcudGlhbkBpbnRlbC5jb20+DQo+IC0tLQ0KPiAgLi4uL0xpYnJhcnkvVWVmaUJvb3RNYW5hZ2Vy TGliL0JtQm9vdERlc2NyaXB0aW9uLmMgfCAxMDQNCj4gKysrKysrKysrKysrKysrKysrKystDQo+ ICAuLi4vTGlicmFyeS9VZWZpQm9vdE1hbmFnZXJMaWIvSW50ZXJuYWxCbS5oICAgICAgICB8ICAg NCArLQ0KPiAgLi4uL1VlZmlCb290TWFuYWdlckxpYi9VZWZpQm9vdE1hbmFnZXJMaWIuaW5mICAg ICAgfCAgIDEgKw0KPiAgMyBmaWxlcyBjaGFuZ2VkLCAxMDcgaW5zZXJ0aW9ucygrKSwgMiBkZWxl dGlvbnMoLSkNCj4gDQo+IGRpZmYgLS1naXQNCj4gYS9NZGVNb2R1bGVQa2cvTGlicmFyeS9VZWZp Qm9vdE1hbmFnZXJMaWIvQm1Cb290RGVzY3JpcHRpb24uYw0KPiBiL01kZU1vZHVsZVBrZy9MaWJy YXJ5L1VlZmlCb290TWFuYWdlckxpYi9CbUJvb3REZXNjcmlwdGlvbi5jDQo+IGluZGV4IDA1MDY0 N2QuLjUwMWEwY2MgMTAwNjQ0DQo+IC0tLSBhL01kZU1vZHVsZVBrZy9MaWJyYXJ5L1VlZmlCb290 TWFuYWdlckxpYi9CbUJvb3REZXNjcmlwdGlvbi5jDQo+ICsrKyBiL01kZU1vZHVsZVBrZy9MaWJy YXJ5L1VlZmlCb290TWFuYWdlckxpYi9CbUJvb3REZXNjcmlwdGlvbi5jDQo+IEBAIC0xLDcgKzEs NyBAQA0KPiAgLyoqIEBmaWxlDQo+ICAgIExpYnJhcnkgZnVuY3Rpb25zIHdoaWNoIHJlbGF0ZSB3 aXRoIGJvb3Qgb3B0aW9uIGRlc2NyaXB0aW9uLg0KPiANCj4gLUNvcHlyaWdodCAoYykgMjAxMSAt IDIwMTYsIEludGVsIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLjxCUj4NCj4gK0Nv cHlyaWdodCAoYykgMjAxMSAtIDIwMTcsIEludGVsIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJl c2VydmVkLjxCUj4NCj4gIChDKSBDb3B5cmlnaHQgMjAxNSBIZXdsZXR0IFBhY2thcmQgRW50ZXJw cmlzZSBEZXZlbG9wbWVudCBMUDxCUj4gIFRoaXMNCj4gcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFu eWluZyBtYXRlcmlhbHMgIGFyZSBsaWNlbnNlZCBhbmQgbWFkZSBhdmFpbGFibGUNCj4gdW5kZXIg dGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIG9mIHRoZSBCU0QgTGljZW5zZSBAQCAtNTAxLDYgKzUw MSwxMDcgQEANCj4gQm1HZXRMb2FkRmlsZURlc2NyaXB0aW9uICggIH0NCj4gDQo+ICAvKioNCj4g KyAgUmV0dXJuIHRoZSBib290IGRlc2NyaXB0aW9uIGZvciBOVk1FIGJvb3QgZGV2aWNlLg0KPiAr DQo+ICsgIEBwYXJhbSBIYW5kbGUgICAgICAgICAgICAgICAgQ29udHJvbGxlciBoYW5kbGUuDQo+ ICsNCj4gKyAgQHJldHVybiAgVGhlIGRlc2NyaXB0aW9uIHN0cmluZy4NCj4gKyoqLw0KPiArQ0hB UjE2ICoNCj4gK0JtR2V0TnZtZURlc2NyaXB0aW9uICgNCj4gKyAgSU4gRUZJX0hBTkRMRSAgICAg ICAgICAgICAgICAgICAgICBIYW5kbGUNCj4gKyAgKQ0KPiArew0KPiArICBFRklfU1RBVFVTICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0YXR1czsNCj4gKyAgRUZJX05WTV9FWFBSRVNT X1BBU1NfVEhSVV9QUk9UT0NPTCAgICAgICAqTnZtZVBhc3N0aHJ1Ow0KPiArICBFRklfREVWX1BB VEhfUFRSICAgICAgICAgICAgICAgICAgICAgICAgIERldmljZVBhdGg7DQo+ICsgIEVGSV9OVk1f RVhQUkVTU19QQVNTX1RIUlVfQ09NTUFORF9QQUNLRVQgQ29tbWFuZFBhY2tldDsNCj4gKyAgRUZJ X05WTV9FWFBSRVNTX0NPTU1BTkQgICAgICAgICAgICAgICAgICBDb21tYW5kOw0KPiArICBFRklf TlZNX0VYUFJFU1NfQ09NUExFVElPTiAgICAgICAgICAgICAgIENvbXBsZXRpb247DQo+ICsgIE5W TUVfQURNSU5fQ09OVFJPTExFUl9EQVRBICAgICAgICAgICAgICAgQ29udHJvbGxlckRhdGE7DQo+ ICsgIENIQVIxNiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKkRlc2NyaXB0aW9u Ow0KPiArICBDSEFSMTYgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpDaGFyOw0K PiArICBVSU5UTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEluZGV4Ow0KPiAr DQo+ICsgIFN0YXR1cyA9IGdCUy0+SGFuZGxlUHJvdG9jb2wgKEhhbmRsZSwgJmdFZmlEZXZpY2VQ YXRoUHJvdG9jb2xHdWlkLA0KPiArIChWT0lEICoqKSAmRGV2aWNlUGF0aC5EZXZQYXRoKTsgIGlm IChFRklfRVJST1IgKFN0YXR1cykpIHsNCj4gKyAgICByZXR1cm4gTlVMTDsNCj4gKyAgfQ0KPiAr DQo+ICsgIFN0YXR1cyA9IGdCUy0+TG9jYXRlRGV2aWNlUGF0aCAoJmdFZmlOdm1FeHByZXNzUGFz c1RocnVQcm90b2NvbEd1aWQsDQo+ICsgJkRldmljZVBhdGguRGV2UGF0aCwgJkhhbmRsZSk7ICBp ZiAoRUZJX0VSUk9SIChTdGF0dXMpIHx8DQo+ICsgICAgICAoRGV2aWNlUGF0aFR5cGUgKERldmlj ZVBhdGguRGV2UGF0aCkgIT0gTUVTU0FHSU5HX0RFVklDRV9QQVRIKQ0KPiB8fA0KPiArICAgICAg KERldmljZVBhdGhTdWJUeXBlIChEZXZpY2VQYXRoLkRldlBhdGgpICE9DQo+IE1TR19OVk1FX05B TUVTUEFDRV9EUCkpIHsNCj4gKyAgICAvLw0KPiArICAgIC8vIERvIG5vdCByZXR1cm4gZGVzY3Jp cHRpb24gd2hlbiB0aGUgSGFuZGxlIGlzIG5vdCBhIGNoaWxkIG9mIE5WTUUNCj4gY29udHJvbGxl ci4NCj4gKyAgICAvLw0KPiArICAgIHJldHVybiBOVUxMOw0KPiArICB9DQo+ICsNCj4gKyAgLy8N Cj4gKyAgLy8gU2VuZCBBRE1JTl9JREVOVElGWSBjb21tYW5kIHRvIE5WTUUgY29udHJvbGxlciB0 byBnZXQgdGhlIG1vZGVsDQo+IGFuZCBzZXJpYWwgbnVtYmVyLg0KPiArICAvLw0KPiArICBTdGF0 dXMgPSBnQlMtPkhhbmRsZVByb3RvY29sIChIYW5kbGUsDQo+ICsgJmdFZmlOdm1FeHByZXNzUGFz c1RocnVQcm90b2NvbEd1aWQsIChWT0lEICoqKSAmTnZtZVBhc3N0aHJ1KTsNCj4gKyBBU1NFUlRf RUZJX0VSUk9SIChTdGF0dXMpOw0KPiArDQo+ICsgIFplcm9NZW0gKCZDb21tYW5kUGFja2V0LA0K PiArIHNpemVvZihFRklfTlZNX0VYUFJFU1NfUEFTU19USFJVX0NPTU1BTkRfUEFDS0VUKSk7DQo+ ICsgIFplcm9NZW0gKCZDb21tYW5kLCBzaXplb2YoRUZJX05WTV9FWFBSRVNTX0NPTU1BTkQpKTsN Cj4gWmVyb01lbQ0KPiArICgmQ29tcGxldGlvbiwgc2l6ZW9mKEVGSV9OVk1fRVhQUkVTU19DT01Q TEVUSU9OKSk7DQo+ICsNCj4gKyAgQ29tbWFuZC5DZHcwLk9wY29kZSA9IE5WTUVfQURNSU5fSURF TlRJRllfQ01EOyAgLy8gIC8vDQo+IEFjY29yZGluZyB0bw0KPiArIE52bSBFeHByZXNzIDEuMSBz cGVjIEZpZ3VyZSAzOCwgV2hlbiBub3QgdXNlZCwgdGhlIGZpZWxkIHNoYWxsIGJlIGNsZWFyZWQN Cj4gdG8gMGguDQo+ICsgIC8vIEZvciB0aGUgSWRlbnRpZnkgY29tbWFuZCwgdGhlIE5hbWVzcGFj ZSBJZGVudGlmaWVyIGlzIG9ubHkgdXNlZCBmb3IgdGhlDQo+IE5hbWVzcGFjZSBkYXRhIHN0cnVj dHVyZS4NCj4gKyAgLy8NCj4gKyAgQ29tbWFuZC5Oc2lkICAgICAgICA9IDA7DQo+ICsgIENvbW1h bmRQYWNrZXQuTnZtZUNtZCAgICAgICAgPSAmQ29tbWFuZDsNCj4gKyAgQ29tbWFuZFBhY2tldC5O dm1lQ29tcGxldGlvbiA9ICZDb21wbGV0aW9uOw0KPiArIENvbW1hbmRQYWNrZXQuVHJhbnNmZXJC dWZmZXIgPSAmQ29udHJvbGxlckRhdGE7DQo+ICsgQ29tbWFuZFBhY2tldC5UcmFuc2Zlckxlbmd0 aCA9IHNpemVvZiAoQ29udHJvbGxlckRhdGEpOw0KPiArIENvbW1hbmRQYWNrZXQuQ29tbWFuZFRp bWVvdXQgPSBFRklfVElNRVJfUEVSSU9EX1NFQ09ORFMgKDUpOw0KPiArICBDb21tYW5kUGFja2V0 LlF1ZXVlVHlwZSAgICAgID0gTlZNRV9BRE1JTl9RVUVVRTsNCj4gKyAgLy8NCj4gKyAgLy8gU2V0 IGJpdCAwIChDbnMgYml0KSB0byAxIHRvIGlkZW50aWZ5IGEgY29udHJvbGxlciAgLy8NCj4gKyAg Q29tbWFuZC5DZHcxMCAgICAgICAgICAgICAgICA9IDE7DQo+ICsgIENvbW1hbmQuRmxhZ3MgICAg ICAgICAgICAgICAgPSBDRFcxMF9WQUxJRDsNCj4gKw0KPiArICBTdGF0dXMgPSBOdm1lUGFzc3Ro cnUtPlBhc3NUaHJ1ICgNCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOdm1lUGFz c3RocnUsDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwNCj4gKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAmQ29tbWFuZFBhY2tldCwNCj4gKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBOVUxMDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg KTsNCj4gKyAgaWYgKEVGSV9FUlJPUiAoU3RhdHVzKSkgew0KPiArICAgIHJldHVybiBOVUxMOw0K PiArICB9DQo+ICsNCj4gKyAgRGVzY3JpcHRpb24gPSBBbGxvY2F0ZVplcm9Qb29sICgNCj4gKyAg ICAgICAgICAgICAgICAgIChBUlJBWV9TSVpFIChDb250cm9sbGVyRGF0YS5NbikgKyAxDQo+ICsg ICAgICAgICAgICAgICAgICAgKyBBUlJBWV9TSVpFIChDb250cm9sbGVyRGF0YS5TbikgKyAxDQo+ ICsgICAgICAgICAgICAgICAgICAgKyBNQVhJTVVNX1ZBTFVFX0NIQVJBQ1RFUlMgKyAxDQo+ICsg ICAgICAgICAgICAgICAgICAgKSAqIHNpemVvZiAoQ0hBUjE2KSk7ICBpZiAoRGVzY3JpcHRpb24g IT0gTlVMTCkgew0KPiArICAgIENoYXIgPSBEZXNjcmlwdGlvbjsNCj4gKyAgICBmb3IgKEluZGV4 ID0gMDsgSW5kZXggPCBBUlJBWV9TSVpFIChDb250cm9sbGVyRGF0YS5Nbik7IEluZGV4KyspIHsN Cj4gKyAgICAgICooQ2hhcisrKSA9IChDSEFSMTYpIENvbnRyb2xsZXJEYXRhLk1uW0luZGV4XTsN Cj4gKyAgICB9DQo+ICsgICAgKihDaGFyKyspID0gTCcgJzsNCj4gKyAgICBmb3IgKEluZGV4ID0g MDsgSW5kZXggPCBBUlJBWV9TSVpFIChDb250cm9sbGVyRGF0YS5Tbik7IEluZGV4KyspIHsNCj4g KyAgICAgICooQ2hhcisrKSA9IChDSEFSMTYpIENvbnRyb2xsZXJEYXRhLlNuW0luZGV4XTsNCj4g KyAgICB9DQo+ICsgICAgKihDaGFyKyspID0gTCcgJzsNCj4gKyAgICBVbmljb2RlVmFsdWVUb1N0 cmluZ1MgKA0KPiArICAgICAgQ2hhciwgc2l6ZW9mIChDSEFSMTYpICogKE1BWElNVU1fVkFMVUVf Q0hBUkFDVEVSUyArIDEpLA0KPiArICAgICAgMCwgRGV2aWNlUGF0aC5Odm1lTmFtZXNwYWNlLT5O YW1lc3BhY2VJZCwgMA0KPiArICAgICAgKTsNCj4gKyAgICBCbUVsaW1pbmF0ZUV4dHJhU3BhY2Vz IChEZXNjcmlwdGlvbik7ICB9DQo+ICsNCj4gKyAgcmV0dXJuIERlc2NyaXB0aW9uOw0KPiArfQ0K PiArDQo+ICsvKioNCj4gICAgUmV0dXJuIHRoZSBib290IGRlc2NyaXB0aW9uIGZvciB0aGUgY29u dHJvbGxlciBiYXNlZCBvbiB0aGUgdHlwZS4NCj4gDQo+ICAgIEBwYXJhbSBIYW5kbGUgICAgICAg ICAgICAgICAgQ29udHJvbGxlciBoYW5kbGUuDQo+IEBAIC02MDYsNiArNzA3LDcgQEAgQk1fR0VU X0JPT1RfREVTQ1JJUFRJT04NCj4gbUJtQm9vdERlc2NyaXB0aW9uSGFuZGxlcnNbXSA9IHsNCj4g ICAgQm1HZXREZXNjcmlwdGlvbkZyb21EaXNrSW5mbywNCj4gICAgQm1HZXROZXR3b3JrRGVzY3Jp cHRpb24sDQo+ICAgIEJtR2V0TG9hZEZpbGVEZXNjcmlwdGlvbiwNCj4gKyAgQm1HZXROdm1lRGVz Y3JpcHRpb24sDQo+ICAgIEJtR2V0TWlzY0Rlc2NyaXB0aW9uDQo+ICB9Ow0KPiANCj4gZGlmZiAt LWdpdCBhL01kZU1vZHVsZVBrZy9MaWJyYXJ5L1VlZmlCb290TWFuYWdlckxpYi9JbnRlcm5hbEJt LmgNCj4gYi9NZGVNb2R1bGVQa2cvTGlicmFyeS9VZWZpQm9vdE1hbmFnZXJMaWIvSW50ZXJuYWxC bS5oDQo+IGluZGV4IDQ0NGQ0YTUuLjhkNzIxNWEgMTAwNjQ0DQo+IC0tLSBhL01kZU1vZHVsZVBr Zy9MaWJyYXJ5L1VlZmlCb290TWFuYWdlckxpYi9JbnRlcm5hbEJtLmgNCj4gKysrIGIvTWRlTW9k dWxlUGtnL0xpYnJhcnkvVWVmaUJvb3RNYW5hZ2VyTGliL0ludGVybmFsQm0uaA0KPiBAQCAtMSw3 ICsxLDcgQEANCj4gIC8qKiBAZmlsZQ0KPiAgICBCRFMgbGlicmFyeSBkZWZpbml0aW9uLCBpbmNs dWRlIHRoZSBmaWxlIGFuZCBkYXRhIHN0cnVjdHVyZQ0KPiANCj4gLUNvcHlyaWdodCAoYykgMjAw NCAtIDIwMTYsIEludGVsIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLjxCUj4NCj4g K0NvcHlyaWdodCAoYykgMjAwNCAtIDIwMTcsIEludGVsIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRz IHJlc2VydmVkLjxCUj4NCj4gIChDKSBDb3B5cmlnaHQgMjAxNSBIZXdsZXR0IFBhY2thcmQgRW50 ZXJwcmlzZSBEZXZlbG9wbWVudCBMUDxCUj4gIFRoaXMNCj4gcHJvZ3JhbSBhbmQgdGhlIGFjY29t cGFueWluZyBtYXRlcmlhbHMgIGFyZSBsaWNlbnNlZCBhbmQgbWFkZSBhdmFpbGFibGUNCj4gdW5k ZXIgdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIG9mIHRoZSBCU0QgTGljZW5zZSBAQCAtMjIsNiAr MjIsNyBAQA0KPiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgUkVQUkVTRU5UQVRJT05TIE9GIEFOWSBL SU5ELCBFSVRIRVINCj4gRVhQUkVTUyBPUiBJTVBMSUVELg0KPiAgI2luY2x1ZGUgPEluZHVzdHJ5 U3RhbmRhcmQvUGVJbWFnZS5oPg0KPiAgI2luY2x1ZGUgPEluZHVzdHJ5U3RhbmRhcmQvQXRhcGku aD4NCj4gICNpbmNsdWRlIDxJbmR1c3RyeVN0YW5kYXJkL1Njc2kuaD4NCj4gKyNpbmNsdWRlIDxJ bmR1c3RyeVN0YW5kYXJkL052bWUuaD4NCj4gDQo+ICAjaW5jbHVkZSA8UHJvdG9jb2wvUGNpUm9v dEJyaWRnZUlvLmg+DQo+ICAjaW5jbHVkZSA8UHJvdG9jb2wvQmxvY2tJby5oPg0KPiBAQCAtMzgs NiArMzksNyBAQCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgUkVQUkVTRU5UQVRJT05TIE9GIEFOWQ0K PiBLSU5ELCBFSVRIRVIgRVhQUkVTUyBPUiBJTVBMSUVELg0KPiAgI2luY2x1ZGUgPFByb3RvY29s L0dyYXBoaWNzT3V0cHV0Lmg+DQo+ICAjaW5jbHVkZSA8UHJvdG9jb2wvVXNiSW8uaD4NCj4gICNp bmNsdWRlIDxQcm90b2NvbC9EaXNrSW5mby5oPg0KPiArI2luY2x1ZGUgPFByb3RvY29sL052bUV4 cHJlc3NQYXNzdGhydS5oPg0KPiAgI2luY2x1ZGUgPFByb3RvY29sL0lkZUNvbnRyb2xsZXJJbml0 Lmg+ICAjaW5jbHVkZSA8UHJvdG9jb2wvQm9vdExvZ28uaD4NCj4gI2luY2x1ZGUgPFByb3RvY29s L0RyaXZlckhlYWx0aC5oPiBkaWZmIC0tZ2l0DQo+IGEvTWRlTW9kdWxlUGtnL0xpYnJhcnkvVWVm aUJvb3RNYW5hZ2VyTGliL1VlZmlCb290TWFuYWdlckxpYi5pbmYNCj4gYi9NZGVNb2R1bGVQa2cv TGlicmFyeS9VZWZpQm9vdE1hbmFnZXJMaWIvVWVmaUJvb3RNYW5hZ2VyTGliLmluZg0KPiBpbmRl eCA2NDQyZjIyLi4yNjRkNzI2IDEwMDY0NA0KPiAtLS0gYS9NZGVNb2R1bGVQa2cvTGlicmFyeS9V ZWZpQm9vdE1hbmFnZXJMaWIvVWVmaUJvb3RNYW5hZ2VyTGliLmluZg0KPiArKysNCj4gYi9NZGVN b2R1bGVQa2cvTGlicmFyeS9VZWZpQm9vdE1hbmFnZXJMaWIvVWVmaUJvb3RNYW5hZ2VyTGliLmlu Zg0KPiBAQCAtMTA5LDYgKzEwOSw3IEBAIFtQcm90b2NvbHNdDQo+ICAgIGdFZGtpaVZhcmlhYmxl TG9ja1Byb3RvY29sR3VpZCAgICAgICAgICAgICAgICAjIyBTT01FVElNRVNfQ09OU1VNRVMNCj4g ICAgZ0VmaUdyYXBoaWNzT3V0cHV0UHJvdG9jb2xHdWlkICAgICAgICAgICAgICAgICMjIFNPTUVU SU1FU19DT05TVU1FUw0KPiAgICBnRWZpVXNiSW9Qcm90b2NvbEd1aWQgICAgICAgICAgICAgICAg ICAgICAgICAgIyMgU09NRVRJTUVTX0NPTlNVTUVTDQo+ICsgIGdFZmlOdm1FeHByZXNzUGFzc1Ro cnVQcm90b2NvbEd1aWQgICAgICAgICAgICAjIyBTT01FVElNRVNfQ09OU1VNRVMNCj4gICAgZ0Vm aURpc2tJbmZvUHJvdG9jb2xHdWlkICAgICAgICAgICAgICAgICAgICAgICMjIFNPTUVUSU1FU19D T05TVU1FUw0KPiAgICBnRWZpRHJpdmVySGVhbHRoUHJvdG9jb2xHdWlkICAgICAgICAgICAgICAg ICAgIyMgU09NRVRJTUVTX0NPTlNVTUVTDQo+ICAgIGdFZmlGb3JtQnJvd3NlcjJQcm90b2NvbEd1 aWQgICAgICAgICAgICAgICAgICAjIyBTT01FVElNRVNfQ09OU1VNRVMNCj4gLS0NCj4gMi45LjAu d2luZG93cy4xDQo+IA0KPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXw0KPiBlZGsyLWRldmVsIG1haWxpbmcgbGlzdA0KPiBlZGsyLWRldmVsQGxpc3RzLjAx Lm9yZw0KPiBodHRwczovL2xpc3RzLjAxLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2VkazItZGV2ZWwN Cj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCj4gZWRr Mi1kZXZlbCBtYWlsaW5nIGxpc3QNCj4gZWRrMi1kZXZlbEBsaXN0cy4wMS5vcmcNCj4gaHR0cHM6 Ly9saXN0cy4wMS5vcmcvbWFpbG1hbi9saXN0aW5mby9lZGsyLWRldmVsDQo=