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 58CB1A04B6; Thu, 17 Sep 2020 09:47:51 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 2013E1D563; Thu, 17 Sep 2020 09:47:50 +0200 (CEST) Received: from nat-hk.nvidia.com (nat-hk.nvidia.com [203.18.50.4]) by dpdk.org (Postfix) with ESMTP id E464B1D562 for ; Thu, 17 Sep 2020 09:47:46 +0200 (CEST) Received: from hkpgpgate101.nvidia.com (Not Verified[10.18.92.9]) by nat-hk.nvidia.com (using TLS: TLSv1.2, DES-CBC3-SHA) id ; Thu, 17 Sep 2020 15:47:45 +0800 Received: from HKMAIL101.nvidia.com ([10.18.16.10]) by hkpgpgate101.nvidia.com (PGP Universal service); Thu, 17 Sep 2020 00:47:45 -0700 X-PGP-Universal: processed; by hkpgpgate101.nvidia.com on Thu, 17 Sep 2020 00:47:45 -0700 Received: from HKMAIL103.nvidia.com (10.18.16.12) by HKMAIL101.nvidia.com (10.18.16.10) with Microsoft SMTP Server (TLS) id 15.0.1473.3; Thu, 17 Sep 2020 07:47:39 +0000 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.105) by HKMAIL103.nvidia.com (10.18.16.12) with Microsoft SMTP Server (TLS) id 15.0.1473.3 via Frontend Transport; Thu, 17 Sep 2020 07:47:39 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HI/Kh/PefSvwUrp2kf1viNImOWMZE8vlI8D+kyrS05QWsRKkjc3yuTuzHxD+Fkp2QwI8HEn91QZzky18M3SoVAizdp9VfcHc8MwL/95vw1ABIEc09DWEFyIjpdv2UnbVzL+gmK2hpWzrSGElgHaIpiuw+YMVZjq3/clG9aI3E02wOXrqCd3XGhvHkG9b/dC2OHRmbCtg0EwYUvDB0b7fVdeFr84ITe+jRAjEeLknGTTsa2uFCs53yftzr33cgKs5gOeLFZEe1vmDBwf66KgDZEkNfHjKbecUb/DOerN5j2WtDEOJFLPo98LalwJvIeSfhXHxZifxS7Gy06e8AP6E5A== 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=FXLVkF+P1n3CjpwY1K/Ym9KklsGwAiyJHyYfnsYqlIw=; b=a9/I8IrGKzbD9KzKvsHIxuCQOvVj5LesqHQaH11ylpesru+krqJVDhcFsGQ87t0IpLIru/Cly2GKDMFHphwRDWsbGY12EeNS0eINT3QxeLD5dmT9t1Ctw8jkE4w4qKVSyF2f+IhHDxUXYF/0K99niYEp+DZkfU+yWBmfXvOamawCWXaqGyz/tFy4BzCGSIgnb3E2qQIurO8b/Qm/zYuBe0vSBoJ1mGC2Xk6XFAtC9S6eoI3cntMgdTxyqSrundi6B51WUzpcXz/E/OKj+Kuooaw87WOvbC1sp8YDzNzGspsb9GV47iV1W/TblnzjeJfGCfWKDXRt2CtqoIMoOIV/qg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none Received: from MN2PR12MB4286.namprd12.prod.outlook.com (2603:10b6:208:199::22) by MN2PR12MB4014.namprd12.prod.outlook.com (2603:10b6:208:16d::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3391.15; Thu, 17 Sep 2020 07:47:31 +0000 Received: from MN2PR12MB4286.namprd12.prod.outlook.com ([fe80::61fd:a36e:cf4f:2d3f]) by MN2PR12MB4286.namprd12.prod.outlook.com ([fe80::61fd:a36e:cf4f:2d3f%9]) with mapi id 15.20.3370.019; Thu, 17 Sep 2020 07:47:31 +0000 From: Ori Kam To: Andrew Rybchenko , Gregory Etelson , Ajit Khaparde CC: dpdk-dev , Matan Azrad , Raslan Darawsheh , Ori Kam , "NBU-Contact-Thomas Monjalon" , Ferruh Yigit Thread-Topic: [dpdk-dev] [PATCH v2 1/4] ethdev: allow negative values in flow rule types Thread-Index: AQHWhhz6hvq7OBQFI0SZYrWmyJcFSqlpJz2AgABF/YCAABwZgIACBg0AgADhzQCAAAt6wA== Date: Thu, 17 Sep 2020 07:47:31 +0000 Message-ID: References: <20200625160348.26220-1-getelson@mellanox.com> <20200908201552.14423-1-getelson@nvidia.com> <20200908201552.14423-2-getelson@nvidia.com> <599184f9-72ce-d0f1-a586-d0182888497e@solarflare.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: solarflare.com; dkim=none (message not signed) header.d=none;solarflare.com; dmarc=none action=none header.from=nvidia.com; x-originating-ip: [147.236.152.129] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 7dafe360-e001-4e89-fa48-08d85addeec0 x-ms-traffictypediagnostic: MN2PR12MB4014: x-ld-processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8882; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: ExuztToLz8wpMZUYYmuLXcK4O27RbHvFYTx25+jJCb0RTIBofaih9hbEViBlCkinU02hHR5pTk+QFu28MnnOEME/l/DhE765aWmkLP18zucxc9zHuUTDL7Vh4/aqOIz3Xhox/Y+yUFvvSl5lCVQf0HM+qSMZshGQsw6gFru8mJMVvQ7Y2is/oYYrGMqK0DpVX7G9OMSReg/criGv2Rpz5BQYVBKxey8lGSP6Op5TJEj/w7nmcVIgfOb09jFUh77N2jXfhmWR8EO/qND7exUJasEpe4Q5Z5t367Zk2ggHZuGVZ3gcNjX77Hc+Bv/VBC/bxNStZP3mdCQ6iEK/YgpfI+NDjW50Q29eWrhUQ2lQ2ZOeRwA+uKHP7sdNLjPDa60RNy1qxyJj+H7jOYHkFlW/NQ== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MN2PR12MB4286.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(136003)(346002)(396003)(39860400002)(366004)(376002)(53546011)(71200400001)(52536014)(8676002)(6506007)(26005)(66476007)(66556008)(66446008)(316002)(76116006)(5660300002)(64756008)(66946007)(86362001)(7696005)(8936002)(966005)(4326008)(478600001)(33656002)(2906002)(186003)(55016002)(83380400001)(9686003)(54906003)(110136005); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: SRRo5vEuPYPZo5L3YhzgwXMY6SQg9JgqyHmHGLziQuycSicg2m2oiQBe/6nuuWq6ps/xcqgDUYaatNLmEANqK+/oB40TMDbfBPvMLhFjSS9yQlgdjcALBoM0LpscMrrdd3FVeUPGK1+YCiatrfs5alyCQu6IX0f9tli5tMBfFJ0OFcBIWdyX29634lJ9qK+vnX2/UKK1ERAw586yUpH0a0eBf6uuoqHBKwKIC4VFRiK5M0zz9zIFm41Fr7m92anpYvAaYS4leGjN8Gh9rLiP7iFBNlJvBekiqwmIDLRNMVWeGKm2cz/4Uo98Hxk8h3gHetnrtRqfnMvUCjLj4u3cIbjQmpYXjQm0g9ne4DELBKDUvucNRSpt2Fw92bFfA5q/0QxRlvl+uskmidFBaUtO8DJloyRbVgAjvMxIVtZ37/AXk4Vbnz62m4qrEVi3hcPtyR199fTZ5fLmDFhSonbkLMLo3R9zeESawXnB8rawhUL6AkewB0cuG5/+J5MqoJu+t0NiHVduzXZiAOE2vn7QxQ7Bg27S06yr+nLX4zCTl2KdC7dRhQ9DBY144oiK2y+7TZ2ULACKnJIU4Wmv+dGJXE1V/r2gFR6ZefX0eyvSTGZZtUK93euxqWjyHd0SsdBDc97oaWfjrreu5yA6rlOBKw== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MN2PR12MB4286.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7dafe360-e001-4e89-fa48-08d85addeec0 X-MS-Exchange-CrossTenant-originalarrivaltime: 17 Sep 2020 07:47:31.1099 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: khaVmCbrn85GAislW+xUTJki/s7rJM1tp0Bp3ddV96zXJ80s77cqEwph4K1TisQ+4YF0csAfoV9lTp1kgPHEVg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4014 X-OriginatorOrg: Nvidia.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nvidia.com; s=n1; t=1600328865; bh=FXLVkF+P1n3CjpwY1K/Ym9KklsGwAiyJHyYfnsYqlIw=; h=X-PGP-Universal:ARC-Seal:ARC-Message-Signature: ARC-Authentication-Results:From:To:CC:Subject:Thread-Topic: Thread-Index:Date:Message-ID:References:In-Reply-To: Accept-Language:Content-Language:X-MS-Has-Attach: X-MS-TNEF-Correlator:authentication-results:x-originating-ip: x-ms-publictraffictype:x-ms-office365-filtering-correlation-id: x-ms-traffictypediagnostic:x-ld-processed: x-ms-exchange-transport-forked:x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers:x-ms-exchange-senderadcheck: x-microsoft-antispam:x-microsoft-antispam-message-info: x-forefront-antispam-report:x-ms-exchange-antispam-messagedata: Content-Type:Content-Transfer-Encoding:MIME-Version: X-MS-Exchange-CrossTenant-AuthAs: X-MS-Exchange-CrossTenant-AuthSource: X-MS-Exchange-CrossTenant-Network-Message-Id: X-MS-Exchange-CrossTenant-originalarrivaltime: X-MS-Exchange-CrossTenant-fromentityheader: X-MS-Exchange-CrossTenant-id:X-MS-Exchange-CrossTenant-mailboxtype: X-MS-Exchange-CrossTenant-userprincipalname: X-MS-Exchange-Transport-CrossTenantHeadersStamped:X-OriginatorOrg; b=AFuVgwYLxef2vdZEQgzfYtobGW3RF1cLSgi5PYiR9DR6A35G8Qqy4neB9DVcPoIfv shaHKY1Mb/whzvaeQA9+5RHEzD2eMUsXMshtGv+2Oh37SNqrhYaVwGfMCz0RV5O/u3 96P3wjLH4aHLCYc9KBggC2AuK5pjHbMhp5A/4x3ozt3NQTdrQuZOSvuGqgjJwQcIE/ OPhPov2KyhBeO2NQQ4gjPjnJih1NOFLzQ8/fpIhvRWnxZ9ukEmPKIkE1V/c7edtafQ l7P1Z6k7TAQ0qrvi3pS9O4nZqRd0S4p7JA/ab/cO5uf93GVjbN9sv/uoWg4wPvqbwV 7d59bSs5vaGJg== Subject: Re: [dpdk-dev] [PATCH v2 1/4] ethdev: allow negative values in flow rule types 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" SGkgQW5kcmV3LA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IEFuZHJl dyBSeWJjaGVua28gPGFyeWJjaGVua29Ac29sYXJmbGFyZS5jb20+DQo+IFNlbnQ6IFRodXJzZGF5 LCBTZXB0ZW1iZXIgMTcsIDIwMjAgOTo1MCBBTQ0KPiANCj4gT24gOS8xNi8yMCA4OjIxIFBNLCBH cmVnb3J5IEV0ZWxzb24gd3JvdGU6DQo+ID4gRnJvbTogR3JlZ29yeSBFdGVsc29uDQo+ID4gU2Vu dDogVHVlc2RheSwgU2VwdGVtYmVyIDE1LCAyMDIwIDEzOjI3DQo+ID4gVG86IEFuZHJldyBSeWJj aGVua28gPGFyeWJjaGVua29Ac29sYXJmbGFyZS5jb20+OyBBaml0IEtoYXBhcmRlDQo+IDxhaml0 LmtoYXBhcmRlQGJyb2FkY29tLmNvbT4NCj4gPiBDYzogZHBkay1kZXYgPGRldkBkcGRrLm9yZz47 IE1hdGFuIEF6cmFkIDxtYXRhbkBudmlkaWEuY29tPjsgUmFzbGFuDQo+IERhcmF3c2hlaCA8cmFz bGFuZEBudmlkaWEuY29tPjsgT3JpIEthbSA8b3Jpa2FAbnZpZGlhLmNvbT47IEdyZWdvcnkNCj4g RXRlbHNvbiA8Z2V0ZWxzb25AbWVsbGFub3guY29tPjsgT3JpIEthbSA8b3Jpa2FAbWVsbGFub3gu Y29tPjsgTkJVLQ0KPiBDb250YWN0LVRob21hcyBNb25qYWxvbiA8dGhvbWFzQG1vbmphbG9uLm5l dD47IEZlcnJ1aCBZaWdpdA0KPiA8ZmVycnVoLnlpZ2l0QGludGVsLmNvbT4NCj4gPiBTdWJqZWN0 OiBSRTogW2RwZGstZGV2XSBbUEFUQ0ggdjIgMS80XSBldGhkZXY6IGFsbG93IG5lZ2F0aXZlIHZh bHVlcyBpbiBmbG93DQo+IHJ1bGUgdHlwZXMNCj4gPg0KPiA+IFN1YmplY3Q6IFJlOiBbZHBkay1k ZXZdIFtQQVRDSCB2MiAxLzRdIGV0aGRldjogYWxsb3cgbmVnYXRpdmUgdmFsdWVzIGluIGZsb3cN Cj4gcnVsZSB0eXBlcw0KPiA+IE9uIDkvMTUvMjAgNzozNiBBTSwgQWppdCBLaGFwYXJkZSB3cm90 ZToNCj4gPiBPbiBUdWUsIFNlcCA4LCAyMDIwIGF0IDE6MTYgUE0gR3JlZ29yeSBFdGVsc29uDQo+ IDxtYWlsdG86Z2V0ZWxzb25AbnZpZGlhLmNvbT4gd3JvdGU6DQo+ID4gRnJvbTogR3JlZ29yeSBF dGVsc29uIDxtYWlsdG86Z2V0ZWxzb25AbWVsbGFub3guY29tPg0KPiA+DQo+ID4gUlRFIGZsb3cg aXRlbXMgJiBhY3Rpb25zIHVzZSBwb3NpdGl2ZSB2YWx1ZXMgaW4gaXRlbSAmIGFjdGlvbiB0eXBl Lg0KPiA+IE5lZ2F0aXZlIHZhbHVlcyBhcmUgcmVzZXJ2ZWQgZm9yIFBNRCBwcml2YXRlIHR5cGVz LiBQTUQNCj4gPiBpdGVtcyAmIGFjdGlvbnMgdXN1YWxseSBhcmUgbm90IGV4cG9zZWQgdG8gYXBw bGljYXRpb24gYW5kIGFyZSBub3QNCj4gPiB1c2VkIHRvIGNyZWF0ZSBSVEUgZmxvd3MuDQo+ID4N Cj4gPiBUaGUgcGF0Y2ggYWxsb3dzIGFwcGxpY2F0aW9ucyB3aXRoIGFjY2VzcyB0byBQTUQgZmxv dw0KPiA+IGl0ZW1zICYgYWN0aW9ucyBhYmlsaXR5IHRvIGludGVncmF0ZSBSVEUgYW5kIFBNRCBp dGVtcyAmIGFjdGlvbnMNCj4gPiBhbmQgdXNlIHRoZW0gdG8gY3JlYXRlIGZsb3cgcnVsZS4NCj4g PiBXaGlsZSB3ZSBhcmUgcmV2aWV3aW5nIHRoaXMsIHNvbWUgcXVpY2sgY29tbWVudC9xdWVzdGlv bnMuLg0KPiA+DQo+ID4gRG9lc24ndCB0aGlzIGdvIGFnYWluc3QgdGhlIGFib3ZlICJQTUQNCj4g PiBpdGVtcyAmIGFjdGlvbnMgdXN1YWxseSBhcmUgbm90IGV4cG9zZWQgdG8gYXBwbGljYXRpb24g YW5kIGFyZSBub3QNCj4gPiB1c2VkIHRvIGNyZWF0ZSBSVEUgZmxvd3MuIj8NCj4gPiBXaHkgd291 bGQgYW4gYXBwbGljYXRpb24gdHJ5IHRvIHVzZSBQTUQgc3BlY2lmaWMgcHJpdmF0ZSB0eXBlcz8N Cj4gPiBJc24ndCB0aGlzIGNvbnRyYXJ5IHRvIGhhdmluZyBhIHN0YW5kYXJkIEFQST8NCj4gPg0K PiA+ICsxDQo+ID4NCj4gPiBJIHdvdWxkIGxpa2UgdG8gY2xhcmlmeSB0aGUgcHVycG9zZSBhbmQg dXNlIG9mIHByaXZhdGUgZWxlbWVudHMgcGF0Y2guDQo+ID4gVGhhdCBwYXRjaCBpcyBwcmVyZXF1 aXNpdGUgZm9yICBbUEFUQ0ggdjIgMi80XSBldGhkZXY6IHR1bm5lbCBvZmZsb2FkIG1vZGVsDQo+ IHBhdGNoLg0KPiA+IFRoZSB0dW5uZWwgb2ZmbG9hZCBBUEkgcHJvdmlkZXMgdW5pZmllZCBoYXJk d2FyZSBpbmRlcGVuZGVudCBtb2RlbCB0bw0KPiBvZmZsb2FkIHR1bm5lbGVkIHBhY2tldHMsDQo+ ID4gbWF0Y2ggb24gcGFja2V0IGhlYWRlcnMgaW4gaGFyZHdhcmUgYW5kIHRvIHJlc3RvcmUgb3V0 ZXIgaGVhZGVycyBvZg0KPiBwYXJ0aWFsbHkgb2ZmbG9hZGVkIHBhY2tldHMuDQo+ID4gVGhlIG1v ZGVsIGltcGxlbWVudGF0aW9uIGRlcGVuZHMgb24gaGFyZHdhcmUgY2FwYWJpbGl0aWVzLiBGb3Ig ZXhhbXBsZSwNCj4gaWYgaGFyZHdhcmUgc3VwcG9ydHMgaW5uZXIgbmF0LA0KPiA+IGl0IGNhbiBk byBuYXQgZmlyc3QgYW5kIHBvc3Rwb25lIGRlY2FwIHRvIHRoZSBlbmQsIHdoaWxlIG90aGVyIGhh cmR3YXJlIHRoYXQNCj4gY2Fubm90IGRvIGlubmVyIG5hdCBtdXN0IGRlY2FwIGZpcnN0DQo+ID4g YW5kIHJ1biBuYXQgYWN0aW9ucyBhZnRlcndhcmRzLiBTdWNoIGhhcmR3YXJlIGhhcyB0byBzYXZl IG91dGVyIGhlYWRlciBpbg0KPiBzb21lIGhhcmR3YXJlIGNvbnRleHQsDQo+ID4gcmVnaXN0ZXIg b3IgbWVtb3J5LCBmb3IgYXBwbGljYXRpb24gdG8gcmVzdG9yZSBhIHBhY2tldCBsYXRlciwgaWYg bmVlZGVkLiBBbHNvLA0KPiBpbiB0aGlzIGNhc2UgdGhlIGV4YWN0IHNvbHV0aW9uDQo+ID4gZGVw ZW5kcyBvbiBQTUQgYmVjYXVzZSBvZiBsaW1pdGVkIG51bWJlciBvZiBoYXJkd2FyZSBjb250ZXh0 cy4NCj4gPiBBbHRob3VnaCBhcHBsaWNhdGlvbiB3b3JraW5nIHdpdGggREtESyBjYW4gaW1wbGVt ZW50IGFsbCB0aGVzZQ0KPiByZXF1aXJlbWVudHMgd2l0aCBleGlzdGluZyBmbG93IHJ1bGVzIEFQ SSwNCj4gPiBpdCB3aWxsIGhhdmUgdG8gYWRkcmVzcyBlYWNoIGhhcmR3YXJlIHNwZWNpZmljYXRp b25zIHNlcGFyYXRlbHkuDQo+ID4gVG8gc29sdmUgdGhpcyBsaW1pdGF0aW9uIHdlIHNlbGVjdGVk IGRlc2lnbiB3aGVyZSBhcHBsaWNhdGlvbiBxdWlyZXMgUE1EIGZvcg0KPiBhY3Rpb25zLCBvciBp dGVtcywNCj4gPiB0aGF0IGFyZSBvcHRpbWFsIGZvciBhIGhhcmR3YXJlIHRoYXQgUE1EIHJlcHJl c2VudHMuIFJlc3VsdCBjYW4gYmUgYQ0KPiBtaXh0dXJlIG9mIFJURSBhbmQgUE1EIHByaXZhdGUg ZWxlbWVudHMgLQ0KPiA+IGl0J3MgdXAgdG8gUE1EIGltcGxlbWVudGF0aW9uLiBBcHBsaWNhdGlv biBwYXNzZXMgdGhlc2UgZWxlbWVudHMgYmFjayB0bw0KPiBQTUQgYXMgYSBmbG93IHJ1bGUgcmVj aXBlDQo+ID4gdGhhdCdzIGFscmVhZHkgb3B0aW1hbCBmb3IgdW5kZXJseWluZyBoYXJkd2FyZS4N Cj4gPiBJZiBQTUQgaGFzIHByaXZhdGUgZWxlbWVudHMgaW4gc3VjaCBydWxlIGl0ZW1zIG9yIGFj dGlvbnMsIHRoZXNlIHByaXZhdGUNCj4gZWxlbWVudHMgbXVzdCBub3QgYmUgcmVqZWN0ZWQgYnkg UlRFIGxheWVyLg0KPiA+DQo+ID4gSSBob3BlIGl0IGhlbHBzIHRvIHVuZGVyc3RhbmQgd2hhdCB0 aGlzIG1vZGVsIGlzIHRyeWluZyB0byBhY2hpZXZlLg0KPiA+IERpZCB0aGF0IGNsYXJpZnkgeW91 ciBjb25jZXJucyA/DQo+IA0KPiBUaGVyZSBpcyBhIHZlcnkgc2ltcGxlIHF1ZXN0aW9uIHdoaWNo IEkgY2FuJ3QgYW5zd2VyIGFmdGVyDQo+IHJlYWRpbmcgaXQuDQo+IFdoeSB0aGVzZSBQTUQgc3Bl Y2lmaWMgYWN0aW9ucyBhbmQgaXRlbXMgZG8gbm90IGJpbmQNCj4gYXBwbGljYXRpb24gdG8gYSBz cGVjaWZpYyB2ZW5kb3IuIElmIGl0IGJpbmRzLCBpdCBzaG91bGQNCj4gYmUgY2xlYXJseSBzdGF0 ZWQgaW4gdGhlIGRlc2NyaXB0aW9uLiBJZiBubywgSSdkIGxpa2UgdG8NCj4gdW5kZXJzdGFuZCB3 aHkgc2luY2Ugb3BhcXVlIGFjdGlvbnMvaXRlbXMgYXJlIG5vdCByZWFsbHkNCj4gd2VsbCBkZWZp bmVkIGFuZCBoYXJkbHkgcG9ydGFibGUgYWNyb3NzIHZlbmRvcnMuDQoNCllvdSBhcmUgY29ycmVj dCwgd2hlbiBsb29raW5nIGF0IHRoaXMgcGF0Y2ggYXMgYSBzdGFuZCBhIGxvbmUNCnBhdGNoIHVz aW5nIHN1Y2ggYWN0aW9uIC8gaXRlbXMgZG9lcyBiaW5kIHRoZSBhcHBsaWNhdGlvbiB0byBzcGVj aWZpYyBQTUQuDQpmaXJzdCBzb21ldGltZXMgaXQgaXMgcmVxdWlyZWQsIGZvciBleGFtcGxlIG9u ZSB2ZW5kb3IgbWF5IGludHJvZHVjZSBwcml2YXRlIGFjdGlvbg0KdG8gc3VwcG9ydCBzb21lIGtl eSBjb3N0dW1lciwgb3IgZW5hYmxlIGZlYXR1cmUgdGhhdCBpcyBub3Qgc3VwcG9ydGVkIHVzaW5n IHN0YW5kYXJkIHJ0ZSBmbG93IEFQSS4NCg0KVGhlIG1haW4gcmVhc29uIGZvciB0aGlzIHBhdGNo IGlzIHRoZSB0dW5uZWwgQVBJWzFdIGFzIHN0YXRlZCBpbiB0aGUgcmVwbHkNCmZyb20gR3JlZ29y eSwgdGhlIHR1bm5lbCBBUEkgZXhwb3NlcyBhIHB1YmxpYyBmdW5jdGlvbiB0aGF0IHJldHVybnMg YSBsaXN0IG9mIA0KYWN0aW9ucyAvIGl0ZW1zLiBUaGUgbGlzdCBpcyBnZW5lcmF0ZWQgYnkgdGhl IFBNRCwgc28gdXNpbmcgdGhlIEFQSSBpcyBub3QgYmluZGluZw0Kc2luY2UgaXQgaXMgZ2VuZXJp YywgYnV0IHRoZSBhY3Rpb24gLyBpdGVtcyByZXR1cm5lZCBhcmUgcHJpdmF0ZSBidXQgdGhlIGFw cGxpY2F0aW9uIGlzIG5vdCBhd2FyZSBvZiB0aG9zZSBhY3Rpb25zIC8gaXRlbXMsIGZyb20gaXQn cyBwb2ludCBvZiB2aWV3IGl0IGNhbGxlZCBhIGdlbmVyaWMgZnVuY3Rpb24NCmFuZCBnb3QgYWN0 aW9ucyB0aGF0IGFyZSBjb25maWd1cmVkIHRvIGRvIHRoZSByZXF1ZXN0ZWQgam9iLiBBbGwgdGhl IGFwcGxpY2F0aW9uIG5lZWRzIHRvIGRvIGlzIHNlbmQgdGhlIGFjdGlvbnMgLyBpdGVtIGFzIGFj dGlvbnMgLyBpdGVtIHdoZW4gY2FsbGluZyBmbG93IGNyZWF0ZS4NCg0KRG9lcyB0aGlzIGFuc3dl ciB5b3VyIHF1ZXN0aW9uPw0KDQpbMV0gaHR0cHM6Ly9wYXRjaGVzLmRwZGsub3JnL3BhdGNoLzc2 OTMxLw0KDQo=