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 1DDA7A04E6; Wed, 18 Nov 2020 07:43:45 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id C7E7158C4; Wed, 18 Nov 2020 07:43:43 +0100 (CET) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by dpdk.org (Postfix) with ESMTP id 6DF9D4C90 for ; Wed, 18 Nov 2020 07:43:40 +0100 (CET) IronPort-SDR: sovW6FL92JsKzYxBrlAdTEClwxZcEhPoX9+BJy/0YmhEmVaBINc4gKXRhIUsMGBmMePOSKrnj9 Z9lXgyFEe6zg== X-IronPort-AV: E=McAfee;i="6000,8403,9808"; a="150919751" X-IronPort-AV: E=Sophos;i="5.77,486,1596524400"; d="scan'208";a="150919751" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Nov 2020 22:43:39 -0800 IronPort-SDR: 1zwT04TC1H1k40MhpgcMNI4Kxw2f0zLcrbBTVktLa8M11ay8HWtbtAb6Nf7zEVq7aRzyh8yOeu DB2jBKKGv6Hg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,486,1596524400"; d="scan'208";a="362766383" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by fmsmga002.fm.intel.com with ESMTP; 17 Nov 2020 22:43:38 -0800 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Tue, 17 Nov 2020 22:43:37 -0800 Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Tue, 17 Nov 2020 22:43:36 -0800 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx612.amr.corp.intel.com (10.18.126.92) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5 via Frontend Transport; Tue, 17 Nov 2020 22:43:36 -0800 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.173) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.1713.5; Tue, 17 Nov 2020 22:43:36 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nbE9qodjYwpSWMk3d3yX5BgjVpfN/j3DZf1dIQM+K671zeBOCzyGgwO+ggBkYZ3dg68MJiIGIaWbtcHZcCgnwvmykZ+27oFNK44sdpb7Kl9ltLfCwuyGg5JcRIUVK0GSGCUn+/HXN7d2LslWNYGWsVTxqCa1c/0q7KlxC90H4ROFO009uovQHZ1T+xkCghVpLQ/KnlunOoTbLk3ehK5/4xNpJaeQbAVoDFlAMNEOg12yRB5zLNJdhkKC0OIPflHJyUZwsL6J7QYiv5ju9E7Vaedb1tyiiLMVuwBkjApNa2NgSdOUzcXj/ns1Hrjqz5/+iRH4/pj74mKgZ6K2wS2dnw== 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=hxG+0W6ZdenvDL9qfMPiYlHkz7+8FC2lFmvdg4+a2h0=; b=bWFH9Mj2S+frDYFfgMxjzquEvozQN7J2fschNLjWSzmmQTlINWTHHW/vkgAf/XqmFQF41idRmYfxifpTbNVA/KKTlJAncAXMFF5VhBvDmVNYLO2toOrLNdaYxO6YYnR73KlQRDZeifTuJjzQReWcWhlFde9avbHPJGw6bZkmJNcDjKJGgRKJ3sQ0u/tpTMxvapEaYnsIBKU8Cq+8WYXmodZgH8k/ueqDbZRzKoIc4J0LTcztMSLVd+XLjMiFT4SJD9QqEXRrpHrLMyWf5R7swt8H0RHzyc+VpGAJ/DVVeh32E3qxYePHCIY2wTfh1+NZA174f8kS1EE/D8HlPW+/jA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=hxG+0W6ZdenvDL9qfMPiYlHkz7+8FC2lFmvdg4+a2h0=; b=n1Wpf/xHNBfNV3IfqXNK0sBlChzAPUyQtxE1gFUPdtwLLwInPe9CViUFTC000CsAie2JDy/DL1bJQhTdY21kj962B/eNwlU1+bJ1AF3M2uN0retP7tkdH7zGw1EbNEnru9yEyvcRrG4fU8d/jU54PGkMJL4nj1zIJuxynEkIO4o= Received: from DM6PR11MB3628.namprd11.prod.outlook.com (2603:10b6:5:144::25) by DM6PR11MB2764.namprd11.prod.outlook.com (2603:10b6:5:bf::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3564.28; Wed, 18 Nov 2020 06:43:34 +0000 Received: from DM6PR11MB3628.namprd11.prod.outlook.com ([fe80::547:749f:1cb7:11b7]) by DM6PR11MB3628.namprd11.prod.outlook.com ([fe80::547:749f:1cb7:11b7%4]) with mapi id 15.20.3589.020; Wed, 18 Nov 2020 06:43:34 +0000 From: "Chen, Zhaoyan" To: "Mo, YufengX" , "dts@dpdk.org" , "Xu, HailinX" Thread-Topic: [dts] [PATCH V6 1/3] flexible_rxd: unify common test content Thread-Index: AQHWtyo0oS4q1JPuBEGFGFaEKhsfEKnOBAyA Date: Wed, 18 Nov 2020 06:43:34 +0000 Message-ID: References: <20201110061858.5525-1-yufengx.mo@intel.com> <20201110061858.5525-2-yufengx.mo@intel.com> In-Reply-To: <20201110061858.5525-2-yufengx.mo@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Microsoft-MacOutlook/16.37.20051002 authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.198.147.196] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: bb9e1ced-9273-44db-c25b-08d88b8d4563 x-ms-traffictypediagnostic: DM6PR11MB2764: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:1060; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: bFYKde6Y3GrL4PD5JempHMUoaSARuMVO3c0SmOCCLG4r5cEFctYyfFoQa/wgiruNIocYDI2GSTCkvtqHwQFbeyF8UXNl81ulqFG1XmAEBpaS5MvSF7BNDr6YgaVvklbhBy73xpI6mdbVG6CNsgaWCEjUvsa+XcMa1xZAXUruywk128OuL+QS8KJ1sJ785VQoGxzHDqRJt+gxbFWx7GRobHELc8sRt675n2DkRdfHebDqPGX+UkM12FSC8OFTYUt/j0I64unpD9uLVtpleZRkmBJQka44/46BsmyI+Xcgv9uhOp0Rm7MJou1bKuGF3RTDJSch+J9Q+fFSCoNWc0B+PQ== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM6PR11MB3628.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(136003)(39860400002)(396003)(376002)(366004)(346002)(66476007)(66556008)(66446008)(64756008)(76116006)(478600001)(6506007)(83380400001)(6486002)(6636002)(66946007)(8936002)(110136005)(86362001)(8676002)(2906002)(91956017)(33656002)(36756003)(316002)(2616005)(71200400001)(186003)(30864003)(6512007)(26005)(5660300002)(579004)(559001); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata: 1B8SskmQk9Z69FvMmHekyCIJlOK05ditN3gq7yEvWXx+bS8NRdf9F9ecwoUuznJ2qzXrj3AzTah94p+qr+ASK8e6cQb8rVe2KdvDlRRe0wgAVfqvisdlYEKWUtumsapdj8ktUnzT5rjabxjp3YMRm4wSdEwE4DG7GaSANW6b5EjACOsZp9StS6bR0m/YAgCczeISmZ6H3nWfuZu8XXKW1jjM+mg0gb/WldJcFn/Ksglo1reW+uameoz0BH6XyidIA96JS30oDxxfR6+gBMfTFwUKwboms5yvKMaSSdkFnQtXmYwxop+829PGIB/i+3N24Rt4AERbBpn/e5GeRvciG0p4bRVFhKVKKVYFoL3Pbam0MIEQyEy6YpHVL68gjbzRoqf0rgOl6ib7KeLVK96FjOkbOkKdrR99xjBiz6r80H13vCNnxn4gUJd78ocuNcMv1KgEDVazmm98UETtu9pg1I29lxnU/URi0rISCifk5SmrinObqkQS6a3L1ZmX8QqRHFV6zYcNIylfyYJjfto0FrQ0S4cIMwQ3oiVp4CCGQ1pm8BcPcPHazl+2OF9+XYjOZweKx+liophpTwL6OI4QzqPBXVTCYyQB8C8K1jwY5Kfnr+7agGx3ulWrJdKdTFXWX6poTJ4xNPb90Mw2oLg8diLVBRJkuStwq7tW519Csz7MCuvHdCCvXDVzNIln3Hr/G7wG+TZPKqFD8QfLqQIEvqDRAdnkUO4Qis0cHzgQQgZJF7yRZWujAJHJNmHtlobEMgxNclXc4iXcI1QEcw6ke9lR+RAr7FjNk/t+DUo/GmzchhnrxS5sGOVByWtM71WLnvtDWrIY4SSxoofHb+bgr1tU7VnszNd6ej8m6jO6OWU/MQTDm5wXPijaM+3zX/NGXLQXVTevQ9xFKOHppN3s0w== Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM6PR11MB3628.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: bb9e1ced-9273-44db-c25b-08d88b8d4563 X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Nov 2020 06:43:34.2931 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: EBPU7BCJ3sZtp1zW2XlcCuRWPvdglZXt3fOmDhiuRwQ20OkS81KG76p9Fr3okxC0NX5Pl1HTC7FJzqfXLznWPg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR11MB2764 X-OriginatorOrg: intel.com Subject: Re: [dts] [PATCH V6 1/3] flexible_rxd: unify common test content X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: test suite reviews and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dts-bounces@dpdk.org Sender: "dts" QWNrZWQtYnk6IHpoYW95YW4uY2hlbkBpbnRlbC5jb20NCg0KDQrvu79PbiAyMDIwLzExLzEwLCAy OjI0IFBNLCAiZHRzIG9uIGJlaGFsZiBvZiB5dWZlbmdteCIgPGR0cy1ib3VuY2VzQGRwZGsub3Jn IG9uIGJlaGFsZiBvZiB5dWZlbmd4Lm1vQGludGVsLmNvbT4gd3JvdGU6DQoNCg0KICAgIHVuaWZ5 IGNvbW1vbiB0ZXN0IGNvbnRlbnQuDQoNCiAgICBTaWduZWQtb2ZmLWJ5OiB5dWZlbmdteCA8eXVm ZW5neC5tb0BpbnRlbC5jb20+DQogICAgLS0tDQogICAgIHRlc3RzL2ZsZXhpYmxlX2NvbW1vbi5w eSB8IDQ4MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysNCiAgICAgMSBm aWxlIGNoYW5nZWQsIDQ4MyBpbnNlcnRpb25zKCspDQogICAgIGNyZWF0ZSBtb2RlIDEwMDY0NCB0 ZXN0cy9mbGV4aWJsZV9jb21tb24ucHkNCg0KICAgIGRpZmYgLS1naXQgYS90ZXN0cy9mbGV4aWJs ZV9jb21tb24ucHkgYi90ZXN0cy9mbGV4aWJsZV9jb21tb24ucHkNCiAgICBuZXcgZmlsZSBtb2Rl IDEwMDY0NA0KICAgIGluZGV4IDAwMDAwMDAuLmZhM2M2NGQNCiAgICAtLS0gL2Rldi9udWxsDQog ICAgKysrIGIvdGVzdHMvZmxleGlibGVfY29tbW9uLnB5DQogICAgQEAgLTAsMCArMSw0ODMgQEAN CiAgICArIyBCU0QgTElDRU5TRQ0KICAgICsjDQogICAgKyMgQ29weXJpZ2h0KGMpIDIwMjAgSW50 ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuDQogICAgKyMgQWxsIHJpZ2h0cyBy ZXNlcnZlZC4NCiAgICArIw0KICAgICsjIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dA0KICAgICsjIG1vZGlmaWNhdGlvbiwg YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucw0KICAg ICsjIGFyZSBtZXQ6DQogICAgKyMNCiAgICArIyAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQNCiAgICArIyAgICAgbm90aWNl LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLg0K ICAgICsjICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug dGhlIGFib3ZlIGNvcHlyaWdodA0KICAgICsjICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4NCiAgICArIyAgICAgdGhlIGRv Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQ0KICAg ICsjICAgICBkaXN0cmlidXRpb24uDQogICAgKyMgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50 ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMNCiAgICArIyAgICAgY29udHJpYnV0 b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkDQog ICAgKyMgICAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0 ZW4gcGVybWlzc2lvbi4NCiAgICArIw0KICAgICsjIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg QlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMNCiAgICArIyAiQVMgSVMi IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P VA0KICAgICsjIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB QklMSVRZIEFORCBGSVRORVNTIEZPUg0KICAgICsjIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBE SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUDQogICAgKyMgT1dORVIg T1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE RU5UQUwsDQogICAgKyMgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFH RVMgKElOQ0xVRElORywgQlVUIE5PVA0KICAgICsjIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLA0KICAgICsjIERBVEEs IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E IE9OIEFOWQ0KICAgICsjIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQNCiAgICArIyAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UNCiAgICArIyBP RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV Q0ggREFNQUdFLg0KICAgICsNCiAgICAraW1wb3J0IHRpbWUNCiAgICArZnJvbSBwYWNrZXQgaW1w b3J0IFBhY2tldA0KICAgICtmcm9tIHBtZF9vdXRwdXQgaW1wb3J0IFBtZE91dHB1dA0KICAgICsN CiAgICArDQogICAgK2NsYXNzIEZsZXhpYmxlUnhkQmFzZShvYmplY3QpOg0KICAgICsNCiAgICAr ICAgIGRlZiBpbml0X2Jhc2Uoc2VsZiwgcGNpLCBkc3RfbWFjLCB0ZXN0X3R5cGUsIGR1dF9pbmRl eD0wKToNCiAgICArICAgICAgICB0ZXN0ZXJfcG9ydF9pZCA9IHNlbGYudGVzdGVyLmdldF9sb2Nh bF9wb3J0KHNlbGYuZHV0X3BvcnRzW2R1dF9pbmRleF0pDQogICAgKyAgICAgICAgc2VsZi5fX3Rl c3Rlcl9pbnRmID0gc2VsZi50ZXN0ZXIuZ2V0X2ludGVyZmFjZSh0ZXN0ZXJfcG9ydF9pZCkNCiAg ICArICAgICAgICBzZWxmLl9fc3JjX21hYyA9IHNlbGYudGVzdGVyLmdldF9tYWModGVzdGVyX3Bv cnRfaWQpDQogICAgKyAgICAgICAgc2VsZi5fX2RzdF9tYWMgPSBkc3RfbWFjDQogICAgKw0KICAg ICsgICAgICAgIHNlbGYuX19hcHBfcGF0aCA9IHNlbGYuZHV0LmFwcHNfbmFtZVsidGVzdC1wbWQi XQ0KICAgICsgICAgICAgIHNlbGYuX19wbWRvdXQgPSBQbWRPdXRwdXQoc2VsZi5kdXQpDQogICAg KyAgICAgICAgc2VsZi5fX3Rlc3RfdHlwZSA9IHRlc3RfdHlwZQ0KICAgICsgICAgICAgIHNlbGYu X19wY2kgPSBwY2kNCiAgICArICAgICAgICBzZWxmLl9fcGtnX2NvdW50ID0gMQ0KICAgICsgICAg ICAgIHNlbGYuX19pc19wbWRfb24gPSBGYWxzZQ0KICAgICsNCiAgICArICAgIEBwcm9wZXJ0eQ0K ICAgICsgICAgZGVmIF9faXNfaWF2ZihzZWxmKToNCiAgICArICAgICAgICByZXR1cm4gc2VsZi5f X3Rlc3RfdHlwZSA9PSAnaWF2ZicNCiAgICArDQogICAgKyAgICBAcHJvcGVydHkNCiAgICArICAg IGRlZiBfX2lzX3BmKHNlbGYpOg0KICAgICsgICAgICAgIHJldHVybiBzZWxmLl9fdGVzdF90eXBl ID09ICdwZicNCiAgICArDQogICAgKyAgICBkZWYgX19nZXRfcG9ydF9vcHRpb24oc2VsZiwgZmxl eF9vcHQ9JycsIHF1ZXVlX251bT1Ob25lKToNCiAgICArICAgICAgICBuYl9jb3JlID0gMg0KICAg ICsgICAgICAgIG51bSA9IDQgaWYgc2VsZi5uaWMgPT0gJ2ZveHZpbGxlJyBvciBzZWxmLl9faXNf aWF2ZiBlbHNlIDMyDQogICAgKyAgICAgICAgcXVldWVfbnVtID0gcXVldWVfbnVtIGlmIHF1ZXVl X251bSBlbHNlIG51bQ0KICAgICsgICAgICAgICMgcG9ydCBvcHRpb24NCiAgICArICAgICAgICBw b3J0X29wdGlvbiA9ICgNCiAgICArICAgICAgICAgICAgJ3txdWV1ZX0gJw0KICAgICsgICAgICAg ICAgICAnLS1wb3J0bWFzaz0weDEgJw0KICAgICsgICAgICAgICAgICAnLS1uYi1jb3Jlcz17bmJf Y29yZX0nKS5mb3JtYXQoKip7DQogICAgKyAgICAgICAgICAgICAgICAncXVldWUnOiAnLS1yeHE9 ezB9IC0tdHhxPXswfSAnLmZvcm1hdChxdWV1ZV9udW0pDQogICAgKyAgICAgICAgICAgICAgICBp ZiBmbGV4X29wdCAhPSAnaXBfb2Zmc2V0JyBlbHNlICcnLA0KICAgICsgICAgICAgICAgICAgICAg J25iX2NvcmUnOiBuYl9jb3JlLA0KICAgICsgICAgICAgICAgICB9KQ0KICAgICsgICAgICAgIHJl dHVybiBwb3J0X29wdGlvbg0KICAgICsNCiAgICArICAgIGRlZiBfX2NoZWNrX3J4ZGlkKHNlbGYs IHJ4ZGlkLCBvdXQpOg0KICAgICsgICAgICAgIHJ4ZGlkID0gcnhkaWQgaWYgaXNpbnN0YW5jZShy eGRpZCwgbGlzdCkgZWxzZSBbcnhkaWRdDQogICAgKyAgICAgICAgcGF0ID0gIlJYRElEXFsoXGQr KVxdIg0KICAgICsgICAgICAgIGZvciByeCBpbiByeGRpZDoNCiAgICArICAgICAgICAgICAgaWYg c2VsZi5fX2lzX3BmOg0KICAgICsgICAgICAgICAgICAgICAgdmFsdWUgPSByZS5maW5kYWxsKHBh dCwgcngpDQogICAgKyAgICAgICAgICAgICAgICBpZiBub3QgdmFsdWU6DQogICAgKyAgICAgICAg ICAgICAgICAgICAgY29udGludWUNCiAgICArICAgICAgICAgICAgICAgIGNoZWNrX3N0ciA9ICJS WERJRCA6IHt9Ii5mb3JtYXQodmFsdWVbMF0pDQogICAgKyAgICAgICAgICAgICAgICBzZWxmLnZl cmlmeSgNCiAgICArICAgICAgICAgICAgICAgICAgICBjaGVja19zdHIgaW4gb3V0LA0KICAgICsg ICAgICAgICAgICAgICAgICAgICJyeGRpZCB2YWx1ZSBlcnJvciwgZXhwZWN0ZWQgcnhkaWQgaXMg JXMiICUgY2hlY2tfc3RyKQ0KICAgICsgICAgICAgICAgICBlbHNlOg0KICAgICsgICAgICAgICAg ICAgICAgc2VsZi52ZXJpZnkoDQogICAgKyAgICAgICAgICAgICAgICAgICAgcnggaW4gb3V0LA0K ICAgICsgICAgICAgICAgICAgICAgICAgICJyeGRpZCB2YWx1ZSBlcnJvciwgZXhwZWN0ZWQgcnhk aWQgaXMgJXMiICUgcngpDQogICAgKw0KICAgICsgICAgZGVmIHN0YXJ0X3Rlc3RwbWQoc2VsZiwg ZmxleF9vcHQsIHJ4ZGlkLCBxdWV1ZV9udW09Tm9uZSk6DQogICAgKyAgICAgICAgIiIiDQogICAg KyAgICAgICAgc3RhcnQgdGVzdHBtZA0KICAgICsgICAgICAgICIiIg0KICAgICsgICAgICAgIHBh cmFtX3R5cGUgPSAncHJvdG9feHRyJw0KICAgICsgICAgICAgICMgcG9ydCBvcHRpb24NCiAgICAr ICAgICAgICBwb3J0X29wdGlvbiA9IHNlbGYuX19nZXRfcG9ydF9vcHRpb24oZmxleF9vcHQsIHF1 ZXVlX251bT1xdWV1ZV9udW0pDQogICAgKyAgICAgICAgIyBzdGFydCB0ZXN0IHBtZA0KICAgICsg ICAgICAgIG91dCA9IHNlbGYuX19wbWRvdXQuc3RhcnRfdGVzdHBtZCgNCiAgICArICAgICAgICAg ICAgIjFTLzNDLzFUIiwNCiAgICArICAgICAgICAgICAgcGFyYW09cG9ydF9vcHRpb24sDQogICAg KyAgICAgICAgICAgIGVhbF9wYXJhbT0nJyBpZiBzZWxmLl9faXNfaWF2ZiBlbHNlICctLWxvZy1s ZXZlbD0iaWNlLDgiJywNCiAgICArICAgICAgICAgICAgcG9ydHM9W3NlbGYuX19wY2ldLA0KICAg ICsgICAgICAgICAgICBwb3J0X29wdGlvbnM9e3NlbGYuX19wY2k6ICclcz0lcycgJSAocGFyYW1f dHlwZSwgZmxleF9vcHQpfSkNCiAgICArICAgICAgICBzZWxmLl9faXNfcG1kX29uID0gVHJ1ZQ0K ICAgICsgICAgICAgICMgY2hlY2sgcnhkaWQgdmFsdWUgY29ycmVjdA0KICAgICsgICAgICAgIHNl bGYuX19jaGVja19yeGRpZChyeGRpZCwgb3V0KQ0KICAgICsgICAgICAgICMgc2V0IHRlc3QgcG1k IGNvbW1hbmQNCiAgICArICAgICAgICBpZiBmbGV4X29wdCA9PSAnaXBfb2Zmc2V0JzoNCiAgICAr ICAgICAgICAgICAgY21kcyA9IFsNCiAgICArICAgICAgICAgICAgICAgICdzZXQgdmVyYm9zZSAx JywNCiAgICArICAgICAgICAgICAgICAgICdzdGFydCcsDQogICAgKyAgICAgICAgICAgIF0NCiAg ICArICAgICAgICBlbHNlOg0KICAgICsgICAgICAgICAgICBjbWRzID0gWw0KICAgICsgICAgICAg ICAgICAgICAgInNldCB2ZXJib3NlIDEiLA0KICAgICsgICAgICAgICAgICAgICAgInNldCBmd2Qg aW8iLA0KICAgICsgICAgICAgICAgICAgICAgInNldCBwcm9taXNjIGFsbCBvZmYiLA0KICAgICsg ICAgICAgICAgICAgICAgImNsZWFyIHBvcnQgc3RhdHMgYWxsIiwNCiAgICArICAgICAgICAgICAg ICAgICJzdGFydCIsIF0NCiAgICArICAgICAgICBbc2VsZi5kdXQuc2VuZF9leHBlY3QoY21kLCAi dGVzdHBtZD4gIiwgMTUpIGZvciBjbWQgaW4gY21kc10NCiAgICArDQogICAgKyAgICBkZWYgY2xv c2VfdGVzdHBtZChzZWxmKToNCiAgICArICAgICAgICBpZiBub3Qgc2VsZi5fX2lzX3BtZF9vbjoN CiAgICArICAgICAgICAgICAgcmV0dXJuDQogICAgKyAgICAgICAgdHJ5Og0KICAgICsgICAgICAg ICAgICBzZWxmLl9fcG1kb3V0LnF1aXQoKQ0KICAgICsgICAgICAgICAgICBzZWxmLl9faXNfcG1k X29uID0gRmFsc2UNCiAgICArICAgICAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6DQogICAgKyAg ICAgICAgICAgIHBhc3MNCiAgICArDQogICAgKyAgICBkZWYgX19zZW5kX3BrdHNfYW5kX2dldF9v dXRwdXQoc2VsZiwgcGt0X3N0cik6DQogICAgKyAgICAgICAgcGt0ID0gUGFja2V0KHBrdF9zdHIp DQogICAgKyAgICAgICAgcGt0LnNlbmRfcGt0KA0KICAgICsgICAgICAgICAgICBzZWxmLnRlc3Rl ciwNCiAgICArICAgICAgICAgICAgdHhfcG9ydD1zZWxmLl9fdGVzdGVyX2ludGYsDQogICAgKyAg ICAgICAgICAgIGNvdW50PXNlbGYuX19wa2dfY291bnQsDQogICAgKyAgICAgICAgICAgIHRpbWVv dXQ9MzApDQogICAgKyAgICAgICAgdGltZS5zbGVlcCgwLjUpDQogICAgKyAgICAgICAgb3V0cHV0 ID0gc2VsZi5kdXQuZ2V0X3Nlc3Npb25fb3V0cHV0KHRpbWVvdXQ9MykNCiAgICArICAgICAgICBy ZXR1cm4gb3V0cHV0DQogICAgKw0KICAgICsgICAgZGVmIF9fdmVyaWZ5X2NvbW1vbihzZWxmLCBw a3RzX2xpc3QsIG1zZz1Ob25lKToNCiAgICArICAgICAgICAiIiINCiAgICArICAgICAgICBzZW5k IE1QTFMgdHlwZSBwYWNrZXQsIHZlcmlmeSBwYWNrZXQgaXBfb2Zmc2V0IHZhbHVlIGNvcnJlY3QN CiAgICArICAgICAgICBwYXJhbSBwa3RzX2xpc3Q6DQogICAgKyAgICAgICAgICAgIFtzZW5kIHBh Y2tldHMgbGlzdCwgaXBfb2Zmc2V0IGV4cGVjdGVkIHZhbHVlXQ0KICAgICsgICAgICAgICIiIg0K ICAgICsgICAgICAgIG1zZyA9IG1zZyBpZiBtc2cgZWxzZSAiaXBfb2Zmc2V0IHZhbHVlIGVycm9y LCBjYXNlIHRlc3QgZmFpbGVkIg0KICAgICsgICAgICAgIGZvciBwa3Rfc3RyLCBleHBlY3RlZF9z dHJzIGluIHBrdHNfbGlzdDoNCiAgICArICAgICAgICAgICAgb3V0ID0gc2VsZi5fX3NlbmRfcGt0 c19hbmRfZ2V0X291dHB1dCgNCiAgICArICAgICAgICAgICAgICAgIHBrdF9zdHIuZm9ybWF0KCoq ew0KICAgICsgICAgICAgICAgICAgICAgICAgICdzcmNfbWFjJzogc2VsZi5fX3NyY19tYWMsDQog ICAgKyAgICAgICAgICAgICAgICAgICAgJ2RzdF9tYWMnOiBzZWxmLl9fZHN0X21hY30pKQ0KICAg ICsgICAgICAgICAgICAjIHZhbGlkYXRpb24gcmVzdWx0cw0KICAgICsgICAgICAgICAgICBfZXhw ZWN0ZWRfc3RycyA9IFtleHBlY3RlZF9zdHJzXSBcDQogICAgKyAgICAgICAgICAgICAgICBpZiBp c2luc3RhbmNlKGV4cGVjdGVkX3N0cnMsIHN0cikgZWxzZSBcDQogICAgKyAgICAgICAgICAgICAg ICBleHBlY3RlZF9zdHJzDQogICAgKyAgICAgICAgICAgIHNlbGYudmVyaWZ5KGFsbChbZSBpbiBv dXQgZm9yIGUgaW4gX2V4cGVjdGVkX3N0cnNdKSwgbXNnKQ0KICAgICsNCiAgICArICAgIGRlZiBj aGVja19zaW5nbGVfVkxBTl9maWVsZHNfaW5fUlhEXzgwMjFRKHNlbGYpOg0KICAgICsgICAgICAg ICIiIg0KICAgICsgICAgICAgIENoZWNrIHNpbmdsZSBWTEFOIGZpZWxkcyBpbiBSWEQgKDgwMi4x USkNCiAgICArICAgICAgICAiIiINCiAgICArICAgICAgICBzZWxmLnN0YXJ0X3Rlc3RwbWQoInZs YW4iLCAiUlhESURbMTddIikNCiAgICArICAgICAgICBwa3RzX3N0ciA9ICdFdGhlcihzcmM9Intz cmNfbWFjfSIsIGRzdD0ie2RzdF9tYWN9IiwgdHlwZT0weDgxMDApL0RvdDFRKHByaW89MSx2bGFu PTIzKS9JUCgpL1VEUCgpL0ROUygpJw0KICAgICsgICAgICAgIG1zZyA9ICJUaGUgcGFja2V0IGRv ZXMgbm90IGNhcnJ5IGEgVkxBTiB0YWcuIg0KICAgICsgICAgICAgIGZpZWxkc19saXN0ID0gWyJ2 bGFuIl0NCiAgICArICAgICAgICBzZWxmLl9fdmVyaWZ5X2NvbW1vbihbW3BrdHNfc3RyLCBmaWVs ZHNfbGlzdF1dLCBtc2cpDQogICAgKw0KICAgICsgICAgZGVmIGNoZWNrX3NpbmdsZV9WTEFOX2Zp ZWxkc19pbl9SWERfODAyMWFkKHNlbGYpOg0KICAgICsgICAgICAgICIiIg0KICAgICsgICAgICAg IENoZWNrIHNpbmdsZSBWTEFOIGZpZWxkcyBpbiBSWEQgKDgwMi4xYWQpDQogICAgKyAgICAgICAg IiIiDQogICAgKyAgICAgICAgc2VsZi5zdGFydF90ZXN0cG1kKCJ2bGFuIiwgIlJYRElEWzE3XSIp DQogICAgKyAgICAgICAgcGt0c19zdHIgPSAnRXRoZXIoc3JjPSJ7c3JjX21hY30iLCBkc3Q9Intk c3RfbWFjfSIsIHR5cGU9MHg4OEE4KS9Eb3QxUShwcmlvPTEsdmxhbj0yMykvSVAoKS9VRFAoKS9E TlMoKScNCiAgICArICAgICAgICBtc2cgPSAic3RhZyByZXN1bHQgaXMgbm90IGV4cGVjdGVkIChz dGFnPTE6MDoyMykiDQogICAgKyAgICAgICAgZmllbGRzX2xpc3QgPSBbInN0YWc9MTowOjIzIl0N CiAgICArICAgICAgICBzZWxmLl9fdmVyaWZ5X2NvbW1vbihbW3BrdHNfc3RyLCBmaWVsZHNfbGlz dF1dLCBtc2cpDQogICAgKw0KICAgICsgICAgZGVmIGNoZWNrX2RvdWJsZV9WTEFOX2ZpZWxkc19p bl9SWERfODAyMVFfMV9WTEFOX3RhZyhzZWxmKToNCiAgICArICAgICAgICAiIiINCiAgICArICAg ICAgICBDaGVjayBkb3VibGUgVkxBTiBmaWVsZHMgaW4gUlhEICg4MDIuMVEpIG9ubHkgMSBWTEFO IHRhZw0KICAgICsgICAgICAgICIiIg0KICAgICsgICAgICAgIHNlbGYuc3RhcnRfdGVzdHBtZCgi dmxhbiIsICJSWERJRFsxN10iKQ0KICAgICsgICAgICAgIHBrdHNfc3RyID0gJ0V0aGVyKHNyYz0i e3NyY19tYWN9IiwgZHN0PSJ7ZHN0X21hY30iLCB0eXBlPTB4OTEwMCkvRG90MVEocHJpbz0xLHZs YW49MjMpL0lQKCkvVURQKCkvRE5TKCknDQogICAgKyAgICAgICAgbXNnID0gInN0YWcgcmVzdWx0 IGlzIG5vdCBleHBlY3RlZCAoc3RhZz0xOjA6MjMpIg0KICAgICsgICAgICAgIGZpZWxkc19saXN0 ID0gWyJzdGFnPTE6MDoyMyJdDQogICAgKyAgICAgICAgc2VsZi5fX3ZlcmlmeV9jb21tb24oW1tw a3RzX3N0ciwgZmllbGRzX2xpc3RdXSwgbXNnKQ0KICAgICsNCiAgICArICAgIGRlZiBjaGVja19k b3VibGVfVkxBTl9maWVsZHNfaW5fUlhEXzgwMjFRXzJfVkxBTl90YWcoc2VsZik6DQogICAgKyAg ICAgICAgIiIiDQogICAgKyAgICAgICAgQ2hlY2sgZG91YmxlIFZMQU4gZmllbGRzIGluIFJYRCAo ODAyLjFRKSAyIFZMQU4gdGFncw0KICAgICsgICAgICAgICIiIg0KICAgICsgICAgICAgIHNlbGYu c3RhcnRfdGVzdHBtZCgidmxhbiIsICJSWERJRFsxN10iKQ0KICAgICsgICAgICAgIHBrdHNfc3Ry ID0gJ0V0aGVyKHNyYz0ie3NyY19tYWN9IiwgZHN0PSJ7ZHN0X21hY30iLCB0eXBlPTB4OTEwMCkv RG90MVEocHJpbz0xLHZsYW49MjMpL0RvdDFRKHByaW89NCx2bGFuPTU2KS9JUCgpL1VEUCgpL0RO UygpJw0KICAgICsgICAgICAgIG1zZyA9ICJUaGVyZSBhcmUgbm8gcmVsYXRlZCBmaWVsZHMgaW4g dGhlIHJlY2VpdmVkIFZMQU4gcGFja2V0Ig0KICAgICsgICAgICAgIGZpZWxkc19saXN0ID0gWyJz dGFnPTE6MDoyMyIsICJjdGFnPTQ6MDo1NiJdDQogICAgKyAgICAgICAgc2VsZi5fX3ZlcmlmeV9j b21tb24oW1twa3RzX3N0ciwgZmllbGRzX2xpc3RdXSwgbXNnKQ0KICAgICsNCiAgICArICAgIGRl ZiBjaGVja19kb3VibGVfVkxBTl9maWVsZHNfaW5fUlhEXzgwMjFhZChzZWxmKToNCiAgICArICAg ICAgICAiIiINCiAgICArICAgICAgICBDaGVjayBkb3VibGUgVkxBTiBmaWVsZHMgaW4gUlhEICg4 MDIuMWFkKQ0KICAgICsgICAgICAgICIiIg0KICAgICsgICAgICAgIHNlbGYuc3RhcnRfdGVzdHBt ZCgidmxhbiIsICJSWERJRFsxN10iKQ0KICAgICsgICAgICAgIHBrdHNfc3RyID0gJ0V0aGVyKHNy Yz0ie3NyY19tYWN9IiwgZHN0PSJ7ZHN0X21hY30iLCB0eXBlPTB4ODhBOCkvRG90MVEocHJpbz0x LHZsYW49MjMpL0RvdDFRKHByaW89NCx2bGFuPTU2KS9JUCgpL1VEUCgpL0ROUygpJw0KICAgICsg ICAgICAgIG1zZyA9ICJUaGVyZSBhcmUgbm8gcmVsYXRlZCBmaWVsZHMgaW4gdGhlIHJlY2VpdmVk IFZMQU4gcGFja2V0Ig0KICAgICsgICAgICAgIGZpZWxkc19saXN0ID0gWyJzdGFnPTE6MDoyMyIs ICJjdGFnPTQ6MDo1NiJdDQogICAgKyAgICAgICAgc2VsZi5fX3ZlcmlmeV9jb21tb24oW1twa3Rz X3N0ciwgZmllbGRzX2xpc3RdXSwgbXNnKQ0KICAgICsNCiAgICArICAgIGRlZiBjaGVja19JUHY0 X2ZpZWxkc19pbl9SWEQoc2VsZik6DQogICAgKyAgICAgICAgIiIiDQogICAgKyAgICAgICAgQ2hl Y2sgSVB2NCBmaWVsZHMgaW4gUlhEDQogICAgKyAgICAgICAgIiIiDQogICAgKyAgICAgICAgc2Vs Zi5zdGFydF90ZXN0cG1kKCJpcHY0IiwgIlJYRElEWzE4XSIpDQogICAgKyAgICAgICAgcGt0c19z dHIgPSAnRXRoZXIoc3JjPSJ7c3JjX21hY30iLCBkc3Q9Intkc3RfbWFjfSIpL0lQKHRvcz0yMywg dHRsPTk4KS9VRFAoKS9SYXcobG9hZD0iWFhYWFhYWFhYWCIpJw0KICAgICsgICAgICAgIG1zZyA9 ICJUaGVyZSBhcmUgbm8gcmVsYXRlZCBmaWVsZHMgaW4gdGhlIHJlY2VpdmVkIElQVjQgcGFja2V0 Ig0KICAgICsgICAgICAgIGZpZWxkc19saXN0ID0gWyJ2ZXI9NCIsICJoZHJsZW49NSIsICJ0b3M9 MjMiLCAidHRsPTk4IiwgInByb3RvPTE3Il0NCiAgICArICAgICAgICBzZWxmLl9fdmVyaWZ5X2Nv bW1vbihbW3BrdHNfc3RyLCBmaWVsZHNfbGlzdF1dLCBtc2cpDQogICAgKw0KICAgICsgICAgZGVm IGNoZWNrX0lQdjZfZmllbGRzX2luX1JYRChzZWxmKToNCiAgICArICAgICAgICAiIiINCiAgICAr ICAgICAgICBDaGVjayBJUHY2IGZpZWxkcyBpbiBSWEQNCiAgICArICAgICAgICAiIiINCiAgICAr ICAgICAgICBzZWxmLnN0YXJ0X3Rlc3RwbWQoImlwdjYiLCAiUlhESURbMTldIikNCiAgICArICAg ICAgICBwa3RzX3N0ciA9ICdFdGhlcihzcmM9IntzcmNfbWFjfSIsIGRzdD0ie2RzdF9tYWN9Iikv SVB2Nih0Yz0xMixobGltPTM0LGZsPTB4OTg3NjUpL1VEUCgpL1Jhdyhsb2FkPSJYWFhYWFhYWFhY IiknDQogICAgKyAgICAgICAgbXNnID0gIlRoZXJlIGFyZSBubyByZWxhdGVkIGZpZWxkcyBpbiB0 aGUgcmVjZWl2ZWQgSVBWNiBwYWNrZXQiDQogICAgKyAgICAgICAgZmllbGRzX2xpc3QgPSBbDQog ICAgKyAgICAgICAgICAgICJ2ZXI9NiIsICJ0Yz0xMiIsICJmbG93X2hpND0weDkiLCAibmV4dGhk cj0xNyIsICJob3BsaW1pdD0zNCJdDQogICAgKyAgICAgICAgc2VsZi5fX3ZlcmlmeV9jb21tb24o W1twa3RzX3N0ciwgZmllbGRzX2xpc3RdXSwgbXNnKQ0KICAgICsNCiAgICArICAgIGRlZiBjaGVj a19JUHY2X2Zsb3dfZmllbGRfaW5fUlhEKHNlbGYpOg0KICAgICsgICAgICAgICIiIg0KICAgICsg ICAgICAgIENoZWNrIElQdjYgZmxvdyBmaWVsZCBpbiBSWEQNCiAgICArICAgICAgICAiIiINCiAg ICArICAgICAgICBzZWxmLnN0YXJ0X3Rlc3RwbWQoImlwdjZfZmxvdyIsICJSWERJRFsyMF0iKQ0K ICAgICsgICAgICAgIHBrdHNfc3RyID0gJ0V0aGVyKHNyYz0ie3NyY19tYWN9IiwgZHN0PSJ7ZHN0 X21hY30iKS9JUHY2KHRjPTEyLGhsaW09MzQsZmw9MHg5ODc2NSkvVURQKCkvUmF3KGxvYWQ9IlhY WFhYWFhYWFgiKScNCiAgICArICAgICAgICBtc2cgPSAiVGhlcmUgYXJlIG5vIHJlbGF0ZWQgZmll bGRzIGluIHRoZSByZWNlaXZlZCBJUFY2X2Zsb3cgcGFja2V0Ig0KICAgICsgICAgICAgIGZpZWxk c19saXN0ID0gWyJ2ZXI9NiIsICJ0Yz0xMiIsICJmbG93PTB4OTg3NjUiXQ0KICAgICsgICAgICAg IHNlbGYuX192ZXJpZnlfY29tbW9uKFtbcGt0c19zdHIsIGZpZWxkc19saXN0XV0sIG1zZykNCiAg ICArDQogICAgKyAgICBkZWYgY2hlY2tfVENQX2ZpZWxkc19pbl9JUHY0X2luX1JYRChzZWxmKToN CiAgICArICAgICAgICAiIiINCiAgICArICAgICAgICBDaGVjayBUQ1AgZmllbGRzIGluIElQdjQg aW4gUlhEDQogICAgKyAgICAgICAgIiIiDQogICAgKyAgICAgICAgc2VsZi5zdGFydF90ZXN0cG1k KCJ0Y3AiLCAiUlhESURbMjFdIikNCiAgICArICAgICAgICBwa3RzX3N0ciA9ICdFdGhlcihzcmM9 IntzcmNfbWFjfSIsIGRzdD0ie2RzdF9tYWN9IikvSVAoKS9UQ1AoZmxhZ3M9IkFTIikvUmF3KGxv YWQ9IlhYWFhYWFhYWFgiKScNCiAgICArICAgICAgICBtc2cgPSAiVGhlcmUgYXJlIG5vIHJlbGF0 ZWQgZmllbGRzIGluIHRoZSByZWNlaXZlZCBUQ1AgcGFja2V0Ig0KICAgICsgICAgICAgIGZpZWxk c19saXN0ID0gWyJkb2ZmPTUiLCAiZmxhZ3M9QVMiXQ0KICAgICsgICAgICAgIHNlbGYuX192ZXJp ZnlfY29tbW9uKFtbcGt0c19zdHIsIGZpZWxkc19saXN0XV0sIG1zZykNCiAgICArDQogICAgKyAg ICBkZWYgY2hlY2tfVENQX2ZpZWxkc19pbl9JUHY2X2luX1JYRChzZWxmKToNCiAgICArICAgICAg ICAiIiINCiAgICArICAgICAgICBDaGVjayBUQ1AgZmllbGRzIGluIElQdjYgaW4gUlhEDQogICAg KyAgICAgICAgIiIiDQogICAgKyAgICAgICAgc2VsZi5zdGFydF90ZXN0cG1kKCJ0Y3AiLCAiUlhE SURbMjFdIikNCiAgICArICAgICAgICBwa3RzX3N0ciA9ICdFdGhlcihzcmM9IntzcmNfbWFjfSIs IGRzdD0ie2RzdF9tYWN9IikvSVB2NigpL1RDUChmbGFncz0iUyIpL1Jhdyhsb2FkPSJYWFhYWFhY WFhYIiknDQogICAgKyAgICAgICAgbXNnID0gIlRoZXJlIGFyZSBubyByZWxhdGVkIGZpZWxkcyBp biB0aGUgcmVjZWl2ZWQgVENQIHBhY2tldCINCiAgICArICAgICAgICBmaWVsZHNfbGlzdCA9IFsi ZG9mZj01IiwgImZsYWdzPVMiXQ0KICAgICsgICAgICAgIHNlbGYuX192ZXJpZnlfY29tbW9uKFtb cGt0c19zdHIsIGZpZWxkc19saXN0XV0sIG1zZykNCiAgICArDQogICAgKyAgICBkZWYgY2hlY2tf SVB2NF9JUHY2X1RDUF9maWVsZHNfaW5fUlhEX29uX3NwZWNpZmljX3F1ZXVlcyhzZWxmKToNCiAg ICArICAgICAgICAiIiINCiAgICArICAgICAgICBDaGVjayBJUHY0LCBJUHY2LCBUQ1AgZmllbGRz IGluIFJYRCBvbiBzcGVjaWZpYyBxdWV1ZXMNCiAgICArICAgICAgICAiIiINCiAgICArICAgICAg ICBzZWxmLnN0YXJ0X3Rlc3RwbWQoDQogICAgKyAgICAgICAgICAgICInWygyKTppcHY0LCgzKTpp cHY2LCg0KTp0Y3BdJyIsDQogICAgKyAgICAgICAgICAgIFsiUlhESURbMThdIiwgIlJYRElEWzE5 XSIsICJSWERJRFsyMl0iXSBpZiBzZWxmLl9faXNfaWF2ZiBlbHNlDQogICAgKyAgICAgICAgICAg IFsiUlhESURbMThdIiwgIlJYRElEWzE5XSIsICJSWERJRFsyMV0iLCAiUlhESURbMjJdIl0sDQog ICAgKyAgICAgICAgICAgIDE2KQ0KICAgICsgICAgICAgIHNlbGYuZHV0LnNlbmRfZXhwZWN0KA0K ICAgICsgICAgICAgICAgICAiZmxvdyBjcmVhdGUgMCBpbmdyZXNzIHBhdHRlcm4gZXRoIHt9LyBp cHY0IHNyYyBpcyAxOTIuMTY4LjAuMSBkc3QgaXMgMTkyLjE2OC4wLjIgdG9zIGlzIDIzIHR0bCBp cyA5OCAvIGVuZCBhY3Rpb25zIHF1ZXVlIGluZGV4IDIgLyBlbmQiLmZvcm1hdCgNCiAgICArICAg ICAgICAgICAgICAgICcnIGlmIHNlbGYuX19pc19pYXZmIGVsc2UgImRzdCBpcyB7fSAiLmZvcm1h dChzZWxmLl9fZHN0X21hYykpLA0KICAgICsgICAgICAgICAgICAiY3JlYXRlZCIpDQogICAgKyAg ICAgICAgc2VsZi5kdXQuc2VuZF9leHBlY3QoDQogICAgKyAgICAgICAgICAgICJmbG93IGNyZWF0 ZSAwIGluZ3Jlc3MgcGF0dGVybiBldGggLyBpcHY2IHNyYyBpcyAyMDAxOjozIGRzdCBpcyAyMDAx Ojo0IHRjIGlzIDEyIC8gZW5kIGFjdGlvbnMgcXVldWUgaW5kZXggMyAvIGVuZCIsDQogICAgKyAg ICAgICAgICAgICJjcmVhdGVkIikNCiAgICArICAgICAgICAjIHNlbmQgSVB2NA0KICAgICsgICAg ICAgIHBrdHNfc3RyID0gXA0KICAgICsgICAgICAgICAgICAnRXRoZXIoZHN0PSJ7ZHN0X21hY30i KS9JUChzcmM9IjE5Mi4xNjguMC4xIixkc3Q9IjE5Mi4xNjguMC4yIix0b3M9MjMsdHRsPTk4KS9V RFAoKS9SYXcobG9hZD0iWFhYWFhYWFhYWCIpJw0KICAgICsgICAgICAgIG1zZzEgPSAiVGhlcmUg YXJlIG5vIHJlbGV2YW50IGZpZWxkcyBpbiB0aGUgcmVjZWl2ZWQgSVB2NCBwYWNrZXQuIg0KICAg ICsgICAgICAgIGZpZWxkc19saXN0MSA9IFsiUmVjZWl2ZSBxdWV1ZT0weDIiLCAidmVyPTQiLA0K ICAgICsgICAgICAgICAgICAgICAgICAgICAgICAiaGRybGVuPTUiLCAidG9zPTIzIiwgInR0bD05 OCIsICJwcm90bz0xNyJdDQogICAgKyAgICAgICAgc2VsZi5fX3ZlcmlmeV9jb21tb24oW1twa3Rz X3N0ciwgZmllbGRzX2xpc3QxXV0sIG1zZzEpDQogICAgKw0KICAgICsgICAgICAgICMgc2VuZCBJ UHY2DQogICAgKyAgICAgICAgcGt0c19zdHIgPSBcDQogICAgKyAgICAgICAgICAgICdFdGhlcihz cmM9IntzcmNfbWFjfSIsIGRzdD0ie2RzdF9tYWN9IikvSVB2NihzcmM9IjIwMDE6OjMiLCBkc3Q9 IjIwMDE6OjQiLCB0Yz0xMiwgaGxpbT0zNCxmbD0weDk4NzY1KS9VRFAoKS9SYXcobG9hZD0iWFhY WFhYWFhYWCIpJw0KICAgICsgICAgICAgIG1zZzIgPSAiVGhlcmUgYXJlIG5vIHJlbGV2YW50IGZp ZWxkcyBpbiB0aGUgcmVjZWl2ZWQgSVB2NiBwYWNrZXQuIg0KICAgICsgICAgICAgIGZpZWxkc19s aXN0MiA9IFsNCiAgICArICAgICAgICAgICAgIlJlY2VpdmUgcXVldWU9MHgzIiwNCiAgICArICAg ICAgICAgICAgInZlcj02IiwNCiAgICArICAgICAgICAgICAgInRjPTEyIiwNCiAgICArICAgICAg ICAgICAgImZsb3dfaGk0PTB4OSIsDQogICAgKyAgICAgICAgICAgICJuZXh0aGRyPTE3IiwNCiAg ICArICAgICAgICAgICAgImhvcGxpbWl0PTM0Il0NCiAgICArICAgICAgICBzZWxmLl9fdmVyaWZ5 X2NvbW1vbihbW3BrdHNfc3RyLCBmaWVsZHNfbGlzdDJdXSwgbXNnMikNCiAgICArDQogICAgKyAg ICAgICAgIyBzZW5kIFRDUA0KICAgICsgICAgICAgIHNlbGYuZHV0LnNlbmRfZXhwZWN0KCJmbG93 IGZsdXNoIDAiLCAidGVzdHBtZD4iKQ0KICAgICsgICAgICAgIHNlbGYuZHV0LnNlbmRfZXhwZWN0 KA0KICAgICsgICAgICAgICAgICAiZmxvdyBjcmVhdGUgMCBpbmdyZXNzIHBhdHRlcm4gZXRoIHsw fS8gaXB2NCBzcmMgaXMgMTkyLjE2OC4wLjEgZHN0IGlzIDE5Mi4xNjguMC4yIC8gdGNwIHNyYyBp cyAyNSBkc3QgaXMgMjMgLyBlbmQgYWN0aW9ucyBxdWV1ZSBpbmRleCB7MX0gLyBlbmQiLmZvcm1h dCgNCiAgICArICAgICAgICAgICAgICAgICcnIGlmIHNlbGYuX19pc19pYXZmIGVsc2UgImRzdCBp cyB7fSAiLmZvcm1hdChzZWxmLl9fZHN0X21hYyksDQogICAgKyAgICAgICAgICAgICAgICA0LCAp LA0KICAgICsgICAgICAgICAgICAiY3JlYXRlZCIpDQogICAgKyAgICAgICAgcGt0c19zdHIgPSBc DQogICAgKyAgICAgICAgICAgICdFdGhlcihkc3Q9Intkc3RfbWFjfSIpL0lQKHNyYz0iMTkyLjE2 OC4wLjEiLCBkc3Q9IjE5Mi4xNjguMC4yIikvVENQKGZsYWdzPSJBUyIsIGRwb3J0PTIzLCBzcG9y dD0yNSkvUmF3KGxvYWQ9IlhYWFhYWFhYWFgiKScNCiAgICArICAgICAgICBtc2czID0gIlRoZXJl IGFyZSBubyByZWxldmFudCBmaWVsZHMgaW4gdGhlIHJlY2VpdmVkIFRDUCBwYWNrZXQuIg0KICAg ICsgICAgICAgIGZpZWxkc19saXN0MyA9IFsNCiAgICArICAgICAgICAgICAgIlJlY2VpdmUgcXVl dWU9MHg0IiwNCiAgICArICAgICAgICAgICAgImRvZmY9NSIsDQogICAgKyAgICAgICAgICAgICJm bGFncz1BUyJdDQogICAgKyAgICAgICAgc2VsZi5fX3ZlcmlmeV9jb21tb24oW1twa3RzX3N0ciwg ZmllbGRzX2xpc3QzXV0sIG1zZzMpDQogICAgKw0KICAgICsgICAgZGVmIGNoZWNrX3Rlc3RwbWRf dXNlX2RpZmZlcmVudF9wYXJhbWV0ZXJzKHNlbGYpOg0KICAgICsgICAgICAgICIiIg0KICAgICsg ICAgICAgIENoZWNrIHRlc3RwbWQgdXNlIGRpZmZlcmVudCBwYXJhbWV0ZXJzIHN0YXJ0DQogICAg KyAgICAgICAgIiIiDQogICAgKyAgICAgICAgcGFyYW1fdHlwZSA9ICdwcm90b194dHInDQogICAg KyAgICAgICAgIyBwb3J0IG9wdGlvbg0KICAgICsgICAgICAgIHBvcnRfb3B0ID0gc2VsZi5fX2dl dF9wb3J0X29wdGlvbigpDQogICAgKyAgICAgICAgIyB1c2UgZXJyb3IgcGFyYW1ldGVyIExhdW5j aCB0ZXN0cG1kLCB0ZXN0cG1kIGNhbiBub3QgYmUgc3RhcnRlZA0KICAgICsgICAgICAgIGNtZCA9 ICgNCiAgICArICAgICAgICAgICAgIi1sIDEsMiwzICINCiAgICArICAgICAgICAgICAgIi1uIHtt ZW1fY2hhbm5lbH0gIg0KICAgICsgICAgICAgICAgICAiLXcge3BjaX0se3BhcmFtX3R5cGV9PXZ4 bGFuICINCiAgICArICAgICAgICAgICAgIi0tIC1pICINCiAgICArICAgICAgICAgICAgIntwb3J0 X29wdH0iKS5mb3JtYXQoKip7DQogICAgKyAgICAgICAgICAgICAgICAnbWVtX2NoYW5uZWwnOiBz ZWxmLmR1dC5nZXRfbWVtb3J5X2NoYW5uZWxzKCksDQogICAgKyAgICAgICAgICAgICAgICAicGNp Ijogc2VsZi5fX3BjaSwNCiAgICArICAgICAgICAgICAgICAgICJwYXJhbV90eXBlIjogcGFyYW1f dHlwZSwNCiAgICArICAgICAgICAgICAgICAgICJwb3J0X29wdCI6IHBvcnRfb3B0LA0KICAgICsg ICAgICAgICAgICB9KQ0KICAgICsgICAgICAgIHRyeToNCiAgICArICAgICAgICAgICAgb3V0ID0g c2VsZi5fX3BtZG91dC5leGVjdXRlX2NtZChzZWxmLl9fYXBwX3BhdGggKyBjbWQsICIjIikNCiAg ICArICAgICAgICAgICAgc2VsZi5fX2lzX3BtZF9vbiA9IEZhbHNlDQogICAgKyAgICAgICAgZXhj ZXB0IEV4Y2VwdGlvbiBhcyBlOg0KICAgICsgICAgICAgICAgICBzZWxmLl9faXNfcG1kX29uID0g VHJ1ZQ0KICAgICsgICAgICAgIGV4cGVjdGVkID0gXA0KICAgICsgICAgICAgICAgICAiaWF2Zl9s b29rdXBfcHJvdG9feHRyX3R5cGUoKTogd3JvbmcgcHJvdG9feHRyIHR5cGUsIGl0IHNob3VsZCBi ZTogdmxhbnxpcHY0fGlwdjZ8aXB2Nl9mbG93fHRjcHxpcF9vZmZzZXQiIFwNCiAgICArICAgICAg ICAgICAgaWYgc2VsZi5fX2lzX2lhdmYgZWxzZSBcDQogICAgKyAgICAgICAgICAgICJoYW5kbGVf cHJvdG9feHRyX2FyZygpOiBUaGUgcHJvdG9jb2wgZXh0cmFjdGlvbiBwYXJhbWV0ZXIgaXMgd3Jv bmcgOiAndnhsYW4nIg0KICAgICsgICAgICAgIHNlbGYuY2xvc2VfdGVzdHBtZCgpDQogICAgKyAg ICAgICAgc2VsZi52ZXJpZnkoZXhwZWN0ZWQgaW4gb3V0LCAiY2FzZSB0ZXN0IGZhaWxlZCwgdGVz dHBtZCBzdGFydGVkIikNCiAgICArICAgICAgICAjIGRvbid0IHVzZSBwYXJhbWV0ZXIgbGF1bmNo IHRlc3RwbWQsIHRlc3RwbWQgc3RhcnRlZCBhbmQgcnhkaWQgdmFsdWUNCiAgICArICAgICAgICAj IGlzIHRoZSBkZWZhdWx0DQogICAgKyAgICAgICAgY21kID0gKA0KICAgICsgICAgICAgICAgICAi LWwgMSwyLDMgIg0KICAgICsgICAgICAgICAgICAiLW4ge21lbV9jaGFubmVsfSAiDQogICAgKyAg ICAgICAgICAgICItdyB7cGNpfSAiDQogICAgKyAgICAgICAgICAgICItLWxvZy1sZXZlbD0naWNl LDgnICINCiAgICArICAgICAgICAgICAgIi0tIC1pICINCiAgICArICAgICAgICAgICAgIntwb3J0 X29wdH0iKS5mb3JtYXQoKip7DQogICAgKyAgICAgICAgICAgICAgICAnbWVtX2NoYW5uZWwnOiBz ZWxmLmR1dC5nZXRfbWVtb3J5X2NoYW5uZWxzKCksDQogICAgKyAgICAgICAgICAgICAgICAicGNp Ijogc2VsZi5fX3BjaSwNCiAgICArICAgICAgICAgICAgICAgICJwYXJhbV90eXBlIjogcGFyYW1f dHlwZSwNCiAgICArICAgICAgICAgICAgICAgICJwb3J0X29wdCI6IHBvcnRfb3B0LA0KICAgICsg ICAgICAgICAgICB9KQ0KICAgICsgICAgICAgIG91dCA9IHNlbGYuX19wbWRvdXQuZXhlY3V0ZV9j bWQoc2VsZi5fX2FwcF9wYXRoICsgY21kLCAidGVzdHBtZD4iKQ0KICAgICsgICAgICAgIHNlbGYu X19pc19wbWRfb24gPSBUcnVlDQogICAgKyAgICAgICAgc2VsZi5jbG9zZV90ZXN0cG1kKCkNCiAg ICArICAgICAgICBzZWxmLl9fY2hlY2tfcnhkaWQoIlJYRElEWzIyXSIsIG91dCkNCiAgICArDQog ICAgKyAgICBkZWYgY2hlY2tfaXBfb2Zmc2V0X29mX2lwKHNlbGYpOg0KICAgICsgICAgICAgICIi Ig0KICAgICsgICAgICAgIENoZWNrIGlwIG9mZnNldCBvZiBpcA0KICAgICsgICAgICAgICIiIg0K ICAgICsgICAgICAgIHNlbGYuc3RhcnRfdGVzdHBtZCgiaXBfb2Zmc2V0IiwgIlJYRElEWzI1XSIp DQogICAgKyAgICAgICAgcGt0c19saXN0ID0gWw0KICAgICsgICAgICAgICAgICBbJ0V0aGVyKHNy Yz0ie3NyY19tYWN9IiwgZHN0PSJ7ZHN0X21hY30iLHR5cGU9MHg4ODQ3KS9NUExTKHM9MSkvSVAo KScsDQogICAgKyAgICAgICAgICAgICAnaXBfb2Zmc2V0PTE4J10sDQogICAgKyAgICAgICAgICAg IFsnRXRoZXIoc3JjPSJ7c3JjX21hY30iLCBkc3Q9Intkc3RfbWFjfSIsdHlwZT0weDg4NDcpL01Q TFMocz0xKS9JUHY2KCknLA0KICAgICsgICAgICAgICAgICAgICAgJ2lwX29mZnNldD0xOCddXQ0K ICAgICsgICAgICAgIHNlbGYuX192ZXJpZnlfY29tbW9uKHBrdHNfbGlzdCkNCiAgICArDQogICAg KyAgICBkZWYgY2hlY2tfaXBfb2Zmc2V0X3dpdGhfdmxhbihzZWxmKToNCiAgICArICAgICAgICAi IiINCiAgICArICAgICAgICBjaGVjayBpcCBvZmZzZXQgd2l0aCB2bGFuDQogICAgKyAgICAgICAg IiIiDQogICAgKyAgICAgICAgc2VsZi5zdGFydF90ZXN0cG1kKCJpcF9vZmZzZXQiLCAiUlhESURb MjVdIikNCiAgICArICAgICAgICBwa3RzX2xpc3QgPSBbDQogICAgKyAgICAgICAgICAgIFsnRXRo ZXIoc3JjPSJ7c3JjX21hY30iLCBkc3Q9Intkc3RfbWFjfSIsdHlwZT0weDgxMDApL0RvdDFRKHR5 cGU9MHg4ODQ3KS9NUExTKHM9MSkvSVAoKScsDQogICAgKyAgICAgICAgICAgICAnaXBfb2Zmc2V0 PTIyJ10sDQogICAgKyAgICAgICAgICAgIFsnRXRoZXIoc3JjPSJ7c3JjX21hY30iLCBkc3Q9Intk c3RfbWFjfSIsdHlwZT0weDgxMDApL0RvdDFRKHR5cGU9MHg4ODQ3KS9NUExTKHM9MSkvSVB2Nigp JywNCiAgICArICAgICAgICAgICAgICAgICdpcF9vZmZzZXQ9MjInXV0NCiAgICArICAgICAgICBz ZWxmLl9fdmVyaWZ5X2NvbW1vbihwa3RzX2xpc3QpDQogICAgKw0KICAgICsgICAgZGVmIGNoZWNr X2lwX29mZnNldF93aXRoXzJfdmxhbl90YWcoc2VsZik6DQogICAgKyAgICAgICAgIiIiDQogICAg KyAgICAgICAgY2hlY2sgb2Zmc2V0IHdpdGggMiB2bGFuIHRhZw0KICAgICsgICAgICAgICIiIg0K ICAgICsgICAgICAgIHNlbGYuc3RhcnRfdGVzdHBtZCgiaXBfb2Zmc2V0IiwgIlJYRElEWzI1XSIp DQogICAgKyAgICAgICAgcGt0c19saXN0ID0gWw0KICAgICsgICAgICAgICAgICBbJ0V0aGVyKHNy Yz0ie3NyY19tYWN9IiwgZHN0PSJ7ZHN0X21hY30iLHR5cGU9MHg4OEE4KS9Eb3QxUSh0eXBlPTB4 ODEwMCkvRG90MVEodHlwZT0weDg4NDcpL01QTFMocz0xKS9JUCgpJywNCiAgICArICAgICAgICAg ICAgICdpcF9vZmZzZXQ9MjYnXSwNCiAgICArICAgICAgICAgICAgWydFdGhlcihzcmM9IntzcmNf bWFjfSIsIGRzdD0ie2RzdF9tYWN9Iix0eXBlPTB4ODhBOCkvRG90MVEodHlwZT0weDgxMDApL0Rv dDFRKHR5cGU9MHg4ODQ3KS9NUExTKHM9MSkvSVB2NigpJywNCiAgICArICAgICAgICAgICAgICAg ICdpcF9vZmZzZXQ9MjYnXV0NCiAgICArICAgICAgICBzZWxmLl9fdmVyaWZ5X2NvbW1vbihwa3Rz X2xpc3QpDQogICAgKw0KICAgICsgICAgZGVmIGNoZWNrX2lwX29mZnNldF93aXRoX211bHRpX01Q TFMoc2VsZik6DQogICAgKyAgICAgICAgIiIiDQogICAgKyAgICAgICAgY2hlY2sgaXAgb2Zmc2V0 IHdpdGggbXVsdGkgTVBMUw0KICAgICsgICAgICAgICIiIg0KICAgICsgICAgICAgIHNlbGYuc3Rh cnRfdGVzdHBtZCgiaXBfb2Zmc2V0IiwgIlJYRElEWzI1XSIpDQogICAgKyAgICAgICAgcGt0c19s aXN0ID0gWw0KICAgICsgICAgICAgICAgICBbJ0V0aGVyKHNyYz0ie3NyY19tYWN9IiwgZHN0PSJ7 ZHN0X21hY30iLHR5cGU9MHg4ODQ3KS9NUExTKHM9MSkvSVAoKScsDQogICAgKyAgICAgICAgICAg ICAnaXBfb2Zmc2V0PTE4J10sDQogICAgKyAgICAgICAgICAgIFsnRXRoZXIoc3JjPSJ7c3JjX21h Y30iLCBkc3Q9Intkc3RfbWFjfSIsdHlwZT0weDg4NDcpL01QTFMocz0wKS9NUExTKHM9MSkvSVAo KScsDQogICAgKyAgICAgICAgICAgICAgICAnaXBfb2Zmc2V0PTIyJ10sDQogICAgKyAgICAgICAg ICAgIFsnRXRoZXIoc3JjPSJ7c3JjX21hY30iLCBkc3Q9Intkc3RfbWFjfSIsdHlwZT0weDg4NDcp L01QTFMocz0wKS9NUExTKHM9MCkvTVBMUyhzPTEpL0lQKCknLA0KICAgICsgICAgICAgICAgICAg ICAgJ2lwX29mZnNldD0yNiddLA0KICAgICsgICAgICAgICAgICBbJ0V0aGVyKHNyYz0ie3NyY19t YWN9IiwgZHN0PSJ7ZHN0X21hY30iLHR5cGU9MHg4ODQ3KS9NUExTKHM9MCkvTVBMUyhzPTApL01Q TFMocz0wKS9NUExTKHM9MSkvSVAoKScsDQogICAgKyAgICAgICAgICAgICAgICAnaXBfb2Zmc2V0 PTMwJ10sDQogICAgKyAgICAgICAgICAgIFsnRXRoZXIoc3JjPSJ7c3JjX21hY30iLCBkc3Q9Intk c3RfbWFjfSIsdHlwZT0weDg4NDcpL01QTFMocz0wKS9NUExTKHM9MCkvTVBMUyhzPTApL01QTFMo cz0wKS9NUExTKHM9MSkvSVAoKScsDQogICAgKyAgICAgICAgICAgICAgICAnaXBfb2Zmc2V0PTM0 J10sDQogICAgKyAgICAgICAgICAgIFsnRXRoZXIoc3JjPSJ7c3JjX21hY30iLCBkc3Q9Intkc3Rf bWFjfSIsdHlwZT0weDg4NDcpL01QTFMocz0xKS9JUHY2KCknLA0KICAgICsgICAgICAgICAgICAg ICAgJ2lwX29mZnNldD0xOCddLA0KICAgICsgICAgICAgICAgICBbJ0V0aGVyKHNyYz0ie3NyY19t YWN9IiwgZHN0PSJ7ZHN0X21hY30iLHR5cGU9MHg4ODQ3KS9NUExTKHM9MCkvTVBMUyhzPTEpL0lQ djYoKScsDQogICAgKyAgICAgICAgICAgICAgICAnaXBfb2Zmc2V0PTIyJ10sDQogICAgKyAgICAg ICAgICAgIFsnRXRoZXIoc3JjPSJ7c3JjX21hY30iLCBkc3Q9Intkc3RfbWFjfSIsdHlwZT0weDg4 NDcpL01QTFMocz0wKS9NUExTKHM9MCkvTVBMUyhzPTEpL0lQdjYoKScsDQogICAgKyAgICAgICAg ICAgICAgICAnaXBfb2Zmc2V0PTI2J10sDQogICAgKyAgICAgICAgICAgIFsnRXRoZXIoc3JjPSJ7 c3JjX21hY30iLCBkc3Q9Intkc3RfbWFjfSIsdHlwZT0weDg4NDcpL01QTFMocz0wKS9NUExTKHM9 MCkvTVBMUyhzPTApL01QTFMocz0xKS9JUHY2KCknLA0KICAgICsgICAgICAgICAgICAgICAgJ2lw X29mZnNldD0zMCddLA0KICAgICsgICAgICAgICAgICBbJ0V0aGVyKHNyYz0ie3NyY19tYWN9Iiwg ZHN0PSJ7ZHN0X21hY30iLHR5cGU9MHg4ODQ3KS9NUExTKHM9MCkvTVBMUyhzPTApL01QTFMocz0w KS9NUExTKHM9MCkvTVBMUyhzPTEpL0lQdjYoKScsDQogICAgKyAgICAgICAgICAgICAgICAnaXBf b2Zmc2V0PTM0J11dDQogICAgKyAgICAgICAgc2VsZi5fX3ZlcmlmeV9jb21tb24ocGt0c19saXN0 KQ0KICAgICsNCiAgICArICAgIGRlZiBjaGVja19pcF9vZmZzZXRfd2l0aF9tdWx0aV9NUExTX3dp dGhfdmxhbl90YWcoc2VsZik6DQogICAgKyAgICAgICAgIiIiDQogICAgKyAgICAgICAgY2hlY2sg aXAgb2Zmc2V0IHdpdGggbXVsdGkgTVBMUyB3aXRoIHZsYW4gdGFnDQogICAgKyAgICAgICAgIiIi DQogICAgKyAgICAgICAgc2VsZi5zdGFydF90ZXN0cG1kKCJpcF9vZmZzZXQiLCAiUlhESURbMjVd IikNCiAgICArICAgICAgICBwa3RzX2xpc3QgPSBbDQogICAgKyAgICAgICAgICAgIFsnRXRoZXIo c3JjPSJ7c3JjX21hY30iLCBkc3Q9Intkc3RfbWFjfSIsdHlwZT0weDgxMDApL0RvdDFRKHR5cGU9 MHg4ODQ3KS9NUExTKHM9MSkvSVAoKScsDQogICAgKyAgICAgICAgICAgICAnaXBfb2Zmc2V0PTIy J10sDQogICAgKyAgICAgICAgICAgIFsnRXRoZXIoc3JjPSJ7c3JjX21hY30iLCBkc3Q9Intkc3Rf bWFjfSIsdHlwZT0weDgxMDApL0RvdDFRKHR5cGU9MHg4ODQ3KS9NUExTKHM9MCkvTVBMUyhzPTEp L0lQKCknLA0KICAgICsgICAgICAgICAgICAgICAgJ2lwX29mZnNldD0yNiddLA0KICAgICsgICAg ICAgICAgICBbJ0V0aGVyKHNyYz0ie3NyY19tYWN9IiwgZHN0PSJ7ZHN0X21hY30iLHR5cGU9MHg4 MTAwKS9Eb3QxUSh0eXBlPTB4ODg0NykvTVBMUyhzPTApL01QTFMocz0wKS9NUExTKHM9MSkvSVAo KScsDQogICAgKyAgICAgICAgICAgICAgICAnaXBfb2Zmc2V0PTMwJ10sDQogICAgKyAgICAgICAg ICAgIFsnRXRoZXIoc3JjPSJ7c3JjX21hY30iLCBkc3Q9Intkc3RfbWFjfSIsdHlwZT0weDgxMDAp L0RvdDFRKHR5cGU9MHg4ODQ3KS9NUExTKHM9MCkvTVBMUyhzPTApL01QTFMocz0wKS9NUExTKHM9 MSkvSVAoKScsDQogICAgKyAgICAgICAgICAgICAgICAnaXBfb2Zmc2V0PTM0J10sDQogICAgKyAg ICAgICAgICAgIFsnRXRoZXIoc3JjPSJ7c3JjX21hY30iLCBkc3Q9Intkc3RfbWFjfSIsdHlwZT0w eDgxMDApL0RvdDFRKHR5cGU9MHg4ODQ3KS9NUExTKHM9MCkvTVBMUyhzPTApL01QTFMocz0wKS9N UExTKHM9MCkvTVBMUyhzPTEpL0lQKCknLA0KICAgICsgICAgICAgICAgICAgICAgJ2lwX29mZnNl dD0zOCddLA0KICAgICsgICAgICAgICAgICBbJ0V0aGVyKHNyYz0ie3NyY19tYWN9IiwgZHN0PSJ7 ZHN0X21hY30iLHR5cGU9MHg4MTAwKS9Eb3QxUSh0eXBlPTB4ODg0NykvTVBMUyhzPTEpL0lQdjYo KScsDQogICAgKyAgICAgICAgICAgICAgICAnaXBfb2Zmc2V0PTIyJ10sDQogICAgKyAgICAgICAg ICAgIFsnRXRoZXIoc3JjPSJ7c3JjX21hY30iLCBkc3Q9Intkc3RfbWFjfSIsdHlwZT0weDgxMDAp L0RvdDFRKHR5cGU9MHg4ODQ3KS9NUExTKHM9MCkvTVBMUyhzPTEpL0lQdjYoKScsDQogICAgKyAg ICAgICAgICAgICAgICAnaXBfb2Zmc2V0PTI2J10sDQogICAgKyAgICAgICAgICAgIFsnRXRoZXIo c3JjPSJ7c3JjX21hY30iLCBkc3Q9Intkc3RfbWFjfSIsdHlwZT0weDgxMDApL0RvdDFRKHR5cGU9 MHg4ODQ3KS9NUExTKHM9MCkvTVBMUyhzPTApL01QTFMocz0xKS9JUHY2KCknLA0KICAgICsgICAg ICAgICAgICAgICAgJ2lwX29mZnNldD0zMCddLA0KICAgICsgICAgICAgICAgICBbJ0V0aGVyKHNy Yz0ie3NyY19tYWN9IiwgZHN0PSJ7ZHN0X21hY30iLHR5cGU9MHg4MTAwKS9Eb3QxUSh0eXBlPTB4 ODg0NykvTVBMUyhzPTApL01QTFMocz0wKS9NUExTKHM9MCkvTVBMUyhzPTEpL0lQdjYoKScsDQog ICAgKyAgICAgICAgICAgICAgICAnaXBfb2Zmc2V0PTM0J10sDQogICAgKyAgICAgICAgICAgIFsn RXRoZXIoc3JjPSJ7c3JjX21hY30iLCBkc3Q9Intkc3RfbWFjfSIsdHlwZT0weDgxMDApL0RvdDFR KHR5cGU9MHg4ODQ3KS9NUExTKHM9MCkvTVBMUyhzPTApL01QTFMocz0wKS9NUExTKHM9MCkvTVBM UyhzPTEpL0lQdjYoKScsDQogICAgKyAgICAgICAgICAgICAgICAnaXBfb2Zmc2V0PTM4J11dDQog ICAgKyAgICAgICAgc2VsZi5fX3ZlcmlmeV9jb21tb24ocGt0c19saXN0KQ0KICAgICsNCiAgICAr ICAgIGRlZiBjaGVja19pcF9vZmZzZXRfd2l0aF9tdWx0aV9NUExTX3dpdGhfMl92bGFuX3RhZyhz ZWxmKToNCiAgICArICAgICAgICAiIiINCiAgICArICAgICAgICBjaGVjayBpcCBvZmZzZXQgd2l0 aCBtdWx0aSBNUExTIHdpdGggMiB2bGFuIHRhZw0KICAgICsgICAgICAgICIiIg0KICAgICsgICAg ICAgIHNlbGYuc3RhcnRfdGVzdHBtZCgiaXBfb2Zmc2V0IiwgIlJYRElEWzI1XSIpDQogICAgKyAg ICAgICAgcGt0c19saXN0ID0gWw0KICAgICsgICAgICAgICAgICBbJ0V0aGVyKHNyYz0ie3NyY19t YWN9IiwgZHN0PSJ7ZHN0X21hY30iLHR5cGU9MHg4OEE4KS9Eb3QxUSh0eXBlPTB4ODEwMCkvRG90 MVEodHlwZT0weDg4NDcpL01QTFMocz0xKS9JUCgpJywNCiAgICArICAgICAgICAgICAgICdpcF9v ZmZzZXQ9MjYnXSwNCiAgICArICAgICAgICAgICAgWydFdGhlcihzcmM9IntzcmNfbWFjfSIsIGRz dD0ie2RzdF9tYWN9Iix0eXBlPTB4ODhBOCkvRG90MVEodHlwZT0weDgxMDApL0RvdDFRKHR5cGU9 MHg4ODQ3KS9NUExTKHM9MCkvTVBMUyhzPTEpL0lQKCknLA0KICAgICsgICAgICAgICAgICAgICAg J2lwX29mZnNldD0zMCddLA0KICAgICsgICAgICAgICAgICBbJ0V0aGVyKHNyYz0ie3NyY19tYWN9 IiwgZHN0PSJ7ZHN0X21hY30iLHR5cGU9MHg4OEE4KS9Eb3QxUSh0eXBlPTB4ODEwMCkvRG90MVEo dHlwZT0weDg4NDcpL01QTFMocz0wKS9NUExTKHM9MCkvTVBMUyhzPTEpL0lQKCknLA0KICAgICsg ICAgICAgICAgICAgICAgJ2lwX29mZnNldD0zNCddLA0KICAgICsgICAgICAgICAgICBbJ0V0aGVy KHNyYz0ie3NyY19tYWN9IiwgZHN0PSJ7ZHN0X21hY30iLHR5cGU9MHg4OEE4KS9Eb3QxUSh0eXBl PTB4ODEwMCkvRG90MVEodHlwZT0weDg4NDcpL01QTFMocz0wKS9NUExTKHM9MCkvTVBMUyhzPTAp L01QTFMocz0xKS9JUCgpJywNCiAgICArICAgICAgICAgICAgICAgICdpcF9vZmZzZXQ9MzgnXSwN CiAgICArICAgICAgICAgICAgWydFdGhlcihzcmM9IntzcmNfbWFjfSIsIGRzdD0ie2RzdF9tYWN9 Iix0eXBlPTB4ODhBOCkvRG90MVEodHlwZT0weDgxMDApL0RvdDFRKHR5cGU9MHg4ODQ3KS9NUExT KHM9MCkvTVBMUyhzPTApL01QTFMocz0wKS9NUExTKHM9MCkvTVBMUyhzPTEpL0lQKCknLA0KICAg ICsgICAgICAgICAgICAgICAgJ2lwX29mZnNldD00MiddLA0KICAgICsgICAgICAgICAgICBbJ0V0 aGVyKHNyYz0ie3NyY19tYWN9IiwgZHN0PSJ7ZHN0X21hY30iLHR5cGU9MHg4OEE4KS9Eb3QxUSh0 eXBlPTB4ODEwMCkvRG90MVEodHlwZT0weDg4NDcpL01QTFMocz0xKS9JUHY2KCknLA0KICAgICsg ICAgICAgICAgICAgICAgJ2lwX29mZnNldD0yNiddLA0KICAgICsgICAgICAgICAgICBbJ0V0aGVy KHNyYz0ie3NyY19tYWN9IiwgZHN0PSJ7ZHN0X21hY30iLHR5cGU9MHg4OEE4KS9Eb3QxUSh0eXBl PTB4ODEwMCkvRG90MVEodHlwZT0weDg4NDcpL01QTFMocz0wKS9NUExTKHM9MSkvSVB2NigpJywN CiAgICArICAgICAgICAgICAgICAgICdpcF9vZmZzZXQ9MzAnXSwNCiAgICArICAgICAgICAgICAg WydFdGhlcihzcmM9IntzcmNfbWFjfSIsIGRzdD0ie2RzdF9tYWN9Iix0eXBlPTB4ODhBOCkvRG90 MVEodHlwZT0weDgxMDApL0RvdDFRKHR5cGU9MHg4ODQ3KS9NUExTKHM9MCkvTVBMUyhzPTApL01Q TFMocz0xKS9JUHY2KCknLA0KICAgICsgICAgICAgICAgICAgICAgJ2lwX29mZnNldD0zNCddLA0K ICAgICsgICAgICAgICAgICBbJ0V0aGVyKHNyYz0ie3NyY19tYWN9IiwgZHN0PSJ7ZHN0X21hY30i LHR5cGU9MHg4OEE4KS9Eb3QxUSh0eXBlPTB4ODEwMCkvRG90MVEodHlwZT0weDg4NDcpL01QTFMo cz0wKS9NUExTKHM9MCkvTVBMUyhzPTApL01QTFMocz0xKS9JUHY2KCknLA0KICAgICsgICAgICAg ICAgICAgICAgJ2lwX29mZnNldD0zOCddLA0KICAgICsgICAgICAgICAgICBbJ0V0aGVyKHNyYz0i e3NyY19tYWN9IiwgZHN0PSJ7ZHN0X21hY30iLHR5cGU9MHg4OEE4KS9Eb3QxUSh0eXBlPTB4ODEw MCkvRG90MVEodHlwZT0weDg4NDcpL01QTFMocz0wKS9NUExTKHM9MCkvTVBMUyhzPTApL01QTFMo cz0wKS9NUExTKHM9MSkvSVB2NigpJywNCiAgICArICAgICAgICAgICAgICAgICdpcF9vZmZzZXQ9 NDInXV0NCiAgICArICAgICAgICBzZWxmLl9fdmVyaWZ5X2NvbW1vbihwa3RzX2xpc3QpDQogICAg LS0gDQogICAgMi4yMS4wDQoNCg0K