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 01CB1A046B for ; Thu, 27 Jun 2019 16:39:00 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 9A7AD2B99; Thu, 27 Jun 2019 16:38:58 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by dpdk.org (Postfix) with ESMTP id 80E982B82 for ; Thu, 27 Jun 2019 16:38:56 +0200 (CEST) Received: from pps.filterd (m0045851.ppops.net [127.0.0.1]) by mx0b-0016f401.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id x5REZn2M001936; Thu, 27 Jun 2019 07:38:55 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=pfpt0818; bh=oeId4/uwAnMYyM7jfgdkCYxMTjHRnHa8VtmyWBe5Gcs=; b=T4ncJAyzZmQZSMqTRbghwVcYvSMgpZoGZqDBarpkC6R2UfWgljY/8F7nFBGmHM+v8IWp MCSOIbuEoQ6lBhErM1nA/jd9ZttYQxqvcM1uRvfBTkDkL84XdtKHuKqS7ebtRUAXc47p tpcqJRrDkyzzsdWbqNF3jTAfJUQseskcQNkgXxCxX1NaPmvX6OkkUFEP6vF5G9y+jEjS VktIZeqTEUwmq8xOhsf/sj3Gx3pGs91pmZ5tVmcEXfiegUSWMRVUPB4dhiZpQaugv6g4 anGsthdWmSSZyYCKVBpvbLpYOUKeSQoSIbWrPhBkx9zTOlJBzApjXdtvKu/dhUnXkvRp VA== Received: from sc-exch02.marvell.com ([199.233.58.182]) by mx0b-0016f401.pphosted.com with ESMTP id 2tcvnh8rny-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Thu, 27 Jun 2019 07:38:55 -0700 Received: from SC-EXCH04.marvell.com (10.93.176.84) by SC-EXCH02.marvell.com (10.93.176.82) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Thu, 27 Jun 2019 07:38:53 -0700 Received: from NAM04-BN3-obe.outbound.protection.outlook.com (104.47.46.55) by SC-EXCH04.marvell.com (10.93.176.84) with Microsoft SMTP Server (TLS) id 15.0.1367.3 via Frontend Transport; Thu, 27 Jun 2019 07:38:53 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.onmicrosoft.com; s=selector2-marvell-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=oeId4/uwAnMYyM7jfgdkCYxMTjHRnHa8VtmyWBe5Gcs=; b=xFNuMrkEXt4Yx/jD6tWOMrRKdD4V5W121IsLwsSzxyHhWqrfO9HbgOMq8Q1omW1U+dDpdG7GbCex56V04azDAER6WlNTBFBy/uLCsVx9c8vBt99YEA72Sdd5G5RGoux7qa48NMR5R21167FprHBbPqG5HTCzgIz54fAHcLY2aCk= Received: from BN6PR1801MB2052.namprd18.prod.outlook.com (10.161.157.11) by BN6PR1801MB1889.namprd18.prod.outlook.com (10.161.156.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2008.16; Thu, 27 Jun 2019 14:38:48 +0000 Received: from BN6PR1801MB2052.namprd18.prod.outlook.com ([fe80::e15e:f648:497:ea77]) by BN6PR1801MB2052.namprd18.prod.outlook.com ([fe80::e15e:f648:497:ea77%7]) with mapi id 15.20.2008.018; Thu, 27 Jun 2019 14:38:48 +0000 From: Shally Verma To: "Trybula, ArturX" , "dev@dpdk.org" , "Trahe, Fiona" , "Dybkowski, AdamX" Thread-Topic: [dpdk-dev] [PATCH] app/test-compress-perf: report header improvement Thread-Index: AQHVGfZ/GtXUFS7r4EKgBycJgZwJ16auTJxAgAEMkoCAACEe8IAADb2AgAAu4rA= Date: Thu, 27 Jun 2019 14:38:48 +0000 Message-ID: References: <20190603102401.25715-1-arturx.trybula@intel.com> <5B6D1C77E9D7034C93E97BD83D1D9F57077DBA65@HASMSX110.ger.corp.intel.com> <5B6D1C77E9D7034C93E97BD83D1D9F57077DBB98@HASMSX110.ger.corp.intel.com> In-Reply-To: <5B6D1C77E9D7034C93E97BD83D1D9F57077DBB98@HASMSX110.ger.corp.intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [171.49.225.231] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: f0572ffa-615f-4cf5-91d0-08d6fb0d2a5d x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(5600148)(711020)(4605104)(1401327)(4534185)(7168020)(4627221)(201703031133081)(201702281549075)(8990200)(2017052603328)(7193020); SRVR:BN6PR1801MB1889; x-ms-traffictypediagnostic: BN6PR1801MB1889: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:3173; x-forefront-prvs: 008184426E x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(346002)(376002)(136003)(396003)(39860400002)(366004)(13464003)(199004)(189003)(66066001)(33656002)(5660300002)(52536014)(68736007)(53936002)(71190400001)(71200400001)(81166006)(81156014)(8676002)(8936002)(66476007)(66556008)(64756008)(66446008)(73956011)(76116006)(66946007)(14444005)(2906002)(256004)(229853002)(9686003)(316002)(55016002)(99286004)(6506007)(102836004)(55236004)(6436002)(53546011)(3846002)(14454004)(76176011)(186003)(6116002)(305945005)(7736002)(7696005)(74316002)(446003)(2501003)(25786009)(86362001)(486006)(476003)(6246003)(478600001)(11346002)(110136005)(26005); DIR:OUT; SFP:1101; SCL:1; SRVR:BN6PR1801MB1889; H:BN6PR1801MB2052.namprd18.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: marvell.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: RmWFvxQfXd77ZNj/tc/CKDWbV0Nk0Syj+/e7oHOugPuFkSzVDQT/V22Q0ykrI0ywlHFW7y/kedFJVE8Lr/70ltcY8OPU/KwGhp/n4qMIbr1Mh3/3iFhzf8V+uTjcGmuDcAuWqaJdn/smQx1JtjeUGmgJgq2HHIIRzixx4mf4ux48eAi8PGaw2uDTwecw1evRRzhu7LJljYOix95oW83QGmDj7tday75UmfvT/QuPOOZQEJ+sWa6oyZt6XSB6EfQZHWWH82Lcem8wz1eA060fzkodPP+kcyCIJOEekJ5fjEdH6ABdxm6yz48bA5OLLZXuGkrnYyYMOr2+Tv5Nm0AIYDMvoIOZdn8xUuSXiekW5SXVSqkRAcrx8pn9en4Hska1Wg9MW7gktJnf4tgZ1eLIonLBsVNsubvn9qpp0rOFYU0= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: f0572ffa-615f-4cf5-91d0-08d6fb0d2a5d X-MS-Exchange-CrossTenant-originalarrivaltime: 27 Jun 2019 14:38:48.1886 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: shallyv@marvell.com X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR1801MB1889 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-06-27_08:, , signatures=0 Subject: Re: [dpdk-dev] [PATCH] app/test-compress-perf: report header improvement 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" DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogVHJ5YnVsYSwgQXJ0dXJY IDxhcnR1cngudHJ5YnVsYUBpbnRlbC5jb20+DQo+IFNlbnQ6IFRodXJzZGF5LCBKdW5lIDI3LCAy MDE5IDU6MTcgUE0NCj4gVG86IFNoYWxseSBWZXJtYSA8c2hhbGx5dkBtYXJ2ZWxsLmNvbT47IGRl dkBkcGRrLm9yZzsgVHJhaGUsIEZpb25hDQo+IDxmaW9uYS50cmFoZUBpbnRlbC5jb20+OyBEeWJr b3dza2ksIEFkYW1YDQo+IDxhZGFteC5keWJrb3dza2lAaW50ZWwuY29tPg0KPiBTdWJqZWN0OiBb RVhUXSBSRTogW2RwZGstZGV2XSBbUEFUQ0hdIGFwcC90ZXN0LWNvbXByZXNzLXBlcmY6IHJlcG9y dA0KPiBoZWFkZXIgaW1wcm92ZW1lbnQNCj4gDQo+IEV4dGVybmFsIEVtYWlsDQo+IA0KPiAtLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tDQo+IA0KPiANCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTog U2hhbGx5IFZlcm1hIFttYWlsdG86c2hhbGx5dkBtYXJ2ZWxsLmNvbV0NCj4gU2VudDogVGh1cnNk YXksIEp1bmUgMjcsIDIwMTkgMTM6MDENCj4gVG86IFRyeWJ1bGEsIEFydHVyWCA8YXJ0dXJ4LnRy eWJ1bGFAaW50ZWwuY29tPjsgZGV2QGRwZGsub3JnOyBUcmFoZSwgRmlvbmENCj4gPGZpb25hLnRy YWhlQGludGVsLmNvbT47IER5Ymtvd3NraSwgQWRhbVgNCj4gPGFkYW14LmR5Ymtvd3NraUBpbnRl bC5jb20+DQo+IFN1YmplY3Q6IFJFOiBbZHBkay1kZXZdIFtQQVRDSF0gYXBwL3Rlc3QtY29tcHJl c3MtcGVyZjogcmVwb3J0IGhlYWRlcg0KPiBpbXByb3ZlbWVudA0KPiANCj4gDQo+IA0KPiA+IC0t LS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gRnJvbTogVHJ5YnVsYSwgQXJ0dXJYIDxhcnR1 cngudHJ5YnVsYUBpbnRlbC5jb20+DQo+ID4gU2VudDogVGh1cnNkYXksIEp1bmUgMjcsIDIwMTkg MjoyOSBQTQ0KPiA+IFRvOiBTaGFsbHkgVmVybWEgPHNoYWxseXZAbWFydmVsbC5jb20+OyBkZXZA ZHBkay5vcmc7IFRyYWhlLCBGaW9uYQ0KPiA+IDxmaW9uYS50cmFoZUBpbnRlbC5jb20+OyBEeWJr b3dza2ksIEFkYW1YDQo+IDxhZGFteC5keWJrb3dza2lAaW50ZWwuY29tPg0KPiA+IFN1YmplY3Q6 IFtFWFRdIFJFOiBbZHBkay1kZXZdIFtQQVRDSF0gYXBwL3Rlc3QtY29tcHJlc3MtcGVyZjogcmVw b3J0DQo+ID4gaGVhZGVyIGltcHJvdmVtZW50DQo+ID4NCj4gPiBFeHRlcm5hbCBFbWFpbA0KPiA+ DQo+ID4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiA+DQo+ID4NCj4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2Ut LS0tLQ0KPiA+IEZyb206IFNoYWxseSBWZXJtYSBbbWFpbHRvOnNoYWxseXZAbWFydmVsbC5jb21d DQo+ID4gU2VudDogV2VkbmVzZGF5LCBKdW5lIDI2LCAyMDE5IDE5OjA0DQo+ID4gVG86IFRyeWJ1 bGEsIEFydHVyWCA8YXJ0dXJ4LnRyeWJ1bGFAaW50ZWwuY29tPjsgZGV2QGRwZGsub3JnOyBUcmFo ZSwNCj4gPiBGaW9uYSA8ZmlvbmEudHJhaGVAaW50ZWwuY29tPjsgRHlia293c2tpLCBBZGFtWA0K PiA+IDxhZGFteC5keWJrb3dza2lAaW50ZWwuY29tPg0KPiA+IFN1YmplY3Q6IFJFOiBbZHBkay1k ZXZdIFtQQVRDSF0gYXBwL3Rlc3QtY29tcHJlc3MtcGVyZjogcmVwb3J0IGhlYWRlcg0KPiA+IGlt cHJvdmVtZW50DQo+ID4NCj4gPg0KPiA+DQo+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0t LQ0KPiA+ID4gRnJvbTogZGV2IDxkZXYtYm91bmNlc0BkcGRrLm9yZz4gT24gQmVoYWxmIE9mIEFy dHVyIFRyeWJ1bGENCj4gPiA+IFNlbnQ6IE1vbmRheSwgSnVuZSAzLCAyMDE5IDM6NTQgUE0NCj4g PiA+IFRvOiBkZXZAZHBkay5vcmc7IGZpb25hLnRyYWhlQGludGVsLmNvbTsgYXJ0dXJ4LnRyeWJ1 bGFAaW50ZWwuY29tOw0KPiA+ID4gYWRhbXguZHlia293c2tpQGludGVsLmNvbQ0KPiA+ID4gU3Vi amVjdDogW2RwZGstZGV2XSBbUEFUQ0hdIGFwcC90ZXN0LWNvbXByZXNzLXBlcmY6IHJlcG9ydCBo ZWFkZXINCj4gPiA+IGltcHJvdmVtZW50DQo+ID4gPg0KPiA+ID4gVGhpcyBwYXRjaCBhZGRzIGV4 dHJhIGZlYXR1cmVzIHRvIHRoZSBjb21wcmVzcyBwZXJmb3JtYW5jZSB0ZXN0Lg0KPiA+ID4gU29t ZSBpbXBvcnRhbnQgcGFyYW1ldGVycyAobWVtb3J5IGFsbG9jYXRpb24sIG51bWJlciBvZiBvcHMs IG51bWJlcg0KPiA+ID4gb2YNCj4gPiA+IHNlZ21lbnRzKSBhcmUgY2FsY3VsYXRlZCBhbmQgcHJp bnRlZCBvdXQgb24gdGhlIHNjcmVlbi4NCj4gPiA+DQo+ID4gPiBTaWduZWQtb2ZmLWJ5OiBBcnR1 ciBUcnlidWxhIDxhcnR1cngudHJ5YnVsYUBpbnRlbC5jb20+DQo+ID4gPiAtLS0NCj4gPiA+ICBh cHAvdGVzdC1jb21wcmVzcy1wZXJmL21haW4uYyB8IDEwNQ0KPiA+ID4gKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKy0tLQ0KPiA+ID4gIDEgZmlsZSBjaGFuZ2VkLCA5OCBpbnNlcnRpb25z KCspLCA3IGRlbGV0aW9ucygtKQ0KPiA+ID4NCj4gPiAuLi4uLi4NCj4gPiA+DQo+ID4gPiAtDQo+ ID4gPiArc3RhdGljIHZvaWQNCj4gPiA+ICtwcmludF9yZXBvcnRfaGVhZGVyKHZvaWQpDQo+ID4g PiArew0KPiA+ID4gKwl1aW50MzJfdCBvcHRfdG90YWxfc2VncyA9IERJVl9DRUlMKHRlc3RzX3Jl cy5pbnB1dF9kYXRhX3N6LA0KPiA+ID4gKwkJCU1BWF9TRUdfU0laRSk7DQo+ID4gPiArDQo+ID4g PiArCWlmICh0ZXN0c19yZXMudG90YWxfYnVmZnMgPiAxKSB7DQo+ID4gPiArCQlwcmludGYoIlxu V2FybmluZzogZm9yIHRoZSBjdXJyZW50IGlucHV0IHBhcmFtZXRlcnMgbnVtYmVyIg0KPiA+ID4g KwkJCQkiIG9mIG9wcyBpcyBoaWdoZXIgdGhhbiBvbmUsIHdoaWNoIG1heSByZXN1bHQiDQo+ID4g PiArCQkJCSIgaW4gc3ViLW9wdGltYWwgcGVyZm9ybWFuY2UuXG4iKTsNCj4gPiA+ICsJCXByaW50 ZigiVG8gaW1wcm92ZSB0aGUgcGVyZm9ybWFuY2UgKGZvciB0aGUgY3VycmVudCINCj4gPiA+ICsJ CQkJIiBpbnB1dCBkYXRhKSBmb2xsb3dpbmcgcGFyYW1ldGVycyBhcmUiDQo+ID4gPiArCQkJCSIg c3VnZ2VzdGVkOlxuIik7DQo+ID4gPiArCQlwcmludGYoIgnigKIgU2VnbWVudCBzaXplOiAlZFxu IiwgTUFYX1NFR19TSVpFKTsNCj4gPiA+ICsJCXByaW50ZigiCeKAoiBOdW1iZXIgb2Ygc2VnbWVu dHM6ICV1XG4iLCBvcHRfdG90YWxfc2Vncyk7DQo+ID4gPiArCX0gZWxzZSBpZiAodGVzdHNfcmVz LnRvdGFsX2J1ZmZzID09IDEpIHsNCj4gPiA+ICsJCXByaW50ZigiXG5XYXJuaW5nOiBUaGVyZSBp cyBvbmx5IG9uZSBvcCB3aXRoICV1IHNlZ21lbnRzIOKAkyINCj4gPiA+ICsJCQkJIiB0aGUgY29t cHJlc3Npb24gcmF0aW8gaXMgdGhlIGJlc3QuXG4iLA0KPiA+ID4gKwkJCXRlc3RzX3Jlcy5zZWdt ZW50c19wZXJfbGFzdF9idWZmKTsNCj4gPiA+ICsJCWlmICh0ZXN0c19yZXMuc2VnbWVudF9zeiA8 IE1BWF9TRUdfU0laRSkNCj4gPiA+ICsJCQlwcmludGYoIlRvIHJlZHVjZSBjb21wcmVzc2lvbiB0 aW1lLCBwbGVhc2UgdXNlIg0KPiA+ID4gKwkJCQkJIiBiaWdnZXIgc2VnbWVudCBzaXplOiAlZC5c biIsDQo+ID4gPiArCQkJCU1BWF9TRUdfU0laRSk7DQo+ID4gPiArCQllbHNlIGlmICh0ZXN0c19y ZXMuc2VnbWVudF9zeiA9PSBNQVhfU0VHX1NJWkUpDQo+ID4gPiArCQkJcHJpbnRmKCJTZWdtZW50 IHNpemUgaXMgb3B0aW1hbCBmb3IgdGhlIGJlc3QiDQo+ID4gPiArCQkJCQkiIHBlcmZvcm1hbmNl LlxuIik7DQo+ID4NCj4gPiBbU2hhbGx5XSBXaHkgdGhlc2Uga2luZCBvZiB3YXJuaW5ncz8gSWYg dG90YWxfYnVmcyA+IDEsIHRoZW4sIGhvdw0KPiA+IGJlaGF2aW9yIHdvdWxkIGNoYW5nZT8gU2Ft ZSBxdWVzdGlvbiBmb3Igc2VnbWVudCBzaXplIGFzIHdlbGw/DQo+ID4gW0FydHVyXSBJIHN1cHBv c2UgeW91IG1lYW4gdGhlIHNlY29uZCBvbmUgIldhcm5pbmc6IFRoZXJlIGlzIG9ubHkgb25lDQo+ IC4uLiIuDQo+ID4gSXQncyBqdXN0IHRvIHByZXNlcnZlIHRoZSBzdHJ1Y3R1cmUgb2YgdGhlIHJl cG9ydCBmb3IgYm90aCB2YXJpYW50cy4NCj4gPiBCdXQgSSBhZ3JlZSwgdGhlcmUgaXMgbm90aGlu ZyB3cm9uZyBpZiB0aGVyZSBpcyBvbmx5IG9uZSBvcC4NCj4gPiBQbGVhc2Ugbm90aWNlIHRoYXQg ZWFjaCBvcCBpcyBwcm9jZXNzZWQgaW5kZXBlbmRlbnRseSwgaW4gbW9zdCBjYXNlcw0KPiA+IGl0 IGltcGxpZXMgbG93ZXIgY29tcHJlc3Npb24gcmF0aW8uIFRoZSBiZXN0IHNpdHVhdGlvbiBpcyB0 byBoYXZlIGFsbA0KPiA+IHRoZSBpbnB1dCBkYXRhIGFnZ3JlZ2F0ZWQgaW50byBvbmUgb3AgKGV2 ZW4gaWYgcGFydGl0aW9uZWQgYWNyb3NzIG1hbnkNCj4gbWJ1ZnMpLg0KPiA+DQo+IFtTaGFsbHld IFRoZW4gY2FuIHdlIGJldHRlciBjb3ZlcnQgdGhpcyBpbiB0ZXJtcyBvZiAic3RhdGVsZXNzIiBh bmQgInN0YXRlZnVsIiAuDQo+IEV4YW1wbGUsIFNheSBpdCBsaWtlOg0KPiBTaW5jZSB0ZXN0IGFw cCBzdXBwb3J0IHN0YXRlbGVzcyBtb2RlIG9ubHksIHRodXMgaWYgaW5wdXQgZGF0YSBpcyBzZWdt ZW50ZWQNCj4gYWNyb3NzIG11bHRpcGxlIGJ1ZmZlcnMgKGkuZS4gb3ApIFRoZW4gZWFjaCB3aWxs IGJlIHByb2Nlc3NlZCBpbmRlcGVuZGVudGx5DQo+IChpLmUuIGluIHN0YXRlbGVzcyBtb2RlKSAu IFRodXMgdG8gZ2FpbiBiZXR0ZXIgcmVzdWx0cywgaXQgbWlnaHQgYmUgbW9yZSB1c2VmdWwNCj4g dG8gcHV0IGFsbCBkYXRhIGluIG9uZSBidWZmZXIuDQo+IFtBcnR1cl0gV2Ugc3RhcnRlZCBmcm9t IGFuIGlkZWEgb2Ygc2ltcGxlIGNoZWNraW5nIG1lbW9yeSBhbGxvY2F0aW9uLiBGcm9tDQo+IG15 IHBvaW50IG9mIHZpZXcgd2Ugc2hvdWxkIGF2b2lkIG1ha2luZyBpdCB0b28gY29tcGxleCB1bmxl c3MgdGhlcmUgaXMgYQ0KPiBjbGVhciBuZWVkLiBUaGlzIGlzIGEgInNpbXBsZSB0b29sIiBmb3Ig cXVpY2sgdmVyaWZpY2F0aW9uIHdoYXQgaXMgdGhlIGVmZmVjdCBvZg0KPiB0aGUgaW5wdXQgcGFy YW1ldGVycy4gSXQncyBmb3IgZGV2ZWxvcGVycyBmYW1pbGlhciB3aXRoIHRoZSBjb21wcmVzc2lv bi4gSQ0KPiBhZ3JlZSB3aXRoIHlvdSB0aGF0IGluIGNhc2Ugb2Ygc3VwcG9ydGluZyBib3RoIHN0 YXRlbGVzcyBhbmQgc3RhdGVmdWwNCj4gY29tcHJlc3Npb24gc3VjaCBpbmZvcm1hdGlvbiBzaG91 bGQgYmUgcHJpbnRlZCBvdXQuDQo+IA0KW1NoYWxseV0gT2theS4gSSBsZWF2ZSBpdCB0byB5b3Vy IGNvbWZvcnQuIEJ1dCBjb3VsZCB5b3UgY29uZmlybSBpZiBJIHVuZGVyc3Rvb2QgaXQgY29ycmVj dD8gDQpJIG1lYW4ga2VlcCBudW1fYnVmcyA9IDEsIHdpbGwgcmVzdWx0IGluIGJldHRlciBoaXN0 b3J5IHRodXMgYmV0dGVyIGNvbXByZXNzaW9uLg0KDQo+IA0KPiA+ID4gKwl9IGVsc2UNCj4gPiA+ ICsJCXByaW50ZigiV2FybmluZzogc29tZXRoaW5nIHdyb25nIGhhcHBlbmVkISFcbiIpOw0KPiA+ ID4gKw0KPiA+ID4gKwlwcmludGYoIlxuRm9yIHRoZSBjdXJyZW50IGlucHV0IHBhcmFtZXRlcnMg KHNlZ21lbnQgc2l6ZSA9ICV1LCINCj4gPiA+ICsJCQkiIHNlZ21lbnRzIG51bWJlciA9ICV1KTpc biIsDQo+ID4gPiArCQl0ZXN0c19yZXMuc2VnbWVudF9zeiwNCj4gPiA+ICsJCXRlc3RzX3Jlcy5z ZWdtZW50c19wZXJfYnVmZik7DQo+ID4gPiArCXByaW50ZigiCeKAoiBUb3RhbCBudW1iZXIgb2Yg c2VnbWVudHM6ICVkXG4iLA0KPiA+ID4gKwkJdGVzdHNfcmVzLnRvdGFsX3NlZ21lbnRzKTsNCj4g PiA+ICsJcHJpbnRmKCIJ4oCiICV1IHNlZ21lbnRzICV1IGJ5dGVzIGxvbmcsIGxhc3Qgc2VnbWVu dCAldSINCj4gPiA+ICsJCQkiIGJ5dGUocykgbG9uZ1xuIiwNCj4gPiA+ICsJCXRlc3RzX3Jlcy50 b3RhbF9zZWdtZW50cyAtIDEsDQo+ID4gPiArCQl0ZXN0c19yZXMuc2VnbWVudF9zeiwNCj4gPiA+ ICsJCXRlc3RzX3Jlcy5sYXN0X3NlZ21lbnRfc3opOw0KPiA+ID4gKwlwcmludGYoIgnigKIgTnVt YmVyIG9mIG9wczogJXVcbiIsIHRlc3RzX3Jlcy50b3RhbF9idWZmcyk7DQo+ID4gPiArCXByaW50 ZigiCeKAoiBUb3RhbCBtZW1vcnkgYWxsb2NhdGlvbjogJXVcbiIsDQo+ID4gPiArCQkodGVzdHNf cmVzLnRvdGFsX3NlZ21lbnRzIC0gMSkgKiB0ZXN0c19yZXMuc2VnbWVudF9zeg0KPiA+ID4gKwkJ KyB0ZXN0c19yZXMubGFzdF9zZWdtZW50X3N6KTsNCj4gPiA+ICsJaWYgKHRlc3RzX3Jlcy50b3Rh bF9idWZmcyA+IDEpDQo+ID4gPiArCQlwcmludGYoIgnigKIgJXUgb3BzOiAldSBzZWdtZW50cyBp biBlYWNoLCINCj4gPiA+ICsJCQkJIiBzZWdtZW50IHNpemUgJXVcbiIsDQo+ID4gPiArCQkJdGVz dHNfcmVzLnRvdGFsX2J1ZmZzIC0gMSwNCj4gPiA+ICsJCQl0ZXN0c19yZXMuc2VnbWVudHNfcGVy X2J1ZmYsDQo+ID4gPiArCQkJdGVzdHNfcmVzLnNlZ21lbnRfc3opOw0KPiA+ID4gKwlpZiAodGVz dHNfcmVzLnNlZ21lbnRzX3Blcl9sYXN0X2J1ZmYgPiAxKSB7DQo+ID4gPiArCQlwcmludGYoIgni gKIgMSBvcCAldSBzZWdtZW50czpcbiIsDQo+ID4gPiArCQkJCXRlc3RzX3Jlcy5zZWdtZW50c19w ZXJfbGFzdF9idWZmKTsNCj4gPiA+ICsJCXByaW50ZigiCQlvICV1IHNlZ21lbnQgc2l6ZSAldVxu IiwNCj4gPiA+ICsJCQl0ZXN0c19yZXMuc2VnbWVudHNfcGVyX2xhc3RfYnVmZiAtIDEsDQo+ID4g PiArCQkJdGVzdHNfcmVzLnNlZ21lbnRfc3opOw0KPiA+ID4gKwkJcHJpbnRmKCIJCW8gbGFzdCBz ZWdtZW50IHNpemUgJXVcbiIsDQo+ID4gPiArCQkJdGVzdHNfcmVzLmxhc3Rfc2VnbWVudF9zeik7 DQo+ID4gPiArCX0gZWxzZSBpZiAodGVzdHNfcmVzLnNlZ21lbnRzX3Blcl9sYXN0X2J1ZmYgPT0g MSkgew0KPiA+ID4gKwkJcHJpbnRmKCIJ4oCiIDEgb3AgKHRoZSBsYXN0IG9uZSk6ICV1IHNlZ21l bnQgJXUiDQo+ID4gPiArCQkJCSIgYnl0ZShzKSBsb25nXG5cbiIsDQo+ID4gPiArCQkJdGVzdHNf cmVzLnNlZ21lbnRzX3Blcl9sYXN0X2J1ZmYsDQo+ID4gPiArCQkJdGVzdHNfcmVzLmxhc3Rfc2Vn bWVudF9zeik7DQo+ID4gPiArCX0NCj4gPiA+ICt9DQo+ID4gPg0KPiA+ID4gIGludA0KPiA+ID4g IG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQ0KPiA+ID4gQEAgLTUzMyw4ICs2MjIsOSBAQCBt YWluKGludCBhcmdjLCBjaGFyICoqYXJndikNCj4gPiA+ICAJZWxzZQ0KPiA+ID4gIAkJbGV2ZWwg PSB0ZXN0X2RhdGEtPmxldmVsLmxpc3RbMF07DQo+ID4gPg0KPiA+ID4gKwlwcmludF9yZXBvcnRf aGVhZGVyKCk7DQo+ID4gPiArDQo+ID4gW1NoYWxseV0gbG9va3MgbGlrZSB3ZSdyZSBwcmludGlu ZyBpbnB1dCBjaGFyYWN0ZXJpc3RpY3MgYW5kIHBvc3NpYmxlDQo+ID4gcGVyZm9ybWFuY2UgYmVo YXZpb3IuIElzIHRoYXQgdGhlIGludGVudGlvbiBvZiB0aGlzIEFQST8NCj4gPiBbQXJ0dXJdIFRo YXQgd2FzIHRoZSBpZGVhIHRvIGhhdmUgYSB0b29sIGZvciB2ZXJpZmljYXRpb24gaG93IHRoZSBk YXRhDQo+ID4gcGFydGl0aW9uaW5nIGFmZmVjdHMgdGhlIGNvbXByZXNzaW9uIHBlcmZvcm1hbmNl LiBZb3VyIGRlc2NyaXB0aW9uDQo+ID4gU2hhbGx5IGlzIHZlcnkgYWNjdXJhdGU6ICIuLi4gcHJp bnRpbmcgaW5wdXQgY2hhcmFjdGVyaXN0aWNzIGFuZA0KPiA+IHBvc3NpYmxlIHBlcmZvcm1hbmNl IGJlaGF2aW9yIiBhbmQgdGhhdCBpcyB0aGUgaW50ZW50aW9uIG9mIHRoaXMgQVBJLg0KPiBbU2hh bGx5XSBUaGVuIHByb2JhYmx5IHdlIGNhbiBhZGQgdGhpcyBpbiBmdW5jdGlvbiBkZXNjcmlwdGlv bi4NCj4gW0FydHVyXSBUbyBiZSBwcmVjaXNlIGl0IGlzIG5vdCBhIHR5cGljYWwgQVBJIGZ1bmN0 aW9uLiBJdCdzIGFuIGludGVybmFsIChzdGF0aWMpDQo+IGZ1bmN0aW9uIG9mIHRoZSBwZXJmIHRl c3QuDQpbU2hhbGx5XSBPaCB5YS4gVGhlbiBjYW4gd2UgY2hhbmdlIG5hbWUgLi4gcHJpbnRfcmVw b3J0X2hlYWRlcigpIHNvdW5kcyBsaWtlIHByaW50aW5nIHJlcG9ydCBvbiB0ZXN0IHJlc3VsdHMg YnV0IGhlcmUgaW50ZW50IGlzIGRpZmZlcmVudC4gU29tZXRoaW5nIGxpa2UgcHJpbnRfdGVzdF9k eW5hbWljcygpIHNlZW0gbW9yZSBhcHBsaWNhYmxlPw0KDQo+ID4NCj4gPg0KPiA+ID4gIAlwcmlu dGYoIkJ1cnN0IHNpemUgPSAldVxuIiwgdGVzdF9kYXRhLT5idXJzdF9zeik7DQo+ID4gPiAtCXBy aW50ZigiRmlsZSBzaXplID0gJXp1XG4iLCB0ZXN0X2RhdGEtPmlucHV0X2RhdGFfc3opOw0KPiA+ ID4NCj4gPiA+ICAJcHJpbnRmKCIlNnMlMTJzJTE3cyUxOXMlMjFzJTE1cyUyMXMlMjNzJTE2c1xu IiwNCj4gPiA+ICAJCSJMZXZlbCIsICJDb21wIHNpemUiLCAiQ29tcCByYXRpbyBbJV0iLCBAQCAt NjEyLDMgKzcwMiw0DQo+ID4gQEANCj4gPiA+IG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQ0K PiA+ID4gIAl9DQo+ID4gPiAgCXJldHVybiByZXQ7DQo+ID4gPiAgfQ0KPiA+ID4gKw0KPiA+ID4g LS0NCj4gPiA+IDIuMTcuMQ0KDQo=