From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) (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 0737F203BEC1E for ; Mon, 27 Mar 2017 22:25:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=intel.com; i=@intel.com; q=dns/txt; s=intel; t=1490678729; x=1522214729; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=fMr1qrNyCG9dRfd47wKlanEAVjvTqs3s2EKWYLdIgQY=; b=JIhs76WsufS0Qo9/6YMJkNhM4CacHx2USuhwysob6x0OFfZCXI0P7wz4 nbz9EVMjQner9ohVAmfA1cCp+3ItCw==; Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga102.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 27 Mar 2017 22:25:28 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.36,235,1486454400"; d="scan'208";a="1127889273" Received: from fmsmsx105.amr.corp.intel.com ([10.18.124.203]) by fmsmga001.fm.intel.com with ESMTP; 27 Mar 2017 22:25:28 -0700 Received: from fmsmsx120.amr.corp.intel.com (10.18.124.208) by FMSMSX105.amr.corp.intel.com (10.18.124.203) with Microsoft SMTP Server (TLS) id 14.3.319.2; Mon, 27 Mar 2017 22:25:28 -0700 Received: from shsmsx151.ccr.corp.intel.com (10.239.6.50) by fmsmsx120.amr.corp.intel.com (10.18.124.208) with Microsoft SMTP Server (TLS) id 14.3.319.2; Mon, 27 Mar 2017 22:25:28 -0700 Received: from shsmsx102.ccr.corp.intel.com ([169.254.2.212]) by SHSMSX151.ccr.corp.intel.com ([169.254.3.82]) with mapi id 14.03.0248.002; Tue, 28 Mar 2017 13:25:12 +0800 From: "Gao, Liming" To: Laszlo Ersek , Ard Biesheuvel CC: "Zeng, Star" , "Kinney, Michael D" , "afish@apple.com" , "Tian, Feng" , edk2-devel-01 , "Leif Lindholm" Thread-Topic: [edk2] [PATCH v2 05/12] ArmPkg: introduce EDKII Platform Has ACPI Protocol, and plug-in library Thread-Index: AQHSn1/GB2XPIHVB6UCkCvBSwDIEcaGaK/cAgAZJkQCAALLrAIAAfQMAgAE3iQCAAODaAIAER7gA///FUQCAALBVgIABTMtA Date: Tue, 28 Mar 2017 05:25:11 +0000 Message-ID: <4A89E2EF3DFEDB4C8BFDE51014F606A14D70446E@shsmsx102.ccr.corp.intel.com> References: <20170317204731.31488-1-lersek@redhat.com> <20170317204731.31488-6-lersek@redhat.com> <20170318150041.GL16034@bivouac.eciton.net> <1bc7b29c-7a71-86cb-adce-5a14de129c63@redhat.com> <0C09AFA07DD0434D9E2A0C6AEB0483103B8377AB@shsmsx102.ccr.corp.intel.com> <0C09AFA07DD0434D9E2A0C6AEB0483103B84CA03@shsmsx102.ccr.corp.intel.com> <5b2c0152-85fe-db6b-e173-0e4b0891e0f2@redhat.com> <4A89E2EF3DFEDB4C8BFDE51014F606A14D702AE8@shsmsx102.ccr.corp.intel.com> <66e4cce5-1a24-2ea2-f701-39ff9dde0897@redhat.com> In-Reply-To: <66e4cce5-1a24-2ea2-f701-39ff9dde0897@redhat.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Subject: Re: [PATCH v2 05/12] ArmPkg: introduce EDKII Platform Has ACPI Protocol, and plug-in library X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Mar 2017 05:25:29 -0000 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 RXJzZWs6DQogIEkgZG9uJ3Qgd2FudCB0byBibG9jayB5b3VyIHBhdGNoLiBZb3UgY2FuIHN0aWxs IGNoZWNrIGluIEd1aWQgaGVhZGVyIGZpbGUgaWYgeW91IHRoaW5rIGl0IGlzIG5lY2Vzc2FyeS4g DQoNClRoYW5rcw0KTGltaW5nDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206 IExhc3psbyBFcnNlayBbbWFpbHRvOmxlcnNla0ByZWRoYXQuY29tXQ0KPiBTZW50OiBUdWVzZGF5 LCBNYXJjaCAyOCwgMjAxNyAxOjMyIEFNDQo+IFRvOiBBcmQgQmllc2hldXZlbCA8YXJkLmJpZXNo ZXV2ZWxAbGluYXJvLm9yZz47IEdhbywgTGltaW5nIDxsaW1pbmcuZ2FvQGludGVsLmNvbT4NCj4g Q2M6IFplbmcsIFN0YXIgPHN0YXIuemVuZ0BpbnRlbC5jb20+OyBLaW5uZXksIE1pY2hhZWwgRCA8 bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+OyBhZmlzaEBhcHBsZS5jb207IFRpYW4sIEZlbmcN Cj4gPGZlbmcudGlhbkBpbnRlbC5jb20+OyBlZGsyLWRldmVsLTAxIDxlZGsyLWRldmVsQGxpc3Rz LjAxLm9yZz47IExlaWYgTGluZGhvbG0gPGxlaWYubGluZGhvbG1AbGluYXJvLm9yZz4NCj4gU3Vi amVjdDogUmU6IFtlZGsyXSBbUEFUQ0ggdjIgMDUvMTJdIEFybVBrZzogaW50cm9kdWNlIEVES0lJ IFBsYXRmb3JtIEhhcyBBQ1BJIFByb3RvY29sLCBhbmQgcGx1Zy1pbiBsaWJyYXJ5DQo+IA0KPiBP biAwMy8yNy8xNyAwOTowMCwgQXJkIEJpZXNoZXV2ZWwgd3JvdGU6DQo+ID4gT24gMjcgTWFyY2gg MjAxNyBhdCAwMzo0MiwgR2FvLCBMaW1pbmcgPGxpbWluZy5nYW9AaW50ZWwuY29tPiB3cm90ZToN Cj4gPj4gTGFzemxvOg0KPiA+PiAgIE9uIEdVSUQgaGVhZGVyIGZpbGUsIHNvbWUgaGVhZGVyIGZp bGUgYXJlIGhlcmUsIGJlY2F1c2UgdGhleSBhcmUgYWRkZWQgYmVmb3JlIEJhc2VUb29scyBzdXBw b3J0cyBpdC4gTm93LCB3ZSBhbGxvdyBub3QgdG8gYWRkDQo+IGhlYWRlciBmaWxlIGlmIHRoZSBo ZWFkZXIgZmlsZSBvbmx5IGhhcyBHVUlEIHZhbHVlIGRlZmluaXRpb24uDQo+ID4NCj4gPiBJIGhh dmUgdG8gYWdyZWUgd2l0aCBMYXN6bG8gaGVyZS4gVGhlIEJhc2VUb29scyBzdXBwb3J0IGlzIGlu Y29tcGxldGUsDQo+ID4gc2luY2UgaXQgZG9lcyBub3QgYWRkIGEgI2RlZmluZSBmb3IgdGhlIEdV SUQgdG8gQXV0b0dlbi5oLiBUaGlzIG1ha2VzDQo+ID4gaXQgaW1wb3NzaWJsZSB0byBpbml0aWFs aXplIHN0YXRpYyBzdHJ1Y3R1cmVzIGNvbnRhaW5pbmcgR1VJRHMsIHN1Y2gNCj4gPiBhcyB0ZW1w bGF0ZXMgY29udGFpbmluZyB2ZW5kb3IgZGV2aWNlIHBhdGhzLg0KPiA+DQo+ID4gRm9yIGluc3Rh bmNlLCB0aGUgZm9sbG93aW5nDQo+ID4NCj4gPiB0eXBlZGVmIHN0cnVjdCB7DQo+ID4gICBFRklf R1VJRCBmb287DQo+ID4gfSBUWVBFOw0KPiA+DQo+ID4gVFlQRSBtRm9vIHsNCj4gPiAgIFNPTUVf R1VJRA0KPiA+IH07DQo+ID4NCj4gPiBpcyBub3QgcG9zc2libGUgd2l0aG91dCBhIEd1aWQveHh4 LmggaW5jbHVkZSBmaWxlIGNvbnRhaW5pbmcgYSAjZGVmaW5lDQo+ID4gZm9yIFNPTUVfR1VJRC4N Cj4gDQo+IEkgd29uZGVyIGlmIHdlIGNhbiBjb21taXQgdGhpcyBzZXJpZXMgYmVmb3JlIGVuZCBv ZiBBcHJpbC4NCj4gDQo+IE9yIGlzIHRoYXQgdG9vIHNvb24/IEVuZCBvZiBNYXkgcGVyaGFwcz8N Cj4gDQo+IFRoZSBtaW5kIGJvZ2dsZXMuDQo+IA0KPiBMYXN6bG8NCj4gDQo+ID4NCj4gPj4gICBP biBHVUlEIEMgTUFDUk8sIHdlIHN1Z2dlc3QgdG8gdXNlIEd1aWRDTmFtZSBpbiBldmVyeSBDIHNv dXJjZSBjb2RlLiBTbywgd2UgZG9uJ3Qgc3VnZ2VzdCB0byBhZGQgaXQuICBBcyB5b3Uga25vdywg c29tZQ0KPiBleGlzdGluZyBoZWFkZXIgZmlsZXMgaGF2ZSBHdWlkQ05hbWUgYW5kIEdVSUQgTWFj cm8uIE5vdywgd2UgaGF2ZSBubyBwbGFuIHRvIGNsZWFuIHVwIHRoZSBleGlzdGluZyBvbmUuIEJ1 dCwgd2UgZXhwZWN0IG5ldyBhZGRlZA0KPiBmaWxlIGZvbGxvd3MgdGhpcyBydWxlLg0KPiA+Pg0K PiA+PiBUaGFua3MNCj4gPj4gTGltaW5nDQo+ID4+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0t LQ0KPiA+Pj4gRnJvbTogZWRrMi1kZXZlbCBbbWFpbHRvOmVkazItZGV2ZWwtYm91bmNlc0BsaXN0 cy4wMS5vcmddIE9uIEJlaGFsZiBPZg0KPiA+Pj4gTGFzemxvIEVyc2VrDQo+ID4+PiBTZW50OiBT YXR1cmRheSwgTWFyY2ggMjUsIDIwMTcgMTowOSBBTQ0KPiA+Pj4gVG86IFplbmcsIFN0YXIgPHN0 YXIuemVuZ0BpbnRlbC5jb20+OyBBcmQgQmllc2hldXZlbA0KPiA+Pj4gPGFyZC5iaWVzaGV1dmVs QGxpbmFyby5vcmc+OyBLaW5uZXksIE1pY2hhZWwgRA0KPiA+Pj4gPG1pY2hhZWwuZC5raW5uZXlA aW50ZWwuY29tPjsgYWZpc2hAYXBwbGUuY29tDQo+ID4+PiBDYzogVGlhbiwgRmVuZyA8ZmVuZy50 aWFuQGludGVsLmNvbT47IEdhbywgTGltaW5nIDxsaW1pbmcuZ2FvQGludGVsLmNvbT47DQo+ID4+ PiBlZGsyLWRldmVsLTAxIDxlZGsyLWRldmVsQGxpc3RzLjAxLm9yZz47IExlaWYgTGluZGhvbG0N Cj4gPj4+IDxsZWlmLmxpbmRob2xtQGxpbmFyby5vcmc+DQo+ID4+PiBTdWJqZWN0OiBSZTogW2Vk azJdIFtQQVRDSCB2MiAwNS8xMl0gQXJtUGtnOiBpbnRyb2R1Y2UgRURLSUkgUGxhdGZvcm0gSGFz DQo+ID4+PiBBQ1BJIFByb3RvY29sLCBhbmQgcGx1Zy1pbiBsaWJyYXJ5DQo+ID4+Pg0KPiA+Pj4g T24gMDMvMjQvMTcgMDQ6NDQsIFplbmcsIFN0YXIgd3JvdGU6DQo+ID4+Pj4gSSBqdXN0IHRoaW5r IGl0IHNlZW1zIGEgZ2VuZXJpYyBwcm9ibGVtLg0KPiA+Pj4+IFNvbWUgcGxhdGZvcm1zIG1heSBk eW5hbWljYWxseSBkZXRlcm1pbmUgd2hldGhlciBBQ1BJIHNob3VsZCBiZQ0KPiA+Pj4gc3VwcG9y dGVkIG9yIG5vdC4NCj4gPj4+PiBTb21lIHBsYXRmb3JtcyBtYXkgZHluYW1pY2FsbHkgZGV0ZXJt aW5lIHdoZXRoZXIgU01CSU9TIHNob3VsZCBiZQ0KPiA+Pj4gc3VwcG9ydGVkIG9yIG5vdC4NCj4g Pj4+PiBTb21lIHBsYXRmb3JtcyBtYXkgZHluYW1pY2FsbHkgZGV0ZXJtaW5lIHdoZXRoZXIgSElJ IHNob3VsZCBiZQ0KPiA+Pj4gc3VwcG9ydGVkIG9yIG5vdC4NCj4gPj4+PiAuLi4NCj4gPj4+Pg0K PiA+Pj4+IFdlIGFyZSB0aGlua2luZyB3aGV0aGVyIHdlIGNhbiBoYXZlIGEgZ2VuZXJpYyBOVUxM IGluc3RhbmNlIHRvIHN1cHBvcnQgYWxsDQo+ID4+PiB0aGlzIGtpbmQgb2YgY2FzZXMsIGZvciBl eGFtcGxlOg0KPiA+Pj4+IDEuIERlZmluZSBhIEZpeGVkQXRCdWlsZCBQQ0QgUGNkRGVwZXhHdWlk IHRoYXQgd2lsbCBiZSBhIFZPSUQqIHR5cGUgUENEDQo+ID4+PiBwb2ludCB0byBhIGRlcGV4IEdV SUQuDQo+ID4+Pj4gMi4gSW1wbGVtZW50IGEgTlVMTCBpbnN0YW5jZSBEZXBleExpYi4NCj4gPj4+ PiBbRGVmaW5lc10NCj4gPj4+PiAgIElORl9WRVJTSU9OICAgICAgICAgICAgICAgICAgICA9IDB4 MDAwMTAwMDUNCj4gPj4+PiAgIEJBU0VfTkFNRSAgICAgICAgICAgICAgICAgICAgICA9IERlcGV4 TGliDQo+ID4+Pj4gICBGSUxFX0dVSUQgICAgICAgICAgICAgICAgICAgICAgPSBYWFhYWFhYWC1Y WFhYLVhYWFgtWFhYWC1YWFhYWFhYWFhYWFgNCj4gPj4+PiAgIE1PRFVMRV9UWVBFICAgICAgICAg ICAgICAgICAgICA9IEJBU0UNCj4gPj4+PiAgIFZFUlNJT05fU1RSSU5HICAgICAgICAgICAgICAg ICA9IDEuMA0KPiA+Pj4+ICAgTElCUkFSWV9DTEFTUyAgICAgICAgICAgICAgICAgID0gTlVMTA0K PiA+Pj4+DQo+ID4+Pj4gW1NvdXJjZXNdDQo+ID4+Pj4gICBEZXBleExpYi5jDQo+ID4+Pj4NCj4g Pj4+PiBbUGFja2FnZXNdDQo+ID4+Pj4gICBYWFhQa2cvWFhYUGtnLmRlYw0KPiA+Pj4+DQo+ID4+ Pj4gW0RlcGV4XQ0KPiA+Pj4+ICAgUGNkRGVwZXhHdWlkDQo+ID4+Pj4NCj4gPj4+PiAzLiBMaW5r IE5VTEwgaW5zdGFuY2UgYW5kIGNvbmZpZ3VyZSBQQ0QgaW4gZHNjLg0KPiA+Pj4+IE1kZU1vZHVs ZVBrZy9Vbml2ZXJzYWwvQWNwaS9BY3BpVGFibGVEeGUvQWNwaVRhYmxlRHhlLmluZiB7DQo+ID4+ Pj4gICAgIDxMaWJyYXJ5Q2xhc3Nlcz4NCj4gPj4+PiAgICAgICBOVUxMfFhYWFBrZy9MaWJyYXJ5 L0RlcGV4TGliL0RlcGV4TGliLmluZg0KPiA+Pj4+ICAgICA8UGNkc0ZpeGVkQXRCdWlsZD4NCj4g Pj4+PiAgICAgICBQY2REZXBleEd1aWR8Z0Vka2lpUGxhdGZvcm1IYXNBY3BpR3VpZA0KPiA+Pj4+ IH0NCj4gPj4+PiBNZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1NtYmlvc0R4ZS9TbWJpb3NEeGUuaW5m IHsNCj4gPj4+PiAgICAgPExpYnJhcnlDbGFzc2VzPg0KPiA+Pj4+ICAgICAgIE5VTEx8WFhYUGtn L0xpYnJhcnkvRGVwZXhMaWIvRGVwZXhMaWIuaW5mDQo+ID4+Pj4gICAgIDxQY2RzRml4ZWRBdEJ1 aWxkPg0KPiA+Pj4+ICAgICAgIFBjZERlcGV4R3VpZHxnRWRraWlQbGF0Zm9ybUhhc1NtYmlvc0d1 aWQNCj4gPj4+PiB9DQo+ID4+Pj4NCj4gPj4+PiBCdXQgY3VycmVudCBCYXNlVG9vbHMgZG9lcyBu b3Qgc3VwcG9ydCB0aGUgc3ludGF4IHRvIGRlY2xhcmUgUENEIGluIFtEZXBleF0NCj4gPj4+IHNl Y3Rpb24gb2YgaW5mIHlldC4NCj4gPj4+Pg0KPiA+Pj4+IEJhc2VkIG9uIHRoZSBzdGF0ZW1lbnRz IGFib3ZlLCBJIGhhdmUgYmVsb3cgY29tbWVudHMuDQo+ID4+Pg0KPiA+Pj4+IDEuIEkgYWdyZWUg dG8gYWRkIHRoZSBHVUlEIGludG8gTWRlTW9kdWxlUGtnLCBidXQgaG93IGFib3V0IHVzaW5nDQo+ ID4+Pj4gZ0Vka2lpUGxhdGZvcm1IYXNBY3BpR3VpZCBpbnN0ZWFkIG9mDQo+ID4+Pj4gZ0Vka2lp UGxhdGZvcm1IYXNBY3BpUHJvdG9jb2xHdWlkIGFuZCBhZGQgdGhlIEdVSUQgaW50byBbR3VpZHNd DQo+ID4+Pj4gc2VjdGlvbiBvZiBNZGVNb2R1bGVQa2cuZGVjPyBBcyBQbGF0Zm9ybSBjYW4gaW5z dGFsbA0KPiA+Pj4+IGdFZGtpaVBsYXRmb3JtSGFzQWNwaUd1aWQgUFBJIHRvIGNvbnRyb2wgUEVJ TSBhbmQgaW5zdGFsbA0KPiA+Pj4+IGdFZGtpaVBsYXRmb3JtSGFzQWNwaUd1aWQgUFJPVE9DT0wg dG8gY29udHJvbCBEUklWRVIuDQo+ID4+Pg0KPiA+Pj4gU291bmRzIHJlYXNvbmFibGUsIEknbGwg ZG8gdGhpcy4NCj4gPj4+DQo+ID4+Pj4gQW5kIGFub3RoZXIsIG5vDQo+ID4+Pj4gbmVlZCB0byBh ZGQgYSBpbmNsdWRlIGZpbGUgUGxhdGZvcm1IYXNBY3BpLmggYXMgQmFzZVRvb2xzIHN1cHBvcnRz IHRvDQo+ID4+Pj4gYWRkIHRoZSBHVUlEIGRlZmluaXRpb25zIHRvIEF1dG9HZW4gZmlsZXMgZnJv bSBwYWNrYWdlIGRlYy4NCj4gPj4+DQo+ID4+PiBJIGRpc2FncmVlIHdpdGggdGhpcy4gSSBtZWFu LCBJICpwZXJzb25hbGx5KiB3b3VsZG4ndCBtaW5kLCBidXQgdGhpcw0KPiA+Pj4gd291bGQgYmUg aW5jb25zaXN0ZW50IHdpdGggZXhpc3RpbmcgTWRlTW9kdWxlUGtnIHByYWN0aWNlLiBGb3IgZXhh bXBsZSwNCj4gPj4+IHNlZQ0KPiA+Pj4NCj4gPj4+IE1kZU1vZHVsZVBrZy9JbmNsdWRlL0d1aWQv VHR5VGVybS5oDQo+ID4+Pg0KPiA+Pj4gU2ltaWxhcmx5IHRvIHRoZSBjdXJyZW50IGNhc2UsIHRo YXQgR1VJRCAoImdFZmlUdHlUZXJtR3VpZCIpIGhhcyBubyBkYXRhDQo+ID4+PiBzdHJ1Y3R1cmVz IGFzc29jaWF0ZWQgd2l0aCBpdDsgdGhlIGhlYWRlciBmaWxlIG9ubHkgaGFzIGFuIGV4dGVybg0K PiA+Pj4gZGVjbGFyYXRpb24sIGFuZCAtLSBpbXBvcnRhbnRseSAtLSBhbiBhcnJheSBpbml0aWFs aXplciBtYWNybyBjYWxsZWQNCj4gPj4+IEVGSV9UVFlfVEVSTV9HVUlELCB3aGljaCBjYW4gYmUg dXNlZCBpbiB0aGUgZm9sbG93aW5nIHN5bnRheDoNCj4gPj4+DQo+ID4+PiBTVEFUSUMgQ09OU1Qg RUZJX0dVSUQgbVRoaXNJc015R3VpZCA9IEVGSV9UVFlfVEVSTV9HVUlEOw0KPiA+Pj4NCj4gPj4+ IFNvLCBJIHRoaW5rIHRoYXQgdGhlIEdVSUQgaGVhZGVyIGZpbGUgaXMgcmVxdWlyZWQuIEkgd2ls bCBhZGQgaXQgaW4gdjMuDQo+ID4+Pg0KPiA+Pj4gT25jZSB3ZSBnZW5lcmFsaXplIHRoaXMgaWRl YSB0byB0aGUgZGVzaWduIHRoYXQgeW91IGxhaWQgb3V0IGFib3ZlLCB3ZQ0KPiA+Pj4gY2FuIHBl cmhhcHMgZWxpbWluYXRlIHRoZSBoZWFkZXIgZmlsZS4gQnV0LCBmb3Igbm93LCBJIHRoaW5rIHdl IHNob3VsZA0KPiA+Pj4gcmVtYWluIGNvbnNpc3RlbnQgd2l0aCBvdGhlciBNZGVNb2R1bGVQa2cg R1VJRCBkZWZpbml0aW9ucy4NCj4gPj4+DQo+ID4+Pj4gMi4gWW91IGNhbiBmaWxlIGJ1Z3ppbGxh IGJ1ZyB0byByZXF1ZXN0IEJhc2VUb29scyBzeW50YXggc3VwcG9ydCB0bw0KPiA+Pj4+IGRlY2xh cmUgUENEIGluIFtEZXBleF0gc2VjdGlvbiBvZiBpbmYuIFRoZW4gUGNkRGVwZXhHdWlkIGFuZCBE ZXBleExpYg0KPiA+Pj4+IGNvdWxkIGJlIGZpbmFsbHkgYWRkZWQgaW50byBjb3JlIHBhY2thZ2Ug TWRlTW9kdWxlUGtnIG9yIGV2ZW4gTWRlUGtnDQo+ID4+Pj4gKEkgcHJlZmVyKS4NCj4gPj4+DQo+ ID4+PiBJIGZpbGVkOg0KPiA+Pj4NCj4gPj4+IGh0dHBzOi8vYnVnemlsbGEudGlhbm9jb3JlLm9y Zy9zaG93X2J1Zy5jZ2k/aWQ9NDQzIC0tIGZvciBCYXNlVG9vbHMsDQo+ID4+PiBodHRwczovL2J1 Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hvd19idWcuY2dpP2lkPTQ0NCAtLSBmb3IgdGhlIElORiBz cGVjDQo+ID4+Pg0KPiA+Pj4+IEJlZm9yZSB0aGF0LCBob3cgYWJvdXQgaW1wbGVtZW50aW5nIHRo ZQ0KPiA+Pj4+IFBsYXRmb3JtSGFzQWNwaUxpYiBpbiBub25lIGNvcmUgcGFja2FnZT8NCj4gPj4+ DQo+ID4+PiBXb3JrcyBmb3IgbWU7IEknbGwgc3BsaXQgdGhhdCBwYXJ0IG9mZiBhbmQga2VlcCBp dCB1bmRlciBBcm1Qa2cuDQo+ID4+Pg0KPiA+Pj4gVGhhbmtzDQo+ID4+PiBMYXN6bG8NCj4gPj4+ DQo+ID4+Pj4NCj4gPj4+Pg0KPiA+Pj4+IFRoYW5rcywNCj4gPj4+PiBTdGFyDQo+ID4+Pj4gLS0t LS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPj4+PiBGcm9tOiBlZGsyLWRldmVsIFttYWlsdG86 ZWRrMi1kZXZlbC1ib3VuY2VzQGxpc3RzLjAxLm9yZ10gT24gQmVoYWxmIE9mDQo+ID4+PiBBcmQg Qmllc2hldXZlbA0KPiA+Pj4+IFNlbnQ6IFRodXJzZGF5LCBNYXJjaCAyMywgMjAxNyA1OjA5IFBN DQo+ID4+Pj4gVG86IFplbmcsIFN0YXIgPHN0YXIuemVuZ0BpbnRlbC5jb20+OyBLaW5uZXksIE1p Y2hhZWwgRA0KPiA+Pj4gPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPjsgYWZpc2hAYXBwbGUu Y29tDQo+ID4+Pj4gQ2M6IFRpYW4sIEZlbmcgPGZlbmcudGlhbkBpbnRlbC5jb20+OyBMYXN6bG8g RXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPjsNCj4gPj4+IGVkazItZGV2ZWwtMDEgPGVkazItZGV2 ZWxAbGlzdHMuMDEub3JnPjsgTGVpZiBMaW5kaG9sbQ0KPiA+Pj4gPGxlaWYubGluZGhvbG1AbGlu YXJvLm9yZz4NCj4gPj4+PiBTdWJqZWN0OiBSZTogW2VkazJdIFtQQVRDSCB2MiAwNS8xMl0gQXJt UGtnOiBpbnRyb2R1Y2UgRURLSUkgUGxhdGZvcm0gSGFzDQo+ID4+PiBBQ1BJIFByb3RvY29sLCBh bmQgcGx1Zy1pbiBsaWJyYXJ5DQo+ID4+Pj4NCj4gPj4+PiBPbiAyMyBNYXJjaCAyMDE3IGF0IDAx OjQxLCBaZW5nLCBTdGFyIDxzdGFyLnplbmdAaW50ZWwuY29tPiB3cm90ZToNCj4gPj4+Pj4gSSBw cmVmZXIgdG8gZG8gbm90IGluY2x1ZGUgdGhlIHByb3RvY29sIGRlZmluaXRpb24gYW5kIHRoZSBs aWJyYXJ5IGluc3RhbmNlDQo+ID4+PiBpbnRvIE1kZU1vZHVsZVBrZyBhdCB0aGlzIG1vbWVudCB1 bnRpbCB0aGV5IG5lZWQgdG8gYmUgdXNlZCBieSBtdWx0aXBsZQ0KPiA+Pj4gcGxhdGZvcm1zL2Fy Y2hzLg0KPiA+Pj4+Pg0KPiA+Pj4+DQo+ID4+Pj4gSSBkaXNhZ3JlZS4gTm93aGVyZSBpbiB0aGUg UEkgb3IgVUVGSSBzcGVjIGlzIHRoZXJlIGFueSBtZW50aW9uIChmb3IgYW55DQo+ID4+PiBhcmNo aXRlY3R1cmUpIHRoYXQgQUNQSSBpcyBtYW5kYXRvcnkuIEdpdmVuIHRoYXQgRURLMiBpcyB0aGUg cmVmZXJlbmNlDQo+ID4+PiBwbGF0Zm9ybSBVRUZJL1BJLCBhbmQgbm90IGZvciBBQ1BJIG9yIHRo ZSBQQy94ODYgcGxhdGZvcm0sIEkgdGhpbmsgaXQgaXMNCj4gPj4+IHVucmVhc29uYWJsZSB0byBo YXZlIGxvdHMgYW5kIGxvdHMgb2YgUEMgcXVpcmtzIChpLmUuLCBhbGxvY2F0aW9ucyBiZWxvdyA0 IEdCKSBpbg0KPiA+Pj4gTWRlTW9kdWxlUGtnLCBidXQgdGhlbiBkaXNhbGxvdyBhIGNsZWFuIGFw cHJvYWNoIHRvIG1ha2UgQUNQSSBzZWxlY3RhYmxlLA0KPiA+Pj4gaW4gYSB3YXkgdGhhdCBpcyB0 cnVlIHRvIHRoZSBzcGlyaXQgb2YgUEkgKGkuZS4sIHVzaW5nIHByb3RvY29sIGRlcGVuZGVuY2ll cykNCj4gPj4+Pg0KPiA+Pj4+IFNvIEkgdGhpbmsgYXQgbGVhc3QgdGhlIHByb3RvY29sIGRlZmlu aXRpb25zIGJlbG9uZyBpbiBNZGVNb2R1bGVQa2cuDQo+ID4+Pj4NCj4gPj4+PiBUaGFua3MsDQo+ ID4+Pj4gQXJkLg0KPiA+Pj4+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fDQo+ID4+Pj4gZWRrMi1kZXZlbCBtYWlsaW5nIGxpc3QNCj4gPj4+PiBlZGsyLWRl dmVsQGxpc3RzLjAxLm9yZw0KPiA+Pj4+IGh0dHBzOi8vbGlzdHMuMDEub3JnL21haWxtYW4vbGlz dGluZm8vZWRrMi1kZXZlbA0KPiA+Pj4+DQo+ID4+Pg0KPiA+Pj4gX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCj4gPj4+IGVkazItZGV2ZWwgbWFpbGluZyBs aXN0DQo+ID4+PiBlZGsyLWRldmVsQGxpc3RzLjAxLm9yZw0KPiA+Pj4gaHR0cHM6Ly9saXN0cy4w MS5vcmcvbWFpbG1hbi9saXN0aW5mby9lZGsyLWRldmVsDQoNCg==