From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id B724AA04DD; Thu, 5 Nov 2020 15:09:10 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 2BC60C814; Thu, 5 Nov 2020 15:09:09 +0100 (CET) Received: from mailgw02.pantheon.sk (mailgw01.pantheon.sk [46.229.239.26]) by dpdk.org (Postfix) with ESMTP id 19BF7C806 for ; Thu, 5 Nov 2020 15:09:07 +0100 (CET) Received: from mailgw02.pantheon.sk (localhost.localdomain [127.0.0.1]) by mailgw02.pantheon.sk (Proxmox) with ESMTP id A9FB7183796; Thu, 5 Nov 2020 15:09:06 +0100 (CET) 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=7QqQBdVTA58fbgAzQ0aQ B9wE1YVKQzDcRdieTPadDjc=; b=QI0JcQTxBRtBlCea9U/NuT169GqCFX9YAvl/ nkwxmQSfBkvO88ZFolunzhcbPvAjZefrj8OP0FoPnBB/GJvXC3kQR+xyRqt68Ohz K2fxpr+q3kXz7lA97ZEBObzheKJoZ0Bvd9sv/xGxH/NzlX6lqhsMhGrY9p1XBYOr tHCZQA+GJPa1Y/BgWcXOtSYv77GCdOVV9cAaHHGCIpug85LbSJJ7xhSJKmqawPw0 coyskUv0QRJiEJFGqHRoREUEZN/bHPPqvYbH09tkWKtbbKa/RMZtZ0oRap0yGfDM IR+O+AEuOCaICBja1XYkbR310CaK6WXyl0tUDFL0/SsjA+wR7A== From: =?utf-8?B?SnVyYWogTGlua2XFoQ==?= To: =?utf-8?B?SnVyYWogTGlua2XFoQ==?= , "bruce.richardson@intel.com" , "Ruifeng.Wang@arm.com" , "Honnappa.Nagarahalli@arm.com" , "Phil.Yang@arm.com" , "vcchunga@amazon.com" , "Dharmik.Thakkar@arm.com" , "jerinjacobk@gmail.com" , "hemant.agrawal@nxp.com" , "ajit.khaparde@broadcom.com" , "ferruh.yigit@intel.com" , "aconole@redhat.com" CC: "dev@dpdk.org" Thread-Topic: [PATCH v7 06/14] build: organize Arm config into dict Thread-Index: AQHWs3vpj6JmPcbVsk+UTUggTqWeeqm5kjng Date: Thu, 5 Nov 2020 14:09:05 +0000 Message-ID: References: <1604323278-18039-1-git-send-email-juraj.linkes@pantheon.tech> <1604584762-25321-1-git-send-email-juraj.linkes@pantheon.tech> <1604584762-25321-7-git-send-email-juraj.linkes@pantheon.tech> In-Reply-To: <1604584762-25321-7-git-send-email-juraj.linkes@pantheon.tech> 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 Subject: Re: [dpdk-dev] [PATCH v7 06/14] build: organize Arm config into dict X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogSnVyYWogTGlua2XFoSA8 anVyYWoubGlua2VzQHBhbnRoZW9uLnRlY2g+DQo+IFNlbnQ6IFRodXJzZGF5LCBOb3ZlbWJlciA1 LCAyMDIwIDI6NTkgUE0NCj4gVG86IGJydWNlLnJpY2hhcmRzb25AaW50ZWwuY29tOyBSdWlmZW5n LldhbmdAYXJtLmNvbTsNCj4gSG9ubmFwcGEuTmFnYXJhaGFsbGlAYXJtLmNvbTsgUGhpbC5ZYW5n QGFybS5jb207DQo+IHZjY2h1bmdhQGFtYXpvbi5jb207IERoYXJtaWsuVGhha2thckBhcm0uY29t OyBqZXJpbmphY29ia0BnbWFpbC5jb207DQo+IGhlbWFudC5hZ3Jhd2FsQG54cC5jb207IGFqaXQu a2hhcGFyZGVAYnJvYWRjb20uY29tOw0KPiBmZXJydWgueWlnaXRAaW50ZWwuY29tOyBhY29ub2xl QHJlZGhhdC5jb20NCj4gQ2M6IGRldkBkcGRrLm9yZzsgSnVyYWogTGlua2XFoSA8anVyYWoubGlu a2VzQHBhbnRoZW9uLnRlY2g+DQo+IFN1YmplY3Q6IFtQQVRDSCB2NyAwNi8xNF0gYnVpbGQ6IG9y Z2FuaXplIEFybSBjb25maWcgaW50byBkaWN0DQo+IA0KPiBVc2UgZGljdGlvbmFyeSBsb29rdXAg aW5zdGVhZCBvZiBjaGVja2luZyBmb3IgZXhpc3RpbmcgdmFyaWFibGVzLCBpdGVyYXRpbmcgb3Zl ciBhbGwNCj4gZWxlbWVudHMgaW4gdGhlIGxpc3Qgb3IgY2hlY2tpbmcgbGlzdHMgZm9yIG9wdGlv bmFsIGNvbmZpZ3VyYXRpb24uIE1vdmUgdmFyaWFibGUNCj4gY29udGVudHMgaW50byB0aGUgZGlj dGlvbmFyeSBmb3IgdmFyaWFibGVzIHRoYXQgd291bGQgYmUgcmVmZXJlbmNlZCBvbmx5IG9uY2Uu DQo+IEZhbGxiYWNrIHRvIGdlbmVyaWMgcGFydCBudW1iZXIgaWYgdGhlIGRpc2NvdmVyZWQgcGFy dCBudW1iZXIgaXMgdW5rbm93bi4NCj4gDQo+IFNpZ25lZC1vZmYtYnk6IEp1cmFqIExpbmtlxaEg PGp1cmFqLmxpbmtlc0BwYW50aGVvbi50ZWNoPg0KPiAtLS0NCj4gIGNvbmZpZy9hcm0vbWVzb24u YnVpbGQgfCAyODIgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0NCj4g IDEgZmlsZSBjaGFuZ2VkLCAxNjAgaW5zZXJ0aW9ucygrKSwgMTIyIGRlbGV0aW9ucygtKQ0KPiAN Cj4gZGlmZiAtLWdpdCBhL2NvbmZpZy9hcm0vbWVzb24uYnVpbGQgYi9jb25maWcvYXJtL21lc29u LmJ1aWxkIGluZGV4DQo+IDI5MDhlYmE1ZS4uM2U2OTIwNTdhIDEwMDY0NA0KPiAtLS0gYS9jb25m aWcvYXJtL21lc29uLmJ1aWxkDQo+ICsrKyBiL2NvbmZpZy9hcm0vbWVzb24uYnVpbGQNCj4gQEAg LTI5LDExNSArMjksMTQ2IEBAIGZsYWdzX2NvbW1vbl9kZWZhdWx0ID0gWw0KPiAgCVsnUlRFX0NB Q0hFX0xJTkVfU0laRScsIDEyOF0NCj4gIF0NCj4gDQo+IC0jIGltcGxlbWVudGVyIHNwZWNpZmlj IGFhcmNoNjQgZmxhZ3MsIHdpdGggbWlkZGxlIHByaW9yaXR5IC0jICh3aWxsIG92ZXJ3cml0ZQ0K PiBjb21tb24gZmxhZ3MpIC1mbGFnc19pbXBsZW1lbnRlcl9nZW5lcmljID0gWw0KPiAtCVsnUlRF X01BQ0hJTkUnLCAnImFybXY4YSInXSwNCj4gLQlbJ1JURV9VU0VfQzExX01FTV9NT0RFTCcsIHRy dWVdLA0KPiAtCVsnUlRFX0NBQ0hFX0xJTkVfU0laRScsIDEyOF0sDQo+IC0JWydSVEVfTUFYX0xD T1JFJywgMjU2XQ0KPiAtXQ0KPiAtZmxhZ3NfaW1wbGVtZW50ZXJfYXJtID0gWw0KPiAtCVsnUlRF X01BQ0hJTkUnLCAnImFybXY4YSInXSwNCj4gLQlbJ1JURV9VU0VfQzExX01FTV9NT0RFTCcsIHRy dWVdLA0KPiAtCVsnUlRFX0NBQ0hFX0xJTkVfU0laRScsIDY0XSwNCj4gLQlbJ1JURV9NQVhfTENP UkUnLCAxNl0NCj4gLV0NCj4gLWZsYWdzX2ltcGxlbWVudGVyX2Nhdml1bSA9IFsNCj4gLQlbJ1JU RV9NQVhfVkZJT19HUk9VUFMnLCAxMjhdLA0KPiAtCVsnUlRFX0NBQ0hFX0xJTkVfU0laRScsIDEy OF0sDQo+IC0JWydSVEVfTUFYX0xDT1JFJywgOTZdLA0KPiAtCVsnUlRFX01BWF9OVU1BX05PREVT JywgMl0NCj4gLV0NCj4gLWZsYWdzX2ltcGxlbWVudGVyX2RwYWEgPSBbDQo+IC0JWydSVEVfTUFD SElORScsICciZHBhYSInXSwNCj4gLQlbJ1JURV9MSUJSVEVfRFBBQTJfVVNFX1BIWVNfSU9WQScs IGZhbHNlXSwNCj4gLQlbJ1JURV9VU0VfQzExX01FTV9NT0RFTCcsIHRydWVdLA0KPiAtCVsnUlRF X0NBQ0hFX0xJTkVfU0laRScsIDY0XSwNCj4gLQlbJ1JURV9NQVhfTENPUkUnLCAxNl0sDQo+IC0J WydSVEVfTUFYX05VTUFfTk9ERVMnLCAxXQ0KPiAtXQ0KPiAtZmxhZ3NfaW1wbGVtZW50ZXJfZW1h ZyA9IFsNCj4gLQlbJ1JURV9NQUNISU5FJywgJyJlbWFnIiddLA0KPiAtCVsnUlRFX0NBQ0hFX0xJ TkVfU0laRScsIDY0XSwNCj4gLQlbJ1JURV9NQVhfTENPUkUnLCAzMl0sDQo+IC0JWydSVEVfTUFY X05VTUFfTk9ERVMnLCAxXQ0KPiAtXQ0KPiAtZmxhZ3NfaW1wbGVtZW50ZXJfYXJtYWRhID0gWw0K PiAtCVsnUlRFX01BQ0hJTkUnLCAnImFybXY4YSInXSwNCj4gLQlbJ1JURV9DQUNIRV9MSU5FX1NJ WkUnLCA2NF0sDQo+IC0JWydSVEVfTUFYX0xDT1JFJywgMTZdLA0KPiAtCVsnUlRFX01BWF9OVU1B X05PREVTJywgMV0NCj4gLV0NCj4gLQ0KPiAtIyBwYXJ0IG51bWJlciBzcGVjaWZpYyBhYXJjaDY0 IGZsYWdzLCB3aXRoIGhpZ2hlc3QgcHJpb3JpdHkgLSMgKHdpbGwgb3ZlcndyaXRlDQo+IGJvdGgg Y29tbW9uIGFuZCBpbXBsZW1lbnRlciBzcGVjaWZpYyBmbGFncykgIGZsYWdzX3BhcnRfbnVtYmVy X3RodW5kZXJ4ID0gWw0KPiAgCVsnUlRFX01BQ0hJTkUnLCAnInRodW5kZXJ4IiddLA0KPiAgCVsn UlRFX1VTRV9DMTFfTUVNX01PREVMJywgZmFsc2VdDQo+ICBdDQo+IC1mbGFnc19wYXJ0X251bWJl cl90aHVuZGVyeDIgPSBbDQo+IC0JWydSVEVfTUFDSElORScsICcidGh1bmRlcngyIiddLA0KPiAt CVsnUlRFX0FSTV9GRUFUVVJFX0FUT01JQ1MnLCB0cnVlXSwNCj4gLQlbJ1JURV9VU0VfQzExX01F TV9NT0RFTCcsIHRydWVdLA0KPiAtCVsnUlRFX0NBQ0hFX0xJTkVfU0laRScsIDY0XSwNCj4gLQlb J1JURV9NQVhfTENPUkUnLCAyNTZdLA0KPiAtCVsnUlRFX01BWF9OVU1BX05PREVTJywgMl0NCj4g LV0NCj4gLWZsYWdzX3BhcnRfbnVtYmVyX29jdGVvbnR4MiA9IFsNCj4gLQlbJ1JURV9NQUNISU5F JywgJyJvY3Rlb250eDIiJ10sDQo+IC0JWydSVEVfQVJNX0ZFQVRVUkVfQVRPTUlDUycsIHRydWVd LA0KPiAtCVsnUlRFX1VTRV9DMTFfTUVNX01PREVMJywgdHJ1ZV0sDQo+IC0JWydSVEVfRUFMX0lH Ql9VSU8nLCBmYWxzZV0sDQo+IC0JWydSVEVfTUFYX0xDT1JFJywgMzZdLA0KPiAtCVsnUlRFX01B WF9OVU1BX05PREVTJywgMV0NCj4gLV0NCj4gLWZsYWdzX3BhcnRfbnVtYmVyX24xZ2VuZXJpYyA9 IFsNCj4gLQlbJ1JURV9NQUNISU5FJywgJyJuZW92ZXJzZS1uMSInXSwNCj4gLQlbJ1JURV9BUk1f RkVBVFVSRV9BVE9NSUNTJywgdHJ1ZV0sDQo+IC0JWydSVEVfVVNFX0MxMV9NRU1fTU9ERUwnLCB0 cnVlXSwNCj4gLQlbJ1JURV9FQUxfTlVNQV9BV0FSRV9IVUdFUEFHRVMnLCBmYWxzZV0sDQo+IC0J WydSVEVfTElCUlRFX1ZIT1NUX05VTUEnLCBmYWxzZV0sDQo+IC0JWydSVEVfTUFYX01FTV9NQics IDEwNDg1NzZdLA0KPiAtCVsnUlRFX0NBQ0hFX0xJTkVfU0laRScsIDY0XSwNCj4gLQlbJ1JURV9N QVhfTENPUkUnLCA2NF0sDQo+IC0JWydSVEVfTUFYX05VTUFfTk9ERVMnLCAxXQ0KPiAtXQ0KPiAt DQo+IC0jIGFybSBjb25maWcgKGltcGxlbWVudGVyIDB4NDEpIGlzIHRoZSBkZWZhdWx0IGNvbmZp ZyAtDQo+IHBhcnRfbnVtYmVyX2NvbmZpZ19hcm0gPSBbDQo+IC0JWydnZW5lcmljJywgWyctbWFy Y2g9YXJtdjgtYStjcmMnLCAnLW1vdXRsaW5lLWF0b21pY3MnXV0sDQo+IC0JWyduYXRpdmUnLCBb Jy1tYXJjaD1uYXRpdmUnXV0sDQo+IC0JWycweGQwMycsIFsnLW1jcHU9Y29ydGV4LWE1MyddXSwN Cj4gLQlbJzB4ZDA0JywgWyctbWNwdT1jb3J0ZXgtYTM1J11dLA0KPiAtCVsnMHhkMDcnLCBbJy1t Y3B1PWNvcnRleC1hNTcnXV0sDQo+IC0JWycweGQwOCcsIFsnLW1jcHU9Y29ydGV4LWE3MiddXSwN Cj4gLQlbJzB4ZDA5JywgWyctbWNwdT1jb3J0ZXgtYTczJ11dLA0KPiAtCVsnMHhkMGEnLCBbJy1t Y3B1PWNvcnRleC1hNzUnXV0sDQo+IC0JWycweGQwYicsIFsnLW1jcHU9Y29ydGV4LWE3NiddXSwN Cj4gLQlbJzB4ZDBjJywgWyctbWFyY2g9YXJtdjguMi1hK2NyeXB0bycsICctbWNwdT1uZW92ZXJz ZS1uMSddLA0KPiBmbGFnc19wYXJ0X251bWJlcl9uMWdlbmVyaWNdDQo+IC1dDQo+IC1wYXJ0X251 bWJlcl9jb25maWdfY2F2aXVtID0gWw0KPiAtCVsnZ2VuZXJpYycsIFsnLW1hcmNoPWFybXY4LWEr Y3JjK2NyeXB0bycsJy1tY3B1PXRodW5kZXJ4J11dLA0KPiAtCVsnbmF0aXZlJywgWyctbWFyY2g9 bmF0aXZlJ11dLA0KPiAtCVsnMHhhMScsIFsnLW1jcHU9dGh1bmRlcnh0ODgnXSwgZmxhZ3NfcGFy dF9udW1iZXJfdGh1bmRlcnhdLA0KPiAtCVsnMHhhMicsIFsnLW1jcHU9dGh1bmRlcnh0ODEnXSwg ZmxhZ3NfcGFydF9udW1iZXJfdGh1bmRlcnhdLA0KPiAtCVsnMHhhMycsIFsnLW1jcHU9dGh1bmRl cnh0ODMnXSwgZmxhZ3NfcGFydF9udW1iZXJfdGh1bmRlcnhdLA0KPiAtCVsnMHhhZicsIFsnLW1h cmNoPWFybXY4LjEtYStjcmMrY3J5cHRvJywnLW1jcHU9dGh1bmRlcngydDk5J10sDQo+IGZsYWdz X3BhcnRfbnVtYmVyX3RodW5kZXJ4Ml0sDQo+IC0JWycweGIyJywgWyctbWFyY2g9YXJtdjguMi1h K2NyYytjcnlwdG8rbHNlJywnLW1jcHU9b2N0ZW9udHgyJ10sDQo+IGZsYWdzX3BhcnRfbnVtYmVy X29jdGVvbnR4Ml0NCj4gLV0NCj4gLXBhcnRfbnVtYmVyX2NvbmZpZ19lbWFnID0gWw0KPiAtCVsn Z2VuZXJpYycsIFsnLW1hcmNoPWFybXY4LWErY3JjK2NyeXB0bycsICctbXR1bmU9ZW1hZyddXSwN Cj4gLQlbJ25hdGl2ZScsIFsnLW1hcmNoPW5hdGl2ZSddXQ0KPiAtXQ0KPiArcGFydF9udW1iZXJf Y29uZmlnX2FybSA9IHsNCj4gKwknZ2VuZXJpYyc6IHsnbWFjaGluZV9hcmdzJzogIFsnLW1hcmNo PWFybXY4LWErY3JjJywgJy1tb3V0bGluZS0NCj4gYXRvbWljcyddfSwNCj4gKwknbmF0aXZlJzog eydtYWNoaW5lX2FyZ3MnOiAgWyctbWFyY2g9bmF0aXZlJ119LA0KPiArCScweGQwMyc6IHsnbWFj aGluZV9hcmdzJzogIFsnLW1jcHU9Y29ydGV4LWE1MyddfSwNCj4gKwknMHhkMDQnOiB7J21hY2hp bmVfYXJncyc6ICBbJy1tY3B1PWNvcnRleC1hMzUnXX0sDQo+ICsJJzB4ZDA3JzogeydtYWNoaW5l X2FyZ3MnOiAgWyctbWNwdT1jb3J0ZXgtYTU3J119LA0KPiArCScweGQwOCc6IHsnbWFjaGluZV9h cmdzJzogIFsnLW1jcHU9Y29ydGV4LWE3MiddfSwNCj4gKwknMHhkMDknOiB7J21hY2hpbmVfYXJn cyc6ICBbJy1tY3B1PWNvcnRleC1hNzMnXX0sDQo+ICsJJzB4ZDBhJzogeydtYWNoaW5lX2FyZ3Mn OiAgWyctbWNwdT1jb3J0ZXgtYTc1J119LA0KPiArCScweGQwYic6IHsnbWFjaGluZV9hcmdzJzog IFsnLW1jcHU9Y29ydGV4LWE3NiddfSwNCj4gKwknMHhkMGMnOiB7DQo+ICsJCSdtYWNoaW5lX2Fy Z3MnOiAgWyctbWFyY2g9YXJtdjguMi1hK2NyeXB0bycsICctbWNwdT1uZW92ZXJzZS0NCj4gbjEn XSwNCj4gKwkJJ2ZsYWdzJzogWw0KPiArCQkJWydSVEVfTUFDSElORScsICcibmVvdmVyc2UtbjEi J10sDQo+ICsJCQlbJ1JURV9BUk1fRkVBVFVSRV9BVE9NSUNTJywgdHJ1ZV0sDQo+ICsJCQlbJ1JU RV9VU0VfQzExX01FTV9NT0RFTCcsIHRydWVdLA0KPiArCQkJWydSVEVfRUFMX05VTUFfQVdBUkVf SFVHRVBBR0VTJywgZmFsc2VdLA0KPiArCQkJWydSVEVfTElCUlRFX1ZIT1NUX05VTUEnLCBmYWxz ZV0sDQo+ICsJCQlbJ1JURV9NQVhfTUVNX01CJywgMTA0ODU3Nl0sDQo+ICsJCQlbJ1JURV9DQUNI RV9MSU5FX1NJWkUnLCA2NF0sDQo+ICsJCQlbJ1JURV9NQVhfTENPUkUnLCA2NF0sDQo+ICsJCQlb J1JURV9NQVhfTlVNQV9OT0RFUycsIDFdDQo+ICsJCV0NCj4gKwl9DQo+ICt9DQo+IA0KPiAtIyMg QXJtIGltcGxlbWVudGVyIElEIChNSURSIGluIEFybSBBcmNoaXRlY3R1cmUgUmVmZXJlbmNlIE1h bnVhbCkgLQ0KPiBpbXBsZW1lbnRlcl9nZW5lcmljID0gWydHZW5lcmljIGFybXY4JywgZmxhZ3Nf aW1wbGVtZW50ZXJfZ2VuZXJpYywNCj4gcGFydF9udW1iZXJfY29uZmlnX2FybV0NCj4gLWltcGxl bWVudGVyXzB4NDEgPSBbJ0FybScsIGZsYWdzX2ltcGxlbWVudGVyX2FybSwNCj4gcGFydF9udW1i ZXJfY29uZmlnX2FybV0NCj4gLWltcGxlbWVudGVyXzB4NDMgPSBbJ0Nhdml1bScsIGZsYWdzX2lt cGxlbWVudGVyX2Nhdml1bSwNCj4gcGFydF9udW1iZXJfY29uZmlnX2Nhdml1bV0NCj4gLWltcGxl bWVudGVyXzB4NTAgPSBbJ0FtcGVyZSBDb21wdXRpbmcnLCBmbGFnc19pbXBsZW1lbnRlcl9lbWFn LA0KPiBwYXJ0X251bWJlcl9jb25maWdfZW1hZ10NCj4gLWltcGxlbWVudGVyXzB4NTYgPSBbJ01h cnZlbGwgQVJNQURBJywgZmxhZ3NfaW1wbGVtZW50ZXJfYXJtYWRhLA0KPiBwYXJ0X251bWJlcl9j b25maWdfYXJtXSAtaW1wbGVtZW50ZXJfZHBhYSA9IFsnTlhQIERQQUEnLA0KPiBmbGFnc19pbXBs ZW1lbnRlcl9kcGFhLCBwYXJ0X251bWJlcl9jb25maWdfYXJtXQ0KPiArIyMgQXJtIGltcGxlbWVu dGVycyAoSUQgZnJvbSBNSURSIGluIEFybSBBcmNoaXRlY3R1cmUgUmVmZXJlbmNlIE1hbnVhbCkN Cj4gKyMjIFBhcnQgbnVtYmVycyBhcmUgc3BlY2lmaWMgdG8gQXJtIGltcGxlbWVudGVycyAjIGlt cGxlbWVudGVyIHNwZWNpZmljDQo+ICthYXJjaDY0IGZsYWdzIGhhdmUgbWlkZGxlIHByaW9yaXR5 DQo+ICsjICAgICAod2lsbCBvdmVyd3JpdGUgY29tbW9uIGZsYWdzKQ0KPiArIyBwYXJ0IG51bWJl ciBzcGVjaWZpYyBhYXJjaDY0IGZsYWdzIGhhdmUgdGhlIGhpZ2hlc3QgcHJpb3JpdHkNCj4gKyMg ICAgICh3aWxsIG92ZXJ3cml0ZSBib3RoIGNvbW1vbiBhbmQgaW1wbGVtZW50ZXIgc3BlY2lmaWMg ZmxhZ3MpDQo+ICtpbXBsZW1lbnRlcnMgPSB7DQo+ICsJJ2dlbmVyaWMnOiB7DQo+ICsJCSdkZXNj cmlwdGlvbic6ICdHZW5lcmljIGFybXY4JywNCj4gKwkJJ2ZsYWdzJzogWw0KPiArCQkJWydSVEVf TUFDSElORScsICciYXJtdjhhIiddLA0KPiArCQkJWydSVEVfVVNFX0MxMV9NRU1fTU9ERUwnLCB0 cnVlXSwNCj4gKwkJCVsnUlRFX0NBQ0hFX0xJTkVfU0laRScsIDEyOF0sDQo+ICsJCQlbJ1JURV9N QVhfTENPUkUnLCAyNTZdDQo+ICsJCV0sDQo+ICsJCSdwYXJ0X251bWJlcl9jb25maWcnOiBwYXJ0 X251bWJlcl9jb25maWdfYXJtDQo+ICsJfSwNCj4gKwknMHg0MSc6IHsNCj4gKwkJJ2Rlc2NyaXB0 aW9uJzogJ0FybScsDQo+ICsJCSdmbGFncyc6IFsNCj4gKwkJCVsnUlRFX01BQ0hJTkUnLCAnImFy bXY4YSInXSwNCj4gKwkJCVsnUlRFX1VTRV9DMTFfTUVNX01PREVMJywgdHJ1ZV0sDQo+ICsJCQlb J1JURV9DQUNIRV9MSU5FX1NJWkUnLCA2NF0sDQo+ICsJCQlbJ1JURV9NQVhfTENPUkUnLCAxNl0N Cj4gKwkJXSwNCj4gKwkJJ3BhcnRfbnVtYmVyX2NvbmZpZyc6IHBhcnRfbnVtYmVyX2NvbmZpZ19h cm0NCj4gKwl9LA0KPiArCScweDQzJzogew0KPiArCQknZGVzY3JpcHRpb24nOiAnQ2F2aXVtJywN Cj4gKwkJJ2ZsYWdzJzogWw0KPiArCQkJWydSVEVfTUFYX1ZGSU9fR1JPVVBTJywgMTI4XSwNCj4g KwkJCVsnUlRFX0NBQ0hFX0xJTkVfU0laRScsIDEyOF0sDQo+ICsJCQlbJ1JURV9NQVhfTENPUkUn LCA5Nl0sDQo+ICsJCQlbJ1JURV9NQVhfTlVNQV9OT0RFUycsIDJdDQo+ICsJCV0sDQo+ICsJCSdw YXJ0X251bWJlcl9jb25maWcnOiB7DQo+ICsJCQknZ2VuZXJpYyc6IHsnbWFjaGluZV9hcmdzJzog WyctbWFyY2g9YXJtdjgtDQo+IGErY3JjK2NyeXB0bycsICctbWNwdT10aHVuZGVyeCddfSwNCj4g KwkJCSduYXRpdmUnOiB7J21hY2hpbmVfYXJncyc6IFsnLW1hcmNoPW5hdGl2ZSddfSwNCj4gKwkJ CScweGExJzogew0KPiArCQkJCSdtYWNoaW5lX2FyZ3MnOiBbJy1tY3B1PXRodW5kZXJ4dDg4J10s DQo+ICsJCQkJJ2ZsYWdzJzogZmxhZ3NfcGFydF9udW1iZXJfdGh1bmRlcngNCj4gKwkJCX0sDQo+ ICsJCQknMHhhMic6IHsNCj4gKwkJCQknbWFjaGluZV9hcmdzJzogWyctbWNwdT10aHVuZGVyeHQ4 MSddLA0KPiArCQkJCSdmbGFncyc6IGZsYWdzX3BhcnRfbnVtYmVyX3RodW5kZXJ4DQo+ICsJCQl9 LA0KPiArCQkJJzB4YTMnOiB7DQo+ICsJCQkJJ21hY2hpbmVfYXJncyc6IFsnLW1jcHU9dGh1bmRl cnh0ODMnXSwNCj4gKwkJCQknZmxhZ3MnOiBmbGFnc19wYXJ0X251bWJlcl90aHVuZGVyeA0KPiAr CQkJfSwNCj4gKwkJCScweGFmJzogew0KPiArCQkJCSdtYWNoaW5lX2FyZ3MnOiBbJy1tYXJjaD1h cm12OC4xLQ0KPiBhK2NyYytjcnlwdG8nLCctbWNwdT10aHVuZGVyeDJ0OTknXSwNCj4gKwkJCQkn ZmxhZ3MnOiBbDQo+ICsJCQkJCVsnUlRFX01BQ0hJTkUnLCAnInRodW5kZXJ4MiInXSwNCj4gKwkJ CQkJWydSVEVfQVJNX0ZFQVRVUkVfQVRPTUlDUycsIHRydWVdLA0KPiArCQkJCQlbJ1JURV9VU0Vf QzExX01FTV9NT0RFTCcsIHRydWVdLA0KPiArCQkJCQlbJ1JURV9DQUNIRV9MSU5FX1NJWkUnLCA2 NF0sDQo+ICsJCQkJCVsnUlRFX01BWF9MQ09SRScsIDI1Nl0sDQo+ICsJCQkJCVsnUlRFX01BWF9O VU1BX05PREVTJywgMl0NCj4gKwkJCQldDQo+ICsJCQl9LA0KPiArCQkJJzB4YjInOiB7DQo+ICsJ CQkJJ21hY2hpbmVfYXJncyc6IFsnLW1hcmNoPWFybXY4LjItDQo+IGErY3JjK2NyeXB0bytsc2Un LCctbWNwdT1vY3Rlb250eDInXSwNCj4gKwkJCQknZmxhZ3MnOiBbDQo+ICsJCQkJCVsnUlRFX01B Q0hJTkUnLCAnIm9jdGVvbnR4MiInXSwNCj4gKwkJCQkJWydSVEVfQVJNX0ZFQVRVUkVfQVRPTUlD UycsIHRydWVdLA0KPiArCQkJCQlbJ1JURV9VU0VfQzExX01FTV9NT0RFTCcsIHRydWVdLA0KPiAr CQkJCQlbJ1JURV9FQUxfSUdCX1VJTycsIGZhbHNlXSwNCj4gKwkJCQkJWydSVEVfTUFYX0xDT1JF JywgMzZdLA0KPiArCQkJCQlbJ1JURV9NQVhfTlVNQV9OT0RFUycsIDFdDQo+ICsJCQkJXQ0KPiAr CQkJfQ0KPiArCQl9DQo+ICsJfSwNCj4gKwknMHg1MCc6IHsNCj4gKwkJJ2Rlc2NyaXB0aW9uJzog J0FtcGVyZSBDb21wdXRpbmcnLA0KPiArCQknZmxhZ3MnOiBbDQo+ICsJCQlbJ1JURV9NQUNISU5F JywgJyJlbWFnIiddLA0KPiArCQkJWydSVEVfQ0FDSEVfTElORV9TSVpFJywgNjRdLA0KPiArCQkJ WydSVEVfTUFYX0xDT1JFJywgMzJdLA0KPiArCQkJWydSVEVfTUFYX05VTUFfTk9ERVMnLCAxXQ0K PiArCQldLA0KPiArCQkncGFydF9udW1iZXJfY29uZmlnJzogew0KPiArCQkJJ2dlbmVyaWMnOiB7 J21hY2hpbmVfYXJncyc6ICBbJy1tYXJjaD1hcm12OC0NCj4gYStjcmMrY3J5cHRvJywgJy1tdHVu ZT1lbWFnJ119LA0KPiArCQkJJ25hdGl2ZSc6IHsnbWFjaGluZV9hcmdzJzogIFsnLW1hcmNoPW5h dGl2ZSddfQ0KPiArCQl9DQo+ICsJfSwNCj4gKwknMHg1Nic6IHsNCj4gKwkJJ2Rlc2NyaXB0aW9u JzogJ01hcnZlbGwgQVJNQURBJywNCj4gKwkJJ2ZsYWdzJzogWw0KPiArCQkJWydSVEVfTUFDSElO RScsICciYXJtdjhhIiddLA0KPiArCQkJWydSVEVfQ0FDSEVfTElORV9TSVpFJywgNjRdLA0KPiAr CQkJWydSVEVfTUFYX0xDT1JFJywgMTZdLA0KPiArCQkJWydSVEVfTUFYX05VTUFfTk9ERVMnLCAx XQ0KPiArCQldLA0KPiArCQkncGFydF9udW1iZXJfY29uZmlnJzogcGFydF9udW1iZXJfY29uZmln X2FybQ0KPiArCX0sDQo+ICsJJ2RwYWEnOiB7DQo+ICsJCSdkZXNjcmlwdGlvbic6ICdOWFAgRFBB QScsDQo+ICsJCSdmbGFncyc6IFsNCj4gKwkJCVsnUlRFX01BQ0hJTkUnLCAnImRwYWEiJ10sDQo+ ICsJCQlbJ1JURV9MSUJSVEVfRFBBQTJfVVNFX1BIWVNfSU9WQScsIGZhbHNlXSwNCj4gKwkJCVsn UlRFX1VTRV9DMTFfTUVNX01PREVMJywgdHJ1ZV0sDQo+ICsJCQlbJ1JURV9DQUNIRV9MSU5FX1NJ WkUnLCA2NF0sDQo+ICsJCQlbJ1JURV9NQVhfTENPUkUnLCAxNl0sDQo+ICsJCQlbJ1JURV9NQVhf TlVNQV9OT0RFUycsIDFdDQo+ICsJCV0sDQo+ICsJCSdwYXJ0X251bWJlcl9jb25maWcnOiBwYXJ0 X251bWJlcl9jb25maWdfYXJtDQo+ICsJfQ0KPiArfQ0KDQpJIGhhdmUgc29tZSBxdWVzdGlvbnMg aGVyZS4gRHBhYSBhbmQgYXJtYWRhIGFyZSB1c2luZyB0aGUgc2FtZSBwYXJ0IG51bWJlciBjb25m aWcgYXMgMHg0MS4gSSB0aGluayB3ZSBzaG91bGQgYWRkIHRoZWlyIG93biBwYXIgbnVtYmVycyAo c2luY2UgcGFydCBudW1iZXIgY29uZmlnIHNob3VsZCBiZSB1bmlxdWUgdG8gZWFjaCBpbXBsZW1l bnRlcikgLSBhbnkgaWRlYXMgb24gd2hhdCB0aG9zZSBzaG91bGQgYmU/DQoNCkFuZCB3aGF0IGV4 YWN0bHkgaXMgZHBhYSBpbXBsZW1lbnRlcj8gRnJvbSB0aGUgbG9va3Mgb2YgaXQgaXQncyBhIGZl YXR1cmUgYW5kIHVzaW5nIGl0IGFzIGltcGxlbWVudGVyIGRvZXNuJ3Qgc2VlbSByaWdodC4NCg0K PiANCj4gIGRwZGtfY29uZi5zZXQoJ1JURV9BUkNIX0FSTScsIDEpDQo+ICBkcGRrX2NvbmYuc2V0 KCdSVEVfRk9SQ0VfSU5UUklOU0lDUycsIDEpIEBAIC0xNTMsNyArMTg0LDcgQEAgZWxzZQ0KPiAg CWltcGxlbWVudGVyX2lkID0gJ2dlbmVyaWMnDQo+ICAJaWYgbWFjaGluZSA9PSAnZ2VuZXJpYycg YW5kIG5vdCBtZXNvbi5pc19jcm9zc19idWlsZCgpDQo+ICAJCSMgZ2VuZXJpYyBidWlsZA0KPiAt CQlpbXBsZW1lbnRlcl9jb25maWcgPSBpbXBsZW1lbnRlcl9nZW5lcmljDQo+ICsJCWltcGxlbWVu dGVyX2NvbmZpZyA9IGltcGxlbWVudGVyWydnZW5lcmljJ10NCj4gIAkJcGFydF9udW1iZXIgPSAn Z2VuZXJpYycNCj4gIAllbGlmIG5vdCBtZXNvbi5pc19jcm9zc19idWlsZCgpDQo+ICAJCSMgbmF0 aXZlIGJ1aWxkDQo+IEBAIC0xNjgsOSArMTk5LDkgQEAgZWxzZQ0KPiAgCQkJcGFydF9udW1iZXIg PSBjbWRfb3V0cHV0WzNdDQo+ICAJCWVuZGlmDQo+ICAJCSMgU2V0IHRvIGdlbmVyaWMgaWYgdmFy aWFibGUgaXMgbm90IGZvdW5kDQo+IC0JCWltcGxlbWVudGVyX2NvbmZpZyA9IGdldF92YXJpYWJs ZSgnaW1wbGVtZW50ZXJfJyArDQo+IGltcGxlbWVudGVyX2lkLCBbJ2dlbmVyaWMnXSkNCj4gKwkJ aW1wbGVtZW50ZXJfY29uZmlnID0gaW1wbGVtZW50ZXJzLmdldChpbXBsZW1lbnRlcl9pZCwNCj4g WydnZW5lcmljJ10pDQo+ICAJCWlmIGltcGxlbWVudGVyX2NvbmZpZ1swXSA9PSAnZ2VuZXJpYycN Cj4gLQkJCWltcGxlbWVudGVyX2NvbmZpZyA9IGltcGxlbWVudGVyX2dlbmVyaWMNCj4gKwkJCWlt cGxlbWVudGVyX2NvbmZpZyA9IGltcGxlbWVudGVyWydnZW5lcmljJ10NCj4gIAkJCXBhcnRfbnVt YmVyID0gJ2dlbmVyaWMnDQo+ICAJCWVuZGlmDQo+ICAJCWlmIGFybV9mb3JjZV9uYXRpdmVfbWFy Y2ggPT0gdHJ1ZQ0KPiBAQCAtMTgwLDI4ICsyMTEsMzUgQEAgZWxzZQ0KPiAgCQkjIGNyb3NzIGJ1 aWxkDQo+ICAJCWltcGxlbWVudGVyX2lkID0gbWVzb24uZ2V0X2Nyb3NzX3Byb3BlcnR5KCdpbXBs ZW1lbnRlcl9pZCcsDQo+ICdnZW5lcmljJykNCj4gIAkJcGFydF9udW1iZXIgPSBtZXNvbi5nZXRf Y3Jvc3NfcHJvcGVydHkoJ3BhcnRfbnVtYmVyJywNCj4gJ2dlbmVyaWMnKQ0KPiAtCQlpbXBsZW1l bnRlcl9jb25maWcgPSBnZXRfdmFyaWFibGUoJ2ltcGxlbWVudGVyXycgKw0KPiBpbXBsZW1lbnRl cl9pZCkNCj4gKwkJaW1wbGVtZW50ZXJfY29uZmlnID0gaW1wbGVtZW50ZXJzLmdldChpbXBsZW1l bnRlcl9pZCkNCj4gIAllbmRpZg0KPiANCj4gLQltZXNzYWdlKCdBcm0gaW1wbGVtZW50ZXI6ICcg KyBpbXBsZW1lbnRlcl9jb25maWdbMF0pDQo+ICsJbWVzc2FnZSgnQXJtIGltcGxlbWVudGVyOiAn ICsgaW1wbGVtZW50ZXJfY29uZmlnWydkZXNjcmlwdGlvbiddKQ0KPiAgCW1lc3NhZ2UoJ0FybSBw YXJ0IG51bWJlcjogJyArIHBhcnRfbnVtYmVyKQ0KPiANCj4gKwlwYXJ0X251bWJlcl9jb25maWcg PSBpbXBsZW1lbnRlcl9jb25maWdbJ3BhcnRfbnVtYmVyX2NvbmZpZyddDQo+ICsJaWYgcGFydF9u dW1iZXJfY29uZmlnLmhhc19rZXkocGFydF9udW1iZXIpDQo+ICsJCSMgdXNlIHRoZSBzcGVjaWZp ZWQgcGFydF9udW1iZXIgbWFjaGluZSBhcmdzIGlmIGZvdW5kDQo+ICsJCXBhcnRfbnVtYmVyX2Nv bmZpZyA9IHBhcnRfbnVtYmVyX2NvbmZpZ1twYXJ0X251bWJlcl0NCj4gKwllbGlmIG5vdCBtZXNv bi5pc19jcm9zc19idWlsZCgpDQo+ICsJCSMgZGVmYXVsdCB0byBnZW5lcmljIG1hY2hpbmUgYXJn cyBpZiBwYXJ0X251bWJlciBpcyBub3QgZm91bmQNCj4gKwkJIyBhbmQgbm90IGZvcmNpbmcgbmF0 aXZlIG1hY2hpbmUgYXJncw0KPiArCQkjIGJ1dCBkb24ndCBkZWZhdWx0IGluIGNyb3NzLWJ1aWxk czsgaWYgcGFydF9udW1iZXIgaXMgc3BlY2lmaWVkDQo+ICsJCSMgaW5jb3JyZWN0bHkgaW4gYSBj cm9zcy1maWxlLCBpdCBuZWVkcyB0byBiZSBmaXhlZCB0aGVyZQ0KPiArCQlwYXJ0X251bWJlcl9j b25maWcgPSBwYXJ0X251bWJlcl9jb25maWdbJ2dlbmVyaWMnXQ0KPiArCWVsc2UNCj4gKwkJIyBk b2luZyBjcm9zcyBidWlsZCBhbmQgcGFydCBudW1iZXIgaXMgbm90IGluDQo+IHBhcnRfbnVtYmVy X2NvbmZpZw0KPiArCQllcnJvcignQ3Jvc3MgYnVpbGQgcGFydCBudW1iZXIgMEAwIG5vdA0KPiBm b3VuZC4nLmZvcm1hdChwYXJ0X251bWJlcikpDQo+ICsJZW5kaWYNCj4gKw0KPiAgCSMgdXNlIGRl ZmF1bHQgZmxhZ3Mgd2l0aCBpbXBsZW1lbnRlciBmbGFncw0KPiAtCWRwZGtfZmxhZ3MgPSBmbGFn c19jb21tb25fZGVmYXVsdCArIGltcGxlbWVudGVyX2NvbmZpZ1sxXQ0KPiArCWRwZGtfZmxhZ3Mg PSBmbGFnc19jb21tb25fZGVmYXVsdCArIGltcGxlbWVudGVyX2NvbmZpZ1snZmxhZ3MnXSArDQo+ ICtwYXJ0X251bWJlcl9jb25maWcuZ2V0KCdmbGFncycsIFtdKQ0KPiANCj4gKwkjIGFwcGx5IHN1 cHBvcnRlZCBtYWNoaW5lIGFyZ3MNCj4gIAltYWNoaW5lX2FyZ3MgPSBbXSAjIENsZWFyIHByZXZp b3VzIG1hY2hpbmUgYXJncw0KPiAtCWZvcmVhY2ggbWFyZzogaW1wbGVtZW50ZXJfY29uZmlnWzJd DQo+IC0JCWlmIG1hcmdbMF0gPT0gcGFydF9udW1iZXINCj4gLQkJCSMgYXBwbHkgc3VwcG9ydGVk IG1hY2hpbmUgYXJncw0KPiAtCQkJZm9yZWFjaCBmbGFnOiBtYXJnWzFdDQo+IC0JCQkJaWYgY2Mu aGFzX2FyZ3VtZW50KGZsYWcpDQo+IC0JCQkJCW1hY2hpbmVfYXJncyArPSBmbGFnDQo+IC0JCQkJ ZW5kaWYNCj4gLQkJCWVuZGZvcmVhY2gNCj4gLQkJCWlmIG1hcmcubGVuZ3RoKCkgPiAyDQo+IC0J CQkJIyBhZGQgZXh0cmEgZmxhZ3MgZm9yIHRoZSBwYXJ0DQo+IC0JCQkJZHBka19mbGFncyArPSBt YXJnWzJdDQo+IC0JCQllbmRpZg0KPiArCWZvcmVhY2ggZmxhZzogcGFydF9udW1iZXJfY29uZmln WydtYWNoaW5lX2FyZ3MnXQ0KPiArCQlpZiBjYy5oYXNfYXJndW1lbnQoZmxhZykNCj4gKwkJCW1h Y2hpbmVfYXJncyArPSBmbGFnDQo+ICAJCWVuZGlmDQo+ICAJZW5kZm9yZWFjaA0KPiANCj4gLS0N Cj4gMi4yMC4xDQoNCg==