From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by mail.openembedded.org (Postfix) with ESMTP id E0B396F7C6 for ; Wed, 12 Mar 2014 10:05:04 +0000 (UTC) Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga102.fm.intel.com with ESMTP; 12 Mar 2014 03:05:04 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="4.97,636,1389772800"; d="scan'208";a="496843544" Received: from irsmsx103.ger.corp.intel.com ([163.33.3.157]) by fmsmga002.fm.intel.com with ESMTP; 12 Mar 2014 03:04:58 -0700 Received: from irsmsx105.ger.corp.intel.com ([169.254.7.62]) by IRSMSX103.ger.corp.intel.com ([169.254.3.84]) with mapi id 14.03.0123.003; Wed, 12 Mar 2014 10:04:55 +0000 From: "Stanacar, StefanX" To: "koen@dominion.thruhere.net" Thread-Topic: [PATCH 3/3] classes: Add gummiboot class Thread-Index: AQHPOWdJj9Sm2kg3HUazUxNhCGek5prUpkQAgAC+NYCABw0bAIAAkXsAgAA/O4A= Date: Wed, 12 Mar 2014 10:04:55 +0000 Message-ID: <1394618709.18740.3.camel@firebird.rb.intel.com> References: <23d446488f4304516b483a2293bd34c86a23bdff.1394128875.git.stefanx.stanacar@intel.com> <1394186245.29948.5.camel@firebird.rb.intel.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.237.105.60] MIME-Version: 1.0 Cc: "dvhart@linux.intel.com" , "openembedded-core@lists.openembedded.org" Subject: Re: [PATCH 3/3] classes: Add gummiboot class X-BeenThere: openembedded-core@lists.openembedded.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Patches and discussions about the oe-core layer List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Mar 2014 10:05:08 -0000 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-ID: <317A62C4484ECC45A8067E1B9CB6DD04@intel.com> Content-Transfer-Encoding: base64 DQoNCg0KT24gV2VkLCAyMDE0LTAzLTEyIGF0IDA3OjE4ICswMTAwLCBLb2VuIEtvb2kgd3JvdGU6 DQo+IE9wIDExIG1ydC4gMjAxNCwgb20gMjI6MzggaGVlZnQgRGFycmVuIEhhcnQgPGR2aGFydEBs aW51eC5pbnRlbC5jb20+IGhldCB2b2xnZW5kZSBnZXNjaHJldmVuOg0KPiANCj4gPiBPbiAzLzcv MTQsIDE6NTcsICJTdGFuYWNhciwgU3RlZmFuWCIgPHN0ZWZhbnguc3RhbmFjYXJAaW50ZWwuY29t PiB3cm90ZToNCj4gPiANCj4gPj4gDQo+ID4+IA0KPiA+PiANCj4gPj4gT24gVGh1LCAyMDE0LTAz LTA2IGF0IDE0OjM2IC0wODAwLCBEYXJyZW4gSGFydCB3cm90ZToNCj4gPj4+IE9uIDMvNi8xNCwg MTA6MTUsICJTdGVmYW4gU3RhbmFjYXIiIDxzdGVmYW54LnN0YW5hY2FyQGludGVsLmNvbT4gd3Jv dGU6DQo+ID4+PiANCj4gPj4+PiBBZGRzIGEgZ3VtbWlib290IGNsYXNzIHNpbWlsYXIgdG8gZ3J1 Yi1lZmkgY2xhc3MgYW5kIG1ha2VzIHRoZQ0KPiA+Pj4gbmVjZXNzYXJ5DQo+ID4+Pj4gY2hhbmdl cyBzbyBpdCBjYW4gYmUgdXNlZCBmb3IgbGl2ZS9oZGRpbWcgaW1hZ2VzIGFzIHdlbGwuDQo+ID4+ Pj4gDQo+ID4+Pj4gT25lIGNhbiBzZXQgRUZJX1BST1ZJREVSID0gImd1bW1pYm9vdCIgaW4gbG9j YWwuY29uZiB0byB1c2UgZ3VtbWlib290DQo+ID4+Pj4gaW5zdGVhZCBvZiBncnViLWVmaS4NCj4g Pj4+PiBHdW1taWJvb3QgcmVxdWlyZXMgc29tZSBrZXJuZWwgb3B0aW9ucyB0aGF0IGFyZSBub3Qg ZW5hYmxlZCBieSBkZWZhdWx0LA0KPiA+Pj4+IHNvIG9uZSBoYXMgdG8gYnVpbGQNCj4gPj4+PiB3 aXRoIEtFUk5FTF9GRUFUVVJFU19hcHBlbmQgPSAiIGNmZy9lZmktZXh0Ii4NCj4gPj4+IA0KPiA+ Pj4gY2ZnL2VmaSBpcyBpbnN1ZmZpY2llbnQ/DQo+ID4+PiANCj4gPj4gDQo+ID4+IGNmZy9lZmkg ZG9lc24ndCBoYXZlIENPTkZJR19FRklfU1RVQj15IHdoaWNoIGlzIHJlcXVpcmVkIGJ5IGd1bW1p Ym9vdC4NCj4gPj4gY2ZnL2VmaS1leHQgYWRkcyBtb3JlIHRoYW4gdGhhdCwgaXQncyB0cnVlLg0K PiA+IA0KPiA+IFdlaXJkLi4uIEFsdGhvdWdoIHRoZSBTVFVCIHNob3VsZCBwcm9iYWJseSBiZSBp biBlZmkgcmF0aGVyIHRoYW4gZWZpLWV4dC4NCj4gPiBJJ20gc3VycHJpc2VkIGd1bW1pYm9vdCBy ZXF1aXJlcyBTVFVCLi4uIFNpbmNlIFNUVUIgaXMgdGhlcmUgdG8gYWxsb3cgdGhlDQo+ID4ga2Vy bmVsIHRvIGJlIGJvb3RlZCBkaXJlY3RseSwgbm8gYm9vdGxvYWRlciByZXF1aXJlZC4gSSBndWVz cyBndW1taWJvb3QgaXMNCj4gPiBzbGlnaHRseSBsZXNzIHRoYW4gYSBib290IGxvYWRlciA6LSkN Cj4gDQo+IFRoZSBndW1taWJvb3QgZG9jcyBzdGlsbCBjbGFpbSB0byBzdXBwb3J0IGJvdGggJ2xp bnV4JyBhbmQgJ2VmaScsIHNvIGl0J3Mgc3VwcG9zZWQgdG8gd29yay4NCg0KVGhlIHNpdGUgY2xh aW1zIHRoYXQgTGludXgga2VybmVscyBuZWVkIHRvIGJlIGJ1aWx0IHdpdGgNCkNPTkZJR19FRklf U1RVQiwgYW5kIHdpdGhvdXQgdGhhdCBmb3IgbWUgaXQgd291bGRuJ3QgYm9vdC4NCg0KV2hhdCB5 b3UncmUgc2F5aW5nIGlzIGZvciB0aGUgY29uZmlnIGZpbGUgDQpGcm9tIHRoZSBzaXRlOg0KDQpl ZmkJZXhlY3V0YWJsZSBFRkkgaW1hZ2UNCm9wdGlvbnMJb3B0aW9ucyB0byBwYXNzIHRvIHRoZSBF RkkgaW1hZ2UgLyBrZXJuZWwgY29tbWFuZCBsaW5lDQpsaW51eAlsaW51eCBrZXJuZWwgaW1hZ2Ug KGd1bW1pYm9vdCBzdGlsbCByZXF1aXJlcyB0aGUga2VybmVsIHRvIGhhdmUgYW4NCkVGSSBzdHVi KQ0KaW5pdHJkCWluaXRyYW1mcyBpbWFnZSAoZ3VtbWlib290IGp1c3QgYWRkcyB0aGlzIGFzIG9w dGlvbiBpbml0cmQ9KQ0KDQpDaGVlcnMsDQpTdGVmYW4NCg0KPiANCj4gcmVnYXJkcywNCj4gDQo+ IEtvZW4NCj4gDQo+ID4gDQo+ID4gSSdkIEFjayBhIHBhdGNoIHRvIG1vdmUgU1RVQiBmcm9tIGVm aS1leHQgdG8gZWZpLg0KPiA+IA0KPiA+IA0KPiA+PiANCj4gPj4gSXQncyBhbHNvIGEgZ29vZCBp ZGVhIHRvIGVuYWJsZSBDT05GSUdfRUZJVkFSU19GUywgd2hpY2ggaXMgdGhlDQo+ID4+IG5ld2Vy L2JldHRlciBpbnRlcmZhY2UgdGhhbiBDT05GSUdfRUZJX1ZBUlMgdGhhdCBjZmcvZWZpLWV4dCBl bmFibGVzLg0KPiA+IA0KPiA+IA0KPiA+IEhybS4uLiBPSywgcGVyaGFwcyB0aW1lIHRvIHJldmlz aXQgdGhvc2UgZnJhZ21lbnRzIGFuZCB1cGRhdGUgdGhlbSBmb3INCj4gPiBjdXJyZW50IHVzYWdl Lg0KPiA+IA0KPiA+IA0KPiA+IC0tDQo+ID4gRGFycmVuDQo+ID4gDQo+ID4+Pj4gDQo+ID4+Pj4g VGhlIGluc3RhbGwgc2NyaXB0cyBoYXZlIGJlZW4gdXBkYXRlZCB0b28sIGtlZXBpbmcgdGhlIG9s ZCBiZWhhdmlvdXINCj4gPj4+PiBhcm91bmQsDQo+ID4+Pj4gYnV0IGFjY291bnRpbmcgZm9yIHRo ZSBuZXcgYm9vdCBsb2FkZXIgY29uZmlnIGZpbGVzIChpZiB0aGV5IGV4aXN0KS4NCj4gPj4+PiBJ dCBjYW4gYmUgYXJndWVkIHRoYXQgdGhlIGluc3RhbGxlciBhbmQgYm9vdGltZyBhcmUgYSBiaXQg d2llcmQgYW5kIG5vdA0KPiA+Pj4+IG5lY2Vzc2FyaWx5IGNvcnJlY3QsDQo+ID4+Pj4gYnV0IEkg d2FudGVkIHRvIGhhdmUgdGhlIGV4YWN0IHNhbWUgYmVodmlvdXIgd2l0aCBndW1taWJvb3QuDQo+ ID4+Pj4gV2l0aCB0aGUgZGVmYXVsdCBFRklfUFJPVklERVIgPSAiZ3J1Yi1lZmkiIG5vdGhpbmcg Y2hhbmdlcywgZXZlcnRoaW5nDQo+ID4+Pj4gc2hvdWxkIGJlIGp1c3QgYXMgYmVmb3JlLg0KPiA+ Pj4+IA0KPiA+Pj4+IEkndmUgdGVzdGVkIGxpdmUgYm9vdCwgaW5zdGFsbCBhbmQgbm9ybWFsIGJv b3Qgb246DQo+ID4+Pj4gICAtIEZSSTINCj4gPj4+PiAgIC0gZ2VuZXJpY3g4Ni02NCBvbiBOVUMN Cj4gPj4+PiB3aXRoOg0KPiA+Pj4+IEVGSV9QUk9WSURFUiA9ICJndW1taWJvb3QiDQo+ID4+Pj4g S0VSTkVMX0ZFQVRVUkVTX2FwcGVuZCA9ICIgY2ZnL2VmaS1leHQiDQo+ID4+Pj4gaW4gbG9jYWwu Y29uZi4NCj4gPj4+PiANCj4gPj4+PiBTaWduZWQtb2ZmLWJ5OiBTdGVmYW4gU3RhbmFjYXIgPHN0 ZWZhbnguc3RhbmFjYXJAaW50ZWwuY29tPg0KPiA+Pj4gDQo+ID4+PiANCj4gPj4+IEdlbmVyYWxs eSBsb29rcyBnb29kLiBNeSBvbmx5IHJlc2VydmF0aW9uIGlzIHRoZSBzYW1lIGFzIGZvciAyLzMs IHNob3VsZA0KPiA+Pj4gd2UgZGVmaW5lIGFuIEVGSSBpbnRlcmZhY2UgcmF0aGVyIHRoYW4gaGF2 aW5nIHRvIGNvbnN0cnVjdCBmdW5jdGlvbg0KPiA+Pj4gbmFtZXMNCj4gPj4+IGluIHRoZSBjb25z dW1lcnMgb2YgdGhpcyBjbGFzcz8NCj4gPj4gDQo+ID4+IEkgZG9uJ3QgaGF2ZSBhIHN0cm9uZyBv cGluaW9uIGhlcmUsIGl0IGp1c3Qgc2VlbWVkIHRoZSBzaW1wbGVzdCB3YXkgYXRtLA0KPiA+PiB0 aGVuIGFkZGluZyBhbm90aGVyIGludGVyZmFjZS4NCj4gPj4gDQo+ID4+IENoZWVycywNCj4gPj4g U3RlZmFuDQo+ID4+IA0KPiA+Pj4gDQo+ID4+PiAtLQ0KPiA+Pj4gRGFycmVuDQo+ID4+PiANCj4g Pj4+PiAtLS0NCj4gPj4+PiBtZXRhL2NsYXNzZXMvZ3VtbWlib290LmJiY2xhc3MgICAgICAgICAg ICAgICAgICAgICB8IDExMg0KPiA+Pj4+ICsrKysrKysrKysrKysrKysrKysrKw0KPiA+Pj4+IC4u Li9pbml0cmRzY3JpcHRzL2ZpbGVzL2luaXQtaW5zdGFsbC1lZmkuc2ggICAgICAgIHwgIDUxICsr KysrKystLS0NCj4gPj4+PiAyIGZpbGVzIGNoYW5nZWQsIDE0NyBpbnNlcnRpb25zKCspLCAxNiBk ZWxldGlvbnMoLSkNCj4gPj4+PiBjcmVhdGUgbW9kZSAxMDA2NDQgbWV0YS9jbGFzc2VzL2d1bW1p Ym9vdC5iYmNsYXNzDQo+ID4+Pj4gDQo+ID4+Pj4gZGlmZiAtLWdpdCBhL21ldGEvY2xhc3Nlcy9n dW1taWJvb3QuYmJjbGFzcw0KPiA+Pj4+IGIvbWV0YS9jbGFzc2VzL2d1bW1pYm9vdC5iYmNsYXNz DQo+ID4+Pj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPj4+PiBpbmRleCAwMDAwMDAwLi41YzEx Mjg2DQo+ID4+Pj4gLS0tIC9kZXYvbnVsbA0KPiA+Pj4+ICsrKyBiL21ldGEvY2xhc3Nlcy9ndW1t aWJvb3QuYmJjbGFzcw0KPiA+Pj4+IEBAIC0wLDAgKzEsMTEyIEBADQo+ID4+Pj4gK0VGSUNMQVNT X0ZVTkNfUFJFRklYID0gImd1bW1pYm9vdCINCj4gPj4+PiArDQo+ID4+Pj4gK2RvX2Jvb3RpbWdb ZGVwZW5kc10gKz0gImd1bW1pYm9vdDpkb19kZXBsb3kiDQo+ID4+Pj4gK2RvX2Jvb3RkaXJlY3Rk aXNrW2RlcGVuZHNdICs9ICJndW1taWJvb3Q6ZG9fZGVwbG95Ig0KPiA+Pj4+ICsNCj4gPj4+PiAr RUZJRElSID0gIi9FRkkvQk9PVCINCj4gPj4+PiArDQo+ID4+Pj4gK0dVTU1JQk9PVF9DRkcgPz0g IiR7U30vbG9hZGVyLmNvbmYiDQo+ID4+Pj4gK0dVTU1JQk9PVF9FTlRSSUVTID89ICIiDQo+ID4+ Pj4gK0dVTU1JQk9PVF9USU1FT1VUID89ICIxMCINCj4gPj4+PiArDQo+ID4+Pj4gK2d1bW1pYm9v dF9wb3B1bGF0ZSgpIHsNCj4gPj4+PiArICAgICAgICBERVNUPSQxDQo+ID4+Pj4gKw0KPiA+Pj4+ ICsgICAgICAgIEVGSV9JTUFHRT0iZ3VtbWlib290aWEzMi5lZmkiDQo+ID4+Pj4gKyAgICAgICAg REVTVF9FRklfSU1BR0U9ImJvb3RpYTMyLmVmaSINCj4gPj4+PiArICAgICAgICBpZiBbICIke1RB UkdFVF9BUkNIfSIgPSAieDg2XzY0IiBdOyB0aGVuDQo+ID4+Pj4gKyAgICAgICAgICAgIEVGSV9J TUFHRT0iZ3VtbWlib290eDY0LmVmaSINCj4gPj4+PiArICAgICAgICAgICAgREVTVF9FRklfSU1B R0U9ImJvb3R4NjQuZWZpIg0KPiA+Pj4+ICsgICAgICAgIGZpDQo+ID4+Pj4gKw0KPiA+Pj4+ICsg ICAgICAgIGluc3RhbGwgLWQgJHtERVNUfSR7RUZJRElSfQ0KPiA+Pj4+ICsgICAgICAgICMgZ3Vt bWlib290IHJlcXVpcmVzIHRoZXNlIHBhdGhzIGZvciBjb25maWd1cmF0aW9uIGZpbGVzDQo+ID4+ Pj4gKyAgICAgICAgIyB0aGV5IGFyZSBub3QgY3VzdG9taXphYmxlIHNvIG5vIHBvaW50IGluIG5l dyB2YXJzDQo+ID4+Pj4gKyAgICAgICAgaW5zdGFsbCAtZCAke0RFU1R9L2xvYWRlcg0KPiA+Pj4+ ICsgICAgICAgIGluc3RhbGwgLWQgJHtERVNUfS9sb2FkZXIvZW50cmllcw0KPiA+Pj4+ICsgICAg ICAgIGluc3RhbGwgLW0gMDY0NCAke0RFUExPWV9ESVJfSU1BR0V9LyR7RUZJX0lNQUdFfQ0KPiA+ Pj4+ICR7REVTVH0ke0VGSURJUn0vJHtERVNUX0VGSV9JTUFHRX0NCj4gPj4+PiArICAgICAgICBp bnN0YWxsIC1tIDA2NDQgJHtHVU1NSUJPT1RfQ0ZHfSAke0RFU1R9L2xvYWRlci9sb2FkZXIuY29u Zg0KPiA+Pj4+ICsgICAgICAgIGZvciBpIGluICR7R1VNTUlCT09UX0VOVFJJRVN9OyBkbw0KPiA+ Pj4+ICsgICAgICAgICAgICBpbnN0YWxsIC1tIDA2NDQgJHtpfSAke0RFU1R9L2xvYWRlci9lbnRy aWVzDQo+ID4+Pj4gKyAgICAgICAgZG9uZQ0KPiA+Pj4+ICt9DQo+ID4+Pj4gKw0KPiA+Pj4+ICtn dW1taWJvb3RfaXNvX3BvcHVsYXRlKCkgew0KPiA+Pj4+ICsgICAgICAgIGlzb19kaXI9JDENCj4g Pj4+PiArICAgICAgICBndW1taWJvb3RfcG9wdWxhdGUgJGlzb19kaXINCj4gPj4+PiArICAgICAg ICBta2RpciAtcCAke0VGSUlNR0RJUn0vJHtFRklESVJ9DQo+ID4+Pj4gKyAgICAgICAgY3AgJGlz b19kaXIvJHtFRklESVJ9LyogJHtFRklJTUdESVJ9JHtFRklESVJ9DQo+ID4+Pj4gKyAgICAgICAg Y3AgJGlzb19kaXIvdm1saW51eiAke0VGSUlNR0RJUn0NCj4gPj4+PiArICAgICAgICBlY2hvICIk e0RFU1RfRUZJX0lNQUdFfSIgPiAke0VGSUlNR0RJUn0vc3RhcnR1cC5uc2gNCj4gPj4+PiArICAg ICAgICBpZiBbIC1mICIkaXNvX2Rpci9pbml0cmQiIF0gOyB0aGVuDQo+ID4+Pj4gKyAgICAgICAg ICAgIGNwICRpc29fZGlyL2luaXRyZCAke0VGSUlNR0RJUn0NCj4gPj4+PiArICAgICAgICBmaQ0K PiA+Pj4+ICt9DQo+ID4+Pj4gKw0KPiA+Pj4+ICtndW1taWJvb3RfaGRkaW1nX3BvcHVsYXRlKCkg ew0KPiA+Pj4+ICsgICAgICAgIGd1bW1pYm9vdF9wb3B1bGF0ZSAkMQ0KPiA+Pj4+ICt9DQo+ID4+ Pj4gKw0KPiA+Pj4+ICtweXRob24gYnVpbGRfZ3VtbWlib290X2NmZygpIHsNCj4gPj4+PiArICAg IHMgPSBkLmdldFZhcigiUyIsIFRydWUpDQo+ID4+Pj4gKyAgICBsYWJlbHMgPSBkLmdldFZhcign TEFCRUxTJywgVHJ1ZSkNCj4gPj4+PiArICAgIGlmIG5vdCBsYWJlbHM6DQo+ID4+Pj4gKyAgICAg ICAgYmIuZGVidWcoMSwgIkxBQkVMUyBub3QgZGVmaW5lZCwgbm90aGluZyB0byBkbyIpDQo+ID4+ Pj4gKyAgICAgICAgcmV0dXJuDQo+ID4+Pj4gKw0KPiA+Pj4+ICsgICAgaWYgbGFiZWxzID09IFtd Og0KPiA+Pj4+ICsgICAgICAgIGJiLmRlYnVnKDEsICJObyBsYWJlbHMsIG5vdGhpbmcgdG8gZG8i KQ0KPiA+Pj4+ICsgICAgICAgIHJldHVybg0KPiA+Pj4+ICsNCj4gPj4+PiArICAgIGNmaWxlID0g ZC5nZXRWYXIoJ0dVTU1JQk9PVF9DRkcnLCBUcnVlKQ0KPiA+Pj4+ICsgICAgdHJ5Og0KPiA+Pj4+ ICsgICAgICAgICBjZmdmaWxlID0gb3BlbihjZmlsZSwgJ3cnKQ0KPiA+Pj4+ICsgICAgZXhjZXB0 IE9TRXJyb3I6DQo+ID4+Pj4gKyAgICAgICAgcmFpc2UgYmIuYnVpbGQuZnVuY0ZhaWxlZCgnVW5h YmxlIHRvIG9wZW4gJXMnICUgKGNmaWxlKSkNCj4gPj4+PiArDQo+ID4+Pj4gKyAgICBjZmdmaWxl LndyaXRlKCcjIEF1dG9tYXRpY2FsbHkgY3JlYXRlZCBieSBPRVxuJykNCj4gPj4+PiArICAgIGNm Z2ZpbGUud3JpdGUoJ2RlZmF1bHQgJXNcbicgJSAobGFiZWxzLnNwbGl0KClbMF0pKQ0KPiA+Pj4+ ICsgICAgdGltZW91dCA9IGQuZ2V0VmFyKCdHVU1NSUJPT1RfVElNRU9VVCcsIFRydWUpDQo+ID4+ Pj4gKyAgICBpZiB0aW1lb3V0Og0KPiA+Pj4+ICsgICAgICAgIGNmZ2ZpbGUud3JpdGUoJ3RpbWVv dXQgJXNcbicgJSB0aW1lb3V0KQ0KPiA+Pj4+ICsgICAgZWxzZToNCj4gPj4+PiArICAgICAgICBj ZmdmaWxlLndyaXRlKCd0aW1lb3V0IDEwXG4nKQ0KPiA+Pj4+ICsgICAgY2ZnZmlsZS5jbG9zZSgp DQo+ID4+Pj4gKw0KPiA+Pj4+ICsgICAgZm9yIGxhYmVsIGluIGxhYmVscy5zcGxpdCgpOg0KPiA+ Pj4+ICsgICAgICAgIGxvY2FsZGF0YSA9IGQuY3JlYXRlQ29weSgpDQo+ID4+Pj4gKw0KPiA+Pj4+ ICsgICAgICAgIG92ZXJyaWRlcyA9IGxvY2FsZGF0YS5nZXRWYXIoJ09WRVJSSURFUycsIFRydWUp DQo+ID4+Pj4gKyAgICAgICAgaWYgbm90IG92ZXJyaWRlczoNCj4gPj4+PiArICAgICAgICAgICAg cmFpc2UgYmIuYnVpbGQuRnVuY0ZhaWxlZCgnT1ZFUlJJREVTIG5vdCBkZWZpbmVkJykNCj4gPj4+ PiArDQo+ID4+Pj4gKyAgICAgICAgZW50cnlmaWxlID0gIiVzLyVzLmNvbmYiICUgKHMsIGxhYmVs KQ0KPiA+Pj4+ICsgICAgICAgIGQuYXBwZW5kVmFyKCJHVU1NSUJPT1RfRU5UUklFUyIsICIgIiAr IGVudHJ5ZmlsZSkNCj4gPj4+PiArICAgICAgICB0cnk6DQo+ID4+Pj4gKyAgICAgICAgICAgIGVu dHJ5Y2ZnID0gb3BlbihlbnRyeWZpbGUsICJ3IikNCj4gPj4+PiArICAgICAgICBleGNlcHQgT1NF cnJvcjoNCj4gPj4+PiArICAgICAgICAgICAgcmFpc2UgYmIuYnVpbGQuZnVuY0ZhaWxlZCgnVW5h YmxlIHRvIG9wZW4gJXMnICUNCj4gPj4+IChlbnRyeWZpbGUpKQ0KPiA+Pj4+ICsgICAgICAgIGxv Y2FsZGF0YS5zZXRWYXIoJ09WRVJSSURFUycsIGxhYmVsICsgJzonICsgb3ZlcnJpZGVzKQ0KPiA+ Pj4+ICsgICAgICAgIGJiLmRhdGEudXBkYXRlX2RhdGEobG9jYWxkYXRhKQ0KPiA+Pj4+ICsNCj4g Pj4+PiArICAgICAgICBlbnRyeWNmZy53cml0ZSgndGl0bGUgJXNcbicgJSBsYWJlbCkNCj4gPj4+ PiArICAgICAgICBlbnRyeWNmZy53cml0ZSgnbGludXggL3ZtbGludXpcbicpDQo+ID4+Pj4gKw0K PiA+Pj4+ICsgICAgICAgIGFwcGVuZCA9IGxvY2FsZGF0YS5nZXRWYXIoJ0FQUEVORCcsIFRydWUp DQo+ID4+Pj4gKyAgICAgICAgaW5pdHJkID0gbG9jYWxkYXRhLmdldFZhcignSU5JVFJEJywgVHJ1 ZSkNCj4gPj4+PiArDQo+ID4+Pj4gKyAgICAgICAgaWYgaW5pdHJkOg0KPiA+Pj4+ICsgICAgICAg ICAgICBlbnRyeWNmZy53cml0ZSgnaW5pdHJkIC9pbml0cmRcbicpDQo+ID4+Pj4gKyAgICAgICAg bGIgPSBsYWJlbA0KPiA+Pj4+ICsgICAgICAgIGlmIGxhYmVsID09ICJpbnN0YWxsIjoNCj4gPj4+ PiArICAgICAgICAgICAgbGIgPSAiaW5zdGFsbC1lZmkiDQo+ID4+Pj4gKyAgICAgICAgZW50cnlj Zmcud3JpdGUoJ29wdGlvbnMgTEFCRUw9JXMgJyAlIGxiKQ0KPiA+Pj4+ICsgICAgICAgIGlmIGFw cGVuZDoNCj4gPj4+PiArICAgICAgICAgICAgZW50cnljZmcud3JpdGUoJyVzJyAlIGFwcGVuZCkN Cj4gPj4+PiArICAgICAgICBlbnRyeWNmZy53cml0ZSgnXG4nKQ0KPiA+Pj4+ICsgICAgICAgIGVu dHJ5Y2ZnLmNsb3NlKCkNCj4gPj4+PiArfQ0KPiA+Pj4+ICsNCj4gPj4+PiArcHl0aG9uIGJ1aWxk X2VmaV9jZmcoKSB7DQo+ID4+Pj4gKyAgICBiYi5idWlsZC5leGVjX2Z1bmMoImJ1aWxkX2d1bW1p Ym9vdF9jZmciLCBkKQ0KPiA+Pj4+ICt9DQo+ID4+Pj4gZGlmZiAtLWdpdCBhL21ldGEvcmVjaXBl cy1jb3JlL2luaXRyZHNjcmlwdHMvZmlsZXMvaW5pdC1pbnN0YWxsLWVmaS5zaA0KPiA+Pj4+IGIv bWV0YS9yZWNpcGVzLWNvcmUvaW5pdHJkc2NyaXB0cy9maWxlcy9pbml0LWluc3RhbGwtZWZpLnNo DQo+ID4+Pj4gaW5kZXggOTg0NjYzNy4uZWQzMjIxYiAxMDA2NDQNCj4gPj4+PiAtLS0gYS9tZXRh L3JlY2lwZXMtY29yZS9pbml0cmRzY3JpcHRzL2ZpbGVzL2luaXQtaW5zdGFsbC1lZmkuc2gNCj4g Pj4+PiArKysgYi9tZXRhL3JlY2lwZXMtY29yZS9pbml0cmRzY3JpcHRzL2ZpbGVzL2luaXQtaW5z dGFsbC1lZmkuc2gNCj4gPj4+PiBAQCAtMTA0LDYgKzEwNCw3IEBAIHBhcnRlZCAvZGV2LyR7ZGV2 aWNlfSBta2xhYmVsIGdwdA0KPiA+Pj4+IA0KPiA+Pj4+IGVjaG8gIkNyZWF0aW5nIGJvb3QgcGFy dGl0aW9uIG9uICRib290ZnMiDQo+ID4+Pj4gcGFydGVkIC9kZXYvJHtkZXZpY2V9IG1rcGFydCBw cmltYXJ5IDAlICRib290X3NpemUNCj4gPj4+PiArcGFydGVkIC9kZXYvJHtkZXZpY2V9IHNldCAx IGJvb3Qgb24NCj4gPj4+PiANCj4gPj4+PiBlY2hvICJDcmVhdGluZyByb290ZnMgcGFydGl0aW9u IG9uICRyb290ZnMiDQo+ID4+Pj4gcGFydGVkIC9kZXYvJHtkZXZpY2V9IG1rcGFydCBwcmltYXJ5 ICRyb290ZnNfc3RhcnQgJHJvb3Rmc19lbmQNCj4gPj4+PiBAQCAtMTQ5LDIzICsxNTAsNDEgQEAg bW91bnQgJGJvb3RmcyAvc3NkDQo+ID4+Pj4gDQo+ID4+Pj4gRUZJRElSPSIvc3NkL0VGSS9CT09U Ig0KPiA+Pj4+IG1rZGlyIC1wICRFRklESVINCj4gPj4+PiAtR1JVQkNGRz0iJEVGSURJUi9ncnVi LmNmZyINCj4gPj4+PiAtDQo+ID4+Pj4gY3AgL21lZGlhLyQxL3ZtbGludXogL3NzZA0KPiA+Pj4+ IC0jIENvcHkgdGhlIGVmaSBsb2FkZXIgYW5kIGNvbmZpZyAoYm9vdGkqLmVmaSBhbmQgZ3J1Yi5j ZmcpDQo+ID4+Pj4gLWNwIC9tZWRpYS8kMS9FRkkvQk9PVC8qICRFRklESVINCj4gPj4+PiAtDQo+ ID4+Pj4gLSMgVXBkYXRlIGdydWIgY29uZmlnIGZvciB0aGUgaW5zdGFsbGVkIGltYWdlDQo+ID4+ Pj4gLSMgRGVsZXRlIHRoZSBpbnN0YWxsIGVudHJ5DQo+ID4+Pj4gLXNlZCAtaSAiL21lbnVlbnRy eSAnaW5zdGFsbCcvLC9efS9kIiAkR1JVQkNGRw0KPiA+Pj4+IC0jIERlbGV0ZSB0aGUgaW5pdHJk IGxpbmVzDQo+ID4+Pj4gLXNlZCAtaSAiL2luaXRyZCAvZCIgJEdSVUJDRkcNCj4gPj4+PiAtIyBE ZWxldGUgYW55IExBQkVMPSBzdHJpbmdzDQo+ID4+Pj4gLXNlZCAtaSAicy8gTEFCRUw9W14gXSov IC8iICRHUlVCQ0ZHDQo+ID4+Pj4gLSMgRGVsZXRlIGFueSByb290PSBzdHJpbmdzDQo+ID4+Pj4g LXNlZCAtaSAicy8gcm9vdD1bXiBdKi8gLyIgJEdSVUJDRkcNCj4gPj4+PiAtIyBBZGQgdGhlIHJv b3Q9IGFuZCBvdGhlciBzdGFuZGFyZCBib290IG9wdGlvbnMNCj4gPj4+PiAtc2VkIC1pICJzQGxp bnV4IC92bWxpbnV6ICpAbGludXggL3ZtbGludXogcm9vdD0kcm9vdGZzIHJ3ICRyb290d2FpdA0K PiA+Pj4+IHF1aWV0IEAiICRHUlVCQ0ZHDQo+ID4+Pj4gKyMgQ29weSB0aGUgZWZpIGxvYWRlcg0K PiA+Pj4+ICtjcCAvbWVkaWEvJDEvRUZJL0JPT1QvKi5lZmkgJEVGSURJUg0KPiA+Pj4+ICsNCj4g Pj4+PiAraWYgWyAtZiAvbWVkaWEvJDEvRUZJL0JPT1QvZ3J1Yi5jZmcgXTsgdGhlbg0KPiA+Pj4+ ICsgICAgR1JVQkNGRz0iJEVGSURJUi9ncnViLmNmZyINCj4gPj4+PiArICAgIGNwIC9tZWRpYS8k MS9FRkkvQk9PVC9ncnViLmNmZyAkR1JVQkNGRw0KPiA+Pj4+ICsgICAgIyBVcGRhdGUgZ3J1YiBj b25maWcgZm9yIHRoZSBpbnN0YWxsZWQgaW1hZ2UNCj4gPj4+PiArICAgICMgRGVsZXRlIHRoZSBp bnN0YWxsIGVudHJ5DQo+ID4+Pj4gKyAgICBzZWQgLWkgIi9tZW51ZW50cnkgJ2luc3RhbGwnLywv Xn0vZCIgJEdSVUJDRkcNCj4gPj4+PiArICAgICMgRGVsZXRlIHRoZSBpbml0cmQgbGluZXMNCj4g Pj4+PiArICAgIHNlZCAtaSAiL2luaXRyZCAvZCIgJEdSVUJDRkcNCj4gPj4+PiArICAgICMgRGVs ZXRlIGFueSBMQUJFTD0gc3RyaW5ncw0KPiA+Pj4+ICsgICAgc2VkIC1pICJzLyBMQUJFTD1bXiBd Ki8gLyIgJEdSVUJDRkcNCj4gPj4+PiArICAgICMgRGVsZXRlIGFueSByb290PSBzdHJpbmdzDQo+ ID4+Pj4gKyAgICBzZWQgLWkgInMvIHJvb3Q9W14gXSovIC8iICRHUlVCQ0ZHDQo+ID4+Pj4gKyAg ICAjIEFkZCB0aGUgcm9vdD0gYW5kIG90aGVyIHN0YW5kYXJkIGJvb3Qgb3B0aW9ucw0KPiA+Pj4+ ICsgICAgc2VkIC1pICJzQGxpbnV4IC92bWxpbnV6ICpAbGludXggL3ZtbGludXogcm9vdD0kcm9v dGZzIHJ3DQo+ID4+PiAkcm9vdHdhaXQNCj4gPj4+PiBxdWlldCBAIiAkR1JVQkNGRw0KPiA+Pj4+ ICtmaQ0KPiA+Pj4+ICsNCj4gPj4+PiAraWYgWyAtZCAvbWVkaWEvJDEvbG9hZGVyIF07IHRoZW4N Cj4gPj4+PiArICAgIEdVTU1JQk9PVF9DRkdTPSIvc3NkL2xvYWRlci9lbnRyaWVzLyouY29uZiIN Cj4gPj4+PiArICAgICMgY29weSBjb25maWcgZmlsZXMgZm9yIGd1bW1pYm9vdA0KPiA+Pj4+ICsg ICAgY3AgLWRyIC9tZWRpYS8kMS9sb2FkZXIgL3NzZA0KPiA+Pj4+ICsgICAgIyBkZWxldGUgdGhl IGluc3RhbGwgZW50cnkNCj4gPj4+PiArICAgIHJtIC1mIC9zc2QvbG9hZGVyL2VudHJpZXMvaW5z dGFsbC5jb25mDQo+ID4+Pj4gKyAgICAjIGRlbGV0ZSB0aGUgaW5pdHJkIGxpbmVzDQo+ID4+Pj4g KyAgICBzZWQgLWkgIi9pbml0cmQgL2QiICRHVU1NSUJPT1RfQ0ZHUw0KPiA+Pj4+ICsgICAgIyBk ZWxldGUgYW55IExBQkVMPSBzdHJpbmdzDQo+ID4+Pj4gKyAgICBzZWQgLWkgInMvIExBQkVMPVte IF0qLyAvIiAkR1VNTUlCT09UX0NGR1MNCj4gPj4+PiArICAgICMgZGVsZXRlIGFueSByb290PSBz dHJpbmdzDQo+ID4+Pj4gKyAgICBzZWQgLWkgInMvIHJvb3Q9W14gXSovIC8iICRHVU1NSUJPT1Rf Q0ZHUw0KPiA+Pj4+ICsgICAgIyBhZGQgdGhlIHJvb3Q9IGFuZCBvdGhlciBzdGFuZGFyZCBib290 IG9wdGlvbnMNCj4gPj4+PiArICAgIHNlZCAtaSAic0BvcHRpb25zICpAb3B0aW9ucyByb290PSRy b290ZnMgcncgJHJvb3R3YWl0IHF1aWV0IEAiDQo+ID4+Pj4gJEdVTU1JQk9PVF9DRkdTDQo+ID4+ Pj4gK2ZpDQo+ID4+Pj4gDQo+ID4+Pj4gdW1vdW50IC9zc2QNCj4gPj4+PiBzeW5jDQo+ID4+Pj4g LS0gDQo+ID4+Pj4gMS44LjUuMw0KPiA+Pj4+IA0KPiA+Pj4+IA0KPiA+Pj4gDQo+ID4+PiANCj4g Pj4gDQo+ID4+IA0KPiA+IA0KPiA+IA0KPiA+IC0tIA0KPiA+IERhcnJlbiBIYXJ0DQo+ID4gWW9j dG8gUHJvamVjdCAtIExpbnV4IEtlcm5lbA0KPiA+IEludGVsIE9wZW4gU291cmNlIFRlY2hub2xv Z3kgQ2VudGVyDQo+IA0KDQo=