From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=192.55.52.120; helo=mga04.intel.com; envelope-from=michael.d.kinney@intel.com; receiver=edk2-devel@lists.01.org Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) (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 A1B7B22603AE1 for ; Mon, 12 Mar 2018 08:40:48 -0700 (PDT) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 12 Mar 2018 08:47:08 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.47,462,1515484800"; d="scan'208";a="207484755" Received: from orsmsx108.amr.corp.intel.com ([10.22.240.6]) by orsmga005.jf.intel.com with ESMTP; 12 Mar 2018 08:47:08 -0700 Received: from orsmsx113.amr.corp.intel.com ([169.254.9.121]) by ORSMSX108.amr.corp.intel.com ([169.254.2.52]) with mapi id 14.03.0319.002; Mon, 12 Mar 2018 08:47:07 -0700 From: "Kinney, Michael D" To: Ming Huang , "Ni, Ruiyu" , "leif.lindholm@linaro.org" , "linaro-uefi@lists.linaro.org" , "edk2-devel@lists.01.org" , "graeme.gregory@linaro.org" , "Zeng, Star" , "Dong, Eric" , "Kinney, Michael D" CC: "huangming23@huawei.com" , "wanghuiqiang@huawei.com" , "ard.biesheuvel@linaro.org" , "zhangjinsong2@huawei.com" , "Gao, Liming" , "guoheyi@huawei.com" , "waip23@126.com" , "mengfanrong@huawei.com" , "huangdaode@hisilicon.com" Thread-Topic: [edk2] [RFC v1 1/1] MdeModulePkg/Usb: Use Pcd for UsbBootIoBlocks Thread-Index: AQHTrVISmBXxdrrQrEGZZa2AtPJOXKO4QhcAgABDToCAAAoRgIAEfZmAgA+cvwCAAC37UA== Date: Mon, 12 Mar 2018 15:47:07 +0000 Message-ID: References: <1519464575-38109-1-git-send-email-ming.huang@linaro.org> <1519464575-38109-2-git-send-email-ming.huang@linaro.org> <734D49CCEBEEF84792F5B80ED585239D5BBC26C6@SHSMSX104.ccr.corp.intel.com> <8fb46727-76ea-6a86-d936-ea3cec9df3d8@linaro.org> <3d24a3f3-a704-b4bd-4d7d-6f1fdc46f78b@linaro.org> In-Reply-To: <3d24a3f3-a704-b4bd-4d7d-6f1fdc46f78b@linaro.org> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-version: 11.0.0.116 dlp-reaction: no-action x-originating-ip: [10.22.254.138] MIME-Version: 1.0 Subject: Re: [RFC v1 1/1] MdeModulePkg/Usb: Use Pcd for UsbBootIoBlocks X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 12 Mar 2018 15:40:49 -0000 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 RG9lcyBhbnlvbmUga25vdyB3b3cgd2FzIHRoZSBvcmlnaW5hbCAjZGVmaW5lIA0Kb2YgMTI4IHNl bGVjdGVkPw0KDQpJZiB3ZSBhcmUgc2VlaW5nIGNvbXBhdGliaWxpdHkgaXNzdWVzIHdpdGggMTI4 DQphbmQgd2UgaGF2ZSBncmVhdGVyIGNvbXBhdGliaWxpdHkgd2l0aCA2NCwgd2hhdA0Kd291bGQg YmUgdGhlIGltcGFjdCBvZiBqdXN0IGNoYW5naW5nIHRoZSAjZGVmaW5lDQp0byA2ND8NCg0KVGhh bmtzLA0KDQpNaWtlDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogTWlu ZyBIdWFuZyBbbWFpbHRvOm1pbmcuaHVhbmdAbGluYXJvLm9yZ10NCj4gU2VudDogU3VuZGF5LCBN YXJjaCAxMSwgMjAxOCAxMTowMSBQTQ0KPiBUbzogTmksIFJ1aXl1IDxydWl5dS5uaUBpbnRlbC5j b20+Ow0KPiBsZWlmLmxpbmRob2xtQGxpbmFyby5vcmc7IGxpbmFyby11ZWZpQGxpc3RzLmxpbmFy by5vcmc7DQo+IGVkazItZGV2ZWxAbGlzdHMuMDEub3JnOyBncmFlbWUuZ3JlZ29yeUBsaW5hcm8u b3JnOw0KPiBaZW5nLCBTdGFyIDxzdGFyLnplbmdAaW50ZWwuY29tPjsgRG9uZywgRXJpYw0KPiA8 ZXJpYy5kb25nQGludGVsLmNvbT4NCj4gQ2M6IGh1YW5nbWluZzIzQGh1YXdlaS5jb207IHdhbmdo dWlxaWFuZ0BodWF3ZWkuY29tOw0KPiBhcmQuYmllc2hldXZlbEBsaW5hcm8ub3JnOyB6aGFuZ2pp bnNvbmcyQGh1YXdlaS5jb207DQo+IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5 QGludGVsLmNvbT47IEdhbywNCj4gTGltaW5nIDxsaW1pbmcuZ2FvQGludGVsLmNvbT47IGd1b2hl eWlAaHVhd2VpLmNvbTsNCj4gd2FpcDIzQDEyNi5jb207IG1lbmdmYW5yb25nQGh1YXdlaS5jb207 DQo+IGh1YW5nZGFvZGVAaGlzaWxpY29uLmNvbQ0KPiBTdWJqZWN0OiBSZTogW2VkazJdIFtSRkMg djEgMS8xXSBNZGVNb2R1bGVQa2cvVXNiOiBVc2UNCj4gUGNkIGZvciBVc2JCb290SW9CbG9ja3MN Cj4gDQo+IEFueSBjb21tZW50cyBhYm91dCB0aGlzIHBhdGNoPw0KPiANCj4gDQo+IE9uIDIwMTgv My8yIDE0OjM2LCBNaW5nIEh1YW5nIHdyb3RlOg0KPiA+DQo+ID4gT24gMjAxOC8yLzI3IDE4OjAx LCBOaSwgUnVpeXUgd3JvdGU6DQo+ID4+IE9uIDIvMjcvMjAxOCA1OjI1IFBNLCBNaW5nIEh1YW5n IHdyb3RlOg0KPiA+Pj4NCj4gPj4+IE9uIDIwMTgvMi8yNyAxMzoyNSwgTmksIFJ1aXl1IHdyb3Rl Og0KPiA+Pj4+IEkgZG9uJ3QgcHJlZmVyIHRvIGFkZCBQQ0QsIHVubGVzcyB3ZSBjYW5ub3QgZmlu ZDoNCj4gPj4+PiAxLiBzcGVjIGNvbnRlbnTCoCB0byBkZXNjcmliZSB0aGUgbWF4L21pbiBibG9j a3MNCj4gPj4+IFRoZXJlIGlzIG5vIHNwZWMgYWJvdXQgdGhlIG1heC9taW4gYmxvY2tzIGluIG15 DQo+IG1pbmQuIEkgaGFkIGNoZWNrZWQgdGhpcyBpbg0KPiA+Pj4gc2V2ZXJhbCBwZGYgZG9jdW1l bnQgbGlrZQ0KPiA+Pj4gVW5pdmVyc2FsIFNlcmlhbCBCdXMgTWFzcyBTdG9yYWdlIENsYXNzDQo+ IFNwZWNpZmljYXRpb24gT3ZlcnZpZXcsDQo+ID4+PiBVbml2ZXJzYWwgU2VyaWFsIEJ1cyBNYXNz IFN0b3JhZ2UgU3BlY2lmaWNhdGlvbiBGb3INCj4gQm9vdGFiaWxpdHksDQo+ID4+PiBVbml2ZXJz YWwgU2VyaWFsIEJ1cyBNYXNzIFN0b3JhZ2UgQ2xhc3MgQnVsay1Pbmx5DQo+IFRyYW5zcG9ydC4N Cj4gPj4+PiAyLiBlcnJvciBoYW5kbGluZyB3aGVuIHRoZSBibG9ja3MgbnVtYmVyIGlzIGJpZ2dl cg0KPiB0aGFuIEhXIGV4cGVjdHMuDQo+ID4+PiBXaGVyZSBzaG91bGQgZXJyb3IgaGFuZGxpbmcg YWRkIHRvP8KgIEVycm9yIGhhbmRpbmcNCj4gY2FuJ3QgYWRkIHRvIEhXIChlbmQtcG9pbnQgZGV2 aWNlKSwNCj4gPj4+IGJlY2F1c2UgSFcgaXMgbm90IGluIG91ciBjb250cm9sIHNjb3BlLg0KPiA+ PiBJIG1lYW4gbWF5YmUgc3BlYyBkZXNjcmliZXMgYW4gZXJyb3Igc3RhdHVzIGNvdWxkIGJlDQo+ IHJldHVybmVkIGZyb20gSFcgd2hlbiB1c2luZyAxMjguIFNvIHRoYXQgd2UgY2FuIHVzZSA2NCwN Cj4gMzIsIGFuZCBzbWFsbGVyIHZhbHVlIHVudGlsIEhXIGlzIGhhcHB5Lg0KPiA+Pg0KPiA+PiBJ IGFtIGN1cmlvdXMgaG93IHRoZSBvdGhlciBVU0Igc3RvcmFnZSBkcml2ZXJzIGhhbmRsZQ0KPiB0 aGlzLg0KPiA+PiBQQ0QgaXMgYSBzdGF0aWMgd2F5LiBEeW5hbWljIHdheSBpcyBtb3JlIHByZWZl cnJlZC4NCj4gPj4NCj4gPiBXaGVuIHVzaW5nIDEyOCzCoCBhZnRlciB3YWl0aW5nDQo+IDV4NShV U0JfQk9PVF9DT01NQU5EX1JFVFJZPTUsDQo+IFVTQl9CT09UX0dFTkVSQUxfQ01EX1RJTUVPVVQ9 NSkgc2Vjb25kcywNCj4gPiB0aGUgVXNiQm9vdFJlYWRCbG9ja3MgLT5Vc2JCb290RXhlY0NtZFdp dGhSZXRyeSByZXRydW4NCj4gVGltZU91dC4gSSBkb24ndCBrbm93IHdoeSBIVyByZXR1cm4gVGlt ZW91dC4NCj4gPiBCb290aW5nIHRpbWUgaXMgdG8gbG9uZyBpZiB1c2luZyBEeW5hbWljIHdheSB0 byBmaXgNCj4gdGhlIGlzc3VlLg0KPiA+IFdoZW4gdXNpbmcgNjQsIEl0IHdvcmtzIGFuZCBib290 aW5nIGZyb20gSFcgc3VjY2VlZC4NCj4gPiBNYXkgYmUgdXNpbmcgUENEIGlzIGEgc2ltcGxlIGFu ZCBlZmZlY3RpdmUgbWVhbi4NCj4gPg0KPiA+IFRoYW5rcw0KPiA+IE1pbmcNCj4gPj4+PiBUaGFu a3MvUmF5DQo+ID4+Pj4NCj4gPj4+Pj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPj4+ Pj4gRnJvbTogZWRrMi1kZXZlbCBbbWFpbHRvOmVkazItZGV2ZWwtDQo+IGJvdW5jZXNAbGlzdHMu MDEub3JnXSBPbiBCZWhhbGYgT2YNCj4gPj4+Pj4gTWluZyBIdWFuZw0KPiA+Pj4+PiBTZW50OiBT YXR1cmRheSwgRmVicnVhcnkgMjQsIDIwMTggNTozMCBQTQ0KPiA+Pj4+PiBUbzogbGVpZi5saW5k aG9sbUBsaW5hcm8ub3JnOyBsaW5hcm8tDQo+IHVlZmlAbGlzdHMubGluYXJvLm9yZzsgZWRrMi0N Cj4gPj4+Pj4gZGV2ZWxAbGlzdHMuMDEub3JnOyBncmFlbWUuZ3JlZ29yeUBsaW5hcm8ub3JnOw0K PiBaZW5nLCBTdGFyDQo+ID4+Pj4+IDxzdGFyLnplbmdAaW50ZWwuY29tPjsgRG9uZywgRXJpYw0K PiA8ZXJpYy5kb25nQGludGVsLmNvbT4NCj4gPj4+Pj4gQ2M6IGh1YW5nbWluZzIzQGh1YXdlaS5j b207DQo+IGFyZC5iaWVzaGV1dmVsQGxpbmFyby5vcmc7IE1pbmcgSHVhbmcNCj4gPj4+Pj4gPG1p bmcuaHVhbmdAbGluYXJvLm9yZz47IEdhbywgTGltaW5nDQo+IDxsaW1pbmcuZ2FvQGludGVsLmNv bT47DQo+ID4+Pj4+IG1lbmdmYW5yb25nQGh1YXdlaS5jb207IGd1b2hleWlAaHVhd2VpLmNvbTsN Cj4gPj4+Pj4gemhhbmdqaW5zb25nMkBodWF3ZWkuY29tOyBLaW5uZXksIE1pY2hhZWwgRA0KPiA+ Pj4+PiA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+OyB3YWlwMjNAMTI2LmNvbTsNCj4gPj4+ Pj4gd2FuZ2h1aXFpYW5nQGh1YXdlaS5jb207IGh1YW5nZGFvZGVAaGlzaWxpY29uLmNvbQ0KPiA+ Pj4+PiBTdWJqZWN0OiBbZWRrMl0gW1JGQyB2MSAxLzFdIE1kZU1vZHVsZVBrZy9Vc2I6IFVzZQ0K PiBQY2QgZm9yDQo+ID4+Pj4+IFVzYkJvb3RJb0Jsb2Nrcw0KPiA+Pj4+Pg0KPiA+Pj4+PiBCb290 aW5nIGZyb20gVVNCIG1heSBmYWlsIHdoaWxlIHRoZSBtYWNybw0KPiBVU0JfQk9PVF9JT19CTE9D S1Mgc2V0IHRvIDEyOA0KPiA+Pj4+PiBiZWNhdXNlIDEyOCBibG9ja3MgaXMgZXhjZWVkZWQgdGhl IG1heGltdW4gYmxvY2tzDQo+IG9mIHNvbWUgVVNCDQo+ID4+Pj4+IGRldmljZXMsbGlrZSBzb21l IHZpcnR1YWwgQ0QtUk9NIGZyb20gQk1DLiBTbywNCj4gZ2l2ZSBhIGNoYW5jZSB0byBzZXQgdGhl DQo+ID4+Pj4+IHZhbHVlIG9mIFVTQl9CT09UX0lPX0JMT0NLUyBieSBhZGRpbmcgYSBQY2QuDQo+ ID4+Pj4+DQo+ID4+Pj4+IENvbnRyaWJ1dGVkLXVuZGVyOiBUaWFub0NvcmUgQ29udHJpYnV0aW9u DQo+IEFncmVlbWVudCAxLjENCj4gPj4+Pj4gU2lnbmVkLW9mZi1ieTogTWluZyBIdWFuZyA8bWlu Zy5odWFuZ0BsaW5hcm8ub3JnPg0KPiA+Pj4+PiAtLS0NCj4gPj4+Pj4gwqAgTWRlTW9kdWxlUGtn L0J1cy9Vc2IvVXNiTWFzc1N0b3JhZ2VEeGUvVXNiTWFzc0JvDQo+IG90LmjCoMKgwqDCoMKgwqDC oMKgIHwgNw0KPiA+Pj4+PiArKysrKy0tDQo+ID4+Pj4+IMKgIE1kZU1vZHVsZVBrZy9CdXMvVXNi L1VzYk1hc3NTdG9yYWdlRHhlL1VzYk1hc3NTdA0KPiBvcmFnZUR4ZS5pbmYgfCA0DQo+ID4+Pj4+ ICsrKysNCj4gPj4+Pj4gwqAgTWRlTW9kdWxlUGtnL01kZU1vZHVsZVBrZy5kZWMNCj4gwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIHwgNCArKysrDQo+ID4+Pj4+IMKgIE1kZU1vZHVsZVBrZy9NZGVN b2R1bGVQa2cudW5pDQo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8IDQgKysrKw0KPiA+Pj4+ PiDCoCA0IGZpbGVzIGNoYW5nZWQsIDE3IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0NCj4g KQ0KPiA+Pj4+Pg0KPiA+Pj4+PiBkaWZmIC0tZ2l0DQo+IGEvTWRlTW9kdWxlUGtnL0J1cy9Vc2Iv VXNiTWFzc1N0b3JhZ2VEeGUvVXNiTWFzc0Jvb3QuaA0KPiA+Pj4+Pg0KPiBiL01kZU1vZHVsZVBr Zy9CdXMvVXNiL1VzYk1hc3NTdG9yYWdlRHhlL1VzYk1hc3NCb290LmgNCj4gPj4+Pj4gaW5kZXgg NWVlNTBhYzUyYTIxLi5jYTkyNDBhZGJkNWYgMTAwNjQ0DQo+ID4+Pj4+IC0tLQ0KPiBhL01kZU1v ZHVsZVBrZy9CdXMvVXNiL1VzYk1hc3NTdG9yYWdlRHhlL1VzYk1hc3NCb290LmgNCj4gPj4+Pj4g KysrDQo+IGIvTWRlTW9kdWxlUGtnL0J1cy9Vc2IvVXNiTWFzc1N0b3JhZ2VEeGUvVXNiTWFzc0Jv b3QuaA0KPiA+Pj4+PiBAQCAtMTYsNiArMTYsOCBAQCBXSVRIT1VUIFdBUlJBTlRJRVMgT1INCj4g UkVQUkVTRU5UQVRJT05TIE9GIEFOWQ0KPiA+Pj4+PiBLSU5ELCBFSVRIRVIgRVhQUkVTUyBPUiBJ TVBMSUVELg0KPiA+Pj4+PiDCoCAjaWZuZGVmIF9FRklfVVNCX01BU1NfQk9PVF9IXw0KPiA+Pj4+ PiDCoCAjZGVmaW5lIF9FRklfVVNCX01BU1NfQk9PVF9IXw0KPiA+Pj4+Pg0KPiA+Pj4+PiArI2lu Y2x1ZGUgPExpYnJhcnkvUGNkTGliLmg+DQo+ID4+Pj4+ICsNCj4gPj4+Pj4gwqAgLy8NCj4gPj4+ Pj4gwqAgLy8gVGhlIG9wY29kZXMgb2YgdmFyaW91cyBVU0IgYm9vdCBjb21tYW5kczoNCj4gPj4+ Pj4gwqAgLy8gSU5RVUlSWS9SRVFVRVNUX1NFTlNFIGFyZSAiTm8gVGltZW91dA0KPiBDb21tYW5k cyIgYXMgc3BlY2lmaWVkIEBADQo+ID4+Pj4+IC02Niw5ICs2OCwxMCBAQCBXSVRIT1VUIFdBUlJB TlRJRVMgT1INCj4gUkVQUkVTRU5UQVRJT05TIE9GIEFOWQ0KPiA+Pj4+PiBLSU5ELCBFSVRIRVIg RVhQUkVTUyBPUiBJTVBMSUVELg0KPiA+Pj4+PiDCoCAjZGVmaW5lDQo+IFVTQl9QRFRfU0lNUExF X0RJUkVDVMKgwqDCoMKgwqDCoMKgwqDCoMKgIDB4MEXCoMKgwqDCoMKgwqAgLy8vPA0KPiBTaW1w bGlmaWVkIGRpcmVjdCBhY2Nlc3MNCj4gPj4+Pj4gZGV2aWNlDQo+ID4+Pj4+DQo+ID4+Pj4+IMKg IC8vDQo+ID4+Pj4+IC0vLyBPdGhlciBwYXJhbWV0ZXJzLCBNYXggY2FycmllZCBzaXplIGlzIDUx MkIgKg0KPiAxMjggPSA2NEtCDQo+ID4+Pj4+ICsvLyBPdGhlciBwYXJhbWV0ZXJzLCBNYXggY2Fy cmllZCBzaXplIGlzIGRlcGFuZGVkDQo+IG9uIFBjZC4NCj4gPj4+Pj4gKy8vIFRoZSBkZWZhdWx0 IG9mIFBjZFVzYkJvb3RJb0Jsb2NrcyBpcyAxMjguIDUxMkINCj4gKiAxMjggPSA2NEtCDQo+ID4+ Pj4+IMKgIC8vDQo+ID4+Pj4+IC0jZGVmaW5lIFVTQl9CT09UX0lPX0JMT0NLU8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIDEyOA0KPiA+Pj4+PiArI2RlZmluZQ0KPiBVU0JfQk9PVF9JT19CTE9D S1PCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoRml4ZWRQY2RHZXQzMg0KPiA+Pj4+PiAoUGNk VXNiQm9vdElvQmxvY2tzKSkNCj4gPj4+Pj4NCj4gPj4+Pj4gwqAgLy8NCj4gPj4+Pj4gwqAgLy8g UmV0cnkgbWFzcyBjb21tYW5kIHRpbWVzLCBzZXQgYnkgZXhwZXJpZW5jZQ0KPiBkaWZmIC0tZ2l0 DQo+ID4+Pj4+DQo+IGEvTWRlTW9kdWxlUGtnL0J1cy9Vc2IvVXNiTWFzc1N0b3JhZ2VEeGUvVXNi TWFzc1N0b3JhZ2VEDQo+IHhlLmluZg0KPiA+Pj4+Pg0KPiBiL01kZU1vZHVsZVBrZy9CdXMvVXNi L1VzYk1hc3NTdG9yYWdlRHhlL1VzYk1hc3NTdG9yYWdlRA0KPiB4ZS5pbmYNCj4gPj4+Pj4gaW5k ZXggMjZkMTVjNzY3OWJmLi40MDQyNjUxMmY4ODQgMTAwNjQ0DQo+ID4+Pj4+IC0tLQ0KPiA+Pj4+ Pg0KPiBhL01kZU1vZHVsZVBrZy9CdXMvVXNiL1VzYk1hc3NTdG9yYWdlRHhlL1VzYk1hc3NTdG9y YWdlRA0KPiB4ZS5pbmYNCj4gPj4+Pj4gKysrDQo+ID4+Pj4+DQo+IGIvTWRlTW9kdWxlUGtnL0J1 cy9Vc2IvVXNiTWFzc1N0b3JhZ2VEeGUvVXNiTWFzc1N0b3JhZ2VEDQo+IHhlLmluZg0KPiA+Pj4+ PiBAQCAtNjAsNiArNjAsNyBAQCBbU291cmNlc10NCj4gPj4+Pj4gwqDCoMKgIFVzYk1hc3NEaXNr SW5mby5jDQo+ID4+Pj4+DQo+ID4+Pj4+IMKgIFtQYWNrYWdlc10NCj4gPj4+Pj4gK8KgIE1kZU1v ZHVsZVBrZy9NZGVNb2R1bGVQa2cuZGVjDQo+ID4+Pj4+IMKgwqDCoCBNZGVQa2cvTWRlUGtnLmRl Yw0KPiA+Pj4+Pg0KPiA+Pj4+PiDCoCBbTGlicmFyeUNsYXNzZXNdDQo+ID4+Pj4+IEBAIC04Myw1 ICs4NCw4IEBAIFtQcm90b2NvbHNdDQo+ID4+Pj4+IMKgICMgRVZFTlRfVFlQRV9SRUxBVElWRV9U SU1FUsKgwqDCoMKgwqDCoMKgICMjIENPTlNVTUVTDQo+ID4+Pj4+IMKgICMNCj4gPj4+Pj4NCj4g Pj4+Pj4gK1tGaXhlZFBjZF0NCj4gPj4+Pj4NCj4gK8KgIGdFZmlNZGVNb2R1bGVQa2dUb2tlblNw YWNlR3VpZC5QY2RVc2JCb290SW9CbG9ja3MNCj4gPj4+Pj4gKw0KPiA+Pj4+PiDCoCBbVXNlckV4 dGVuc2lvbnMuVGlhbm9Db3JlLiJFeHRyYUZpbGVzIl0NCj4gPj4+Pj4gwqDCoMKgIFVzYk1hc3NT dG9yYWdlRHhlRXh0cmEudW5pDQo+ID4+Pj4+IGRpZmYgLS1naXQgYS9NZGVNb2R1bGVQa2cvTWRl TW9kdWxlUGtnLmRlYw0KPiA+Pj4+PiBiL01kZU1vZHVsZVBrZy9NZGVNb2R1bGVQa2cuZGVjIGlu ZGV4DQo+IDQ1NTk3OTM4NmUzZi4uZmM0MDc0NTMxNWEwDQo+ID4+Pj4+IDEwMDY0NA0KPiA+Pj4+ PiAtLS0gYS9NZGVNb2R1bGVQa2cvTWRlTW9kdWxlUGtnLmRlYw0KPiA+Pj4+PiArKysgYi9NZGVN b2R1bGVQa2cvTWRlTW9kdWxlUGtnLmRlYw0KPiA+Pj4+PiBAQCAtOTk5LDYgKzk5OSwxMCBAQCBb UGNkc0ZpeGVkQXRCdWlsZF0NCj4gPj4+Pj4gwqDCoMKgICMgQFByb21wdCBFbmFibGUgVUVGSSBT dGFjayBHdWFyZC4NCj4gPj4+Pj4NCj4gPj4+Pj4NCj4gZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3Bh Y2VHdWlkLlBjZENwdVN0YWNrR3VhcmR8RkFMU0V8Qk8NCj4gT0xFQU58MA0KPiA+Pj4+PiB4MzAw MDEwNTUNCj4gPj4+Pj4NCj4gPj4+Pj4gKyMjIFRoZSBNYXggYmxvY2tzIG9mIHVzYiB0cmFuc2Zl ci4gVGhlIGRlZmF1bHQgaXMNCj4gMTI4Lg0KPiA+Pj4+PiArIyBAUHJvbXB0IFRoZSBNYXggYmxv Y2tzIG9mIHVzYiB0cmFuc2Zlcg0KPiA+Pj4+Pg0KPiArZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3Bh Y2VHdWlkLlBjZFVzYkJvb3RJb0Jsb2Nrc3wxMjh8VQ0KPiBJTlQzMnwweDANCj4gPj4+Pj4gMDAw MDEwQg0KPiA+Pj4+PiArDQo+ID4+Pj4+IMKgIFtQY2RzRml4ZWRBdEJ1aWxkLCBQY2RzUGF0Y2hh YmxlSW5Nb2R1bGVdDQo+ID4+Pj4+IMKgwqDCoCAjIyBEeW5hbWljIHR5cGUgUENEIGNhbiBiZSBy ZWdpc3RlcmVkIGNhbGxiYWNrDQo+IGZ1bmN0aW9uIGZvciBQY2Qgc2V0dGluZw0KPiA+Pj4+PiBh Y3Rpb24uDQo+ID4+Pj4+IMKgwqDCoCAjwqAgUGNkTWF4UGVpUGNkQ2FsbEJhY2tOdW1iZXJQZXJQ Y2RFbnRyeQ0KPiBpbmRpY2F0ZXMgdGhlIG1heGltdW0NCj4gPj4+Pj4gbnVtYmVyIG9mIGNhbGxi YWNrIGZ1bmN0aW9uIGRpZmYgLS1naXQNCj4gYS9NZGVNb2R1bGVQa2cvTWRlTW9kdWxlUGtnLnVu aQ0KPiA+Pj4+PiBiL01kZU1vZHVsZVBrZy9NZGVNb2R1bGVQa2cudW5pIGluZGV4DQo+IGYzZmE2 MTY0MzhiMC4uYzk5NmQ2YjRlYmUwDQo+ID4+Pj4+IDEwMDY0NA0KPiA+Pj4+PiAtLS0gYS9NZGVN b2R1bGVQa2cvTWRlTW9kdWxlUGtnLnVuaQ0KPiA+Pj4+PiArKysgYi9NZGVNb2R1bGVQa2cvTWRl TW9kdWxlUGtnLnVuaQ0KPiA+Pj4+PiBAQCAtMTI0MywzICsxMjQzLDcgQEANCj4gPj4+Pj4gwqAg I3N0cmluZw0KPiA+Pj4+Pg0KPiBTVFJfZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkX1Bj ZEVka2lpRnBkdFN0cmluZ1JlYw0KPiBvcmRFbmFibGVPDQo+ID4+Pj4+IG5seV9IRUxQwqDCoMKg ICNsYW5ndWFnZSBlbi1VUyAiQ29udHJvbCB3aGljaCBGUERUDQo+IHJlY29yZCBmb3JtYXQgd2ls bCBiZSB1c2VkDQo+ID4+Pj4+IHRvIHN0b3JlIHRoZSBwZXJmb3JtYW5jZSBlbnRyeS5cbiINCj4g Pj4+Pj4NCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAiTw0KPiBuIFRSVUUsIHRoZSBzdHJpbmcgRlBEVA0KPiA+Pj4+PiByZWNvcmQgd2lsbCBiZSB1 c2VkIHRvIHN0b3JlIGV2ZXJ5IHBlcmZvcm1hbmNlDQo+IGVudHJ5LlxuIg0KPiA+Pj4+Pg0KPiDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJPDQo+IG4g RkFMU0UsIHRoZSBkaWZmZXJlbnQNCj4gPj4+Pj4gRlBEVCByZWNvcmQgd2lsbCBiZSB1c2VkIHRv IHN0b3JlIHRoZSBkaWZmZXJlbnQNCj4gcGVyZm9ybWFuY2UgZW50cmllcy4iDQo+ID4+Pj4+ICsN Cj4gPj4+Pj4gKyNzdHJpbmcNCj4gPj4+Pj4NCj4gU1RSX2dFZmlNZGVNb2R1bGVQa2dUb2tlblNw YWNlR3VpZF9QY2RVc2JCb290SW9CbG9ja3NfUFINCj4gT01QVA0KPiA+Pj4+PiAjbGFuZ3VhZ2Ug ZW4tVVMgIlRoZSBNYXggYmxvY2tzIG9mIHVzYiB0cmFuc2Zlci4iDQo+ID4+Pj4+ICsNCj4gPj4+ Pj4gKyNzdHJpbmcNCj4gPj4+Pj4NCj4gU1RSX2dFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3Vp ZF9QY2RVc2JCb290SW9CbG9ja3NfSEUNCj4gTFANCj4gPj4+Pj4gI2xhbmd1YWdlIGVuLVVTICJU aGUgTWF4IGJsb2NrcyBvZiB1c2IgdHJhbnNmZXIuDQo+IFRoZSBkZWZhdWx0IGlzIDEyOC4iDQo+ ID4+Pj4+IC0tDQo+ID4+Pj4+IDEuOS4xDQo+ID4+Pj4+DQo+ID4+Pj4+IF9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fDQo+ID4+Pj4+IGVkazItZGV2ZWwgbWFp bGluZyBsaXN0DQo+ID4+Pj4+IGVkazItZGV2ZWxAbGlzdHMuMDEub3JnDQo+ID4+Pj4+IGh0dHBz Oi8vbGlzdHMuMDEub3JnL21haWxtYW4vbGlzdGluZm8vZWRrMi1kZXZlbA0KPiA+Pj4gX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCj4gPj4+IGVkazItZGV2 ZWwgbWFpbGluZyBsaXN0DQo+ID4+PiBlZGsyLWRldmVsQGxpc3RzLjAxLm9yZw0KPiA+Pj4gaHR0 cHM6Ly9saXN0cy4wMS5vcmcvbWFpbG1hbi9saXN0aW5mby9lZGsyLWRldmVsDQo+ID4+Pg0KPiA+ Pg0KDQo=