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 3536AA04E6; Sun, 8 Nov 2020 20:45:58 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 8BE2A29D2; Sun, 8 Nov 2020 20:45:56 +0100 (CET) Received: from EUR03-AM5-obe.outbound.protection.outlook.com (mail-eopbgr30087.outbound.protection.outlook.com [40.107.3.87]) by dpdk.org (Postfix) with ESMTP id D5C891E2B for ; Sun, 8 Nov 2020 20:45:53 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=W7S1kHRsk8yfP4Hjxm8C816jWTsyl4gt2EyW9MKbSgo=; b=liXDmaziBYarIRXm4/qMkA40GLtt0t4UVCDiN9IaPB/EoDGODPMzoyFyddAVkUsrswYMsLLB0c53y/ibfwwRXtvYvjh/1tbqKhtjQRtpuEjmW99pLg5N189mZpKyWm1a+9sQ8imSjWHxmhVLGln7jHOl+Iga2IckQMtP2VIO60A= Received: from AM6P195CA0063.EURP195.PROD.OUTLOOK.COM (2603:10a6:209:87::40) by AM6PR08MB4391.eurprd08.prod.outlook.com (2603:10a6:20b:73::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3499.18; Sun, 8 Nov 2020 19:45:51 +0000 Received: from AM5EUR03FT032.eop-EUR03.prod.protection.outlook.com (2603:10a6:209:87:cafe::78) by AM6P195CA0063.outlook.office365.com (2603:10a6:209:87::40) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3541.21 via Frontend Transport; Sun, 8 Nov 2020 19:45:51 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dpdk.org; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dpdk.org; dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM5EUR03FT032.mail.protection.outlook.com (10.152.16.84) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3541.17 via Frontend Transport; Sun, 8 Nov 2020 19:45:51 +0000 Received: ("Tessian outbound 082214a64d39:v71"); Sun, 08 Nov 2020 19:45:51 +0000 X-CR-MTA-TID: 64aa7808 Received: from c2d024014541.4 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 2381A580-0999-48CE-AC00-E50F436D5A2C.1; Sun, 08 Nov 2020 19:45:46 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c2d024014541.4 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Sun, 08 Nov 2020 19:45:46 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Vv7XXvSJD7BuJkciQJTxFrEX/EMY/kOUMydpv9hW94+TGB1YhLFiR38lWqyiMqB2JQYkcBi8wJCrQdRrpIIaGzIvdddxPijlJWXuKv3K29nkTjVhbGhSH4xAfbH9ovwlpgdGiF6a/KhRSdb2AJ5ibzEqFH/cbnLHPNmAwf5amEyiGkCxq7sn5oOO/NrhxXpIVKkibXVLjpaZcGfqTZ3vIiUUC8kKBa1N/cPks/Zy9nf9yd9TX8PmgSJBXgIhAga3GtziUEFbQbL24jQiCsolr0ZtQEiSocN/7uScfDzLqrIRSzO20qSuFZm2K4GA6bR3+qPIMLHfNVXrlT6Pncc+cA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=W7S1kHRsk8yfP4Hjxm8C816jWTsyl4gt2EyW9MKbSgo=; b=OYMb6Eu3zt50+amZPlRkqY3YwcylwEjMqEo2rXklWjTq5BXhvA2V0tREZLg2BqgksYYO/EBsfcGQAtHTMf3BcLSdTHuZNiGIrhFUhIwnJbI4LgAB2if7utsWuNlVOGHksipPfcm2oVaVqc5++g71F1WKL3dDcMOzCGsU/fFUP5boVdIfFJWZ9cNHqQa/7C+a3FlWV9+sDD4Qh9s2zjzKug0Xd7pCR3C6ME9l6w0hqT2xKMgNy+qh7yBjfFkwAty75ANqDKq0Gxgz7+Fiph5bAv5zEKX0S6hKLFI9LGAAXKEXG9QvIkWRszIcJ4VS4kMExoQfDHUsaQQfmaUw+miDWA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=W7S1kHRsk8yfP4Hjxm8C816jWTsyl4gt2EyW9MKbSgo=; b=liXDmaziBYarIRXm4/qMkA40GLtt0t4UVCDiN9IaPB/EoDGODPMzoyFyddAVkUsrswYMsLLB0c53y/ibfwwRXtvYvjh/1tbqKhtjQRtpuEjmW99pLg5N189mZpKyWm1a+9sQ8imSjWHxmhVLGln7jHOl+Iga2IckQMtP2VIO60A= Received: from DBAPR08MB5814.eurprd08.prod.outlook.com (2603:10a6:10:1b1::6) by DB7PR08MB3211.eurprd08.prod.outlook.com (2603:10a6:5:27::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3541.24; Sun, 8 Nov 2020 19:45:41 +0000 Received: from DBAPR08MB5814.eurprd08.prod.outlook.com ([fe80::7814:9c1:781f:475d]) by DBAPR08MB5814.eurprd08.prod.outlook.com ([fe80::7814:9c1:781f:475d%4]) with mapi id 15.20.3541.024; Sun, 8 Nov 2020 19:45:41 +0000 From: Honnappa Nagarahalli To: =?utf-8?B?SnVyYWogTGlua2XFoQ==?= , "bruce.richardson@intel.com" , Ruifeng Wang , Phil Yang , "vcchunga@amazon.com" , Dharmik Thakkar , "jerinjacobk@gmail.com" , "hemant.agrawal@nxp.com" , "Ajit Khaparde (ajit.khaparde@broadcom.com)" , "ferruh.yigit@intel.com" , "aconole@redhat.com" CC: "dev@dpdk.org" , nd , Honnappa Nagarahalli , nd Thread-Topic: [PATCH v8 06/14] build: organize Arm config into dict Thread-Index: AQHWtGyi03639BE+MkCp65o03mmQ+6m+cN3w Date: Sun, 8 Nov 2020 19:45:40 +0000 Message-ID: References: <1604584762-25321-1-git-send-email-juraj.linkes@pantheon.tech> <1604649795-27476-1-git-send-email-juraj.linkes@pantheon.tech> <1604649795-27476-7-git-send-email-juraj.linkes@pantheon.tech> In-Reply-To: <1604649795-27476-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-ts-tracking-id: C499566BB0CB874381332F61D1FDA7BA.0 x-checkrecipientchecked: true Authentication-Results-Original: pantheon.tech; dkim=none (message not signed) header.d=none; pantheon.tech; dmarc=none action=none header.from=arm.com; x-originating-ip: [70.113.13.105] x-ms-publictraffictype: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 7fb8b6d7-1060-44d8-9ef6-08d8841ee5fb x-ms-traffictypediagnostic: DB7PR08MB3211:|AM6PR08MB4391: x-ld-processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr x-ms-exchange-transport-forked: True X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true nodisclaimer: true x-ms-oob-tlc-oobclassifiers: OLM:9508;OLM:9508; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: bTIHcJQpIY0MlLIea0pQK1fo3Cw0yx1M7ru+ea6kWdlJALswFt3cuaCjqGz+u3rCIZVR20kI5iIW58smN9daQptxac2rlWk4sUl6UcZUkQ9p4WNUEhezm2bBIkFmix188qtgLKXifzi1xtTK7Wza6tqv7OIECXmQTV9rhlw/dcId+sXCdqhEb8y2/SyKLKHCnl0pSA+6DFdRKURGOjlRx3zgrrTwLFTlcAEoXjSXnBtmKeIiKuFd8nCbM9XooC7FhlvvRthKw1h91k+HzLGvMn8PaGsVIpuIWiBImp47fhdSl5w47r4x/ZV+k77CC4pE3BJvVYYDmvapWb6YQppvpCOwMTBX1gtabPiLZDaThh9b3aDZH6WUBQsOki7ZOTVM X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DBAPR08MB5814.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(39850400004)(346002)(396003)(376002)(136003)(366004)(52536014)(5660300002)(30864003)(26005)(66476007)(66556008)(66446008)(66946007)(186003)(76116006)(64756008)(9686003)(6506007)(83380400001)(71200400001)(7696005)(33656002)(55016002)(4326008)(316002)(86362001)(54906003)(110136005)(478600001)(2906002)(8676002)(8936002)(921003); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: rHOUbAc+so/sLNWd/wOrB3LA0JMUcquwzk+hJi7lBvOKMWOLdx+pUdBOqxp+8HUMmjqCmN+8FVm/1tc2/xGT8jSvQRReWE+MIiihLeKKdrriC24wcM0kURCf5Vcq4fRwsbcwt9gzmbX2nXjjAezo8ZJA6lcmFhffUDAYd72m91JJgpVKz0uZ1XuqHyTlXuqh6vka0JAZacX2AnlRcZVXB0aacr+PvjppAhePTUV1kIYNieqalrwF/wEGsYQGqDrM5oiFLDHFDRAEHQ8e9u3PrbthuPkCgicTM0JsB+kUHUEM5l6uD1jZCm9PURGxt4n8gtXFQDllAdAFWRXQ5s0Sbyq/dYemfAwFD/kTZrGH15lU6xY7uQYJT+lHf06YiM9mg19MBQHsBvUFz8qapHPKQV3suE5CNcG3Ndyb08mvL9OBQBuceVjBivjlJ7ZfTmbHqsfux1JVz2gXRyx5yph65LEzT1cy9Y0p3Abcka1mexwVVoAQtjWgKIK7OUPLsfYWKUvDYOFPiPzxvbE1G3DVG3gaYJvkhaso9FKjQUa0AogrcUeE9VZ4H5Pu0r0ECwzKZ8pnBBIzHVxBFdGQU70ri3oTq7UCyc9qN1blEulYQt2nb/amO7TLBLNa+P1ismCn6dzUBUhaSuCRIqrUkZKWmA== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR08MB3211 Original-Authentication-Results: pantheon.tech; dkim=none (message not signed) header.d=none; pantheon.tech; dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM5EUR03FT032.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: c92a61dc-00cd-4cb9-7406-08d8841edfc4 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: aaeO71OQhFtpzpkBlCIWihuLwseSRLJ6z0tPPxXf3q7MbifYEqOtAvEaJinHvVyfgg3tq4zQeBPwevtEiNwqc2luyYBJ8Gh3L5mBLdmZxaPPLUrLEzwKlNgyugFZrFb6z4nXrWhp/kIv0UWlRhZJEBG/DCMHs4O6BA0omOg1OdMB95cgD/Suq2dTkxk/fNK6Qzlq8epEkH0fYb2lu+6x5k37IwYM1wYqsTilk+HYfywX4NzJZqsfFQ5RCE3D5iMe/bLbVqV0Pc2HW4YRabAJ8WE3mgH7JLjMt/TluZMh2ky74uq2e+0fpDHW6trA8/fhdqJXCMbuM1sysPRFI9bfMvtCjHxrYuec34MrsebiWQAA2wAr4OZ96urXNDGQmJROSrYHIdxEkcEuBvWAiRY7DWM0TWshWvzVxKmnQ+NiIU0= X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFS:(4636009)(396003)(39850400004)(376002)(136003)(346002)(46966005)(81166007)(478600001)(82740400003)(316002)(2906002)(83380400001)(70586007)(36906005)(70206006)(8676002)(54906003)(110136005)(86362001)(55016002)(26005)(9686003)(47076004)(186003)(356005)(52536014)(5660300002)(30864003)(4326008)(82310400003)(336012)(8936002)(7696005)(33656002)(6506007)(921003); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Nov 2020 19:45:51.4374 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 7fb8b6d7-1060-44d8-9ef6-08d8841ee5fb X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM5EUR03FT032.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB4391 Subject: Re: [dpdk-dev] [PATCH v8 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" PHNuaXA+DQoNCj4gDQo+IFVzZSBkaWN0aW9uYXJ5IGxvb2t1cCBpbnN0ZWFkIG9mIGNoZWNraW5n IGZvciBleGlzdGluZyB2YXJpYWJsZXMsIGl0ZXJhdGluZyBvdmVyDQo+IGFsbCBlbGVtZW50cyBp biB0aGUgbGlzdCBvciBjaGVja2luZyBsaXN0cyBmb3Igb3B0aW9uYWwgY29uZmlndXJhdGlvbi4g TW92ZQ0KPiB2YXJpYWJsZSBjb250ZW50cyBpbnRvIHRoZSBkaWN0aW9uYXJ5IGZvciB2YXJpYWJs ZXMgdGhhdCB3b3VsZCBiZSByZWZlcmVuY2VkDQo+IG9ubHkgb25jZS4NCj4gRmFsbGJhY2sgdG8g Z2VuZXJpYyBwYXJ0IG51bWJlciBpZiB0aGUgZGlzY292ZXJlZCBwYXJ0IG51bWJlciBpcyB1bmtu b3duLg0KPiANCj4gU2lnbmVkLW9mZi1ieTogSnVyYWogTGlua2XFoSA8anVyYWoubGlua2VzQHBh bnRoZW9uLnRlY2g+DQo+IC0tLQ0KPiAgY29uZmlnL2FybS9tZXNvbi5idWlsZCB8IDI4MiArKysr KysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAgMSBmaWxlIGNoYW5nZWQs IDE2MCBpbnNlcnRpb25zKCspLCAxMjIgZGVsZXRpb25zKC0pDQo+IA0KPiBkaWZmIC0tZ2l0IGEv Y29uZmlnL2FybS9tZXNvbi5idWlsZCBiL2NvbmZpZy9hcm0vbWVzb24uYnVpbGQgaW5kZXgNCj4g ZWRhNDg1ZTdmLi41ZDIzMmYxYzQgMTAwNjQ0DQo+IC0tLSBhL2NvbmZpZy9hcm0vbWVzb24uYnVp bGQNCj4gKysrIGIvY29uZmlnL2FybS9tZXNvbi5idWlsZA0KPiBAQCAtMjgsMTE1ICsyOCwxNDYg QEAgZmxhZ3NfY29tbW9uX2RlZmF1bHQgPSBbDQo+ICAJWydSVEVfQ0FDSEVfTElORV9TSVpFJywg MTI4XQ0KPiAgXQ0KPiANCj4gLSMgaW1wbGVtZW50ZXIgc3BlY2lmaWMgYWFyY2g2NCBmbGFncywg d2l0aCBtaWRkbGUgcHJpb3JpdHkgLSMgKHdpbGwgb3ZlcndyaXRlDQo+IGNvbW1vbiBmbGFncykg LWZsYWdzX2ltcGxlbWVudGVyX2dlbmVyaWMgPSBbDQo+IC0JWydSVEVfTUFDSElORScsICciYXJt djhhIiddLA0KPiAtCVsnUlRFX1VTRV9DMTFfTUVNX01PREVMJywgdHJ1ZV0sDQo+IC0JWydSVEVf Q0FDSEVfTElORV9TSVpFJywgMTI4XSwNCj4gLQlbJ1JURV9NQVhfTENPUkUnLCAyNTZdDQo+IC1d DQo+IC1mbGFnc19pbXBsZW1lbnRlcl9hcm0gPSBbDQo+IC0JWydSVEVfTUFDSElORScsICciYXJt djhhIiddLA0KPiAtCVsnUlRFX1VTRV9DMTFfTUVNX01PREVMJywgdHJ1ZV0sDQo+IC0JWydSVEVf Q0FDSEVfTElORV9TSVpFJywgNjRdLA0KPiAtCVsnUlRFX01BWF9MQ09SRScsIDE2XQ0KPiAtXQ0K PiAtZmxhZ3NfaW1wbGVtZW50ZXJfY2F2aXVtID0gWw0KPiAtCVsnUlRFX01BWF9WRklPX0dST1VQ UycsIDEyOF0sDQo+IC0JWydSVEVfQ0FDSEVfTElORV9TSVpFJywgMTI4XSwNCj4gLQlbJ1JURV9N QVhfTENPUkUnLCA5Nl0sDQo+IC0JWydSVEVfTUFYX05VTUFfTk9ERVMnLCAyXQ0KPiAtXQ0KPiAt ZmxhZ3NfaW1wbGVtZW50ZXJfZHBhYSA9IFsNCj4gLQlbJ1JURV9NQUNISU5FJywgJyJkcGFhIidd LA0KPiAtCVsnUlRFX0xJQlJURV9EUEFBMl9VU0VfUEhZU19JT1ZBJywgZmFsc2VdLA0KPiAtCVsn UlRFX1VTRV9DMTFfTUVNX01PREVMJywgdHJ1ZV0sDQo+IC0JWydSVEVfQ0FDSEVfTElORV9TSVpF JywgNjRdLA0KPiAtCVsnUlRFX01BWF9MQ09SRScsIDE2XSwNCj4gLQlbJ1JURV9NQVhfTlVNQV9O T0RFUycsIDFdDQo+IC1dDQo+IC1mbGFnc19pbXBsZW1lbnRlcl9lbWFnID0gWw0KPiAtCVsnUlRF X01BQ0hJTkUnLCAnImVtYWciJ10sDQo+IC0JWydSVEVfQ0FDSEVfTElORV9TSVpFJywgNjRdLA0K PiAtCVsnUlRFX01BWF9MQ09SRScsIDMyXSwNCj4gLQlbJ1JURV9NQVhfTlVNQV9OT0RFUycsIDFd DQo+IC1dDQo+IC1mbGFnc19pbXBsZW1lbnRlcl9hcm1hZGEgPSBbDQo+IC0JWydSVEVfTUFDSElO RScsICciYXJtdjhhIiddLA0KPiAtCVsnUlRFX0NBQ0hFX0xJTkVfU0laRScsIDY0XSwNCj4gLQlb J1JURV9NQVhfTENPUkUnLCAxNl0sDQo+IC0JWydSVEVfTUFYX05VTUFfTk9ERVMnLCAxXQ0KPiAt XQ0KPiAtDQo+IC0jIHBhcnQgbnVtYmVyIHNwZWNpZmljIGFhcmNoNjQgZmxhZ3MsIHdpdGggaGln aGVzdCBwcmlvcml0eSAtIyAod2lsbCBvdmVyd3JpdGUNCj4gYm90aCBjb21tb24gYW5kIGltcGxl bWVudGVyIHNwZWNpZmljIGZsYWdzKSAgZmxhZ3NfcGFydF9udW1iZXJfdGh1bmRlcnggPQ0KPiBb DQo+ICAJWydSVEVfTUFDSElORScsICcidGh1bmRlcngiJ10sDQo+ICAJWydSVEVfVVNFX0MxMV9N RU1fTU9ERUwnLCBmYWxzZV0NCj4gIF0NCj4gLWZsYWdzX3BhcnRfbnVtYmVyX3RodW5kZXJ4MiA9 IFsNCj4gLQlbJ1JURV9NQUNISU5FJywgJyJ0aHVuZGVyeDIiJ10sDQo+IC0JWydSVEVfQVJNX0ZF QVRVUkVfQVRPTUlDUycsIHRydWVdLA0KPiAtCVsnUlRFX1VTRV9DMTFfTUVNX01PREVMJywgdHJ1 ZV0sDQo+IC0JWydSVEVfQ0FDSEVfTElORV9TSVpFJywgNjRdLA0KPiAtCVsnUlRFX01BWF9MQ09S RScsIDI1Nl0sDQo+IC0JWydSVEVfTUFYX05VTUFfTk9ERVMnLCAyXQ0KPiAtXQ0KPiAtZmxhZ3Nf cGFydF9udW1iZXJfb2N0ZW9udHgyID0gWw0KPiAtCVsnUlRFX01BQ0hJTkUnLCAnIm9jdGVvbnR4 MiInXSwNCj4gLQlbJ1JURV9BUk1fRkVBVFVSRV9BVE9NSUNTJywgdHJ1ZV0sDQo+IC0JWydSVEVf VVNFX0MxMV9NRU1fTU9ERUwnLCB0cnVlXSwNCj4gLQlbJ1JURV9FQUxfSUdCX1VJTycsIGZhbHNl XSwNCj4gLQlbJ1JURV9NQVhfTENPUkUnLCAzNl0sDQo+IC0JWydSVEVfTUFYX05VTUFfTk9ERVMn LCAxXQ0KPiAtXQ0KPiAtZmxhZ3NfcGFydF9udW1iZXJfbjFnZW5lcmljID0gWw0KPiAtCVsnUlRF X01BQ0hJTkUnLCAnIm5lb3ZlcnNlLW4xIiddLA0KPiAtCVsnUlRFX0FSTV9GRUFUVVJFX0FUT01J Q1MnLCB0cnVlXSwNCj4gLQlbJ1JURV9VU0VfQzExX01FTV9NT0RFTCcsIHRydWVdLA0KPiAtCVsn UlRFX0VBTF9OVU1BX0FXQVJFX0hVR0VQQUdFUycsIGZhbHNlXSwNCj4gLQlbJ1JURV9MSUJSVEVf VkhPU1RfTlVNQScsIGZhbHNlXSwNCj4gLQlbJ1JURV9NQVhfTUVNX01CJywgMTA0ODU3Nl0sDQo+ IC0JWydSVEVfQ0FDSEVfTElORV9TSVpFJywgNjRdLA0KPiAtCVsnUlRFX01BWF9MQ09SRScsIDY0 XSwNCj4gLQlbJ1JURV9NQVhfTlVNQV9OT0RFUycsIDFdDQo+IC1dDQo+IC0NCj4gLSMgYXJtIGNv bmZpZyAoaW1wbGVtZW50ZXIgMHg0MSkgaXMgdGhlIGRlZmF1bHQgY29uZmlnIC0NCj4gcGFydF9u dW1iZXJfY29uZmlnX2FybSA9IFsNCj4gLQlbJ2dlbmVyaWMnLCBbJy1tYXJjaD1hcm12OC1hK2Ny YycsICctbW91dGxpbmUtYXRvbWljcyddXSwNCj4gLQlbJ25hdGl2ZScsIFsnLW1hcmNoPW5hdGl2 ZSddXSwNCj4gLQlbJzB4ZDAzJywgWyctbWNwdT1jb3J0ZXgtYTUzJ11dLA0KPiAtCVsnMHhkMDQn LCBbJy1tY3B1PWNvcnRleC1hMzUnXV0sDQo+IC0JWycweGQwNycsIFsnLW1jcHU9Y29ydGV4LWE1 NyddXSwNCj4gLQlbJzB4ZDA4JywgWyctbWNwdT1jb3J0ZXgtYTcyJ11dLA0KPiAtCVsnMHhkMDkn LCBbJy1tY3B1PWNvcnRleC1hNzMnXV0sDQo+IC0JWycweGQwYScsIFsnLW1jcHU9Y29ydGV4LWE3 NSddXSwNCj4gLQlbJzB4ZDBiJywgWyctbWNwdT1jb3J0ZXgtYTc2J11dLA0KPiAtCVsnMHhkMGMn LCBbJy1tYXJjaD1hcm12OC4yLWErY3J5cHRvJywgJy1tY3B1PW5lb3ZlcnNlLW4xJ10sDQo+IGZs YWdzX3BhcnRfbnVtYmVyX24xZ2VuZXJpY10NCj4gLV0NCj4gLXBhcnRfbnVtYmVyX2NvbmZpZ19j YXZpdW0gPSBbDQo+IC0JWydnZW5lcmljJywgWyctbWFyY2g9YXJtdjgtYStjcmMrY3J5cHRvJywn LW1jcHU9dGh1bmRlcngnXV0sDQo+IC0JWyduYXRpdmUnLCBbJy1tYXJjaD1uYXRpdmUnXV0sDQo+ IC0JWycweGExJywgWyctbWNwdT10aHVuZGVyeHQ4OCddLCBmbGFnc19wYXJ0X251bWJlcl90aHVu ZGVyeF0sDQo+IC0JWycweGEyJywgWyctbWNwdT10aHVuZGVyeHQ4MSddLCBmbGFnc19wYXJ0X251 bWJlcl90aHVuZGVyeF0sDQo+IC0JWycweGEzJywgWyctbWNwdT10aHVuZGVyeHQ4MyddLCBmbGFn c19wYXJ0X251bWJlcl90aHVuZGVyeF0sDQo+IC0JWycweGFmJywgWyctbWFyY2g9YXJtdjguMS1h K2NyYytjcnlwdG8nLCctbWNwdT10aHVuZGVyeDJ0OTknXSwNCj4gZmxhZ3NfcGFydF9udW1iZXJf dGh1bmRlcngyXSwNCj4gLQlbJzB4YjInLCBbJy1tYXJjaD1hcm12OC4yLWErY3JjK2NyeXB0byts c2UnLCctbWNwdT1vY3Rlb250eDInXSwNCj4gZmxhZ3NfcGFydF9udW1iZXJfb2N0ZW9udHgyXQ0K PiAtXQ0KPiAtcGFydF9udW1iZXJfY29uZmlnX2VtYWcgPSBbDQo+IC0JWydnZW5lcmljJywgWyct bWFyY2g9YXJtdjgtYStjcmMrY3J5cHRvJywgJy1tdHVuZT1lbWFnJ11dLA0KPiAtCVsnbmF0aXZl JywgWyctbWFyY2g9bmF0aXZlJ11dDQo+IC1dDQo+ICtwYXJ0X251bWJlcl9jb25maWdfYXJtID0g ew0KPiArCSdnZW5lcmljJzogeydtYWNoaW5lX2FyZ3MnOiAgWyctbWFyY2g9YXJtdjgtYStjcmMn LCAnLW1vdXRsaW5lLQ0KPiBhdG9taWNzJ119LA0KPiArCSduYXRpdmUnOiB7J21hY2hpbmVfYXJn cyc6ICBbJy1tYXJjaD1uYXRpdmUnXX0sDQo+ICsJJzB4ZDAzJzogeydtYWNoaW5lX2FyZ3MnOiAg WyctbWNwdT1jb3J0ZXgtYTUzJ119LA0KPiArCScweGQwNCc6IHsnbWFjaGluZV9hcmdzJzogIFsn LW1jcHU9Y29ydGV4LWEzNSddfSwNCj4gKwknMHhkMDcnOiB7J21hY2hpbmVfYXJncyc6ICBbJy1t Y3B1PWNvcnRleC1hNTcnXX0sDQo+ICsJJzB4ZDA4JzogeydtYWNoaW5lX2FyZ3MnOiAgWyctbWNw dT1jb3J0ZXgtYTcyJ119LA0KPiArCScweGQwOSc6IHsnbWFjaGluZV9hcmdzJzogIFsnLW1jcHU9 Y29ydGV4LWE3MyddfSwNCj4gKwknMHhkMGEnOiB7J21hY2hpbmVfYXJncyc6ICBbJy1tY3B1PWNv cnRleC1hNzUnXX0sDQo+ICsJJzB4ZDBiJzogeydtYWNoaW5lX2FyZ3MnOiAgWyctbWNwdT1jb3J0 ZXgtYTc2J119LA0KPiArCScweGQwYyc6IHsNCj4gKwkJJ21hY2hpbmVfYXJncyc6ICBbJy1tYXJj aD1hcm12OC4yLWErY3J5cHRvJywgJy0NCj4gbWNwdT1uZW92ZXJzZS1uMSddLA0KPiArCQknZmxh Z3MnOiBbDQo+ICsJCQlbJ1JURV9NQUNISU5FJywgJyJuZW92ZXJzZS1uMSInXSwNCj4gKwkJCVsn UlRFX0FSTV9GRUFUVVJFX0FUT01JQ1MnLCB0cnVlXSwNCj4gKwkJCVsnUlRFX1VTRV9DMTFfTUVN X01PREVMJywgdHJ1ZV0sDQo+ICsJCQlbJ1JURV9FQUxfTlVNQV9BV0FSRV9IVUdFUEFHRVMnLCBm YWxzZV0sDQo+ICsJCQlbJ1JURV9MSUJSVEVfVkhPU1RfTlVNQScsIGZhbHNlXSwNCj4gKwkJCVsn UlRFX01BWF9NRU1fTUInLCAxMDQ4NTc2XSwNCj4gKwkJCVsnUlRFX0NBQ0hFX0xJTkVfU0laRScs IDY0XSwNCj4gKwkJCVsnUlRFX01BWF9MQ09SRScsIDY0XSwNCj4gKwkJCVsnUlRFX01BWF9OVU1B X05PREVTJywgMV0NCj4gKwkJXQ0KPiArCX0NCj4gK30NCj4gDQo+IC0jIyBBcm0gaW1wbGVtZW50 ZXIgSUQgKE1JRFIgaW4gQXJtIEFyY2hpdGVjdHVyZSBSZWZlcmVuY2UgTWFudWFsKSAtDQo+IGlt cGxlbWVudGVyX2dlbmVyaWMgPSBbJ0dlbmVyaWMgYXJtdjgnLCBmbGFnc19pbXBsZW1lbnRlcl9n ZW5lcmljLA0KPiBwYXJ0X251bWJlcl9jb25maWdfYXJtXQ0KPiAtaW1wbGVtZW50ZXJfMHg0MSA9 IFsnQXJtJywgZmxhZ3NfaW1wbGVtZW50ZXJfYXJtLA0KPiBwYXJ0X251bWJlcl9jb25maWdfYXJt XQ0KPiAtaW1wbGVtZW50ZXJfMHg0MyA9IFsnQ2F2aXVtJywgZmxhZ3NfaW1wbGVtZW50ZXJfY2F2 aXVtLA0KPiBwYXJ0X251bWJlcl9jb25maWdfY2F2aXVtXQ0KPiAtaW1wbGVtZW50ZXJfMHg1MCA9 IFsnQW1wZXJlIENvbXB1dGluZycsIGZsYWdzX2ltcGxlbWVudGVyX2VtYWcsDQo+IHBhcnRfbnVt YmVyX2NvbmZpZ19lbWFnXQ0KPiAtaW1wbGVtZW50ZXJfMHg1NiA9IFsnTWFydmVsbCBBUk1BREEn LCBmbGFnc19pbXBsZW1lbnRlcl9hcm1hZGEsDQo+IHBhcnRfbnVtYmVyX2NvbmZpZ19hcm1dIC1p bXBsZW1lbnRlcl9kcGFhID0gWydOWFAgRFBBQScsDQo+IGZsYWdzX2ltcGxlbWVudGVyX2RwYWEs IHBhcnRfbnVtYmVyX2NvbmZpZ19hcm1dDQo+ICsjIyBBcm0gaW1wbGVtZW50ZXJzIChJRCBmcm9t IE1JRFIgaW4gQXJtIEFyY2hpdGVjdHVyZSBSZWZlcmVuY2UgTWFudWFsKQ0KPiArIyMgUGFydCBu dW1iZXJzIGFyZSBzcGVjaWZpYyB0byBBcm0gaW1wbGVtZW50ZXJzICMgaW1wbGVtZW50ZXIgc3Bl Y2lmaWMNCj4gK2FhcmNoNjQgZmxhZ3MgaGF2ZSBtaWRkbGUgcHJpb3JpdHkNCj4gKyMgICAgICh3 aWxsIG92ZXJ3cml0ZSBjb21tb24gZmxhZ3MpDQo+ICsjIHBhcnQgbnVtYmVyIHNwZWNpZmljIGFh cmNoNjQgZmxhZ3MgaGF2ZSB0aGUgaGlnaGVzdCBwcmlvcml0eQ0KPiArIyAgICAgKHdpbGwgb3Zl cndyaXRlIGJvdGggY29tbW9uIGFuZCBpbXBsZW1lbnRlciBzcGVjaWZpYyBmbGFncykNCj4gK2lt cGxlbWVudGVycyA9IHsNCkkgdGhpbmsgdGhpcyBvbmUgaXMgYmlnLiBJdCB3aWxsIGdyb3cgZnVy dGhlciBpbiB0aGUgZnV0dXJlLiBJIGxpa2UgdGhlIGV4aXN0aW5nIG9uZSwgd2hpY2ggaXMgZGlz LWludGVncmF0ZWQgaW50byBzbWFsbGVyIGNodW5rcyBhbmQgaXMgZWFzeSB0byBtYWludGFpbiBp biB0aGUgZnV0dXJlLg0KDQo+ICsJJ2dlbmVyaWMnOiB7DQo+ICsJCSdkZXNjcmlwdGlvbic6ICdH ZW5lcmljIGFybXY4JywNCj4gKwkJJ2ZsYWdzJzogWw0KPiArCQkJWydSVEVfTUFDSElORScsICci YXJtdjhhIiddLA0KPiArCQkJWydSVEVfVVNFX0MxMV9NRU1fTU9ERUwnLCB0cnVlXSwNCj4gKwkJ CVsnUlRFX0NBQ0hFX0xJTkVfU0laRScsIDEyOF0sDQo+ICsJCQlbJ1JURV9NQVhfTENPUkUnLCAy NTZdDQo+ICsJCV0sDQo+ICsJCSdwYXJ0X251bWJlcl9jb25maWcnOiBwYXJ0X251bWJlcl9jb25m aWdfYXJtDQo+ICsJfSwNCj4gKwknMHg0MSc6IHsNCj4gKwkJJ2Rlc2NyaXB0aW9uJzogJ0FybScs DQo+ICsJCSdmbGFncyc6IFsNCj4gKwkJCVsnUlRFX01BQ0hJTkUnLCAnImFybXY4YSInXSwNCj4g KwkJCVsnUlRFX1VTRV9DMTFfTUVNX01PREVMJywgdHJ1ZV0sDQo+ICsJCQlbJ1JURV9DQUNIRV9M SU5FX1NJWkUnLCA2NF0sDQo+ICsJCQlbJ1JURV9NQVhfTENPUkUnLCAxNl0NCj4gKwkJXSwNCj4g KwkJJ3BhcnRfbnVtYmVyX2NvbmZpZyc6IHBhcnRfbnVtYmVyX2NvbmZpZ19hcm0NCj4gKwl9LA0K PiArCScweDQzJzogew0KPiArCQknZGVzY3JpcHRpb24nOiAnQ2F2aXVtJywNCj4gKwkJJ2ZsYWdz JzogWw0KPiArCQkJWydSVEVfTUFYX1ZGSU9fR1JPVVBTJywgMTI4XSwNCj4gKwkJCVsnUlRFX0NB Q0hFX0xJTkVfU0laRScsIDEyOF0sDQo+ICsJCQlbJ1JURV9NQVhfTENPUkUnLCA5Nl0sDQo+ICsJ CQlbJ1JURV9NQVhfTlVNQV9OT0RFUycsIDJdDQo+ICsJCV0sDQo+ICsJCSdwYXJ0X251bWJlcl9j b25maWcnOiB7DQo+ICsJCQknZ2VuZXJpYyc6IHsnbWFjaGluZV9hcmdzJzogWyctbWFyY2g9YXJt djgtDQo+IGErY3JjK2NyeXB0bycsICctbWNwdT10aHVuZGVyeCddfSwNCj4gKwkJCSduYXRpdmUn OiB7J21hY2hpbmVfYXJncyc6IFsnLW1hcmNoPW5hdGl2ZSddfSwNCj4gKwkJCScweGExJzogew0K PiArCQkJCSdtYWNoaW5lX2FyZ3MnOiBbJy1tY3B1PXRodW5kZXJ4dDg4J10sDQo+ICsJCQkJJ2Zs YWdzJzogZmxhZ3NfcGFydF9udW1iZXJfdGh1bmRlcngNCj4gKwkJCX0sDQo+ICsJCQknMHhhMic6 IHsNCj4gKwkJCQknbWFjaGluZV9hcmdzJzogWyctbWNwdT10aHVuZGVyeHQ4MSddLA0KPiArCQkJ CSdmbGFncyc6IGZsYWdzX3BhcnRfbnVtYmVyX3RodW5kZXJ4DQo+ICsJCQl9LA0KPiArCQkJJzB4 YTMnOiB7DQo+ICsJCQkJJ21hY2hpbmVfYXJncyc6IFsnLW1jcHU9dGh1bmRlcnh0ODMnXSwNCj4g KwkJCQknZmxhZ3MnOiBmbGFnc19wYXJ0X251bWJlcl90aHVuZGVyeA0KPiArCQkJfSwNCj4gKwkJ CScweGFmJzogew0KPiArCQkJCSdtYWNoaW5lX2FyZ3MnOiBbJy1tYXJjaD1hcm12OC4xLQ0KPiBh K2NyYytjcnlwdG8nLCctbWNwdT10aHVuZGVyeDJ0OTknXSwNCj4gKwkJCQknZmxhZ3MnOiBbDQo+ ICsJCQkJCVsnUlRFX01BQ0hJTkUnLCAnInRodW5kZXJ4MiInXSwNCj4gKwkJCQkJWydSVEVfQVJN X0ZFQVRVUkVfQVRPTUlDUycsDQo+IHRydWVdLA0KPiArCQkJCQlbJ1JURV9VU0VfQzExX01FTV9N T0RFTCcsIHRydWVdLA0KPiArCQkJCQlbJ1JURV9DQUNIRV9MSU5FX1NJWkUnLCA2NF0sDQo+ICsJ CQkJCVsnUlRFX01BWF9MQ09SRScsIDI1Nl0sDQo+ICsJCQkJCVsnUlRFX01BWF9OVU1BX05PREVT JywgMl0NCj4gKwkJCQldDQo+ICsJCQl9LA0KPiArCQkJJzB4YjInOiB7DQo+ICsJCQkJJ21hY2hp bmVfYXJncyc6IFsnLW1hcmNoPWFybXY4LjItDQo+IGErY3JjK2NyeXB0bytsc2UnLCctbWNwdT1v Y3Rlb250eDInXSwNCj4gKwkJCQknZmxhZ3MnOiBbDQo+ICsJCQkJCVsnUlRFX01BQ0hJTkUnLCAn Im9jdGVvbnR4MiInXSwNCj4gKwkJCQkJWydSVEVfQVJNX0ZFQVRVUkVfQVRPTUlDUycsDQo+IHRy dWVdLA0KPiArCQkJCQlbJ1JURV9VU0VfQzExX01FTV9NT0RFTCcsIHRydWVdLA0KPiArCQkJCQlb J1JURV9FQUxfSUdCX1VJTycsIGZhbHNlXSwNCj4gKwkJCQkJWydSVEVfTUFYX0xDT1JFJywgMzZd LA0KPiArCQkJCQlbJ1JURV9NQVhfTlVNQV9OT0RFUycsIDFdDQo+ICsJCQkJXQ0KPiArCQkJfQ0K PiArCQl9DQo+ICsJfSwNCj4gKwknMHg1MCc6IHsNCj4gKwkJJ2Rlc2NyaXB0aW9uJzogJ0FtcGVy ZSBDb21wdXRpbmcnLA0KPiArCQknZmxhZ3MnOiBbDQo+ICsJCQlbJ1JURV9NQUNISU5FJywgJyJl bWFnIiddLA0KPiArCQkJWydSVEVfQ0FDSEVfTElORV9TSVpFJywgNjRdLA0KPiArCQkJWydSVEVf TUFYX0xDT1JFJywgMzJdLA0KPiArCQkJWydSVEVfTUFYX05VTUFfTk9ERVMnLCAxXQ0KPiArCQld LA0KPiArCQkncGFydF9udW1iZXJfY29uZmlnJzogew0KPiArCQkJJ2dlbmVyaWMnOiB7J21hY2hp bmVfYXJncyc6ICBbJy1tYXJjaD1hcm12OC0NCj4gYStjcmMrY3J5cHRvJywgJy1tdHVuZT1lbWFn J119LA0KPiArCQkJJ25hdGl2ZSc6IHsnbWFjaGluZV9hcmdzJzogIFsnLW1hcmNoPW5hdGl2ZSdd fQ0KPiArCQl9DQo+ICsJfSwNCj4gKwknMHg1Nic6IHsNCj4gKwkJJ2Rlc2NyaXB0aW9uJzogJ01h cnZlbGwgQVJNQURBJywNCj4gKwkJJ2ZsYWdzJzogWw0KPiArCQkJWydSVEVfTUFDSElORScsICci YXJtdjhhIiddLA0KPiArCQkJWydSVEVfQ0FDSEVfTElORV9TSVpFJywgNjRdLA0KPiArCQkJWydS VEVfTUFYX0xDT1JFJywgMTZdLA0KPiArCQkJWydSVEVfTUFYX05VTUFfTk9ERVMnLCAxXQ0KPiAr CQldLA0KPiArCQkncGFydF9udW1iZXJfY29uZmlnJzogcGFydF9udW1iZXJfY29uZmlnX2FybQ0K PiArCX0sDQo+ICsJJ2RwYWEnOiB7DQo+ICsJCSdkZXNjcmlwdGlvbic6ICdOWFAgRFBBQScsDQo+ ICsJCSdmbGFncyc6IFsNCj4gKwkJCVsnUlRFX01BQ0hJTkUnLCAnImRwYWEiJ10sDQo+ICsJCQlb J1JURV9MSUJSVEVfRFBBQTJfVVNFX1BIWVNfSU9WQScsIGZhbHNlXSwNCj4gKwkJCVsnUlRFX1VT RV9DMTFfTUVNX01PREVMJywgdHJ1ZV0sDQo+ICsJCQlbJ1JURV9DQUNIRV9MSU5FX1NJWkUnLCA2 NF0sDQo+ICsJCQlbJ1JURV9NQVhfTENPUkUnLCAxNl0sDQo+ICsJCQlbJ1JURV9NQVhfTlVNQV9O T0RFUycsIDFdDQo+ICsJCV0sDQo+ICsJCSdwYXJ0X251bWJlcl9jb25maWcnOiBwYXJ0X251bWJl cl9jb25maWdfYXJtDQo+ICsJfQ0KPiArfQ0KPiANCj4gIGRwZGtfY29uZi5zZXQoJ1JURV9BUkNI X0FSTScsIDEpDQo+ICBkcGRrX2NvbmYuc2V0KCdSVEVfRk9SQ0VfSU5UUklOU0lDUycsIDEpIEBA IC0xNTIsNyArMTgzLDcgQEAgZWxzZQ0KPiAgCWltcGxlbWVudGVyX2lkID0gJ2dlbmVyaWMnDQo+ ICAJaWYgbWFjaGluZSA9PSAnZ2VuZXJpYycgYW5kIG5vdCBtZXNvbi5pc19jcm9zc19idWlsZCgp DQo+ICAJCSMgZ2VuZXJpYyBidWlsZA0KPiAtCQlpbXBsZW1lbnRlcl9jb25maWcgPSBpbXBsZW1l bnRlcl9nZW5lcmljDQo+ICsJCWltcGxlbWVudGVyX2NvbmZpZyA9IGltcGxlbWVudGVyWydnZW5l cmljJ10NCj4gIAkJcGFydF9udW1iZXIgPSAnZ2VuZXJpYycNCj4gIAllbGlmIG5vdCBtZXNvbi5p c19jcm9zc19idWlsZCgpDQo+ICAJCSMgbmF0aXZlIGJ1aWxkDQo+IEBAIC0xNjcsOSArMTk4LDkg QEAgZWxzZQ0KPiAgCQkJcGFydF9udW1iZXIgPSBjbWRfb3V0cHV0WzNdDQo+ICAJCWVuZGlmDQo+ ICAJCSMgU2V0IHRvIGdlbmVyaWMgaWYgdmFyaWFibGUgaXMgbm90IGZvdW5kDQo+IC0JCWltcGxl bWVudGVyX2NvbmZpZyA9IGdldF92YXJpYWJsZSgnaW1wbGVtZW50ZXJfJyArDQo+IGltcGxlbWVu dGVyX2lkLCBbJ2dlbmVyaWMnXSkNCj4gKwkJaW1wbGVtZW50ZXJfY29uZmlnID0gaW1wbGVtZW50 ZXJzLmdldChpbXBsZW1lbnRlcl9pZCwNCj4gWydnZW5lcmljJ10pDQo+ICAJCWlmIGltcGxlbWVu dGVyX2NvbmZpZ1swXSA9PSAnZ2VuZXJpYycNCj4gLQkJCWltcGxlbWVudGVyX2NvbmZpZyA9IGlt cGxlbWVudGVyX2dlbmVyaWMNCj4gKwkJCWltcGxlbWVudGVyX2NvbmZpZyA9IGltcGxlbWVudGVy WydnZW5lcmljJ10NCj4gIAkJCXBhcnRfbnVtYmVyID0gJ2dlbmVyaWMnDQo+ICAJCWVuZGlmDQo+ ICAJCWlmIGFybV9mb3JjZV9uYXRpdmVfbWFyY2ggPT0gdHJ1ZQ0KPiBAQCAtMTc5LDI4ICsyMTAs MzUgQEAgZWxzZQ0KPiAgCQkjIGNyb3NzIGJ1aWxkDQo+ICAJCWltcGxlbWVudGVyX2lkID0NCj4g bWVzb24uZ2V0X2Nyb3NzX3Byb3BlcnR5KCdpbXBsZW1lbnRlcl9pZCcsICdnZW5lcmljJykNCj4g IAkJcGFydF9udW1iZXIgPSBtZXNvbi5nZXRfY3Jvc3NfcHJvcGVydHkoJ3BhcnRfbnVtYmVyJywN Cj4gJ2dlbmVyaWMnKQ0KPiAtCQlpbXBsZW1lbnRlcl9jb25maWcgPSBnZXRfdmFyaWFibGUoJ2lt cGxlbWVudGVyXycgKw0KPiBpbXBsZW1lbnRlcl9pZCkNCj4gKwkJaW1wbGVtZW50ZXJfY29uZmln ID0gaW1wbGVtZW50ZXJzLmdldChpbXBsZW1lbnRlcl9pZCkNCj4gIAllbmRpZg0KPiANCj4gLQlt ZXNzYWdlKCdBcm0gaW1wbGVtZW50ZXI6ICcgKyBpbXBsZW1lbnRlcl9jb25maWdbMF0pDQo+ICsJ bWVzc2FnZSgnQXJtIGltcGxlbWVudGVyOiAnICsgaW1wbGVtZW50ZXJfY29uZmlnWydkZXNjcmlw dGlvbiddKQ0KPiAgCW1lc3NhZ2UoJ0FybSBwYXJ0IG51bWJlcjogJyArIHBhcnRfbnVtYmVyKQ0K PiANCj4gKwlwYXJ0X251bWJlcl9jb25maWcgPSBpbXBsZW1lbnRlcl9jb25maWdbJ3BhcnRfbnVt YmVyX2NvbmZpZyddDQo+ICsJaWYgcGFydF9udW1iZXJfY29uZmlnLmhhc19rZXkocGFydF9udW1i ZXIpDQo+ICsJCSMgdXNlIHRoZSBzcGVjaWZpZWQgcGFydF9udW1iZXIgbWFjaGluZSBhcmdzIGlm IGZvdW5kDQo+ICsJCXBhcnRfbnVtYmVyX2NvbmZpZyA9IHBhcnRfbnVtYmVyX2NvbmZpZ1twYXJ0 X251bWJlcl0NCj4gKwllbGlmIG5vdCBtZXNvbi5pc19jcm9zc19idWlsZCgpDQo+ICsJCSMgZGVm YXVsdCB0byBnZW5lcmljIG1hY2hpbmUgYXJncyBpZiBwYXJ0X251bWJlciBpcyBub3QgZm91bmQN Cj4gKwkJIyBhbmQgbm90IGZvcmNpbmcgbmF0aXZlIG1hY2hpbmUgYXJncw0KPiArCQkjIGJ1dCBk b24ndCBkZWZhdWx0IGluIGNyb3NzLWJ1aWxkczsgaWYgcGFydF9udW1iZXIgaXMgc3BlY2lmaWVk DQo+ICsJCSMgaW5jb3JyZWN0bHkgaW4gYSBjcm9zcy1maWxlLCBpdCBuZWVkcyB0byBiZSBmaXhl ZCB0aGVyZQ0KPiArCQlwYXJ0X251bWJlcl9jb25maWcgPSBwYXJ0X251bWJlcl9jb25maWdbJ2dl bmVyaWMnXQ0KPiArCWVsc2UNCj4gKwkJIyBkb2luZyBjcm9zcyBidWlsZCBhbmQgcGFydCBudW1i ZXIgaXMgbm90IGluDQo+IHBhcnRfbnVtYmVyX2NvbmZpZw0KPiArCQllcnJvcignQ3Jvc3MgYnVp bGQgcGFydCBudW1iZXIgMEAwIG5vdA0KPiBmb3VuZC4nLmZvcm1hdChwYXJ0X251bWJlcikpDQo+ ICsJZW5kaWYNCj4gKw0KPiAgCSMgdXNlIGRlZmF1bHQgZmxhZ3Mgd2l0aCBpbXBsZW1lbnRlciBm bGFncw0KPiAtCWRwZGtfZmxhZ3MgPSBmbGFnc19jb21tb25fZGVmYXVsdCArIGltcGxlbWVudGVy X2NvbmZpZ1sxXQ0KPiArCWRwZGtfZmxhZ3MgPSBmbGFnc19jb21tb25fZGVmYXVsdCArIGltcGxl bWVudGVyX2NvbmZpZ1snZmxhZ3MnXSArDQo+ICtwYXJ0X251bWJlcl9jb25maWcuZ2V0KCdmbGFn cycsIFtdKQ0KPiANCj4gKwkjIGFwcGx5IHN1cHBvcnRlZCBtYWNoaW5lIGFyZ3MNCj4gIAltYWNo aW5lX2FyZ3MgPSBbXSAjIENsZWFyIHByZXZpb3VzIG1hY2hpbmUgYXJncw0KPiAtCWZvcmVhY2gg bWFyZzogaW1wbGVtZW50ZXJfY29uZmlnWzJdDQo+IC0JCWlmIG1hcmdbMF0gPT0gcGFydF9udW1i ZXINCj4gLQkJCSMgYXBwbHkgc3VwcG9ydGVkIG1hY2hpbmUgYXJncw0KPiAtCQkJZm9yZWFjaCBm bGFnOiBtYXJnWzFdDQo+IC0JCQkJaWYgY2MuaGFzX2FyZ3VtZW50KGZsYWcpDQo+IC0JCQkJCW1h Y2hpbmVfYXJncyArPSBmbGFnDQo+IC0JCQkJZW5kaWYNCj4gLQkJCWVuZGZvcmVhY2gNCj4gLQkJ CWlmIG1hcmcubGVuZ3RoKCkgPiAyDQo+IC0JCQkJIyBhZGQgZXh0cmEgZmxhZ3MgZm9yIHRoZSBw YXJ0DQo+IC0JCQkJZHBka19mbGFncyArPSBtYXJnWzJdDQo+IC0JCQllbmRpZg0KPiArCWZvcmVh Y2ggZmxhZzogcGFydF9udW1iZXJfY29uZmlnWydtYWNoaW5lX2FyZ3MnXQ0KPiArCQlpZiBjYy5o YXNfYXJndW1lbnQoZmxhZykNCj4gKwkJCW1hY2hpbmVfYXJncyArPSBmbGFnDQo+ICAJCWVuZGlm DQo+ICAJZW5kZm9yZWFjaA0KPiANCj4gLS0NCj4gMi4yMC4xDQoNCg==