From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id A9482A0032; Tue, 13 Sep 2022 14:38:49 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 4716740151; Tue, 13 Sep 2022 14:38:49 +0200 (CEST) Received: from mailgw02.pantheon.sk (mailgw01.pantheon.sk [46.229.239.26]) by mails.dpdk.org (Postfix) with ESMTP id AC2C4400D6 for ; Tue, 13 Sep 2022 14:38:48 +0200 (CEST) Received: from mailgw02.pantheon.sk (localhost.localdomain [127.0.0.1]) by mailgw02.pantheon.sk (Proxmox) with ESMTP id 603AD1823F4; Tue, 13 Sep 2022 14:38:48 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pantheon.tech; h=cc:cc:content-transfer-encoding:content-type:content-type :date:from:from:in-reply-to:message-id:mime-version:references :reply-to:subject:subject:to:to; s=dkim; bh=1UdEkzgYh7gYo2y5Ps2O 9A1fOyYQs6/nHcpFkLhJ4aA=; b=w8/t6a2T/5ONncPQX+J2LwDi9a9V4fWRiUG8 ZJ/dpmUwqntm2QGu18hNyXz6/hyip4wO7JRCPAy36Zzkuu8HDdPsSw/sd1eFUuER Pv5AOBqOLPB0AfMsU84XIfHtMF0NkbNOi+RBtt9bqr6i3FT8qI9UWmdc/ZZrMMor DnXX4ZMQOvaTiwIXz60Z29OYWH0lIm5XekPboPzWR3+aTLGOY8CNZ78Jz6hRQBii xXcU/lRoMwhrAZ5NlRhkI4JQP4/10khUDHg5ORunTx40IQ8ZXng2vLP3l0lQud+Y BH3zvKXzFZhjhTNIU6pmoNVj6sOVeDDL0PWd2DO+808ULIP+wA== From: =?utf-8?B?SnVyYWogTGlua2XFoQ==?= To: Bruce Richardson CC: "thomas@monjalon.net" , "david.marchand@redhat.com" , "ronan.randles@intel.com" , "Honnappa.Nagarahalli@arm.com" , "ohilyard@iol.unh.edu" , "lijuan.tu@intel.com" , "dev@dpdk.org" Subject: RE: [PATCH v4 2/9] dts: add developer tools Thread-Topic: [PATCH v4 2/9] dts: add developer tools Thread-Index: AQHYoznIN+7Trr4f90e+HSImhjGjd63USECAgAlGUrA= Date: Tue, 13 Sep 2022 12:38:46 +0000 Message-ID: <5fa9cd15e3204c4bbbcaa3b2d53a9736@pantheon.tech> References: <20220728100044.1318484-1-juraj.linkes@pantheon.tech> <20220729105550.1382664-1-juraj.linkes@pantheon.tech> <20220729105550.1382664-3-juraj.linkes@pantheon.tech> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.101.4.10] Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogQnJ1Y2UgUmljaGFyZHNv biA8YnJ1Y2UucmljaGFyZHNvbkBpbnRlbC5jb20+DQo+IFNlbnQ6IFdlZG5lc2RheSwgU2VwdGVt YmVyIDcsIDIwMjIgNjozNyBQTQ0KPiBUbzogSnVyYWogTGlua2XFoSA8anVyYWoubGlua2VzQHBh bnRoZW9uLnRlY2g+DQo+IENjOiB0aG9tYXNAbW9uamFsb24ubmV0OyBkYXZpZC5tYXJjaGFuZEBy ZWRoYXQuY29tOw0KPiByb25hbi5yYW5kbGVzQGludGVsLmNvbTsgSG9ubmFwcGEuTmFnYXJhaGFs bGlAYXJtLmNvbTsNCj4gb2hpbHlhcmRAaW9sLnVuaC5lZHU7IGxpanVhbi50dUBpbnRlbC5jb207 IGRldkBkcGRrLm9yZw0KPiBTdWJqZWN0OiBSZTogW1BBVENIIHY0IDIvOV0gZHRzOiBhZGQgZGV2 ZWxvcGVyIHRvb2xzDQo+IA0KPiBPbiBGcmksIEp1bCAyOSwgMjAyMiBhdCAxMDo1NTo0M0FNICsw MDAwLCBKdXJhaiBMaW5rZcWhIHdyb3RlOg0KPiA+IFRoZSBEb2NrZXJmaWxlIGNvbnRhaW5zIGJh c2ljIGltYWdlIGZvciBDSSBhbmQgZGV2ZWxvcGVycy4gVGhlcmUncw0KPiA+IGFsc28gYW4gaW50 ZWdyYXRpb24gb2YgdGhlIERvY2tlcmZpbGUgd2l0aCBWaXN1YWwgU3R1ZGlvLg0KPiA+DQo+ID4g VGhlIGZvcm1hdHRlciBzY3JpcHQgdXNlcyBCbGFjayBhbmQgSXNvcnQgdG8gZm9ybWF0IHRoZSBQ eXRob24gY29kZS4NCj4gPg0KPiA+IFNpZ25lZC1vZmYtYnk6IE93ZW4gSGlseWFyZCA8b2hpbHlh cmRAaW9sLnVuaC5lZHU+DQo+ID4gU2lnbmVkLW9mZi1ieTogSnVyYWogTGlua2XFoSA8anVyYWou bGlua2VzQHBhbnRoZW9uLnRlY2g+DQo+IA0KPiBDb21tZW50cyBpbmxpbmUgYmVsb3cuDQo+IA0K PiBUaGFua3MsDQo+IC9CcnVjZQ0KPiANCj4gPiAtLS0NCj4gPiAgZHRzLy5kZXZjb250YWluZXIv ZGV2Y29udGFpbmVyLmpzb24gfCAzMCArKysrKysrKysrKysNCj4gPiAgZHRzL0RvY2tlcmZpbGUg ICAgICAgICAgICAgICAgICAgICAgfCAzOCArKysrKysrKysrKysrKysNCj4gPiAgZHRzL1JFQURN RS5tZCAgICAgICAgICAgICAgICAgICAgICAgfCA3NCArKysrKysrKysrKysrKysrKysrKysrKysr KysrLQ0KPiA+ICBkdHMvZm9ybWF0LnNoICAgICAgICAgICAgICAgICAgICAgICB8IDQ1ICsrKysr KysrKysrKysrKysrKw0KPiA+ICA0IGZpbGVzIGNoYW5nZWQsIDE4NiBpbnNlcnRpb25zKCspLCAx IGRlbGV0aW9uKC0pICBjcmVhdGUgbW9kZSAxMDA2NDQNCj4gPiBkdHMvLmRldmNvbnRhaW5lci9k ZXZjb250YWluZXIuanNvbg0KPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZHRzL0RvY2tlcmZpbGUN Cj4gPiAgY3JlYXRlIG1vZGUgMTAwNzU1IGR0cy9mb3JtYXQuc2gNCj4gPg0KPiA+IGRpZmYgLS1n aXQgYS9kdHMvLmRldmNvbnRhaW5lci9kZXZjb250YWluZXIuanNvbg0KPiA+IGIvZHRzLy5kZXZj b250YWluZXIvZGV2Y29udGFpbmVyLmpzb24NCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+ IGluZGV4IDAwMDAwMDAwMDAuLjQxY2EyOGZjMTcNCj4gPiAtLS0gL2Rldi9udWxsDQo+ID4gKysr IGIvZHRzLy5kZXZjb250YWluZXIvZGV2Y29udGFpbmVyLmpzb24NCj4gPiBAQCAtMCwwICsxLDMw IEBADQo+ID4gKy8vIEZvciBmb3JtYXQgZGV0YWlscywgc2VlIGh0dHBzOi8vYWthLm1zL2RldmNv bnRhaW5lci5qc29uLiBGb3IgY29uZmlnDQo+IG9wdGlvbnMsIHNlZSB0aGUgUkVBRE1FIGF0Og0K PiA+ICsvLw0KPiA+ICtodHRwczovL2dpdGh1Yi5jb20vbWljcm9zb2Z0L3ZzY29kZS1kZXYtY29u dGFpbmVycy90cmVlL3YwLjI0MS4xL2NvbnQNCj4gPiArYWluZXJzL2RvY2tlci1leGlzdGluZy1k b2NrZXJmaWxlDQo+ID4gK3sNCj4gPiArCSJuYW1lIjogIkV4aXN0aW5nIERvY2tlcmZpbGUiLA0K PiA+ICsNCj4gPiArCS8vIFNldHMgdGhlIHJ1biBjb250ZXh0IHRvIG9uZSBsZXZlbCB1cCBpbnN0 ZWFkIG9mIHRoZSAuZGV2Y29udGFpbmVyDQo+IGZvbGRlci4NCj4gPiArCSJjb250ZXh0IjogIi4u IiwNCj4gPiArDQo+ID4gKwkvLyBVcGRhdGUgdGhlICdkb2NrZXJGaWxlJyBwcm9wZXJ0eSBpZiB5 b3UgYXJlbid0IHVzaW5nIHRoZSBzdGFuZGFyZA0KPiAnRG9ja2VyZmlsZScgZmlsZW5hbWUuDQo+ ID4gKwkiZG9ja2VyRmlsZSI6ICIuLi9Eb2NrZXJmaWxlIiwNCj4gPiArDQo+ID4gKwkvLyBVc2Ug J2ZvcndhcmRQb3J0cycgdG8gbWFrZSBhIGxpc3Qgb2YgcG9ydHMgaW5zaWRlIHRoZSBjb250YWlu ZXINCj4gYXZhaWxhYmxlIGxvY2FsbHkuDQo+ID4gKwkvLyAiZm9yd2FyZFBvcnRzIjogW10sDQo+ ID4gKw0KPiA+ICsJLy8gVW5jb21tZW50IHRoZSBuZXh0IGxpbmUgdG8gcnVuIGNvbW1hbmRzIGFm dGVyIHRoZSBjb250YWluZXIgaXMNCj4gY3JlYXRlZCAtIGZvciBleGFtcGxlIGluc3RhbGxpbmcg Y3VybC4NCj4gPiArCSJwb3N0Q3JlYXRlQ29tbWFuZCI6ICJwb2V0cnkgaW5zdGFsbCIsDQo+ID4g Kw0KPiA+ICsJImV4dGVuc2lvbnMiOiBbDQo+ID4gKwkJIm1zLXB5dGhvbi52c2NvZGUtcHlsYW5j ZSIsDQo+ID4gKwldDQo+ID4gKw0KPiA+ICsJLy8gVW5jb21tZW50IHdoZW4gdXNpbmcgYSBwdHJh Y2UtYmFzZWQgZGVidWdnZXIgbGlrZSBDKyssIEdvLCBhbmQNCj4gUnVzdA0KPiA+ICsJLy8gInJ1 bkFyZ3MiOiBbICItLWNhcC1hZGQ9U1lTX1BUUkFDRSIsICItLXNlY3VyaXR5LW9wdCIsDQo+ID4g KyJzZWNjb21wPXVuY29uZmluZWQiIF0sDQo+ID4gKw0KPiA+ICsJLy8gVW5jb21tZW50IHRvIHVz ZSB0aGUgRG9ja2VyIENMSSBmcm9tIGluc2lkZSB0aGUgY29udGFpbmVyLiBTZWUNCj4gaHR0cHM6 Ly9ha2EubXMvdnNjb2RlLXJlbW90ZS9zYW1wbGVzL2RvY2tlci1mcm9tLWRvY2tlci4NCj4gPiAr CS8vICJtb3VudHMiOiBbDQo+ID4gKyJzb3VyY2U9L3Zhci9ydW4vZG9ja2VyLnNvY2ssdGFyZ2V0 PS92YXIvcnVuL2RvY2tlci5zb2NrLHR5cGU9YmluZCINCj4gPiArXSwNCj4gPiArDQo+ID4gKwkv LyBVbmNvbW1lbnQgdG8gY29ubmVjdCBhcyBhIG5vbi1yb290IHVzZXIgaWYgeW91J3ZlIGFkZGVk IG9uZS4gU2VlDQo+IGh0dHBzOi8vYWthLm1zL3ZzY29kZS1yZW1vdGUvY29udGFpbmVycy9ub24t cm9vdC4NCj4gPiArCS8vICJyZW1vdGVVc2VyIjogInZzY29kZSINCj4gPiArfQ0KPiA+IGRpZmYg LS1naXQgYS9kdHMvRG9ja2VyZmlsZSBiL2R0cy9Eb2NrZXJmaWxlIG5ldyBmaWxlIG1vZGUgMTAw NjQ0DQo+ID4gaW5kZXggMDAwMDAwMDAwMC4uNjcwMGFhNDViOA0KPiA+IC0tLSAvZGV2L251bGwN Cj4gPiArKysgYi9kdHMvRG9ja2VyZmlsZQ0KPiA+IEBAIC0wLDAgKzEsMzggQEANCj4gPiArIyBT UERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlICMgQ29weXJpZ2h0KGMpIDIwMjIN Cj4gPiArVW5pdmVyc2l0eSBvZiBOZXcgSGFtcHNoaXJlICMNCj4gPiArDQo+ID4gK0ZST00gdWJ1 bnR1OjIyLjA0IEFTIGJhc2UNCj4gPiArDQo+ID4gK1JVTiBhcHQtZ2V0IC15IHVwZGF0ZSAmJiBh cHQtZ2V0IC15IHVwZ3JhZGUgJiYgXA0KPiA+ICsgICAgYXB0LWdldCAteSBpbnN0YWxsIC0tbm8t aW5zdGFsbC1yZWNvbW1lbmRzIFwNCj4gPiArICAgICAgICBweXRob24zIFwNCj4gPiArICAgICAg ICBweXRob24zLXBpcCBcDQo+ID4gKyAgICAgICAgcHl0aG9uMy1wZXhwZWN0IFwNCj4gPiArICAg ICAgICBweXRob24zLXBvZXRyeSBcDQo+ID4gKyAgICAgICAgcHl0aG9uMy1jYWNoZWNvbnRyb2wg XA0KPiA+ICsgICAgICAgIG9wZW5zc2gtY2xpZW50DQo+ID4gKw0KPiA+ICsNCj4gPiArRlJPTSBi YXNlIEFTIHJ1bm5lcg0KPiA+ICsNCj4gPiArIyBUaGlzIGNvbnRhaW5lciBpcyBpbnRlbmRlZCB0 byBiZSB1c2VkIGFzIHRoZSBiYXNlIGZvciBhdXRvbWF0ZWQgc3lzdGVtcy4NCj4gPiArIyBJdCBi YWtlcyBEVFMgaW50byB0aGUgY29udGFpbmVyIGR1cmluZyB0aGUgYnVpbGQuDQo+ID4gKw0KPiA+ ICtSVU4gbWtkaXIgL2R0cw0KPiA+ICtDT1BZIC4vcHlwcm9qZWN0LnRvbWwgL2R0cy9weXByb2pl Y3QudG9tbCBDT1BZIC4vcG9ldHJ5LmxvY2sNCj4gPiArL2R0cy9wb2V0cnkubG9jayBXT1JLRElS IC9kdHMgUlVOIHBvZXRyeSBpbnN0YWxsIC0tbm8tZGV2IENPUFkgLiAvZHRzDQo+IA0KPiBUd28g cXVlc3Rpb25zIGhlcmU6DQo+ICogaWYgd2UgY29weSBvdmVyIHRoZSBjdXJyZW50IGZvbGRlciwg ZG9lcyBpdCByZS1jb3B5IHRoZSBzYW1lIHR3byBmaWxlcw0KPiAgIGFib3ZlLCBvciBkbyB3ZSBn ZXQgYSBuZXcgc3ViZm9sZGVyIHdpdGggdGhlIHNhbWUgbmFtZSBhcyB0aGUgY3VycmVudA0KPiAg IG9uZSAoYW5kIHRoZSB0d28gZmlsZXMgaW4gdGhhdCBpbnN0ZWFkKT8NCj4gKiBDYW4gdGhlIGNv bW1hbmRzIGJlIHJlLW9yZGVyZWQgc28gdGhhdCB3ZSBoYXZlIGFsbCB0aGUgY29waWVzIHRvZ2V0 aGVyDQo+ICAgcmF0aGVyIHRoYW4gYmVpbmcgc3BsaXQgZWl0aGVyIHNpZGUgb2YgdGhlIHdvcmtk aXIgYW5kIHJ1biBjb21tYW5kcz8NCj4gDQoNClllYSwgd2UgZG9uJ3QgbmVlZCB0byBjb3B5IHRo ZSB0d28gZmlsZXMgaW5kaXZpZHVhbGx5IC0gd2Ugb25seSBuZWVkIHRvIGNvcHkgdGhlIHdob2xl IGR0cyBmb2xkZXIuIEknbGwgbW92ZSB0aGUgY29tbWFuZHMuDQoNCj4gPiArDQo+ID4gK0NNRCBb InBvZXRyeSIsICJydW4iLCAicHl0aG9uIiwgIm1haW4ucHkiXQ0KPiA+ICsNCj4gPiArRlJPTSBi YXNlIEFTIGRldg0KPiA+ICsNCj4gPiArIyBUaGlzIGNvbnRhaW5lciBpcyBpbnRlbmRlZCB0byBi ZSB1c2VkIGFzIGEgZGV2ZWxvcG1lbnQgZW52aXJvbm1lbnQuDQo+ID4gKw0KPiA+ICtSVU4gYXB0 LWdldCAteSBpbnN0YWxsIC0tbm8taW5zdGFsbC1yZWNvbW1lbmRzIFwNCj4gPiArICAgICAgICB2 aW0gZW1hY3MgZ2l0DQo+ID4gKw0KPiBJZiBpdCdzIHRvIGJlIHVzZWQgYXMgYSBkZXZlbG9wbWVu dCBlbnZpcm9ubWVudCwgZG8gd2Ugbm90IG5lZWQgYnVpbGQtZXNzZW50aWFsDQo+IGluc3RhbGxl ZD8NCj4gDQoNCkl0J3MgbWVhbnQgdG8gYmUgYSBEVFMgZGV2ZWxvcG1lbnQgZW52aXJvbm1lbnQg YW5kIHdlIGRvbid0IG5lZWQgdG8gYnVpbGQgYW55dGhpbmcgZm9yIHRoYXQsIHNvIG5vIG5lZWQg Zm9yIGJ1aWxkLWVzc2VudGlhbC4NCg0KPiA+ICtXT1JLRElSIC9kdHMNCj4gDQo+IElzIHRoaXMg bmVlZGVkIHR3aWNlIGluIHRoZSBmaWxlLCBzaW5jZSBpdCBhcHBlYXJzIGFib3ZlIHRvbz8NCj4g DQoNCkl0IGFwcGVhcnMgaW4gdGhlIGRlZmluaXRpb25zIG9mIHR3byBzZXBhcmF0ZSBpbWFnZXMs IGJ1dCB3ZSBjYW4gYWN0dWFsbHkgbW92ZSBpdCB0byB0aGUgYmFzZSBpbWFnZSB0byBoYXZlIGl0 IGluIHRoZSBmaWxlIG9ubHkgb25jZS4NCg0KPiA+IGRpZmYgLS1naXQgYS9kdHMvUkVBRE1FLm1k IGIvZHRzL1JFQURNRS5tZCBpbmRleA0KPiA+IGQ4Zjg4Zjk3ZmUuLjU1YTI3MmQ3NjcgMTAwNjQ0 DQo+ID4gLS0tIGEvZHRzL1JFQURNRS5tZA0KPiA+ICsrKyBiL2R0cy9SRUFETUUubWQNCj4gPiBA QCAtMTIsNCArMTIsNzYgQEAgVGhlIFB5dGhvbiBWZXJzaW9uIHJlcXVpcmVkIGJ5IERUUyBpcyBz cGVjaWZpZWQgaW4NCj4gPiBbRFRTIHB5dGhvbiBjb25maWcgZmlsZV0oLi9weXByb2plY3QudG9t bCkgaW4gdGhlDQo+ID4gKipbdG9vbC5wb2V0cnkuZGVwZW5kZW5jaWVzXSoqICBzZWN0aW9uLiBQ b2V0cnkgZG9lc24ndCBpbnN0YWxsDQo+ID4gUHl0aG9uLCBzbyB5b3UgbWF5IG5lZWQgdG8gc2F0 aXNmeSB0aGlzIHJlcXVpcmVtZW50IGlmICB5b3VyIFB5dGhvbiBpcw0KPiA+IG5vdCB1cCB0byBk YXRlLiBBIHRvb2wgc3VjaCBhcyBbUHllbnZdKGh0dHBzOi8vZ2l0aHViLmNvbS9weWVudi9weWVu dikNCj4gPiAtaXMgYSBnb29kIHdheSB0byBnZXQgUHl0aG9uLCB0aG91Z2ggbm90IHRoZSBvbmx5 IG9uZS4NCj4gPiAraXMgYSBnb29kIHdheSB0byBnZXQgUHl0aG9uLCB0aG91Z2ggbm90IHRoZSBv bmx5IG9uZS4gSG93ZXZlciwgRFRTDQo+ID4gK2luY2x1ZGVzIGEgZGV2ZWxvcG1lbnQgZW52aXJv bm1lbnQgaW4gdGhlIGZvcm0gb2YgYSBEb2NrZXIgaW1hZ2UuDQo+ID4gKw0KPiA+ICsjIEV4cGVj dGVkIEVudmlyb25tZW50DQo+ID4gKw0KPiA+ICtUaGUgZXhwZWN0ZWQgZXhlY3V0aW9uIGFuZCBk ZXZlbG9wbWVudCBlbnZpcm9ubWVudHMgZm9yIERUUyBhcmUgdGhlDQo+ID4gK3NhbWUsIHRoZSBj b250YWluZXIgZGVmaW5lZCBieSBbRG9ja2VyZmlsZV0oLi9Eb2NrZXJmaWxlKS4gVXNpbmcgYQ0K PiA+ICtjb250YWluZXIgZm9yIHRoZSBkZXZlbG9wbWVudCBlbnZpcm9ubWVudCBoZWxwcyB3aXRo IGEgZmV3IHRoaW5ncy4NCj4gPiArDQo+ID4gKzEuIEl0IGhlbHBzIGVuZm9yY2UgdGhlIGJvdW5k YXJ5IGJldHdlZW4gdGhlIHRlc3RlciBhbmQgdGhlIHRyYWZmaWMNCj4gPiArICAgZ2VuZXJhdG9y L3N1dCwgc29tZXRoaW5nIHdoaWNoIGhhcyBleHBlcmllbmNlZCBpc3N1ZXMgaW4gdGhlIHBhc3Qu DQo+IA0KPiBzL2V4cGVyaWVuY2VkL2NhdXNlZC8NCj4gDQoNCkFjay4NCg0KPiA+ICsyLiBJdCBt YWtlcyBjcmVhdGluZyBjb250YWluZXJzIHRvIHJ1biBEVFMgaW5zaWRlIGF1dG9tYXRlZCB0b29s aW5nDQo+ID4gKyAgIG11Y2ggZWFzaWVyLCBzaW5jZSB0aGV5IGNhbiBiZSBiYXNlZCBvZmYgb2Yg YSBrbm93bi13b3JraW5nIGVudmlyb25tZW50DQo+ID4gKyAgIHRoYXQgd2lsbCBiZSB1cGRhdGVk IGFzIERUUyBpcy4NCj4gPiArMy4gSXQgYWJzdHJhY3RzIERUUyBmcm9tIHRoZSBzZXJ2ZXIgaXQg aXMgcnVubmluZyBvbi4gVGhpcyBtZWFucyB0aGF0IHRoZQ0KPiA+ICsgICBiYXJlLW1ldGFsIG9z IGNhbiBiZSB3aGF0ZXZlciBjb3Jwb3JhdGUgcG9saWN5IG9yIHlvdXIgcGVyc29uYWwNCj4gcHJl ZmVyZW5jZXMNCj4gPiArICAgZGljdGF0ZSwgYW5kIERUUyBkb2VzIG5vdCBoYXZlIHRvIHRyeSB0 byBzdXBwb3J0IGFsbCAxNSBkaXN0cm9zIHRoYXQNCj4gPiArICAgYXJlIHN1cHBvcnRlZCBieSBE UERLIENJLg0KPiANCj4gUmVtb3ZlIHRoZSAiMTUiLg0KPiANCg0KQWNrLCB0aGlzIHdpbGwgbWFr ZSBpdCBhY2N1cmF0ZSBldmVuIHdoZW4gdGhpbmcgY2hhbmdlIHNsaWdodGx5IGluIHRoZSBsYWIu DQoNCj4gPiArNC4gSXQgbWFrZXMgYXV0b21hdGVkIHRlc3RpbmcgZm9yIERUUyBlYXNpZXIsIHNp bmNlIG5ldyBkZXBlbmRlbmNpZXMgY2FuIGJlDQo+ID4gKyAgIHNlbnQgaW4gd2l0aCB0aGUgcGF0 Y2hlcy4NCj4gPiArNS4gSXQgZml4ZXMgdGhlIGlzc3VlIG9mIHVuZG9jdW1lbnRlZCBkZXBlbmRl bmNpZXMsIHdoZXJlIHNvbWUgdGVzdCBzdWl0ZXMNCj4gPiArICAgcmVxdWlyZSBweXRob24gbGli cmFyaWVzIHRoYXQgYXJlIG5vdCBpbnN0YWxsZWQuDQo+ID4gKzYuIEFsbG93cyBldmVyeW9uZSB0 byB1c2UgdGhlIHNhbWUgcHl0aG9uIHZlcnNpb24gZWFzaWx5LCBldmVuIGlmIHRoZXkgYXJlDQo+ ID4gKyAgIHVzaW5nIGFuIExUUyBkaXN0cm8gb3IgV2luZG93cy4NCj4gDQo+IFByZXN1bWFibHkg dGhlIExUUyBkaXN0cm8gaXMgYW4gKm9sZGVyKiBMVFMgZGlzdHJpYnV0aW9uIHdpdGggcG9zc2li bHkgb3V0LW9mLWRhdGUNCj4gcGFja2FnZXM/IFRoYXQgc2hvdWxkIHBlcmhhcHMgYmUgbWFkZSBj bGVhcmVyLg0KPiANCg0KSSdsbCBjaGFuZ2UgaXQgdG8gImV2ZW4gaWYgdGhleSBhcmUgdXNpbmcg YSBkaXN0cmlidXRpb24gb3IgV2luZG93cyB3aXRoIG91dC1vZi1kYXRlIHBhY2thZ2VzIiwgdGhh dCBzaG91bGQgYmUgY2xlYXIgZW5vdWdoLg0KDQo+ID4gKzcuIEFsbG93cyB5b3UgdG8gcnVuIHRo ZSB0ZXN0ZXIgb24gV2luZG93cyB3aGlsZSBkZXZlbG9waW5nIHZpYSBEb2NrZXIgZm9yDQo+ID4g KyAgIFdpbmRvd3MuDQo+ID4gKw0KPiA+ICsjIyBUaXBzIGZvciBzZXR0aW5nIHVwIGEgZGV2ZWxv cG1lbnQgZW52aXJvbm1lbnQNCj4gPiArDQo+ID4gKyMjIyBHZXR0aW5nIGEgZG9ja2VyIHNoZWxs DQo+ID4gKw0KPiA+ICtUaGVzZSBjb21tYW5kcyB3aWxsIGdpdmUgeW91IGEgYmFzaCBzaGVsbCBp bnNpZGUgdGhlIGNvbnRhaW5lciB3aXRoDQo+ID4gK2FsbCB0aGUgcHl0aG9uIGRlcGVuZGVuY2ll cyBpbnN0YWxsZWQuIFRoaXMgd2lsbCBwbGFjZSB5b3UgaW5zaWRlIGENCj4gPiArcHl0aG9uIHZp cnR1YWwgZW52aXJvbm1lbnQuIERUUyBpcyBtb3VudGVkIHZpYSBhIHZvbHVtZSwgd2hpY2ggaXMN Cj4gPiArZXNzZW50aWFsbHkgYSBzeW1saW5rIGZyb20gdGhlIGhvc3QgdG8gdGhlIGNvbnRhaW5l ci4gVGhpcyBlbmFibGVzDQo+ID4gK3lvdSB0byBlZGl0IGFuZCBydW4gaW5zaWRlIHRoZSBjb250 YWluZXIgYW5kIHRoZW4gZGVsZXRlIHRoZSBjb250YWluZXIgd2hlbg0KPiB5b3UgYXJlIGRvbmUs IGtlZXBpbmcgeW91ciB3b3JrLg0KPiA+ICsNCj4gPiArYGBgc2hlbGwNCj4gPiArZG9ja2VyIGJ1 aWxkIC0tdGFyZ2V0IGRldiAtdCBkcGRrLWR0cyAuDQo+ID4gK2RvY2tlciBydW4gLXYgJChwd2Qp Oi9kdHMgLWl0IGRwZGstZHRzIGJhc2ggJCBwb2V0cnkgaW5zdGFsbCAkIHBvZXRyeQ0KPiA+ICtz aGVsbCBgYGANCj4gPiArDQo+ID4gKyMjIyBWaW0vRW1hY3MNCj4gPiArDQo+ID4gK0FueSBlZGl0 b3IgaW4gdGhlIHVidW50dSByZXBvcyBzaG91bGQgYmUgZWFzeSB0byB1c2UuIFlvdSBjYW4gYWRk DQo+ID4gK3lvdXIgbm9ybWFsIGNvbmZpZyBmaWxlcyBhcyBhIHZvbHVtZSwgZW5hYmxpbmcgeW91 IHRvIHVzZSB5b3VyIHByZWZlcnJlZA0KPiBzZXR0aW5ncy4NCj4gPiArDQo+ID4gK2BgYHNoZWxs DQo+ID4gK2FwdCBpbnN0YWxsIHZpbQ0KPiA+ICthcHQgaW5zdGFsbCBlbWFjcw0KPiA+ICtgYGAN Cj4gDQo+IFdlcmUgdGhlc2Ugbm90IGFscmVhZHkgaW5zdGFsbGVkIGluIHRoZSBpbWFnZSBjcmVh dGVkIHVzaW5nIHRoZSBkb2NrZXJmaWxlDQo+IGFib3ZlPw0KPiANCg0KVGhleSB3ZXJlLiBJJ2xs IHJlbW92ZSB0aGUgaW5zdGFsbCBjb21tYW5kcyBhbmQgaW5zdGVhZCBhZGQgYSBtb2RpZmllZCBk b2NrZXIgY29tbWFuZCBtb3VudGluZyB2aW0gY29uZmlnIGZpbGUgYXMgdm9sdW1lLg0KDQo+ID4g Kw0KPiA+ICsjIyMgVmlzdWFsIFN0dWRpbyBDb2RlDQo+ID4gKw0KPiA+ICtWU0NvZGUgaGFzIGZp cnN0LWNsYXNzIHN1cHBvcnQgZm9yIGRldmVsb3Bpbmcgd2l0aCBjb250YWluZXJzLiBZb3UNCj4g PiArbWF5IG5lZWQgdG8gcnVuIHRoZSBub24tZG9ja2VyIHNldHVwIGNvbW1hbmRzIGluIHRoZSBp bnRlZ3JhdGVkDQo+ID4gK3Rlcm1pbmFsLiBEVFMgY29udGFpbnMgYSAuZGV2Y29udGFpbmVyIGNv bmZpZywgc28gaWYgeW91IG9wZW4gdGhlDQo+ID4gK2ZvbGRlciBpbiB2c2NvZGUgaXQgc2hvdWxk IHByb21wdCB5b3UgdG8gdXNlIHRoZSBkZXYgY29udGFpbmVyDQo+ID4gK2Fzc3VtaW5nIHlvdSBo YXZlIHRoZSBwbHVnaW4gaW5zdGFsbGVkLiBQbGVhc2UgcmVmZXIgdG8gW1ZTDQo+ID4gK0RldmVs b3BtZW50IENvbnRhaW5lcnMNCj4gPiArRG9jc10oaHR0cHM6Ly9jb2RlLnZpc3VhbHN0dWRpby5j b20vZG9jcy9yZW1vdGUvY29udGFpbmVycykNCj4gPiArdG8gc2V0IGl0IGFsbCB1cC4NCj4gPiAr DQo+ID4gKyMjIyBPdGhlcg0KPiA+ICsNCj4gPiArU2VhcmNoaW5nIGZvciAnJElERSBkZXYgY29u dGFpbmVycycgd2lsbCBwcm9iYWJseSBsZWFkIHlvdSBpbiB0aGUNCj4gPiArcmlnaHQgZGlyZWN0 aW9uLg0KPiA+ICsNCj4gPiArIyBQeXRob24gRm9ybWF0dGluZw0KPiA+ICsNCj4gPiArVGhlIHRv b2xzIHVzZWQgdG8gZm9ybWF0IFB5dGhvbiBjb2RlIGluIERUUyBhcmUgQmxhY2sgYW5kIElzb3J0 Lg0KPiA+ICtUaGVyZSdzIGEgc2hlbGwgc2NyaXB0LCBmdW5jdGlvbi5zaCwgd2hpY2ggcnVucyB0 aGUgZm9ybWF0dGVycy4NCj4gPiArUG9ldHJ5IHdpbGwgaW5zdGFsbCB0aGVzZSB0b29scywgc28g b25jZSB5b3UgaGF2ZSB0aGF0IHNldCB1cCwgeW91IHNob3VsZCBydW4gaXQNCj4gYmVmb3JlIHN1 Ym1pdHRpbmcgcGF0Y2hlcy4NCj4gPiBkaWZmIC0tZ2l0IGEvZHRzL2Zvcm1hdC5zaCBiL2R0cy9m b3JtYXQuc2ggbmV3IGZpbGUgbW9kZSAxMDA3NTUgaW5kZXgNCj4gPiAwMDAwMDAwMDAwLi43ZDcy MzM1NDcwDQo+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ICsrKyBiL2R0cy9mb3JtYXQuc2gNCj4gPiBA QCAtMCwwICsxLDQ1IEBADQo+ID4gKyMhL3Vzci9iaW4vZW52IGJhc2gNCj4gPiArIyBTUERYLUxp Y2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlICMgQ29weXJpZ2h0KGMpIDIwMjINCj4gPiAr VW5pdmVyc2l0eSBvZiBOZXcgSGFtcHNoaXJlICMgQ29weXJpZ2h0KGMpIDIwMjIgUEFOVEhFT04u dGVjaCBzLnIuby4NCj4gPiArIw0KPiA+ICsNCj4gPiArZnVuY3Rpb24gbWFpbigpIHsNCj4gPiAr ICAgICMgVGhlIGRpcmVjdG9yeSB0byB3b3JrIG9uIGlzIGVpdGhlciBwYXNzZWQgaW4gYXMgYXJn dW1lbnQgMSwNCj4gPiArICAgICMgb3IgaXMgdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkN Cj4gPiArICAgIERJUkVDVE9SWT0kezE6LSQocHdkKX0NCj4gPiArICAgIExJTkVfTEVOR1RIPTg4 DQo+ID4gKw0KPiA+ICsgICAgQkxBQ0tfVkVSU0lPTj0kKGF3ayAnL1xbdG9vbC5wb2V0cnkuZGV2 LWRlcGVuZGVuY2llc1xdLywvJF4vJw0KPiBweXByb2plY3QudG9tbCB8XA0KPiA+ICsgICAgICAg ICAgICAgICAgICAgIGdyZXAgYmxhY2sgfCBncmVwIC1vICdbMC05XVteIl0qJykNCj4gPiArDQo+ ID4gKyAgICBQWVRIT05fVkVSU0lPTj0kKGF3ayAnL1xbdG9vbC5wb2V0cnkuZGVwZW5kZW5jaWVz XF0vLC8kXi8nDQo+IHB5cHJvamVjdC50b21sIHxcDQo+ID4gKyAgICAgICAgICAgICAgICAgICAg Z3JlcCBweXRob24gfCBncmVwIC1vICdbMC05XVteIl0qJyB8IHRyIC1kICcuJykNCj4gPiArDQo+ ID4gKyAgICBpc29ydCBcDQo+ID4gKyAgICAgIC0tb3ZlcndyaXRlLWluLXBsYWNlIFwNCj4gPiAr ICAgICAgLS1wcm9maWxlIGJsYWNrIFwNCj4gPiArICAgICAgLWogIiQobnByb2MpIiBcDQo+ID4g KyAgICAgIC0tbGluZS1sZW5ndGggJExJTkVfTEVOR1RIIFwNCj4gPiArICAgICAgLS1weXRob24t dmVyc2lvbiBhdXRvIFwNCj4gPiArICAgICAgIiRESVJFQ1RPUlkiDQo+ID4gKw0KPiA+ICsgICAg YmxhY2sgXA0KPiA+ICsgICAgICAtLWxpbmUtbGVuZ3RoICRMSU5FX0xFTkdUSCBcDQo+ID4gKyAg ICAgIC0tcmVxdWlyZWQtdmVyc2lvbiAiJHtCTEFDS19WRVJTSU9OfSIgXA0KPiA+ICsgICAgICAt LXRhcmdldC12ZXJzaW9uICJweSR7UFlUSE9OX1ZFUlNJT059IiBcDQo+ID4gKyAgICAgIC0tc2Fm ZSBcDQo+ID4gKyAgICAgICIkRElSRUNUT1JZIg0KPiA+ICt9DQo+ID4gKw0KPiA+ICtmdW5jdGlv biBoZWxwKCkgew0KPiA+ICsgIGVjaG8gInVzYWdlOiBmb3JtYXQuc2ggPGRpcmVjdG9yeT4iDQo+ ID4gK30NCj4gPiArDQo+ID4gK2lmIFsgIiQxIiA9PSAiLWgiIF0gfHwgWyAiJDEiID09ICItLWhl bHAiIF07IHRoZW4NCj4gPiArICBoZWxwDQo+ID4gKyAgZXhpdCAwDQo+ID4gK2ZpDQo+ID4gKw0K PiA+ICttYWluICIkMSINCj4gPiArDQo+ID4gLS0NCj4gPiAyLjMwLjINCj4gPg0KDQo=